/*******************************************************************************
* Copyright 1999-2021 Intel Corporation.
*
* This software and the related documents are Intel copyrighted  materials,  and
* your use of  them is  governed by the  express license  under which  they were
* provided to you (License).  Unless the License provides otherwise, you may not
* use, modify, copy, publish, distribute,  disclose or transmit this software or
* the related documents without Intel's prior written permission.
*
* This software and the related documents  are provided as  is,  with no express
* or implied  warranties,  other  than those  that are  expressly stated  in the
* License.
*******************************************************************************/

/*
!  Content:
!      Intel(R) oneAPI Math Kernel Library (oneMKL) stdcall interface for LAPACK routines
!******************************************************************************/

#ifndef _MKL_LAPACK_STDCALL_H_
#define _MKL_LAPACK_STDCALL_H_

#include "mkl_types.h"

#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */

#if defined(MKL_STDCALL)

#ifndef MKL_STDCALL_WARNING
#define MKL_STDCALL_WARNING
#pragma message("WARNING: oneMKL stdcall API has been deprecated")
#endif

void __stdcall CGESVDQ( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, float* s, MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, MKL_Complex8* cwork, MKL_INT* lcwork, float* rwork, const MKL_INT* lrwork, MKL_INT* info );
void __stdcall CGESVDQ_( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, float* s, MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, MKL_Complex8* cwork, MKL_INT* lcwork, float* rwork, const MKL_INT* lrwork, MKL_INT* info );
void __stdcall cgesvdq( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, float* s, MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, MKL_Complex8* cwork, MKL_INT* lcwork, float* rwork, const MKL_INT* lrwork, MKL_INT* info );
void __stdcall cgesvdq_( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, float* s, MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, MKL_Complex8* cwork, MKL_INT* lcwork, float* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall DGESVDQ( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda, double* s, double* u, const MKL_INT* ldu, double* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, double* work, MKL_INT* lwork, double* rwork, const MKL_INT* lrwork, MKL_INT* info );
void __stdcall DGESVDQ_( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda, double* s, double* u, const MKL_INT* ldu, double* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, double* work, MKL_INT* lwork, double* rwork, const MKL_INT* lrwork, MKL_INT* info );
void __stdcall dgesvdq( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda, double* s, double* u, const MKL_INT* ldu, double* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, double* work, MKL_INT* lwork, double* rwork, const MKL_INT* lrwork, MKL_INT* info );
void __stdcall dgesvdq_( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda, double* s, double* u, const MKL_INT* ldu, double* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, double* work, MKL_INT* lwork, double* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall SGESVDQ( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda, float* s, float* u, const MKL_INT* ldu, float* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, float* work, MKL_INT* lwork, float* rwork, const MKL_INT* lrwork, MKL_INT* info );
void __stdcall SGESVDQ_( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda, float* s, float* u, const MKL_INT* ldu, float* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, float* work, MKL_INT* lwork, float* rwork, const MKL_INT* lrwork, MKL_INT* info );
void __stdcall sgesvdq( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda, float* s, float* u, const MKL_INT* ldu, float* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, float* work, MKL_INT* lwork, float* rwork, const MKL_INT* lrwork, MKL_INT* info );
void __stdcall sgesvdq_( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda, float* s, float* u, const MKL_INT* ldu, float* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, float* work, MKL_INT* lwork, float* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall ZGESVDQ( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, double* s, MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, MKL_Complex16* cwork, MKL_INT* lcwork, double* rwork, const MKL_INT* lrwork, MKL_INT* info );
void __stdcall ZGESVDQ_( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, double* s, MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, MKL_Complex16* cwork, MKL_INT* lcwork, double* rwork, const MKL_INT* lrwork, MKL_INT* info );
void __stdcall zgesvdq( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, double* s, MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, MKL_Complex16* cwork, MKL_INT* lcwork, double* rwork, const MKL_INT* lrwork, MKL_INT* info );
void __stdcall zgesvdq_( const char* joba, int joba_len, const char* jobp, int jobp_len, const char* jobr, int jobr_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, double* s, MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* v, const MKL_INT* ldv, MKL_INT* numrank, MKL_INT* iwork, const MKL_INT* liwork, MKL_Complex16* cwork, MKL_INT* lcwork, double* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall CLAUNHR_COL_GETRFNP2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d, MKL_INT* info );
void __stdcall CLAUNHR_COL_GETRFNP2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d, MKL_INT* info );
void __stdcall claunhr_col_getrfnp2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d, MKL_INT* info );
void __stdcall claunhr_col_getrfnp2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d, MKL_INT* info );

void __stdcall CLAUNHR_COL_GETRFNP( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d, MKL_INT* info );
void __stdcall CLAUNHR_COL_GETRFNP_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d, MKL_INT* info );
void __stdcall claunhr_col_getrfnp( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d, MKL_INT* info );
void __stdcall claunhr_col_getrfnp_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d, MKL_INT* info );

void __stdcall DLAORHR_COL_GETRFNP2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda, double* d, MKL_INT* info );
void __stdcall DLAORHR_COL_GETRFNP2_( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda, double* d, MKL_INT* info );
void __stdcall dlaorhr_col_getrfnp2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda, double* d, MKL_INT* info );
void __stdcall dlaorhr_col_getrfnp2_( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda, double* d, MKL_INT* info );

void __stdcall DLAORHR_COL_GETRFNP( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda, double* d, MKL_INT* info );
void __stdcall DLAORHR_COL_GETRFNP_( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda, double* d, MKL_INT* info );
void __stdcall dlaorhr_col_getrfnp( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda, double* d, MKL_INT* info );
void __stdcall dlaorhr_col_getrfnp_( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda, double* d, MKL_INT* info );

void __stdcall SLAORHR_COL_GETRFNP2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda, float* d, MKL_INT* info );
void __stdcall SLAORHR_COL_GETRFNP2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda, float* d, MKL_INT* info );
void __stdcall slaorhr_col_getrfnp2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda, float* d, MKL_INT* info );
void __stdcall slaorhr_col_getrfnp2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda, float* d, MKL_INT* info );

void __stdcall SLAORHR_COL_GETRFNP( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda, float* d, MKL_INT* info );
void __stdcall SLAORHR_COL_GETRFNP_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda, float* d, MKL_INT* info );
void __stdcall slaorhr_col_getrfnp( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda, float* d, MKL_INT* info );
void __stdcall slaorhr_col_getrfnp_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda, float* d, MKL_INT* info );

void __stdcall ZLAUNHR_COL_GETRFNP2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* d, MKL_INT* info );
void __stdcall ZLAUNHR_COL_GETRFNP2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* d, MKL_INT* info );
void __stdcall zlaunhr_col_getrfnp2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* d, MKL_INT* info );
void __stdcall zlaunhr_col_getrfnp2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* d, MKL_INT* info );

void __stdcall ZLAUNHR_COL_GETRFNP( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* d, MKL_INT* info );
void __stdcall ZLAUNHR_COL_GETRFNP_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* d, MKL_INT* info );
void __stdcall zlaunhr_col_getrfnp( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* d, MKL_INT* info );
void __stdcall zlaunhr_col_getrfnp_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* d, MKL_INT* info );

void __stdcall CUNGTSQR( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNGTSQR_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cungtsqr( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cungtsqr_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNHR_COL( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* d, MKL_INT* info );
void __stdcall CUNHR_COL_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* d, MKL_INT* info );
void __stdcall cunhr_col( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* d, MKL_INT* info );
void __stdcall cunhr_col_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* d, MKL_INT* info );

void __stdcall DORGTSQR( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, double* a, const MKL_INT* lda, const double* t, const MKL_INT* ldt, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DORGTSQR_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, double* a, const MKL_INT* lda, const double* t, const MKL_INT* ldt, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorgtsqr( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, double* a, const MKL_INT* lda, const double* t, const MKL_INT* ldt, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorgtsqr_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, double* a, const MKL_INT* lda, const double* t, const MKL_INT* ldt, double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORHR_COL( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, double* a, const MKL_INT* lda, double* t, const MKL_INT* ldt, double* d, MKL_INT* info );
void __stdcall DORHR_COL_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, double* a, const MKL_INT* lda, double* t, const MKL_INT* ldt, double* d, MKL_INT* info );
void __stdcall dorhr_col( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, double* a, const MKL_INT* lda, double* t, const MKL_INT* ldt, double* d, MKL_INT* info );
void __stdcall dorhr_col_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, double* a, const MKL_INT* lda, double* t, const MKL_INT* ldt, double* d, MKL_INT* info );

void __stdcall SORGTSQR( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, float* a, const MKL_INT* lda, const float* t, const MKL_INT* ldt, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SORGTSQR_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, float* a, const MKL_INT* lda, const float* t, const MKL_INT* ldt, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorgtsqr( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, float* a, const MKL_INT* lda, const float* t, const MKL_INT* ldt, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorgtsqr_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, float* a, const MKL_INT* lda, const float* t, const MKL_INT* ldt, float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SORHR_COL( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, float* a, const MKL_INT* lda, float* t, const MKL_INT* ldt, float* d, MKL_INT* info );
void __stdcall SORHR_COL_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, float* a, const MKL_INT* lda, float* t, const MKL_INT* ldt, float* d, MKL_INT* info );
void __stdcall sorhr_col( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, float* a, const MKL_INT* lda, float* t, const MKL_INT* ldt, float* d, MKL_INT* info );
void __stdcall sorhr_col_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, float* a, const MKL_INT* lda, float* t, const MKL_INT* ldt, float* d, MKL_INT* info );

void __stdcall ZUNGTSQR( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNGTSQR_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zungtsqr( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zungtsqr_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb, const MKL_INT* nb, MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNHR_COL( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* d, MKL_INT* info );
void __stdcall ZUNHR_COL_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* d, MKL_INT* info );
void __stdcall zunhr_col( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* d, MKL_INT* info );
void __stdcall zunhr_col_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* d, MKL_INT* info );

void __stdcall CGELQ( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                      const MKL_INT* lda, MKL_Complex8* t,
                      const MKL_INT* tsize, MKL_Complex8* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGELQ_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* t,
                       const MKL_INT* tsize, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgelq( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                      const MKL_INT* lda, MKL_Complex8* t,
                      const MKL_INT* tsize, MKL_Complex8* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgelq_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* t,
                       const MKL_INT* tsize, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall CGELQT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* t,
                       const MKL_INT* ldt, MKL_Complex8* work, MKL_INT* info );
void __stdcall CGELQT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_Complex8* work, MKL_INT* info );
void __stdcall cgelqt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* t,
                       const MKL_INT* ldt, MKL_Complex8* work, MKL_INT* info );
void __stdcall cgelqt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_Complex8* work, MKL_INT* info );

void __stdcall CGELQT3( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall CGELQT3_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_INT* info );
void __stdcall cgelqt3( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall cgelqt3_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_INT* info );

void __stdcall CGEMLQ( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* t, const MKL_INT* tsize,
                       MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CGEMLQ_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* t, const MKL_INT* tsize,
                        MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall cgemlq( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* t, const MKL_INT* tsize,
                       MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall cgemlq_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* t, const MKL_INT* tsize,
                        MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CGEMLQT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* mb,
                        const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall CGEMLQT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_Complex8* v, const MKL_INT* ldv,
                         const MKL_Complex8* t, const MKL_INT* ldt,
                         MKL_Complex8* c, const MKL_INT* ldc,
                         MKL_Complex8* work, MKL_INT* info );
void __stdcall cgemlqt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* mb,
                        const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall cgemlqt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_Complex8* v, const MKL_INT* ldv,
                         const MKL_Complex8* t, const MKL_INT* ldt,
                         MKL_Complex8* c, const MKL_INT* ldc,
                         MKL_Complex8* work, MKL_INT* info );

void __stdcall CGEQR( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                      const MKL_INT* lda, MKL_Complex8* t,
                      const MKL_INT* tsize, MKL_Complex8* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGEQR_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* t,
                       const MKL_INT* tsize, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgeqr( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                      const MKL_INT* lda, MKL_Complex8* t,
                      const MKL_INT* tsize, MKL_Complex8* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgeqr_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* t,
                       const MKL_INT* tsize, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall CGETSLS( const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGETSLS_( const char* trans, int trans_len, const MKL_INT* m,
                         const MKL_INT* n, const MKL_INT* nrhs,
                         MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgetsls( const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgetsls_( const char* trans, int trans_len, const MKL_INT* m,
                         const MKL_INT* n, const MKL_INT* nrhs,
                         MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall CLAMSWLQ( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_Complex8* c,
                         const MKL_INT* ldc, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall CLAMSWLQ_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_Complex8* t,
                          const MKL_INT* ldt, MKL_Complex8* c,
                          const MKL_INT* ldc, MKL_Complex8* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall clamswlq( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_Complex8* c,
                         const MKL_INT* ldc, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall clamswlq_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_Complex8* t,
                          const MKL_INT* ldt, MKL_Complex8* c,
                          const MKL_INT* ldc, MKL_Complex8* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall CLAMTSQR( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_Complex8* c,
                         const MKL_INT* ldc, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall CLAMTSQR_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_Complex8* t,
                          const MKL_INT* ldt, MKL_Complex8* c,
                          const MKL_INT* ldc, MKL_Complex8* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall clamtsqr( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_Complex8* c,
                         const MKL_INT* ldc, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall clamtsqr_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_Complex8* t,
                          const MKL_INT* ldt, MKL_Complex8* c,
                          const MKL_INT* ldc, MKL_Complex8* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall CLASWLQ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall CLASWLQ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall claswlq( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall claswlq_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall CLATSQR( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall CLATSQR_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall clatsqr( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall clatsqr_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall CTPLQT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                       const MKL_INT* mb, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* t,
                       const MKL_INT* ldt, MKL_Complex8* work, MKL_INT* info );
void __stdcall CTPLQT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        const MKL_INT* mb, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_Complex8* work, MKL_INT* info );
void __stdcall ctplqt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                       const MKL_INT* mb, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* t,
                       const MKL_INT* ldt, MKL_Complex8* work, MKL_INT* info );
void __stdcall ctplqt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        const MKL_INT* mb, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_Complex8* work, MKL_INT* info );

void __stdcall CTPLQT2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall CTPLQT2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_INT* info );
void __stdcall ctplqt2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall ctplqt2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_INT* info );

void __stdcall CTPMLQT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                        const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* work, MKL_INT* info );
void __stdcall CTPMLQT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                         const MKL_Complex8* v, const MKL_INT* ldv,
                         const MKL_Complex8* t, const MKL_INT* ldt,
                         MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* work,
                         MKL_INT* info );
void __stdcall ctpmlqt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                        const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* work, MKL_INT* info );
void __stdcall ctpmlqt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                         const MKL_Complex8* v, const MKL_INT* ldv,
                         const MKL_Complex8* t, const MKL_INT* ldt,
                         MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* work,
                         MKL_INT* info );

void __stdcall DGELQ( const MKL_INT* m, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* t, const MKL_INT* tsize,
                      double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGELQ_( const MKL_INT* m, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* t,
                       const MKL_INT* tsize, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgelq( const MKL_INT* m, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* t, const MKL_INT* tsize,
                      double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgelq_( const MKL_INT* m, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* t,
                       const MKL_INT* tsize, double* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGELQT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                       double* a, const MKL_INT* lda, double* t,
                       const MKL_INT* ldt, double* work, MKL_INT* info );
void __stdcall DGELQT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        double* a, const MKL_INT* lda, double* t,
                        const MKL_INT* ldt, double* work, MKL_INT* info );
void __stdcall dgelqt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                       double* a, const MKL_INT* lda, double* t,
                       const MKL_INT* ldt, double* work, MKL_INT* info );
void __stdcall dgelqt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        double* a, const MKL_INT* lda, double* t,
                        const MKL_INT* ldt, double* work, MKL_INT* info );

void __stdcall DGELQT3( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall DGELQT3_( const MKL_INT* m, const MKL_INT* n, double* a,
                         const MKL_INT* lda, double* t, const MKL_INT* ldt,
                         MKL_INT* info );
void __stdcall dgelqt3( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall dgelqt3_( const MKL_INT* m, const MKL_INT* n, double* a,
                         const MKL_INT* lda, double* t, const MKL_INT* ldt,
                         MKL_INT* info );

void __stdcall DGEMLQ( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const double* a, const MKL_INT* lda,
                       const double* t, const MKL_INT* tsize, double* c,
                       const MKL_INT* ldc, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGEMLQ_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const double* a, const MKL_INT* lda,
                        const double* t, const MKL_INT* tsize, double* c,
                        const MKL_INT* ldc, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgemlq( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const double* a, const MKL_INT* lda,
                       const double* t, const MKL_INT* tsize, double* c,
                       const MKL_INT* ldc, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgemlq_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const double* a, const MKL_INT* lda,
                        const double* t, const MKL_INT* tsize, double* c,
                        const MKL_INT* ldc, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGEMLQT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* mb, const double* v,
                        const MKL_INT* ldv, const double* t,
                        const MKL_INT* ldt, double* c, const MKL_INT* ldc,
                        double* work, MKL_INT* info );
void __stdcall DGEMLQT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb, const double* v,
                         const MKL_INT* ldv, const double* t,
                         const MKL_INT* ldt, double* c, const MKL_INT* ldc,
                         double* work, MKL_INT* info );
void __stdcall dgemlqt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* mb, const double* v,
                        const MKL_INT* ldv, const double* t,
                        const MKL_INT* ldt, double* c, const MKL_INT* ldc,
                        double* work, MKL_INT* info );
void __stdcall dgemlqt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb, const double* v,
                         const MKL_INT* ldv, const double* t,
                         const MKL_INT* ldt, double* c, const MKL_INT* ldc,
                         double* work, MKL_INT* info );

void __stdcall DGEQR( const MKL_INT* m, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* t, const MKL_INT* tsize,
                      double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGEQR_( const MKL_INT* m, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* t,
                       const MKL_INT* tsize, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgeqr( const MKL_INT* m, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* t, const MKL_INT* tsize,
                      double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgeqr_( const MKL_INT* m, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* t,
                       const MKL_INT* tsize, double* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall DLAMSWLQ( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, double* a, const MKL_INT* lda,
                         const double* t, const MKL_INT* ldt, double* c,
                         const MKL_INT* ldc, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall DLAMSWLQ_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, double* a, const MKL_INT* lda,
                          const double* t, const MKL_INT* ldt, double* c,
                          const MKL_INT* ldc, double* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall dlamswlq( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, double* a, const MKL_INT* lda,
                         const double* t, const MKL_INT* ldt, double* c,
                         const MKL_INT* ldc, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall dlamswlq_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, double* a, const MKL_INT* lda,
                          const double* t, const MKL_INT* ldt, double* c,
                          const MKL_INT* ldc, double* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall DLAMTSQR( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, double* a, const MKL_INT* lda,
                         const double* t, const MKL_INT* ldt, double* c,
                         const MKL_INT* ldc, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall DLAMTSQR_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, double* a, const MKL_INT* lda,
                          const double* t, const MKL_INT* ldt, double* c,
                          const MKL_INT* ldc, double* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall dlamtsqr( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, double* a, const MKL_INT* lda,
                         const double* t, const MKL_INT* ldt, double* c,
                         const MKL_INT* ldc, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall dlamtsqr_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, double* a, const MKL_INT* lda,
                          const double* t, const MKL_INT* ldt, double* c,
                          const MKL_INT* ldc, double* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall DLASWLQ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, double* a, const MKL_INT* lda,
                        double* t, const MKL_INT* ldt, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall DLASWLQ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, double* a, const MKL_INT* lda,
                         double* t, const MKL_INT* ldt, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall dlaswlq( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, double* a, const MKL_INT* lda,
                        double* t, const MKL_INT* ldt, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dlaswlq_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, double* a, const MKL_INT* lda,
                         double* t, const MKL_INT* ldt, double* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall DLATSQR( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, double* a, const MKL_INT* lda,
                        double* t, const MKL_INT* ldt, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall DLATSQR_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, double* a, const MKL_INT* lda,
                         double* t, const MKL_INT* ldt, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall dlatsqr( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, double* a, const MKL_INT* lda,
                        double* t, const MKL_INT* ldt, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dlatsqr_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, double* a, const MKL_INT* lda,
                         double* t, const MKL_INT* ldt, double* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall DTPLQT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                       const MKL_INT* mb, double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb, double* t,
                       const MKL_INT* ldt, double* work, MKL_INT* info );
void __stdcall DTPLQT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        const MKL_INT* mb, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, double* t,
                        const MKL_INT* ldt, double* work, MKL_INT* info );
void __stdcall dtplqt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                       const MKL_INT* mb, double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb, double* t,
                       const MKL_INT* ldt, double* work, MKL_INT* info );
void __stdcall dtplqt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        const MKL_INT* mb, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, double* t,
                        const MKL_INT* ldt, double* work, MKL_INT* info );

void __stdcall DTPLQT2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, double* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall DTPLQT2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         double* a, const MKL_INT* lda, double* b,
                         const MKL_INT* ldb, double* t, const MKL_INT* ldt,
                         MKL_INT* info );
void __stdcall dtplqt2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, double* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall dtplqt2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         double* a, const MKL_INT* lda, double* b,
                         const MKL_INT* ldb, double* t, const MKL_INT* ldt,
                         MKL_INT* info );

void __stdcall DTPMLQT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                        const double* v, const MKL_INT* ldv, const double* t,
                        const MKL_INT* ldt, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, double* work,
                        MKL_INT* info );
void __stdcall DTPMLQT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                         const double* v, const MKL_INT* ldv, const double* t,
                         const MKL_INT* ldt, double* a, const MKL_INT* lda,
                         double* b, const MKL_INT* ldb, double* work,
                         MKL_INT* info );
void __stdcall dtpmlqt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                        const double* v, const MKL_INT* ldv, const double* t,
                        const MKL_INT* ldt, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, double* work,
                        MKL_INT* info );
void __stdcall dtpmlqt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                         const double* v, const MKL_INT* ldv, const double* t,
                         const MKL_INT* ldt, double* a, const MKL_INT* lda,
                         double* b, const MKL_INT* ldb, double* work,
                         MKL_INT* info );

void __stdcall SGELQ( const MKL_INT* m, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* t, const MKL_INT* tsize,
                      float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGELQ_( const MKL_INT* m, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* t, const MKL_INT* tsize,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgelq( const MKL_INT* m, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* t, const MKL_INT* tsize,
                      float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgelq_( const MKL_INT* m, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* t, const MKL_INT* tsize,
                       float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGETSLS( const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* nrhs, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGETSLS_( const char* trans, int trans_len, const MKL_INT* m,
                         const MKL_INT* n, const MKL_INT* nrhs, double* a,
                         const MKL_INT* lda, double* b, const MKL_INT* ldb,
                         double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgetsls( const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* nrhs, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgetsls_( const char* trans, int trans_len, const MKL_INT* m,
                         const MKL_INT* n, const MKL_INT* nrhs, double* a,
                         const MKL_INT* lda, double* b, const MKL_INT* ldb,
                         double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGELQT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                       float* a, const MKL_INT* lda, float* t,
                       const MKL_INT* ldt, float* work, MKL_INT* info );
void __stdcall SGELQT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        float* a, const MKL_INT* lda, float* t,
                        const MKL_INT* ldt, float* work, MKL_INT* info );
void __stdcall sgelqt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                       float* a, const MKL_INT* lda, float* t,
                       const MKL_INT* ldt, float* work, MKL_INT* info );
void __stdcall sgelqt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        float* a, const MKL_INT* lda, float* t,
                        const MKL_INT* ldt, float* work, MKL_INT* info );

void __stdcall SGELQT3( const MKL_INT* m, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall SGELQT3_( const MKL_INT* m, const MKL_INT* n, float* a,
                         const MKL_INT* lda, float* t, const MKL_INT* ldt,
                         MKL_INT* info );
void __stdcall sgelqt3( const MKL_INT* m, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall sgelqt3_( const MKL_INT* m, const MKL_INT* n, float* a,
                         const MKL_INT* lda, float* t, const MKL_INT* ldt,
                         MKL_INT* info );

void __stdcall SGEMLQT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* mb, const float* v,
                        const MKL_INT* ldv, const float* t, const MKL_INT* ldt,
                        float* c, const MKL_INT* ldc, float* work,
                        MKL_INT* info );
void __stdcall SGEMLQT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb, const float* v,
                         const MKL_INT* ldv, const float* t,
                         const MKL_INT* ldt, float* c, const MKL_INT* ldc,
                         float* work, MKL_INT* info );
void __stdcall sgemlqt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* mb, const float* v,
                        const MKL_INT* ldv, const float* t, const MKL_INT* ldt,
                        float* c, const MKL_INT* ldc, float* work,
                        MKL_INT* info );
void __stdcall sgemlqt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb, const float* v,
                         const MKL_INT* ldv, const float* t,
                         const MKL_INT* ldt, float* c, const MKL_INT* ldc,
                         float* work, MKL_INT* info );

void __stdcall SGEQR( const MKL_INT* m, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* t, const MKL_INT* tsize,
                      float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGEQR_( const MKL_INT* m, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* t, const MKL_INT* tsize,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgeqr( const MKL_INT* m, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* t, const MKL_INT* tsize,
                      float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgeqr_( const MKL_INT* m, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* t, const MKL_INT* tsize,
                       float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGETSLS( const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* nrhs, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGETSLS_( const char* trans, int trans_len, const MKL_INT* m,
                         const MKL_INT* n, const MKL_INT* nrhs, float* a,
                         const MKL_INT* lda, float* b, const MKL_INT* ldb,
                         float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgetsls( const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* nrhs, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgetsls_( const char* trans, int trans_len, const MKL_INT* m,
                         const MKL_INT* n, const MKL_INT* nrhs, float* a,
                         const MKL_INT* lda, float* b, const MKL_INT* ldb,
                         float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SLAMTSQR( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, float* a, const MKL_INT* lda,
                         const float* t, const MKL_INT* ldt, float* c,
                         const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall SLAMTSQR_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, float* a, const MKL_INT* lda,
                          const float* t, const MKL_INT* ldt, float* c,
                          const MKL_INT* ldc, float* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall slamtsqr( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, float* a, const MKL_INT* lda,
                         const float* t, const MKL_INT* ldt, float* c,
                         const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall slamtsqr_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, float* a, const MKL_INT* lda,
                          const float* t, const MKL_INT* ldt, float* c,
                          const MKL_INT* ldc, float* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall SLASWLQ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, float* a, const MKL_INT* lda,
                        float* t, const MKL_INT* ldt, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall SLASWLQ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, float* a, const MKL_INT* lda,
                         float* t, const MKL_INT* ldt, float* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall slaswlq( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, float* a, const MKL_INT* lda,
                        float* t, const MKL_INT* ldt, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall slaswlq_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, float* a, const MKL_INT* lda,
                         float* t, const MKL_INT* ldt, float* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall STPLQT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                       const MKL_INT* mb, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, float* t,
                       const MKL_INT* ldt, float* work, MKL_INT* info );
void __stdcall STPLQT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        const MKL_INT* mb, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, float* t,
                        const MKL_INT* ldt, float* work, MKL_INT* info );
void __stdcall stplqt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                       const MKL_INT* mb, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, float* t,
                       const MKL_INT* ldt, float* work, MKL_INT* info );
void __stdcall stplqt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        const MKL_INT* mb, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, float* t,
                        const MKL_INT* ldt, float* work, MKL_INT* info );

void __stdcall STPMLQT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                        const float* v, const MKL_INT* ldv, const float* t,
                        const MKL_INT* ldt, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, float* work,
                        MKL_INT* info );
void __stdcall STPMLQT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                         const float* v, const MKL_INT* ldv, const float* t,
                         const MKL_INT* ldt, float* a, const MKL_INT* lda,
                         float* b, const MKL_INT* ldb, float* work,
                         MKL_INT* info );
void __stdcall stpmlqt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                        const float* v, const MKL_INT* ldv, const float* t,
                        const MKL_INT* ldt, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, float* work,
                        MKL_INT* info );
void __stdcall stpmlqt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                         const float* v, const MKL_INT* ldv, const float* t,
                         const MKL_INT* ldt, float* a, const MKL_INT* lda,
                         float* b, const MKL_INT* ldb, float* work,
                         MKL_INT* info );

void __stdcall ZGELQ( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                      const MKL_INT* lda, MKL_Complex16* t,
                      const MKL_INT* tsize, MKL_Complex16* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGELQ_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* t,
                       const MKL_INT* tsize, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgelq( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                      const MKL_INT* lda, MKL_Complex16* t,
                      const MKL_INT* tsize, MKL_Complex16* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgelq_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* t,
                       const MKL_INT* tsize, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGEMLQ( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const float* a, const MKL_INT* lda,
                       const float* t, const MKL_INT* tsize, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SGEMLQ_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const float* a, const MKL_INT* lda,
                        const float* t, const MKL_INT* tsize, float* c,
                        const MKL_INT* ldc, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgemlq( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const float* a, const MKL_INT* lda,
                       const float* t, const MKL_INT* tsize, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sgemlq_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const float* a, const MKL_INT* lda,
                        const float* t, const MKL_INT* tsize, float* c,
                        const MKL_INT* ldc, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SLAMSWLQ( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, float* a, const MKL_INT* lda,
                         const float* t, const MKL_INT* ldt, float* c,
                         const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall SLAMSWLQ_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, float* a, const MKL_INT* lda,
                          const float* t, const MKL_INT* ldt, float* c,
                          const MKL_INT* ldc, float* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall slamswlq( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, float* a, const MKL_INT* lda,
                         const float* t, const MKL_INT* ldt, float* c,
                         const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall slamswlq_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, float* a, const MKL_INT* lda,
                          const float* t, const MKL_INT* ldt, float* c,
                          const MKL_INT* ldc, float* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall SLATSQR( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, float* a, const MKL_INT* lda,
                        float* t, const MKL_INT* ldt, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall SLATSQR_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, float* a, const MKL_INT* lda,
                         float* t, const MKL_INT* ldt, float* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall slatsqr( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, float* a, const MKL_INT* lda,
                        float* t, const MKL_INT* ldt, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall slatsqr_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, float* a, const MKL_INT* lda,
                         float* t, const MKL_INT* ldt, float* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall STPLQT2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, float* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall STPLQT2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         float* a, const MKL_INT* lda, float* b,
                         const MKL_INT* ldb, float* t, const MKL_INT* ldt,
                         MKL_INT* info );
void __stdcall stplqt2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, float* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall stplqt2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         float* a, const MKL_INT* lda, float* b,
                         const MKL_INT* ldb, float* t, const MKL_INT* ldt,
                         MKL_INT* info );

void __stdcall ZGELQT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* t,
                       const MKL_INT* ldt, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZGELQT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall zgelqt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* t,
                       const MKL_INT* ldt, MKL_Complex16* work, MKL_INT* info );
void __stdcall zgelqt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_Complex16* work,
                        MKL_INT* info );

void __stdcall ZGELQT3( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall ZGELQT3_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_INT* info );
void __stdcall zgelqt3( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall zgelqt3_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_INT* info );

void __stdcall ZGEMLQ( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* t, const MKL_INT* tsize,
                       MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZGEMLQ_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* t, const MKL_INT* tsize,
                        MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zgemlq( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* t, const MKL_INT* tsize,
                       MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zgemlq_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* t, const MKL_INT* tsize,
                        MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall ZGEMLQT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* mb,
                        const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall ZGEMLQT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_Complex16* v, const MKL_INT* ldv,
                         const MKL_Complex16* t, const MKL_INT* ldt,
                         MKL_Complex16* c, const MKL_INT* ldc,
                         MKL_Complex16* work, MKL_INT* info );
void __stdcall zgemlqt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* mb,
                        const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zgemlqt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_Complex16* v, const MKL_INT* ldv,
                         const MKL_Complex16* t, const MKL_INT* ldt,
                         MKL_Complex16* c, const MKL_INT* ldc,
                         MKL_Complex16* work, MKL_INT* info );

void __stdcall ZGEQR( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                      const MKL_INT* lda, MKL_Complex16* t,
                      const MKL_INT* tsize, MKL_Complex16* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGEQR_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* t,
                       const MKL_INT* tsize, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgeqr( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                      const MKL_INT* lda, MKL_Complex16* t,
                      const MKL_INT* tsize, MKL_Complex16* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgeqr_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* t,
                       const MKL_INT* tsize, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGETSLS( const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGETSLS_( const char* trans, int trans_len, const MKL_INT* m,
                         const MKL_INT* n, const MKL_INT* nrhs,
                         MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall zgetsls( const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgetsls_( const char* trans, int trans_len, const MKL_INT* m,
                         const MKL_INT* n, const MKL_INT* nrhs,
                         MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );

void __stdcall ZLAMSWLQ( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_Complex16* c,
                         const MKL_INT* ldc, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZLAMSWLQ_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_Complex16* t,
                          const MKL_INT* ldt, MKL_Complex16* c,
                          const MKL_INT* ldc, MKL_Complex16* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall zlamswlq( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_Complex16* c,
                         const MKL_INT* ldc, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall zlamswlq_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_Complex16* t,
                          const MKL_INT* ldt, MKL_Complex16* c,
                          const MKL_INT* ldc, MKL_Complex16* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZLAMTSQR( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_Complex16* c,
                         const MKL_INT* ldc, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZLAMTSQR_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_Complex16* t,
                          const MKL_INT* ldt, MKL_Complex16* c,
                          const MKL_INT* ldc, MKL_Complex16* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall zlamtsqr( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_Complex16* c,
                         const MKL_INT* ldc, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall zlamtsqr_( const char* side, int side_len, const char* trans,
                          int trans_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_INT* k, const MKL_INT* mb,
                          const MKL_INT* nb, MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_Complex16* t,
                          const MKL_INT* ldt, MKL_Complex16* c,
                          const MKL_INT* ldc, MKL_Complex16* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZLASWLQ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZLASWLQ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall zlaswlq( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zlaswlq_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZLATSQR( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZLATSQR_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall zlatsqr( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                        const MKL_INT* nb, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zlatsqr_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* mb,
                         const MKL_INT* nb, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZTPLQT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                       const MKL_INT* mb, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* t,
                       const MKL_INT* ldt, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZTPLQT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        const MKL_INT* mb, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall ztplqt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                       const MKL_INT* mb, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* t,
                       const MKL_INT* ldt, MKL_Complex16* work, MKL_INT* info );
void __stdcall ztplqt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        const MKL_INT* mb, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_Complex16* work,
                        MKL_INT* info );

void __stdcall ZTPLQT2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall ZTPLQT2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* t, const MKL_INT* ldt, MKL_INT* info );
void __stdcall ztplqt2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall ztplqt2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* t, const MKL_INT* ldt, MKL_INT* info );

void __stdcall ZTPMLQT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                        const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall ZTPMLQT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                         const MKL_Complex16* v, const MKL_INT* ldv,
                         const MKL_Complex16* t, const MKL_INT* ldt,
                         MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* work, MKL_INT* info );
void __stdcall ztpmlqt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                        const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall ztpmlqt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l, const MKL_INT* mb,
                         const MKL_Complex16* v, const MKL_INT* ldv,
                         const MKL_Complex16* t, const MKL_INT* ldt,
                         MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* work, MKL_INT* info );

void __stdcall CHESV_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall CHESV_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* b,
                          const MKL_INT* ldb, MKL_Complex8* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall chesv_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall chesv_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* b,
                          const MKL_INT* ldb, MKL_Complex8* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall CHETRF_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                          MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall CHETRF_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex8* work, const MKL_INT* lwork,
                           MKL_INT* info );
void __stdcall chetrf_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                          MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall chetrf_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex8* work, const MKL_INT* lwork,
                           MKL_INT* info );

void __stdcall CHETRS_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_INT* ipiv,
                          MKL_Complex8* b, const MKL_INT* ldb,
                          const MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall CHETRS_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nrhs, const MKL_Complex8* a,
                           const MKL_INT* lda, const MKL_INT* ipiv,
                           MKL_Complex8* b, const MKL_INT* ldb,
                           const MKL_Complex8* work, const MKL_INT* lwork,
                           MKL_INT* info );
void __stdcall chetrs_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_INT* ipiv,
                          MKL_Complex8* b, const MKL_INT* ldb,
                          const MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall chetrs_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nrhs, const MKL_Complex8* a,
                           const MKL_INT* lda, const MKL_INT* ipiv,
                           MKL_Complex8* b, const MKL_INT* ldb,
                           const MKL_Complex8* work, const MKL_INT* lwork,
                           MKL_INT* info );

void __stdcall CLAHEF_AA( const char* uplo, int uplo_len, const MKL_INT* j1,
                          const MKL_INT* m, const MKL_INT* nb, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* h,
                          const MKL_INT* ldh, MKL_Complex8* work );
void __stdcall CLAHEF_AA_( const char* uplo, int uplo_len, const MKL_INT* j1,
                           const MKL_INT* m, const MKL_INT* nb,
                           MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex8* h, const MKL_INT* ldh,
                           MKL_Complex8* work );
void __stdcall clahef_aa( const char* uplo, int uplo_len, const MKL_INT* j1,
                          const MKL_INT* m, const MKL_INT* nb, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* h,
                          const MKL_INT* ldh, MKL_Complex8* work );
void __stdcall clahef_aa_( const char* uplo, int uplo_len, const MKL_INT* j1,
                           const MKL_INT* m, const MKL_INT* nb,
                           MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex8* h, const MKL_INT* ldh,
                           MKL_Complex8* work );

void __stdcall DLASYF_AA( const char* uplo, int uplo_len, const MKL_INT* j1,
                          const MKL_INT* m, const MKL_INT* nb, double* a,
                          const MKL_INT* lda, MKL_INT* ipiv, double* h,
                          const MKL_INT* ldh, double* work );
void __stdcall DLASYF_AA_( const char* uplo, int uplo_len, const MKL_INT* j1,
                           const MKL_INT* m, const MKL_INT* nb, double* a,
                           const MKL_INT* lda, MKL_INT* ipiv, double* h,
                           const MKL_INT* ldh, double* work );
void __stdcall dlasyf_aa( const char* uplo, int uplo_len, const MKL_INT* j1,
                          const MKL_INT* m, const MKL_INT* nb, double* a,
                          const MKL_INT* lda, MKL_INT* ipiv, double* h,
                          const MKL_INT* ldh, double* work );
void __stdcall dlasyf_aa_( const char* uplo, int uplo_len, const MKL_INT* j1,
                           const MKL_INT* m, const MKL_INT* nb, double* a,
                           const MKL_INT* lda, MKL_INT* ipiv, double* h,
                           const MKL_INT* ldh, double* work );

void __stdcall DSYSV_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, double* a, const MKL_INT* lda,
                         MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                         double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSYSV_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, double* a, const MKL_INT* lda,
                          MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                          double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsysv_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, double* a, const MKL_INT* lda,
                         MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                         double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsysv_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, double* a, const MKL_INT* lda,
                          MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                          double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DSYTRF_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                          double* a, const MKL_INT* lda, MKL_INT* ipiv,
                          double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSYTRF_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                           double* a, const MKL_INT* lda, MKL_INT* ipiv,
                           double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytrf_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                          double* a, const MKL_INT* lda, MKL_INT* ipiv,
                          double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytrf_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                           double* a, const MKL_INT* lda, MKL_INT* ipiv,
                           double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DSYTRS_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const double* a,
                          const MKL_INT* lda, const MKL_INT* ipiv, double* b,
                          const MKL_INT* ldb, const double* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSYTRS_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nrhs, const double* a,
                           const MKL_INT* lda, const MKL_INT* ipiv, double* b,
                           const MKL_INT* ldb, const double* work,
                           const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytrs_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const double* a,
                          const MKL_INT* lda, const MKL_INT* ipiv, double* b,
                          const MKL_INT* ldb, const double* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytrs_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nrhs, const double* a,
                           const MKL_INT* lda, const MKL_INT* ipiv, double* b,
                           const MKL_INT* ldb, const double* work,
                           const MKL_INT* lwork, MKL_INT* info );

void __stdcall SLASYF_AA( const char* uplo, int uplo_len, const MKL_INT* j1,
                          const MKL_INT* m, const MKL_INT* nb, float* a,
                          const MKL_INT* lda, MKL_INT* ipiv, float* h,
                          const MKL_INT* ldh, float* work );
void __stdcall SLASYF_AA_( const char* uplo, int uplo_len, const MKL_INT* j1,
                           const MKL_INT* m, const MKL_INT* nb, float* a,
                           const MKL_INT* lda, MKL_INT* ipiv, float* h,
                           const MKL_INT* ldh, float* work );
void __stdcall slasyf_aa( const char* uplo, int uplo_len, const MKL_INT* j1,
                          const MKL_INT* m, const MKL_INT* nb, float* a,
                          const MKL_INT* lda, MKL_INT* ipiv, float* h,
                          const MKL_INT* ldh, float* work );
void __stdcall slasyf_aa_( const char* uplo, int uplo_len, const MKL_INT* j1,
                           const MKL_INT* m, const MKL_INT* nb, float* a,
                           const MKL_INT* lda, MKL_INT* ipiv, float* h,
                           const MKL_INT* ldh, float* work );

void __stdcall SSYSV_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, float* a, const MKL_INT* lda,
                         MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                         float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYSV_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, float* a, const MKL_INT* lda,
                          MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                          float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssysv_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, float* a, const MKL_INT* lda,
                         MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                         float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssysv_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, float* a, const MKL_INT* lda,
                          MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                          float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SSYTRF_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                          float* a, const MKL_INT* lda, MKL_INT* ipiv,
                          float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYTRF_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                           float* a, const MKL_INT* lda, MKL_INT* ipiv,
                           float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytrf_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                          float* a, const MKL_INT* lda, MKL_INT* ipiv,
                          float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytrf_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                           float* a, const MKL_INT* lda, MKL_INT* ipiv,
                           float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SSYTRS_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const float* a,
                          const MKL_INT* lda, const MKL_INT* ipiv, float* b,
                          const MKL_INT* ldb, const float* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYTRS_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nrhs, const float* a,
                           const MKL_INT* lda, const MKL_INT* ipiv, float* b,
                           const MKL_INT* ldb, const float* work,
                           const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytrs_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const float* a,
                          const MKL_INT* lda, const MKL_INT* ipiv, float* b,
                          const MKL_INT* ldb, const float* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytrs_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nrhs, const float* a,
                           const MKL_INT* lda, const MKL_INT* ipiv, float* b,
                           const MKL_INT* ldb, const float* work,
                           const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZHESV_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZHESV_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* b,
                          const MKL_INT* ldb, MKL_Complex16* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhesv_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhesv_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* b,
                          const MKL_INT* ldb, MKL_Complex16* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZHETRF_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                          MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall ZHETRF_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex16* work, const MKL_INT* lwork,
                           MKL_INT* info );
void __stdcall zhetrf_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                          MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall zhetrf_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex16* work, const MKL_INT* lwork,
                           MKL_INT* info );

void __stdcall ZHETRS_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_INT* ipiv,
                          MKL_Complex16* b, const MKL_INT* ldb,
                          const MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall ZHETRS_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nrhs, const MKL_Complex16* a,
                           const MKL_INT* lda, const MKL_INT* ipiv,
                           MKL_Complex16* b, const MKL_INT* ldb,
                           const MKL_Complex16* work, const MKL_INT* lwork,
                           MKL_INT* info );
void __stdcall zhetrs_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_INT* ipiv,
                          MKL_Complex16* b, const MKL_INT* ldb,
                          const MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall zhetrs_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nrhs, const MKL_Complex16* a,
                           const MKL_INT* lda, const MKL_INT* ipiv,
                           MKL_Complex16* b, const MKL_INT* ldb,
                           const MKL_Complex16* work, const MKL_INT* lwork,
                           MKL_INT* info );

void __stdcall ZLAHEF_AA( const char* uplo, int uplo_len, const MKL_INT* j1,
                          const MKL_INT* m, const MKL_INT* nb,
                          MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                          MKL_Complex16* h, const MKL_INT* ldh,
                          MKL_Complex16* work );
void __stdcall ZLAHEF_AA_( const char* uplo, int uplo_len, const MKL_INT* j1,
                           const MKL_INT* m, const MKL_INT* nb,
                           MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex16* h, const MKL_INT* ldh,
                           MKL_Complex16* work );
void __stdcall zlahef_aa( const char* uplo, int uplo_len, const MKL_INT* j1,
                          const MKL_INT* m, const MKL_INT* nb,
                          MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                          MKL_Complex16* h, const MKL_INT* ldh,
                          MKL_Complex16* work );
void __stdcall zlahef_aa_( const char* uplo, int uplo_len, const MKL_INT* j1,
                           const MKL_INT* m, const MKL_INT* nb,
                           MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex16* h, const MKL_INT* ldh,
                           MKL_Complex16* work );

void __stdcall CGEMQR( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* t,
                       const MKL_INT* tsize, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGEMQR_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* t,
                        const MKL_INT* tsize, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgemqr( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* t,
                       const MKL_INT* tsize, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgemqr_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* t,
                        const MKL_INT* tsize, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGEMQR( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const double* a, const MKL_INT* lda,
                       const double* t, const MKL_INT* tsize, double* c,
                       const MKL_INT* ldc, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGEMQR_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const double* a, const MKL_INT* lda,
                        const double* t, const MKL_INT* tsize, double* c,
                        const MKL_INT* ldc, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgemqr( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const double* a, const MKL_INT* lda,
                       const double* t, const MKL_INT* tsize, double* c,
                       const MKL_INT* ldc, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgemqr_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const double* a, const MKL_INT* lda,
                        const double* t, const MKL_INT* tsize, double* c,
                        const MKL_INT* ldc, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGEMQR( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const float* a, const MKL_INT* lda,
                       const float* t, const MKL_INT* tsize, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SGEMQR_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const float* a, const MKL_INT* lda,
                        const float* t, const MKL_INT* tsize, float* c,
                        const MKL_INT* ldc, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgemqr( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const float* a, const MKL_INT* lda,
                       const float* t, const MKL_INT* tsize, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sgemqr_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const float* a, const MKL_INT* lda,
                        const float* t, const MKL_INT* tsize, float* c,
                        const MKL_INT* ldc, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGEMQR( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* t,
                       const MKL_INT* tsize, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGEMQR_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* t,
                        const MKL_INT* tsize, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgemqr( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* t,
                       const MKL_INT* tsize, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgemqr_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* t,
                        const MKL_INT* tsize, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall CHECON_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* e, const MKL_INT* ipiv,
                         const float* anorm, float* rcond, MKL_Complex8* work,
                         MKL_INT* info );
void __stdcall CHECON_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* e, const MKL_INT* ipiv,
                          const float* anorm, float* rcond, MKL_Complex8* work,
                          MKL_INT* info );
void __stdcall checon_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* e, const MKL_INT* ipiv,
                         const float* anorm, float* rcond, MKL_Complex8* work,
                         MKL_INT* info );
void __stdcall checon_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* e, const MKL_INT* ipiv,
                          const float* anorm, float* rcond, MKL_Complex8* work,
                          MKL_INT* info );

void __stdcall CHESV_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                         MKL_Complex8* b, const MKL_INT* ldb,
                         MKL_Complex8* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall CHESV_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                          MKL_Complex8* b, const MKL_INT* ldb,
                          MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall chesv_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                         MKL_Complex8* b, const MKL_INT* ldb,
                         MKL_Complex8* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall chesv_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                          MKL_Complex8* b, const MKL_INT* ldb,
                          MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );

void __stdcall CHETF2_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* e,
                          MKL_INT* ipiv, MKL_INT* info );
void __stdcall CHETF2_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda,
                           MKL_Complex8* e, MKL_INT* ipiv, MKL_INT* info );
void __stdcall chetf2_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* e,
                          MKL_INT* ipiv, MKL_INT* info );
void __stdcall chetf2_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda,
                           MKL_Complex8* e, MKL_INT* ipiv, MKL_INT* info );

void __stdcall CHETRF_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* e,
                          MKL_INT* ipiv, MKL_Complex8* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall CHETRF_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda,
                           MKL_Complex8* e, MKL_INT* ipiv, MKL_Complex8* work,
                           const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetrf_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* e,
                          MKL_INT* ipiv, MKL_Complex8* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetrf_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda,
                           MKL_Complex8* e, MKL_INT* ipiv, MKL_Complex8* work,
                           const MKL_INT* lwork, MKL_INT* info );

void __stdcall CHETRI_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* e, const MKL_INT* ipiv,
                         MKL_Complex8* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall CHETRI_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* e, const MKL_INT* ipiv,
                          MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall chetri_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* e, const MKL_INT* ipiv,
                         MKL_Complex8* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall chetri_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* e, const MKL_INT* ipiv,
                          MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );

void __stdcall CHETRI_3X( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* e, const MKL_INT* ipiv,
                          MKL_Complex8* work, const MKL_INT* nb,
                          MKL_INT* info );
void __stdcall CHETRI_3X_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda,
                           const MKL_Complex8* e, const MKL_INT* ipiv,
                           MKL_Complex8* work, const MKL_INT* nb,
                           MKL_INT* info );
void __stdcall chetri_3x( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* e, const MKL_INT* ipiv,
                          MKL_Complex8* work, const MKL_INT* nb,
                          MKL_INT* info );
void __stdcall chetri_3x_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda,
                           const MKL_Complex8* e, const MKL_INT* ipiv,
                           MKL_Complex8* work, const MKL_INT* nb,
                           MKL_INT* info );

void __stdcall CHETRS_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_Complex8* e,
                         const MKL_INT* ipiv, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_INT* info );
void __stdcall CHETRS_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_Complex8* e,
                          const MKL_INT* ipiv, MKL_Complex8* b,
                          const MKL_INT* ldb, MKL_INT* info );
void __stdcall chetrs_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_Complex8* e,
                         const MKL_INT* ipiv, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_INT* info );
void __stdcall chetrs_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_Complex8* e,
                          const MKL_INT* ipiv, MKL_Complex8* b,
                          const MKL_INT* ldb, MKL_INT* info );

void __stdcall CLAHEF_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nb, MKL_INT* kb, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                          MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall CLAHEF_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nb, MKL_INT* kb, MKL_Complex8* a,
                           const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                           MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall clahef_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nb, MKL_INT* kb, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                          MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall clahef_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nb, MKL_INT* kb, MKL_Complex8* a,
                           const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                           MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall CLARFY( const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex8* v, const MKL_INT* incv,
                       const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work );
void __stdcall CLARFY_( const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* v, const MKL_INT* incv,
                        const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work );
void __stdcall clarfy( const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex8* v, const MKL_INT* incv,
                       const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work );
void __stdcall clarfy_( const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* v, const MKL_INT* incv,
                        const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work );

void __stdcall CLASYF_AA( const char* uplo, int uplo_len, const MKL_INT* j1,
                          const MKL_INT* m, const MKL_INT* nb, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* h,
                          const MKL_INT* ldh, MKL_Complex8* work );
void __stdcall CLASYF_AA_( const char* uplo, int uplo_len, const MKL_INT* j1,
                           const MKL_INT* m, const MKL_INT* nb,
                           MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex8* h, const MKL_INT* ldh,
                           MKL_Complex8* work );
void __stdcall clasyf_aa( const char* uplo, int uplo_len, const MKL_INT* j1,
                          const MKL_INT* m, const MKL_INT* nb, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* h,
                          const MKL_INT* ldh, MKL_Complex8* work );
void __stdcall clasyf_aa_( const char* uplo, int uplo_len, const MKL_INT* j1,
                           const MKL_INT* m, const MKL_INT* nb,
                           MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex8* h, const MKL_INT* ldh,
                           MKL_Complex8* work );

void __stdcall CLASYF_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nb, MKL_INT* kb, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                          MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall CLASYF_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nb, MKL_INT* kb, MKL_Complex8* a,
                           const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                           MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall clasyf_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nb, MKL_INT* kb, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                          MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall clasyf_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nb, MKL_INT* kb, MKL_Complex8* a,
                           const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                           MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall CSYCON_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* e, const MKL_INT* ipiv,
                         const float* anorm, float* rcond, MKL_Complex8* work,
                         MKL_INT* info );
void __stdcall CSYCON_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* e, const MKL_INT* ipiv,
                          const float* anorm, float* rcond, MKL_Complex8* work,
                          MKL_INT* info );
void __stdcall csycon_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* e, const MKL_INT* ipiv,
                         const float* anorm, float* rcond, MKL_Complex8* work,
                         MKL_INT* info );
void __stdcall csycon_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* e, const MKL_INT* ipiv,
                          const float* anorm, float* rcond, MKL_Complex8* work,
                          MKL_INT* info );

void __stdcall CSYCONVF( const char* uplo, int uplo_len, const char* way,
                         int way_len, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                         MKL_INT* info );
void __stdcall CSYCONVF_( const char* uplo, int uplo_len, const char* way,
                          int way_len, const MKL_INT* n, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                          MKL_INT* info );
void __stdcall csyconvf( const char* uplo, int uplo_len, const char* way,
                         int way_len, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                         MKL_INT* info );
void __stdcall csyconvf_( const char* uplo, int uplo_len, const char* way,
                          int way_len, const MKL_INT* n, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                          MKL_INT* info );

void __stdcall CSYCONVF_ROOK( const char* uplo, int uplo_len, const char* way,
                              int way_len, const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, MKL_Complex8* e,
                              const MKL_INT* ipiv, MKL_INT* info );
void __stdcall CSYCONVF_ROOK_( const char* uplo, int uplo_len, const char* way,
                               int way_len, const MKL_INT* n, MKL_Complex8* a,
                               const MKL_INT* lda, MKL_Complex8* e,
                               const MKL_INT* ipiv, MKL_INT* info );
void __stdcall csyconvf_rook( const char* uplo, int uplo_len, const char* way,
                              int way_len, const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, MKL_Complex8* e,
                              const MKL_INT* ipiv, MKL_INT* info );
void __stdcall csyconvf_rook_( const char* uplo, int uplo_len, const char* way,
                               int way_len, const MKL_INT* n, MKL_Complex8* a,
                               const MKL_INT* lda, MKL_Complex8* e,
                               const MKL_INT* ipiv, MKL_INT* info );

void __stdcall CSYSV_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall CSYSV_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* b,
                          const MKL_INT* ldb, MKL_Complex8* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall csysv_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall csysv_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* b,
                          const MKL_INT* ldb, MKL_Complex8* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall CSYSV_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                         MKL_Complex8* b, const MKL_INT* ldb,
                         MKL_Complex8* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall CSYSV_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                          MKL_Complex8* b, const MKL_INT* ldb,
                          MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall csysv_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                         MKL_Complex8* b, const MKL_INT* ldb,
                         MKL_Complex8* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall csysv_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex8* a,
                          const MKL_INT* lda, MKL_Complex8* e, MKL_INT* ipiv,
                          MKL_Complex8* b, const MKL_INT* ldb,
                          MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );

void __stdcall CSYTF2_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* e,
                          MKL_INT* ipiv, MKL_INT* info );
void __stdcall CSYTF2_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda,
                           MKL_Complex8* e, MKL_INT* ipiv, MKL_INT* info );
void __stdcall csytf2_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* e,
                          MKL_INT* ipiv, MKL_INT* info );
void __stdcall csytf2_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda,
                           MKL_Complex8* e, MKL_INT* ipiv, MKL_INT* info );

void __stdcall CSYTRF_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                          MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall CSYTRF_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex8* work, const MKL_INT* lwork,
                           MKL_INT* info );
void __stdcall csytrf_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                          MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall csytrf_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex8* work, const MKL_INT* lwork,
                           MKL_INT* info );

void __stdcall CSYTRF_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* e,
                          MKL_INT* ipiv, MKL_Complex8* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall CSYTRF_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda,
                           MKL_Complex8* e, MKL_INT* ipiv, MKL_Complex8* work,
                           const MKL_INT* lwork, MKL_INT* info );
void __stdcall csytrf_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* e,
                          MKL_INT* ipiv, MKL_Complex8* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall csytrf_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda,
                           MKL_Complex8* e, MKL_INT* ipiv, MKL_Complex8* work,
                           const MKL_INT* lwork, MKL_INT* info );

void __stdcall CSYTRI_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* e, const MKL_INT* ipiv,
                         MKL_Complex8* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall CSYTRI_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* e, const MKL_INT* ipiv,
                          MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall csytri_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* e, const MKL_INT* ipiv,
                         MKL_Complex8* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall csytri_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* e, const MKL_INT* ipiv,
                          MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );

void __stdcall CSYTRI_3X( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* e, const MKL_INT* ipiv,
                          MKL_Complex8* work, const MKL_INT* nb,
                          MKL_INT* info );
void __stdcall CSYTRI_3X_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda,
                           const MKL_Complex8* e, const MKL_INT* ipiv,
                           MKL_Complex8* work, const MKL_INT* nb,
                           MKL_INT* info );
void __stdcall csytri_3x( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* e, const MKL_INT* ipiv,
                          MKL_Complex8* work, const MKL_INT* nb,
                          MKL_INT* info );
void __stdcall csytri_3x_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex8* a, const MKL_INT* lda,
                           const MKL_Complex8* e, const MKL_INT* ipiv,
                           MKL_Complex8* work, const MKL_INT* nb,
                           MKL_INT* info );

void __stdcall CSYTRS_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_Complex8* e,
                         const MKL_INT* ipiv, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_INT* info );
void __stdcall CSYTRS_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_Complex8* e,
                          const MKL_INT* ipiv, MKL_Complex8* b,
                          const MKL_INT* ldb, MKL_INT* info );
void __stdcall csytrs_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_Complex8* e,
                         const MKL_INT* ipiv, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_INT* info );
void __stdcall csytrs_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_Complex8* e,
                          const MKL_INT* ipiv, MKL_Complex8* b,
                          const MKL_INT* ldb, MKL_INT* info );

void __stdcall CSYTRS_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_INT* ipiv,
                          MKL_Complex8* b, const MKL_INT* ldb,
                          const MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall CSYTRS_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nrhs, const MKL_Complex8* a,
                           const MKL_INT* lda, const MKL_INT* ipiv,
                           MKL_Complex8* b, const MKL_INT* ldb,
                           const MKL_Complex8* work, const MKL_INT* lwork,
                           MKL_INT* info );
void __stdcall csytrs_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_INT* ipiv,
                          MKL_Complex8* b, const MKL_INT* ldb,
                          const MKL_Complex8* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall csytrs_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nrhs, const MKL_Complex8* a,
                           const MKL_INT* lda, const MKL_INT* ipiv,
                           MKL_Complex8* b, const MKL_INT* ldb,
                           const MKL_Complex8* work, const MKL_INT* lwork,
                           MKL_INT* info );

void __stdcall DLARFY( const char* uplo, int uplo_len, const MKL_INT* n,
                       const double* v, const MKL_INT* incv, const double* tau,
                       double* c, const MKL_INT* ldc, double* work );
void __stdcall DLARFY_( const char* uplo, int uplo_len, const MKL_INT* n,
                        const double* v, const MKL_INT* incv,
                        const double* tau, double* c, const MKL_INT* ldc,
                        double* work );
void __stdcall dlarfy( const char* uplo, int uplo_len, const MKL_INT* n,
                       const double* v, const MKL_INT* incv, const double* tau,
                       double* c, const MKL_INT* ldc, double* work );
void __stdcall dlarfy_( const char* uplo, int uplo_len, const MKL_INT* n,
                        const double* v, const MKL_INT* incv,
                        const double* tau, double* c, const MKL_INT* ldc,
                        double* work );

void __stdcall DLASYF_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nb, MKL_INT* kb, double* a,
                          const MKL_INT* lda, double* e, MKL_INT* ipiv,
                          double* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall DLASYF_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nb, MKL_INT* kb, double* a,
                           const MKL_INT* lda, double* e, MKL_INT* ipiv,
                           double* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall dlasyf_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nb, MKL_INT* kb, double* a,
                          const MKL_INT* lda, double* e, MKL_INT* ipiv,
                          double* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall dlasyf_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nb, MKL_INT* kb, double* a,
                           const MKL_INT* lda, double* e, MKL_INT* ipiv,
                           double* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall DSYCON_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const double* a, const MKL_INT* lda, const double* e,
                         const MKL_INT* ipiv, const double* anorm,
                         double* rcond, double* work, MKL_INT* iwork,
                         MKL_INT* info );
void __stdcall DSYCON_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const double* a, const MKL_INT* lda, const double* e,
                          const MKL_INT* ipiv, const double* anorm,
                          double* rcond, double* work, MKL_INT* iwork,
                          MKL_INT* info );
void __stdcall dsycon_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const double* a, const MKL_INT* lda, const double* e,
                         const MKL_INT* ipiv, const double* anorm,
                         double* rcond, double* work, MKL_INT* iwork,
                         MKL_INT* info );
void __stdcall dsycon_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const double* a, const MKL_INT* lda, const double* e,
                          const MKL_INT* ipiv, const double* anorm,
                          double* rcond, double* work, MKL_INT* iwork,
                          MKL_INT* info );

void __stdcall DSYCONVF( const char* uplo, int uplo_len, const char* way,
                         int way_len, const MKL_INT* n, double* a,
                         const MKL_INT* lda, double* e, MKL_INT* ipiv,
                         MKL_INT* info );
void __stdcall DSYCONVF_( const char* uplo, int uplo_len, const char* way,
                          int way_len, const MKL_INT* n, double* a,
                          const MKL_INT* lda, double* e, MKL_INT* ipiv,
                          MKL_INT* info );
void __stdcall dsyconvf( const char* uplo, int uplo_len, const char* way,
                         int way_len, const MKL_INT* n, double* a,
                         const MKL_INT* lda, double* e, MKL_INT* ipiv,
                         MKL_INT* info );
void __stdcall dsyconvf_( const char* uplo, int uplo_len, const char* way,
                          int way_len, const MKL_INT* n, double* a,
                          const MKL_INT* lda, double* e, MKL_INT* ipiv,
                          MKL_INT* info );

void __stdcall DSYCONVF_ROOK( const char* uplo, int uplo_len, const char* way,
                              int way_len, const MKL_INT* n, double* a,
                              const MKL_INT* lda, double* e,
                              const MKL_INT* ipiv, MKL_INT* info );
void __stdcall DSYCONVF_ROOK_( const char* uplo, int uplo_len, const char* way,
                               int way_len, const MKL_INT* n, double* a,
                               const MKL_INT* lda, double* e,
                               const MKL_INT* ipiv, MKL_INT* info );
void __stdcall dsyconvf_rook( const char* uplo, int uplo_len, const char* way,
                              int way_len, const MKL_INT* n, double* a,
                              const MKL_INT* lda, double* e,
                              const MKL_INT* ipiv, MKL_INT* info );
void __stdcall dsyconvf_rook_( const char* uplo, int uplo_len, const char* way,
                               int way_len, const MKL_INT* n, double* a,
                               const MKL_INT* lda, double* e,
                               const MKL_INT* ipiv, MKL_INT* info );

void __stdcall DSYSV_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, double* a, const MKL_INT* lda,
                         double* e, MKL_INT* ipiv, double* b,
                         const MKL_INT* ldb, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSYSV_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, double* a, const MKL_INT* lda,
                          double* e, MKL_INT* ipiv, double* b,
                          const MKL_INT* ldb, double* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsysv_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, double* a, const MKL_INT* lda,
                         double* e, MKL_INT* ipiv, double* b,
                         const MKL_INT* ldb, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsysv_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, double* a, const MKL_INT* lda,
                          double* e, MKL_INT* ipiv, double* b,
                          const MKL_INT* ldb, double* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall DSYTF2_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          double* a, const MKL_INT* lda, double* e,
                          MKL_INT* ipiv, MKL_INT* info );
void __stdcall DSYTF2_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           double* a, const MKL_INT* lda, double* e,
                           MKL_INT* ipiv, MKL_INT* info );
void __stdcall dsytf2_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          double* a, const MKL_INT* lda, double* e,
                          MKL_INT* ipiv, MKL_INT* info );
void __stdcall dsytf2_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           double* a, const MKL_INT* lda, double* e,
                           MKL_INT* ipiv, MKL_INT* info );

void __stdcall DSYTRF_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          double* a, const MKL_INT* lda, double* e,
                          MKL_INT* ipiv, double* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall DSYTRF_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           double* a, const MKL_INT* lda, double* e,
                           MKL_INT* ipiv, double* work, const MKL_INT* lwork,
                           MKL_INT* info );
void __stdcall dsytrf_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          double* a, const MKL_INT* lda, double* e,
                          MKL_INT* ipiv, double* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall dsytrf_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           double* a, const MKL_INT* lda, double* e,
                           MKL_INT* ipiv, double* work, const MKL_INT* lwork,
                           MKL_INT* info );

void __stdcall DSYTRI_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         double* a, const MKL_INT* lda, const double* e,
                         const MKL_INT* ipiv, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSYTRI_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          double* a, const MKL_INT* lda, const double* e,
                          const MKL_INT* ipiv, double* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytri_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         double* a, const MKL_INT* lda, const double* e,
                         const MKL_INT* ipiv, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytri_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          double* a, const MKL_INT* lda, const double* e,
                          const MKL_INT* ipiv, double* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall DSYTRI_3X( const char* uplo, int uplo_len, const MKL_INT* n,
                          double* a, const MKL_INT* lda, const double* e,
                          const MKL_INT* ipiv, double* work, const MKL_INT* nb,
                          MKL_INT* info );
void __stdcall DSYTRI_3X_( const char* uplo, int uplo_len, const MKL_INT* n,
                           double* a, const MKL_INT* lda, const double* e,
                           const MKL_INT* ipiv, double* work,
                           const MKL_INT* nb, MKL_INT* info );
void __stdcall dsytri_3x( const char* uplo, int uplo_len, const MKL_INT* n,
                          double* a, const MKL_INT* lda, const double* e,
                          const MKL_INT* ipiv, double* work, const MKL_INT* nb,
                          MKL_INT* info );
void __stdcall dsytri_3x_( const char* uplo, int uplo_len, const MKL_INT* n,
                           double* a, const MKL_INT* lda, const double* e,
                           const MKL_INT* ipiv, double* work,
                           const MKL_INT* nb, MKL_INT* info );

void __stdcall DSYTRS_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const double* a,
                         const MKL_INT* lda, const double* e,
                         const MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                         MKL_INT* info );
void __stdcall DSYTRS_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const double* a,
                          const MKL_INT* lda, const double* e,
                          const MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                          MKL_INT* info );
void __stdcall dsytrs_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const double* a,
                         const MKL_INT* lda, const double* e,
                         const MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                         MKL_INT* info );
void __stdcall dsytrs_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const double* a,
                          const MKL_INT* lda, const double* e,
                          const MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                          MKL_INT* info );

void __stdcall SLARFY( const char* uplo, int uplo_len, const MKL_INT* n,
                       const float* v, const MKL_INT* incv, const float* tau,
                       float* c, const MKL_INT* ldc, float* work );
void __stdcall SLARFY_( const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* v, const MKL_INT* incv, const float* tau,
                        float* c, const MKL_INT* ldc, float* work );
void __stdcall slarfy( const char* uplo, int uplo_len, const MKL_INT* n,
                       const float* v, const MKL_INT* incv, const float* tau,
                       float* c, const MKL_INT* ldc, float* work );
void __stdcall slarfy_( const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* v, const MKL_INT* incv, const float* tau,
                        float* c, const MKL_INT* ldc, float* work );

void __stdcall SLASYF_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nb, MKL_INT* kb, float* a,
                          const MKL_INT* lda, float* e, MKL_INT* ipiv,
                          float* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall SLASYF_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nb, MKL_INT* kb, float* a,
                           const MKL_INT* lda, float* e, MKL_INT* ipiv,
                           float* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall slasyf_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nb, MKL_INT* kb, float* a,
                          const MKL_INT* lda, float* e, MKL_INT* ipiv,
                          float* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall slasyf_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nb, MKL_INT* kb, float* a,
                           const MKL_INT* lda, float* e, MKL_INT* ipiv,
                           float* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall SSYCON_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const float* a, const MKL_INT* lda, const float* e,
                         const MKL_INT* ipiv, const float* anorm, float* rcond,
                         float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SSYCON_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const float* a, const MKL_INT* lda, const float* e,
                          const MKL_INT* ipiv, const float* anorm,
                          float* rcond, float* work, MKL_INT* iwork,
                          MKL_INT* info );
void __stdcall ssycon_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const float* a, const MKL_INT* lda, const float* e,
                         const MKL_INT* ipiv, const float* anorm, float* rcond,
                         float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall ssycon_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const float* a, const MKL_INT* lda, const float* e,
                          const MKL_INT* ipiv, const float* anorm,
                          float* rcond, float* work, MKL_INT* iwork,
                          MKL_INT* info );

void __stdcall SSYCONVF( const char* uplo, int uplo_len, const char* way,
                         int way_len, const MKL_INT* n, float* a,
                         const MKL_INT* lda, float* e, MKL_INT* ipiv,
                         MKL_INT* info );
void __stdcall SSYCONVF_( const char* uplo, int uplo_len, const char* way,
                          int way_len, const MKL_INT* n, float* a,
                          const MKL_INT* lda, float* e, MKL_INT* ipiv,
                          MKL_INT* info );
void __stdcall ssyconvf( const char* uplo, int uplo_len, const char* way,
                         int way_len, const MKL_INT* n, float* a,
                         const MKL_INT* lda, float* e, MKL_INT* ipiv,
                         MKL_INT* info );
void __stdcall ssyconvf_( const char* uplo, int uplo_len, const char* way,
                          int way_len, const MKL_INT* n, float* a,
                          const MKL_INT* lda, float* e, MKL_INT* ipiv,
                          MKL_INT* info );

void __stdcall SSYCONVF_ROOK( const char* uplo, int uplo_len, const char* way,
                              int way_len, const MKL_INT* n, float* a,
                              const MKL_INT* lda, float* e,
                              const MKL_INT* ipiv, MKL_INT* info );
void __stdcall SSYCONVF_ROOK_( const char* uplo, int uplo_len, const char* way,
                               int way_len, const MKL_INT* n, float* a,
                               const MKL_INT* lda, float* e,
                               const MKL_INT* ipiv, MKL_INT* info );
void __stdcall ssyconvf_rook( const char* uplo, int uplo_len, const char* way,
                              int way_len, const MKL_INT* n, float* a,
                              const MKL_INT* lda, float* e,
                              const MKL_INT* ipiv, MKL_INT* info );
void __stdcall ssyconvf_rook_( const char* uplo, int uplo_len, const char* way,
                               int way_len, const MKL_INT* n, float* a,
                               const MKL_INT* lda, float* e,
                               const MKL_INT* ipiv, MKL_INT* info );

void __stdcall SSYSV_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, float* a, const MKL_INT* lda,
                         float* e, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                         float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYSV_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, float* a, const MKL_INT* lda,
                          float* e, MKL_INT* ipiv, float* b,
                          const MKL_INT* ldb, float* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssysv_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, float* a, const MKL_INT* lda,
                         float* e, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                         float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssysv_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, float* a, const MKL_INT* lda,
                          float* e, MKL_INT* ipiv, float* b,
                          const MKL_INT* ldb, float* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall SSYTF2_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          float* a, const MKL_INT* lda, float* e,
                          MKL_INT* ipiv, MKL_INT* info );
void __stdcall SSYTF2_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           float* a, const MKL_INT* lda, float* e,
                           MKL_INT* ipiv, MKL_INT* info );
void __stdcall ssytf2_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          float* a, const MKL_INT* lda, float* e,
                          MKL_INT* ipiv, MKL_INT* info );
void __stdcall ssytf2_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           float* a, const MKL_INT* lda, float* e,
                           MKL_INT* ipiv, MKL_INT* info );

void __stdcall SSYTRF_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          float* a, const MKL_INT* lda, float* e,
                          MKL_INT* ipiv, float* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall SSYTRF_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           float* a, const MKL_INT* lda, float* e,
                           MKL_INT* ipiv, float* work, const MKL_INT* lwork,
                           MKL_INT* info );
void __stdcall ssytrf_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          float* a, const MKL_INT* lda, float* e,
                          MKL_INT* ipiv, float* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall ssytrf_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           float* a, const MKL_INT* lda, float* e,
                           MKL_INT* ipiv, float* work, const MKL_INT* lwork,
                           MKL_INT* info );

void __stdcall SSYTRI_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         float* a, const MKL_INT* lda, const float* e,
                         const MKL_INT* ipiv, float* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYTRI_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          float* a, const MKL_INT* lda, const float* e,
                          const MKL_INT* ipiv, float* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytri_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         float* a, const MKL_INT* lda, const float* e,
                         const MKL_INT* ipiv, float* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytri_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          float* a, const MKL_INT* lda, const float* e,
                          const MKL_INT* ipiv, float* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall SSYTRI_3X( const char* uplo, int uplo_len, const MKL_INT* n,
                          float* a, const MKL_INT* lda, const float* e,
                          const MKL_INT* ipiv, float* work, const MKL_INT* nb,
                          MKL_INT* info );
void __stdcall SSYTRI_3X_( const char* uplo, int uplo_len, const MKL_INT* n,
                           float* a, const MKL_INT* lda, const float* e,
                           const MKL_INT* ipiv, float* work, const MKL_INT* nb,
                           MKL_INT* info );
void __stdcall ssytri_3x( const char* uplo, int uplo_len, const MKL_INT* n,
                          float* a, const MKL_INT* lda, const float* e,
                          const MKL_INT* ipiv, float* work, const MKL_INT* nb,
                          MKL_INT* info );
void __stdcall ssytri_3x_( const char* uplo, int uplo_len, const MKL_INT* n,
                           float* a, const MKL_INT* lda, const float* e,
                           const MKL_INT* ipiv, float* work, const MKL_INT* nb,
                           MKL_INT* info );

void __stdcall SSYTRS_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const float* a,
                         const MKL_INT* lda, const float* e,
                         const MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                         MKL_INT* info );
void __stdcall SSYTRS_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const float* a,
                          const MKL_INT* lda, const float* e,
                          const MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                          MKL_INT* info );
void __stdcall ssytrs_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const float* a,
                         const MKL_INT* lda, const float* e,
                         const MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                         MKL_INT* info );
void __stdcall ssytrs_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const float* a,
                          const MKL_INT* lda, const float* e,
                          const MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                          MKL_INT* info );

void __stdcall ZHECON_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* e, const MKL_INT* ipiv,
                         const double* anorm, double* rcond,
                         MKL_Complex16* work, MKL_INT* info );
void __stdcall ZHECON_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* e, const MKL_INT* ipiv,
                          const double* anorm, double* rcond,
                          MKL_Complex16* work, MKL_INT* info );
void __stdcall zhecon_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* e, const MKL_INT* ipiv,
                         const double* anorm, double* rcond,
                         MKL_Complex16* work, MKL_INT* info );
void __stdcall zhecon_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* e, const MKL_INT* ipiv,
                          const double* anorm, double* rcond,
                          MKL_Complex16* work, MKL_INT* info );

void __stdcall ZHESV_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                         MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall ZHESV_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                          MKL_Complex16* b, const MKL_INT* ldb,
                          MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall zhesv_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                         MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall zhesv_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                          MKL_Complex16* b, const MKL_INT* ldb,
                          MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );

void __stdcall ZHETF2_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          MKL_Complex16* e, MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZHETF2_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda,
                           MKL_Complex16* e, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zhetf2_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          MKL_Complex16* e, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zhetf2_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda,
                           MKL_Complex16* e, MKL_INT* ipiv, MKL_INT* info );

void __stdcall ZHETRF_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          MKL_Complex16* e, MKL_INT* ipiv, MKL_Complex16* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZHETRF_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda,
                           MKL_Complex16* e, MKL_INT* ipiv,
                           MKL_Complex16* work, const MKL_INT* lwork,
                           MKL_INT* info );
void __stdcall zhetrf_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          MKL_Complex16* e, MKL_INT* ipiv, MKL_Complex16* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetrf_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda,
                           MKL_Complex16* e, MKL_INT* ipiv,
                           MKL_Complex16* work, const MKL_INT* lwork,
                           MKL_INT* info );

void __stdcall ZHETRI_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* e, const MKL_INT* ipiv,
                         MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall ZHETRI_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* e, const MKL_INT* ipiv,
                          MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall zhetri_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* e, const MKL_INT* ipiv,
                         MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall zhetri_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* e, const MKL_INT* ipiv,
                          MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );

void __stdcall ZHETRI_3X( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* e, const MKL_INT* ipiv,
                          MKL_Complex16* work, const MKL_INT* nb,
                          MKL_INT* info );
void __stdcall ZHETRI_3X_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda,
                           const MKL_Complex16* e, const MKL_INT* ipiv,
                           MKL_Complex16* work, const MKL_INT* nb,
                           MKL_INT* info );
void __stdcall zhetri_3x( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* e, const MKL_INT* ipiv,
                          MKL_Complex16* work, const MKL_INT* nb,
                          MKL_INT* info );
void __stdcall zhetri_3x_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda,
                           const MKL_Complex16* e, const MKL_INT* ipiv,
                           MKL_Complex16* work, const MKL_INT* nb,
                           MKL_INT* info );

void __stdcall ZHETRS_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_Complex16* e,
                         const MKL_INT* ipiv, MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZHETRS_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_Complex16* e,
                          const MKL_INT* ipiv, MKL_Complex16* b,
                          const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhetrs_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_Complex16* e,
                         const MKL_INT* ipiv, MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhetrs_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_Complex16* e,
                          const MKL_INT* ipiv, MKL_Complex16* b,
                          const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZLAHEF_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nb, MKL_INT* kb, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                          MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall ZLAHEF_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nb, MKL_INT* kb, MKL_Complex16* a,
                           const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                           MKL_Complex16* w, const MKL_INT* ldw,
                           MKL_INT* info );
void __stdcall zlahef_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nb, MKL_INT* kb, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                          MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall zlahef_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nb, MKL_INT* kb, MKL_Complex16* a,
                           const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                           MKL_Complex16* w, const MKL_INT* ldw,
                           MKL_INT* info );

void __stdcall ZLARFY( const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex16* v, const MKL_INT* incv,
                       const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work );
void __stdcall ZLARFY_( const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex16* v, const MKL_INT* incv,
                        const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work );
void __stdcall zlarfy( const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex16* v, const MKL_INT* incv,
                       const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work );
void __stdcall zlarfy_( const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex16* v, const MKL_INT* incv,
                        const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work );

void __stdcall ZLASYF_AA( const char* uplo, int uplo_len, const MKL_INT* j1,
                          const MKL_INT* m, const MKL_INT* nb,
                          MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                          MKL_Complex16* h, const MKL_INT* ldh,
                          MKL_Complex16* work );
void __stdcall ZLASYF_AA_( const char* uplo, int uplo_len, const MKL_INT* j1,
                           const MKL_INT* m, const MKL_INT* nb,
                           MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex16* h, const MKL_INT* ldh,
                           MKL_Complex16* work );
void __stdcall zlasyf_aa( const char* uplo, int uplo_len, const MKL_INT* j1,
                          const MKL_INT* m, const MKL_INT* nb,
                          MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                          MKL_Complex16* h, const MKL_INT* ldh,
                          MKL_Complex16* work );
void __stdcall zlasyf_aa_( const char* uplo, int uplo_len, const MKL_INT* j1,
                           const MKL_INT* m, const MKL_INT* nb,
                           MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex16* h, const MKL_INT* ldh,
                           MKL_Complex16* work );

void __stdcall ZLASYF_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nb, MKL_INT* kb, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                          MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall ZLASYF_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nb, MKL_INT* kb, MKL_Complex16* a,
                           const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                           MKL_Complex16* w, const MKL_INT* ldw,
                           MKL_INT* info );
void __stdcall zlasyf_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nb, MKL_INT* kb, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                          MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall zlasyf_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nb, MKL_INT* kb, MKL_Complex16* a,
                           const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                           MKL_Complex16* w, const MKL_INT* ldw,
                           MKL_INT* info );

void __stdcall ZSYCON_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* e, const MKL_INT* ipiv,
                         const double* anorm, double* rcond,
                         MKL_Complex16* work, MKL_INT* info );
void __stdcall ZSYCON_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* e, const MKL_INT* ipiv,
                          const double* anorm, double* rcond,
                          MKL_Complex16* work, MKL_INT* info );
void __stdcall zsycon_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* e, const MKL_INT* ipiv,
                         const double* anorm, double* rcond,
                         MKL_Complex16* work, MKL_INT* info );
void __stdcall zsycon_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* e, const MKL_INT* ipiv,
                          const double* anorm, double* rcond,
                          MKL_Complex16* work, MKL_INT* info );

void __stdcall ZSYCONVF( const char* uplo, int uplo_len, const char* way,
                         int way_len, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                         MKL_INT* info );
void __stdcall ZSYCONVF_( const char* uplo, int uplo_len, const char* way,
                          int way_len, const MKL_INT* n, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                          MKL_INT* info );
void __stdcall zsyconvf( const char* uplo, int uplo_len, const char* way,
                         int way_len, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                         MKL_INT* info );
void __stdcall zsyconvf_( const char* uplo, int uplo_len, const char* way,
                          int way_len, const MKL_INT* n, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                          MKL_INT* info );

void __stdcall ZSYCONVF_ROOK( const char* uplo, int uplo_len, const char* way,
                              int way_len, const MKL_INT* n, MKL_Complex16* a,
                              const MKL_INT* lda, MKL_Complex16* e,
                              const MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZSYCONVF_ROOK_( const char* uplo, int uplo_len, const char* way,
                               int way_len, const MKL_INT* n, MKL_Complex16* a,
                               const MKL_INT* lda, MKL_Complex16* e,
                               const MKL_INT* ipiv, MKL_INT* info );
void __stdcall zsyconvf_rook( const char* uplo, int uplo_len, const char* way,
                              int way_len, const MKL_INT* n, MKL_Complex16* a,
                              const MKL_INT* lda, MKL_Complex16* e,
                              const MKL_INT* ipiv, MKL_INT* info );
void __stdcall zsyconvf_rook_( const char* uplo, int uplo_len, const char* way,
                               int way_len, const MKL_INT* n, MKL_Complex16* a,
                               const MKL_INT* lda, MKL_Complex16* e,
                               const MKL_INT* ipiv, MKL_INT* info );

void __stdcall ZSYSV_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZSYSV_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* b,
                          const MKL_INT* ldb, MKL_Complex16* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsysv_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsysv_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* b,
                          const MKL_INT* ldb, MKL_Complex16* work,
                          const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZSYSV_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                         MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall ZSYSV_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                          MKL_Complex16* b, const MKL_INT* ldb,
                          MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall zsysv_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                         MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall zsysv_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, MKL_Complex16* a,
                          const MKL_INT* lda, MKL_Complex16* e, MKL_INT* ipiv,
                          MKL_Complex16* b, const MKL_INT* ldb,
                          MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );

void __stdcall ZSYTF2_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          MKL_Complex16* e, MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZSYTF2_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda,
                           MKL_Complex16* e, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zsytf2_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          MKL_Complex16* e, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zsytf2_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda,
                           MKL_Complex16* e, MKL_INT* ipiv, MKL_INT* info );

void __stdcall ZSYTRF_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                          MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall ZSYTRF_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex16* work, const MKL_INT* lwork,
                           MKL_INT* info );
void __stdcall zsytrf_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                          MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall zsytrf_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex16* work, const MKL_INT* lwork,
                           MKL_INT* info );

void __stdcall ZSYTRF_RK( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          MKL_Complex16* e, MKL_INT* ipiv, MKL_Complex16* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZSYTRF_RK_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda,
                           MKL_Complex16* e, MKL_INT* ipiv,
                           MKL_Complex16* work, const MKL_INT* lwork,
                           MKL_INT* info );
void __stdcall zsytrf_rk( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          MKL_Complex16* e, MKL_INT* ipiv, MKL_Complex16* work,
                          const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsytrf_rk_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda,
                           MKL_Complex16* e, MKL_INT* ipiv,
                           MKL_Complex16* work, const MKL_INT* lwork,
                           MKL_INT* info );

void __stdcall ZSYTRI_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* e, const MKL_INT* ipiv,
                         MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall ZSYTRI_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* e, const MKL_INT* ipiv,
                          MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall zsytri_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* e, const MKL_INT* ipiv,
                         MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall zsytri_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* e, const MKL_INT* ipiv,
                          MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );

void __stdcall ZSYTRI_3X( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* e, const MKL_INT* ipiv,
                          MKL_Complex16* work, const MKL_INT* nb,
                          MKL_INT* info );
void __stdcall ZSYTRI_3X_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda,
                           const MKL_Complex16* e, const MKL_INT* ipiv,
                           MKL_Complex16* work, const MKL_INT* nb,
                           MKL_INT* info );
void __stdcall zsytri_3x( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* e, const MKL_INT* ipiv,
                          MKL_Complex16* work, const MKL_INT* nb,
                          MKL_INT* info );
void __stdcall zsytri_3x_( const char* uplo, int uplo_len, const MKL_INT* n,
                           MKL_Complex16* a, const MKL_INT* lda,
                           const MKL_Complex16* e, const MKL_INT* ipiv,
                           MKL_Complex16* work, const MKL_INT* nb,
                           MKL_INT* info );

void __stdcall ZSYTRS_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_Complex16* e,
                         const MKL_INT* ipiv, MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZSYTRS_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_Complex16* e,
                          const MKL_INT* ipiv, MKL_Complex16* b,
                          const MKL_INT* ldb, MKL_INT* info );
void __stdcall zsytrs_3( const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_Complex16* e,
                         const MKL_INT* ipiv, MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_INT* info );
void __stdcall zsytrs_3_( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_Complex16* e,
                          const MKL_INT* ipiv, MKL_Complex16* b,
                          const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZSYTRS_AA( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_INT* ipiv,
                          MKL_Complex16* b, const MKL_INT* ldb,
                          const MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall ZSYTRS_AA_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nrhs, const MKL_Complex16* a,
                           const MKL_INT* lda, const MKL_INT* ipiv,
                           MKL_Complex16* b, const MKL_INT* ldb,
                           const MKL_Complex16* work, const MKL_INT* lwork,
                           MKL_INT* info );
void __stdcall zsytrs_aa( const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* nrhs, const MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_INT* ipiv,
                          MKL_Complex16* b, const MKL_INT* ldb,
                          const MKL_Complex16* work, const MKL_INT* lwork,
                          MKL_INT* info );
void __stdcall zsytrs_aa_( const char* uplo, int uplo_len, const MKL_INT* n,
                           const MKL_INT* nrhs, const MKL_Complex16* a,
                           const MKL_INT* lda, const MKL_INT* ipiv,
                           MKL_Complex16* b, const MKL_INT* ldb,
                           const MKL_Complex16* work, const MKL_INT* lwork,
                           MKL_INT* info );

void __stdcall CHB2ST_KERNELS( const char* uplo, int uplo_len,
                               const MKL_INT* wantz, const MKL_INT* ttype,
                               const MKL_INT* st, const MKL_INT* ed,
                               const MKL_INT* sweep, const MKL_INT* n,
                               const MKL_INT* nb, const MKL_INT* ib,
                               MKL_Complex8* a, const MKL_INT* lda,
                               MKL_Complex8* v, MKL_Complex8* tau,
                               const MKL_INT* ldvt, const MKL_Complex8* work );
void __stdcall CHB2ST_KERNELS_( const char* uplo, int uplo_len,
                                const MKL_INT* wantz, const MKL_INT* ttype,
                                const MKL_INT* st, const MKL_INT* ed,
                                const MKL_INT* sweep, const MKL_INT* n,
                                const MKL_INT* nb, const MKL_INT* ib,
                                MKL_Complex8* a, const MKL_INT* lda,
                                MKL_Complex8* v, MKL_Complex8* tau,
                                const MKL_INT* ldvt, const MKL_Complex8* work );
void __stdcall chb2st_kernels( const char* uplo, int uplo_len,
                               const MKL_INT* wantz, const MKL_INT* ttype,
                               const MKL_INT* st, const MKL_INT* ed,
                               const MKL_INT* sweep, const MKL_INT* n,
                               const MKL_INT* nb, const MKL_INT* ib,
                               MKL_Complex8* a, const MKL_INT* lda,
                               MKL_Complex8* v, MKL_Complex8* tau,
                               const MKL_INT* ldvt, const MKL_Complex8* work );
void __stdcall chb2st_kernels_( const char* uplo, int uplo_len,
                                const MKL_INT* wantz, const MKL_INT* ttype,
                                const MKL_INT* st, const MKL_INT* ed,
                                const MKL_INT* sweep, const MKL_INT* n,
                                const MKL_INT* nb, const MKL_INT* ib,
                                MKL_Complex8* a, const MKL_INT* lda,
                                MKL_Complex8* v, MKL_Complex8* tau,
                                const MKL_INT* ldvt, const MKL_Complex8* work );

void __stdcall CHBEV_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             MKL_Complex8* ab, const MKL_INT* ldab, float* w,
                             MKL_Complex8* z, const MKL_INT* ldz,
                             MKL_Complex8* work, const MKL_INT* lwork,
                             float* rwork, MKL_INT* info );
void __stdcall CHBEV_2STAGE_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex8* ab,
                              const MKL_INT* ldab, float* w, MKL_Complex8* z,
                              const MKL_INT* ldz, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              MKL_INT* info );
void __stdcall chbev_2stage( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             MKL_Complex8* ab, const MKL_INT* ldab, float* w,
                             MKL_Complex8* z, const MKL_INT* ldz,
                             MKL_Complex8* work, const MKL_INT* lwork,
                             float* rwork, MKL_INT* info );
void __stdcall chbev_2stage_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex8* ab,
                              const MKL_INT* ldab, float* w, MKL_Complex8* z,
                              const MKL_INT* ldz, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              MKL_INT* info );

void __stdcall CHBEVD_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex8* ab,
                              const MKL_INT* ldab, float* w, MKL_Complex8* z,
                              const MKL_INT* ldz, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              const MKL_INT* lrwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall CHBEVD_2STAGE_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd,
                               MKL_Complex8* ab, const MKL_INT* ldab, float* w,
                               MKL_Complex8* z, const MKL_INT* ldz,
                               MKL_Complex8* work, const MKL_INT* lwork,
                               float* rwork, const MKL_INT* lrwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );
void __stdcall chbevd_2stage( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex8* ab,
                              const MKL_INT* ldab, float* w, MKL_Complex8* z,
                              const MKL_INT* ldz, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              const MKL_INT* lrwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall chbevd_2stage_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd,
                               MKL_Complex8* ab, const MKL_INT* ldab, float* w,
                               MKL_Complex8* z, const MKL_INT* ldz,
                               MKL_Complex8* work, const MKL_INT* lwork,
                               float* rwork, const MKL_INT* lrwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );

void __stdcall CHBEVX_2STAGE( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex8* ab,
                              const MKL_INT* ldab, MKL_Complex8* q,
                              const MKL_INT* ldq, const float* vl,
                              const float* vu, const MKL_INT* il,
                              const MKL_INT* iu, const float* abstol,
                              MKL_INT* m, float* w, MKL_Complex8* z,
                              const MKL_INT* ldz, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall CHBEVX_2STAGE_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd,
                               MKL_Complex8* ab, const MKL_INT* ldab,
                               MKL_Complex8* q, const MKL_INT* ldq,
                               const float* vl, const float* vu,
                               const MKL_INT* il, const MKL_INT* iu,
                               const float* abstol, MKL_INT* m, float* w,
                               MKL_Complex8* z, const MKL_INT* ldz,
                               MKL_Complex8* work, const MKL_INT* lwork,
                               float* rwork, MKL_INT* iwork, MKL_INT* ifail,
                               MKL_INT* info );
void __stdcall chbevx_2stage( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex8* ab,
                              const MKL_INT* ldab, MKL_Complex8* q,
                              const MKL_INT* ldq, const float* vl,
                              const float* vu, const MKL_INT* il,
                              const MKL_INT* iu, const float* abstol,
                              MKL_INT* m, float* w, MKL_Complex8* z,
                              const MKL_INT* ldz, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall chbevx_2stage_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd,
                               MKL_Complex8* ab, const MKL_INT* ldab,
                               MKL_Complex8* q, const MKL_INT* ldq,
                               const float* vl, const float* vu,
                               const MKL_INT* il, const MKL_INT* iu,
                               const float* abstol, MKL_INT* m, float* w,
                               MKL_Complex8* z, const MKL_INT* ldz,
                               MKL_Complex8* work, const MKL_INT* lwork,
                               float* rwork, MKL_INT* iwork, MKL_INT* ifail,
                               MKL_INT* info );

void __stdcall CHEEV_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, float* w, MKL_Complex8* work,
                             const MKL_INT* lwork, float* rwork,
                             MKL_INT* info );
void __stdcall CHEEV_2STAGE_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, float* w, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              MKL_INT* info );
void __stdcall cheev_2stage( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, float* w, MKL_Complex8* work,
                             const MKL_INT* lwork, float* rwork,
                             MKL_INT* info );
void __stdcall cheev_2stage_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, float* w, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              MKL_INT* info );

void __stdcall CHEEVD_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, float* w, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              const MKL_INT* lrwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall CHEEVD_2STAGE_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex8* a,
                               const MKL_INT* lda, float* w,
                               MKL_Complex8* work, const MKL_INT* lwork,
                               float* rwork, const MKL_INT* lrwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );
void __stdcall cheevd_2stage( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, float* w, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              const MKL_INT* lrwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall cheevd_2stage_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex8* a,
                               const MKL_INT* lda, float* w,
                               MKL_Complex8* work, const MKL_INT* lwork,
                               float* rwork, const MKL_INT* lrwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );

void __stdcall CHEEVR_2STAGE( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              MKL_Complex8* a, const MKL_INT* lda,
                              const float* vl, const float* vu,
                              const MKL_INT* il, const MKL_INT* iu,
                              const float* abstol, MKL_INT* m, float* w,
                              MKL_Complex8* z, const MKL_INT* ldz,
                              MKL_INT* isuppz, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              const MKL_INT* lrwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall CHEEVR_2STAGE_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex8* a,
                               const MKL_INT* lda, const float* vl,
                               const float* vu, const MKL_INT* il,
                               const MKL_INT* iu, const float* abstol,
                               MKL_INT* m, float* w, MKL_Complex8* z,
                               const MKL_INT* ldz, MKL_INT* isuppz,
                               MKL_Complex8* work, const MKL_INT* lwork,
                               float* rwork, const MKL_INT* lrwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );
void __stdcall cheevr_2stage( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              MKL_Complex8* a, const MKL_INT* lda,
                              const float* vl, const float* vu,
                              const MKL_INT* il, const MKL_INT* iu,
                              const float* abstol, MKL_INT* m, float* w,
                              MKL_Complex8* z, const MKL_INT* ldz,
                              MKL_INT* isuppz, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              const MKL_INT* lrwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall cheevr_2stage_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex8* a,
                               const MKL_INT* lda, const float* vl,
                               const float* vu, const MKL_INT* il,
                               const MKL_INT* iu, const float* abstol,
                               MKL_INT* m, float* w, MKL_Complex8* z,
                               const MKL_INT* ldz, MKL_INT* isuppz,
                               MKL_Complex8* work, const MKL_INT* lwork,
                               float* rwork, const MKL_INT* lrwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );

void __stdcall CHEEVX_2STAGE( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              MKL_Complex8* a, const MKL_INT* lda,
                              const float* vl, const float* vu,
                              const MKL_INT* il, const MKL_INT* iu,
                              const float* abstol, MKL_INT* m, float* w,
                              MKL_Complex8* z, const MKL_INT* ldz,
                              MKL_Complex8* work, const MKL_INT* lwork,
                              float* rwork, MKL_INT* iwork, MKL_INT* ifail,
                              MKL_INT* info );
void __stdcall CHEEVX_2STAGE_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex8* a,
                               const MKL_INT* lda, const float* vl,
                               const float* vu, const MKL_INT* il,
                               const MKL_INT* iu, const float* abstol,
                               MKL_INT* m, float* w, MKL_Complex8* z,
                               const MKL_INT* ldz, MKL_Complex8* work,
                               const MKL_INT* lwork, float* rwork,
                               MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall cheevx_2stage( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              MKL_Complex8* a, const MKL_INT* lda,
                              const float* vl, const float* vu,
                              const MKL_INT* il, const MKL_INT* iu,
                              const float* abstol, MKL_INT* m, float* w,
                              MKL_Complex8* z, const MKL_INT* ldz,
                              MKL_Complex8* work, const MKL_INT* lwork,
                              float* rwork, MKL_INT* iwork, MKL_INT* ifail,
                              MKL_INT* info );
void __stdcall cheevx_2stage_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex8* a,
                               const MKL_INT* lda, const float* vl,
                               const float* vu, const MKL_INT* il,
                               const MKL_INT* iu, const float* abstol,
                               MKL_INT* m, float* w, MKL_Complex8* z,
                               const MKL_INT* ldz, MKL_Complex8* work,
                               const MKL_INT* lwork, float* rwork,
                               MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall CHEGV_2STAGE( const MKL_INT* itype, const char* jobz,
                             int jobz_len, const char* uplo, int uplo_len,
                             const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_Complex8* b,
                             const MKL_INT* ldb, float* w, MKL_Complex8* work,
                             const MKL_INT* lwork, float* rwork,
                             MKL_INT* info );
void __stdcall CHEGV_2STAGE_( const MKL_INT* itype, const char* jobz,
                              int jobz_len, const char* uplo, int uplo_len,
                              const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, MKL_Complex8* b,
                              const MKL_INT* ldb, float* w, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              MKL_INT* info );
void __stdcall chegv_2stage( const MKL_INT* itype, const char* jobz,
                             int jobz_len, const char* uplo, int uplo_len,
                             const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_Complex8* b,
                             const MKL_INT* ldb, float* w, MKL_Complex8* work,
                             const MKL_INT* lwork, float* rwork,
                             MKL_INT* info );
void __stdcall chegv_2stage_( const MKL_INT* itype, const char* jobz,
                              int jobz_len, const char* uplo, int uplo_len,
                              const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, MKL_Complex8* b,
                              const MKL_INT* ldb, float* w, MKL_Complex8* work,
                              const MKL_INT* lwork, float* rwork,
                              MKL_INT* info );

void __stdcall CHETRD_2STAGE( const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, float* d, float* e,
                              MKL_Complex8* tau, MKL_Complex8* hous2,
                              const MKL_INT* lhous2, MKL_Complex8* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall CHETRD_2STAGE_( const char* vect, int vect_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex8* a,
                               const MKL_INT* lda, float* d, float* e,
                               MKL_Complex8* tau, MKL_Complex8* hous2,
                               const MKL_INT* lhous2, MKL_Complex8* work,
                               const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetrd_2stage( const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, float* d, float* e,
                              MKL_Complex8* tau, MKL_Complex8* hous2,
                              const MKL_INT* lhous2, MKL_Complex8* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetrd_2stage_( const char* vect, int vect_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex8* a,
                               const MKL_INT* lda, float* d, float* e,
                               MKL_Complex8* tau, MKL_Complex8* hous2,
                               const MKL_INT* lhous2, MKL_Complex8* work,
                               const MKL_INT* lwork, MKL_INT* info );

void __stdcall CHETRD_HB2ST( const char* stage1, int stage1_len,
                             const char* vect, int vect_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             MKL_Complex8* ab, const MKL_INT* ldab, float* d,
                             float* e, MKL_Complex8* hous,
                             const MKL_INT* lhous, MKL_Complex8* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall CHETRD_HB2ST_( const char* stage1, int stage1_len,
                              const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex8* ab,
                              const MKL_INT* ldab, float* d, float* e,
                              MKL_Complex8* hous, const MKL_INT* lhous,
                              MKL_Complex8* work, const MKL_INT* lwork,
                              MKL_INT* info );
void __stdcall chetrd_hb2st( const char* stage1, int stage1_len,
                             const char* vect, int vect_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             MKL_Complex8* ab, const MKL_INT* ldab, float* d,
                             float* e, MKL_Complex8* hous,
                             const MKL_INT* lhous, MKL_Complex8* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetrd_hb2st_( const char* stage1, int stage1_len,
                              const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex8* ab,
                              const MKL_INT* ldab, float* d, float* e,
                              MKL_Complex8* hous, const MKL_INT* lhous,
                              MKL_Complex8* work, const MKL_INT* lwork,
                              MKL_INT* info );

void __stdcall CHETRD_HE2HB( const char* uplo, int uplo_len, const MKL_INT* n,
                             const MKL_INT* kd, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_Complex8* ab,
                             const MKL_INT* ldab, MKL_Complex8* tau,
                             MKL_Complex8* work, const MKL_INT* lwork,
                             MKL_INT* info );
void __stdcall CHETRD_HE2HB_( const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex8* a,
                              const MKL_INT* lda, MKL_Complex8* ab,
                              const MKL_INT* ldab, MKL_Complex8* tau,
                              MKL_Complex8* work, const MKL_INT* lwork,
                              MKL_INT* info );
void __stdcall chetrd_he2hb( const char* uplo, int uplo_len, const MKL_INT* n,
                             const MKL_INT* kd, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_Complex8* ab,
                             const MKL_INT* ldab, MKL_Complex8* tau,
                             MKL_Complex8* work, const MKL_INT* lwork,
                             MKL_INT* info );
void __stdcall chetrd_he2hb_( const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex8* a,
                              const MKL_INT* lda, MKL_Complex8* ab,
                              const MKL_INT* ldab, MKL_Complex8* tau,
                              MKL_Complex8* work, const MKL_INT* lwork,
                              MKL_INT* info );

void __stdcall DSB2ST_KERNELS( const char* uplo, int uplo_len,
                               const MKL_INT* wantz, const MKL_INT* ttype,
                               const MKL_INT* st, const MKL_INT* ed,
                               const MKL_INT* sweep, const MKL_INT* n,
                               const MKL_INT* nb, const MKL_INT* ib, double* a,
                               const MKL_INT* lda, double* v, double* tau,
                               const MKL_INT* ldvt, const double* work );
void __stdcall DSB2ST_KERNELS_( const char* uplo, int uplo_len,
                                const MKL_INT* wantz, const MKL_INT* ttype,
                                const MKL_INT* st, const MKL_INT* ed,
                                const MKL_INT* sweep, const MKL_INT* n,
                                const MKL_INT* nb, const MKL_INT* ib,
                                double* a, const MKL_INT* lda, double* v,
                                double* tau, const MKL_INT* ldvt,
                                const double* work );
void __stdcall dsb2st_kernels( const char* uplo, int uplo_len,
                               const MKL_INT* wantz, const MKL_INT* ttype,
                               const MKL_INT* st, const MKL_INT* ed,
                               const MKL_INT* sweep, const MKL_INT* n,
                               const MKL_INT* nb, const MKL_INT* ib, double* a,
                               const MKL_INT* lda, double* v, double* tau,
                               const MKL_INT* ldvt, const double* work );
void __stdcall dsb2st_kernels_( const char* uplo, int uplo_len,
                                const MKL_INT* wantz, const MKL_INT* ttype,
                                const MKL_INT* st, const MKL_INT* ed,
                                const MKL_INT* sweep, const MKL_INT* n,
                                const MKL_INT* nb, const MKL_INT* ib,
                                double* a, const MKL_INT* lda, double* v,
                                double* tau, const MKL_INT* ldvt,
                                const double* work );

void __stdcall DSBEV_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             double* ab, const MKL_INT* ldab, double* w,
                             double* z, const MKL_INT* ldz, double* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSBEV_2STAGE_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, double* ab,
                              const MKL_INT* ldab, double* w, double* z,
                              const MKL_INT* ldz, double* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsbev_2stage( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             double* ab, const MKL_INT* ldab, double* w,
                             double* z, const MKL_INT* ldz, double* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsbev_2stage_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, double* ab,
                              const MKL_INT* ldab, double* w, double* z,
                              const MKL_INT* ldz, double* work,
                              const MKL_INT* lwork, MKL_INT* info );

void __stdcall DSBEVD_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, double* ab,
                              const MKL_INT* ldab, double* w, double* z,
                              const MKL_INT* ldz, double* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall DSBEVD_2STAGE_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd, double* ab,
                               const MKL_INT* ldab, double* w, double* z,
                               const MKL_INT* ldz, double* work,
                               const MKL_INT* lwork, MKL_INT* iwork,
                               const MKL_INT* liwork, MKL_INT* info );
void __stdcall dsbevd_2stage( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, double* ab,
                              const MKL_INT* ldab, double* w, double* z,
                              const MKL_INT* ldz, double* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall dsbevd_2stage_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd, double* ab,
                               const MKL_INT* ldab, double* w, double* z,
                               const MKL_INT* ldz, double* work,
                               const MKL_INT* lwork, MKL_INT* iwork,
                               const MKL_INT* liwork, MKL_INT* info );

void __stdcall DSBEVX_2STAGE( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, double* ab,
                              const MKL_INT* ldab, double* q,
                              const MKL_INT* ldq, const double* vl,
                              const double* vu, const MKL_INT* il,
                              const MKL_INT* iu, const double* abstol,
                              MKL_INT* m, double* w, double* z,
                              const MKL_INT* ldz, double* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              MKL_INT* ifail, MKL_INT* info );
void __stdcall DSBEVX_2STAGE_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd, double* ab,
                               const MKL_INT* ldab, double* q,
                               const MKL_INT* ldq, const double* vl,
                               const double* vu, const MKL_INT* il,
                               const MKL_INT* iu, const double* abstol,
                               MKL_INT* m, double* w, double* z,
                               const MKL_INT* ldz, double* work,
                               const MKL_INT* lwork, MKL_INT* iwork,
                               MKL_INT* ifail, MKL_INT* info );
void __stdcall dsbevx_2stage( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, double* ab,
                              const MKL_INT* ldab, double* q,
                              const MKL_INT* ldq, const double* vl,
                              const double* vu, const MKL_INT* il,
                              const MKL_INT* iu, const double* abstol,
                              MKL_INT* m, double* w, double* z,
                              const MKL_INT* ldz, double* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              MKL_INT* ifail, MKL_INT* info );
void __stdcall dsbevx_2stage_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd, double* ab,
                               const MKL_INT* ldab, double* q,
                               const MKL_INT* ldq, const double* vl,
                               const double* vu, const MKL_INT* il,
                               const MKL_INT* iu, const double* abstol,
                               MKL_INT* m, double* w, double* z,
                               const MKL_INT* ldz, double* work,
                               const MKL_INT* lwork, MKL_INT* iwork,
                               MKL_INT* ifail, MKL_INT* info );

void __stdcall DSYEV_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, double* a,
                             const MKL_INT* lda, double* w, double* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSYEV_2STAGE_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, double* a,
                              const MKL_INT* lda, double* w, double* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsyev_2stage( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, double* a,
                             const MKL_INT* lda, double* w, double* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsyev_2stage_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, double* a,
                              const MKL_INT* lda, double* w, double* work,
                              const MKL_INT* lwork, MKL_INT* info );

void __stdcall DSYEVD_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, double* a,
                              const MKL_INT* lda, double* w, double* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall DSYEVD_2STAGE_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, double* a, const MKL_INT* lda,
                               double* w, double* work, const MKL_INT* lwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );
void __stdcall dsyevd_2stage( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, double* a,
                              const MKL_INT* lda, double* w, double* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall dsyevd_2stage_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, double* a, const MKL_INT* lda,
                               double* w, double* work, const MKL_INT* lwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );

void __stdcall DSYEVR_2STAGE( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              double* a, const MKL_INT* lda, const double* vl,
                              const double* vu, const MKL_INT* il,
                              const MKL_INT* iu, const double* abstol,
                              MKL_INT* m, double* w, double* z,
                              const MKL_INT* ldz, MKL_INT* isuppz,
                              double* work, const MKL_INT* lwork,
                              MKL_INT* iwork, const MKL_INT* liwork,
                              MKL_INT* info );
void __stdcall DSYEVR_2STAGE_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, double* a, const MKL_INT* lda,
                               const double* vl, const double* vu,
                               const MKL_INT* il, const MKL_INT* iu,
                               const double* abstol, MKL_INT* m, double* w,
                               double* z, const MKL_INT* ldz, MKL_INT* isuppz,
                               double* work, const MKL_INT* lwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );
void __stdcall dsyevr_2stage( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              double* a, const MKL_INT* lda, const double* vl,
                              const double* vu, const MKL_INT* il,
                              const MKL_INT* iu, const double* abstol,
                              MKL_INT* m, double* w, double* z,
                              const MKL_INT* ldz, MKL_INT* isuppz,
                              double* work, const MKL_INT* lwork,
                              MKL_INT* iwork, const MKL_INT* liwork,
                              MKL_INT* info );
void __stdcall dsyevr_2stage_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, double* a, const MKL_INT* lda,
                               const double* vl, const double* vu,
                               const MKL_INT* il, const MKL_INT* iu,
                               const double* abstol, MKL_INT* m, double* w,
                               double* z, const MKL_INT* ldz, MKL_INT* isuppz,
                               double* work, const MKL_INT* lwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );

void __stdcall DSYEVX_2STAGE( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              double* a, const MKL_INT* lda, const double* vl,
                              const double* vu, const MKL_INT* il,
                              const MKL_INT* iu, const double* abstol,
                              MKL_INT* m, double* w, double* z,
                              const MKL_INT* ldz, double* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              MKL_INT* ifail, MKL_INT* info );
void __stdcall DSYEVX_2STAGE_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, double* a, const MKL_INT* lda,
                               const double* vl, const double* vu,
                               const MKL_INT* il, const MKL_INT* iu,
                               const double* abstol, MKL_INT* m, double* w,
                               double* z, const MKL_INT* ldz, double* work,
                               const MKL_INT* lwork, MKL_INT* iwork,
                               MKL_INT* ifail, MKL_INT* info );
void __stdcall dsyevx_2stage( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              double* a, const MKL_INT* lda, const double* vl,
                              const double* vu, const MKL_INT* il,
                              const MKL_INT* iu, const double* abstol,
                              MKL_INT* m, double* w, double* z,
                              const MKL_INT* ldz, double* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              MKL_INT* ifail, MKL_INT* info );
void __stdcall dsyevx_2stage_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, double* a, const MKL_INT* lda,
                               const double* vl, const double* vu,
                               const MKL_INT* il, const MKL_INT* iu,
                               const double* abstol, MKL_INT* m, double* w,
                               double* z, const MKL_INT* ldz, double* work,
                               const MKL_INT* lwork, MKL_INT* iwork,
                               MKL_INT* ifail, MKL_INT* info );

void __stdcall DSYGV_2STAGE( const MKL_INT* itype, const char* jobz,
                             int jobz_len, const char* uplo, int uplo_len,
                             const MKL_INT* n, double* a, const MKL_INT* lda,
                             double* b, const MKL_INT* ldb, double* w,
                             double* work, const MKL_INT* lwork,
                             MKL_INT* info );
void __stdcall DSYGV_2STAGE_( const MKL_INT* itype, const char* jobz,
                              int jobz_len, const char* uplo, int uplo_len,
                              const MKL_INT* n, double* a, const MKL_INT* lda,
                              double* b, const MKL_INT* ldb, double* w,
                              double* work, const MKL_INT* lwork,
                              MKL_INT* info );
void __stdcall dsygv_2stage( const MKL_INT* itype, const char* jobz,
                             int jobz_len, const char* uplo, int uplo_len,
                             const MKL_INT* n, double* a, const MKL_INT* lda,
                             double* b, const MKL_INT* ldb, double* w,
                             double* work, const MKL_INT* lwork,
                             MKL_INT* info );
void __stdcall dsygv_2stage_( const MKL_INT* itype, const char* jobz,
                              int jobz_len, const char* uplo, int uplo_len,
                              const MKL_INT* n, double* a, const MKL_INT* lda,
                              double* b, const MKL_INT* ldb, double* w,
                              double* work, const MKL_INT* lwork,
                              MKL_INT* info );

void __stdcall DSYTRD_2STAGE( const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, double* a,
                              const MKL_INT* lda, double* d, double* e,
                              double* tau, double* hous2,
                              const MKL_INT* lhous2, double* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSYTRD_2STAGE_( const char* vect, int vect_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, double* a, const MKL_INT* lda,
                               double* d, double* e, double* tau,
                               double* hous2, const MKL_INT* lhous2,
                               double* work, const MKL_INT* lwork,
                               MKL_INT* info );
void __stdcall dsytrd_2stage( const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, double* a,
                              const MKL_INT* lda, double* d, double* e,
                              double* tau, double* hous2,
                              const MKL_INT* lhous2, double* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytrd_2stage_( const char* vect, int vect_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, double* a, const MKL_INT* lda,
                               double* d, double* e, double* tau,
                               double* hous2, const MKL_INT* lhous2,
                               double* work, const MKL_INT* lwork,
                               MKL_INT* info );

void __stdcall DSYTRD_SB2ST( const char* stage1, int stage1_len,
                             const char* vect, int vect_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             double* ab, const MKL_INT* ldab, double* d,
                             double* e, double* hous, const MKL_INT* lhous,
                             double* work, const MKL_INT* lwork,
                             MKL_INT* info );
void __stdcall DSYTRD_SB2ST_( const char* stage1, int stage1_len,
                              const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, double* ab,
                              const MKL_INT* ldab, double* d, double* e,
                              double* hous, const MKL_INT* lhous, double* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytrd_sb2st( const char* stage1, int stage1_len,
                             const char* vect, int vect_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             double* ab, const MKL_INT* ldab, double* d,
                             double* e, double* hous, const MKL_INT* lhous,
                             double* work, const MKL_INT* lwork,
                             MKL_INT* info );
void __stdcall dsytrd_sb2st_( const char* stage1, int stage1_len,
                              const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, double* ab,
                              const MKL_INT* ldab, double* d, double* e,
                              double* hous, const MKL_INT* lhous, double* work,
                              const MKL_INT* lwork, MKL_INT* info );

void __stdcall DSYTRD_SY2SB( const char* uplo, int uplo_len, const MKL_INT* n,
                             const MKL_INT* kd, double* a, const MKL_INT* lda,
                             double* ab, const MKL_INT* ldab, double* tau,
                             double* work, const MKL_INT* lwork,
                             MKL_INT* info );
void __stdcall DSYTRD_SY2SB_( const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, double* a, const MKL_INT* lda,
                              double* ab, const MKL_INT* ldab, double* tau,
                              double* work, const MKL_INT* lwork,
                              MKL_INT* info );
void __stdcall dsytrd_sy2sb( const char* uplo, int uplo_len, const MKL_INT* n,
                             const MKL_INT* kd, double* a, const MKL_INT* lda,
                             double* ab, const MKL_INT* ldab, double* tau,
                             double* work, const MKL_INT* lwork,
                             MKL_INT* info );
void __stdcall dsytrd_sy2sb_( const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, double* a, const MKL_INT* lda,
                              double* ab, const MKL_INT* ldab, double* tau,
                              double* work, const MKL_INT* lwork,
                              MKL_INT* info );

MKL_INT __stdcall IPARAM2STAGE( const MKL_INT* ispec, const char* name,
                                int name_len, const char* opts, int opts_len,
                                const MKL_INT* ni, const MKL_INT* nbi,
                                const MKL_INT* ibi, const MKL_INT* nxi );
MKL_INT __stdcall IPARAM2STAGE_( const MKL_INT* ispec, const char* name,
                                 int name_len, const char* opts, int opts_len,
                                 const MKL_INT* ni, const MKL_INT* nbi,
                                 const MKL_INT* ibi, const MKL_INT* nxi );
MKL_INT __stdcall iparam2stage( const MKL_INT* ispec, const char* name,
                                int name_len, const char* opts, int opts_len,
                                const MKL_INT* ni, const MKL_INT* nbi,
                                const MKL_INT* ibi, const MKL_INT* nxi );
MKL_INT __stdcall iparam2stage_( const MKL_INT* ispec, const char* name,
                                 int name_len, const char* opts, int opts_len,
                                 const MKL_INT* ni, const MKL_INT* nbi,
                                 const MKL_INT* ibi, const MKL_INT* nxi );

void __stdcall SSB2ST_KERNELS( const char* uplo, int uplo_len,
                               const MKL_INT* wantz, const MKL_INT* ttype,
                               const MKL_INT* st, const MKL_INT* ed,
                               const MKL_INT* sweep, const MKL_INT* n,
                               const MKL_INT* nb, const MKL_INT* ib, float* a,
                               const MKL_INT* lda, float* v, float* tau,
                               const MKL_INT* ldvt, const float* work );
void __stdcall SSB2ST_KERNELS_( const char* uplo, int uplo_len,
                                const MKL_INT* wantz, const MKL_INT* ttype,
                                const MKL_INT* st, const MKL_INT* ed,
                                const MKL_INT* sweep, const MKL_INT* n,
                                const MKL_INT* nb, const MKL_INT* ib, float* a,
                                const MKL_INT* lda, float* v, float* tau,
                                const MKL_INT* ldvt, const float* work );
void __stdcall ssb2st_kernels( const char* uplo, int uplo_len,
                               const MKL_INT* wantz, const MKL_INT* ttype,
                               const MKL_INT* st, const MKL_INT* ed,
                               const MKL_INT* sweep, const MKL_INT* n,
                               const MKL_INT* nb, const MKL_INT* ib, float* a,
                               const MKL_INT* lda, float* v, float* tau,
                               const MKL_INT* ldvt, const float* work );
void __stdcall ssb2st_kernels_( const char* uplo, int uplo_len,
                                const MKL_INT* wantz, const MKL_INT* ttype,
                                const MKL_INT* st, const MKL_INT* ed,
                                const MKL_INT* sweep, const MKL_INT* n,
                                const MKL_INT* nb, const MKL_INT* ib, float* a,
                                const MKL_INT* lda, float* v, float* tau,
                                const MKL_INT* ldvt, const float* work );

void __stdcall SSBEV_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             float* ab, const MKL_INT* ldab, float* w,
                             float* z, const MKL_INT* ldz, float* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSBEV_2STAGE_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, float* ab,
                              const MKL_INT* ldab, float* w, float* z,
                              const MKL_INT* ldz, float* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssbev_2stage( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             float* ab, const MKL_INT* ldab, float* w,
                             float* z, const MKL_INT* ldz, float* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssbev_2stage_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, float* ab,
                              const MKL_INT* ldab, float* w, float* z,
                              const MKL_INT* ldz, float* work,
                              const MKL_INT* lwork, MKL_INT* info );

void __stdcall SSBEVD_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, float* ab,
                              const MKL_INT* ldab, float* w, float* z,
                              const MKL_INT* ldz, float* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall SSBEVD_2STAGE_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd, float* ab,
                               const MKL_INT* ldab, float* w, float* z,
                               const MKL_INT* ldz, float* work,
                               const MKL_INT* lwork, MKL_INT* iwork,
                               const MKL_INT* liwork, MKL_INT* info );
void __stdcall ssbevd_2stage( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, float* ab,
                              const MKL_INT* ldab, float* w, float* z,
                              const MKL_INT* ldz, float* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall ssbevd_2stage_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd, float* ab,
                               const MKL_INT* ldab, float* w, float* z,
                               const MKL_INT* ldz, float* work,
                               const MKL_INT* lwork, MKL_INT* iwork,
                               const MKL_INT* liwork, MKL_INT* info );

void __stdcall SSBEVX_2STAGE( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, float* ab,
                              const MKL_INT* ldab, float* q,
                              const MKL_INT* ldq, const float* vl,
                              const float* vu, const MKL_INT* il,
                              const MKL_INT* iu, const float* abstol,
                              MKL_INT* m, float* w, float* z,
                              const MKL_INT* ldz, float* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              MKL_INT* ifail, MKL_INT* info );
void __stdcall SSBEVX_2STAGE_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd, float* ab,
                               const MKL_INT* ldab, float* q,
                               const MKL_INT* ldq, const float* vl,
                               const float* vu, const MKL_INT* il,
                               const MKL_INT* iu, const float* abstol,
                               MKL_INT* m, float* w, float* z,
                               const MKL_INT* ldz, float* work,
                               const MKL_INT* lwork, MKL_INT* iwork,
                               MKL_INT* ifail, MKL_INT* info );
void __stdcall ssbevx_2stage( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, float* ab,
                              const MKL_INT* ldab, float* q,
                              const MKL_INT* ldq, const float* vl,
                              const float* vu, const MKL_INT* il,
                              const MKL_INT* iu, const float* abstol,
                              MKL_INT* m, float* w, float* z,
                              const MKL_INT* ldz, float* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              MKL_INT* ifail, MKL_INT* info );
void __stdcall ssbevx_2stage_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd, float* ab,
                               const MKL_INT* ldab, float* q,
                               const MKL_INT* ldq, const float* vl,
                               const float* vu, const MKL_INT* il,
                               const MKL_INT* iu, const float* abstol,
                               MKL_INT* m, float* w, float* z,
                               const MKL_INT* ldz, float* work,
                               const MKL_INT* lwork, MKL_INT* iwork,
                               MKL_INT* ifail, MKL_INT* info );

void __stdcall SSYEV_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, float* a,
                             const MKL_INT* lda, float* w, float* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYEV_2STAGE_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, float* a,
                              const MKL_INT* lda, float* w, float* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssyev_2stage( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, float* a,
                             const MKL_INT* lda, float* w, float* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssyev_2stage_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, float* a,
                              const MKL_INT* lda, float* w, float* work,
                              const MKL_INT* lwork, MKL_INT* info );

void __stdcall SSYEVD_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, float* a,
                              const MKL_INT* lda, float* w, float* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall SSYEVD_2STAGE_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, float* a, const MKL_INT* lda,
                               float* w, float* work, const MKL_INT* lwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );
void __stdcall ssyevd_2stage( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, float* a,
                              const MKL_INT* lda, float* w, float* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall ssyevd_2stage_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, float* a, const MKL_INT* lda,
                               float* w, float* work, const MKL_INT* lwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );

void __stdcall SSYEVR_2STAGE( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              float* a, const MKL_INT* lda, const float* vl,
                              const float* vu, const MKL_INT* il,
                              const MKL_INT* iu, const float* abstol,
                              MKL_INT* m, float* w, float* z,
                              const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall SSYEVR_2STAGE_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, float* a, const MKL_INT* lda,
                               const float* vl, const float* vu,
                               const MKL_INT* il, const MKL_INT* iu,
                               const float* abstol, MKL_INT* m, float* w,
                               float* z, const MKL_INT* ldz, MKL_INT* isuppz,
                               float* work, const MKL_INT* lwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );
void __stdcall ssyevr_2stage( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              float* a, const MKL_INT* lda, const float* vl,
                              const float* vu, const MKL_INT* il,
                              const MKL_INT* iu, const float* abstol,
                              MKL_INT* m, float* w, float* z,
                              const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall ssyevr_2stage_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, float* a, const MKL_INT* lda,
                               const float* vl, const float* vu,
                               const MKL_INT* il, const MKL_INT* iu,
                               const float* abstol, MKL_INT* m, float* w,
                               float* z, const MKL_INT* ldz, MKL_INT* isuppz,
                               float* work, const MKL_INT* lwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );

void __stdcall SSYEVX_2STAGE( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              float* a, const MKL_INT* lda, const float* vl,
                              const float* vu, const MKL_INT* il,
                              const MKL_INT* iu, const float* abstol,
                              MKL_INT* m, float* w, float* z,
                              const MKL_INT* ldz, float* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              MKL_INT* ifail, MKL_INT* info );
void __stdcall SSYEVX_2STAGE_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, float* a, const MKL_INT* lda,
                               const float* vl, const float* vu,
                               const MKL_INT* il, const MKL_INT* iu,
                               const float* abstol, MKL_INT* m, float* w,
                               float* z, const MKL_INT* ldz, float* work,
                               const MKL_INT* lwork, MKL_INT* iwork,
                               MKL_INT* ifail, MKL_INT* info );
void __stdcall ssyevx_2stage( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              float* a, const MKL_INT* lda, const float* vl,
                              const float* vu, const MKL_INT* il,
                              const MKL_INT* iu, const float* abstol,
                              MKL_INT* m, float* w, float* z,
                              const MKL_INT* ldz, float* work,
                              const MKL_INT* lwork, MKL_INT* iwork,
                              MKL_INT* ifail, MKL_INT* info );
void __stdcall ssyevx_2stage_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, float* a, const MKL_INT* lda,
                               const float* vl, const float* vu,
                               const MKL_INT* il, const MKL_INT* iu,
                               const float* abstol, MKL_INT* m, float* w,
                               float* z, const MKL_INT* ldz, float* work,
                               const MKL_INT* lwork, MKL_INT* iwork,
                               MKL_INT* ifail, MKL_INT* info );

void __stdcall SSYGV_2STAGE( const MKL_INT* itype, const char* jobz,
                             int jobz_len, const char* uplo, int uplo_len,
                             const MKL_INT* n, float* a, const MKL_INT* lda,
                             float* b, const MKL_INT* ldb, float* w,
                             float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYGV_2STAGE_( const MKL_INT* itype, const char* jobz,
                              int jobz_len, const char* uplo, int uplo_len,
                              const MKL_INT* n, float* a, const MKL_INT* lda,
                              float* b, const MKL_INT* ldb, float* w,
                              float* work, const MKL_INT* lwork,
                              MKL_INT* info );
void __stdcall ssygv_2stage( const MKL_INT* itype, const char* jobz,
                             int jobz_len, const char* uplo, int uplo_len,
                             const MKL_INT* n, float* a, const MKL_INT* lda,
                             float* b, const MKL_INT* ldb, float* w,
                             float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssygv_2stage_( const MKL_INT* itype, const char* jobz,
                              int jobz_len, const char* uplo, int uplo_len,
                              const MKL_INT* n, float* a, const MKL_INT* lda,
                              float* b, const MKL_INT* ldb, float* w,
                              float* work, const MKL_INT* lwork,
                              MKL_INT* info );

void __stdcall SSYTRD_2STAGE( const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, float* a,
                              const MKL_INT* lda, float* d, float* e,
                              float* tau, float* hous2, const MKL_INT* lhous2,
                              float* work, const MKL_INT* lwork,
                              MKL_INT* info );
void __stdcall SSYTRD_2STAGE_( const char* vect, int vect_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, float* a, const MKL_INT* lda,
                               float* d, float* e, float* tau, float* hous2,
                               const MKL_INT* lhous2, float* work,
                               const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytrd_2stage( const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, float* a,
                              const MKL_INT* lda, float* d, float* e,
                              float* tau, float* hous2, const MKL_INT* lhous2,
                              float* work, const MKL_INT* lwork,
                              MKL_INT* info );
void __stdcall ssytrd_2stage_( const char* vect, int vect_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, float* a, const MKL_INT* lda,
                               float* d, float* e, float* tau, float* hous2,
                               const MKL_INT* lhous2, float* work,
                               const MKL_INT* lwork, MKL_INT* info );

void __stdcall SSYTRD_SB2ST( const char* stage1, int stage1_len,
                             const char* vect, int vect_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             float* ab, const MKL_INT* ldab, float* d,
                             float* e, float* hous, const MKL_INT* lhous,
                             float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYTRD_SB2ST_( const char* stage1, int stage1_len,
                              const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, float* ab,
                              const MKL_INT* ldab, float* d, float* e,
                              float* hous, const MKL_INT* lhous, float* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytrd_sb2st( const char* stage1, int stage1_len,
                             const char* vect, int vect_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             float* ab, const MKL_INT* ldab, float* d,
                             float* e, float* hous, const MKL_INT* lhous,
                             float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytrd_sb2st_( const char* stage1, int stage1_len,
                              const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, float* ab,
                              const MKL_INT* ldab, float* d, float* e,
                              float* hous, const MKL_INT* lhous, float* work,
                              const MKL_INT* lwork, MKL_INT* info );

void __stdcall SSYTRD_SY2SB( const char* uplo, int uplo_len, const MKL_INT* n,
                             const MKL_INT* kd, float* a, const MKL_INT* lda,
                             float* ab, const MKL_INT* ldab, float* tau,
                             float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYTRD_SY2SB_( const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, float* a, const MKL_INT* lda,
                              float* ab, const MKL_INT* ldab, float* tau,
                              float* work, const MKL_INT* lwork,
                              MKL_INT* info );
void __stdcall ssytrd_sy2sb( const char* uplo, int uplo_len, const MKL_INT* n,
                             const MKL_INT* kd, float* a, const MKL_INT* lda,
                             float* ab, const MKL_INT* ldab, float* tau,
                             float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytrd_sy2sb_( const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, float* a, const MKL_INT* lda,
                              float* ab, const MKL_INT* ldab, float* tau,
                              float* work, const MKL_INT* lwork,
                              MKL_INT* info );

void __stdcall ZHB2ST_KERNELS( const char* uplo, int uplo_len,
                               const MKL_INT* wantz, const MKL_INT* ttype,
                               const MKL_INT* st, const MKL_INT* ed,
                               const MKL_INT* sweep, const MKL_INT* n,
                               const MKL_INT* nb, const MKL_INT* ib,
                               MKL_Complex16* a, const MKL_INT* lda,
                               MKL_Complex16* v, MKL_Complex16* tau,
                               const MKL_INT* ldvt, const MKL_Complex16* work );
void __stdcall ZHB2ST_KERNELS_( const char* uplo, int uplo_len,
                                const MKL_INT* wantz, const MKL_INT* ttype,
                                const MKL_INT* st, const MKL_INT* ed,
                                const MKL_INT* sweep, const MKL_INT* n,
                                const MKL_INT* nb, const MKL_INT* ib,
                                MKL_Complex16* a, const MKL_INT* lda,
                                MKL_Complex16* v, MKL_Complex16* tau,
                                const MKL_INT* ldvt,
                                const MKL_Complex16* work );
void __stdcall zhb2st_kernels( const char* uplo, int uplo_len,
                               const MKL_INT* wantz, const MKL_INT* ttype,
                               const MKL_INT* st, const MKL_INT* ed,
                               const MKL_INT* sweep, const MKL_INT* n,
                               const MKL_INT* nb, const MKL_INT* ib,
                               MKL_Complex16* a, const MKL_INT* lda,
                               MKL_Complex16* v, MKL_Complex16* tau,
                               const MKL_INT* ldvt, const MKL_Complex16* work );
void __stdcall zhb2st_kernels_( const char* uplo, int uplo_len,
                                const MKL_INT* wantz, const MKL_INT* ttype,
                                const MKL_INT* st, const MKL_INT* ed,
                                const MKL_INT* sweep, const MKL_INT* n,
                                const MKL_INT* nb, const MKL_INT* ib,
                                MKL_Complex16* a, const MKL_INT* lda,
                                MKL_Complex16* v, MKL_Complex16* tau,
                                const MKL_INT* ldvt,
                                const MKL_Complex16* work );

void __stdcall ZHBEV_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             MKL_Complex16* ab, const MKL_INT* ldab, double* w,
                             MKL_Complex16* z, const MKL_INT* ldz,
                             MKL_Complex16* work, const MKL_INT* lwork,
                             double* rwork, MKL_INT* info );
void __stdcall ZHBEV_2STAGE_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex16* ab,
                              const MKL_INT* ldab, double* w, MKL_Complex16* z,
                              const MKL_INT* ldz, MKL_Complex16* work,
                              const MKL_INT* lwork, double* rwork,
                              MKL_INT* info );
void __stdcall zhbev_2stage( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             MKL_Complex16* ab, const MKL_INT* ldab, double* w,
                             MKL_Complex16* z, const MKL_INT* ldz,
                             MKL_Complex16* work, const MKL_INT* lwork,
                             double* rwork, MKL_INT* info );
void __stdcall zhbev_2stage_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex16* ab,
                              const MKL_INT* ldab, double* w, MKL_Complex16* z,
                              const MKL_INT* ldz, MKL_Complex16* work,
                              const MKL_INT* lwork, double* rwork,
                              MKL_INT* info );

void __stdcall ZHBEVD_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex16* ab,
                              const MKL_INT* ldab, double* w, MKL_Complex16* z,
                              const MKL_INT* ldz, MKL_Complex16* work,
                              const MKL_INT* lwork, double* rwork,
                              const MKL_INT* lrwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall ZHBEVD_2STAGE_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd,
                               MKL_Complex16* ab, const MKL_INT* ldab,
                               double* w, MKL_Complex16* z, const MKL_INT* ldz,
                               MKL_Complex16* work, const MKL_INT* lwork,
                               double* rwork, const MKL_INT* lrwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );
void __stdcall zhbevd_2stage( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex16* ab,
                              const MKL_INT* ldab, double* w, MKL_Complex16* z,
                              const MKL_INT* ldz, MKL_Complex16* work,
                              const MKL_INT* lwork, double* rwork,
                              const MKL_INT* lrwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall zhbevd_2stage_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd,
                               MKL_Complex16* ab, const MKL_INT* ldab,
                               double* w, MKL_Complex16* z, const MKL_INT* ldz,
                               MKL_Complex16* work, const MKL_INT* lwork,
                               double* rwork, const MKL_INT* lrwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );

void __stdcall ZHBEVX_2STAGE( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex16* ab,
                              const MKL_INT* ldab, MKL_Complex16* q,
                              const MKL_INT* ldq, const double* vl,
                              const double* vu, const MKL_INT* il,
                              const MKL_INT* iu, const double* abstol,
                              MKL_INT* m, double* w, MKL_Complex16* z,
                              const MKL_INT* ldz, MKL_Complex16* work,
                              const MKL_INT* lwork, double* rwork,
                              MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall ZHBEVX_2STAGE_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd,
                               MKL_Complex16* ab, const MKL_INT* ldab,
                               MKL_Complex16* q, const MKL_INT* ldq,
                               const double* vl, const double* vu,
                               const MKL_INT* il, const MKL_INT* iu,
                               const double* abstol, MKL_INT* m, double* w,
                               MKL_Complex16* z, const MKL_INT* ldz,
                               MKL_Complex16* work, const MKL_INT* lwork,
                               double* rwork, MKL_INT* iwork, MKL_INT* ifail,
                               MKL_INT* info );
void __stdcall zhbevx_2stage( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex16* ab,
                              const MKL_INT* ldab, MKL_Complex16* q,
                              const MKL_INT* ldq, const double* vl,
                              const double* vu, const MKL_INT* il,
                              const MKL_INT* iu, const double* abstol,
                              MKL_INT* m, double* w, MKL_Complex16* z,
                              const MKL_INT* ldz, MKL_Complex16* work,
                              const MKL_INT* lwork, double* rwork,
                              MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall zhbevx_2stage_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* kd,
                               MKL_Complex16* ab, const MKL_INT* ldab,
                               MKL_Complex16* q, const MKL_INT* ldq,
                               const double* vl, const double* vu,
                               const MKL_INT* il, const MKL_INT* iu,
                               const double* abstol, MKL_INT* m, double* w,
                               MKL_Complex16* z, const MKL_INT* ldz,
                               MKL_Complex16* work, const MKL_INT* lwork,
                               double* rwork, MKL_INT* iwork, MKL_INT* ifail,
                               MKL_INT* info );

void __stdcall ZHEEV_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, double* w,
                             MKL_Complex16* work, const MKL_INT* lwork,
                             double* rwork, MKL_INT* info );
void __stdcall ZHEEV_2STAGE_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                              const MKL_INT* lda, double* w,
                              MKL_Complex16* work, const MKL_INT* lwork,
                              double* rwork, MKL_INT* info );
void __stdcall zheev_2stage( const char* jobz, int jobz_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, double* w,
                             MKL_Complex16* work, const MKL_INT* lwork,
                             double* rwork, MKL_INT* info );
void __stdcall zheev_2stage_( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                              const MKL_INT* lda, double* w,
                              MKL_Complex16* work, const MKL_INT* lwork,
                              double* rwork, MKL_INT* info );

void __stdcall ZHEEVD_2STAGE( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                              const MKL_INT* lda, double* w,
                              MKL_Complex16* work, const MKL_INT* lwork,
                              double* rwork, const MKL_INT* lrwork,
                              MKL_INT* iwork, const MKL_INT* liwork,
                              MKL_INT* info );
void __stdcall ZHEEVD_2STAGE_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex16* a,
                               const MKL_INT* lda, double* w,
                               MKL_Complex16* work, const MKL_INT* lwork,
                               double* rwork, const MKL_INT* lrwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );
void __stdcall zheevd_2stage( const char* jobz, int jobz_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                              const MKL_INT* lda, double* w,
                              MKL_Complex16* work, const MKL_INT* lwork,
                              double* rwork, const MKL_INT* lrwork,
                              MKL_INT* iwork, const MKL_INT* liwork,
                              MKL_INT* info );
void __stdcall zheevd_2stage_( const char* jobz, int jobz_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex16* a,
                               const MKL_INT* lda, double* w,
                               MKL_Complex16* work, const MKL_INT* lwork,
                               double* rwork, const MKL_INT* lrwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );

void __stdcall ZHEEVR_2STAGE( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              MKL_Complex16* a, const MKL_INT* lda,
                              const double* vl, const double* vu,
                              const MKL_INT* il, const MKL_INT* iu,
                              const double* abstol, MKL_INT* m, double* w,
                              MKL_Complex16* z, const MKL_INT* ldz,
                              MKL_INT* isuppz, MKL_Complex16* work,
                              const MKL_INT* lwork, double* rwork,
                              const MKL_INT* lrwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall ZHEEVR_2STAGE_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex16* a,
                               const MKL_INT* lda, const double* vl,
                               const double* vu, const MKL_INT* il,
                               const MKL_INT* iu, const double* abstol,
                               MKL_INT* m, double* w, MKL_Complex16* z,
                               const MKL_INT* ldz, MKL_INT* isuppz,
                               MKL_Complex16* work, const MKL_INT* lwork,
                               double* rwork, const MKL_INT* lrwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );
void __stdcall zheevr_2stage( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              MKL_Complex16* a, const MKL_INT* lda,
                              const double* vl, const double* vu,
                              const MKL_INT* il, const MKL_INT* iu,
                              const double* abstol, MKL_INT* m, double* w,
                              MKL_Complex16* z, const MKL_INT* ldz,
                              MKL_INT* isuppz, MKL_Complex16* work,
                              const MKL_INT* lwork, double* rwork,
                              const MKL_INT* lrwork, MKL_INT* iwork,
                              const MKL_INT* liwork, MKL_INT* info );
void __stdcall zheevr_2stage_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex16* a,
                               const MKL_INT* lda, const double* vl,
                               const double* vu, const MKL_INT* il,
                               const MKL_INT* iu, const double* abstol,
                               MKL_INT* m, double* w, MKL_Complex16* z,
                               const MKL_INT* ldz, MKL_INT* isuppz,
                               MKL_Complex16* work, const MKL_INT* lwork,
                               double* rwork, const MKL_INT* lrwork,
                               MKL_INT* iwork, const MKL_INT* liwork,
                               MKL_INT* info );

void __stdcall ZHEEVX_2STAGE( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              MKL_Complex16* a, const MKL_INT* lda,
                              const double* vl, const double* vu,
                              const MKL_INT* il, const MKL_INT* iu,
                              const double* abstol, MKL_INT* m, double* w,
                              MKL_Complex16* z, const MKL_INT* ldz,
                              MKL_Complex16* work, const MKL_INT* lwork,
                              double* rwork, MKL_INT* iwork, MKL_INT* ifail,
                              MKL_INT* info );
void __stdcall ZHEEVX_2STAGE_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex16* a,
                               const MKL_INT* lda, const double* vl,
                               const double* vu, const MKL_INT* il,
                               const MKL_INT* iu, const double* abstol,
                               MKL_INT* m, double* w, MKL_Complex16* z,
                               const MKL_INT* ldz, MKL_Complex16* work,
                               const MKL_INT* lwork, double* rwork,
                               MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall zheevx_2stage( const char* jobz, int jobz_len,
                              const char* range, int range_len,
                              const char* uplo, int uplo_len, const MKL_INT* n,
                              MKL_Complex16* a, const MKL_INT* lda,
                              const double* vl, const double* vu,
                              const MKL_INT* il, const MKL_INT* iu,
                              const double* abstol, MKL_INT* m, double* w,
                              MKL_Complex16* z, const MKL_INT* ldz,
                              MKL_Complex16* work, const MKL_INT* lwork,
                              double* rwork, MKL_INT* iwork, MKL_INT* ifail,
                              MKL_INT* info );
void __stdcall zheevx_2stage_( const char* jobz, int jobz_len,
                               const char* range, int range_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex16* a,
                               const MKL_INT* lda, const double* vl,
                               const double* vu, const MKL_INT* il,
                               const MKL_INT* iu, const double* abstol,
                               MKL_INT* m, double* w, MKL_Complex16* z,
                               const MKL_INT* ldz, MKL_Complex16* work,
                               const MKL_INT* lwork, double* rwork,
                               MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall ZHEGV_2STAGE( const MKL_INT* itype, const char* jobz,
                             int jobz_len, const char* uplo, int uplo_len,
                             const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_Complex16* b,
                             const MKL_INT* ldb, double* w,
                             MKL_Complex16* work, const MKL_INT* lwork,
                             double* rwork, MKL_INT* info );
void __stdcall ZHEGV_2STAGE_( const MKL_INT* itype, const char* jobz,
                              int jobz_len, const char* uplo, int uplo_len,
                              const MKL_INT* n, MKL_Complex16* a,
                              const MKL_INT* lda, MKL_Complex16* b,
                              const MKL_INT* ldb, double* w,
                              MKL_Complex16* work, const MKL_INT* lwork,
                              double* rwork, MKL_INT* info );
void __stdcall zhegv_2stage( const MKL_INT* itype, const char* jobz,
                             int jobz_len, const char* uplo, int uplo_len,
                             const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_Complex16* b,
                             const MKL_INT* ldb, double* w,
                             MKL_Complex16* work, const MKL_INT* lwork,
                             double* rwork, MKL_INT* info );
void __stdcall zhegv_2stage_( const MKL_INT* itype, const char* jobz,
                              int jobz_len, const char* uplo, int uplo_len,
                              const MKL_INT* n, MKL_Complex16* a,
                              const MKL_INT* lda, MKL_Complex16* b,
                              const MKL_INT* ldb, double* w,
                              MKL_Complex16* work, const MKL_INT* lwork,
                              double* rwork, MKL_INT* info );

void __stdcall ZHETRD_2STAGE( const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                              const MKL_INT* lda, double* d, double* e,
                              MKL_Complex16* tau, MKL_Complex16* hous2,
                              const MKL_INT* lhous2, MKL_Complex16* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZHETRD_2STAGE_( const char* vect, int vect_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex16* a,
                               const MKL_INT* lda, double* d, double* e,
                               MKL_Complex16* tau, MKL_Complex16* hous2,
                               const MKL_INT* lhous2, MKL_Complex16* work,
                               const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetrd_2stage( const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                              const MKL_INT* lda, double* d, double* e,
                              MKL_Complex16* tau, MKL_Complex16* hous2,
                              const MKL_INT* lhous2, MKL_Complex16* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetrd_2stage_( const char* vect, int vect_len,
                               const char* uplo, int uplo_len,
                               const MKL_INT* n, MKL_Complex16* a,
                               const MKL_INT* lda, double* d, double* e,
                               MKL_Complex16* tau, MKL_Complex16* hous2,
                               const MKL_INT* lhous2, MKL_Complex16* work,
                               const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZHETRD_HB2ST( const char* stage1, int stage1_len,
                             const char* vect, int vect_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             MKL_Complex16* ab, const MKL_INT* ldab, double* d,
                             double* e, MKL_Complex16* hous,
                             const MKL_INT* lhous, MKL_Complex16* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZHETRD_HB2ST_( const char* stage1, int stage1_len,
                              const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex16* ab,
                              const MKL_INT* ldab, double* d, double* e,
                              MKL_Complex16* hous, const MKL_INT* lhous,
                              MKL_Complex16* work, const MKL_INT* lwork,
                              MKL_INT* info );
void __stdcall zhetrd_hb2st( const char* stage1, int stage1_len,
                             const char* vect, int vect_len, const char* uplo,
                             int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                             MKL_Complex16* ab, const MKL_INT* ldab, double* d,
                             double* e, MKL_Complex16* hous,
                             const MKL_INT* lhous, MKL_Complex16* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetrd_hb2st_( const char* stage1, int stage1_len,
                              const char* vect, int vect_len, const char* uplo,
                              int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex16* ab,
                              const MKL_INT* ldab, double* d, double* e,
                              MKL_Complex16* hous, const MKL_INT* lhous,
                              MKL_Complex16* work, const MKL_INT* lwork,
                              MKL_INT* info );

void __stdcall ZHETRD_HE2HB( const char* uplo, int uplo_len, const MKL_INT* n,
                             const MKL_INT* kd, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_Complex16* ab,
                             const MKL_INT* ldab, MKL_Complex16* tau,
                             MKL_Complex16* work, const MKL_INT* lwork,
                             MKL_INT* info );
void __stdcall ZHETRD_HE2HB_( const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex16* a,
                              const MKL_INT* lda, MKL_Complex16* ab,
                              const MKL_INT* ldab, MKL_Complex16* tau,
                              MKL_Complex16* work, const MKL_INT* lwork,
                              MKL_INT* info );
void __stdcall zhetrd_he2hb( const char* uplo, int uplo_len, const MKL_INT* n,
                             const MKL_INT* kd, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_Complex16* ab,
                             const MKL_INT* ldab, MKL_Complex16* tau,
                             MKL_Complex16* work, const MKL_INT* lwork,
                             MKL_INT* info );
void __stdcall zhetrd_he2hb_( const char* uplo, int uplo_len, const MKL_INT* n,
                              const MKL_INT* kd, MKL_Complex16* a,
                              const MKL_INT* lda, MKL_Complex16* ab,
                              const MKL_INT* ldab, MKL_Complex16* tau,
                              MKL_Complex16* work, const MKL_INT* lwork,
                              MKL_INT* info );

void __stdcall MKL_CGETRFNP( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_INT* info );
void __stdcall MKL_CGETRFNP_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_cgetrfnp( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_cgetrfnp_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, MKL_INT* info );

void __stdcall MKL_DGETRFNP( const MKL_INT* m, const MKL_INT* n, double* a,
                             const MKL_INT* lda, MKL_INT* info );
void __stdcall MKL_DGETRFNP_( const MKL_INT* m, const MKL_INT* n, double* a,
                              const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_dgetrfnp( const MKL_INT* m, const MKL_INT* n, double* a,
                             const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_dgetrfnp_( const MKL_INT* m, const MKL_INT* n, double* a,
                              const MKL_INT* lda, MKL_INT* info );

void __stdcall MKL_SGETRFNP( const MKL_INT* m, const MKL_INT* n, float* a,
                             const MKL_INT* lda, MKL_INT* info );
void __stdcall MKL_SGETRFNP_( const MKL_INT* m, const MKL_INT* n, float* a,
                              const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_sgetrfnp( const MKL_INT* m, const MKL_INT* n, float* a,
                             const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_sgetrfnp_( const MKL_INT* m, const MKL_INT* n, float* a,
                              const MKL_INT* lda, MKL_INT* info );

void __stdcall MKL_ZGETRFNP( const MKL_INT* m, const MKL_INT* n,
                             MKL_Complex16* a, const MKL_INT* lda,
                             MKL_INT* info );
void __stdcall MKL_ZGETRFNP_( const MKL_INT* m, const MKL_INT* n,
                              MKL_Complex16* a, const MKL_INT* lda,
                              MKL_INT* info );
void __stdcall mkl_zgetrfnp( const MKL_INT* m, const MKL_INT* n,
                             MKL_Complex16* a, const MKL_INT* lda,
                             MKL_INT* info );
void __stdcall mkl_zgetrfnp_( const MKL_INT* m, const MKL_INT* n,
                              MKL_Complex16* a, const MKL_INT* lda,
                              MKL_INT* info );

void __stdcall MKL_CGETRINP( const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_Complex8* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall MKL_CGETRINP_( const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, MKL_Complex8* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall mkl_cgetrinp( const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_Complex8* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall mkl_cgetrinp_( const MKL_INT* n, MKL_Complex8* a,
                              const MKL_INT* lda, MKL_Complex8* work,
                              const MKL_INT* lwork, MKL_INT* info );

void __stdcall MKL_DGETRINP( const MKL_INT* n, double* a, const MKL_INT* lda,
                             double* work, const MKL_INT* lwork,
                             MKL_INT* info );
void __stdcall MKL_DGETRINP_( const MKL_INT* n, double* a, const MKL_INT* lda,
                              double* work, const MKL_INT* lwork,
                              MKL_INT* info );
void __stdcall mkl_dgetrinp( const MKL_INT* n, double* a, const MKL_INT* lda,
                             double* work, const MKL_INT* lwork,
                             MKL_INT* info );
void __stdcall mkl_dgetrinp_( const MKL_INT* n, double* a, const MKL_INT* lda,
                              double* work, const MKL_INT* lwork,
                              MKL_INT* info );

void __stdcall MKL_SGETRINP( const MKL_INT* n, float* a, const MKL_INT* lda,
                             float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall MKL_SGETRINP_( const MKL_INT* n, float* a, const MKL_INT* lda,
                              float* work, const MKL_INT* lwork,
                              MKL_INT* info );
void __stdcall mkl_sgetrinp( const MKL_INT* n, float* a, const MKL_INT* lda,
                             float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall mkl_sgetrinp_( const MKL_INT* n, float* a, const MKL_INT* lda,
                              float* work, const MKL_INT* lwork,
                              MKL_INT* info );

void __stdcall MKL_ZGETRINP( const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_Complex16* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall MKL_ZGETRINP_( const MKL_INT* n, MKL_Complex16* a,
                              const MKL_INT* lda, MKL_Complex16* work,
                              const MKL_INT* lwork, MKL_INT* info );
void __stdcall mkl_zgetrinp( const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_Complex16* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall mkl_zgetrinp_( const MKL_INT* n, MKL_Complex16* a,
                              const MKL_INT* lda, MKL_Complex16* work,
                              const MKL_INT* lwork, MKL_INT* info );

void __stdcall DSYTRF_AA_2STAGE( const char* uplo, int uplo_len,
                                 const MKL_INT* n, double* a,
                                 const MKL_INT* lda, double* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, double* work,
                                 const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSYTRF_AA_2STAGE_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, double* a,
                                  const MKL_INT* lda, double* tb,
                                  const MKL_INT* ltb, MKL_INT* ipiv,
                                  MKL_INT* ipiv2, double* work,
                                  const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytrf_aa_2stage( const char* uplo, int uplo_len,
                                 const MKL_INT* n, double* a,
                                 const MKL_INT* lda, double* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, double* work,
                                 const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytrf_aa_2stage_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, double* a,
                                  const MKL_INT* lda, double* tb,
                                  const MKL_INT* ltb, MKL_INT* ipiv,
                                  MKL_INT* ipiv2, double* work,
                                  const MKL_INT* lwork, MKL_INT* info );

void __stdcall CHESV_AA_2STAGE( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* nrhs,
                                MKL_Complex8* a, const MKL_INT* lda,
                                MKL_Complex8* tb, const MKL_INT* ltb,
                                MKL_INT* ipiv, MKL_INT* ipiv2, MKL_Complex8* b,
                                const MKL_INT* ldb, MKL_Complex8* work,
                                const MKL_INT* lwork, MKL_INT* info );
void __stdcall CHESV_AA_2STAGE_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 MKL_Complex8* a, const MKL_INT* lda,
                                 MKL_Complex8* tb, const MKL_INT* ltb,
                                 MKL_INT* ipiv, MKL_INT* ipiv2,
                                 MKL_Complex8* b, const MKL_INT* ldb,
                                 MKL_Complex8* work, const MKL_INT* lwork,
                                 MKL_INT* info );
void __stdcall chesv_aa_2stage( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* nrhs,
                                MKL_Complex8* a, const MKL_INT* lda,
                                MKL_Complex8* tb, const MKL_INT* ltb,
                                MKL_INT* ipiv, MKL_INT* ipiv2, MKL_Complex8* b,
                                const MKL_INT* ldb, MKL_Complex8* work,
                                const MKL_INT* lwork, MKL_INT* info );
void __stdcall chesv_aa_2stage_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 MKL_Complex8* a, const MKL_INT* lda,
                                 MKL_Complex8* tb, const MKL_INT* ltb,
                                 MKL_INT* ipiv, MKL_INT* ipiv2,
                                 MKL_Complex8* b, const MKL_INT* ldb,
                                 MKL_Complex8* work, const MKL_INT* lwork,
                                 MKL_INT* info );

void __stdcall CHETRF_AA_2STAGE( const char* uplo, int uplo_len,
                                 const MKL_INT* n, MKL_Complex8* a,
                                 const MKL_INT* lda, MKL_Complex8* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, MKL_Complex8* work,
                                 const MKL_INT* lwork, MKL_INT* info );
void __stdcall CHETRF_AA_2STAGE_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, MKL_Complex8* a,
                                  const MKL_INT* lda, MKL_Complex8* tb,
                                  const MKL_INT* ltb, MKL_INT* ipiv,
                                  MKL_INT* ipiv2, MKL_Complex8* work,
                                  const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetrf_aa_2stage( const char* uplo, int uplo_len,
                                 const MKL_INT* n, MKL_Complex8* a,
                                 const MKL_INT* lda, MKL_Complex8* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, MKL_Complex8* work,
                                 const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetrf_aa_2stage_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, MKL_Complex8* a,
                                  const MKL_INT* lda, MKL_Complex8* tb,
                                  const MKL_INT* ltb, MKL_INT* ipiv,
                                  MKL_INT* ipiv2, MKL_Complex8* work,
                                  const MKL_INT* lwork, MKL_INT* info );

void __stdcall CHETRS_AA_2STAGE( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 const MKL_Complex8* a, const MKL_INT* lda,
                                 MKL_Complex8* tb, const MKL_INT* ltb,
                                 const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                 MKL_Complex8* b, const MKL_INT* ldb,
                                 MKL_INT* info );
void __stdcall CHETRS_AA_2STAGE_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, const MKL_INT* nrhs,
                                  const MKL_Complex8* a, const MKL_INT* lda,
                                  MKL_Complex8* tb, const MKL_INT* ltb,
                                  const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                  MKL_Complex8* b, const MKL_INT* ldb,
                                  MKL_INT* info );
void __stdcall chetrs_aa_2stage( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 const MKL_Complex8* a, const MKL_INT* lda,
                                 MKL_Complex8* tb, const MKL_INT* ltb,
                                 const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                 MKL_Complex8* b, const MKL_INT* ldb,
                                 MKL_INT* info );
void __stdcall chetrs_aa_2stage_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, const MKL_INT* nrhs,
                                  const MKL_Complex8* a, const MKL_INT* lda,
                                  MKL_Complex8* tb, const MKL_INT* ltb,
                                  const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                  MKL_Complex8* b, const MKL_INT* ldb,
                                  MKL_INT* info );

void __stdcall CSYSV_AA_2STAGE( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* nrhs,
                                MKL_Complex8* a, const MKL_INT* lda,
                                MKL_Complex8* tb, const MKL_INT* ltb,
                                MKL_INT* ipiv, MKL_INT* ipiv2, MKL_Complex8* b,
                                const MKL_INT* ldb, MKL_Complex8* work,
                                const MKL_INT* lwork, MKL_INT* info );
void __stdcall CSYSV_AA_2STAGE_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 MKL_Complex8* a, const MKL_INT* lda,
                                 MKL_Complex8* tb, const MKL_INT* ltb,
                                 MKL_INT* ipiv, MKL_INT* ipiv2,
                                 MKL_Complex8* b, const MKL_INT* ldb,
                                 MKL_Complex8* work, const MKL_INT* lwork,
                                 MKL_INT* info );
void __stdcall csysv_aa_2stage( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* nrhs,
                                MKL_Complex8* a, const MKL_INT* lda,
                                MKL_Complex8* tb, const MKL_INT* ltb,
                                MKL_INT* ipiv, MKL_INT* ipiv2, MKL_Complex8* b,
                                const MKL_INT* ldb, MKL_Complex8* work,
                                const MKL_INT* lwork, MKL_INT* info );
void __stdcall csysv_aa_2stage_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 MKL_Complex8* a, const MKL_INT* lda,
                                 MKL_Complex8* tb, const MKL_INT* ltb,
                                 MKL_INT* ipiv, MKL_INT* ipiv2,
                                 MKL_Complex8* b, const MKL_INT* ldb,
                                 MKL_Complex8* work, const MKL_INT* lwork,
                                 MKL_INT* info );

void __stdcall CSYTRF_AA_2STAGE( const char* uplo, int uplo_len,
                                 const MKL_INT* n, MKL_Complex8* a,
                                 const MKL_INT* lda, MKL_Complex8* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, MKL_Complex8* work,
                                 const MKL_INT* lwork, MKL_INT* info );
void __stdcall CSYTRF_AA_2STAGE_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, MKL_Complex8* a,
                                  const MKL_INT* lda, MKL_Complex8* tb,
                                  const MKL_INT* ltb, MKL_INT* ipiv,
                                  MKL_INT* ipiv2, MKL_Complex8* work,
                                  const MKL_INT* lwork, MKL_INT* info );
void __stdcall csytrf_aa_2stage( const char* uplo, int uplo_len,
                                 const MKL_INT* n, MKL_Complex8* a,
                                 const MKL_INT* lda, MKL_Complex8* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, MKL_Complex8* work,
                                 const MKL_INT* lwork, MKL_INT* info );
void __stdcall csytrf_aa_2stage_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, MKL_Complex8* a,
                                  const MKL_INT* lda, MKL_Complex8* tb,
                                  const MKL_INT* ltb, MKL_INT* ipiv,
                                  MKL_INT* ipiv2, MKL_Complex8* work,
                                  const MKL_INT* lwork, MKL_INT* info );

void __stdcall CSYTRS_AA_2STAGE( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 const MKL_Complex8* a, const MKL_INT* lda,
                                 MKL_Complex8* tb, const MKL_INT* ltb,
                                 const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                 MKL_Complex8* b, const MKL_INT* ldb,
                                 MKL_INT* info );
void __stdcall CSYTRS_AA_2STAGE_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, const MKL_INT* nrhs,
                                  const MKL_Complex8* a, const MKL_INT* lda,
                                  MKL_Complex8* tb, const MKL_INT* ltb,
                                  const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                  MKL_Complex8* b, const MKL_INT* ldb,
                                  MKL_INT* info );
void __stdcall csytrs_aa_2stage( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 const MKL_Complex8* a, const MKL_INT* lda,
                                 MKL_Complex8* tb, const MKL_INT* ltb,
                                 const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                 MKL_Complex8* b, const MKL_INT* ldb,
                                 MKL_INT* info );
void __stdcall csytrs_aa_2stage_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, const MKL_INT* nrhs,
                                  const MKL_Complex8* a, const MKL_INT* lda,
                                  MKL_Complex8* tb, const MKL_INT* ltb,
                                  const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                  MKL_Complex8* b, const MKL_INT* ldb,
                                  MKL_INT* info );

void __stdcall ZHESV_AA_2STAGE( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* nrhs,
                                MKL_Complex16* a, const MKL_INT* lda,
                                MKL_Complex16* tb, const MKL_INT* ltb,
                                MKL_INT* ipiv, MKL_INT* ipiv2,
                                MKL_Complex16* b, const MKL_INT* ldb,
                                MKL_Complex16* work, const MKL_INT* lwork,
                                MKL_INT* info );
void __stdcall ZHESV_AA_2STAGE_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 MKL_Complex16* a, const MKL_INT* lda,
                                 MKL_Complex16* tb, const MKL_INT* ltb,
                                 MKL_INT* ipiv, MKL_INT* ipiv2,
                                 MKL_Complex16* b, const MKL_INT* ldb,
                                 MKL_Complex16* work, const MKL_INT* lwork,
                                 MKL_INT* info );
void __stdcall zhesv_aa_2stage( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* nrhs,
                                MKL_Complex16* a, const MKL_INT* lda,
                                MKL_Complex16* tb, const MKL_INT* ltb,
                                MKL_INT* ipiv, MKL_INT* ipiv2,
                                MKL_Complex16* b, const MKL_INT* ldb,
                                MKL_Complex16* work, const MKL_INT* lwork,
                                MKL_INT* info );
void __stdcall zhesv_aa_2stage_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 MKL_Complex16* a, const MKL_INT* lda,
                                 MKL_Complex16* tb, const MKL_INT* ltb,
                                 MKL_INT* ipiv, MKL_INT* ipiv2,
                                 MKL_Complex16* b, const MKL_INT* ldb,
                                 MKL_Complex16* work, const MKL_INT* lwork,
                                 MKL_INT* info );

void __stdcall ZHETRF_AA_2STAGE( const char* uplo, int uplo_len,
                                 const MKL_INT* n, MKL_Complex16* a,
                                 const MKL_INT* lda, MKL_Complex16* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, MKL_Complex16* work,
                                 const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZHETRF_AA_2STAGE_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, MKL_Complex16* a,
                                  const MKL_INT* lda, MKL_Complex16* tb,
                                  const MKL_INT* ltb, MKL_INT* ipiv,
                                  MKL_INT* ipiv2, MKL_Complex16* work,
                                  const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetrf_aa_2stage( const char* uplo, int uplo_len,
                                 const MKL_INT* n, MKL_Complex16* a,
                                 const MKL_INT* lda, MKL_Complex16* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, MKL_Complex16* work,
                                 const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetrf_aa_2stage_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, MKL_Complex16* a,
                                  const MKL_INT* lda, MKL_Complex16* tb,
                                  const MKL_INT* ltb, MKL_INT* ipiv,
                                  MKL_INT* ipiv2, MKL_Complex16* work,
                                  const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZHETRS_AA_2STAGE( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 const MKL_Complex16* a, const MKL_INT* lda,
                                 MKL_Complex16* tb, const MKL_INT* ltb,
                                 const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                 MKL_Complex16* b, const MKL_INT* ldb,
                                 MKL_INT* info );
void __stdcall ZHETRS_AA_2STAGE_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, const MKL_INT* nrhs,
                                  const MKL_Complex16* a, const MKL_INT* lda,
                                  MKL_Complex16* tb, const MKL_INT* ltb,
                                  const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                  MKL_Complex16* b, const MKL_INT* ldb,
                                  MKL_INT* info );
void __stdcall zhetrs_aa_2stage( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 const MKL_Complex16* a, const MKL_INT* lda,
                                 MKL_Complex16* tb, const MKL_INT* ltb,
                                 const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                 MKL_Complex16* b, const MKL_INT* ldb,
                                 MKL_INT* info );
void __stdcall zhetrs_aa_2stage_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, const MKL_INT* nrhs,
                                  const MKL_Complex16* a, const MKL_INT* lda,
                                  MKL_Complex16* tb, const MKL_INT* ltb,
                                  const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                  MKL_Complex16* b, const MKL_INT* ldb,
                                  MKL_INT* info );

void __stdcall ZSYSV_AA_2STAGE( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* nrhs,
                                MKL_Complex16* a, const MKL_INT* lda,
                                MKL_Complex16* tb, const MKL_INT* ltb,
                                MKL_INT* ipiv, MKL_INT* ipiv2,
                                MKL_Complex16* b, const MKL_INT* ldb,
                                MKL_Complex16* work, const MKL_INT* lwork,
                                MKL_INT* info );
void __stdcall ZSYSV_AA_2STAGE_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 MKL_Complex16* a, const MKL_INT* lda,
                                 MKL_Complex16* tb, const MKL_INT* ltb,
                                 MKL_INT* ipiv, MKL_INT* ipiv2,
                                 MKL_Complex16* b, const MKL_INT* ldb,
                                 MKL_Complex16* work, const MKL_INT* lwork,
                                 MKL_INT* info );
void __stdcall zsysv_aa_2stage( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* nrhs,
                                MKL_Complex16* a, const MKL_INT* lda,
                                MKL_Complex16* tb, const MKL_INT* ltb,
                                MKL_INT* ipiv, MKL_INT* ipiv2,
                                MKL_Complex16* b, const MKL_INT* ldb,
                                MKL_Complex16* work, const MKL_INT* lwork,
                                MKL_INT* info );
void __stdcall zsysv_aa_2stage_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 MKL_Complex16* a, const MKL_INT* lda,
                                 MKL_Complex16* tb, const MKL_INT* ltb,
                                 MKL_INT* ipiv, MKL_INT* ipiv2,
                                 MKL_Complex16* b, const MKL_INT* ldb,
                                 MKL_Complex16* work, const MKL_INT* lwork,
                                 MKL_INT* info );

void __stdcall ZSYTRF_AA_2STAGE( const char* uplo, int uplo_len,
                                 const MKL_INT* n, MKL_Complex16* a,
                                 const MKL_INT* lda, MKL_Complex16* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, MKL_Complex16* work,
                                 const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZSYTRF_AA_2STAGE_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, MKL_Complex16* a,
                                  const MKL_INT* lda, MKL_Complex16* tb,
                                  const MKL_INT* ltb, MKL_INT* ipiv,
                                  MKL_INT* ipiv2, MKL_Complex16* work,
                                  const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsytrf_aa_2stage( const char* uplo, int uplo_len,
                                 const MKL_INT* n, MKL_Complex16* a,
                                 const MKL_INT* lda, MKL_Complex16* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, MKL_Complex16* work,
                                 const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsytrf_aa_2stage_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, MKL_Complex16* a,
                                  const MKL_INT* lda, MKL_Complex16* tb,
                                  const MKL_INT* ltb, MKL_INT* ipiv,
                                  MKL_INT* ipiv2, MKL_Complex16* work,
                                  const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZSYTRS_AA_2STAGE( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 const MKL_Complex16* a, const MKL_INT* lda,
                                 MKL_Complex16* tb, const MKL_INT* ltb,
                                 const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                 MKL_Complex16* b, const MKL_INT* ldb,
                                 MKL_INT* info );
void __stdcall ZSYTRS_AA_2STAGE_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, const MKL_INT* nrhs,
                                  const MKL_Complex16* a, const MKL_INT* lda,
                                  MKL_Complex16* tb, const MKL_INT* ltb,
                                  const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                  MKL_Complex16* b, const MKL_INT* ldb,
                                  MKL_INT* info );
void __stdcall zsytrs_aa_2stage( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 const MKL_Complex16* a, const MKL_INT* lda,
                                 MKL_Complex16* tb, const MKL_INT* ltb,
                                 const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                 MKL_Complex16* b, const MKL_INT* ldb,
                                 MKL_INT* info );
void __stdcall zsytrs_aa_2stage_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, const MKL_INT* nrhs,
                                  const MKL_Complex16* a, const MKL_INT* lda,
                                  MKL_Complex16* tb, const MKL_INT* ltb,
                                  const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                  MKL_Complex16* b, const MKL_INT* ldb,
                                  MKL_INT* info );

void __stdcall DSYTRS_AA_2STAGE( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 const double* a, const MKL_INT* lda,
                                 double* tb, const MKL_INT* ltb,
                                 const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                 double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DSYTRS_AA_2STAGE_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, const MKL_INT* nrhs,
                                  const double* a, const MKL_INT* lda,
                                  double* tb, const MKL_INT* ltb,
                                  const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                  double* b, const MKL_INT* ldb,
                                  MKL_INT* info );
void __stdcall dsytrs_aa_2stage( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 const double* a, const MKL_INT* lda,
                                 double* tb, const MKL_INT* ltb,
                                 const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                 double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dsytrs_aa_2stage_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, const MKL_INT* nrhs,
                                  const double* a, const MKL_INT* lda,
                                  double* tb, const MKL_INT* ltb,
                                  const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                  double* b, const MKL_INT* ldb,
                                  MKL_INT* info );

void __stdcall DSYSV_AA_2STAGE( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* nrhs,
                                double* a, const MKL_INT* lda, double* tb,
                                const MKL_INT* ltb, MKL_INT* ipiv,
                                MKL_INT* ipiv2, double* b, const MKL_INT* ldb,
                                double* work, const MKL_INT* lwork,
                                MKL_INT* info );
void __stdcall DSYSV_AA_2STAGE_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 double* a, const MKL_INT* lda, double* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, double* b, const MKL_INT* ldb,
                                 double* work, const MKL_INT* lwork,
                                 MKL_INT* info );
void __stdcall dsysv_aa_2stage( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* nrhs,
                                double* a, const MKL_INT* lda, double* tb,
                                const MKL_INT* ltb, MKL_INT* ipiv,
                                MKL_INT* ipiv2, double* b, const MKL_INT* ldb,
                                double* work, const MKL_INT* lwork,
                                MKL_INT* info );
void __stdcall dsysv_aa_2stage_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 double* a, const MKL_INT* lda, double* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, double* b, const MKL_INT* ldb,
                                 double* work, const MKL_INT* lwork,
                                 MKL_INT* info );

void __stdcall SSYSV_AA_2STAGE( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* nrhs,
                                float* a, const MKL_INT* lda, float* tb,
                                const MKL_INT* ltb, MKL_INT* ipiv,
                                MKL_INT* ipiv2, float* b, const MKL_INT* ldb,
                                float* work, const MKL_INT* lwork,
                                MKL_INT* info );
void __stdcall SSYSV_AA_2STAGE_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 float* a, const MKL_INT* lda, float* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, float* b, const MKL_INT* ldb,
                                 float* work, const MKL_INT* lwork,
                                 MKL_INT* info );
void __stdcall ssysv_aa_2stage( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* nrhs,
                                float* a, const MKL_INT* lda, float* tb,
                                const MKL_INT* ltb, MKL_INT* ipiv,
                                MKL_INT* ipiv2, float* b, const MKL_INT* ldb,
                                float* work, const MKL_INT* lwork,
                                MKL_INT* info );
void __stdcall ssysv_aa_2stage_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 float* a, const MKL_INT* lda, float* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, float* b, const MKL_INT* ldb,
                                 float* work, const MKL_INT* lwork,
                                 MKL_INT* info );

void __stdcall SSYTRS_AA_2STAGE( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 const float* a, const MKL_INT* lda, float* tb,
                                 const MKL_INT* ltb, const MKL_INT* ipiv,
                                 const MKL_INT* ipiv2, float* b,
                                 const MKL_INT* ldb, MKL_INT* info );
void __stdcall SSYTRS_AA_2STAGE_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, const MKL_INT* nrhs,
                                  const float* a, const MKL_INT* lda,
                                  float* tb, const MKL_INT* ltb,
                                  const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                  float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ssytrs_aa_2stage( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_INT* nrhs,
                                 const float* a, const MKL_INT* lda, float* tb,
                                 const MKL_INT* ltb, const MKL_INT* ipiv,
                                 const MKL_INT* ipiv2, float* b,
                                 const MKL_INT* ldb, MKL_INT* info );
void __stdcall ssytrs_aa_2stage_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, const MKL_INT* nrhs,
                                  const float* a, const MKL_INT* lda,
                                  float* tb, const MKL_INT* ltb,
                                  const MKL_INT* ipiv, const MKL_INT* ipiv2,
                                  float* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall SSYTRF_AA_2STAGE( const char* uplo, int uplo_len,
                                 const MKL_INT* n, float* a,
                                 const MKL_INT* lda, float* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, float* work,
                                 const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYTRF_AA_2STAGE_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, float* a,
                                  const MKL_INT* lda, float* tb,
                                  const MKL_INT* ltb, MKL_INT* ipiv,
                                  MKL_INT* ipiv2, float* work,
                                  const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytrf_aa_2stage( const char* uplo, int uplo_len,
                                 const MKL_INT* n, float* a,
                                 const MKL_INT* lda, float* tb,
                                 const MKL_INT* ltb, MKL_INT* ipiv,
                                 MKL_INT* ipiv2, float* work,
                                 const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytrf_aa_2stage_( const char* uplo, int uplo_len,
                                  const MKL_INT* n, float* a,
                                  const MKL_INT* lda, float* tb,
                                  const MKL_INT* ltb, MKL_INT* ipiv,
                                  MKL_INT* ipiv2, float* work,
                                  const MKL_INT* lwork, MKL_INT* info );

void __stdcall DTREVC3( const char* side, int side_len, const char* howmny,
                        int howmny_len, MKL_INT* select, const MKL_INT* n,
                        const double* t, const MKL_INT* ldt, double* vl,
                        const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall DTREVC3_( const char* side, int side_len, const char* howmny,
                         int howmny_len, MKL_INT* select, const MKL_INT* n,
                         const double* t, const MKL_INT* ldt, double* vl,
                         const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                         const MKL_INT* mm, MKL_INT* m, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall dtrevc3( const char* side, int side_len, const char* howmny,
                        int howmny_len, MKL_INT* select, const MKL_INT* n,
                        const double* t, const MKL_INT* ldt, double* vl,
                        const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dtrevc3_( const char* side, int side_len, const char* howmny,
                         int howmny_len, MKL_INT* select, const MKL_INT* n,
                         const double* t, const MKL_INT* ldt, double* vl,
                         const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                         const MKL_INT* mm, MKL_INT* m, double* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall STREVC3( const char* side, int side_len, const char* howmny,
                        int howmny_len, MKL_INT* select, const MKL_INT* n,
                        const float* t, const MKL_INT* ldt, float* vl,
                        const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall STREVC3_( const char* side, int side_len, const char* howmny,
                         int howmny_len, MKL_INT* select, const MKL_INT* n,
                         const float* t, const MKL_INT* ldt, float* vl,
                         const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                         const MKL_INT* mm, MKL_INT* m, float* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall strevc3( const char* side, int side_len, const char* howmny,
                        int howmny_len, MKL_INT* select, const MKL_INT* n,
                        const float* t, const MKL_INT* ldt, float* vl,
                        const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall strevc3_( const char* side, int side_len, const char* howmny,
                         int howmny_len, MKL_INT* select, const MKL_INT* n,
                         const float* t, const MKL_INT* ldt, float* vl,
                         const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                         const MKL_INT* mm, MKL_INT* m, float* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall CTREVC3( const char* side, int side_len, const char* howmny,
                        int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* vl, const MKL_INT* ldvl,
                        MKL_Complex8* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* info );
void __stdcall CTREVC3_( const char* side, int side_len, const char* howmny,
                         int howmny_len, const MKL_INT* select,
                         const MKL_INT* n, MKL_Complex8* t, const MKL_INT* ldt,
                         MKL_Complex8* vl, const MKL_INT* ldvl,
                         MKL_Complex8* vr, const MKL_INT* ldvr,
                         const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work,
                         const MKL_INT* lwork, float* rwork,
                         const MKL_INT* lrwork, MKL_INT* info );
void __stdcall ctrevc3( const char* side, int side_len, const char* howmny,
                        int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* vl, const MKL_INT* ldvl,
                        MKL_Complex8* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* info );
void __stdcall ctrevc3_( const char* side, int side_len, const char* howmny,
                         int howmny_len, const MKL_INT* select,
                         const MKL_INT* n, MKL_Complex8* t, const MKL_INT* ldt,
                         MKL_Complex8* vl, const MKL_INT* ldvl,
                         MKL_Complex8* vr, const MKL_INT* ldvr,
                         const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work,
                         const MKL_INT* lwork, float* rwork,
                         const MKL_INT* lrwork, MKL_INT* info );

void __stdcall ZTREVC3( const char* side, int side_len, const char* howmny,
                        int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* vl, const MKL_INT* ldvl,
                        MKL_Complex16* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* info );
void __stdcall ZTREVC3_( const char* side, int side_len, const char* howmny,
                         int howmny_len, const MKL_INT* select,
                         const MKL_INT* n, MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_Complex16* vl,
                         const MKL_INT* ldvl, MKL_Complex16* vr,
                         const MKL_INT* ldvr, const MKL_INT* mm, MKL_INT* m,
                         MKL_Complex16* work, const MKL_INT* lwork,
                         double* rwork, const MKL_INT* lrwork, MKL_INT* info );
void __stdcall ztrevc3( const char* side, int side_len, const char* howmny,
                        int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* vl, const MKL_INT* ldvl,
                        MKL_Complex16* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* info );
void __stdcall ztrevc3_( const char* side, int side_len, const char* howmny,
                         int howmny_len, const MKL_INT* select,
                         const MKL_INT* n, MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_Complex16* vl,
                         const MKL_INT* ldvl, MKL_Complex16* vr,
                         const MKL_INT* ldvr, const MKL_INT* mm, MKL_INT* m,
                         MKL_Complex16* work, const MKL_INT* lwork,
                         double* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall SGETRF_BATCH_STRIDED( const MKL_INT* m, const MKL_INT* n,
                                     float* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall SGETRF_BATCH_STRIDED_( const MKL_INT* m, const MKL_INT* n,
                                      float* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );
void __stdcall sgetrf_batch_strided( const MKL_INT* m, const MKL_INT* n,
                                     float* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall sgetrf_batch_strided_( const MKL_INT* m, const MKL_INT* n,
                                      float* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );

void __stdcall DGETRF_BATCH_STRIDED( const MKL_INT* m, const MKL_INT* n,
                                     double* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall DGETRF_BATCH_STRIDED_( const MKL_INT* m, const MKL_INT* n,
                                      double* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );
void __stdcall dgetrf_batch_strided( const MKL_INT* m, const MKL_INT* n,
                                     double* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall dgetrf_batch_strided_( const MKL_INT* m, const MKL_INT* n,
                                      double* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );

void __stdcall CGETRF_BATCH_STRIDED( const MKL_INT* m, const MKL_INT* n,
                                     MKL_Complex8* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall CGETRF_BATCH_STRIDED_( const MKL_INT* m, const MKL_INT* n,
                                      MKL_Complex8* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );
void __stdcall cgetrf_batch_strided( const MKL_INT* m, const MKL_INT* n,
                                     MKL_Complex8* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall cgetrf_batch_strided_( const MKL_INT* m, const MKL_INT* n,
                                      MKL_Complex8* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );

void __stdcall ZGETRF_BATCH_STRIDED( const MKL_INT* m, const MKL_INT* n,
                                     MKL_Complex16* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall ZGETRF_BATCH_STRIDED_( const MKL_INT* m, const MKL_INT* n,
                                      MKL_Complex16* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );
void __stdcall zgetrf_batch_strided( const MKL_INT* m, const MKL_INT* n,
                                     MKL_Complex16* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall zgetrf_batch_strided_( const MKL_INT* m, const MKL_INT* n,
                                      MKL_Complex16* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );

void __stdcall SGETRS_BATCH_STRIDED( const char* trans, int trans_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     float* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv, float* b,
                                     const MKL_INT* ldb,
                                     const MKL_INT* stride_b,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall SGETRS_BATCH_STRIDED_( const char* trans, int trans_len,
                                      const MKL_INT* n, const MKL_INT* nrhs,
                                      float* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv, float* b,
                                      const MKL_INT* ldb,
                                      const MKL_INT* stride_b,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );
void __stdcall sgetrs_batch_strided( const char* trans, int trans_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     float* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv, float* b,
                                     const MKL_INT* ldb,
                                     const MKL_INT* stride_b,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall sgetrs_batch_strided_( const char* trans, int trans_len,
                                      const MKL_INT* n, const MKL_INT* nrhs,
                                      float* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv, float* b,
                                      const MKL_INT* ldb,
                                      const MKL_INT* stride_b,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );

void __stdcall DGETRS_BATCH_STRIDED( const char* trans, int trans_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     double* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv, double* b,
                                     const MKL_INT* ldb,
                                     const MKL_INT* stride_b,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall DGETRS_BATCH_STRIDED_( const char* trans, int trans_len,
                                      const MKL_INT* n, const MKL_INT* nrhs,
                                      double* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv, double* b,
                                      const MKL_INT* ldb,
                                      const MKL_INT* stride_b,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );
void __stdcall dgetrs_batch_strided( const char* trans, int trans_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     double* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv, double* b,
                                     const MKL_INT* ldb,
                                     const MKL_INT* stride_b,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall dgetrs_batch_strided_( const char* trans, int trans_len,
                                      const MKL_INT* n, const MKL_INT* nrhs,
                                      double* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv, double* b,
                                      const MKL_INT* ldb,
                                      const MKL_INT* stride_b,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );

void __stdcall CGETRS_BATCH_STRIDED( const char* trans, int trans_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     MKL_Complex8* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv,
                                     MKL_Complex8* b, const MKL_INT* ldb,
                                     const MKL_INT* stride_b,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall CGETRS_BATCH_STRIDED_( const char* trans, int trans_len,
                                      const MKL_INT* n, const MKL_INT* nrhs,
                                      MKL_Complex8* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv,
                                      MKL_Complex8* b, const MKL_INT* ldb,
                                      const MKL_INT* stride_b,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );
void __stdcall cgetrs_batch_strided( const char* trans, int trans_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     MKL_Complex8* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv,
                                     MKL_Complex8* b, const MKL_INT* ldb,
                                     const MKL_INT* stride_b,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall cgetrs_batch_strided_( const char* trans, int trans_len,
                                      const MKL_INT* n, const MKL_INT* nrhs,
                                      MKL_Complex8* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv,
                                      MKL_Complex8* b, const MKL_INT* ldb,
                                      const MKL_INT* stride_b,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );

void __stdcall ZGETRS_BATCH_STRIDED( const char* trans, int trans_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     MKL_Complex16* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv,
                                     MKL_Complex16* b, const MKL_INT* ldb,
                                     const MKL_INT* stride_b,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall ZGETRS_BATCH_STRIDED_( const char* trans, int trans_len,
                                      const MKL_INT* n, const MKL_INT* nrhs,
                                      MKL_Complex16* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv,
                                      MKL_Complex16* b, const MKL_INT* ldb,
                                      const MKL_INT* stride_b,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );
void __stdcall zgetrs_batch_strided( const char* trans, int trans_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     MKL_Complex16* a, const MKL_INT* lda,
                                     const MKL_INT* stride_a, MKL_INT* ipiv,
                                     const MKL_INT* stride_ipiv,
                                     MKL_Complex16* b, const MKL_INT* ldb,
                                     const MKL_INT* stride_b,
                                     const MKL_INT* batch_size, MKL_INT* info );
void __stdcall zgetrs_batch_strided_( const char* trans, int trans_len,
                                      const MKL_INT* n, const MKL_INT* nrhs,
                                      MKL_Complex16* a, const MKL_INT* lda,
                                      const MKL_INT* stride_a, MKL_INT* ipiv,
                                      const MKL_INT* stride_ipiv,
                                      MKL_Complex16* b, const MKL_INT* ldb,
                                      const MKL_INT* stride_b,
                                      const MKL_INT* batch_size,
                                      MKL_INT* info );

void __stdcall SGETRFNP_BATCH_STRIDED( const MKL_INT* m, const MKL_INT* n,
                                       float* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall SGETRFNP_BATCH_STRIDED_( const MKL_INT* m, const MKL_INT* n,
                                        float* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );
void __stdcall sgetrfnp_batch_strided( const MKL_INT* m, const MKL_INT* n,
                                       float* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall sgetrfnp_batch_strided_( const MKL_INT* m, const MKL_INT* n,
                                        float* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );

void __stdcall DGETRFNP_BATCH_STRIDED( const MKL_INT* m, const MKL_INT* n,
                                       double* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall DGETRFNP_BATCH_STRIDED_( const MKL_INT* m, const MKL_INT* n,
                                        double* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );
void __stdcall dgetrfnp_batch_strided( const MKL_INT* m, const MKL_INT* n,
                                       double* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall dgetrfnp_batch_strided_( const MKL_INT* m, const MKL_INT* n,
                                        double* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );

void __stdcall CGETRFNP_BATCH_STRIDED( const MKL_INT* m, const MKL_INT* n,
                                       MKL_Complex8* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall CGETRFNP_BATCH_STRIDED_( const MKL_INT* m, const MKL_INT* n,
                                        MKL_Complex8* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );
void __stdcall cgetrfnp_batch_strided( const MKL_INT* m, const MKL_INT* n,
                                       MKL_Complex8* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall cgetrfnp_batch_strided_( const MKL_INT* m, const MKL_INT* n,
                                        MKL_Complex8* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );

void __stdcall ZGETRFNP_BATCH_STRIDED( const MKL_INT* m, const MKL_INT* n,
                                       MKL_Complex16* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall ZGETRFNP_BATCH_STRIDED_( const MKL_INT* m, const MKL_INT* n,
                                        MKL_Complex16* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );
void __stdcall zgetrfnp_batch_strided( const MKL_INT* m, const MKL_INT* n,
                                       MKL_Complex16* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall zgetrfnp_batch_strided_( const MKL_INT* m, const MKL_INT* n,
                                        MKL_Complex16* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );

void __stdcall SGETRSNP_BATCH_STRIDED( const char* trans, int trans_len,
                                       const MKL_INT* n, const MKL_INT* nrhs,
                                       float* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a, float* b,
                                       const MKL_INT* ldb,
                                       const MKL_INT* stride_b,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall SGETRSNP_BATCH_STRIDED_( const char* trans, int trans_len,
                                        const MKL_INT* n, const MKL_INT* nrhs,
                                        float* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a, float* b,
                                        const MKL_INT* ldb,
                                        const MKL_INT* stride_b,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );
void __stdcall sgetrsnp_batch_strided( const char* trans, int trans_len,
                                       const MKL_INT* n, const MKL_INT* nrhs,
                                       float* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a, float* b,
                                       const MKL_INT* ldb,
                                       const MKL_INT* stride_b,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall sgetrsnp_batch_strided_( const char* trans, int trans_len,
                                        const MKL_INT* n, const MKL_INT* nrhs,
                                        float* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a, float* b,
                                        const MKL_INT* ldb,
                                        const MKL_INT* stride_b,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );

void __stdcall DGETRSNP_BATCH_STRIDED( const char* trans, int trans_len,
                                       const MKL_INT* n, const MKL_INT* nrhs,
                                       double* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a, double* b,
                                       const MKL_INT* ldb,
                                       const MKL_INT* stride_b,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall DGETRSNP_BATCH_STRIDED_( const char* trans, int trans_len,
                                        const MKL_INT* n, const MKL_INT* nrhs,
                                        double* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a, double* b,
                                        const MKL_INT* ldb,
                                        const MKL_INT* stride_b,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );
void __stdcall dgetrsnp_batch_strided( const char* trans, int trans_len,
                                       const MKL_INT* n, const MKL_INT* nrhs,
                                       double* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a, double* b,
                                       const MKL_INT* ldb,
                                       const MKL_INT* stride_b,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall dgetrsnp_batch_strided_( const char* trans, int trans_len,
                                        const MKL_INT* n, const MKL_INT* nrhs,
                                        double* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a, double* b,
                                        const MKL_INT* ldb,
                                        const MKL_INT* stride_b,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );

void __stdcall CGETRSNP_BATCH_STRIDED( const char* trans, int trans_len,
                                       const MKL_INT* n, const MKL_INT* nrhs,
                                       MKL_Complex8* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a,
                                       MKL_Complex8* b, const MKL_INT* ldb,
                                       const MKL_INT* stride_b,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall CGETRSNP_BATCH_STRIDED_( const char* trans, int trans_len,
                                        const MKL_INT* n, const MKL_INT* nrhs,
                                        MKL_Complex8* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a,
                                        MKL_Complex8* b, const MKL_INT* ldb,
                                        const MKL_INT* stride_b,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );
void __stdcall cgetrsnp_batch_strided( const char* trans, int trans_len,
                                       const MKL_INT* n, const MKL_INT* nrhs,
                                       MKL_Complex8* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a,
                                       MKL_Complex8* b, const MKL_INT* ldb,
                                       const MKL_INT* stride_b,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall cgetrsnp_batch_strided_( const char* trans, int trans_len,
                                        const MKL_INT* n, const MKL_INT* nrhs,
                                        MKL_Complex8* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a,
                                        MKL_Complex8* b, const MKL_INT* ldb,
                                        const MKL_INT* stride_b,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );

void __stdcall ZGETRSNP_BATCH_STRIDED( const char* trans, int trans_len,
                                       const MKL_INT* n, const MKL_INT* nrhs,
                                       MKL_Complex16* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a,
                                       MKL_Complex16* b, const MKL_INT* ldb,
                                       const MKL_INT* stride_b,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall ZGETRSNP_BATCH_STRIDED_( const char* trans, int trans_len,
                                        const MKL_INT* n, const MKL_INT* nrhs,
                                        MKL_Complex16* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a,
                                        MKL_Complex16* b, const MKL_INT* ldb,
                                        const MKL_INT* stride_b,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );
void __stdcall zgetrsnp_batch_strided( const char* trans, int trans_len,
                                       const MKL_INT* n, const MKL_INT* nrhs,
                                       MKL_Complex16* a, const MKL_INT* lda,
                                       const MKL_INT* stride_a,
                                       MKL_Complex16* b, const MKL_INT* ldb,
                                       const MKL_INT* stride_b,
                                       const MKL_INT* batch_size, MKL_INT* info );
void __stdcall zgetrsnp_batch_strided_( const char* trans, int trans_len,
                                        const MKL_INT* n, const MKL_INT* nrhs,
                                        MKL_Complex16* a, const MKL_INT* lda,
                                        const MKL_INT* stride_a,
                                        MKL_Complex16* b, const MKL_INT* ldb,
                                        const MKL_INT* stride_b,
                                        const MKL_INT* batch_size,
                                        MKL_INT* info );

void __stdcall DGETRF_BATCH( const MKL_INT* m, const MKL_INT* n, double** a,
                             const MKL_INT* lda, MKL_INT** ipiv,
                             const MKL_INT* group_count,
                             const MKL_INT* group_size, MKL_INT* info );
void __stdcall DGETRF_BATCH_( const MKL_INT* m, const MKL_INT* n, double** a,
                              const MKL_INT* lda, MKL_INT** ipiv,
                              const MKL_INT* group_count,
                              const MKL_INT* group_size, MKL_INT* info );
void __stdcall dgetrf_batch( const MKL_INT* m, const MKL_INT* n, double** a,
                             const MKL_INT* lda, MKL_INT** ipiv,
                             const MKL_INT* group_count,
                             const MKL_INT* group_size, MKL_INT* info );
void __stdcall dgetrf_batch_( const MKL_INT* m, const MKL_INT* n, double** a,
                              const MKL_INT* lda, MKL_INT** ipiv,
                              const MKL_INT* group_count,
                              const MKL_INT* group_size, MKL_INT* info );

void __stdcall SGETRF_BATCH( const MKL_INT* m, const MKL_INT* n, float** a,
                             const MKL_INT* lda, MKL_INT** ipiv,
                             const MKL_INT* group_count,
                             const MKL_INT* group_size, MKL_INT* info );
void __stdcall SGETRF_BATCH_( const MKL_INT* m, const MKL_INT* n, float** a,
                              const MKL_INT* lda, MKL_INT** ipiv,
                              const MKL_INT* group_count,
                              const MKL_INT* group_size, MKL_INT* info );
void __stdcall sgetrf_batch( const MKL_INT* m, const MKL_INT* n, float** a,
                             const MKL_INT* lda, MKL_INT** ipiv,
                             const MKL_INT* group_count,
                             const MKL_INT* group_size, MKL_INT* info );
void __stdcall sgetrf_batch_( const MKL_INT* m, const MKL_INT* n, float** a,
                              const MKL_INT* lda, MKL_INT** ipiv,
                              const MKL_INT* group_count,
                              const MKL_INT* group_size, MKL_INT* info );

void __stdcall CGETRF_BATCH( const MKL_INT* m, const MKL_INT* n,
                             MKL_Complex8** a, const MKL_INT* lda,
                             MKL_INT** ipiv, const MKL_INT* group_count,
                             const MKL_INT* group_size, MKL_INT* info );
void __stdcall CGETRF_BATCH_( const MKL_INT* m, const MKL_INT* n,
                              MKL_Complex8** a, const MKL_INT* lda,
                              MKL_INT** ipiv, const MKL_INT* group_count,
                              const MKL_INT* group_size, MKL_INT* info );
void __stdcall cgetrf_batch( const MKL_INT* m, const MKL_INT* n,
                             MKL_Complex8** a, const MKL_INT* lda,
                             MKL_INT** ipiv, const MKL_INT* group_count,
                             const MKL_INT* group_size, MKL_INT* info );
void __stdcall cgetrf_batch_( const MKL_INT* m, const MKL_INT* n,
                              MKL_Complex8** a, const MKL_INT* lda,
                              MKL_INT** ipiv, const MKL_INT* group_count,
                              const MKL_INT* group_size, MKL_INT* info );

void __stdcall ZGETRF_BATCH( const MKL_INT* m, const MKL_INT* n,
                             MKL_Complex16** a, const MKL_INT* lda,
                             MKL_INT** ipiv, const MKL_INT* group_count,
                             const MKL_INT* group_size, MKL_INT* info );
void __stdcall ZGETRF_BATCH_( const MKL_INT* m, const MKL_INT* n,
                              MKL_Complex16** a, const MKL_INT* lda,
                              MKL_INT** ipiv, const MKL_INT* group_count,
                              const MKL_INT* group_size, MKL_INT* info );
void __stdcall zgetrf_batch( const MKL_INT* m, const MKL_INT* n,
                             MKL_Complex16** a, const MKL_INT* lda,
                             MKL_INT** ipiv, const MKL_INT* group_count,
                             const MKL_INT* group_size, MKL_INT* info );
void __stdcall zgetrf_batch_( const MKL_INT* m, const MKL_INT* n,
                              MKL_Complex16** a, const MKL_INT* lda,
                              MKL_INT** ipiv, const MKL_INT* group_count,
                              const MKL_INT* group_size, MKL_INT* info );

void __stdcall SGETRI_OOP_BATCH_STRIDED( MKL_INT* n, float* a, MKL_INT* lda,
                                         MKL_INT* stride_a, MKL_INT* ipiv,
                                         MKL_INT* stride_ipiv, float* c,
                                         MKL_INT* ldc, MKL_INT* stride_c,
                                         MKL_INT* batch_size, MKL_INT* info );
void __stdcall SGETRI_OOP_BATCH_STRIDED_( MKL_INT* n, float* a, MKL_INT* lda,
                                          MKL_INT* stride_a, MKL_INT* ipiv,
                                          MKL_INT* stride_ipiv, float* c,
                                          MKL_INT* ldc, MKL_INT* stride_c,
                                          MKL_INT* batch_size, MKL_INT* info );
void __stdcall sgetri_oop_batch_strided( MKL_INT* n, float* a, MKL_INT* lda,
                                         MKL_INT* stride_a, MKL_INT* ipiv,
                                         MKL_INT* stride_ipiv, float* c,
                                         MKL_INT* ldc, MKL_INT* stride_c,
                                         MKL_INT* batch_size, MKL_INT* info );
void __stdcall sgetri_oop_batch_strided_( MKL_INT* n, float* a, MKL_INT* lda,
                                          MKL_INT* stride_a, MKL_INT* ipiv,
                                          MKL_INT* stride_ipiv, float* c,
                                          MKL_INT* ldc, MKL_INT* stride_c,
                                          MKL_INT* batch_size, MKL_INT* info );

void __stdcall DGETRI_OOP_BATCH_STRIDED( MKL_INT* n, double* a, MKL_INT* lda,
                                         MKL_INT* stride_a, MKL_INT* ipiv,
                                         MKL_INT* stride_ipiv, double* c,
                                         MKL_INT* ldc, MKL_INT* stride_c,
                                         MKL_INT* batch_size, MKL_INT* info );
void __stdcall DGETRI_OOP_BATCH_STRIDED_( MKL_INT* n, double* a, MKL_INT* lda,
                                          MKL_INT* stride_a, MKL_INT* ipiv,
                                          MKL_INT* stride_ipiv, double* c,
                                          MKL_INT* ldc, MKL_INT* stride_c,
                                          MKL_INT* batch_size, MKL_INT* info );
void __stdcall dgetri_oop_batch_strided( MKL_INT* n, double* a, MKL_INT* lda,
                                         MKL_INT* stride_a, MKL_INT* ipiv,
                                         MKL_INT* stride_ipiv, double* c,
                                         MKL_INT* ldc, MKL_INT* stride_c,
                                         MKL_INT* batch_size, MKL_INT* info );
void __stdcall dgetri_oop_batch_strided_( MKL_INT* n, double* a, MKL_INT* lda,
                                          MKL_INT* stride_a, MKL_INT* ipiv,
                                          MKL_INT* stride_ipiv, double* c,
                                          MKL_INT* ldc, MKL_INT* stride_c,
                                          MKL_INT* batch_size, MKL_INT* info );

void __stdcall CGETRI_OOP_BATCH_STRIDED( MKL_INT* n, MKL_Complex8* a,
                                         MKL_INT* lda, MKL_INT* stride_a,
                                         MKL_INT* ipiv, MKL_INT* stride_ipiv,
                                         MKL_Complex8* c, MKL_INT* ldc,
                                         MKL_INT* stride_c,
                                         MKL_INT* batch_size, MKL_INT* info );
void __stdcall CGETRI_OOP_BATCH_STRIDED_( MKL_INT* n, MKL_Complex8* a,
                                          MKL_INT* lda, MKL_INT* stride_a,
                                          MKL_INT* ipiv, MKL_INT* stride_ipiv,
                                          MKL_Complex8* c, MKL_INT* ldc,
                                          MKL_INT* stride_c,
                                          MKL_INT* batch_size, MKL_INT* info );
void __stdcall cgetri_oop_batch_strided( MKL_INT* n, MKL_Complex8* a,
                                         MKL_INT* lda, MKL_INT* stride_a,
                                         MKL_INT* ipiv, MKL_INT* stride_ipiv,
                                         MKL_Complex8* c, MKL_INT* ldc,
                                         MKL_INT* stride_c,
                                         MKL_INT* batch_size, MKL_INT* info );
void __stdcall cgetri_oop_batch_strided_( MKL_INT* n, MKL_Complex8* a,
                                          MKL_INT* lda, MKL_INT* stride_a,
                                          MKL_INT* ipiv, MKL_INT* stride_ipiv,
                                          MKL_Complex8* c, MKL_INT* ldc,
                                          MKL_INT* stride_c,
                                          MKL_INT* batch_size, MKL_INT* info );

void __stdcall ZGETRI_OOP_BATCH_STRIDED( MKL_INT* n, MKL_Complex16* a,
                                         MKL_INT* lda, MKL_INT* stride_a,
                                         MKL_INT* ipiv, MKL_INT* stride_ipiv,
                                         MKL_Complex16* c, MKL_INT* ldc,
                                         MKL_INT* stride_c,
                                         MKL_INT* batch_size, MKL_INT* info );
void __stdcall ZGETRI_OOP_BATCH_STRIDED_( MKL_INT* n, MKL_Complex16* a,
                                          MKL_INT* lda, MKL_INT* stride_a,
                                          MKL_INT* ipiv, MKL_INT* stride_ipiv,
                                          MKL_Complex16* c, MKL_INT* ldc,
                                          MKL_INT* stride_c,
                                          MKL_INT* batch_size, MKL_INT* info );
void __stdcall zgetri_oop_batch_strided( MKL_INT* n, MKL_Complex16* a,
                                         MKL_INT* lda, MKL_INT* stride_a,
                                         MKL_INT* ipiv, MKL_INT* stride_ipiv,
                                         MKL_Complex16* c, MKL_INT* ldc,
                                         MKL_INT* stride_c,
                                         MKL_INT* batch_size, MKL_INT* info );
void __stdcall zgetri_oop_batch_strided_( MKL_INT* n, MKL_Complex16* a,
                                          MKL_INT* lda, MKL_INT* stride_a,
                                          MKL_INT* ipiv, MKL_INT* stride_ipiv,
                                          MKL_Complex16* c, MKL_INT* ldc,
                                          MKL_INT* stride_c,
                                          MKL_INT* batch_size, MKL_INT* info );

void __stdcall SGETRI_OOP_BATCH( const MKL_INT* n, const float** a, const MKL_INT* lda,    
                                 const MKL_INT** ipiv, float** ainv, const MKL_INT* ldainv,
                                 const MKL_INT* group_count, const MKL_INT* group_size,
                                 MKL_INT* info );
void __stdcall SGETRI_OOP_BATCH_( const MKL_INT* n, const float** a, const MKL_INT* lda,    
                                  const MKL_INT** ipiv, float** ainv, const MKL_INT* ldainv,
                                  const MKL_INT* group_count, const MKL_INT* group_size,
                                  MKL_INT* info );
void __stdcall sgetri_oop_batch( const MKL_INT* n, const float** a, const MKL_INT* lda,    
                                 const MKL_INT** ipiv, float** ainv, const MKL_INT* ldainv,
                                 const MKL_INT* group_count, const MKL_INT* group_size,
                                 MKL_INT* info );
void __stdcall sgetri_oop_batch_( const MKL_INT* n, const float** a, const MKL_INT* lda,    
                                  const MKL_INT** ipiv, float** ainv, const MKL_INT* ldainv,
                                  const MKL_INT* group_count, const MKL_INT* group_size,
                                  MKL_INT* info );

void __stdcall DGETRI_OOP_BATCH( const MKL_INT* n, const double** a, const MKL_INT* lda,    
                                 const MKL_INT** ipiv, double** ainv, const MKL_INT* ldainv,
                                 const MKL_INT* group_count, const MKL_INT* group_size,
                                 MKL_INT* info );
void __stdcall DGETRI_OOP_BATCH_( const MKL_INT* n, const double** a, const MKL_INT* lda,    
                                  const MKL_INT** ipiv, double** ainv, const MKL_INT* ldainv,
                                  const MKL_INT* group_count, const MKL_INT* group_size,
                                  MKL_INT* info );
void __stdcall dgetri_oop_batch( const MKL_INT* n, const double** a, const MKL_INT* lda,    
                                 const MKL_INT** ipiv, double** ainv, const MKL_INT* ldainv,
                                 const MKL_INT* group_count, const MKL_INT* group_size,
                                 MKL_INT* info );
void __stdcall dgetri_oop_batch_( const MKL_INT* n, const double** a, const MKL_INT* lda,    
                                  const MKL_INT** ipiv, double** ainv, const MKL_INT* ldainv,
                                  const MKL_INT* group_count, const MKL_INT* group_size,
                                  MKL_INT* info );

void __stdcall CGETRI_OOP_BATCH( const MKL_INT* n, const MKL_Complex8** a, const MKL_INT* lda,    
                                 const MKL_INT** ipiv, MKL_Complex8** ainv, const MKL_INT* ldainv,
                                 const MKL_INT* group_count, const MKL_INT* group_size,
                                 MKL_INT* info );
void __stdcall CGETRI_OOP_BATCH_( const MKL_INT* n, const MKL_Complex8** a, const MKL_INT* lda,    
                                  const MKL_INT** ipiv, MKL_Complex8** ainv, const MKL_INT* ldainv,
                                  const MKL_INT* group_count, const MKL_INT* group_size,
                                  MKL_INT* info );
void __stdcall cgetri_oop_batch( const MKL_INT* n, const MKL_Complex8** a, const MKL_INT* lda,    
                                 const MKL_INT** ipiv, MKL_Complex8** ainv, const MKL_INT* ldainv,
                                 const MKL_INT* group_count, const MKL_INT* group_size,
                                 MKL_INT* info );
void __stdcall cgetri_oop_batch_( const MKL_INT* n, const MKL_Complex8** a, const MKL_INT* lda,    
                                  const MKL_INT** ipiv, MKL_Complex8** ainv, const MKL_INT* ldainv,
                                  const MKL_INT* group_count, const MKL_INT* group_size,
                                  MKL_INT* info );

void __stdcall ZGETRI_OOP_BATCH( const MKL_INT* n, const MKL_Complex16** a, const MKL_INT* lda,    
                                 const MKL_INT** ipiv, MKL_Complex16** ainv, const MKL_INT* ldainv,
                                 const MKL_INT* group_count, const MKL_INT* group_size,
                                 MKL_INT* info );
void __stdcall ZGETRI_OOP_BATCH_( const MKL_INT* n, const MKL_Complex16** a, const MKL_INT* lda,    
                                  const MKL_INT** ipiv, MKL_Complex16** ainv, const MKL_INT* ldainv,
                                  const MKL_INT* group_count, const MKL_INT* group_size,
                                  MKL_INT* info );
void __stdcall zgetri_oop_batch( const MKL_INT* n, const MKL_Complex16** a, const MKL_INT* lda,    
                                 const MKL_INT** ipiv, MKL_Complex16** ainv, const MKL_INT* ldainv,
                                 const MKL_INT* group_count, const MKL_INT* group_size,
                                 MKL_INT* info );
void __stdcall zgetri_oop_batch_( const MKL_INT* n, const MKL_Complex16** a, const MKL_INT* lda,    
                                  const MKL_INT** ipiv, MKL_Complex16** ainv, const MKL_INT* ldainv,
                                  const MKL_INT* group_count, const MKL_INT* group_size,
                                  MKL_INT* info );

/* LAPACK 3.6.0 routines */

void __stdcall CGEJSV( const char* joba, int joba_len, const char* jobu, int jobu_len,
                       const char* jobv, int jobv_len, const char* jobr, int jobr_len,
                       const char* jobt, int jobt_len, const char* jobp, int jobp_len,
                       const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       float* sva, MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* v,
                       const MKL_INT* ldv, MKL_Complex8* cwork, const MKL_INT* lwork,
                       float* rwork, const MKL_INT* lrwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall CGEJSV_( const char* joba, int joba_len, const char* jobu, int jobu_len,
                        const char* jobv, int jobv_len, const char* jobr, int jobr_len,
                        const char* jobt, int jobt_len, const char* jobp, int jobp_len,
                        const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        float* sva, MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* v,
                        const MKL_INT* ldv, MKL_Complex8* cwork, const MKL_INT* lwork,
                        float* rwork, const MKL_INT* lrwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall cgejsv( const char* joba, int joba_len, const char* jobu, int jobu_len,
                       const char* jobv, int jobv_len, const char* jobr, int jobr_len,
                       const char* jobt, int jobt_len, const char* jobp, int jobp_len,
                       const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       float* sva, MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* v,
                       const MKL_INT* ldv, MKL_Complex8* cwork, const MKL_INT* lwork,
                       float* rwork, const MKL_INT* lrwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall cgejsv_( const char* joba, int joba_len, const char* jobu, int jobu_len,
                        const char* jobv, int jobv_len, const char* jobr, int jobr_len,
                        const char* jobt, int jobt_len, const char* jobp, int jobp_len,
                        const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        float* sva, MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* v,
                        const MKL_INT* ldv, MKL_Complex8* cwork, const MKL_INT* lwork,
                        float* rwork, const MKL_INT* lrwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall ZGEJSV( const char* joba, int joba_len, const char* jobu, int jobu_len,
                       const char* jobv, int jobv_len, const char* jobr, int jobr_len,
                       const char* jobt, int jobt_len, const char* jobp, int jobp_len,
                       const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       double* sva, MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* v,
                       const MKL_INT* ldv, MKL_Complex16* cwork, const MKL_INT* lwork,
                       double* rwork, const MKL_INT* lrwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall ZGEJSV_( const char* joba, int joba_len, const char* jobu, int jobu_len,
                        const char* jobv, int jobv_len, const char* jobr, int jobr_len,
                        const char* jobt, int jobt_len, const char* jobp, int jobp_len,
                        const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        double* sva, MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* v,
                        const MKL_INT* ldv, MKL_Complex16* cwork, const MKL_INT* lwork,
                        double* rwork, const MKL_INT* lrwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall zgejsv( const char* joba, int joba_len, const char* jobu, int jobu_len,
                       const char* jobv, int jobv_len, const char* jobr, int jobr_len,
                       const char* jobt, int jobt_len, const char* jobp, int jobp_len,
                       const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       double* sva, MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* v,
                       const MKL_INT* ldv, MKL_Complex16* cwork, const MKL_INT* lwork,
                       double* rwork, const MKL_INT* lrwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall zgejsv_( const char* joba, int joba_len, const char* jobu, int jobu_len,
                        const char* jobv, int jobv_len, const char* jobr, int jobr_len,
                        const char* jobt, int jobt_len, const char* jobp, int jobp_len,
                        const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        double* sva, MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* v,
                        const MKL_INT* ldv, MKL_Complex16* cwork, const MKL_INT* lwork,
                        double* rwork, const MKL_INT* lrwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGESVDX( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                        const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                        double* a, const MKL_INT* lda, const double* vl, const double* vu,
                        const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                        double* s, double* u, const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                        double* work, const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGESVDX_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                         const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                         double* a, const MKL_INT* lda, const double* vl, const double* vu,
                         const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                         double* s, double* u, const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                         double* work, const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgesvdx( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                        const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                        double* a, const MKL_INT* lda, const double* vl, const double* vu,
                        const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                        double* s, double* u, const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                        double* work, const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgesvdx_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                         const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                         double* a, const MKL_INT* lda, const double* vl, const double* vu,
                         const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                         double* s, double* u, const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                         double* work, const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGESVDX( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                        const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                        float* a, const MKL_INT* lda, const float* vl, const float* vu,
                        const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                        float* s, float* u, const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                        float* work, const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall SGESVDX_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                         const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                         float* a, const MKL_INT* lda, const float* vl, const float* vu,
                         const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                         float* s, float* u, const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                         float* work, const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgesvdx( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                        const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                        float* a, const MKL_INT* lda, const float* vl, const float* vu,
                        const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                        float* s, float* u, const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                        float* work, const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgesvdx_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                         const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                         float* a, const MKL_INT* lda, const float* vl, const float* vu,
                         const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                         float* s, float* u, const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                         float* work, const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall CGESVDX( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                        const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, const float* vl, const float* vu,
                        const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                        float* s, MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* vt,
                        const MKL_INT* ldvt, MKL_Complex8* work,const MKL_INT* lwork,
                        float* rwork, const MKL_INT* iwork, MKL_INT* info );
void __stdcall CGESVDX_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                         const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                         MKL_Complex8* a, const MKL_INT* lda, const float* vl, const float* vu,
                         const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                         float* s, MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* vt,
                         const MKL_INT* ldvt, MKL_Complex8* work,const MKL_INT* lwork,
                         float* rwork, const MKL_INT* iwork, MKL_INT* info );
void __stdcall cgesvdx( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                        const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, const float* vl, const float* vu,
                        const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                        float* s, MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* vt,
                        const MKL_INT* ldvt, MKL_Complex8* work,const MKL_INT* lwork,
                        float* rwork, const MKL_INT* iwork, MKL_INT* info );
void __stdcall cgesvdx_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                         const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                         MKL_Complex8* a, const MKL_INT* lda, const float* vl, const float* vu,
                         const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                         float* s, MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* vt,
                         const MKL_INT* ldvt, MKL_Complex8* work,const MKL_INT* lwork,
                         float* rwork, const MKL_INT* iwork, MKL_INT* info );

void __stdcall ZGESVDX( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                        const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, const double* vl, const double* vu,
                        const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                        double* s, MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* vt,
                        const MKL_INT* ldvt, MKL_Complex16* work,const MKL_INT* lwork,
                        double* rwork, const MKL_INT* iwork, MKL_INT* info );
void __stdcall ZGESVDX_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                         const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                         MKL_Complex16* a, const MKL_INT* lda, const double* vl, const double* vu,
                         const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                         double* s, MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* vt,
                         const MKL_INT* ldvt, MKL_Complex16* work,const MKL_INT* lwork,
                         double* rwork, const MKL_INT* iwork, MKL_INT* info );
void __stdcall zgesvdx( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                        const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, const double* vl, const double* vu,
                        const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                        double* s, MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* vt,
                        const MKL_INT* ldvt, MKL_Complex16* work,const MKL_INT* lwork,
                        double* rwork, const MKL_INT* iwork, MKL_INT* info );
void __stdcall zgesvdx_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len,
                         const char* range, int range_len, const MKL_INT* m, const MKL_INT* n,
                         MKL_Complex16* a, const MKL_INT* lda, const double* vl, const double* vu,
                         const MKL_INT* il, const MKL_INT* iu, MKL_INT* ns,
                         double* s, MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* vt,
                         const MKL_INT* ldvt, MKL_Complex16* work,const MKL_INT* lwork,
                         double* rwork, const MKL_INT* iwork, MKL_INT* info );

void __stdcall CGESVJ( const char* joba, int joba_len, const char* jobu, int jobu_len,
                       const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, float* sva, const MKL_INT* mv,
                       MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* cwork,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* info );
void __stdcall CGESVJ_( const char* joba, int joba_len, const char* jobu, int jobu_len,
                        const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, float* sva, const MKL_INT* mv,
                        MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* cwork,
                        const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                        MKL_INT* info );
void __stdcall cgesvj( const char* joba, int joba_len, const char* jobu, int jobu_len,
                       const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, float* sva, const MKL_INT* mv,
                       MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* cwork,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* info );
void __stdcall cgesvj_( const char* joba, int joba_len, const char* jobu, int jobu_len,
                        const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, float* sva, const MKL_INT* mv,
                        MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* cwork,
                        const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                        MKL_INT* info );

void __stdcall ZGESVJ( const char* joba, int joba_len, const char* jobu, int jobu_len,
                       const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, double* sva,
                       const MKL_INT* mv, MKL_Complex16* v, const MKL_INT* ldv,
                       MKL_Complex16* cwork, const MKL_INT* lwork, double* rwork,
                       const MKL_INT* lrwork, MKL_INT* info );
void __stdcall ZGESVJ_( const char* joba, int joba_len, const char* jobu, int jobu_len,
                        const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, double* sva,
                        const MKL_INT* mv, MKL_Complex16* v, const MKL_INT* ldv,
                        MKL_Complex16* cwork, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* info );
void __stdcall zgesvj( const char* joba, int joba_len, const char* jobu, int jobu_len,
                       const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, double* sva,
                       const MKL_INT* mv, MKL_Complex16* v, const MKL_INT* ldv,
                       MKL_Complex16* cwork, const MKL_INT* lwork, double* rwork,
                       const MKL_INT* lrwork, MKL_INT* info );
void __stdcall zgesvj_( const char* joba, int joba_len, const char* jobu, int jobu_len,
                        const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, double* sva,
                        const MKL_INT* mv, MKL_Complex16* v, const MKL_INT* ldv,
                        MKL_Complex16* cwork, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* info );

void __stdcall DGGSVD3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* p, MKL_INT* k, MKL_INT* l, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, double* alpha, double* beta,
                        double* u, const MKL_INT* ldu, double* v, const MKL_INT* ldv,
                        double* q, const MKL_INT* ldq, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall DGGSVD3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* p, MKL_INT* k, MKL_INT* l, double* a, const MKL_INT* lda,
                         double* b, const MKL_INT* ldb, double* alpha, double* beta,
                         double* u, const MKL_INT* ldu, double* v, const MKL_INT* ldv,
                         double* q, const MKL_INT* ldq, double* work, const MKL_INT* lwork,
                         MKL_INT* iwork, MKL_INT* info );
void __stdcall dggsvd3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* p, MKL_INT* k, MKL_INT* l, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, double* alpha, double* beta,
                        double* u, const MKL_INT* ldu, double* v, const MKL_INT* ldv,
                        double* q, const MKL_INT* ldq, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall dggsvd3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* p, MKL_INT* k, MKL_INT* l, double* a, const MKL_INT* lda,
                         double* b, const MKL_INT* ldb, double* alpha, double* beta,
                         double* u, const MKL_INT* ldu, double* v, const MKL_INT* ldv,
                         double* q, const MKL_INT* ldq, double* work, const MKL_INT* lwork,
                         MKL_INT* iwork, MKL_INT* info );

void __stdcall SGGSVD3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* p, MKL_INT* k, MKL_INT* l, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, float* alpha, float* beta,
                        float* u, const MKL_INT* ldu, float* v, const MKL_INT* ldv,
                        float* q, const MKL_INT* ldq, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall SGGSVD3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* p, MKL_INT* k, MKL_INT* l, float* a, const MKL_INT* lda,
                         float* b, const MKL_INT* ldb, float* alpha, float* beta,
                         float* u, const MKL_INT* ldu, float* v, const MKL_INT* ldv,
                         float* q, const MKL_INT* ldq, float* work, const MKL_INT* lwork,
                         MKL_INT* iwork, MKL_INT* info );
void __stdcall sggsvd3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* p, MKL_INT* k, MKL_INT* l, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, float* alpha, float* beta,
                        float* u, const MKL_INT* ldu, float* v, const MKL_INT* ldv,
                        float* q, const MKL_INT* ldq, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall sggsvd3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* p, MKL_INT* k, MKL_INT* l, float* a, const MKL_INT* lda,
                         float* b, const MKL_INT* ldb, float* alpha, float* beta,
                         float* u, const MKL_INT* ldu, float* v, const MKL_INT* ldv,
                         float* q, const MKL_INT* ldq, float* work, const MKL_INT* lwork,
                         MKL_INT* iwork, MKL_INT* info );

void __stdcall CGGSVD3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* p, MKL_INT* k, MKL_INT* l, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        float* alpha, float* beta, MKL_Complex8* u, const MKL_INT* ldu,
                        MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall CGGSVD3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* p, MKL_INT* k, MKL_INT* l, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                         float* alpha, float* beta, MKL_Complex8* u, const MKL_INT* ldu,
                         MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* q, const MKL_INT* ldq,
                         MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                         MKL_INT* iwork, MKL_INT* info );
void __stdcall cggsvd3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* p, MKL_INT* k, MKL_INT* l, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        float* alpha, float* beta, MKL_Complex8* u, const MKL_INT* ldu,
                        MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall cggsvd3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* p, MKL_INT* k, MKL_INT* l, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                         float* alpha, float* beta, MKL_Complex8* u, const MKL_INT* ldu,
                         MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* q, const MKL_INT* ldq,
                         MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                         MKL_INT* iwork, MKL_INT* info );

void __stdcall ZGGSVD3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* p, MKL_INT* k, MKL_INT* l, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        double* alpha, double* beta, MKL_Complex16* u, const MKL_INT* ldu,
                        MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                        const MKL_INT* ldq, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall ZGGSVD3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* p, MKL_INT* k, MKL_INT* l, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                         double* alpha, double* beta, MKL_Complex16* u, const MKL_INT* ldu,
                         MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                         const MKL_INT* ldq, MKL_Complex16* work, const MKL_INT* lwork,
                         double* rwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall zggsvd3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* p, MKL_INT* k, MKL_INT* l, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        double* alpha, double* beta, MKL_Complex16* u, const MKL_INT* ldu,
                        MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                        const MKL_INT* ldq, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall zggsvd3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* p, MKL_INT* k, MKL_INT* l, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                         double* alpha, double* beta, MKL_Complex16* u, const MKL_INT* ldu,
                         MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                         const MKL_INT* ldq, MKL_Complex16* work, const MKL_INT* lwork,
                         double* rwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGGSVP3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                        const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, const double* tola, const double* tolb,
                        MKL_INT* k, MKL_INT* l, double* u, const MKL_INT* ldu, double* v,
                        const MKL_INT* ldv, double* q, const MKL_INT* ldq, MKL_INT* iwork,
                        double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGGSVP3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                         const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                         const MKL_INT* ldb, const double* tola, const double* tolb,
                         MKL_INT* k, MKL_INT* l, double* u, const MKL_INT* ldu, double* v,
                         const MKL_INT* ldv, double* q, const MKL_INT* ldq, MKL_INT* iwork,
                         double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dggsvp3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                        const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, const double* tola, const double* tolb,
                        MKL_INT* k, MKL_INT* l, double* u, const MKL_INT* ldu, double* v,
                        const MKL_INT* ldv, double* q, const MKL_INT* ldq, MKL_INT* iwork,
                        double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dggsvp3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                         const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                         const MKL_INT* ldb, const double* tola, const double* tolb,
                         MKL_INT* k, MKL_INT* l, double* u, const MKL_INT* ldu, double* v,
                         const MKL_INT* ldv, double* q, const MKL_INT* ldq, MKL_INT* iwork,
                         double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGGSVP3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                        const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, const float* tola, const float* tolb,
                        MKL_INT* k, MKL_INT* l, float* u, const MKL_INT* ldu, float* v,
                        const MKL_INT* ldv, float* q, const MKL_INT* ldq, MKL_INT* iwork,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGGSVP3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                         const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                         const MKL_INT* ldb, const float* tola, const float* tolb,
                         MKL_INT* k, MKL_INT* l, float* u, const MKL_INT* ldu, float* v,
                         const MKL_INT* ldv, float* q, const MKL_INT* ldq, MKL_INT* iwork,
                         float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sggsvp3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                        const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, const float* tola, const float* tolb,
                        MKL_INT* k, MKL_INT* l, float* u, const MKL_INT* ldu, float* v,
                        const MKL_INT* ldv, float* q, const MKL_INT* ldq, MKL_INT* iwork,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sggsvp3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                         const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                         const MKL_INT* ldb, const float* tola, const float* tolb,
                         MKL_INT* k, MKL_INT* l, float* u, const MKL_INT* ldu, float* v,
                         const MKL_INT* ldv, float* q, const MKL_INT* ldq, MKL_INT* iwork,
                         float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CGGSVP3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, const float* tola, const float* tolb,
                        MKL_INT* k, MKL_INT* l, MKL_Complex8* u, const MKL_INT* ldu,
                        MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_INT* iwork, float* rwork, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGGSVP3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                         const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                         const MKL_INT* ldb, const float* tola, const float* tolb,
                         MKL_INT* k, MKL_INT* l, MKL_Complex8* u, const MKL_INT* ldu,
                         MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* q, const MKL_INT* ldq,
                         MKL_INT* iwork, float* rwork, MKL_Complex8* tau, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall cggsvp3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, const float* tola, const float* tolb,
                        MKL_INT* k, MKL_INT* l, MKL_Complex8* u, const MKL_INT* ldu,
                        MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_INT* iwork, float* rwork, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall cggsvp3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                         const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                         const MKL_INT* ldb, const float* tola, const float* tolb,
                         MKL_INT* k, MKL_INT* l, MKL_Complex8* u, const MKL_INT* ldu,
                         MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* q, const MKL_INT* ldq,
                         MKL_INT* iwork, float* rwork, MKL_Complex8* tau, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGGSVP3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb, const double* tola,
                        const double* tolb, MKL_INT* k, MKL_INT* l, MKL_Complex16* u,
                        const MKL_INT* ldu, MKL_Complex16* v, const MKL_INT* ldv,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_INT* iwork, double* rwork,
                        MKL_Complex16* tau, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall ZGGSVP3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                         const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* b, const MKL_INT* ldb, const double* tola,
                         const double* tolb, MKL_INT* k, MKL_INT* l, MKL_Complex16* u,
                         const MKL_INT* ldu, MKL_Complex16* v, const MKL_INT* ldv,
                         MKL_Complex16* q, const MKL_INT* ldq, MKL_INT* iwork, double* rwork,
                         MKL_Complex16* tau, MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall zggsvp3( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb, const double* tola,
                        const double* tolb, MKL_INT* k, MKL_INT* l, MKL_Complex16* u,
                        const MKL_INT* ldu, MKL_Complex16* v, const MKL_INT* ldv,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_INT* iwork, double* rwork,
                        MKL_Complex16* tau, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zggsvp3_( const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                         const char* jobq, int jobq_len, const MKL_INT* m, const MKL_INT* p,
                         const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* b, const MKL_INT* ldb, const double* tola,
                         const double* tolb, MKL_INT* k, MKL_INT* l, MKL_Complex16* u,
                         const MKL_INT* ldu, MKL_Complex16* v, const MKL_INT* ldv,
                         MKL_Complex16* q, const MKL_INT* ldq, MKL_INT* iwork, double* rwork,
                         MKL_Complex16* tau, MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );

void __stdcall CGSVJ0( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d, float* sva,
                       const MKL_INT* mv, MKL_Complex8* v, const MKL_INT* ldv, const float* eps,
                       const float* sfmin, const float* tol, const MKL_INT* nsweep,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGSVJ0_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d, float* sva,
                        const MKL_INT* mv, MKL_Complex8* v, const MKL_INT* ldv, const float* eps,
                        const float* sfmin, const float* tol, const MKL_INT* nsweep,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgsvj0( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d, float* sva,
                       const MKL_INT* mv, MKL_Complex8* v, const MKL_INT* ldv, const float* eps,
                       const float* sfmin, const float* tol, const MKL_INT* nsweep,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgsvj0_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d, float* sva,
                        const MKL_INT* mv, MKL_Complex8* v, const MKL_INT* ldv, const float* eps,
                        const float* sfmin, const float* tol, const MKL_INT* nsweep,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGSVJ0( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* d, double* sva,
                       const MKL_INT* mv, MKL_Complex16* v, const MKL_INT* ldv,
                       const double* eps, const double* sfmin, const double* tol,
                       const MKL_INT* nsweep, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZGSVJ0_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* d, double* sva,
                        const MKL_INT* mv, MKL_Complex16* v, const MKL_INT* ldv,
                        const double* eps, const double* sfmin, const double* tol,
                        const MKL_INT* nsweep, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zgsvj0( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* d, double* sva,
                       const MKL_INT* mv, MKL_Complex16* v, const MKL_INT* ldv,
                       const double* eps, const double* sfmin, const double* tol,
                       const MKL_INT* nsweep, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zgsvj0_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* d, double* sva,
                        const MKL_INT* mv, MKL_Complex16* v, const MKL_INT* ldv,
                        const double* eps, const double* sfmin, const double* tol,
                        const MKL_INT* nsweep, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CGSVJ1( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* n1, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d,
                       float* sva, const MKL_INT* mv, MKL_Complex8* v, const MKL_INT* ldv,
                       const float* eps, const float* sfmin, const float* tol, const MKL_INT* nsweep,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGSVJ1_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* n1, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d,
                        float* sva, const MKL_INT* mv, MKL_Complex8* v, const MKL_INT* ldv,
                        const float* eps, const float* sfmin, const float* tol, const MKL_INT* nsweep,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgsvj1( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* n1, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d,
                       float* sva, const MKL_INT* mv, MKL_Complex8* v, const MKL_INT* ldv,
                       const float* eps, const float* sfmin, const float* tol, const MKL_INT* nsweep,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgsvj1_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* n1, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* d,
                        float* sva, const MKL_INT* mv, MKL_Complex8* v, const MKL_INT* ldv,
                        const float* eps, const float* sfmin, const float* tol, const MKL_INT* nsweep,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGSVJ1( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* n1, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* d, double* sva, const MKL_INT* mv, MKL_Complex16* v,
                       const MKL_INT* ldv, const double* eps, const double* sfmin,
                       const double* tol, const MKL_INT* nsweep, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGSVJ1_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* n1, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* d, double* sva, const MKL_INT* mv, MKL_Complex16* v,
                        const MKL_INT* ldv, const double* eps, const double* sfmin,
                        const double* tol, const MKL_INT* nsweep, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgsvj1( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* n1, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* d, double* sva, const MKL_INT* mv, MKL_Complex16* v,
                       const MKL_INT* ldv, const double* eps, const double* sfmin,
                       const double* tol, const MKL_INT* nsweep, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgsvj1_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* n1, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* d, double* sva, const MKL_INT* mv, MKL_Complex16* v,
                        const MKL_INT* ldv, const double* eps, const double* sfmin,
                        const double* tol, const MKL_INT* nsweep, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall CPOTRF2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall CPOTRF2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_INT* info );
void __stdcall cpotrf2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall cpotrf2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_INT* info );

void __stdcall DPOTRF2( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall DPOTRF2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                         const MKL_INT* lda, MKL_INT* info );
void __stdcall dpotrf2( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall dpotrf2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                         const MKL_INT* lda, MKL_INT* info );

void __stdcall SPOTRF2( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall SPOTRF2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                         const MKL_INT* lda, MKL_INT* info );
void __stdcall spotrf2( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall spotrf2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                         const MKL_INT* lda, MKL_INT* info );

void __stdcall ZPOTRF2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall ZPOTRF2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_INT* info );
void __stdcall zpotrf2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall zpotrf2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_INT* info );

void __stdcall DBDSVDX( const char* uplo, int uplo_len, const char* jobz, int jobz_len,
                        const char* range, int range_len, const MKL_INT* n, const double* d,
                        const double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, MKL_INT* ns, double* s, double* z, const MKL_INT* ldz,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DBDSVDX_( const char* uplo, int uplo_len, const char* jobz, int jobz_len,
                         const char* range, int range_len, const MKL_INT* n, const double* d,
                         const double* e, const double* vl, const double* vu, const MKL_INT* il,
                         const MKL_INT* iu, MKL_INT* ns, double* s, double* z, const MKL_INT* ldz,
                         double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dbdsvdx( const char* uplo, int uplo_len, const char* jobz, int jobz_len,
                        const char* range, int range_len, const MKL_INT* n, const double* d,
                        const double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, MKL_INT* ns, double* s, double* z, const MKL_INT* ldz,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dbdsvdx_( const char* uplo, int uplo_len, const char* jobz, int jobz_len,
                         const char* range, int range_len, const MKL_INT* n, const double* d,
                         const double* e, const double* vl, const double* vu, const MKL_INT* il,
                         const MKL_INT* iu, MKL_INT* ns, double* s, double* z, const MKL_INT* ldz,
                         double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SBDSVDX( const char* uplo, int uplo_len, const char* jobz, int jobz_len,
                        const char* range, int range_len, const MKL_INT* n, const float* d,
                        const float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, MKL_INT* ns, float* s, float* z, const MKL_INT* ldz,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SBDSVDX_( const char* uplo, int uplo_len, const char* jobz, int jobz_len,
                         const char* range, int range_len, const MKL_INT* n, const float* d,
                         const float* e, const float* vl, const float* vu, const MKL_INT* il,
                         const MKL_INT* iu, MKL_INT* ns, float* s, float* z, const MKL_INT* ldz,
                         float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sbdsvdx( const char* uplo, int uplo_len, const char* jobz, int jobz_len,
                        const char* range, int range_len, const MKL_INT* n, const float* d,
                        const float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, MKL_INT* ns, float* s, float* z, const MKL_INT* ldz,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sbdsvdx_( const char* uplo, int uplo_len, const char* jobz, int jobz_len,
                         const char* range, int range_len, const MKL_INT* n, const float* d,
                         const float* e, const float* vl, const float* vu, const MKL_INT* il,
                         const MKL_INT* iu, MKL_INT* ns, float* s, float* z, const MKL_INT* ldz,
                         float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall CGETRF2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall CGETRF2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                         MKL_INT* ipiv, MKL_INT* info );
void __stdcall cgetrf2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall cgetrf2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                         MKL_INT* ipiv, MKL_INT* info );

void __stdcall DGETRF2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall DGETRF2_( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                         MKL_INT* ipiv, MKL_INT* info );
void __stdcall dgetrf2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall dgetrf2_( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                         MKL_INT* ipiv, MKL_INT* info );

void __stdcall SGETRF2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall SGETRF2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                         MKL_INT* ipiv, MKL_INT* info );
void __stdcall sgetrf2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall sgetrf2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                         MKL_INT* ipiv, MKL_INT* info );

void __stdcall ZGETRF2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZGETRF2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                         MKL_INT* ipiv, MKL_INT* info );
void __stdcall zgetrf2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall zgetrf2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                         MKL_INT* ipiv, MKL_INT* info );

void __stdcall CGGEV3( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                       MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                       const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );
void __stdcall CGGEV3_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                        MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                        const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                        float* rwork, MKL_INT* info );
void __stdcall cggev3( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                       MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                       const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );
void __stdcall cggev3_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                        MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                        const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                        float* rwork, MKL_INT* info );

void __stdcall ZGGEV3( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                       MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                       const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );
void __stdcall ZGGEV3_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                        MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                        const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* info );
void __stdcall zggev3( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                       MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                       const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );
void __stdcall zggev3_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                        MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                        const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* info );

void __stdcall DGGEV3( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, double* alphar, double* alphai, double* beta,
                       double* vl, const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGGEV3_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, double* alphar, double* alphai, double* beta,
                        double* vl, const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dggev3( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, double* alphar, double* alphai, double* beta,
                       double* vl, const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dggev3_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, double* alphar, double* alphai, double* beta,
                        double* vl, const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGGEV3( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb, float* alphar, float* alphai, float* beta,
                       float* vl, const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGGEV3_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, float* alphar, float* alphai, float* beta,
                        float* vl, const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sggev3( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb, float* alphar, float* alphai, float* beta,
                       float* vl, const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sggev3_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, float* alphar, float* alphai, float* beta,
                        float* vl, const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                        float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNM22( const char* side, int side_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* n1, const MKL_INT* n2,
                       const MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CUNM22_( const char* side, int side_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* n1, const MKL_INT* n2,
                        const MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall cunm22( const char* side, int side_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* n1, const MKL_INT* n2,
                       const MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall cunm22_( const char* side, int side_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* n1, const MKL_INT* n2,
                        const MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall ZUNM22( const char* side, int side_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* n1, const MKL_INT* n2,
                       const MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZUNM22_( const char* side, int side_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* n1, const MKL_INT* n2,
                        const MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zunm22( const char* side, int side_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* n1, const MKL_INT* n2,
                       const MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zunm22_( const char* side, int side_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* n1, const MKL_INT* n2,
                        const MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CGGHD3( const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGGHD3_( const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgghd3( const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgghd3_( const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGGHD3( const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       double* q, const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGGHD3_( const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* q, const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgghd3( const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       double* q, const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgghd3_( const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* q, const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                        double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGGHD3( const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       float* q, const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGGHD3_( const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* q, const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgghd3( const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       float* q, const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgghd3_( const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* q, const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                        float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGGHD3( const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGGHD3_( const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgghd3( const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgghd3_( const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CGGES3( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                       const char* sort, int sort_len, MKL_C_SELECT_FUNCTION_2 selctg, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* sdim, MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* vsl,
                       const MKL_INT* ldvsl, MKL_Complex8* vsr, const MKL_INT* ldvsr,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork, MKL_INT* bwork,
                       MKL_INT* info );
void __stdcall CGGES3_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                        const char* sort, int sort_len, MKL_C_SELECT_FUNCTION_2 selctg, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_INT* sdim, MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* vsl,
                        const MKL_INT* ldvsl, MKL_Complex8* vsr, const MKL_INT* ldvsr,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork, MKL_INT* bwork,
                        MKL_INT* info );
void __stdcall cgges3( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                       const char* sort, int sort_len, MKL_C_SELECT_FUNCTION_2 selctg, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* sdim, MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* vsl,
                       const MKL_INT* ldvsl, MKL_Complex8* vsr, const MKL_INT* ldvsr,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork, MKL_INT* bwork,
                       MKL_INT* info );
void __stdcall cgges3_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                        const char* sort, int sort_len, MKL_C_SELECT_FUNCTION_2 selctg, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_INT* sdim, MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* vsl,
                        const MKL_INT* ldvsl, MKL_Complex8* vsr, const MKL_INT* ldvsr,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork, MKL_INT* bwork,
                        MKL_INT* info );

void __stdcall ZGGES3( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                       const char* sort, int sort_len, MKL_Z_SELECT_FUNCTION_2 selctg, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* sdim, MKL_Complex16* alpha, MKL_Complex16* beta,
                       MKL_Complex16* vsl, const MKL_INT* ldvsl, MKL_Complex16* vsr,
                       const MKL_INT* ldvsr, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall ZGGES3_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                        const char* sort, int sort_len, MKL_Z_SELECT_FUNCTION_2 selctg, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* sdim, MKL_Complex16* alpha, MKL_Complex16* beta,
                        MKL_Complex16* vsl, const MKL_INT* ldvsl, MKL_Complex16* vsr,
                        const MKL_INT* ldvsr, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall zgges3( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                       const char* sort, int sort_len, MKL_Z_SELECT_FUNCTION_2 selctg, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* sdim, MKL_Complex16* alpha, MKL_Complex16* beta,
                       MKL_Complex16* vsl, const MKL_INT* ldvsl, MKL_Complex16* vsr,
                       const MKL_INT* ldvsr, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall zgges3_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                        const char* sort, int sort_len, MKL_Z_SELECT_FUNCTION_2 selctg, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* sdim, MKL_Complex16* alpha, MKL_Complex16* beta,
                        MKL_Complex16* vsl, const MKL_INT* ldvsl, MKL_Complex16* vsr,
                        const MKL_INT* ldvsr, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* bwork, MKL_INT* info );

void __stdcall DGGES3( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                       const char* sort, int sort_len, MKL_D_SELECT_FUNCTION_3 selctg, const MKL_INT* n,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       MKL_INT* sdim, double* alphar, double* alphai, double* beta,
                       double* vsl, const MKL_INT* ldvsl, double* vsr, const MKL_INT* ldvsr,
                       double* work, const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall DGGES3_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                        const char* sort, int sort_len, MKL_D_SELECT_FUNCTION_3 selctg, const MKL_INT* n,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        MKL_INT* sdim, double* alphar, double* alphai, double* beta,
                        double* vsl, const MKL_INT* ldvsl, double* vsr, const MKL_INT* ldvsr,
                        double* work, const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall dgges3( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                       const char* sort, int sort_len, MKL_D_SELECT_FUNCTION_3 selctg, const MKL_INT* n,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       MKL_INT* sdim, double* alphar, double* alphai, double* beta,
                       double* vsl, const MKL_INT* ldvsl, double* vsr, const MKL_INT* ldvsr,
                       double* work, const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall dgges3_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                        const char* sort, int sort_len, MKL_D_SELECT_FUNCTION_3 selctg, const MKL_INT* n,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        MKL_INT* sdim, double* alphar, double* alphai, double* beta,
                        double* vsl, const MKL_INT* ldvsl, double* vsr, const MKL_INT* ldvsr,
                        double* work, const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );

void __stdcall SGGES3( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                       const char* sort, int sort_len, MKL_S_SELECT_FUNCTION_3 selctg, const MKL_INT* n,
                       float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       MKL_INT* sdim, float* alphar, float* alphai, float* beta,
                       float* vsl, const MKL_INT* ldvsl, float* vsr, const MKL_INT* ldvsr,
                       float* work, const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall SGGES3_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                        const char* sort, int sort_len, MKL_S_SELECT_FUNCTION_3 selctg, const MKL_INT* n,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        MKL_INT* sdim, float* alphar, float* alphai, float* beta,
                        float* vsl, const MKL_INT* ldvsl, float* vsr, const MKL_INT* ldvsr,
                        float* work, const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall sgges3( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                       const char* sort, int sort_len, MKL_S_SELECT_FUNCTION_3 selctg, const MKL_INT* n,
                       float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       MKL_INT* sdim, float* alphar, float* alphai, float* beta,
                       float* vsl, const MKL_INT* ldvsl, float* vsr, const MKL_INT* ldvsr,
                       float* work, const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall sgges3_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len,
                        const char* sort, int sort_len, MKL_S_SELECT_FUNCTION_3 selctg, const MKL_INT* n,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        MKL_INT* sdim, float* alphar, float* alphai, float* beta,
                        float* vsl, const MKL_INT* ldvsl, float* vsr, const MKL_INT* ldvsr,
                        float* work, const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );

void __stdcall DORM22( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* n1, const MKL_INT* n2, const double* q,
                       const MKL_INT* ldq, double* c, const MKL_INT* ldc,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DORM22_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* n1, const MKL_INT* n2, const double* q,
                        const MKL_INT* ldq, double* c, const MKL_INT* ldc,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorm22( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* n1, const MKL_INT* n2, const double* q,
                       const MKL_INT* ldq, double* c, const MKL_INT* ldc,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorm22_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* n1, const MKL_INT* n2, const double* q,
                        const MKL_INT* ldq, double* c, const MKL_INT* ldc,
                        double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SORM22( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* n1, const MKL_INT* n2, const float* q,
                       const MKL_INT* ldq, float* c, const MKL_INT* ldc,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SORM22_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* n1, const MKL_INT* n2, const float* q,
                        const MKL_INT* ldq, float* c, const MKL_INT* ldc,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorm22( const char* side, int side_len, const char* trans,
                       int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* n1, const MKL_INT* n2, const float* q,
                       const MKL_INT* ldq, float* c, const MKL_INT* ldc,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorm22_( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* n1, const MKL_INT* n2, const float* q,
                        const MKL_INT* ldq, float* c, const MKL_INT* ldc,
                        float* work, const MKL_INT* lwork, MKL_INT* info );


/* LAPACK 3.5.0 routines */

void __stdcall CHECON_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                            float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall CHECON_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                             float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall checon_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                            float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall checon_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                             float* rcond, MKL_Complex8* work, MKL_INT* info );

void __stdcall CHESV_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                           MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                           const MKL_INT* lwork, MKL_INT* info );
void __stdcall CHESV_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                            const MKL_INT* lwork, MKL_INT* info );
void __stdcall chesv_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                           MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                           const MKL_INT* lwork, MKL_INT* info );
void __stdcall chesv_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                            const MKL_INT* lwork, MKL_INT* info );

void __stdcall CHETF2_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall CHETF2_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall chetf2_rook( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall chetf2_rook_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall CHETRF_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                            const MKL_INT* lwork, MKL_INT* info );
void __stdcall CHETRF_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetrf_rook( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                            const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetrf_rook_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                             const MKL_INT* lwork, MKL_INT* info );

void __stdcall CHETRI_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                            MKL_INT* info );
void __stdcall CHETRI_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                             MKL_INT* info );
void __stdcall chetri_rook( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                            MKL_INT* info );
void __stdcall chetri_rook_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                             MKL_INT* info );

void __stdcall CHETRS_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                            MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall CHETRS_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                             const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                             MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall chetrs_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                            MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall chetrs_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                             const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                             MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall CLAHEF_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                            MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall CLAHEF_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                             MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                             MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall clahef_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                            MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall clahef_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                             MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                             MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall CLASYF_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                            MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall CLASYF_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                             MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                             MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall clasyf_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                            MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall clasyf_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                             MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                             MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall CSYCON_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                            float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall CSYCON_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                             float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall csycon_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                            float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall csycon_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                             float* rcond, MKL_Complex8* work, MKL_INT* info );

void __stdcall CSYSV_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                           MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                           const MKL_INT* lwork, MKL_INT* info );
void __stdcall CSYSV_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                            const MKL_INT* lwork, MKL_INT* info );
void __stdcall csysv_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                           MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                           const MKL_INT* lwork, MKL_INT* info );
void __stdcall csysv_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                            const MKL_INT* lwork, MKL_INT* info );

void __stdcall CSYTF2_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall CSYTF2_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall csytf2_rook( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall csytf2_rook_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall CSYTRF_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                            const MKL_INT* lwork, MKL_INT* info );
void __stdcall CSYTRF_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall csytrf_rook( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                            const MKL_INT* lwork, MKL_INT* info );
void __stdcall csytrf_rook_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                             const MKL_INT* lwork, MKL_INT* info );

void __stdcall CSYTRI_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                            MKL_INT* info );
void __stdcall CSYTRI_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                             MKL_INT* info );
void __stdcall csytri_rook( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                            MKL_INT* info );
void __stdcall csytri_rook_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                             MKL_INT* info );

void __stdcall CSYTRS_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                            MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall CSYTRS_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                             const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                             MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall csytrs_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                            MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall csytrs_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                             const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                             MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall DLASYF_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                            MKL_INT* kb, double* a, const MKL_INT* lda, MKL_INT* ipiv,
                            double* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall DLASYF_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                             MKL_INT* kb, double* a, const MKL_INT* lda, MKL_INT* ipiv,
                             double* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall dlasyf_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                            MKL_INT* kb, double* a, const MKL_INT* lda, MKL_INT* ipiv,
                            double* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall dlasyf_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                             MKL_INT* kb, double* a, const MKL_INT* lda, MKL_INT* ipiv,
                             double* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall DSYCON_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                            double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DSYCON_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                             double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dsycon_rook( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                            double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dsycon_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                             double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DSYSV_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, double* a,
                           const MKL_INT* lda, MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                           double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSYSV_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            double* a, const MKL_INT* lda, MKL_INT* ipiv, double* b,
                            const MKL_INT* ldb, double* work, const MKL_INT* lwork,
                            MKL_INT* info );
void __stdcall dsysv_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, double* a,
                           const MKL_INT* lda, MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                           double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsysv_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            double* a, const MKL_INT* lda, MKL_INT* ipiv, double* b,
                            const MKL_INT* ldb, double* work, const MKL_INT* lwork,
                            MKL_INT* info );

void __stdcall DSYTF2_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                            MKL_INT* ipiv, MKL_INT* info );
void __stdcall DSYTF2_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall dsytf2_rook( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                            MKL_INT* ipiv, MKL_INT* info );
void __stdcall dsytf2_rook_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall DSYTRF_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                            MKL_INT* ipiv, double* work, const MKL_INT* lwork,
                            MKL_INT* info );
void __stdcall DSYTRF_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                             const MKL_INT* lda, MKL_INT* ipiv, double* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytrf_rook( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                            MKL_INT* ipiv, double* work, const MKL_INT* lwork,
                            MKL_INT* info );
void __stdcall dsytrf_rook_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                             const MKL_INT* lda, MKL_INT* ipiv, double* work,
                             const MKL_INT* lwork, MKL_INT* info );

void __stdcall DSYTRI_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                            const MKL_INT* ipiv, double* work, MKL_INT* info );
void __stdcall DSYTRI_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, double* work,
                             MKL_INT* info );
void __stdcall dsytri_rook( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                            const MKL_INT* ipiv, double* work, MKL_INT* info );
void __stdcall dsytri_rook_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, double* work,
                             MKL_INT* info );

void __stdcall DSYTRS_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                            double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DSYTRS_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                             const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                             double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dsytrs_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                            double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dsytrs_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                             const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                             double* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall SLASYF_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                            MKL_INT* kb, float* a, const MKL_INT* lda, MKL_INT* ipiv,
                            float* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall SLASYF_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                             MKL_INT* kb, float* a, const MKL_INT* lda, MKL_INT* ipiv,
                             float* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall slasyf_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                            MKL_INT* kb, float* a, const MKL_INT* lda, MKL_INT* ipiv,
                            float* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall slasyf_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                             MKL_INT* kb, float* a, const MKL_INT* lda, MKL_INT* ipiv,
                             float* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall SSYCON_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                            float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SSYCON_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                             float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall ssycon_rook( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                            float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall ssycon_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                             float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SSYSV_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                           const MKL_INT* lda, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                           float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYSV_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                            const MKL_INT* lda, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                            float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssysv_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                           const MKL_INT* lda, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                           float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssysv_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                            const MKL_INT* lda, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                            float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SSYTF2_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                            MKL_INT* ipiv, MKL_INT* info );
void __stdcall SSYTF2_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                             MKL_INT* ipiv, MKL_INT* info );
void __stdcall ssytf2_rook( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                            MKL_INT* ipiv, MKL_INT* info );
void __stdcall ssytf2_rook_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                             MKL_INT* ipiv, MKL_INT* info );

void __stdcall SSYTRF_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                            MKL_INT* ipiv, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYTRF_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                             MKL_INT* ipiv, float* work, const MKL_INT* lwork,
                             MKL_INT* info );
void __stdcall ssytrf_rook( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                            MKL_INT* ipiv, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytrf_rook_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                             MKL_INT* ipiv, float* work, const MKL_INT* lwork,
                             MKL_INT* info );

void __stdcall SSYTRI_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                            const MKL_INT* ipiv, float* work, MKL_INT* info );
void __stdcall SSYTRI_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                             const MKL_INT* ipiv, float* work, MKL_INT* info );
void __stdcall ssytri_rook( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                            const MKL_INT* ipiv, float* work, MKL_INT* info );
void __stdcall ssytri_rook_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                             const MKL_INT* ipiv, float* work, MKL_INT* info );

void __stdcall SSYTRS_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            const float* a, const MKL_INT* lda, const MKL_INT* ipiv, float* b,
                            const MKL_INT* ldb, MKL_INT* info );
void __stdcall SSYTRS_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                             const float* a, const MKL_INT* lda, const MKL_INT* ipiv,
                             float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ssytrs_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            const float* a, const MKL_INT* lda, const MKL_INT* ipiv, float* b,
                            const MKL_INT* ldb, MKL_INT* info );
void __stdcall ssytrs_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                             const float* a, const MKL_INT* lda, const MKL_INT* ipiv,
                             float* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZHECON_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                            double* rcond, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZHECON_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                             double* rcond, MKL_Complex16* work, MKL_INT* info );
void __stdcall zhecon_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                            double* rcond, MKL_Complex16* work, MKL_INT* info );
void __stdcall zhecon_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                             double* rcond, MKL_Complex16* work, MKL_INT* info );

void __stdcall ZHESV_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                           MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                           const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZHESV_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                            const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhesv_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                           MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                           const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhesv_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                            const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZHETF2_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZHETF2_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zhetf2_rook( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zhetf2_rook_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall ZHETRF_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                            const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZHETRF_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetrf_rook( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                            const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetrf_rook_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                             const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZHETRI_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                            MKL_INT* info );
void __stdcall ZHETRI_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                             MKL_INT* info );
void __stdcall zhetri_rook( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                            MKL_INT* info );
void __stdcall zhetri_rook_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                             MKL_INT* info );

void __stdcall ZHETRS_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                            MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZHETRS_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                             const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                             MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhetrs_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                            MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhetrs_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                             const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                             MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZLAHEF_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                            MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall ZLAHEF_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                             MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                             MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall zlahef_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                            MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall zlahef_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                             MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                             MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall ZLASYF_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                            MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall ZLASYF_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                             MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                             MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall zlasyf_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                            MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall zlasyf_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                             MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                             MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall ZSYCON_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                            double* rcond, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZSYCON_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                             double* rcond, MKL_Complex16* work, MKL_INT* info );
void __stdcall zsycon_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                            double* rcond, MKL_Complex16* work, MKL_INT* info );
void __stdcall zsycon_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                             double* rcond, MKL_Complex16* work, MKL_INT* info );

void __stdcall ZSYSV_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                           MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                           const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZSYSV_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                            const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsysv_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                           MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                           MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                           const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsysv_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                            MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                            const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZSYTF2_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZSYTF2_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zsytf2_rook( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zsytf2_rook_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall ZSYTRF_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                            const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZSYTRF_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                             const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsytrf_rook( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                            const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                            const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsytrf_rook_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                             const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZSYTRI_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                            MKL_INT* info );
void __stdcall ZSYTRI_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                             MKL_INT* info );
void __stdcall zsytri_rook( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                            const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                            MKL_INT* info );
void __stdcall zsytri_rook_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                             const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                             MKL_INT* info );

void __stdcall ZSYTRS_ROOK( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                            MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZSYTRS_ROOK_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                             const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                             MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zsytrs_rook( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                            const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                            MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zsytrs_rook_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                             const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                             MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );







void __stdcall CUNBDB1( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNBDB1_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                         MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunbdb1( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunbdb1_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                         MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNBDB2( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNBDB2_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                         MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunbdb2( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunbdb2_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                         MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNBDB3( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNBDB3_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                         MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunbdb3( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunbdb3_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                         MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNBDB4( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                        MKL_Complex8* phantom, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall CUNBDB4_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                         MKL_Complex8* phantom, MKL_Complex8* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall cunbdb4( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                        MKL_Complex8* phantom, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall cunbdb4_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         MKL_Complex8* taup1, MKL_Complex8* taup2, MKL_Complex8* tauq1,
                         MKL_Complex8* phantom, MKL_Complex8* work, const MKL_INT* lwork,
                         MKL_INT* info );

void __stdcall CUNBDB5( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        MKL_Complex8* x1, const MKL_INT* incx1, MKL_Complex8* x2,
                        const MKL_INT* incx2, MKL_Complex8* q1, const MKL_INT* ldq1,
                        MKL_Complex8* q2, const MKL_INT* ldq2, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNBDB5_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         MKL_Complex8* x1, const MKL_INT* incx1, MKL_Complex8* x2,
                         const MKL_INT* incx2, MKL_Complex8* q1, const MKL_INT* ldq1,
                         MKL_Complex8* q2, const MKL_INT* ldq2, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunbdb5( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        MKL_Complex8* x1, const MKL_INT* incx1, MKL_Complex8* x2,
                        const MKL_INT* incx2, MKL_Complex8* q1, const MKL_INT* ldq1,
                        MKL_Complex8* q2, const MKL_INT* ldq2, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunbdb5_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         MKL_Complex8* x1, const MKL_INT* incx1, MKL_Complex8* x2,
                         const MKL_INT* incx2, MKL_Complex8* q1, const MKL_INT* ldq1,
                         MKL_Complex8* q2, const MKL_INT* ldq2, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNBDB6( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        MKL_Complex8* x1, const MKL_INT* incx1, MKL_Complex8* x2,
                        const MKL_INT* incx2, MKL_Complex8* q1, const MKL_INT* ldq1,
                        MKL_Complex8* q2, const MKL_INT* ldq2, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNBDB6_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         MKL_Complex8* x1, const MKL_INT* incx1, MKL_Complex8* x2,
                         const MKL_INT* incx2, MKL_Complex8* q1, const MKL_INT* ldq1,
                         MKL_Complex8* q2, const MKL_INT* ldq2, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunbdb6( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        MKL_Complex8* x1, const MKL_INT* incx1, MKL_Complex8* x2,
                        const MKL_INT* incx2, MKL_Complex8* q1, const MKL_INT* ldq1,
                        MKL_Complex8* q2, const MKL_INT* ldq2, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunbdb6_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         MKL_Complex8* x1, const MKL_INT* incx1, MKL_Complex8* x2,
                         const MKL_INT* incx2, MKL_Complex8* q1, const MKL_INT* ldq1,
                         MKL_Complex8* q2, const MKL_INT* ldq2, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNCSD2BY1( const char* jobu1, int jobu1_len, const char* jobu2,
                           int jobu2_len, const char* jobv1t, int jobv1t_len,
                           const MKL_INT* m, const MKL_INT* p,
                           const MKL_INT* q, MKL_Complex8* x11,
                           const MKL_INT* ldx11, MKL_Complex8* x21,
                           const MKL_INT* ldx21, float* theta,
                           MKL_Complex8* u1, const MKL_INT* ldu1,
                           MKL_Complex8* u2, const MKL_INT* ldu2,
                           MKL_Complex8* v1t, const MKL_INT* ldv1t,
                           MKL_Complex8* work, const MKL_INT* lwork,
                           float* rwork, const MKL_INT* lrwork, MKL_INT* iwork,
                           MKL_INT* info );
void __stdcall CUNCSD2BY1_( const char* jobu1, int jobu1_len,
                            const char* jobu2, int jobu2_len,
                            const char* jobv1t, int jobv1t_len,
                            const MKL_INT* m, const MKL_INT* p,
                            const MKL_INT* q, MKL_Complex8* x11,
                            const MKL_INT* ldx11, MKL_Complex8* x21,
                            const MKL_INT* ldx21, float* theta,
                            MKL_Complex8* u1, const MKL_INT* ldu1,
                            MKL_Complex8* u2, const MKL_INT* ldu2,
                            MKL_Complex8* v1t, const MKL_INT* ldv1t,
                            MKL_Complex8* work, const MKL_INT* lwork,
                            float* rwork, const MKL_INT* lrwork,
                            MKL_INT* iwork, MKL_INT* info );
void __stdcall cuncsd2by1( const char* jobu1, int jobu1_len, const char* jobu2,
                           int jobu2_len, const char* jobv1t, int jobv1t_len,
                           const MKL_INT* m, const MKL_INT* p,
                           const MKL_INT* q, MKL_Complex8* x11,
                           const MKL_INT* ldx11, MKL_Complex8* x21,
                           const MKL_INT* ldx21, float* theta,
                           MKL_Complex8* u1, const MKL_INT* ldu1,
                           MKL_Complex8* u2, const MKL_INT* ldu2,
                           MKL_Complex8* v1t, const MKL_INT* ldv1t,
                           MKL_Complex8* work, const MKL_INT* lwork,
                           float* rwork, const MKL_INT* lrwork, MKL_INT* iwork,
                           MKL_INT* info );
void __stdcall cuncsd2by1_( const char* jobu1, int jobu1_len,
                            const char* jobu2, int jobu2_len,
                            const char* jobv1t, int jobv1t_len,
                            const MKL_INT* m, const MKL_INT* p,
                            const MKL_INT* q, MKL_Complex8* x11,
                            const MKL_INT* ldx11, MKL_Complex8* x21,
                            const MKL_INT* ldx21, float* theta,
                            MKL_Complex8* u1, const MKL_INT* ldu1,
                            MKL_Complex8* u2, const MKL_INT* ldu2,
                            MKL_Complex8* v1t, const MKL_INT* ldv1t,
                            MKL_Complex8* work, const MKL_INT* lwork,
                            float* rwork, const MKL_INT* lrwork,
                            MKL_INT* iwork, MKL_INT* info );

void __stdcall DORBDB1( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        double* x11, const MKL_INT* ldx11, double* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        double* taup1, double* taup2, double* tauq1,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DORBDB1_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         double* x11, const MKL_INT* ldx11, double* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         double* taup1, double* taup2, double* tauq1,
                         double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorbdb1( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        double* x11, const MKL_INT* ldx11, double* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        double* taup1, double* taup2, double* tauq1,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorbdb1_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         double* x11, const MKL_INT* ldx11, double* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         double* taup1, double* taup2, double* tauq1,
                         double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORBDB2( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        double* x11, const MKL_INT* ldx11, double* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        double* taup1, double* taup2, double* tauq1,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DORBDB2_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         double* x11, const MKL_INT* ldx11, double* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         double* taup1, double* taup2, double* tauq1,
                         double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorbdb2( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        double* x11, const MKL_INT* ldx11, double* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        double* taup1, double* taup2, double* tauq1,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorbdb2_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         double* x11, const MKL_INT* ldx11, double* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         double* taup1, double* taup2, double* tauq1,
                         double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORBDB3( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        double* x11, const MKL_INT* ldx11, double* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        double* taup1, double* taup2, double* tauq1,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DORBDB3_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         double* x11, const MKL_INT* ldx11, double* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         double* taup1, double* taup2, double* tauq1,
                         double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorbdb3( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        double* x11, const MKL_INT* ldx11, double* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        double* taup1, double* taup2, double* tauq1,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorbdb3_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         double* x11, const MKL_INT* ldx11, double* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         double* taup1, double* taup2, double* tauq1,
                         double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORBDB4( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        double* x11, const MKL_INT* ldx11, double* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        double* taup1, double* taup2, double* tauq1,
                        double* phantom, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall DORBDB4_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         double* x11, const MKL_INT* ldx11, double* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         double* taup1, double* taup2, double* tauq1,
                         double* phantom, double* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall dorbdb4( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        double* x11, const MKL_INT* ldx11, double* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        double* taup1, double* taup2, double* tauq1,
                        double* phantom, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dorbdb4_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         double* x11, const MKL_INT* ldx11, double* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         double* taup1, double* taup2, double* tauq1,
                         double* phantom, double* work, const MKL_INT* lwork,
                         MKL_INT* info );

void __stdcall DORBDB5( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        double* x1, const MKL_INT* incx1, double* x2,
                        const MKL_INT* incx2, double* q1, const MKL_INT* ldq1,
                        double* q2, const MKL_INT* ldq2, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall DORBDB5_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         double* x1, const MKL_INT* incx1, double* x2,
                         const MKL_INT* incx2, double* q1, const MKL_INT* ldq1,
                         double* q2, const MKL_INT* ldq2, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorbdb5( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        double* x1, const MKL_INT* incx1, double* x2,
                        const MKL_INT* incx2, double* q1, const MKL_INT* ldq1,
                        double* q2, const MKL_INT* ldq2, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorbdb5_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         double* x1, const MKL_INT* incx1, double* x2,
                         const MKL_INT* incx2, double* q1, const MKL_INT* ldq1,
                         double* q2, const MKL_INT* ldq2, double* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORBDB6( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        double* x1, const MKL_INT* incx1, double* x2,
                        const MKL_INT* incx2, double* q1, const MKL_INT* ldq1,
                        double* q2, const MKL_INT* ldq2, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall DORBDB6_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         double* x1, const MKL_INT* incx1, double* x2,
                         const MKL_INT* incx2, double* q1, const MKL_INT* ldq1,
                         double* q2, const MKL_INT* ldq2, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorbdb6( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        double* x1, const MKL_INT* incx1, double* x2,
                        const MKL_INT* incx2, double* q1, const MKL_INT* ldq1,
                        double* q2, const MKL_INT* ldq2, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorbdb6_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         double* x1, const MKL_INT* incx1, double* x2,
                         const MKL_INT* incx2, double* q1, const MKL_INT* ldq1,
                         double* q2, const MKL_INT* ldq2, double* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORCSD2BY1( const char* jobu1, int jobu1_len, const char* jobu2,
                           int jobu2_len, const char* jobv1t, int jobv1t_len,
                           const MKL_INT* m, const MKL_INT* p,
                           const MKL_INT* q, double* x11, const MKL_INT* ldx11,
                           double* x21, const MKL_INT* ldx21, double* theta,
                           double* u1, const MKL_INT* ldu1, double* u2,
                           const MKL_INT* ldu2, double* v1t,
                           const MKL_INT* ldv1t, double* work,
                           const MKL_INT* lwork, MKL_INT* iwork,
                           MKL_INT* info );
void __stdcall DORCSD2BY1_( const char* jobu1, int jobu1_len,
                            const char* jobu2, int jobu2_len,
                            const char* jobv1t, int jobv1t_len,
                            const MKL_INT* m, const MKL_INT* p,
                            const MKL_INT* q, double* x11,
                            const MKL_INT* ldx11, double* x21,
                            const MKL_INT* ldx21, double* theta, double* u1,
                            const MKL_INT* ldu1, double* u2,
                            const MKL_INT* ldu2, double* v1t,
                            const MKL_INT* ldv1t, double* work,
                            const MKL_INT* lwork, MKL_INT* iwork,
                            MKL_INT* info );
void __stdcall dorcsd2by1( const char* jobu1, int jobu1_len, const char* jobu2,
                           int jobu2_len, const char* jobv1t, int jobv1t_len,
                           const MKL_INT* m, const MKL_INT* p,
                           const MKL_INT* q, double* x11, const MKL_INT* ldx11,
                           double* x21, const MKL_INT* ldx21, double* theta,
                           double* u1, const MKL_INT* ldu1, double* u2,
                           const MKL_INT* ldu2, double* v1t,
                           const MKL_INT* ldv1t, double* work,
                           const MKL_INT* lwork, MKL_INT* iwork,
                           MKL_INT* info );
void __stdcall dorcsd2by1_( const char* jobu1, int jobu1_len,
                            const char* jobu2, int jobu2_len,
                            const char* jobv1t, int jobv1t_len,
                            const MKL_INT* m, const MKL_INT* p,
                            const MKL_INT* q, double* x11,
                            const MKL_INT* ldx11, double* x21,
                            const MKL_INT* ldx21, double* theta, double* u1,
                            const MKL_INT* ldu1, double* u2,
                            const MKL_INT* ldu2, double* v1t,
                            const MKL_INT* ldv1t, double* work,
                            const MKL_INT* lwork, MKL_INT* iwork,
                            MKL_INT* info );

void __stdcall SORBDB1( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        float* x11, const MKL_INT* ldx11, float* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        float* taup1, float* taup2, float* tauq1,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SORBDB1_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         float* x11, const MKL_INT* ldx11, float* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         float* taup1, float* taup2, float* tauq1,
                         float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorbdb1( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        float* x11, const MKL_INT* ldx11, float* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        float* taup1, float* taup2, float* tauq1,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorbdb1_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         float* x11, const MKL_INT* ldx11, float* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         float* taup1, float* taup2, float* tauq1,
                         float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SORBDB2( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        float* x11, const MKL_INT* ldx11, float* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        float* taup1, float* taup2, float* tauq1,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SORBDB2_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         float* x11, const MKL_INT* ldx11, float* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         float* taup1, float* taup2, float* tauq1,
                         float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorbdb2( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        float* x11, const MKL_INT* ldx11, float* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        float* taup1, float* taup2, float* tauq1,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorbdb2_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         float* x11, const MKL_INT* ldx11, float* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         float* taup1, float* taup2, float* tauq1,
                         float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SORBDB3( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        float* x11, const MKL_INT* ldx11, float* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        float* taup1, float* taup2, float* tauq1,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SORBDB3_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         float* x11, const MKL_INT* ldx11, float* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         float* taup1, float* taup2, float* tauq1,
                         float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorbdb3( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        float* x11, const MKL_INT* ldx11, float* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        float* taup1, float* taup2, float* tauq1,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorbdb3_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         float* x11, const MKL_INT* ldx11, float* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         float* taup1, float* taup2, float* tauq1,
                         float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SORBDB4( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        float* x11, const MKL_INT* ldx11, float* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        float* taup1, float* taup2, float* tauq1,
                        float* phantom, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall SORBDB4_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         float* x11, const MKL_INT* ldx11, float* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         float* taup1, float* taup2, float* tauq1,
                         float* phantom, float* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall sorbdb4( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        float* x11, const MKL_INT* ldx11, float* x21,
                        const MKL_INT* ldx21, float* theta, float* phi,
                        float* taup1, float* taup2, float* tauq1,
                        float* phantom, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sorbdb4_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         float* x11, const MKL_INT* ldx11, float* x21,
                         const MKL_INT* ldx21, float* theta, float* phi,
                         float* taup1, float* taup2, float* tauq1,
                         float* phantom, float* work, const MKL_INT* lwork,
                         MKL_INT* info );

void __stdcall SORBDB5( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        float* x1, const MKL_INT* incx1, float* x2,
                        const MKL_INT* incx2, float* q1, const MKL_INT* ldq1,
                        float* q2, const MKL_INT* ldq2, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall SORBDB5_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         float* x1, const MKL_INT* incx1, float* x2,
                         const MKL_INT* incx2, float* q1, const MKL_INT* ldq1,
                         float* q2, const MKL_INT* ldq2, float* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorbdb5( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        float* x1, const MKL_INT* incx1, float* x2,
                        const MKL_INT* incx2, float* q1, const MKL_INT* ldq1,
                        float* q2, const MKL_INT* ldq2, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorbdb5_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         float* x1, const MKL_INT* incx1, float* x2,
                         const MKL_INT* incx2, float* q1, const MKL_INT* ldq1,
                         float* q2, const MKL_INT* ldq2, float* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall SORBDB6( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        float* x1, const MKL_INT* incx1, float* x2,
                        const MKL_INT* incx2, float* q1, const MKL_INT* ldq1,
                        float* q2, const MKL_INT* ldq2, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall SORBDB6_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         float* x1, const MKL_INT* incx1, float* x2,
                         const MKL_INT* incx2, float* q1, const MKL_INT* ldq1,
                         float* q2, const MKL_INT* ldq2, float* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorbdb6( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        float* x1, const MKL_INT* incx1, float* x2,
                        const MKL_INT* incx2, float* q1, const MKL_INT* ldq1,
                        float* q2, const MKL_INT* ldq2, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorbdb6_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         float* x1, const MKL_INT* incx1, float* x2,
                         const MKL_INT* incx2, float* q1, const MKL_INT* ldq1,
                         float* q2, const MKL_INT* ldq2, float* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall SORCSD2BY1( const char* jobu1, int jobu1_len, const char* jobu2,
                           int jobu2_len, const char* jobv1t, int jobv1t_len,
                           const MKL_INT* m, const MKL_INT* p,
                           const MKL_INT* q, float* x11, const MKL_INT* ldx11,
                           float* x21, const MKL_INT* ldx21, float* theta,
                           float* u1, const MKL_INT* ldu1, float* u2,
                           const MKL_INT* ldu2, float* v1t,
                           const MKL_INT* ldv1t, float* work,
                           const MKL_INT* lwork, MKL_INT* iwork,
                           MKL_INT* info );
void __stdcall SORCSD2BY1_( const char* jobu1, int jobu1_len,
                            const char* jobu2, int jobu2_len,
                            const char* jobv1t, int jobv1t_len,
                            const MKL_INT* m, const MKL_INT* p,
                            const MKL_INT* q, float* x11, const MKL_INT* ldx11,
                            float* x21, const MKL_INT* ldx21, float* theta,
                            float* u1, const MKL_INT* ldu1, float* u2,
                            const MKL_INT* ldu2, float* v1t,
                            const MKL_INT* ldv1t, float* work,
                            const MKL_INT* lwork, MKL_INT* iwork,
                            MKL_INT* info );
void __stdcall sorcsd2by1( const char* jobu1, int jobu1_len, const char* jobu2,
                           int jobu2_len, const char* jobv1t, int jobv1t_len,
                           const MKL_INT* m, const MKL_INT* p,
                           const MKL_INT* q, float* x11, const MKL_INT* ldx11,
                           float* x21, const MKL_INT* ldx21, float* theta,
                           float* u1, const MKL_INT* ldu1, float* u2,
                           const MKL_INT* ldu2, float* v1t,
                           const MKL_INT* ldv1t, float* work,
                           const MKL_INT* lwork, MKL_INT* iwork,
                           MKL_INT* info );
void __stdcall sorcsd2by1_( const char* jobu1, int jobu1_len,
                            const char* jobu2, int jobu2_len,
                            const char* jobv1t, int jobv1t_len,
                            const MKL_INT* m, const MKL_INT* p,
                            const MKL_INT* q, float* x11, const MKL_INT* ldx11,
                            float* x21, const MKL_INT* ldx21, float* theta,
                            float* u1, const MKL_INT* ldu1, float* u2,
                            const MKL_INT* ldu2, float* v1t,
                            const MKL_INT* ldv1t, float* work,
                            const MKL_INT* lwork, MKL_INT* iwork,
                            MKL_INT* info );

void __stdcall ZUNBDB1( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNBDB1_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                         MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunbdb1( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunbdb1_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                         MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNBDB2( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNBDB2_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                         MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunbdb2( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunbdb2_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                         MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNBDB3( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNBDB3_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                         MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunbdb3( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunbdb3_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                         MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNBDB4( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                        MKL_Complex16* phantom, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall ZUNBDB4_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                         MKL_Complex16* phantom, MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );
void __stdcall zunbdb4( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                        MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                        const MKL_INT* ldx21, double* theta, double* phi,
                        MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                        MKL_Complex16* phantom, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zunbdb4_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* q,
                         MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x21,
                         const MKL_INT* ldx21, double* theta, double* phi,
                         MKL_Complex16* taup1, MKL_Complex16* taup2, MKL_Complex16* tauq1,
                         MKL_Complex16* phantom, MKL_Complex16* work, const MKL_INT* lwork,
                         MKL_INT* info );

void __stdcall ZUNBDB5( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        MKL_Complex16* x1, const MKL_INT* incx1, MKL_Complex16* x2,
                        const MKL_INT* incx2, MKL_Complex16* q1, const MKL_INT* ldq1,
                        MKL_Complex16* q2, const MKL_INT* ldq2, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNBDB5_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         MKL_Complex16* x1, const MKL_INT* incx1, MKL_Complex16* x2,
                         const MKL_INT* incx2, MKL_Complex16* q1, const MKL_INT* ldq1,
                         MKL_Complex16* q2, const MKL_INT* ldq2, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunbdb5( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        MKL_Complex16* x1, const MKL_INT* incx1, MKL_Complex16* x2,
                        const MKL_INT* incx2, MKL_Complex16* q1, const MKL_INT* ldq1,
                        MKL_Complex16* q2, const MKL_INT* ldq2, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunbdb5_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         MKL_Complex16* x1, const MKL_INT* incx1, MKL_Complex16* x2,
                         const MKL_INT* incx2, MKL_Complex16* q1, const MKL_INT* ldq1,
                         MKL_Complex16* q2, const MKL_INT* ldq2, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNBDB6( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        MKL_Complex16* x1, const MKL_INT* incx1, MKL_Complex16* x2,
                        const MKL_INT* incx2, MKL_Complex16* q1, const MKL_INT* ldq1,
                        MKL_Complex16* q2, const MKL_INT* ldq2, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNBDB6_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         MKL_Complex16* x1, const MKL_INT* incx1, MKL_Complex16* x2,
                         const MKL_INT* incx2, MKL_Complex16* q1, const MKL_INT* ldq1,
                         MKL_Complex16* q2, const MKL_INT* ldq2, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunbdb6( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                        MKL_Complex16* x1, const MKL_INT* incx1, MKL_Complex16* x2,
                        const MKL_INT* incx2, MKL_Complex16* q1, const MKL_INT* ldq1,
                        MKL_Complex16* q2, const MKL_INT* ldq2, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunbdb6_( const MKL_INT* m1, const MKL_INT* m2, const MKL_INT* n,
                         MKL_Complex16* x1, const MKL_INT* incx1, MKL_Complex16* x2,
                         const MKL_INT* incx2, MKL_Complex16* q1, const MKL_INT* ldq1,
                         MKL_Complex16* q2, const MKL_INT* ldq2, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNCSD2BY1( const char* jobu1, int jobu1_len, const char* jobu2,
                           int jobu2_len, const char* jobv1t, int jobv1t_len,
                           const MKL_INT* m, const MKL_INT* p,
                           const MKL_INT* q, MKL_Complex16* x11,
                           const MKL_INT* ldx11, MKL_Complex16* x21,
                           const MKL_INT* ldx21, double* theta,
                           MKL_Complex16* u1, const MKL_INT* ldu1,
                           MKL_Complex16* u2, const MKL_INT* ldu2,
                           MKL_Complex16* v1t, const MKL_INT* ldv1t,
                           MKL_Complex16* work, const MKL_INT* lwork,
                           double* rwork, const MKL_INT* lrwork,
                           MKL_INT* iwork, MKL_INT* info );
void __stdcall ZUNCSD2BY1_( const char* jobu1, int jobu1_len,
                            const char* jobu2, int jobu2_len,
                            const char* jobv1t, int jobv1t_len,
                            const MKL_INT* m, const MKL_INT* p,
                            const MKL_INT* q, MKL_Complex16* x11,
                            const MKL_INT* ldx11, MKL_Complex16* x21,
                            const MKL_INT* ldx21, double* theta,
                            MKL_Complex16* u1, const MKL_INT* ldu1,
                            MKL_Complex16* u2, const MKL_INT* ldu2,
                            MKL_Complex16* v1t, const MKL_INT* ldv1t,
                            MKL_Complex16* work, const MKL_INT* lwork,
                            double* rwork, const MKL_INT* lrwork,
                            MKL_INT* iwork, MKL_INT* info );
void __stdcall zuncsd2by1( const char* jobu1, int jobu1_len, const char* jobu2,
                           int jobu2_len, const char* jobv1t, int jobv1t_len,
                           const MKL_INT* m, const MKL_INT* p,
                           const MKL_INT* q, MKL_Complex16* x11,
                           const MKL_INT* ldx11, MKL_Complex16* x21,
                           const MKL_INT* ldx21, double* theta,
                           MKL_Complex16* u1, const MKL_INT* ldu1,
                           MKL_Complex16* u2, const MKL_INT* ldu2,
                           MKL_Complex16* v1t, const MKL_INT* ldv1t,
                           MKL_Complex16* work, const MKL_INT* lwork,
                           double* rwork, const MKL_INT* lrwork,
                           MKL_INT* iwork, MKL_INT* info );
void __stdcall zuncsd2by1_( const char* jobu1, int jobu1_len,
                            const char* jobu2, int jobu2_len,
                            const char* jobv1t, int jobv1t_len,
                            const MKL_INT* m, const MKL_INT* p,
                            const MKL_INT* q, MKL_Complex16* x11,
                            const MKL_INT* ldx11, MKL_Complex16* x21,
                            const MKL_INT* ldx21, double* theta,
                            MKL_Complex16* u1, const MKL_INT* ldu1,
                            MKL_Complex16* u2, const MKL_INT* ldu2,
                            MKL_Complex16* v1t, const MKL_INT* ldv1t,
                            MKL_Complex16* work, const MKL_INT* lwork,
                            double* rwork, const MKL_INT* lrwork,
                            MKL_INT* iwork, MKL_INT* info );

/* LAPACK 3.4.0 routines */

void __stdcall CGEMQRT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* nb,
                        const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall CGEMQRT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* nb,
                         const MKL_Complex8* v, const MKL_INT* ldv,
                         const MKL_Complex8* t, const MKL_INT* ldt,
                         MKL_Complex8* c, const MKL_INT* ldc,
                         MKL_Complex8* work, MKL_INT* info );
void __stdcall cgemqrt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* nb,
                        const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall cgemqrt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* nb,
                         const MKL_Complex8* v, const MKL_INT* ldv,
                         const MKL_Complex8* t, const MKL_INT* ldt,
                         MKL_Complex8* c, const MKL_INT* ldc,
                         MKL_Complex8* work, MKL_INT* info );

void __stdcall DGEMQRT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* nb, const double* v,
                        const MKL_INT* ldv, const double* t,
                        const MKL_INT* ldt, double* c, const MKL_INT* ldc,
                        double* work, MKL_INT* info );
void __stdcall DGEMQRT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* nb, const double* v,
                         const MKL_INT* ldv, const double* t,
                         const MKL_INT* ldt, double* c, const MKL_INT* ldc,
                         double* work, MKL_INT* info );
void __stdcall dgemqrt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* nb, const double* v,
                        const MKL_INT* ldv, const double* t,
                        const MKL_INT* ldt, double* c, const MKL_INT* ldc,
                        double* work, MKL_INT* info );
void __stdcall dgemqrt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* nb, const double* v,
                         const MKL_INT* ldv, const double* t,
                         const MKL_INT* ldt, double* c, const MKL_INT* ldc,
                         double* work, MKL_INT* info );

void __stdcall SGEMQRT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* nb, const float* v,
                        const MKL_INT* ldv, const float* t,
                        const MKL_INT* ldt, float* c, const MKL_INT* ldc,
                        float* work, MKL_INT* info );
void __stdcall SGEMQRT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* nb, const float* v,
                         const MKL_INT* ldv, const float* t,
                         const MKL_INT* ldt, float* c, const MKL_INT* ldc,
                         float* work, MKL_INT* info );
void __stdcall sgemqrt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* nb, const float* v,
                        const MKL_INT* ldv, const float* t,
                        const MKL_INT* ldt, float* c, const MKL_INT* ldc,
                        float* work, MKL_INT* info );
void __stdcall sgemqrt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* nb, const float* v,
                         const MKL_INT* ldv, const float* t,
                         const MKL_INT* ldt, float* c, const MKL_INT* ldc,
                         float* work, MKL_INT* info );

void __stdcall ZGEMQRT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* nb,
                        const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall ZGEMQRT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* nb,
                         const MKL_Complex16* v, const MKL_INT* ldv,
                         const MKL_Complex16* t, const MKL_INT* ldt,
                         MKL_Complex16* c, const MKL_INT* ldc,
                         MKL_Complex16* work, MKL_INT* info );
void __stdcall zgemqrt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* nb,
                        const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zgemqrt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* nb,
                         const MKL_Complex16* v, const MKL_INT* ldv,
                         const MKL_Complex16* t, const MKL_INT* ldt,
                         MKL_Complex16* c, const MKL_INT* ldc,
                         MKL_Complex16* work, MKL_INT* info );

void __stdcall CGEQRT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* t,
                       const MKL_INT* ldt, MKL_Complex8* work, MKL_INT* info );
void __stdcall CGEQRT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_Complex8* work, MKL_INT* info );
void __stdcall cgeqrt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* t,
                       const MKL_INT* ldt, MKL_Complex8* work, MKL_INT* info );
void __stdcall cgeqrt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_Complex8* work, MKL_INT* info );

void __stdcall DGEQRT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                       double* a, const MKL_INT* lda, double* t,
                       const MKL_INT* ldt, double* work, MKL_INT* info );
void __stdcall DGEQRT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                        double* a, const MKL_INT* lda, double* t,
                        const MKL_INT* ldt, double* work, MKL_INT* info );
void __stdcall dgeqrt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                       double* a, const MKL_INT* lda, double* t,
                       const MKL_INT* ldt, double* work, MKL_INT* info );
void __stdcall dgeqrt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                        double* a, const MKL_INT* lda, double* t,
                        const MKL_INT* ldt, double* work, MKL_INT* info );

void __stdcall SGEQRT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                       float* a, const MKL_INT* lda, float* t,
                       const MKL_INT* ldt, float* work, MKL_INT* info );
void __stdcall SGEQRT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                        float* a, const MKL_INT* lda, float* t,
                        const MKL_INT* ldt, float* work, MKL_INT* info );
void __stdcall sgeqrt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                       float* a, const MKL_INT* lda, float* t,
                       const MKL_INT* ldt, float* work, MKL_INT* info );
void __stdcall sgeqrt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                        float* a, const MKL_INT* lda, float* t,
                        const MKL_INT* ldt, float* work, MKL_INT* info );

void __stdcall ZGEQRT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* t,
                       const MKL_INT* ldt, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZGEQRT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zgeqrt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* t,
                       const MKL_INT* ldt, MKL_Complex16* work, MKL_INT* info );
void __stdcall zgeqrt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* work, MKL_INT* info );

void __stdcall CGEQRT3( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall CGEQRT3_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_INT* info );
void __stdcall cgeqrt3( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall cgeqrt3_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_INT* info );

void __stdcall DGEQRT3( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall DGEQRT3_( const MKL_INT* m, const MKL_INT* n, double* a,
                         const MKL_INT* lda, double* t, const MKL_INT* ldt,
                         MKL_INT* info );
void __stdcall dgeqrt3( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall dgeqrt3_( const MKL_INT* m, const MKL_INT* n, double* a,
                         const MKL_INT* lda, double* t, const MKL_INT* ldt,
                         MKL_INT* info );

void __stdcall SGEQRT3( const MKL_INT* m, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall SGEQRT3_( const MKL_INT* m, const MKL_INT* n, float* a,
                         const MKL_INT* lda, float* t, const MKL_INT* ldt,
                         MKL_INT* info );
void __stdcall sgeqrt3( const MKL_INT* m, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall sgeqrt3_( const MKL_INT* m, const MKL_INT* n, float* a,
                         const MKL_INT* lda, float* t, const MKL_INT* ldt,
                         MKL_INT* info );

void __stdcall ZGEQRT3( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall ZGEQRT3_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_INT* info );
void __stdcall zgeqrt3( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall zgeqrt3_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_INT* info );

void __stdcall CTPMQRT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* nb,
                        const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* work, MKL_INT* info );
void __stdcall CTPMQRT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l,
                         const MKL_INT* nb, const MKL_Complex8* v,
                         const MKL_INT* ldv, const MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* work,
                         MKL_INT* info );
void __stdcall ctpmqrt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* nb,
                        const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* work, MKL_INT* info );
void __stdcall ctpmqrt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l,
                         const MKL_INT* nb, const MKL_Complex8* v,
                         const MKL_INT* ldv, const MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* work,
                         MKL_INT* info );

void __stdcall DTPMQRT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* nb,
                        const double* v, const MKL_INT* ldv, const double* t,
                        const MKL_INT* ldt, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, double* work,
                        MKL_INT* info );
void __stdcall DTPMQRT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l,
                         const MKL_INT* nb, const double* v,
                         const MKL_INT* ldv, const double* t,
                         const MKL_INT* ldt, double* a, const MKL_INT* lda,
                         double* b, const MKL_INT* ldb, double* work,
                         MKL_INT* info );
void __stdcall dtpmqrt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* nb,
                        const double* v, const MKL_INT* ldv, const double* t,
                        const MKL_INT* ldt, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, double* work,
                        MKL_INT* info );
void __stdcall dtpmqrt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l,
                         const MKL_INT* nb, const double* v,
                         const MKL_INT* ldv, const double* t,
                         const MKL_INT* ldt, double* a, const MKL_INT* lda,
                         double* b, const MKL_INT* ldb, double* work,
                         MKL_INT* info );

void __stdcall STPMQRT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* nb,
                        const float* v, const MKL_INT* ldv, const float* t,
                        const MKL_INT* ldt, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, float* work,
                        MKL_INT* info );
void __stdcall STPMQRT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l,
                         const MKL_INT* nb, const float* v,
                         const MKL_INT* ldv, const float* t,
                         const MKL_INT* ldt, float* a, const MKL_INT* lda,
                         float* b, const MKL_INT* ldb, float* work,
                         MKL_INT* info );
void __stdcall stpmqrt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* nb,
                        const float* v, const MKL_INT* ldv, const float* t,
                        const MKL_INT* ldt, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, float* work,
                        MKL_INT* info );
void __stdcall stpmqrt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l,
                         const MKL_INT* nb, const float* v,
                         const MKL_INT* ldv, const float* t,
                         const MKL_INT* ldt, float* a, const MKL_INT* lda,
                         float* b, const MKL_INT* ldb, float* work,
                         MKL_INT* info );

void __stdcall ZTPMQRT( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* nb,
                        const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall ZTPMQRT_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l,
                         const MKL_INT* nb, const MKL_Complex16* v,
                         const MKL_INT* ldv, const MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_Complex16* work,
                         MKL_INT* info );
void __stdcall ztpmqrt( const char* side, int side_len, const char* trans,
                        int trans_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_INT* nb,
                        const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall ztpmqrt_( const char* side, int side_len, const char* trans,
                         int trans_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_INT* k, const MKL_INT* l,
                         const MKL_INT* nb, const MKL_Complex16* v,
                         const MKL_INT* ldv, const MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_Complex16* work,
                         MKL_INT* info );

void __stdcall CTPQRT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                       MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* t, const MKL_INT* ldt,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CTPQRT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                        MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall ctpqrt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                       MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* t, const MKL_INT* ldt,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall ctpqrt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                        MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall DTPQRT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                       double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb,
                       double* t, const MKL_INT* ldt,
                       double* work, MKL_INT* info );
void __stdcall DTPQRT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                        double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb,
                        double* t, const MKL_INT* ldt,
                        double* work, MKL_INT* info );
void __stdcall dtpqrt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                       double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb,
                       double* t, const MKL_INT* ldt,
                       double* work, MKL_INT* info );
void __stdcall dtpqrt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                        double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb,
                        double* t, const MKL_INT* ldt,
                        double* work, MKL_INT* info );

void __stdcall STPQRT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                       float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb,
                       float* t, const MKL_INT* ldt,
                       float* work, MKL_INT* info );
void __stdcall STPQRT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                        float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb,
                        float* t, const MKL_INT* ldt,
                        float* work, MKL_INT* info );
void __stdcall stpqrt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                       float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb,
                       float* t, const MKL_INT* ldt,
                       float* work, MKL_INT* info );
void __stdcall stpqrt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                        float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb,
                        float* t, const MKL_INT* ldt,
                        float* work, MKL_INT* info );

void __stdcall ZTPQRT( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                       MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* t, const MKL_INT* ldt,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZTPQRT_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall ztpqrt( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                       MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* t, const MKL_INT* ldt,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ztpqrt_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, const MKL_INT* nb,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* work, MKL_INT* info );

void __stdcall CTPQRT2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall CTPQRT2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_INT* info );
void __stdcall ctpqrt2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall ctpqrt2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_INT* info );

void __stdcall DTPQRT2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, double* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall DTPQRT2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         double* a, const MKL_INT* lda, double* b,
                         const MKL_INT* ldb, double* t, const MKL_INT* ldt,
                         MKL_INT* info );
void __stdcall dtpqrt2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, double* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall dtpqrt2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         double* a, const MKL_INT* lda, double* b,
                         const MKL_INT* ldb, double* t, const MKL_INT* ldt,
                         MKL_INT* info );

void __stdcall STPQRT2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, float* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall STPQRT2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         float* a, const MKL_INT* lda, float* b,
                         const MKL_INT* ldb, float* t, const MKL_INT* ldt,
                         MKL_INT* info );
void __stdcall stpqrt2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, float* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall stpqrt2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         float* a, const MKL_INT* lda, float* b,
                         const MKL_INT* ldb, float* t, const MKL_INT* ldt,
                         MKL_INT* info );

void __stdcall ZTPQRT2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* t, const MKL_INT* ldt, MKL_INT* info );
void __stdcall ZTPQRT2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* t, const MKL_INT* ldt, MKL_INT* info );
void __stdcall ztpqrt2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* t, const MKL_INT* ldt, MKL_INT* info );
void __stdcall ztpqrt2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                         MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* t, const MKL_INT* ldt, MKL_INT* info );


/* LAPACK 3.3.0 routines */

void __stdcall CBBCSD( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, float* theta, float* phi,
                       MKL_Complex8* u1, const MKL_INT* ldu1, MKL_Complex8* u2,
                       const MKL_INT* ldu2, MKL_Complex8* v1t, const MKL_INT* ldv1t,
                       MKL_Complex8* v2t, const MKL_INT* ldv2t, float* b11d, float* b11e,
                       float* b12d, float* b12e, float* b21d, float* b21e, float* b22d,
                       float* b22e, float* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall CBBCSD_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, float* theta, float* phi,
                        MKL_Complex8* u1, const MKL_INT* ldu1, MKL_Complex8* u2,
                        const MKL_INT* ldu2, MKL_Complex8* v1t, const MKL_INT* ldv1t,
                        MKL_Complex8* v2t, const MKL_INT* ldv2t, float* b11d, float* b11e,
                        float* b12d, float* b12e, float* b21d, float* b21e, float* b22d,
                        float* b22e, float* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall cbbcsd( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, float* theta, float* phi,
                       MKL_Complex8* u1, const MKL_INT* ldu1, MKL_Complex8* u2,
                       const MKL_INT* ldu2, MKL_Complex8* v1t, const MKL_INT* ldv1t,
                       MKL_Complex8* v2t, const MKL_INT* ldv2t, float* b11d, float* b11e,
                       float* b12d, float* b12e, float* b21d, float* b21e, float* b22d,
                       float* b22e, float* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall cbbcsd_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, float* theta, float* phi,
                        MKL_Complex8* u1, const MKL_INT* ldu1, MKL_Complex8* u2,
                        const MKL_INT* ldu2, MKL_Complex8* v1t, const MKL_INT* ldv1t,
                        MKL_Complex8* v2t, const MKL_INT* ldv2t, float* b11d, float* b11e,
                        float* b12d, float* b12e, float* b21d, float* b21e, float* b22d,
                        float* b22e, float* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall ZBBCSD( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, double* theta, double* phi,
                       MKL_Complex16* u1, const MKL_INT* ldu1, MKL_Complex16* u2,
                       const MKL_INT* ldu2, MKL_Complex16* v1t, const MKL_INT* ldv1t,
                       MKL_Complex16* v2t, const MKL_INT* ldv2t, double* b11d, double* b11e,
                       double* b12d, double* b12e, double* b21d, double* b21e, double* b22d,
                       double* b22e, double* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall ZBBCSD_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, double* theta, double* phi,
                        MKL_Complex16* u1, const MKL_INT* ldu1, MKL_Complex16* u2,
                        const MKL_INT* ldu2, MKL_Complex16* v1t, const MKL_INT* ldv1t,
                        MKL_Complex16* v2t, const MKL_INT* ldv2t, double* b11d, double* b11e,
                        double* b12d, double* b12e, double* b21d, double* b21e, double* b22d,
                        double* b22e, double* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall zbbcsd( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, double* theta, double* phi,
                       MKL_Complex16* u1, const MKL_INT* ldu1, MKL_Complex16* u2,
                       const MKL_INT* ldu2, MKL_Complex16* v1t, const MKL_INT* ldv1t,
                       MKL_Complex16* v2t, const MKL_INT* ldv2t, double* b11d, double* b11e,
                       double* b12d, double* b12e, double* b21d, double* b21e, double* b22d,
                       double* b22e, double* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall zbbcsd_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, double* theta, double* phi,
                        MKL_Complex16* u1, const MKL_INT* ldu1, MKL_Complex16* u2,
                        const MKL_INT* ldu2, MKL_Complex16* v1t, const MKL_INT* ldv1t,
                        MKL_Complex16* v2t, const MKL_INT* ldv2t, double* b11d, double* b11e,
                        double* b12d, double* b12e, double* b21d, double* b21e, double* b22d,
                        double* b22e, double* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall SBBCSD( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, float* theta, float* phi,
                       float* u1, const MKL_INT* ldu1, float* u2,
                       const MKL_INT* ldu2, float* v1t, const MKL_INT* ldv1t,
                       float* v2t, const MKL_INT* ldv2t, float* b11d, float* b11e,
                       float* b12d, float* b12e, float* b21d, float* b21e, float* b22d,
                       float* b22e, float* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall SBBCSD_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, float* theta, float* phi,
                        float* u1, const MKL_INT* ldu1, float* u2,
                        const MKL_INT* ldu2, float* v1t, const MKL_INT* ldv1t,
                        float* v2t, const MKL_INT* ldv2t, float* b11d, float* b11e,
                        float* b12d, float* b12e, float* b21d, float* b21e, float* b22d,
                        float* b22e, float* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall sbbcsd( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, float* theta, float* phi,
                       float* u1, const MKL_INT* ldu1, float* u2,
                       const MKL_INT* ldu2, float* v1t, const MKL_INT* ldv1t,
                       float* v2t, const MKL_INT* ldv2t, float* b11d, float* b11e,
                       float* b12d, float* b12e, float* b21d, float* b21e, float* b22d,
                       float* b22e, float* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall sbbcsd_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, float* theta, float* phi,
                        float* u1, const MKL_INT* ldu1, float* u2,
                        const MKL_INT* ldu2, float* v1t, const MKL_INT* ldv1t,
                        float* v2t, const MKL_INT* ldv2t, float* b11d, float* b11e,
                        float* b12d, float* b12e, float* b21d, float* b21e, float* b22d,
                        float* b22e, float* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall DBBCSD( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, double* theta, double* phi,
                       double* u1, const MKL_INT* ldu1, double* u2,
                       const MKL_INT* ldu2, double* v1t, const MKL_INT* ldv1t,
                       double* v2t, const MKL_INT* ldv2t, double* b11d, double* b11e,
                       double* b12d, double* b12e, double* b21d, double* b21e, double* b22d,
                       double* b22e, double* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall DBBCSD_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, double* theta, double* phi,
                        double* u1, const MKL_INT* ldu1, double* u2,
                        const MKL_INT* ldu2, double* v1t, const MKL_INT* ldv1t,
                        double* v2t, const MKL_INT* ldv2t, double* b11d, double* b11e,
                        double* b12d, double* b12e, double* b21d, double* b21e, double* b22d,
                        double* b22e, double* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall dbbcsd( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, double* theta, double* phi,
                       double* u1, const MKL_INT* ldu1, double* u2,
                       const MKL_INT* ldu2, double* v1t, const MKL_INT* ldv1t,
                       double* v2t, const MKL_INT* ldv2t, double* b11d, double* b11e,
                       double* b12d, double* b12e, double* b21d, double* b21e, double* b22d,
                       double* b22e, double* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall dbbcsd_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, double* theta, double* phi,
                        double* u1, const MKL_INT* ldu1, double* u2,
                        const MKL_INT* ldu2, double* v1t, const MKL_INT* ldv1t,
                        double* v2t, const MKL_INT* ldv2t, double* b11d, double* b11e,
                        double* b12d, double* b12e, double* b21d, double* b21e, double* b22d,
                        double* b22e, double* rwork, const MKL_INT* lrwork, MKL_INT* info );

void __stdcall CUNBDB( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, MKL_Complex8* x11,
                       const MKL_INT* ldx11, MKL_Complex8* x12, const MKL_INT* ldx12,
                       MKL_Complex8* x21, const MKL_INT* ldx21, MKL_Complex8* x22,
                       const MKL_INT* ldx22, float* theta, float* phi, MKL_Complex8* taup1,
                       MKL_Complex8* taup2, MKL_Complex8* tauq1, MKL_Complex8* tauq2,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall CUNBDB_( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, MKL_Complex8* x11,
                        const MKL_INT* ldx11, MKL_Complex8* x12, const MKL_INT* ldx12,
                        MKL_Complex8* x21, const MKL_INT* ldx21, MKL_Complex8* x22,
                        const MKL_INT* ldx22, float* theta, float* phi, MKL_Complex8* taup1,
                        MKL_Complex8* taup2, MKL_Complex8* tauq1, MKL_Complex8* tauq2,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall cunbdb( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, MKL_Complex8* x11,
                       const MKL_INT* ldx11, MKL_Complex8* x12, const MKL_INT* ldx12,
                       MKL_Complex8* x21, const MKL_INT* ldx21, MKL_Complex8* x22,
                       const MKL_INT* ldx22, float* theta, float* phi, MKL_Complex8* taup1,
                       MKL_Complex8* taup2, MKL_Complex8* tauq1, MKL_Complex8* tauq2,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall cunbdb_( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, MKL_Complex8* x11,
                        const MKL_INT* ldx11, MKL_Complex8* x12, const MKL_INT* ldx12,
                        MKL_Complex8* x21, const MKL_INT* ldx21, MKL_Complex8* x22,
                        const MKL_INT* ldx22, float* theta, float* phi, MKL_Complex8* taup1,
                        MKL_Complex8* taup2, MKL_Complex8* tauq1, MKL_Complex8* tauq2,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall ZUNBDB( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, MKL_Complex16* x11,
                       const MKL_INT* ldx11, MKL_Complex16* x12, const MKL_INT* ldx12,
                       MKL_Complex16* x21, const MKL_INT* ldx21, MKL_Complex16* x22,
                       const MKL_INT* ldx22, double* theta, double* phi, MKL_Complex16* taup1,
                       MKL_Complex16* taup2, MKL_Complex16* tauq1, MKL_Complex16* tauq2,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall ZUNBDB_( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, MKL_Complex16* x11,
                        const MKL_INT* ldx11, MKL_Complex16* x12, const MKL_INT* ldx12,
                        MKL_Complex16* x21, const MKL_INT* ldx21, MKL_Complex16* x22,
                        const MKL_INT* ldx22, double* theta, double* phi, MKL_Complex16* taup1,
                        MKL_Complex16* taup2, MKL_Complex16* tauq1, MKL_Complex16* tauq2,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall zunbdb( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, MKL_Complex16* x11,
                       const MKL_INT* ldx11, MKL_Complex16* x12, const MKL_INT* ldx12,
                       MKL_Complex16* x21, const MKL_INT* ldx21, MKL_Complex16* x22,
                       const MKL_INT* ldx22, double* theta, double* phi, MKL_Complex16* taup1,
                       MKL_Complex16* taup2, MKL_Complex16* tauq1, MKL_Complex16* tauq2,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall zunbdb_( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, MKL_Complex16* x11,
                        const MKL_INT* ldx11, MKL_Complex16* x12, const MKL_INT* ldx12,
                        MKL_Complex16* x21, const MKL_INT* ldx21, MKL_Complex16* x22,
                        const MKL_INT* ldx22, double* theta, double* phi, MKL_Complex16* taup1,
                        MKL_Complex16* taup2, MKL_Complex16* tauq1, MKL_Complex16* tauq2,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall SORBDB( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, float* x11,
                       const MKL_INT* ldx11, float* x12, const MKL_INT* ldx12,
                       float* x21, const MKL_INT* ldx21, float* x22,
                       const MKL_INT* ldx22, float* theta, float* phi, float* taup1,
                       float* taup2, float* tauq1, float* tauq2,
                       float* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall SORBDB_( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, float* x11,
                        const MKL_INT* ldx11, float* x12, const MKL_INT* ldx12,
                        float* x21, const MKL_INT* ldx21, float* x22,
                        const MKL_INT* ldx22, float* theta, float* phi, float* taup1,
                        float* taup2, float* tauq1, float* tauq2,
                        float* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall sorbdb( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, float* x11,
                       const MKL_INT* ldx11, float* x12, const MKL_INT* ldx12,
                       float* x21, const MKL_INT* ldx21, float* x22,
                       const MKL_INT* ldx22, float* theta, float* phi, float* taup1,
                       float* taup2, float* tauq1, float* tauq2,
                       float* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall sorbdb_( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, float* x11,
                        const MKL_INT* ldx11, float* x12, const MKL_INT* ldx12,
                        float* x21, const MKL_INT* ldx21, float* x22,
                        const MKL_INT* ldx22, float* theta, float* phi, float* taup1,
                        float* taup2, float* tauq1, float* tauq2,
                        float* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall DORBDB( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, double* x11,
                       const MKL_INT* ldx11, double* x12, const MKL_INT* ldx12,
                       double* x21, const MKL_INT* ldx21, double* x22,
                       const MKL_INT* ldx22, double* theta, double* phi, double* taup1,
                       double* taup2, double* tauq1, double* tauq2,
                       double* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall DORBDB_( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, double* x11,
                        const MKL_INT* ldx11, double* x12, const MKL_INT* ldx12,
                        double* x21, const MKL_INT* ldx21, double* x22,
                        const MKL_INT* ldx22, double* theta, double* phi, double* taup1,
                        double* taup2, double* tauq1, double* tauq2,
                        double* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall dorbdb( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                       const MKL_INT* P, const MKL_INT* Q, double* x11,
                       const MKL_INT* ldx11, double* x12, const MKL_INT* ldx12,
                       double* x21, const MKL_INT* ldx21, double* x22,
                       const MKL_INT* ldx22, double* theta, double* phi, double* taup1,
                       double* taup2, double* tauq1, double* tauq2,
                       double* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall dorbdb_( const char* trans, int trans_len, const char* signs, int signs_len, const MKL_INT* M,
                        const MKL_INT* P, const MKL_INT* Q, double* x11,
                        const MKL_INT* ldx11, double* x12, const MKL_INT* ldx12,
                        double* x21, const MKL_INT* ldx21, double* x22,
                        const MKL_INT* ldx22, double* theta, double* phi, double* taup1,
                        double* taup2, double* tauq1, double* tauq2,
                        double* work, const MKL_INT* lwork, MKL_INT* info);

void __stdcall CUNCSD( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                       const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                       MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x12,
                       const MKL_INT* ldx12, MKL_Complex8* x21, const MKL_INT* ldx21,
                       MKL_Complex8* x22, const MKL_INT* ldx22, float* theta,
                       MKL_Complex8* u1, const MKL_INT* ldu1, MKL_Complex8* u2,
                       const MKL_INT* ldu2, MKL_Complex8* v1t, const MKL_INT* ldv1t,
                       MKL_Complex8* v2t, const MKL_INT* ldv2t, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, MKL_INT* info);

void __stdcall CUNCSD_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                        const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                        MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x12,
                        const MKL_INT* ldx12, MKL_Complex8* x21, const MKL_INT* ldx21,
                        MKL_Complex8* x22, const MKL_INT* ldx22, float* theta,
                        MKL_Complex8* u1, const MKL_INT* ldu1, MKL_Complex8* u2,
                        const MKL_INT* ldu2, MKL_Complex8* v1t, const MKL_INT* ldv1t,
                        MKL_Complex8* v2t, const MKL_INT* ldv2t, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                        MKL_INT* iwork, MKL_INT* info);

void __stdcall cuncsd( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                       const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                       MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x12,
                       const MKL_INT* ldx12, MKL_Complex8* x21, const MKL_INT* ldx21,
                       MKL_Complex8* x22, const MKL_INT* ldx22, float* theta,
                       MKL_Complex8* u1, const MKL_INT* ldu1, MKL_Complex8* u2,
                       const MKL_INT* ldu2, MKL_Complex8* v1t, const MKL_INT* ldv1t,
                       MKL_Complex8* v2t, const MKL_INT* ldv2t, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, MKL_INT* info);

void __stdcall cuncsd_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                        const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                        MKL_Complex8* x11, const MKL_INT* ldx11, MKL_Complex8* x12,
                        const MKL_INT* ldx12, MKL_Complex8* x21, const MKL_INT* ldx21,
                        MKL_Complex8* x22, const MKL_INT* ldx22, float* theta,
                        MKL_Complex8* u1, const MKL_INT* ldu1, MKL_Complex8* u2,
                        const MKL_INT* ldu2, MKL_Complex8* v1t, const MKL_INT* ldv1t,
                        MKL_Complex8* v2t, const MKL_INT* ldv2t, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                        MKL_INT* iwork, MKL_INT* info);

void __stdcall ZUNCSD( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                       const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                       MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x12,
                       const MKL_INT* ldx12, MKL_Complex16* x21, const MKL_INT* ldx21,
                       MKL_Complex16* x22, const MKL_INT* ldx22, double* theta,
                       MKL_Complex16* u1, const MKL_INT* ldu1, MKL_Complex16* u2,
                       const MKL_INT* ldu2, MKL_Complex16* v1t, const MKL_INT* ldv1t,
                       MKL_Complex16* v2t, const MKL_INT* ldv2t, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, MKL_INT* info);

void __stdcall ZUNCSD_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                        const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                        MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x12,
                        const MKL_INT* ldx12, MKL_Complex16* x21, const MKL_INT* ldx21,
                        MKL_Complex16* x22, const MKL_INT* ldx22, double* theta,
                        MKL_Complex16* u1, const MKL_INT* ldu1, MKL_Complex16* u2,
                        const MKL_INT* ldu2, MKL_Complex16* v1t, const MKL_INT* ldv1t,
                        MKL_Complex16* v2t, const MKL_INT* ldv2t, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, const MKL_INT* lrwork,
                        MKL_INT* iwork, MKL_INT* info);

void __stdcall zuncsd( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                       const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                       MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x12,
                       const MKL_INT* ldx12, MKL_Complex16* x21, const MKL_INT* ldx21,
                       MKL_Complex16* x22, const MKL_INT* ldx22, double* theta,
                       MKL_Complex16* u1, const MKL_INT* ldu1, MKL_Complex16* u2,
                       const MKL_INT* ldu2, MKL_Complex16* v1t, const MKL_INT* ldv1t,
                       MKL_Complex16* v2t, const MKL_INT* ldv2t, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, MKL_INT* info);

void __stdcall zuncsd_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                        const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                        MKL_Complex16* x11, const MKL_INT* ldx11, MKL_Complex16* x12,
                        const MKL_INT* ldx12, MKL_Complex16* x21, const MKL_INT* ldx21,
                        MKL_Complex16* x22, const MKL_INT* ldx22, double* theta,
                        MKL_Complex16* u1, const MKL_INT* ldu1, MKL_Complex16* u2,
                        const MKL_INT* ldu2, MKL_Complex16* v1t, const MKL_INT* ldv1t,
                        MKL_Complex16* v2t, const MKL_INT* ldv2t, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, const MKL_INT* lrwork,
                        MKL_INT* iwork, MKL_INT* info);

void __stdcall SORCSD( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                       const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                       float* x11, const MKL_INT* ldx11, float* x12,
                       const MKL_INT* ldx12, float* x21, const MKL_INT* ldx21,
                       float* x22, const MKL_INT* ldx22, float* theta,
                       float* u1, const MKL_INT* ldu1, float* u2,
                       const MKL_INT* ldu2, float* v1t, const MKL_INT* ldv1t,
                       float* v2t, const MKL_INT* ldv2t, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info);

void __stdcall SORCSD_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                        const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                        float* x11, const MKL_INT* ldx11, float* x12,
                        const MKL_INT* ldx12, float* x21, const MKL_INT* ldx21,
                        float* x22, const MKL_INT* ldx22, float* theta,
                        float* u1, const MKL_INT* ldu1, float* u2,
                        const MKL_INT* ldu2, float* v1t, const MKL_INT* ldv1t,
                        float* v2t, const MKL_INT* ldv2t, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info);

void __stdcall sorcsd( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                       const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                       float* x11, const MKL_INT* ldx11, float* x12,
                       const MKL_INT* ldx12, float* x21, const MKL_INT* ldx21,
                       float* x22, const MKL_INT* ldx22, float* theta,
                       float* u1, const MKL_INT* ldu1, float* u2,
                       const MKL_INT* ldu2, float* v1t, const MKL_INT* ldv1t,
                       float* v2t, const MKL_INT* ldv2t, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info);

void __stdcall sorcsd_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                        const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                        float* x11, const MKL_INT* ldx11, float* x12,
                        const MKL_INT* ldx12, float* x21, const MKL_INT* ldx21,
                        float* x22, const MKL_INT* ldx22, float* theta,
                        float* u1, const MKL_INT* ldu1, float* u2,
                        const MKL_INT* ldu2, float* v1t, const MKL_INT* ldv1t,
                        float* v2t, const MKL_INT* ldv2t, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info);

void __stdcall DORCSD( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                       const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                       double* x11, const MKL_INT* ldx11, double* x12,
                       const MKL_INT* ldx12, double* x21, const MKL_INT* ldx21,
                       double* x22, const MKL_INT* ldx22, double* theta,
                       double* u1, const MKL_INT* ldu1, double* u2,
                       const MKL_INT* ldu2, double* v1t, const MKL_INT* ldv1t,
                       double* v2t, const MKL_INT* ldv2t, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info);

void __stdcall DORCSD_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                        const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                        double* x11, const MKL_INT* ldx11, double* x12,
                        const MKL_INT* ldx12, double* x21, const MKL_INT* ldx21,
                        double* x22, const MKL_INT* ldx22, double* theta,
                        double* u1, const MKL_INT* ldu1, double* u2,
                        const MKL_INT* ldu2, double* v1t, const MKL_INT* ldv1t,
                        double* v2t, const MKL_INT* ldv2t, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info);

void __stdcall dorcsd( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                       const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                       const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                       double* x11, const MKL_INT* ldx11, double* x12,
                       const MKL_INT* ldx12, double* x21, const MKL_INT* ldx21,
                       double* x22, const MKL_INT* ldx22, double* theta,
                       double* u1, const MKL_INT* ldu1, double* u2,
                       const MKL_INT* ldu2, double* v1t, const MKL_INT* ldv1t,
                       double* v2t, const MKL_INT* ldv2t, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info);

void __stdcall dorcsd_( const char* jobu1, int jobu1_len, const char* jobu2, int jobu2_len, const char* jobv1t, int jobv1t_len,
                        const char* jobv2t, int jobv2t_len, const char* trans, int trans_len, const char* signs, int signs_len,
                        const MKL_INT* M, const MKL_INT* P, const MKL_INT* Q,
                        double* x11, const MKL_INT* ldx11, double* x12,
                        const MKL_INT* ldx12, double* x21, const MKL_INT* ldx21,
                        double* x22, const MKL_INT* ldx22, double* theta,
                        double* u1, const MKL_INT* ldu1, double* u2,
                        const MKL_INT* ldu2, double* v1t, const MKL_INT* ldv1t,
                        double* v2t, const MKL_INT* ldv2t, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info);


void __stdcall CLAPMR( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex8* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall CLAPMR_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall clapmr( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex8* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall clapmr_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* x, const MKL_INT* ldx, MKL_INT* k );

void __stdcall DLAPMR( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       double* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall DLAPMR_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        double* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall dlapmr( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       double* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall dlapmr_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        double* x, const MKL_INT* ldx, MKL_INT* k );

void __stdcall ZLAPMR( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex16* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall ZLAPMR_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall zlapmr( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex16* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall zlapmr_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* x, const MKL_INT* ldx, MKL_INT* k );

void __stdcall SLAPMR( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       float* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall SLAPMR_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        float* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall slapmr( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       float* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall slapmr_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        float* x, const MKL_INT* ldx, MKL_INT* k );

void __stdcall CSYCONV( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* e, MKL_INT* info );
void __stdcall CSYCONV_( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* e, MKL_INT* info );
void __stdcall csyconv( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* e, MKL_INT* info );
void __stdcall csyconv_( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* e, MKL_INT* info );

void __stdcall ZSYCONV( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* e, MKL_INT* info );
void __stdcall ZSYCONV_( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* e, MKL_INT* info );
void __stdcall zsyconv( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* e, MKL_INT* info );
void __stdcall zsyconv_( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* e, MKL_INT* info );

void __stdcall SSYCONV( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       float* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       float* e, MKL_INT* info );
void __stdcall SSYCONV_( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       float* a, const MKL_INT* lda, const MKL_INT* ipiv, 
                       float* e, MKL_INT* info );
void __stdcall ssyconv( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       float* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       float* e, MKL_INT* info );
void __stdcall ssyconv_( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       float* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       float* e, MKL_INT* info );

void __stdcall DSYCONV( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       double* e, MKL_INT* info );
void __stdcall DSYCONV_( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       double* e, MKL_INT* info );
void __stdcall dsyconv( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       double* e, MKL_INT* info );
void __stdcall dsyconv_( const char* uplo, int uplo_len, const char* way, int way_len, const MKL_INT* n,
                       double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       double* e, MKL_INT* info );

void __stdcall CSYSWAPR( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall CSYSWAPR_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall csyswapr( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall csyswapr_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );

void __stdcall ZSYSWAPR( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall ZSYSWAPR_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall zsyswapr( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall zsyswapr_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );

void __stdcall SSYSWAPR( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                         const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall SSYSWAPR_( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                          const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall ssyswapr( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                         const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall ssyswapr_( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                          const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );

void __stdcall DSYSWAPR( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                         const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall DSYSWAPR_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                          const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall dsyswapr( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                         const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall dsyswapr_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                          const MKL_INT* lda, const MKL_INT* i1, const MKL_INT* i2 );

void __stdcall CSYTRI2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall CSYTRI2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall csytri2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall csytri2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZSYTRI2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZSYTRI2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsytri2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsytri2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall SSYTRI2( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYTRI2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, float* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytri2( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytri2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, float* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall DSYTRI2( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSYTRI2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytri2( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytri2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, double* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall CSYTRI2X( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                        MKL_INT* nb, MKL_INT* info );
void __stdcall CSYTRI2X_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                         MKL_INT* nb, MKL_INT* info );
void __stdcall csytri2x( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                        MKL_INT* nb, MKL_INT* info );
void __stdcall csytri2x_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                         MKL_INT* nb, MKL_INT* info );

void __stdcall ZSYTRI2X( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                        MKL_INT* nb, MKL_INT* info );
void __stdcall ZSYTRI2X_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                         MKL_INT* nb, MKL_INT* info );
void __stdcall zsytri2x( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                        MKL_INT* nb, MKL_INT* info );
void __stdcall zsytri2x_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                         MKL_INT* nb, MKL_INT* info );

void __stdcall SSYTRI2X( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, float* work,
                        MKL_INT* nb, MKL_INT* info );
void __stdcall SSYTRI2X_( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, float* work,
                         MKL_INT* nb, MKL_INT* info );
void __stdcall ssytri2x( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, float* work,
                        MKL_INT* nb, MKL_INT* info );
void __stdcall ssytri2x_( const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, float* work,
                         MKL_INT* nb, MKL_INT* info );

void __stdcall DSYTRI2X( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, double* work,
                        MKL_INT* nb, MKL_INT* info );
void __stdcall DSYTRI2X_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, double* work,
                         MKL_INT* nb, MKL_INT* info );
void __stdcall dsytri2x( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, double* work,
                        MKL_INT* nb, MKL_INT* info );
void __stdcall dsytri2x_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                         const MKL_INT* lda, const MKL_INT* ipiv, double* work,
                         MKL_INT* nb, MKL_INT* info );

void __stdcall SLARTGP( float* f, float* g, float* cs, float* sn, float* r );
void __stdcall SLARTGP_( float* f, float* g, float* cs, float* sn, float* r );
void __stdcall slartgp( float* f, float* g, float* cs, float* sn, float* r );
void __stdcall slartgp_( float* f, float* g, float* cs, float* sn, float* r );

void __stdcall DLARTGP( double* f, double* g, double* cs, double* sn, double* r );
void __stdcall DLARTGP_( double* f, double* g, double* cs, double* sn, double* r );
void __stdcall dlartgp( double* f, double* g, double* cs, double* sn, double* r );
void __stdcall dlartgp_( double* f, double* g, double* cs, double* sn, double* r );

void __stdcall SLARTGS( const float* x, const float* y, const float* sigma, float* cs, float* sn );
void __stdcall SLARTGS_( const float* x, const float* y, const float* sigma, float* cs, float* sn );
void __stdcall slartgs( const float* x, const float* y, const float* sigma, float* cs, float* sn );
void __stdcall slartgs_( const float* x, const float* y, const float* sigma, float* cs, float* sn );

void __stdcall DLARTGS( const double* x, const double* y, const double* sigma, double* cs, double* sn );
void __stdcall DLARTGS_( const double* x, const double* y, const double* sigma, double* cs, double* sn );
void __stdcall dlartgs( const double* x, const double* y, const double* sigma, double* cs, double* sn );
void __stdcall dlartgs_( const double* x, const double* y, const double* sigma, double* cs, double* sn );

void __stdcall CSYTRS2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work, MKL_INT* info );
void __stdcall CSYTRS2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work, MKL_INT* info );
void __stdcall csytrs2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work, MKL_INT* info );
void __stdcall csytrs2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work, MKL_INT* info );

void __stdcall ZSYTRS2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZSYTRS2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work, MKL_INT* info );
void __stdcall zsytrs2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work, MKL_INT* info );
void __stdcall zsytrs2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work, MKL_INT* info );

void __stdcall SSYTRS2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       float* b, const MKL_INT* ldb, float* work, MKL_INT* info );
void __stdcall SSYTRS2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       float* b, const MKL_INT* ldb, float* work, MKL_INT* info );
void __stdcall ssytrs2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       float* b, const MKL_INT* ldb, float* work, MKL_INT* info );
void __stdcall ssytrs2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       float* b, const MKL_INT* ldb, float* work, MKL_INT* info );

void __stdcall DSYTRS2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       double* b, const MKL_INT* ldb, double* work, MKL_INT* info );
void __stdcall DSYTRS2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       double* b, const MKL_INT* ldb, double* work, MKL_INT* info );
void __stdcall dsytrs2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       double* b, const MKL_INT* ldb, double* work, MKL_INT* info );
void __stdcall dsytrs2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       double* b, const MKL_INT* ldb, double* work, MKL_INT* info );

void __stdcall CHETRS2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                        MKL_INT* info );
void __stdcall CHETRS2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                         const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                         MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                         MKL_INT* info );
void __stdcall chetrs2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                         const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                         MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                         MKL_INT* info );
void __stdcall chetrs2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                         const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                         MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                         MKL_INT* info );

void __stdcall ZHETRS2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZHETRS2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work, MKL_INT* info );
void __stdcall zhetrs2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work, MKL_INT* info );
void __stdcall zhetrs2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work, MKL_INT* info );

/* LAPACK 3.2 routines */

void __stdcall CBDSQR( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                       const MKL_INT* nru, const MKL_INT* ncc, float* d, float* e,
                       MKL_Complex8* vt, const MKL_INT* ldvt, MKL_Complex8* u,
                       const MKL_INT* ldu, MKL_Complex8* c, const MKL_INT* ldc,
                       float* rwork, MKL_INT* info );
void __stdcall CBDSQR_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                        const MKL_INT* nru, const MKL_INT* ncc, float* d, float* e,
                        MKL_Complex8* vt, const MKL_INT* ldvt, MKL_Complex8* u,
                        const MKL_INT* ldu, MKL_Complex8* c, const MKL_INT* ldc,
                        float* rwork, MKL_INT* info );
void __stdcall cbdsqr( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                       const MKL_INT* nru, const MKL_INT* ncc, float* d, float* e,
                       MKL_Complex8* vt, const MKL_INT* ldvt, MKL_Complex8* u,
                       const MKL_INT* ldu, MKL_Complex8* c, const MKL_INT* ldc,
                       float* rwork, MKL_INT* info );
void __stdcall cbdsqr_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                        const MKL_INT* nru, const MKL_INT* ncc, float* d, float* e,
                        MKL_Complex8* vt, const MKL_INT* ldvt, MKL_Complex8* u,
                        const MKL_INT* ldu, MKL_Complex8* c, const MKL_INT* ldc,
                        float* rwork, MKL_INT* info );

void __stdcall CGBBRD( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                       MKL_Complex8* ab, const MKL_INT* ldab, float* d, float* e,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* pt,
                       const MKL_INT* ldpt, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CGBBRD_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                        MKL_Complex8* ab, const MKL_INT* ldab, float* d, float* e,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* pt,
                        const MKL_INT* ldpt, MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgbbrd( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                       MKL_Complex8* ab, const MKL_INT* ldab, float* d, float* e,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* pt,
                       const MKL_INT* ldpt, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgbbrd_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                        MKL_Complex8* ab, const MKL_INT* ldab, float* d, float* e,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* pt,
                        const MKL_INT* ldpt, MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CGBCON( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                       const MKL_INT* ipiv, const float* anorm, float* rcond,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CGBCON_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                        const MKL_INT* ipiv, const float* anorm, float* rcond,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgbcon( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                       const MKL_INT* ipiv, const float* anorm, float* rcond,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgbcon_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                        const MKL_INT* ipiv, const float* anorm, float* rcond,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CGBEQUB( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                        float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                        MKL_INT* info );
void __stdcall CGBEQUB_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                         float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                         MKL_INT* info );
void __stdcall cgbequb( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                        float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                        MKL_INT* info );
void __stdcall cgbequb_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                         float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                         MKL_INT* info );

void __stdcall CGBEQU( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                       float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                       MKL_INT* info );
void __stdcall CGBEQU_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                        float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                        MKL_INT* info );
void __stdcall cgbequ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                       float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                       MKL_INT* info );
void __stdcall cgbequ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                        float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                        MKL_INT* info );

void __stdcall CGBRFS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex8* ab,
                       const MKL_INT* ldab, const MKL_Complex8* afb,
                       const MKL_INT* ldafb, const MKL_INT* ipiv, const MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                       float* ferr, float* berr, MKL_Complex8* work, float* rwork,
                       MKL_INT* info );
void __stdcall CGBRFS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex8* ab,
                        const MKL_INT* ldab, const MKL_Complex8* afb,
                        const MKL_INT* ldafb, const MKL_INT* ipiv, const MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                        float* ferr, float* berr, MKL_Complex8* work, float* rwork,
                        MKL_INT* info );
void __stdcall cgbrfs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex8* ab,
                       const MKL_INT* ldab, const MKL_Complex8* afb,
                       const MKL_INT* ldafb, const MKL_INT* ipiv, const MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                       float* ferr, float* berr, MKL_Complex8* work, float* rwork,
                       MKL_INT* info );
void __stdcall cgbrfs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex8* ab,
                        const MKL_INT* ldab, const MKL_Complex8* afb,
                        const MKL_INT* ldafb, const MKL_INT* ipiv, const MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                        float* ferr, float* berr, MKL_Complex8* work, float* rwork,
                        MKL_INT* info );

void __stdcall CGBRFSX( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        const MKL_Complex8* ab, const MKL_INT* ldab,
                        const MKL_Complex8* afb, const MKL_INT* ldafb,
                        const MKL_INT* ipiv, const float* r, const float* c,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CGBRFSX_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         const MKL_Complex8* ab, const MKL_INT* ldab,
                         const MKL_Complex8* afb, const MKL_INT* ldafb,
                         const MKL_INT* ipiv, const float* r, const float* c,
                         const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                         const MKL_INT* ldx, float* rcond, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgbrfsx( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        const MKL_Complex8* ab, const MKL_INT* ldab,
                        const MKL_Complex8* afb, const MKL_INT* ldafb,
                        const MKL_INT* ipiv, const float* r, const float* c,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgbrfsx_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         const MKL_Complex8* ab, const MKL_INT* ldab,
                         const MKL_Complex8* afb, const MKL_INT* ldafb,
                         const MKL_INT* ipiv, const float* r, const float* c,
                         const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                         const MKL_INT* ldx, float* rcond, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CGBSV( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                      const MKL_INT* nrhs, MKL_Complex8* ab, const MKL_INT* ldab,
                      MKL_INT* ipiv, MKL_Complex8* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall CGBSV_( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                       const MKL_INT* nrhs, MKL_Complex8* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall cgbsv( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                      const MKL_INT* nrhs, MKL_Complex8* ab, const MKL_INT* ldab,
                      MKL_INT* ipiv, MKL_Complex8* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall cgbsv_( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                       const MKL_INT* nrhs, MKL_Complex8* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* info );

void __stdcall CGBSVX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                       MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* afb,
                       const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                       float* c, MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CGBSVX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* afb,
                        const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                        float* c, MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgbsvx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                       MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* afb,
                       const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                       float* c, MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgbsvx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* afb,
                        const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                        float* c, MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CGBSVXX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* afb,
                        const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                        float* c, MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CGBSVXX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* afb,
                         const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                         float* c, MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                         const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgbsvxx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* afb,
                        const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                        float* c, MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgbsvxx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* afb,
                         const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                         float* c, MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                         const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CGBTF2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, MKL_Complex8* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall CGBTF2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, MKL_Complex8* ab, const MKL_INT* ldab,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall cgbtf2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, MKL_Complex8* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall cgbtf2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, MKL_Complex8* ab, const MKL_INT* ldab,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall CGBTRF( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, MKL_Complex8* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall CGBTRF_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, MKL_Complex8* ab, const MKL_INT* ldab,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall cgbtrf( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, MKL_Complex8* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall cgbtrf_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, MKL_Complex8* ab, const MKL_INT* ldab,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall CGBTRS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex8* ab,
                       const MKL_INT* ldab, const MKL_INT* ipiv, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall CGBTRS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex8* ab,
                        const MKL_INT* ldab, const MKL_INT* ipiv, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall cgbtrs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex8* ab,
                       const MKL_INT* ldab, const MKL_INT* ipiv, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall cgbtrs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex8* ab,
                        const MKL_INT* ldab, const MKL_INT* ipiv, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall CGEBAK( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const float* scale,
                       const MKL_INT* m, MKL_Complex8* v, const MKL_INT* ldv,
                       MKL_INT* info );
void __stdcall CGEBAK_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const float* scale,
                        const MKL_INT* m, MKL_Complex8* v, const MKL_INT* ldv,
                        MKL_INT* info );
void __stdcall cgebak( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const float* scale,
                       const MKL_INT* m, MKL_Complex8* v, const MKL_INT* ldv,
                       MKL_INT* info );
void __stdcall cgebak_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const float* scale,
                        const MKL_INT* m, MKL_Complex8* v, const MKL_INT* ldv,
                        MKL_INT* info );

void __stdcall CGEBAL( const char* job, int job_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ilo, MKL_INT* ihi, float* scale,
                       MKL_INT* info );
void __stdcall CGEBAL_( const char* job, int job_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ilo, MKL_INT* ihi, float* scale,
                        MKL_INT* info );
void __stdcall cgebal( const char* job, int job_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ilo, MKL_INT* ihi, float* scale,
                       MKL_INT* info );
void __stdcall cgebal_( const char* job, int job_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ilo, MKL_INT* ihi, float* scale,
                        MKL_INT* info );

void __stdcall CGEBD2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, float* d, float* e, MKL_Complex8* tauq,
                       MKL_Complex8* taup, MKL_Complex8* work, MKL_INT* info );
void __stdcall CGEBD2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, float* d, float* e, MKL_Complex8* tauq,
                        MKL_Complex8* taup, MKL_Complex8* work, MKL_INT* info );
void __stdcall cgebd2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, float* d, float* e, MKL_Complex8* tauq,
                       MKL_Complex8* taup, MKL_Complex8* work, MKL_INT* info );
void __stdcall cgebd2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, float* d, float* e, MKL_Complex8* tauq,
                        MKL_Complex8* taup, MKL_Complex8* work, MKL_INT* info );

void __stdcall CGEBRD( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, float* d, float* e, MKL_Complex8* tauq,
                       MKL_Complex8* taup, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CGEBRD_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, float* d, float* e, MKL_Complex8* tauq,
                        MKL_Complex8* taup, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall cgebrd( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, float* d, float* e, MKL_Complex8* tauq,
                       MKL_Complex8* taup, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall cgebrd_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, float* d, float* e, MKL_Complex8* tauq,
                        MKL_Complex8* taup, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CGECON( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const float* anorm, float* rcond,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CGECON_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const float* anorm, float* rcond,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgecon( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const float* anorm, float* rcond,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgecon_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const float* anorm, float* rcond,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CGEEQUB( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, float* r, float* c, float* rowcnd,
                        float* colcnd, float* amax, MKL_INT* info );
void __stdcall CGEEQUB_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                         const MKL_INT* lda, float* r, float* c, float* rowcnd,
                         float* colcnd, float* amax, MKL_INT* info );
void __stdcall cgeequb( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, float* r, float* c, float* rowcnd,
                        float* colcnd, float* amax, MKL_INT* info );
void __stdcall cgeequb_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                         const MKL_INT* lda, float* r, float* c, float* rowcnd,
                         float* colcnd, float* amax, MKL_INT* info );

void __stdcall CGEEQU( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, float* r, float* c, float* rowcnd,
                       float* colcnd, float* amax, MKL_INT* info );
void __stdcall CGEEQU_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, float* r, float* c, float* rowcnd,
                        float* colcnd, float* amax, MKL_INT* info );
void __stdcall cgeequ( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, float* r, float* c, float* rowcnd,
                       float* colcnd, float* amax, MKL_INT* info );
void __stdcall cgeequ_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, float* r, float* c, float* rowcnd,
                        float* colcnd, float* amax, MKL_INT* info );

void __stdcall CGEES( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                      MKL_C_SELECT_FUNCTION_1 select, const MKL_INT* n, MKL_Complex8* a,
                      const MKL_INT* lda, MKL_INT* sdim, MKL_Complex8* w,
                      MKL_Complex8* vs, const MKL_INT* ldvs, MKL_Complex8* work,
                      const MKL_INT* lwork, float* rwork, MKL_INT* bwork,
                      MKL_INT* info );
void __stdcall CGEES_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_C_SELECT_FUNCTION_1 select, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* sdim, MKL_Complex8* w,
                       MKL_Complex8* vs, const MKL_INT* ldvs, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* bwork,
                       MKL_INT* info );
void __stdcall cgees( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                      MKL_C_SELECT_FUNCTION_1 select, const MKL_INT* n, MKL_Complex8* a,
                      const MKL_INT* lda, MKL_INT* sdim, MKL_Complex8* w,
                      MKL_Complex8* vs, const MKL_INT* ldvs, MKL_Complex8* work,
                      const MKL_INT* lwork, float* rwork, MKL_INT* bwork,
                      MKL_INT* info );
void __stdcall cgees_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_C_SELECT_FUNCTION_1 select, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* sdim, MKL_Complex8* w,
                       MKL_Complex8* vs, const MKL_INT* ldvs, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* bwork,
                       MKL_INT* info );

void __stdcall CGEESX( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_C_SELECT_FUNCTION_1 select, const char* sense, int sense_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_INT* sdim, MKL_Complex8* w, MKL_Complex8* vs,
                       const MKL_INT* ldvs, float* rconde, float* rcondv,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* bwork, MKL_INT* info );
void __stdcall CGEESX_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                        MKL_C_SELECT_FUNCTION_1 select, const char* sense, int sense_len,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_INT* sdim, MKL_Complex8* w, MKL_Complex8* vs,
                        const MKL_INT* ldvs, float* rconde, float* rcondv,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* bwork, MKL_INT* info );
void __stdcall cgeesx( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_C_SELECT_FUNCTION_1 select, const char* sense, int sense_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_INT* sdim, MKL_Complex8* w, MKL_Complex8* vs,
                       const MKL_INT* ldvs, float* rconde, float* rcondv,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* bwork, MKL_INT* info );
void __stdcall cgeesx_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                        MKL_C_SELECT_FUNCTION_1 select, const char* sense, int sense_len,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_INT* sdim, MKL_Complex8* w, MKL_Complex8* vs,
                        const MKL_INT* ldvs, float* rconde, float* rcondv,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* bwork, MKL_INT* info );

void __stdcall CGEEV( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* w,
                      MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                      const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                      float* rwork, MKL_INT* info );
void __stdcall CGEEV_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* w,
                       MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                       const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );
void __stdcall cgeev( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* w,
                      MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                      const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                      float* rwork, MKL_INT* info );
void __stdcall cgeev_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* w,
                       MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                       const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );

void __stdcall CGEEVX( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* w, MKL_Complex8* vl,
                       const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                       MKL_INT* ilo, MKL_INT* ihi, float* scale, float* abnrm,
                       float* rconde, float* rcondv, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* info );
void __stdcall CGEEVX_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* w, MKL_Complex8* vl,
                        const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, float* scale, float* abnrm,
                        float* rconde, float* rcondv, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, MKL_INT* info );
void __stdcall cgeevx( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* w, MKL_Complex8* vl,
                       const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                       MKL_INT* ilo, MKL_INT* ihi, float* scale, float* abnrm,
                       float* rconde, float* rcondv, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* info );
void __stdcall cgeevx_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* w, MKL_Complex8* vl,
                        const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, float* scale, float* abnrm,
                        float* rconde, float* rcondv, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, MKL_INT* info );

void __stdcall CGEGS( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                      MKL_Complex8* vsl, const MKL_INT* ldvsl, MKL_Complex8* vsr,
                      const MKL_INT* ldvsr, MKL_Complex8* work, const MKL_INT* lwork,
                      float* rwork, MKL_INT* info );
void __stdcall CGEGS_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                       MKL_Complex8* vsl, const MKL_INT* ldvsl, MKL_Complex8* vsr,
                       const MKL_INT* ldvsr, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );
void __stdcall cgegs( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                      MKL_Complex8* vsl, const MKL_INT* ldvsl, MKL_Complex8* vsr,
                      const MKL_INT* ldvsr, MKL_Complex8* work, const MKL_INT* lwork,
                      float* rwork, MKL_INT* info );
void __stdcall cgegs_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                       MKL_Complex8* vsl, const MKL_INT* ldvsl, MKL_Complex8* vsr,
                       const MKL_INT* ldvsr, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );

void __stdcall CGEGV( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                      MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                      const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                      float* rwork, MKL_INT* info );
void __stdcall CGEGV_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                       MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                       const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );
void __stdcall cgegv( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                      MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                      const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                      float* rwork, MKL_INT* info );
void __stdcall cgegv_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                       MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                       const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );

void __stdcall CGEHD2( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CGEHD2_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall cgehd2( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall cgehd2_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall CGEHRD( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGEHRD_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgehrd( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgehrd_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CGELQ2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall CGELQ2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        MKL_INT* info );
void __stdcall cgelq2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall cgelq2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        MKL_INT* info );

void __stdcall CGELQF( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGELQF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgelqf( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgelqf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall CGELSD( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, float* s, const float* rcond, MKL_INT* rank,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall CGELSD_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, float* s, const float* rcond, MKL_INT* rank,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall cgelsd( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, float* s, const float* rcond, MKL_INT* rank,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall cgelsd_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, float* s, const float* rcond, MKL_INT* rank,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall CGELS( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                      MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGELS_( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgels( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                      MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgels_( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall CGELSS( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, float* s, const float* rcond, MKL_INT* rank,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* info );
void __stdcall CGELSS_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, float* s, const float* rcond, MKL_INT* rank,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* info );
void __stdcall cgelss( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, float* s, const float* rcond, MKL_INT* rank,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* info );
void __stdcall cgelss_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, float* s, const float* rcond, MKL_INT* rank,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* info );

void __stdcall CGELSX( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* jpvt, const float* rcond,
                       MKL_INT* rank, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CGELSX_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* jpvt, const float* rcond,
                        MKL_INT* rank, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgelsx( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* jpvt, const float* rcond,
                       MKL_INT* rank, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgelsx_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* jpvt, const float* rcond,
                        MKL_INT* rank, MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CGELSY( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* jpvt, const float* rcond,
                       MKL_INT* rank, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );
void __stdcall CGELSY_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* jpvt, const float* rcond,
                        MKL_INT* rank, MKL_Complex8* work, const MKL_INT* lwork,
                        float* rwork, MKL_INT* info );
void __stdcall cgelsy( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* jpvt, const float* rcond,
                       MKL_INT* rank, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );
void __stdcall cgelsy_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* jpvt, const float* rcond,
                        MKL_INT* rank, MKL_Complex8* work, const MKL_INT* lwork,
                        float* rwork, MKL_INT* info );

void __stdcall CGEQL2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall CGEQL2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        MKL_INT* info );
void __stdcall cgeql2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall cgeql2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        MKL_INT* info );

void __stdcall CGEQLF( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGEQLF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgeqlf( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgeqlf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall CGEQP3( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* info );
void __stdcall CGEQP3_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* info );
void __stdcall cgeqp3( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* info );
void __stdcall cgeqp3_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* info );

void __stdcall CGEQPF( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex8* tau,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CGEQPF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex8* tau,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgeqpf( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex8* tau,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgeqpf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex8* tau,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CGEQR2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall CGEQR2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        MKL_INT* info );
void __stdcall cgeqr2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall cgeqr2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        MKL_INT* info );

void __stdcall CGEQR2P( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        MKL_INT* info );
void __stdcall CGEQR2P_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                         MKL_INT* info );
void __stdcall cgeqr2p( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        MKL_INT* info );
void __stdcall cgeqr2p_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                         MKL_INT* info );

void __stdcall CGEQRF( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGEQRF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgeqrf( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgeqrf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall CGEQRFP( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGEQRFP_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgeqrfp( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgeqrfp_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall CGERFS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                       float* ferr, float* berr, MKL_Complex8* work, float* rwork,
                       MKL_INT* info );
void __stdcall CGERFS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall cgerfs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                       float* ferr, float* berr, MKL_Complex8* work, float* rwork,
                       MKL_INT* info );
void __stdcall cgerfs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );

void __stdcall CGERFSX( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const float* r, const float* c, const MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                        float* rcond, float* berr, const MKL_INT* n_err_bnds,
                        float* err_bnds_norm, float* err_bnds_comp,
                        const MKL_INT* nparams, float* params, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall CGERFSX_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* af, const MKL_INT* ldaf,
                         const MKL_INT* ipiv, const float* r, const float* c,
                         const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                         const MKL_INT* ldx, float* rcond, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgerfsx( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const float* r, const float* c, const MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                        float* rcond, float* berr, const MKL_INT* n_err_bnds,
                        float* err_bnds_norm, float* err_bnds_comp,
                        const MKL_INT* nparams, float* params, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall cgerfsx_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* af, const MKL_INT* ldaf,
                         const MKL_INT* ipiv, const float* r, const float* c,
                         const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                         const MKL_INT* ldx, float* rcond, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CGERQ2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall CGERQ2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        MKL_INT* info );
void __stdcall cgerq2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall cgerq2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        MKL_INT* info );

void __stdcall CGERQF( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGERQF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgerqf( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall cgerqf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall CGESC2( const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* rhs, const MKL_INT* ipiv, const MKL_INT* jpiv,
                       float* scale );
void __stdcall CGESC2_( const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* rhs, const MKL_INT* ipiv, const MKL_INT* jpiv,
                        float* scale );
void __stdcall cgesc2( const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* rhs, const MKL_INT* ipiv, const MKL_INT* jpiv,
                       float* scale );
void __stdcall cgesc2_( const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* rhs, const MKL_INT* ipiv, const MKL_INT* jpiv,
                        float* scale );

void __stdcall CGESDD( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, float* s, MKL_Complex8* u,
                       const MKL_INT* ldu, MKL_Complex8* vt, const MKL_INT* ldvt,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall CGESDD_( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, float* s, MKL_Complex8* u,
                        const MKL_INT* ldu, MKL_Complex8* vt, const MKL_INT* ldvt,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall cgesdd( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, float* s, MKL_Complex8* u,
                       const MKL_INT* ldu, MKL_Complex8* vt, const MKL_INT* ldvt,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall cgesdd_( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, float* s, MKL_Complex8* u,
                        const MKL_INT* ldu, MKL_Complex8* vt, const MKL_INT* ldvt,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall CGESVD( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, float* s,
                       MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* vt,
                       const MKL_INT* ldvt, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );
void __stdcall CGESVD_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, float* s,
                        MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* vt,
                        const MKL_INT* ldvt, MKL_Complex8* work, const MKL_INT* lwork,
                        float* rwork, MKL_INT* info );
void __stdcall cgesvd( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, float* s,
                       MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* vt,
                       const MKL_INT* ldvt, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );
void __stdcall cgesvd_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda, float* s,
                        MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* vt,
                        const MKL_INT* ldvt, MKL_Complex8* work, const MKL_INT* lwork,
                        float* rwork, MKL_INT* info );

void __stdcall CGESV( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* a,
                      const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall CGESV_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall cgesv( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* a,
                      const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall cgesv_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );

void __stdcall CGESVX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len,
                       float* r, float* c, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CGESVX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, float* r, float* c, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                        float* rcond, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall cgesvx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len,
                       float* r, float* c, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgesvx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, float* r, float* c, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                        float* rcond, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );

void __stdcall CGESVXX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, float* r, float* c, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                        float* rcond, float* rpvgrw, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CGESVXX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                         MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                         char* equed, int equed_len, float* r, float* c, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                         float* rcond, float* rpvgrw, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgesvxx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, float* r, float* c, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                        float* rcond, float* rpvgrw, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgesvxx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                         MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                         char* equed, int equed_len, float* r, float* c, MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                         float* rcond, float* rpvgrw, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CGETC2( const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* jpiv, MKL_INT* info );
void __stdcall CGETC2_( const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* jpiv, MKL_INT* info );
void __stdcall cgetc2( const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* jpiv, MKL_INT* info );
void __stdcall cgetc2_( const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* jpiv, MKL_INT* info );

void __stdcall CGETF2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall CGETF2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall cgetf2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall cgetf2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall CGETRF( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall CGETRF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall cgetrf( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall cgetrf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall MKL_CGETRFNPI( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                              MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall MKL_CGETRFNPI_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                               MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_cgetrfnpi( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                              MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_cgetrfnpi_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                               MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall CGETRI( const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_INT* ipiv, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CGETRI_( const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall cgetri( const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_INT* ipiv, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall cgetri_( const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CGETRS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall CGETRS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall cgetrs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall cgetrs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall CGGBAK( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const float* lscale,
                       const float* rscale, const MKL_INT* m, MKL_Complex8* v,
                       const MKL_INT* ldv, MKL_INT* info );
void __stdcall CGGBAK_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const float* lscale,
                        const float* rscale, const MKL_INT* m, MKL_Complex8* v,
                        const MKL_INT* ldv, MKL_INT* info );
void __stdcall cggbak( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const float* lscale,
                       const float* rscale, const MKL_INT* m, MKL_Complex8* v,
                       const MKL_INT* ldv, MKL_INT* info );
void __stdcall cggbak_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const float* lscale,
                        const float* rscale, const MKL_INT* m, MKL_Complex8* v,
                        const MKL_INT* ldv, MKL_INT* info );

void __stdcall CGGBAL( const char* job, int job_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* ilo, MKL_INT* ihi, float* lscale, float* rscale,
                       float* work, MKL_INT* info );
void __stdcall CGGBAL_( const char* job, int job_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_INT* ilo, MKL_INT* ihi, float* lscale, float* rscale,
                        float* work, MKL_INT* info );
void __stdcall cggbal( const char* job, int job_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* ilo, MKL_INT* ihi, float* lscale, float* rscale,
                       float* work, MKL_INT* info );
void __stdcall cggbal_( const char* job, int job_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_INT* ilo, MKL_INT* ihi, float* lscale, float* rscale,
                        float* work, MKL_INT* info );

void __stdcall CGGES( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                      MKL_C_SELECT_FUNCTION_2 selctg, const MKL_INT* n, MKL_Complex8* a,
                      const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                      MKL_INT* sdim, MKL_Complex8* alpha, MKL_Complex8* beta,
                      MKL_Complex8* vsl, const MKL_INT* ldvsl, MKL_Complex8* vsr,
                      const MKL_INT* ldvsr, MKL_Complex8* work, const MKL_INT* lwork,
                      float* rwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall CGGES_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_C_SELECT_FUNCTION_2 selctg, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* sdim, MKL_Complex8* alpha, MKL_Complex8* beta,
                       MKL_Complex8* vsl, const MKL_INT* ldvsl, MKL_Complex8* vsr,
                       const MKL_INT* ldvsr, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall cgges( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                      MKL_C_SELECT_FUNCTION_2 selctg, const MKL_INT* n, MKL_Complex8* a,
                      const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                      MKL_INT* sdim, MKL_Complex8* alpha, MKL_Complex8* beta,
                      MKL_Complex8* vsl, const MKL_INT* ldvsl, MKL_Complex8* vsr,
                      const MKL_INT* ldvsr, MKL_Complex8* work, const MKL_INT* lwork,
                      float* rwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall cgges_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_C_SELECT_FUNCTION_2 selctg, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* sdim, MKL_Complex8* alpha, MKL_Complex8* beta,
                       MKL_Complex8* vsl, const MKL_INT* ldvsl, MKL_Complex8* vsr,
                       const MKL_INT* ldvsr, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* bwork, MKL_INT* info );

void __stdcall CGGESX( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_C_SELECT_FUNCTION_2 selctg, const char* sense, int sense_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* sdim,
                       MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* vsl,
                       const MKL_INT* ldvsl, MKL_Complex8* vsr, const MKL_INT* ldvsr,
                       float* rconde, float* rcondv, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall CGGESX_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                        MKL_C_SELECT_FUNCTION_2 selctg, const char* sense, int sense_len,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* sdim,
                        MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* vsl,
                        const MKL_INT* ldvsl, MKL_Complex8* vsr, const MKL_INT* ldvsr,
                        float* rconde, float* rcondv, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall cggesx( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_C_SELECT_FUNCTION_2 selctg, const char* sense, int sense_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* sdim,
                       MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* vsl,
                       const MKL_INT* ldvsl, MKL_Complex8* vsr, const MKL_INT* ldvsr,
                       float* rconde, float* rcondv, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall cggesx_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                        MKL_C_SELECT_FUNCTION_2 selctg, const char* sense, int sense_len,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* sdim,
                        MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* vsl,
                        const MKL_INT* ldvsl, MKL_Complex8* vsr, const MKL_INT* ldvsr,
                        float* rconde, float* rcondv, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* bwork, MKL_INT* info );

void __stdcall CGGEV( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                      MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                      const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                      float* rwork, MKL_INT* info );
void __stdcall CGGEV_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                       MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                       const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );
void __stdcall cggev( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                      MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                      const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                      float* rwork, MKL_INT* info );
void __stdcall cggev_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* alpha, MKL_Complex8* beta,
                       MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                       const MKL_INT* ldvr, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );

void __stdcall CGGEVX( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* vl,
                       const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                       MKL_INT* ilo, MKL_INT* ihi, float* lscale, float* rscale,
                       float* abnrm, float* bbnrm, float* rconde, float* rcondv,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* iwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall CGGEVX_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* vl,
                        const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, float* lscale, float* rscale,
                        float* abnrm, float* bbnrm, float* rconde, float* rcondv,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* iwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall cggevx( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* vl,
                       const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                       MKL_INT* ilo, MKL_INT* ihi, float* lscale, float* rscale,
                       float* abnrm, float* bbnrm, float* rconde, float* rcondv,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* iwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall cggevx_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* vl,
                        const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, float* lscale, float* rscale,
                        float* abnrm, float* bbnrm, float* rconde, float* rcondv,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* iwork, MKL_INT* bwork, MKL_INT* info );

void __stdcall CGGGLM( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* d, MKL_Complex8* x,
                       MKL_Complex8* y, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CGGGLM_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* d, MKL_Complex8* x,
                        MKL_Complex8* y, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall cggglm( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* d, MKL_Complex8* x,
                       MKL_Complex8* y, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall cggglm_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* d, MKL_Complex8* x,
                        MKL_Complex8* y, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CGGHRD( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* z,
                       const MKL_INT* ldz, MKL_INT* info );
void __stdcall CGGHRD_( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* z,
                        const MKL_INT* ldz, MKL_INT* info );
void __stdcall cgghrd( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* z,
                       const MKL_INT* ldz, MKL_INT* info );
void __stdcall cgghrd_( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* z,
                        const MKL_INT* ldz, MKL_INT* info );

void __stdcall CGGLSE( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* c, MKL_Complex8* d,
                       MKL_Complex8* x, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CGGLSE_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* c, MKL_Complex8* d,
                        MKL_Complex8* x, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall cgglse( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* c, MKL_Complex8* d,
                       MKL_Complex8* x, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall cgglse_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* c, MKL_Complex8* d,
                        MKL_Complex8* x, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CGGQRF( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* taua,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* taub,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGGQRF_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* taua,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* taub,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cggqrf( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* taua,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* taub,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cggqrf_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* taua,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* taub,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CGGRQF( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* taua,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* taub,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CGGRQF_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* taua,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* taub,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cggrqf( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* taua,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* taub,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cggrqf_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* taua,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* taub,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CGGSVD( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                       MKL_INT* l, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, float* alpha, float* beta, MKL_Complex8* u,
                       const MKL_INT* ldu, MKL_Complex8* v, const MKL_INT* ldv,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* work,
                       float* rwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall CGGSVD_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                        MKL_INT* l, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, float* alpha, float* beta, MKL_Complex8* u,
                        const MKL_INT* ldu, MKL_Complex8* v, const MKL_INT* ldv,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* work,
                        float* rwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall cggsvd( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                       MKL_INT* l, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, float* alpha, float* beta, MKL_Complex8* u,
                       const MKL_INT* ldu, MKL_Complex8* v, const MKL_INT* ldv,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* work,
                       float* rwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall cggsvd_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                        MKL_INT* l, MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, float* alpha, float* beta, MKL_Complex8* u,
                        const MKL_INT* ldu, MKL_Complex8* v, const MKL_INT* ldv,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* work,
                        float* rwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall CGGSVP( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, const float* tola, const float* tolb,
                       MKL_INT* k, MKL_INT* l, MKL_Complex8* u, const MKL_INT* ldu,
                       MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* q,
                       const MKL_INT* ldq, MKL_INT* iwork, float* rwork,
                       MKL_Complex8* tau, MKL_Complex8* work, MKL_INT* info );
void __stdcall CGGSVP_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, const float* tola, const float* tolb,
                        MKL_INT* k, MKL_INT* l, MKL_Complex8* u, const MKL_INT* ldu,
                        MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* q,
                        const MKL_INT* ldq, MKL_INT* iwork, float* rwork,
                        MKL_Complex8* tau, MKL_Complex8* work, MKL_INT* info );
void __stdcall cggsvp( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, const float* tola, const float* tolb,
                       MKL_INT* k, MKL_INT* l, MKL_Complex8* u, const MKL_INT* ldu,
                       MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* q,
                       const MKL_INT* ldq, MKL_INT* iwork, float* rwork,
                       MKL_Complex8* tau, MKL_Complex8* work, MKL_INT* info );
void __stdcall cggsvp_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, const float* tola, const float* tolb,
                        MKL_INT* k, MKL_INT* l, MKL_Complex8* u, const MKL_INT* ldu,
                        MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* q,
                        const MKL_INT* ldq, MKL_INT* iwork, float* rwork,
                        MKL_Complex8* tau, MKL_Complex8* work, MKL_INT* info );

void __stdcall CGTCON( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* dl,
                       const MKL_Complex8* d, const MKL_Complex8* du,
                       const MKL_Complex8* du2, const MKL_INT* ipiv, const float* anorm,
                       float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall CGTCON_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* dl,
                        const MKL_Complex8* d, const MKL_Complex8* du,
                        const MKL_Complex8* du2, const MKL_INT* ipiv, const float* anorm,
                        float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall cgtcon( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* dl,
                       const MKL_Complex8* d, const MKL_Complex8* du,
                       const MKL_Complex8* du2, const MKL_INT* ipiv, const float* anorm,
                       float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall cgtcon_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* dl,
                        const MKL_Complex8* d, const MKL_Complex8* du,
                        const MKL_Complex8* du2, const MKL_INT* ipiv, const float* anorm,
                        float* rcond, MKL_Complex8* work, MKL_INT* info );

void __stdcall CGTRFS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* dl, const MKL_Complex8* d,
                       const MKL_Complex8* du, const MKL_Complex8* dlf,
                       const MKL_Complex8* df, const MKL_Complex8* duf,
                       const MKL_Complex8* du2, const MKL_INT* ipiv,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall CGTRFS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* dl, const MKL_Complex8* d,
                        const MKL_Complex8* du, const MKL_Complex8* dlf,
                        const MKL_Complex8* df, const MKL_Complex8* duf,
                        const MKL_Complex8* du2, const MKL_INT* ipiv,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall cgtrfs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* dl, const MKL_Complex8* d,
                       const MKL_Complex8* du, const MKL_Complex8* dlf,
                       const MKL_Complex8* df, const MKL_Complex8* duf,
                       const MKL_Complex8* du2, const MKL_INT* ipiv,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall cgtrfs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* dl, const MKL_Complex8* d,
                        const MKL_Complex8* du, const MKL_Complex8* dlf,
                        const MKL_Complex8* df, const MKL_Complex8* duf,
                        const MKL_Complex8* du2, const MKL_INT* ipiv,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );

void __stdcall CGTSV( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* dl,
                      MKL_Complex8* d, MKL_Complex8* du, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall CGTSV_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* dl,
                       MKL_Complex8* d, MKL_Complex8* du, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall cgtsv( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* dl,
                      MKL_Complex8* d, MKL_Complex8* du, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall cgtsv_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* dl,
                       MKL_Complex8* d, MKL_Complex8* du, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );

void __stdcall CGTSVX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex8* dl,
                       const MKL_Complex8* d, const MKL_Complex8* du, MKL_Complex8* dlf,
                       MKL_Complex8* df, MKL_Complex8* duf, MKL_Complex8* du2,
                       MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CGTSVX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* dl,
                        const MKL_Complex8* d, const MKL_Complex8* du, MKL_Complex8* dlf,
                        MKL_Complex8* df, MKL_Complex8* duf, MKL_Complex8* du2,
                        MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgtsvx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex8* dl,
                       const MKL_Complex8* d, const MKL_Complex8* du, MKL_Complex8* dlf,
                       MKL_Complex8* df, MKL_Complex8* duf, MKL_Complex8* du2,
                       MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cgtsvx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* dl,
                        const MKL_Complex8* d, const MKL_Complex8* du, MKL_Complex8* dlf,
                        MKL_Complex8* df, MKL_Complex8* duf, MKL_Complex8* du2,
                        MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CGTTRF( const MKL_INT* n, MKL_Complex8* dl, MKL_Complex8* d,
                       MKL_Complex8* du, MKL_Complex8* du2, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall CGTTRF_( const MKL_INT* n, MKL_Complex8* dl, MKL_Complex8* d,
                        MKL_Complex8* du, MKL_Complex8* du2, MKL_INT* ipiv,
                        MKL_INT* info );
void __stdcall cgttrf( const MKL_INT* n, MKL_Complex8* dl, MKL_Complex8* d,
                       MKL_Complex8* du, MKL_Complex8* du2, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall cgttrf_( const MKL_INT* n, MKL_Complex8* dl, MKL_Complex8* d,
                        MKL_Complex8* du, MKL_Complex8* du2, MKL_INT* ipiv,
                        MKL_INT* info );

void __stdcall CGTTRS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* dl, const MKL_Complex8* d,
                       const MKL_Complex8* du, const MKL_Complex8* du2,
                       const MKL_INT* ipiv, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall CGTTRS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* dl, const MKL_Complex8* d,
                        const MKL_Complex8* du, const MKL_Complex8* du2,
                        const MKL_INT* ipiv, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall cgttrs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* dl, const MKL_Complex8* d,
                       const MKL_Complex8* du, const MKL_Complex8* du2,
                       const MKL_INT* ipiv, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall cgttrs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* dl, const MKL_Complex8* d,
                        const MKL_Complex8* du, const MKL_Complex8* du2,
                        const MKL_INT* ipiv, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_INT* info );

void __stdcall CGTTS2( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* dl, const MKL_Complex8* d,
                       const MKL_Complex8* du, const MKL_Complex8* du2,
                       const MKL_INT* ipiv, MKL_Complex8* b, const MKL_INT* ldb );
void __stdcall CGTTS2_( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* dl, const MKL_Complex8* d,
                        const MKL_Complex8* du, const MKL_Complex8* du2,
                        const MKL_INT* ipiv, MKL_Complex8* b, const MKL_INT* ldb );
void __stdcall cgtts2( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* dl, const MKL_Complex8* d,
                       const MKL_Complex8* du, const MKL_Complex8* du2,
                       const MKL_INT* ipiv, MKL_Complex8* b, const MKL_INT* ldb );
void __stdcall cgtts2_( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* dl, const MKL_Complex8* d,
                        const MKL_Complex8* du, const MKL_Complex8* du2,
                        const MKL_INT* ipiv, MKL_Complex8* b, const MKL_INT* ldb );

void __stdcall CHBEVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex8* ab, const MKL_INT* ldab,
                       float* w, MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall CHBEVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, MKL_Complex8* ab, const MKL_INT* ldab,
                        float* w, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall chbevd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex8* ab, const MKL_INT* ldab,
                       float* w, MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall chbevd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, MKL_Complex8* ab, const MKL_INT* ldab,
                        float* w, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall CHBEV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* kd, MKL_Complex8* ab, const MKL_INT* ldab, float* w,
                      MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                      float* rwork, MKL_INT* info );
void __stdcall CHBEV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex8* ab, const MKL_INT* ldab,
                       float* w, MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall chbev( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* kd, MKL_Complex8* ab, const MKL_INT* ldab, float* w,
                      MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                      float* rwork, MKL_INT* info );
void __stdcall chbev_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex8* ab, const MKL_INT* ldab,
                       float* w, MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );

void __stdcall CHBEVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* kd, MKL_Complex8* ab,
                       const MKL_INT* ldab, MKL_Complex8* q, const MKL_INT* ldq,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       float* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall CHBEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* kd, MKL_Complex8* ab,
                        const MKL_INT* ldab, MKL_Complex8* q, const MKL_INT* ldq,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                        float* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall chbevx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* kd, MKL_Complex8* ab,
                       const MKL_INT* ldab, MKL_Complex8* q, const MKL_INT* ldq,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       float* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall chbevx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* kd, MKL_Complex8* ab,
                        const MKL_INT* ldab, MKL_Complex8* q, const MKL_INT* ldq,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                        float* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall CHBGST( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, MKL_Complex8* ab,
                       const MKL_INT* ldab, const MKL_Complex8* bb, const MKL_INT* ldbb,
                       MKL_Complex8* x, const MKL_INT* ldx, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall CHBGST_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, MKL_Complex8* ab,
                        const MKL_INT* ldab, const MKL_Complex8* bb, const MKL_INT* ldbb,
                        MKL_Complex8* x, const MKL_INT* ldx, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall chbgst( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, MKL_Complex8* ab,
                       const MKL_INT* ldab, const MKL_Complex8* bb, const MKL_INT* ldbb,
                       MKL_Complex8* x, const MKL_INT* ldx, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall chbgst_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, MKL_Complex8* ab,
                        const MKL_INT* ldab, const MKL_Complex8* bb, const MKL_INT* ldbb,
                        MKL_Complex8* x, const MKL_INT* ldx, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );

void __stdcall CHBGVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, MKL_Complex8* ab,
                       const MKL_INT* ldab, MKL_Complex8* bb, const MKL_INT* ldbb,
                       float* w, MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall CHBGVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, MKL_Complex8* ab,
                        const MKL_INT* ldab, MKL_Complex8* bb, const MKL_INT* ldbb,
                        float* w, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall chbgvd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, MKL_Complex8* ab,
                       const MKL_INT* ldab, MKL_Complex8* bb, const MKL_INT* ldbb,
                       float* w, MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall chbgvd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, MKL_Complex8* ab,
                        const MKL_INT* ldab, MKL_Complex8* bb, const MKL_INT* ldbb,
                        float* w, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall CHBGV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* ka, const MKL_INT* kb, MKL_Complex8* ab,
                      const MKL_INT* ldab, MKL_Complex8* bb, const MKL_INT* ldbb,
                      float* w, MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                      float* rwork, MKL_INT* info );
void __stdcall CHBGV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, MKL_Complex8* ab,
                       const MKL_INT* ldab, MKL_Complex8* bb, const MKL_INT* ldbb,
                       float* w, MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall chbgv( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* ka, const MKL_INT* kb, MKL_Complex8* ab,
                      const MKL_INT* ldab, MKL_Complex8* bb, const MKL_INT* ldbb,
                      float* w, MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                      float* rwork, MKL_INT* info );
void __stdcall chbgv_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, MKL_Complex8* ab,
                       const MKL_INT* ldab, MKL_Complex8* bb, const MKL_INT* ldbb,
                       float* w, MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );

void __stdcall CHBGVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                       MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* bb,
                       const MKL_INT* ldbb, MKL_Complex8* q, const MKL_INT* ldq,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       float* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall CHBGVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                        MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* bb,
                        const MKL_INT* ldbb, MKL_Complex8* q, const MKL_INT* ldq,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                        float* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall chbgvx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                       MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* bb,
                       const MKL_INT* ldbb, MKL_Complex8* q, const MKL_INT* ldq,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       float* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall chbgvx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                        MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* bb,
                        const MKL_INT* ldbb, MKL_Complex8* q, const MKL_INT* ldq,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                        float* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall CHBTRD( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex8* ab, const MKL_INT* ldab,
                       float* d, float* e, MKL_Complex8* q, const MKL_INT* ldq,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CHBTRD_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, MKL_Complex8* ab, const MKL_INT* ldab,
                        float* d, float* e, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall chbtrd( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex8* ab, const MKL_INT* ldab,
                       float* d, float* e, MKL_Complex8* q, const MKL_INT* ldq,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall chbtrd_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, MKL_Complex8* ab, const MKL_INT* ldab,
                        float* d, float* e, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall CHECON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                       float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall CHECON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                        float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall checon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                       float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall checon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                        float* rcond, MKL_Complex8* work, MKL_INT* info );

void __stdcall CHEEQUB( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, float* s, float* scond, float* amax,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall CHEEQUB_( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                         const MKL_INT* lda, float* s, float* scond, float* amax,
                         MKL_Complex8* work, MKL_INT* info );
void __stdcall cheequb( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, float* s, float* scond, float* amax,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall cheequb_( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                         const MKL_INT* lda, float* s, float* scond, float* amax,
                         MKL_Complex8* work, MKL_INT* info );

void __stdcall CHEEVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, float* w, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall CHEEVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, float* w,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall cheevd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, float* w, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall cheevd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, float* w,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall CHEEV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      MKL_Complex8* a, const MKL_INT* lda, float* w, MKL_Complex8* work,
                      const MKL_INT* lwork, float* rwork, MKL_INT* info );
void __stdcall CHEEV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, float* w, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* info );
void __stdcall cheev( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      MKL_Complex8* a, const MKL_INT* lda, float* w, MKL_Complex8* work,
                      const MKL_INT* lwork, float* rwork, MKL_INT* info );
void __stdcall cheev_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, float* w, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* info );

void __stdcall CHEEVR( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_INT* isuppz,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall CHEEVR_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_INT* isuppz,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall cheevr( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_INT* isuppz,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall cheevr_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_INT* isuppz,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall CHEEVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall CHEEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );
void __stdcall cheevx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall cheevx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );

void __stdcall CHEGS2( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall CHEGS2_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall chegs2( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall chegs2_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall CHEGST( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall CHEGST_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall chegst( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall chegst_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall CHEGVD( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* b, const MKL_INT* ldb, float* w, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall CHEGVD_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* b, const MKL_INT* ldb, float* w,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall chegvd( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* b, const MKL_INT* ldb, float* w, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall chegvd_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* b, const MKL_INT* ldb, float* w,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall CHEGV( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                      MKL_Complex8* b, const MKL_INT* ldb, float* w, MKL_Complex8* work,
                      const MKL_INT* lwork, float* rwork, MKL_INT* info );
void __stdcall CHEGV_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* b, const MKL_INT* ldb, float* w, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* info );
void __stdcall chegv( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                      MKL_Complex8* b, const MKL_INT* ldb, float* w, MKL_Complex8* work,
                      const MKL_INT* lwork, float* rwork, MKL_INT* info );
void __stdcall chegv_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* b, const MKL_INT* ldb, float* w, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* info );

void __stdcall CHEGVX( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall CHEGVX_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );
void __stdcall chegvx( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall chegvx_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );

void __stdcall CHERFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                       float* ferr, float* berr, MKL_Complex8* work, float* rwork,
                       MKL_INT* info );
void __stdcall CHERFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall cherfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                       float* ferr, float* berr, MKL_Complex8* work, float* rwork,
                       MKL_INT* info );
void __stdcall cherfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );

void __stdcall CHERFSX( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const float* s, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CHERFSX_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* af, const MKL_INT* ldaf,
                         const MKL_INT* ipiv, const float* s, const MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                         float* rcond, float* berr, const MKL_INT* n_err_bnds,
                         float* err_bnds_norm, float* err_bnds_comp,
                         const MKL_INT* nparams, float* params, MKL_Complex8* work,
                         float* rwork, MKL_INT* info );
void __stdcall cherfsx( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const float* s, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cherfsx_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* af, const MKL_INT* ldaf,
                         const MKL_INT* ipiv, const float* s, const MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                         float* rcond, float* berr, const MKL_INT* n_err_bnds,
                         float* err_bnds_norm, float* err_bnds_comp,
                         const MKL_INT* nparams, float* params, MKL_Complex8* work,
                         float* rwork, MKL_INT* info );

void __stdcall CHESV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                      MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall CHESV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall chesv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                      MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall chesv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall CHESVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* info );
void __stdcall CHESVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* info );
void __stdcall chesvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* info );
void __stdcall chesvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* info );

void __stdcall CHESVXX( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* rpvgrw,
                        float* berr, const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CHESVXX_( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                         MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                         char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                         MKL_Complex8* x, const MKL_INT* ldx, float* rcond,
                         float* rpvgrw, float* berr, const MKL_INT* n_err_bnds,
                         float* err_bnds_norm, float* err_bnds_comp,
                         const MKL_INT* nparams, float* params, MKL_Complex8* work,
                         float* rwork, MKL_INT* info );
void __stdcall chesvxx( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* rpvgrw,
                        float* berr, const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall chesvxx_( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                         MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                         char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                         MKL_Complex8* x, const MKL_INT* ldx, float* rcond,
                         float* rpvgrw, float* berr, const MKL_INT* n_err_bnds,
                         float* err_bnds_norm, float* err_bnds_comp,
                         const MKL_INT* nparams, float* params, MKL_Complex8* work,
                         float* rwork, MKL_INT* info );

void __stdcall CHETD2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, float* d, float* e, MKL_Complex8* tau,
                       MKL_INT* info );
void __stdcall CHETD2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, float* d, float* e, MKL_Complex8* tau,
                        MKL_INT* info );
void __stdcall chetd2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, float* d, float* e, MKL_Complex8* tau,
                       MKL_INT* info );
void __stdcall chetd2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, float* d, float* e, MKL_Complex8* tau,
                        MKL_INT* info );

void __stdcall CHETF2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall CHETF2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall chetf2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall chetf2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall CHETRD( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, float* d, float* e, MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CHETRD_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, float* d, float* e, MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetrd( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, float* d, float* e, MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetrd_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, float* d, float* e, MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CHETRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall CHETRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall CHETRI( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall CHETRI_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                        MKL_INT* info );
void __stdcall chetri( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall chetri_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                        MKL_INT* info );

void __stdcall CHETRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall CHETRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall chetrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall chetrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall CHFRK( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                      const MKL_INT* n, const MKL_INT* k, const float* alpha,
                      const MKL_Complex8* a, const MKL_INT* lda, const float* beta,
                      MKL_Complex8* c );
void __stdcall CHFRK_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* n, const MKL_INT* k, const float* alpha,
                       const MKL_Complex8* a, const MKL_INT* lda, const float* beta,
                       MKL_Complex8* c );
void __stdcall chfrk( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                      const MKL_INT* n, const MKL_INT* k, const float* alpha,
                      const MKL_Complex8* a, const MKL_INT* lda, const float* beta,
                      MKL_Complex8* c );
void __stdcall chfrk_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* n, const MKL_INT* k, const float* alpha,
                       const MKL_Complex8* a, const MKL_INT* lda, const float* beta,
                       MKL_Complex8* c );

void __stdcall CHGEQZ( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex8* h, const MKL_INT* ldh, MKL_Complex8* t,
                       const MKL_INT* ldt, MKL_Complex8* alpha, MKL_Complex8* beta,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* z,
                       const MKL_INT* ldz, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );
void __stdcall CHGEQZ_( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex8* h, const MKL_INT* ldh, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_Complex8* alpha, MKL_Complex8* beta,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* z,
                        const MKL_INT* ldz, MKL_Complex8* work, const MKL_INT* lwork,
                        float* rwork, MKL_INT* info );
void __stdcall chgeqz( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex8* h, const MKL_INT* ldh, MKL_Complex8* t,
                       const MKL_INT* ldt, MKL_Complex8* alpha, MKL_Complex8* beta,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* z,
                       const MKL_INT* ldz, MKL_Complex8* work, const MKL_INT* lwork,
                       float* rwork, MKL_INT* info );
void __stdcall chgeqz_( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex8* h, const MKL_INT* ldh, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_Complex8* alpha, MKL_Complex8* beta,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* z,
                        const MKL_INT* ldz, MKL_Complex8* work, const MKL_INT* lwork,
                        float* rwork, MKL_INT* info );

void __stdcall CHLA_TRANSTYPE( char* ret_val, int ret_val_len, const MKL_INT* trans );
void __stdcall CHLA_TRANSTYPE_( char* ret_val, int ret_val_len, const MKL_INT* trans );
void __stdcall chla_transtype( char* ret_val, int ret_val_len, const MKL_INT* trans );
void __stdcall chla_transtype_( char* ret_val, int ret_val_len, const MKL_INT* trans );

void __stdcall CHPCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                       const MKL_INT* ipiv, const float* anorm, float* rcond,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CHPCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                        const MKL_INT* ipiv, const float* anorm, float* rcond,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall chpcon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                       const MKL_INT* ipiv, const float* anorm, float* rcond,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall chpcon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                        const MKL_INT* ipiv, const float* anorm, float* rcond,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall CHPEVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* ap, float* w, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall CHPEVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* ap, float* w, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall chpevd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* ap, float* w, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall chpevd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* ap, float* w, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall CHPEV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      MKL_Complex8* ap, float* w, MKL_Complex8* z, const MKL_INT* ldz,
                      MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CHPEV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* ap, float* w, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall chpev( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      MKL_Complex8* ap, float* w, MKL_Complex8* z, const MKL_INT* ldz,
                      MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall chpev_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* ap, float* w, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CHPEVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* ap, const float* vl,
                       const float* vu, const MKL_INT* il, const MKL_INT* iu,
                       const float* abstol, MKL_INT* m, float* w, MKL_Complex8* z,
                       const MKL_INT* ldz, MKL_Complex8* work, float* rwork,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall CHPEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex8* ap, const float* vl,
                        const float* vu, const MKL_INT* il, const MKL_INT* iu,
                        const float* abstol, MKL_INT* m, float* w, MKL_Complex8* z,
                        const MKL_INT* ldz, MKL_Complex8* work, float* rwork,
                        MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall chpevx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* ap, const float* vl,
                       const float* vu, const MKL_INT* il, const MKL_INT* iu,
                       const float* abstol, MKL_INT* m, float* w, MKL_Complex8* z,
                       const MKL_INT* ldz, MKL_Complex8* work, float* rwork,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall chpevx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex8* ap, const float* vl,
                        const float* vu, const MKL_INT* il, const MKL_INT* iu,
                        const float* abstol, MKL_INT* m, float* w, MKL_Complex8* z,
                        const MKL_INT* ldz, MKL_Complex8* work, float* rwork,
                        MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall CHPGST( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* ap, const MKL_Complex8* bp, MKL_INT* info );
void __stdcall CHPGST_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* ap, const MKL_Complex8* bp, MKL_INT* info );
void __stdcall chpgst( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* ap, const MKL_Complex8* bp, MKL_INT* info );
void __stdcall chpgst_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* ap, const MKL_Complex8* bp, MKL_INT* info );

void __stdcall CHPGVD( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* ap, MKL_Complex8* bp, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall CHPGVD_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex8* ap, MKL_Complex8* bp, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall chpgvd( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* ap, MKL_Complex8* bp, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall chpgvd_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex8* ap, MKL_Complex8* bp, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall CHPGV( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, MKL_Complex8* ap, MKL_Complex8* bp, float* w,
                      MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                      float* rwork, MKL_INT* info );
void __stdcall CHPGV_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* ap, MKL_Complex8* bp, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall chpgv( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, MKL_Complex8* ap, MKL_Complex8* bp, float* w,
                      MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                      float* rwork, MKL_INT* info );
void __stdcall chpgv_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex8* ap, MKL_Complex8* bp, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );

void __stdcall CHPGVX( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       MKL_Complex8* bp, const float* vl, const float* vu,
                       const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                       MKL_INT* m, float* w, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_Complex8* work, float* rwork, MKL_INT* iwork, MKL_INT* ifail,
                       MKL_INT* info );
void __stdcall CHPGVX_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        MKL_Complex8* bp, const float* vl, const float* vu,
                        const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                        MKL_INT* m, float* w, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, float* rwork, MKL_INT* iwork, MKL_INT* ifail,
                        MKL_INT* info );
void __stdcall chpgvx( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       MKL_Complex8* bp, const float* vl, const float* vu,
                       const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                       MKL_INT* m, float* w, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_Complex8* work, float* rwork, MKL_INT* iwork, MKL_INT* ifail,
                       MKL_INT* info );
void __stdcall chpgvx_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        MKL_Complex8* bp, const float* vl, const float* vu,
                        const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                        MKL_INT* m, float* w, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, float* rwork, MKL_INT* iwork, MKL_INT* ifail,
                        MKL_INT* info );

void __stdcall CHPRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* ap, const MKL_Complex8* afp,
                       const MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* ferr, float* berr,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CHPRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* ap, const MKL_Complex8* afp,
                        const MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* ferr, float* berr,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall chprfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* ap, const MKL_Complex8* afp,
                       const MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* ferr, float* berr,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall chprfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* ap, const MKL_Complex8* afp,
                        const MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* ferr, float* berr,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CHPSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex8* ap, MKL_INT* ipiv, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall CHPSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* ap, MKL_INT* ipiv, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall chpsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex8* ap, MKL_INT* ipiv, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall chpsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* ap, MKL_INT* ipiv, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );

void __stdcall CHPSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex8* ap, MKL_Complex8* afp,
                       MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CHPSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* ap, MKL_Complex8* afp,
                        MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall chpsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex8* ap, MKL_Complex8* afp,
                       MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall chpsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* ap, MKL_Complex8* afp,
                        MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CHPTRD( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap, float* d,
                       float* e, MKL_Complex8* tau, MKL_INT* info );
void __stdcall CHPTRD_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap, float* d,
                        float* e, MKL_Complex8* tau, MKL_INT* info );
void __stdcall chptrd( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap, float* d,
                       float* e, MKL_Complex8* tau, MKL_INT* info );
void __stdcall chptrd_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap, float* d,
                        float* e, MKL_Complex8* tau, MKL_INT* info );

void __stdcall CHPTRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall CHPTRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall chptrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall chptrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall CHPTRI( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       const MKL_INT* ipiv, MKL_Complex8* work, MKL_INT* info );
void __stdcall CHPTRI_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        const MKL_INT* ipiv, MKL_Complex8* work, MKL_INT* info );
void __stdcall chptri( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       const MKL_INT* ipiv, MKL_Complex8* work, MKL_INT* info );
void __stdcall chptri_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        const MKL_INT* ipiv, MKL_Complex8* work, MKL_INT* info );

void __stdcall CHPTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* ap, const MKL_INT* ipiv, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall CHPTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* ap, const MKL_INT* ipiv, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall chptrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* ap, const MKL_INT* ipiv, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall chptrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* ap, const MKL_INT* ipiv, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall CHSEIN( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                       const MKL_INT* select, const MKL_INT* n, const MKL_Complex8* h,
                       const MKL_INT* ldh, MKL_Complex8* w, MKL_Complex8* vl,
                       const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work, float* rwork,
                       MKL_INT* ifaill, MKL_INT* ifailr, MKL_INT* info );
void __stdcall CHSEIN_( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                        const MKL_INT* select, const MKL_INT* n, const MKL_Complex8* h,
                        const MKL_INT* ldh, MKL_Complex8* w, MKL_Complex8* vl,
                        const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work, float* rwork,
                        MKL_INT* ifaill, MKL_INT* ifailr, MKL_INT* info );
void __stdcall chsein( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                       const MKL_INT* select, const MKL_INT* n, const MKL_Complex8* h,
                       const MKL_INT* ldh, MKL_Complex8* w, MKL_Complex8* vl,
                       const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work, float* rwork,
                       MKL_INT* ifaill, MKL_INT* ifailr, MKL_INT* info );
void __stdcall chsein_( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                        const MKL_INT* select, const MKL_INT* n, const MKL_Complex8* h,
                        const MKL_INT* ldh, MKL_Complex8* w, MKL_Complex8* vl,
                        const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work, float* rwork,
                        MKL_INT* ifaill, MKL_INT* ifailr, MKL_INT* info );

void __stdcall CHSEQR( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                       const MKL_INT* ldh, MKL_Complex8* w, MKL_Complex8* z,
                       const MKL_INT* ldz, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CHSEQR_( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                        const MKL_INT* ldh, MKL_Complex8* w, MKL_Complex8* z,
                        const MKL_INT* ldz, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall chseqr( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                       const MKL_INT* ldh, MKL_Complex8* w, MKL_Complex8* z,
                       const MKL_INT* ldz, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall chseqr_( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                        const MKL_INT* ldh, MKL_Complex8* w, MKL_Complex8* z,
                        const MKL_INT* ldz, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CLABRD( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                       MKL_Complex8* a, const MKL_INT* lda, float* d, float* e,
                       MKL_Complex8* tauq, MKL_Complex8* taup, MKL_Complex8* x,
                       const MKL_INT* ldx, MKL_Complex8* y, const MKL_INT* ldy );
void __stdcall CLABRD_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                        MKL_Complex8* a, const MKL_INT* lda, float* d, float* e,
                        MKL_Complex8* tauq, MKL_Complex8* taup, MKL_Complex8* x,
                        const MKL_INT* ldx, MKL_Complex8* y, const MKL_INT* ldy );
void __stdcall clabrd( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                       MKL_Complex8* a, const MKL_INT* lda, float* d, float* e,
                       MKL_Complex8* tauq, MKL_Complex8* taup, MKL_Complex8* x,
                       const MKL_INT* ldx, MKL_Complex8* y, const MKL_INT* ldy );
void __stdcall clabrd_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                        MKL_Complex8* a, const MKL_INT* lda, float* d, float* e,
                        MKL_Complex8* tauq, MKL_Complex8* taup, MKL_Complex8* x,
                        const MKL_INT* ldx, MKL_Complex8* y, const MKL_INT* ldy );

void __stdcall CLACGV( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx );
void __stdcall CLACGV_( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx );
void __stdcall clacgv( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx );
void __stdcall clacgv_( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx );

void __stdcall CLACN2( const MKL_INT* n, MKL_Complex8* v, MKL_Complex8* x, float* est,
                       MKL_INT* kase, MKL_INT* isave );
void __stdcall CLACN2_( const MKL_INT* n, MKL_Complex8* v, MKL_Complex8* x, float* est,
                        MKL_INT* kase, MKL_INT* isave );
void __stdcall clacn2( const MKL_INT* n, MKL_Complex8* v, MKL_Complex8* x, float* est,
                       MKL_INT* kase, MKL_INT* isave );
void __stdcall clacn2_( const MKL_INT* n, MKL_Complex8* v, MKL_Complex8* x, float* est,
                        MKL_INT* kase, MKL_INT* isave );

void __stdcall CLACON( const MKL_INT* n, MKL_Complex8* v, MKL_Complex8* x, float* est,
                       MKL_INT* kase );
void __stdcall CLACON_( const MKL_INT* n, MKL_Complex8* v, MKL_Complex8* x, float* est,
                        MKL_INT* kase );
void __stdcall clacon( const MKL_INT* n, MKL_Complex8* v, MKL_Complex8* x, float* est,
                       MKL_INT* kase );
void __stdcall clacon_( const MKL_INT* n, MKL_Complex8* v, MKL_Complex8* x, float* est,
                        MKL_INT* kase );

void __stdcall CLACP2( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const float* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb );
void __stdcall CLACP2_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const float* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb );
void __stdcall clacp2( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const float* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb );
void __stdcall clacp2_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const float* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb );

void __stdcall CLACPY( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb );
void __stdcall CLACPY_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb );
void __stdcall clacpy( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb );
void __stdcall clacpy_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb );

void __stdcall CLACRM( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                       MKL_Complex8* c, const MKL_INT* ldc, float* rwork );
void __stdcall CLACRM_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                        MKL_Complex8* c, const MKL_INT* ldc, float* rwork );
void __stdcall clacrm( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                       MKL_Complex8* c, const MKL_INT* ldc, float* rwork );
void __stdcall clacrm_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                        MKL_Complex8* c, const MKL_INT* ldc, float* rwork );

void __stdcall CLACRT( const MKL_INT* n, MKL_Complex8* cx, const MKL_INT* incx,
                       MKL_Complex8* cy, const MKL_INT* incy, const MKL_Complex8* c,
                       const MKL_Complex8* s );
void __stdcall CLACRT_( const MKL_INT* n, MKL_Complex8* cx, const MKL_INT* incx,
                        MKL_Complex8* cy, const MKL_INT* incy, const MKL_Complex8* c,
                        const MKL_Complex8* s );
void __stdcall clacrt( const MKL_INT* n, MKL_Complex8* cx, const MKL_INT* incx,
                       MKL_Complex8* cy, const MKL_INT* incy, const MKL_Complex8* c,
                       const MKL_Complex8* s );
void __stdcall clacrt_( const MKL_INT* n, MKL_Complex8* cx, const MKL_INT* incx,
                        MKL_Complex8* cy, const MKL_INT* incy, const MKL_Complex8* c,
                        const MKL_Complex8* s );

void __stdcall CLADIV( MKL_Complex8* ret_value, const MKL_Complex8* x,
                       const MKL_Complex8* y );
void __stdcall CLADIV_( MKL_Complex8* ret_value, const MKL_Complex8* x,
                        const MKL_Complex8* y );
void __stdcall cladiv( MKL_Complex8* ret_value, const MKL_Complex8* x,
                       const MKL_Complex8* y );
void __stdcall cladiv_( MKL_Complex8* ret_value, const MKL_Complex8* x,
                        const MKL_Complex8* y );

void __stdcall CLAED0( const MKL_INT* qsiz, const MKL_INT* n, float* d, float* e,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* qstore,
                       const MKL_INT* ldqs, float* rwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall CLAED0_( const MKL_INT* qsiz, const MKL_INT* n, float* d, float* e,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* qstore,
                        const MKL_INT* ldqs, float* rwork, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall claed0( const MKL_INT* qsiz, const MKL_INT* n, float* d, float* e,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* qstore,
                       const MKL_INT* ldqs, float* rwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall claed0_( const MKL_INT* qsiz, const MKL_INT* n, float* d, float* e,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* qstore,
                        const MKL_INT* ldqs, float* rwork, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall CLAED7( const MKL_INT* n, const MKL_INT* cutpnt, const MKL_INT* qsiz,
                       const MKL_INT* tlvls, const MKL_INT* curlvl,
                       const MKL_INT* curpbm, float* d, MKL_Complex8* q,
                       const MKL_INT* ldq, const float* rho, MKL_INT* indxq,
                       float* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const float* givnum, MKL_Complex8* work, float* rwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall CLAED7_( const MKL_INT* n, const MKL_INT* cutpnt, const MKL_INT* qsiz,
                        const MKL_INT* tlvls, const MKL_INT* curlvl,
                        const MKL_INT* curpbm, float* d, MKL_Complex8* q,
                        const MKL_INT* ldq, const float* rho, MKL_INT* indxq,
                        float* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const float* givnum, MKL_Complex8* work,
                        float* rwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall claed7( const MKL_INT* n, const MKL_INT* cutpnt, const MKL_INT* qsiz,
                       const MKL_INT* tlvls, const MKL_INT* curlvl,
                       const MKL_INT* curpbm, float* d, MKL_Complex8* q,
                       const MKL_INT* ldq, const float* rho, MKL_INT* indxq,
                       float* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const float* givnum, MKL_Complex8* work, float* rwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall claed7_( const MKL_INT* n, const MKL_INT* cutpnt, const MKL_INT* qsiz,
                        const MKL_INT* tlvls, const MKL_INT* curlvl,
                        const MKL_INT* curpbm, float* d, MKL_Complex8* q,
                        const MKL_INT* ldq, const float* rho, MKL_INT* indxq,
                        float* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const float* givnum, MKL_Complex8* work,
                        float* rwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall CLAED8( MKL_INT* k, const MKL_INT* n, const MKL_INT* qsiz,
                       MKL_Complex8* q, const MKL_INT* ldq, float* d, float* rho,
                       const MKL_INT* cutpnt, const float* z, float* dlamda,
                       MKL_Complex8* q2, const MKL_INT* ldq2, float* w, MKL_INT* indxp,
                       MKL_INT* indx, const MKL_INT* indxq, MKL_INT* perm,
                       MKL_INT* givptr, MKL_INT* givcol, float* givnum, MKL_INT* info );
void __stdcall CLAED8_( MKL_INT* k, const MKL_INT* n, const MKL_INT* qsiz,
                        MKL_Complex8* q, const MKL_INT* ldq, float* d, float* rho,
                        const MKL_INT* cutpnt, const float* z, float* dlamda,
                        MKL_Complex8* q2, const MKL_INT* ldq2, float* w, MKL_INT* indxp,
                        MKL_INT* indx, const MKL_INT* indxq, MKL_INT* perm,
                        MKL_INT* givptr, MKL_INT* givcol, float* givnum, MKL_INT* info );
void __stdcall claed8( MKL_INT* k, const MKL_INT* n, const MKL_INT* qsiz,
                       MKL_Complex8* q, const MKL_INT* ldq, float* d, float* rho,
                       const MKL_INT* cutpnt, const float* z, float* dlamda,
                       MKL_Complex8* q2, const MKL_INT* ldq2, float* w, MKL_INT* indxp,
                       MKL_INT* indx, const MKL_INT* indxq, MKL_INT* perm,
                       MKL_INT* givptr, MKL_INT* givcol, float* givnum, MKL_INT* info );
void __stdcall claed8_( MKL_INT* k, const MKL_INT* n, const MKL_INT* qsiz,
                        MKL_Complex8* q, const MKL_INT* ldq, float* d, float* rho,
                        const MKL_INT* cutpnt, const float* z, float* dlamda,
                        MKL_Complex8* q2, const MKL_INT* ldq2, float* w, MKL_INT* indxp,
                        MKL_INT* indx, const MKL_INT* indxq, MKL_INT* perm,
                        MKL_INT* givptr, MKL_INT* givcol, float* givnum, MKL_INT* info );

void __stdcall CLAEIN( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                       const MKL_Complex8* h, const MKL_INT* ldh, const MKL_Complex8* w,
                       MKL_Complex8* v, MKL_Complex8* b, const MKL_INT* ldb,
                       float* rwork, const float* eps3, const float* smlnum,
                       MKL_INT* info );
void __stdcall CLAEIN_( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                        const MKL_Complex8* h, const MKL_INT* ldh, const MKL_Complex8* w,
                        MKL_Complex8* v, MKL_Complex8* b, const MKL_INT* ldb,
                        float* rwork, const float* eps3, const float* smlnum,
                        MKL_INT* info );
void __stdcall claein( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                       const MKL_Complex8* h, const MKL_INT* ldh, const MKL_Complex8* w,
                       MKL_Complex8* v, MKL_Complex8* b, const MKL_INT* ldb,
                       float* rwork, const float* eps3, const float* smlnum,
                       MKL_INT* info );
void __stdcall claein_( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                        const MKL_Complex8* h, const MKL_INT* ldh, const MKL_Complex8* w,
                        MKL_Complex8* v, MKL_Complex8* b, const MKL_INT* ldb,
                        float* rwork, const float* eps3, const float* smlnum,
                        MKL_INT* info );

void __stdcall CLAESY( const MKL_Complex8* a, const MKL_Complex8* b,
                       const MKL_Complex8* c, MKL_Complex8* rt1, MKL_Complex8* rt2,
                       MKL_Complex8* evscal, MKL_Complex8* cs1, MKL_Complex8* sn1 );
void __stdcall CLAESY_( const MKL_Complex8* a, const MKL_Complex8* b,
                        const MKL_Complex8* c, MKL_Complex8* rt1, MKL_Complex8* rt2,
                        MKL_Complex8* evscal, MKL_Complex8* cs1, MKL_Complex8* sn1 );
void __stdcall claesy( const MKL_Complex8* a, const MKL_Complex8* b,
                       const MKL_Complex8* c, MKL_Complex8* rt1, MKL_Complex8* rt2,
                       MKL_Complex8* evscal, MKL_Complex8* cs1, MKL_Complex8* sn1 );
void __stdcall claesy_( const MKL_Complex8* a, const MKL_Complex8* b,
                        const MKL_Complex8* c, MKL_Complex8* rt1, MKL_Complex8* rt2,
                        MKL_Complex8* evscal, MKL_Complex8* cs1, MKL_Complex8* sn1 );

void __stdcall CLAEV2( const MKL_Complex8* a, const MKL_Complex8* b,
                       const MKL_Complex8* c, float* rt1, float* rt2, float* cs1,
                       MKL_Complex8* sn1 );
void __stdcall CLAEV2_( const MKL_Complex8* a, const MKL_Complex8* b,
                        const MKL_Complex8* c, float* rt1, float* rt2, float* cs1,
                        MKL_Complex8* sn1 );
void __stdcall claev2( const MKL_Complex8* a, const MKL_Complex8* b,
                       const MKL_Complex8* c, float* rt1, float* rt2, float* cs1,
                       MKL_Complex8* sn1 );
void __stdcall claev2_( const MKL_Complex8* a, const MKL_Complex8* b,
                        const MKL_Complex8* c, float* rt1, float* rt2, float* cs1,
                        MKL_Complex8* sn1 );

void __stdcall CLAG2Z( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* sa,
                       const MKL_INT* ldsa, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall CLAG2Z_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* sa,
                        const MKL_INT* ldsa, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* info );
void __stdcall clag2z( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* sa,
                       const MKL_INT* ldsa, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall clag2z_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* sa,
                        const MKL_INT* ldsa, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* info );

void __stdcall CLAGS2( const MKL_INT* upper, const float* a1, const MKL_Complex8* a2,
                       const float* a3, const float* b1, const MKL_Complex8* b2,
                       const float* b3, float* csu, MKL_Complex8* snu, float* csv,
                       MKL_Complex8* snv, float* csq, MKL_Complex8* snq );
void __stdcall CLAGS2_( const MKL_INT* upper, const float* a1, const MKL_Complex8* a2,
                        const float* a3, const float* b1, const MKL_Complex8* b2,
                        const float* b3, float* csu, MKL_Complex8* snu, float* csv,
                        MKL_Complex8* snv, float* csq, MKL_Complex8* snq );
void __stdcall clags2( const MKL_INT* upper, const float* a1, const MKL_Complex8* a2,
                       const float* a3, const float* b1, const MKL_Complex8* b2,
                       const float* b3, float* csu, MKL_Complex8* snu, float* csv,
                       MKL_Complex8* snv, float* csq, MKL_Complex8* snq );
void __stdcall clags2_( const MKL_INT* upper, const float* a1, const MKL_Complex8* a2,
                        const float* a3, const float* b1, const MKL_Complex8* b2,
                        const float* b3, float* csu, MKL_Complex8* snu, float* csv,
                        MKL_Complex8* snv, float* csq, MKL_Complex8* snq );

void __stdcall CLAGTM( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* alpha, const MKL_Complex8* dl, const MKL_Complex8* d,
                       const MKL_Complex8* du, const MKL_Complex8* x, const MKL_INT* ldx,
                       const float* beta, MKL_Complex8* b, const MKL_INT* ldb );
void __stdcall CLAGTM_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* alpha, const MKL_Complex8* dl,
                        const MKL_Complex8* d, const MKL_Complex8* du,
                        const MKL_Complex8* x, const MKL_INT* ldx, const float* beta,
                        MKL_Complex8* b, const MKL_INT* ldb );
void __stdcall clagtm( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* alpha, const MKL_Complex8* dl, const MKL_Complex8* d,
                       const MKL_Complex8* du, const MKL_Complex8* x, const MKL_INT* ldx,
                       const float* beta, MKL_Complex8* b, const MKL_INT* ldb );
void __stdcall clagtm_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* alpha, const MKL_Complex8* dl,
                        const MKL_Complex8* d, const MKL_Complex8* du,
                        const MKL_Complex8* x, const MKL_INT* ldx, const float* beta,
                        MKL_Complex8* b, const MKL_INT* ldb );

void __stdcall CLAHEF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall CLAHEF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                        MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall clahef( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall clahef_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                        MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall CLAHQR( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                       const MKL_INT* ldh, MKL_Complex8* w, const MKL_INT* iloz,
                       const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_INT* info );
void __stdcall CLAHQR_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                        const MKL_INT* ldh, MKL_Complex8* w, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_INT* info );
void __stdcall clahqr( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                       const MKL_INT* ldh, MKL_Complex8* w, const MKL_INT* iloz,
                       const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_INT* info );
void __stdcall clahqr_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                        const MKL_INT* ldh, MKL_Complex8* w, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_INT* info );

void __stdcall CLAHR2( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                       MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* y,
                       const MKL_INT* ldy );
void __stdcall CLAHR2_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                        MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* y,
                        const MKL_INT* ldy );
void __stdcall clahr2( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                       MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* y,
                       const MKL_INT* ldy );
void __stdcall clahr2_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                        MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* y,
                        const MKL_INT* ldy );

void __stdcall CLAHRD( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                       MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* y,
                       const MKL_INT* ldy );
void __stdcall CLAHRD_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                        MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* y,
                        const MKL_INT* ldy );
void __stdcall clahrd( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                       MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* y,
                       const MKL_INT* ldy );
void __stdcall clahrd_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                        MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* y,
                        const MKL_INT* ldy );

void __stdcall CLAIC1( const MKL_INT* job, const MKL_INT* j, const MKL_Complex8* x,
                       const float* sest, const MKL_Complex8* w,
                       const MKL_Complex8* gamma, float* sestpr, MKL_Complex8* s,
                       MKL_Complex8* c );
void __stdcall CLAIC1_( const MKL_INT* job, const MKL_INT* j, const MKL_Complex8* x,
                        const float* sest, const MKL_Complex8* w,
                        const MKL_Complex8* gamma, float* sestpr, MKL_Complex8* s,
                        MKL_Complex8* c );
void __stdcall claic1( const MKL_INT* job, const MKL_INT* j, const MKL_Complex8* x,
                       const float* sest, const MKL_Complex8* w,
                       const MKL_Complex8* gamma, float* sestpr, MKL_Complex8* s,
                       MKL_Complex8* c );
void __stdcall claic1_( const MKL_INT* job, const MKL_INT* j, const MKL_Complex8* x,
                        const float* sest, const MKL_Complex8* w,
                        const MKL_Complex8* gamma, float* sestpr, MKL_Complex8* s,
                        MKL_Complex8* c );

void __stdcall CLALS0( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, const MKL_INT* nrhs, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* bx, const MKL_INT* ldbx,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const float* givnum, const MKL_INT* ldgnum,
                       const float* poles, const float* difl, const float* difr,
                       const float* z, const MKL_INT* k, const float* c, const float* s,
                       float* rwork, MKL_INT* info );
void __stdcall CLALS0_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, const MKL_INT* nrhs, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* bx, const MKL_INT* ldbx,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const MKL_INT* ldgcol,
                        const float* givnum, const MKL_INT* ldgnum, const float* poles,
                        const float* difl, const float* difr, const float* z,
                        const MKL_INT* k, const float* c, const float* s, float* rwork,
                        MKL_INT* info );
void __stdcall clals0( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, const MKL_INT* nrhs, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* bx, const MKL_INT* ldbx,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const float* givnum, const MKL_INT* ldgnum,
                       const float* poles, const float* difl, const float* difr,
                       const float* z, const MKL_INT* k, const float* c, const float* s,
                       float* rwork, MKL_INT* info );
void __stdcall clals0_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, const MKL_INT* nrhs, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* bx, const MKL_INT* ldbx,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const MKL_INT* ldgcol,
                        const float* givnum, const MKL_INT* ldgnum, const float* poles,
                        const float* difl, const float* difr, const float* z,
                        const MKL_INT* k, const float* c, const float* s, float* rwork,
                        MKL_INT* info );

void __stdcall CLALSA( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* bx, const MKL_INT* ldbx, const float* u,
                       const MKL_INT* ldu, const float* vt, const MKL_INT* k,
                       const float* difl, const float* difr, const float* z,
                       const float* poles, const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const MKL_INT* perm, const float* givnum,
                       const float* c, const float* s, float* rwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall CLALSA_( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* bx, const MKL_INT* ldbx, const float* u,
                        const MKL_INT* ldu, const float* vt, const MKL_INT* k,
                        const float* difl, const float* difr, const float* z,
                        const float* poles, const MKL_INT* givptr, const MKL_INT* givcol,
                        const MKL_INT* ldgcol, const MKL_INT* perm, const float* givnum,
                        const float* c, const float* s, float* rwork, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall clalsa( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* bx, const MKL_INT* ldbx, const float* u,
                       const MKL_INT* ldu, const float* vt, const MKL_INT* k,
                       const float* difl, const float* difr, const float* z,
                       const float* poles, const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const MKL_INT* perm, const float* givnum,
                       const float* c, const float* s, float* rwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall clalsa_( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* bx, const MKL_INT* ldbx, const float* u,
                        const MKL_INT* ldu, const float* vt, const MKL_INT* k,
                        const float* difl, const float* difr, const float* z,
                        const float* poles, const MKL_INT* givptr, const MKL_INT* givcol,
                        const MKL_INT* ldgcol, const MKL_INT* perm, const float* givnum,
                        const float* c, const float* s, float* rwork, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall CLALSD( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, float* d, float* e, MKL_Complex8* b,
                       const MKL_INT* ldb, const float* rcond, MKL_INT* rank,
                       MKL_Complex8* work, float* rwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall CLALSD_( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, float* d, float* e, MKL_Complex8* b,
                        const MKL_INT* ldb, const float* rcond, MKL_INT* rank,
                        MKL_Complex8* work, float* rwork, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall clalsd( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, float* d, float* e, MKL_Complex8* b,
                       const MKL_INT* ldb, const float* rcond, MKL_INT* rank,
                       MKL_Complex8* work, float* rwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall clalsd_( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, float* d, float* e, MKL_Complex8* b,
                        const MKL_INT* ldb, const float* rcond, MKL_INT* rank,
                        MKL_Complex8* work, float* rwork, MKL_INT* iwork,
                        MKL_INT* info );

float __stdcall CLANGB( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                        float* work );
float __stdcall CLANGB_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                         float* work );
float __stdcall clangb( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                        float* work );
float __stdcall clangb_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const MKL_Complex8* ab, const MKL_INT* ldab,
                         float* work );

float __stdcall CLANGE( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex8* a, const MKL_INT* lda, float* work );
float __stdcall CLANGE_( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_Complex8* a, const MKL_INT* lda, float* work );
float __stdcall clange( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex8* a, const MKL_INT* lda, float* work );
float __stdcall clange_( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_Complex8* a, const MKL_INT* lda, float* work );

float __stdcall CLANGT( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* dl,
                        const MKL_Complex8* d, const MKL_Complex8* du );
float __stdcall CLANGT_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* dl,
                         const MKL_Complex8* d, const MKL_Complex8* du );
float __stdcall clangt( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* dl,
                        const MKL_Complex8* d, const MKL_Complex8* du );
float __stdcall clangt_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* dl,
                         const MKL_Complex8* d, const MKL_Complex8* du );

float __stdcall CLANHB( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex8* ab, const MKL_INT* ldab,
                        float* work );
float __stdcall CLANHB_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* k, const MKL_Complex8* ab, const MKL_INT* ldab,
                         float* work );
float __stdcall clanhb( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex8* ab, const MKL_INT* ldab,
                        float* work );
float __stdcall clanhb_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* k, const MKL_Complex8* ab, const MKL_INT* ldab,
                         float* work );

float __stdcall CLANHE( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* a, const MKL_INT* lda, float* work );
float __stdcall CLANHE_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex8* a, const MKL_INT* lda, float* work );
float __stdcall clanhe( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* a, const MKL_INT* lda, float* work );
float __stdcall clanhe_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex8* a, const MKL_INT* lda, float* work );

float __stdcall CLANHF( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_Complex8* a, float* work );
float __stdcall CLANHF_( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                         const MKL_INT* n, const MKL_Complex8* a, float* work );
float __stdcall clanhf( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_Complex8* a, float* work );
float __stdcall clanhf_( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                         const MKL_INT* n, const MKL_Complex8* a, float* work );

float __stdcall CLANHP( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* ap, float* work );
float __stdcall CLANHP_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex8* ap, float* work );
float __stdcall clanhp( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* ap, float* work );
float __stdcall clanhp_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex8* ap, float* work );

float __stdcall CLANHS( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, float* work );
float __stdcall CLANHS_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* a,
                         const MKL_INT* lda, float* work );
float __stdcall clanhs( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, float* work );
float __stdcall clanhs_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex8* a,
                         const MKL_INT* lda, float* work );

float __stdcall CLANHT( const char* norm, int norm_len, const MKL_INT* n, const float* d,
                        const MKL_Complex8* e );
float __stdcall CLANHT_( const char* norm, int norm_len, const MKL_INT* n, const float* d,
                         const MKL_Complex8* e );
float __stdcall clanht( const char* norm, int norm_len, const MKL_INT* n, const float* d,
                        const MKL_Complex8* e );
float __stdcall clanht_( const char* norm, int norm_len, const MKL_INT* n, const float* d,
                         const MKL_Complex8* e );

float __stdcall CLANSB( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex8* ab, const MKL_INT* ldab,
                        float* work );
float __stdcall CLANSB_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* k, const MKL_Complex8* ab, const MKL_INT* ldab,
                         float* work );
float __stdcall clansb( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex8* ab, const MKL_INT* ldab,
                        float* work );
float __stdcall clansb_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* k, const MKL_Complex8* ab, const MKL_INT* ldab,
                         float* work );

float __stdcall CLANSP( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* ap, float* work );
float __stdcall CLANSP_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex8* ap, float* work );
float __stdcall clansp( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* ap, float* work );
float __stdcall clansp_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex8* ap, float* work );

float __stdcall CLANSY( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* a, const MKL_INT* lda, float* work );
float __stdcall CLANSY_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex8* a, const MKL_INT* lda, float* work );
float __stdcall clansy( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* a, const MKL_INT* lda, float* work );
float __stdcall clansy_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex8* a, const MKL_INT* lda, float* work );

float __stdcall CLANTB( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* ab,
                        const MKL_INT* ldab, float* work );
float __stdcall CLANTB_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* ab,
                         const MKL_INT* ldab, float* work );
float __stdcall clantb( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* ab,
                        const MKL_INT* ldab, float* work );
float __stdcall clantb_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* ab,
                         const MKL_INT* ldab, float* work );

float __stdcall CLANTP( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_Complex8* ap, float* work );
float __stdcall CLANTP_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const MKL_Complex8* ap, float* work );
float __stdcall clantp( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_Complex8* ap, float* work );
float __stdcall clantp_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const MKL_Complex8* ap, float* work );

float __stdcall CLANTR( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, float* work );
float __stdcall CLANTR_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                         const MKL_INT* lda, float* work );
float __stdcall clantr( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, float* work );
float __stdcall clantr_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                         const MKL_INT* lda, float* work );

void __stdcall CLAPLL( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx,
                       MKL_Complex8* y, const MKL_INT* incy, float* ssmin );
void __stdcall CLAPLL_( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx,
                        MKL_Complex8* y, const MKL_INT* incy, float* ssmin );
void __stdcall clapll( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx,
                       MKL_Complex8* y, const MKL_INT* incy, float* ssmin );
void __stdcall clapll_( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx,
                        MKL_Complex8* y, const MKL_INT* incy, float* ssmin );

void __stdcall CLAPMT( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex8* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall CLAPMT_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall clapmt( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex8* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall clapmt_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* x, const MKL_INT* ldx, MKL_INT* k );

void __stdcall CLAQGB( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, MKL_Complex8* ab, const MKL_INT* ldab,
                       const float* r, const float* c, const float* rowcnd,
                       const float* colcnd, const float* amax, char* equed , int equed_len);
void __stdcall CLAQGB_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, MKL_Complex8* ab, const MKL_INT* ldab,
                        const float* r, const float* c, const float* rowcnd,
                        const float* colcnd, const float* amax, char* equed , int equed_len);
void __stdcall claqgb( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, MKL_Complex8* ab, const MKL_INT* ldab,
                       const float* r, const float* c, const float* rowcnd,
                       const float* colcnd, const float* amax, char* equed , int equed_len);
void __stdcall claqgb_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, MKL_Complex8* ab, const MKL_INT* ldab,
                        const float* r, const float* c, const float* rowcnd,
                        const float* colcnd, const float* amax, char* equed , int equed_len);

void __stdcall CLAQGE( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, const float* r, const float* c,
                       const float* rowcnd, const float* colcnd, const float* amax,
                       char* equed , int equed_len);
void __stdcall CLAQGE_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const float* r, const float* c,
                        const float* rowcnd, const float* colcnd, const float* amax,
                        char* equed , int equed_len);
void __stdcall claqge( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, const float* r, const float* c,
                       const float* rowcnd, const float* colcnd, const float* amax,
                       char* equed , int equed_len);
void __stdcall claqge_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const float* r, const float* c,
                        const float* rowcnd, const float* colcnd, const float* amax,
                        char* equed , int equed_len);

void __stdcall CLAQHB( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex8* ab, const MKL_INT* ldab, float* s,
                       const float* scond, const float* amax, char* equed , int equed_len);
void __stdcall CLAQHB_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex8* ab, const MKL_INT* ldab, float* s,
                        const float* scond, const float* amax, char* equed , int equed_len);
void __stdcall claqhb( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex8* ab, const MKL_INT* ldab, float* s,
                       const float* scond, const float* amax, char* equed , int equed_len);
void __stdcall claqhb_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex8* ab, const MKL_INT* ldab, float* s,
                        const float* scond, const float* amax, char* equed , int equed_len);

void __stdcall CLAQHE( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, const float* s, const float* scond,
                       const float* amax, char* equed , int equed_len);
void __stdcall CLAQHE_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const float* s, const float* scond,
                        const float* amax, char* equed , int equed_len);
void __stdcall claqhe( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, const float* s, const float* scond,
                       const float* amax, char* equed , int equed_len);
void __stdcall claqhe_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const float* s, const float* scond,
                        const float* amax, char* equed , int equed_len);

void __stdcall CLAQHP( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       const float* s, const float* scond, const float* amax,
                       char* equed , int equed_len);
void __stdcall CLAQHP_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        const float* s, const float* scond, const float* amax,
                        char* equed , int equed_len);
void __stdcall claqhp( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       const float* s, const float* scond, const float* amax,
                       char* equed , int equed_len);
void __stdcall claqhp_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        const float* s, const float* scond, const float* amax,
                        char* equed , int equed_len);

void __stdcall CLAQP2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* jpvt,
                       MKL_Complex8* tau, float* vn1, float* vn2, MKL_Complex8* work );
void __stdcall CLAQP2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* jpvt,
                        MKL_Complex8* tau, float* vn1, float* vn2, MKL_Complex8* work );
void __stdcall claqp2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* jpvt,
                       MKL_Complex8* tau, float* vn1, float* vn2, MKL_Complex8* work );
void __stdcall claqp2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* jpvt,
                        MKL_Complex8* tau, float* vn1, float* vn2, MKL_Complex8* work );

void __stdcall CLAQPS( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       const MKL_INT* nb, MKL_INT* kb, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex8* tau, float* vn1,
                       float* vn2, MKL_Complex8* auxv, MKL_Complex8* f,
                       const MKL_INT* ldf );
void __stdcall CLAQPS_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        const MKL_INT* nb, MKL_INT* kb, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex8* tau, float* vn1,
                        float* vn2, MKL_Complex8* auxv, MKL_Complex8* f,
                        const MKL_INT* ldf );
void __stdcall claqps( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       const MKL_INT* nb, MKL_INT* kb, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex8* tau, float* vn1,
                       float* vn2, MKL_Complex8* auxv, MKL_Complex8* f,
                       const MKL_INT* ldf );
void __stdcall claqps_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        const MKL_INT* nb, MKL_INT* kb, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex8* tau, float* vn1,
                        float* vn2, MKL_Complex8* auxv, MKL_Complex8* f,
                        const MKL_INT* ldf );

void __stdcall CLAQR0( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                       const MKL_INT* ldh, MKL_Complex8* w, MKL_INT* iloz, MKL_INT* ihiz,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall CLAQR0_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                        const MKL_INT* ldh, MKL_Complex8* w, MKL_INT* iloz,
                        MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall claqr0( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                       const MKL_INT* ldh, MKL_Complex8* w, MKL_INT* iloz, MKL_INT* ihiz,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall claqr0_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                        const MKL_INT* ldh, MKL_Complex8* w, MKL_INT* iloz,
                        MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CLAQR1( const MKL_INT* n, const MKL_Complex8* h, const MKL_INT* ldh,
                       const MKL_Complex8* s1, MKL_Complex8* s2, MKL_Complex8* v );
void __stdcall CLAQR1_( const MKL_INT* n, const MKL_Complex8* h, const MKL_INT* ldh,
                        const MKL_Complex8* s1, MKL_Complex8* s2, MKL_Complex8* v );
void __stdcall claqr1( const MKL_INT* n, const MKL_Complex8* h, const MKL_INT* ldh,
                       const MKL_Complex8* s1, MKL_Complex8* s2, MKL_Complex8* v );
void __stdcall claqr1_( const MKL_INT* n, const MKL_Complex8* h, const MKL_INT* ldh,
                        const MKL_Complex8* s1, MKL_Complex8* s2, MKL_Complex8* v );

void __stdcall CLAQR2( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       MKL_Complex8* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_INT* ns, MKL_INT* nd, MKL_Complex8* sh, MKL_Complex8* v,
                       const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex8* t,
                       const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex8* wv,
                       const MKL_INT* ldwv, MKL_Complex8* work, const MKL_INT* lwork );
void __stdcall CLAQR2_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        MKL_Complex8* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_INT* ns, MKL_INT* nd, MKL_Complex8* sh, MKL_Complex8* v,
                        const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex8* t,
                        const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex8* wv,
                        const MKL_INT* ldwv, MKL_Complex8* work, const MKL_INT* lwork );
void __stdcall claqr2( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       MKL_Complex8* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_INT* ns, MKL_INT* nd, MKL_Complex8* sh, MKL_Complex8* v,
                       const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex8* t,
                       const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex8* wv,
                       const MKL_INT* ldwv, MKL_Complex8* work, const MKL_INT* lwork );
void __stdcall claqr2_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        MKL_Complex8* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_INT* ns, MKL_INT* nd, MKL_Complex8* sh, MKL_Complex8* v,
                        const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex8* t,
                        const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex8* wv,
                        const MKL_INT* ldwv, MKL_Complex8* work, const MKL_INT* lwork );

void __stdcall CLAQR3( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       MKL_Complex8* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_INT* ns, MKL_INT* nd, MKL_Complex8* sh, MKL_Complex8* v,
                       const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex8* t,
                       const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex8* wv,
                       const MKL_INT* ldwv, MKL_Complex8* work, const MKL_INT* lwork );
void __stdcall CLAQR3_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        MKL_Complex8* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_INT* ns, MKL_INT* nd, MKL_Complex8* sh, MKL_Complex8* v,
                        const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex8* t,
                        const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex8* wv,
                        const MKL_INT* ldwv, MKL_Complex8* work, const MKL_INT* lwork );
void __stdcall claqr3( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       MKL_Complex8* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_INT* ns, MKL_INT* nd, MKL_Complex8* sh, MKL_Complex8* v,
                       const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex8* t,
                       const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex8* wv,
                       const MKL_INT* ldwv, MKL_Complex8* work, const MKL_INT* lwork );
void __stdcall claqr3_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        MKL_Complex8* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_INT* ns, MKL_INT* nd, MKL_Complex8* sh, MKL_Complex8* v,
                        const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex8* t,
                        const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex8* wv,
                        const MKL_INT* ldwv, MKL_Complex8* work, const MKL_INT* lwork );

void __stdcall CLAQR4( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                       const MKL_INT* ldh, MKL_Complex8* w, MKL_INT* iloz, MKL_INT* ihiz,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall CLAQR4_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                        const MKL_INT* ldh, MKL_Complex8* w, MKL_INT* iloz,
                        MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall claqr4( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                       const MKL_INT* ldh, MKL_Complex8* w, MKL_INT* iloz, MKL_INT* ihiz,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall claqr4_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex8* h,
                        const MKL_INT* ldh, MKL_Complex8* w, MKL_INT* iloz,
                        MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CLAQR5( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* kacc22,
                       const MKL_INT* n, const MKL_INT* ktop, const MKL_INT* kbot,
                       const MKL_INT* nshfts, MKL_Complex8* s, MKL_Complex8* h,
                       const MKL_INT* ldh, const MKL_INT* iloz, const MKL_INT* ihiz,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* v,
                       const MKL_INT* ldv, MKL_Complex8* u, const MKL_INT* ldu,
                       const MKL_INT* nv, MKL_Complex8* wv, const MKL_INT* ldwv,
                       const MKL_INT* nh, MKL_Complex8* wh, const MKL_INT* ldwh );
void __stdcall CLAQR5_( const MKL_INT* wantt, const MKL_INT* wantz,
                        const MKL_INT* kacc22, const MKL_INT* n, const MKL_INT* ktop,
                        const MKL_INT* kbot, const MKL_INT* nshfts, MKL_Complex8* s,
                        MKL_Complex8* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* u,
                        const MKL_INT* ldu, const MKL_INT* nv, MKL_Complex8* wv,
                        const MKL_INT* ldwv, const MKL_INT* nh, MKL_Complex8* wh,
                        const MKL_INT* ldwh );
void __stdcall claqr5( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* kacc22,
                       const MKL_INT* n, const MKL_INT* ktop, const MKL_INT* kbot,
                       const MKL_INT* nshfts, MKL_Complex8* s, MKL_Complex8* h,
                       const MKL_INT* ldh, const MKL_INT* iloz, const MKL_INT* ihiz,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* v,
                       const MKL_INT* ldv, MKL_Complex8* u, const MKL_INT* ldu,
                       const MKL_INT* nv, MKL_Complex8* wv, const MKL_INT* ldwv,
                       const MKL_INT* nh, MKL_Complex8* wh, const MKL_INT* ldwh );
void __stdcall claqr5_( const MKL_INT* wantt, const MKL_INT* wantz,
                        const MKL_INT* kacc22, const MKL_INT* n, const MKL_INT* ktop,
                        const MKL_INT* kbot, const MKL_INT* nshfts, MKL_Complex8* s,
                        MKL_Complex8* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* v, const MKL_INT* ldv, MKL_Complex8* u,
                        const MKL_INT* ldu, const MKL_INT* nv, MKL_Complex8* wv,
                        const MKL_INT* ldwv, const MKL_INT* nh, MKL_Complex8* wh,
                        const MKL_INT* ldwh );

void __stdcall CLAQSB( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex8* ab, const MKL_INT* ldab, const float* s,
                       const float* scond, const float* amax, char* equed , int equed_len);
void __stdcall CLAQSB_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex8* ab, const MKL_INT* ldab, const float* s,
                        const float* scond, const float* amax, char* equed , int equed_len);
void __stdcall claqsb( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex8* ab, const MKL_INT* ldab, const float* s,
                       const float* scond, const float* amax, char* equed , int equed_len);
void __stdcall claqsb_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex8* ab, const MKL_INT* ldab, const float* s,
                        const float* scond, const float* amax, char* equed , int equed_len);

void __stdcall CLAQSP( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       const float* s, const float* scond, const float* amax,
                       char* equed , int equed_len);
void __stdcall CLAQSP_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        const float* s, const float* scond, const float* amax,
                        char* equed , int equed_len);
void __stdcall claqsp( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       const float* s, const float* scond, const float* amax,
                       char* equed , int equed_len);
void __stdcall claqsp_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        const float* s, const float* scond, const float* amax,
                        char* equed , int equed_len);

void __stdcall CLAQSY( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, const float* s, const float* scond,
                       const float* amax, char* equed , int equed_len);
void __stdcall CLAQSY_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const float* s, const float* scond,
                        const float* amax, char* equed , int equed_len);
void __stdcall claqsy( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, const float* s, const float* scond,
                       const float* amax, char* equed , int equed_len);
void __stdcall claqsy_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const float* s, const float* scond,
                        const float* amax, char* equed , int equed_len);

void __stdcall CLAR1V( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                       const float* lambda, const float* d, const float* l,
                       const float* ld, const float* lld, const float* pivmin,
                       const float* gaptol, MKL_Complex8* z, const MKL_INT* wantnc,
                       MKL_INT* negcnt, float* ztz, float* mingma, MKL_INT* r,
                       MKL_INT* isuppz, float* nrminv, float* resid, float* rqcorr,
                       float* work );
void __stdcall CLAR1V_( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                        const float* lambda, const float* d, const float* l,
                        const float* ld, const float* lld, const float* pivmin,
                        const float* gaptol, MKL_Complex8* z, const MKL_INT* wantnc,
                        MKL_INT* negcnt, float* ztz, float* mingma, MKL_INT* r,
                        MKL_INT* isuppz, float* nrminv, float* resid, float* rqcorr,
                        float* work );
void __stdcall clar1v( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                       const float* lambda, const float* d, const float* l,
                       const float* ld, const float* lld, const float* pivmin,
                       const float* gaptol, MKL_Complex8* z, const MKL_INT* wantnc,
                       MKL_INT* negcnt, float* ztz, float* mingma, MKL_INT* r,
                       MKL_INT* isuppz, float* nrminv, float* resid, float* rqcorr,
                       float* work );
void __stdcall clar1v_( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                        const float* lambda, const float* d, const float* l,
                        const float* ld, const float* lld, const float* pivmin,
                        const float* gaptol, MKL_Complex8* z, const MKL_INT* wantnc,
                        MKL_INT* negcnt, float* ztz, float* mingma, MKL_INT* r,
                        MKL_INT* isuppz, float* nrminv, float* resid, float* rqcorr,
                        float* work );

void __stdcall CLAR2V( const MKL_INT* n, MKL_Complex8* x, MKL_Complex8* y,
                       MKL_Complex8* z, const MKL_INT* incx, const float* c,
                       const MKL_Complex8* s, const MKL_INT* incc );
void __stdcall CLAR2V_( const MKL_INT* n, MKL_Complex8* x, MKL_Complex8* y,
                        MKL_Complex8* z, const MKL_INT* incx, const float* c,
                        const MKL_Complex8* s, const MKL_INT* incc );
void __stdcall clar2v( const MKL_INT* n, MKL_Complex8* x, MKL_Complex8* y,
                       MKL_Complex8* z, const MKL_INT* incx, const float* c,
                       const MKL_Complex8* s, const MKL_INT* incc );
void __stdcall clar2v_( const MKL_INT* n, MKL_Complex8* x, MKL_Complex8* y,
                        MKL_Complex8* z, const MKL_INT* incx, const float* c,
                        const MKL_Complex8* s, const MKL_INT* incc );

void __stdcall CLARCM( const MKL_INT* m, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* c, const MKL_INT* ldc, float* rwork );
void __stdcall CLARCM_( const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* c, const MKL_INT* ldc, float* rwork );
void __stdcall clarcm( const MKL_INT* m, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* c, const MKL_INT* ldc, float* rwork );
void __stdcall clarcm_( const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* c, const MKL_INT* ldc, float* rwork );

void __stdcall CLARFB( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex8* v, const MKL_INT* ldv,
                       const MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* ldwork );
void __stdcall CLARFB_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* ldwork );
void __stdcall clarfb( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex8* v, const MKL_INT* ldv,
                       const MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* ldwork );
void __stdcall clarfb_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* t, const MKL_INT* ldt, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* ldwork );

void __stdcall CLARF( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_Complex8* v, const MKL_INT* incv,
                      const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                      MKL_Complex8* work );
void __stdcall CLARF_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex8* v, const MKL_INT* incv,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work );
void __stdcall clarf( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_Complex8* v, const MKL_INT* incv,
                      const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                      MKL_Complex8* work );
void __stdcall clarf_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex8* v, const MKL_INT* incv,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work );

void __stdcall CLARFG( const MKL_INT* n, MKL_Complex8* alpha, MKL_Complex8* x,
                       const MKL_INT* incx, MKL_Complex8* tau );
void __stdcall CLARFG_( const MKL_INT* n, MKL_Complex8* alpha, MKL_Complex8* x,
                        const MKL_INT* incx, MKL_Complex8* tau );
void __stdcall clarfg( const MKL_INT* n, MKL_Complex8* alpha, MKL_Complex8* x,
                       const MKL_INT* incx, MKL_Complex8* tau );
void __stdcall clarfg_( const MKL_INT* n, MKL_Complex8* alpha, MKL_Complex8* x,
                        const MKL_INT* incx, MKL_Complex8* tau );

void __stdcall CLARFGP( const MKL_INT* n, MKL_Complex8* alpha, MKL_Complex8* x,
                        const MKL_INT* incx, MKL_Complex8* tau );
void __stdcall CLARFGP_( const MKL_INT* n, MKL_Complex8* alpha, MKL_Complex8* x,
                         const MKL_INT* incx, MKL_Complex8* tau );
void __stdcall clarfgp( const MKL_INT* n, MKL_Complex8* alpha, MKL_Complex8* x,
                        const MKL_INT* incx, MKL_Complex8* tau );
void __stdcall clarfgp_( const MKL_INT* n, MKL_Complex8* alpha, MKL_Complex8* x,
                         const MKL_INT* incx, MKL_Complex8* tau );

void __stdcall CLARFP( const MKL_INT* n, MKL_Complex8* alpha, MKL_Complex8* x,
                       const MKL_INT* incx, MKL_Complex8* tau );
void __stdcall CLARFP_( const MKL_INT* n, MKL_Complex8* alpha, MKL_Complex8* x,
                        const MKL_INT* incx, MKL_Complex8* tau );
void __stdcall clarfp( const MKL_INT* n, MKL_Complex8* alpha, MKL_Complex8* x,
                       const MKL_INT* incx, MKL_Complex8* tau );
void __stdcall clarfp_( const MKL_INT* n, MKL_Complex8* alpha, MKL_Complex8* x,
                        const MKL_INT* incx, MKL_Complex8* tau );

void __stdcall CLARFT( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex8* v, const MKL_INT* ldv,
                       const MKL_Complex8* tau, MKL_Complex8* t, const MKL_INT* ldt );
void __stdcall CLARFT_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* tau, MKL_Complex8* t, const MKL_INT* ldt );
void __stdcall clarft( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex8* v, const MKL_INT* ldv,
                       const MKL_Complex8* tau, MKL_Complex8* t, const MKL_INT* ldt );
void __stdcall clarft_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* tau, MKL_Complex8* t, const MKL_INT* ldt );

void __stdcall CLARFX( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex8* v, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work );
void __stdcall CLARFX_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex8* v, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work );
void __stdcall clarfx( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex8* v, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work );
void __stdcall clarfx_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex8* v, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work );

void __stdcall CLARGV( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx,
                       MKL_Complex8* y, const MKL_INT* incy, float* c,
                       const MKL_INT* incc );
void __stdcall CLARGV_( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx,
                        MKL_Complex8* y, const MKL_INT* incy, float* c,
                        const MKL_INT* incc );
void __stdcall clargv( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx,
                       MKL_Complex8* y, const MKL_INT* incy, float* c,
                       const MKL_INT* incc );
void __stdcall clargv_( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx,
                        MKL_Complex8* y, const MKL_INT* incy, float* c,
                        const MKL_INT* incc );

void __stdcall CLARNV( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                       MKL_Complex8* x );
void __stdcall CLARNV_( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                        MKL_Complex8* x );
void __stdcall clarnv( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                       MKL_Complex8* x );
void __stdcall clarnv_( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                        MKL_Complex8* x );

void __stdcall CLARRV( const MKL_INT* n, const float* vl, const float* vu, float* d,
                       float* l, float* pivmin, const MKL_INT* isplit, const MKL_INT* m,
                       const MKL_INT* dol, const MKL_INT* dou, const float* minrgp,
                       const float* rtol1, const float* rtol2, float* w, float* werr,
                       float* wgap, const MKL_INT* iblock, const MKL_INT* indexw,
                       const float* gers, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_INT* isuppz, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall CLARRV_( const MKL_INT* n, const float* vl, const float* vu, float* d,
                        float* l, float* pivmin, const MKL_INT* isplit, const MKL_INT* m,
                        const MKL_INT* dol, const MKL_INT* dou, const float* minrgp,
                        const float* rtol1, const float* rtol2, float* w, float* werr,
                        float* wgap, const MKL_INT* iblock, const MKL_INT* indexw,
                        const float* gers, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_INT* isuppz, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall clarrv( const MKL_INT* n, const float* vl, const float* vu, float* d,
                       float* l, float* pivmin, const MKL_INT* isplit, const MKL_INT* m,
                       const MKL_INT* dol, const MKL_INT* dou, const float* minrgp,
                       const float* rtol1, const float* rtol2, float* w, float* werr,
                       float* wgap, const MKL_INT* iblock, const MKL_INT* indexw,
                       const float* gers, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_INT* isuppz, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall clarrv_( const MKL_INT* n, const float* vl, const float* vu, float* d,
                        float* l, float* pivmin, const MKL_INT* isplit, const MKL_INT* m,
                        const MKL_INT* dol, const MKL_INT* dou, const float* minrgp,
                        const float* rtol1, const float* rtol2, float* w, float* werr,
                        float* wgap, const MKL_INT* iblock, const MKL_INT* indexw,
                        const float* gers, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_INT* isuppz, float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall CLARTG( const MKL_Complex8* f, const MKL_Complex8* g, float* cs,
                       MKL_Complex8* sn, MKL_Complex8* r );
void __stdcall CLARTG_( const MKL_Complex8* f, const MKL_Complex8* g, float* cs,
                        MKL_Complex8* sn, MKL_Complex8* r );
void __stdcall clartg( const MKL_Complex8* f, const MKL_Complex8* g, float* cs,
                       MKL_Complex8* sn, MKL_Complex8* r );
void __stdcall clartg_( const MKL_Complex8* f, const MKL_Complex8* g, float* cs,
                        MKL_Complex8* sn, MKL_Complex8* r );

void __stdcall CLARTV( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx,
                       MKL_Complex8* y, const MKL_INT* incy, const float* c,
                       const MKL_Complex8* s, const MKL_INT* incc );
void __stdcall CLARTV_( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx,
                        MKL_Complex8* y, const MKL_INT* incy, const float* c,
                        const MKL_Complex8* s, const MKL_INT* incc );
void __stdcall clartv( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx,
                       MKL_Complex8* y, const MKL_INT* incy, const float* c,
                       const MKL_Complex8* s, const MKL_INT* incc );
void __stdcall clartv_( const MKL_INT* n, MKL_Complex8* x, const MKL_INT* incx,
                        MKL_Complex8* y, const MKL_INT* incy, const float* c,
                        const MKL_Complex8* s, const MKL_INT* incc );

void __stdcall CLARZB( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, const MKL_Complex8* v,
                       const MKL_INT* ldv, const MKL_Complex8* t, const MKL_INT* ldt,
                       MKL_Complex8* c, const MKL_INT* ldc, MKL_Complex8* work,
                       const MKL_INT* ldwork );
void __stdcall CLARZB_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_Complex8* v,
                        const MKL_INT* ldv, const MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* c, const MKL_INT* ldc, MKL_Complex8* work,
                        const MKL_INT* ldwork );
void __stdcall clarzb( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, const MKL_Complex8* v,
                       const MKL_INT* ldv, const MKL_Complex8* t, const MKL_INT* ldt,
                       MKL_Complex8* c, const MKL_INT* ldc, MKL_Complex8* work,
                       const MKL_INT* ldwork );
void __stdcall clarzb_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_Complex8* v,
                        const MKL_INT* ldv, const MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* c, const MKL_INT* ldc, MKL_Complex8* work,
                        const MKL_INT* ldwork );

void __stdcall CLARZ( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* l, const MKL_Complex8* v, const MKL_INT* incv,
                      const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                      MKL_Complex8* work );
void __stdcall CLARZ_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* l, const MKL_Complex8* v, const MKL_INT* incv,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work );
void __stdcall clarz( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* l, const MKL_Complex8* v, const MKL_INT* incv,
                      const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                      MKL_Complex8* work );
void __stdcall clarz_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* l, const MKL_Complex8* v, const MKL_INT* incv,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work );

void __stdcall CLARZT( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, MKL_Complex8* v, const MKL_INT* ldv,
                       const MKL_Complex8* tau, MKL_Complex8* t, const MKL_INT* ldt );
void __stdcall CLARZT_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* tau, MKL_Complex8* t, const MKL_INT* ldt );
void __stdcall clarzt( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, MKL_Complex8* v, const MKL_INT* ldv,
                       const MKL_Complex8* tau, MKL_Complex8* t, const MKL_INT* ldt );
void __stdcall clarzt_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* tau, MKL_Complex8* t, const MKL_INT* ldt );

void __stdcall CLASCL( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                       const float* cfrom, const float* cto, const MKL_INT* m,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall CLASCL_( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                        const float* cfrom, const float* cto, const MKL_INT* m,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_INT* info );
void __stdcall clascl( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                       const float* cfrom, const float* cto, const MKL_INT* m,
                       const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall clascl_( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                        const float* cfrom, const float* cto, const MKL_INT* m,
                        const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_INT* info );

void __stdcall CLASET( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex8* alpha, const MKL_Complex8* beta,
                       MKL_Complex8* a, const MKL_INT* lda );
void __stdcall CLASET_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex8* alpha, const MKL_Complex8* beta,
                        MKL_Complex8* a, const MKL_INT* lda );
void __stdcall claset( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex8* alpha, const MKL_Complex8* beta,
                       MKL_Complex8* a, const MKL_INT* lda );
void __stdcall claset_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex8* alpha, const MKL_Complex8* beta,
                        MKL_Complex8* a, const MKL_INT* lda );

void __stdcall CLASR( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                      const MKL_INT* m, const MKL_INT* n, const float* c, const float* s,
                      MKL_Complex8* a, const MKL_INT* lda );
void __stdcall CLASR_( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                       const MKL_INT* m, const MKL_INT* n, const float* c,
                       const float* s, MKL_Complex8* a, const MKL_INT* lda );
void __stdcall clasr( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                      const MKL_INT* m, const MKL_INT* n, const float* c, const float* s,
                      MKL_Complex8* a, const MKL_INT* lda );
void __stdcall clasr_( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                       const MKL_INT* m, const MKL_INT* n, const float* c,
                       const float* s, MKL_Complex8* a, const MKL_INT* lda );

void __stdcall CLASSQ( const MKL_INT* n, const MKL_Complex8* x, const MKL_INT* incx,
                       float* scale, float* sumsq );
void __stdcall CLASSQ_( const MKL_INT* n, const MKL_Complex8* x, const MKL_INT* incx,
                        float* scale, float* sumsq );
void __stdcall classq( const MKL_INT* n, const MKL_Complex8* x, const MKL_INT* incx,
                       float* scale, float* sumsq );
void __stdcall classq_( const MKL_INT* n, const MKL_Complex8* x, const MKL_INT* incx,
                        float* scale, float* sumsq );

void __stdcall CLASWP( const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                       const MKL_INT* incx );
void __stdcall CLASWP_( const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                        const MKL_INT* incx );
void __stdcall claswp( const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                       const MKL_INT* incx );
void __stdcall claswp_( const MKL_INT* n, MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                        const MKL_INT* incx );

void __stdcall CLASYF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall CLASYF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                        MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall clasyf( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall clasyf_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_INT* kb, MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                        MKL_Complex8* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall CLATBS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* x,
                       float* scale, float* cnorm, MKL_INT* info );
void __stdcall CLATBS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* x,
                        float* scale, float* cnorm, MKL_INT* info );
void __stdcall clatbs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* x,
                       float* scale, float* cnorm, MKL_INT* info );
void __stdcall clatbs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* x,
                        float* scale, float* cnorm, MKL_INT* info );

void __stdcall CLATDF( const MKL_INT* ijob, const MKL_INT* n, const MKL_Complex8* z,
                       const MKL_INT* ldz, MKL_Complex8* rhs, float* rdsum,
                       float* rdscal, const MKL_INT* ipiv, const MKL_INT* jpiv );
void __stdcall CLATDF_( const MKL_INT* ijob, const MKL_INT* n, const MKL_Complex8* z,
                        const MKL_INT* ldz, MKL_Complex8* rhs, float* rdsum,
                        float* rdscal, const MKL_INT* ipiv, const MKL_INT* jpiv );
void __stdcall clatdf( const MKL_INT* ijob, const MKL_INT* n, const MKL_Complex8* z,
                       const MKL_INT* ldz, MKL_Complex8* rhs, float* rdsum,
                       float* rdscal, const MKL_INT* ipiv, const MKL_INT* jpiv );
void __stdcall clatdf_( const MKL_INT* ijob, const MKL_INT* n, const MKL_Complex8* z,
                        const MKL_INT* ldz, MKL_Complex8* rhs, float* rdsum,
                        float* rdscal, const MKL_INT* ipiv, const MKL_INT* jpiv );

void __stdcall CLATPS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex8* ap,
                       MKL_Complex8* x, float* scale, float* cnorm, MKL_INT* info );
void __stdcall CLATPS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex8* ap,
                        MKL_Complex8* x, float* scale, float* cnorm, MKL_INT* info );
void __stdcall clatps( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex8* ap,
                       MKL_Complex8* x, float* scale, float* cnorm, MKL_INT* info );
void __stdcall clatps_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex8* ap,
                        MKL_Complex8* x, float* scale, float* cnorm, MKL_INT* info );

void __stdcall CLATRD( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_Complex8* a, const MKL_INT* lda, float* e, MKL_Complex8* tau,
                       MKL_Complex8* w, const MKL_INT* ldw );
void __stdcall CLATRD_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_Complex8* a, const MKL_INT* lda, float* e, MKL_Complex8* tau,
                        MKL_Complex8* w, const MKL_INT* ldw );
void __stdcall clatrd( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_Complex8* a, const MKL_INT* lda, float* e, MKL_Complex8* tau,
                       MKL_Complex8* w, const MKL_INT* ldw );
void __stdcall clatrd_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_Complex8* a, const MKL_INT* lda, float* e, MKL_Complex8* tau,
                        MKL_Complex8* w, const MKL_INT* ldw );

void __stdcall CLATRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* x, float* scale, float* cnorm,
                       MKL_INT* info );
void __stdcall CLATRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* x, float* scale, float* cnorm,
                        MKL_INT* info );
void __stdcall clatrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* x, float* scale, float* cnorm,
                       MKL_INT* info );
void __stdcall clatrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* x, float* scale, float* cnorm,
                        MKL_INT* info );

void __stdcall CLATRZ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                       MKL_Complex8* work );
void __stdcall CLATRZ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                        MKL_Complex8* work );
void __stdcall clatrz( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                       MKL_Complex8* work );
void __stdcall clatrz_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* tau,
                        MKL_Complex8* work );

void __stdcall CLATZM( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex8* v, const MKL_INT* incv,
                       const MKL_Complex8* tau, MKL_Complex8* c1, MKL_Complex8* c2,
                       const MKL_INT* ldc, MKL_Complex8* work );
void __stdcall CLATZM_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex8* v, const MKL_INT* incv,
                        const MKL_Complex8* tau, MKL_Complex8* c1, MKL_Complex8* c2,
                        const MKL_INT* ldc, MKL_Complex8* work );
void __stdcall clatzm( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex8* v, const MKL_INT* incv,
                       const MKL_Complex8* tau, MKL_Complex8* c1, MKL_Complex8* c2,
                       const MKL_INT* ldc, MKL_Complex8* work );
void __stdcall clatzm_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex8* v, const MKL_INT* incv,
                        const MKL_Complex8* tau, MKL_Complex8* c1, MKL_Complex8* c2,
                        const MKL_INT* ldc, MKL_Complex8* work );

void __stdcall CLAUU2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall CLAUU2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall clauu2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall clauu2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall CLAUUM( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall CLAUUM_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall clauum( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall clauum_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall CPBCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_Complex8* ab, const MKL_INT* ldab, const float* anorm,
                       float* rcond, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CPBCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_Complex8* ab, const MKL_INT* ldab, const float* anorm,
                        float* rcond, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cpbcon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_Complex8* ab, const MKL_INT* ldab, const float* anorm,
                       float* rcond, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cpbcon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_Complex8* ab, const MKL_INT* ldab, const float* anorm,
                        float* rcond, MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CPBEQU( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_Complex8* ab, const MKL_INT* ldab, float* s,
                       float* scond, float* amax, MKL_INT* info );
void __stdcall CPBEQU_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_Complex8* ab, const MKL_INT* ldab, float* s,
                        float* scond, float* amax, MKL_INT* info );
void __stdcall cpbequ( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_Complex8* ab, const MKL_INT* ldab, float* s,
                       float* scond, float* amax, MKL_INT* info );
void __stdcall cpbequ_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_Complex8* ab, const MKL_INT* ldab, float* s,
                        float* scond, float* amax, MKL_INT* info );

void __stdcall CPBRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const MKL_Complex8* ab, const MKL_INT* ldab,
                       const MKL_Complex8* afb, const MKL_INT* ldafb,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall CPBRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const MKL_Complex8* ab, const MKL_INT* ldab,
                        const MKL_Complex8* afb, const MKL_INT* ldafb,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall cpbrfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const MKL_Complex8* ab, const MKL_INT* ldab,
                       const MKL_Complex8* afb, const MKL_INT* ldafb,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall cpbrfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const MKL_Complex8* ab, const MKL_INT* ldab,
                        const MKL_Complex8* afb, const MKL_INT* ldafb,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );

void __stdcall CPBSTF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex8* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall CPBSTF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex8* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall cpbstf( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex8* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall cpbstf_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex8* ab, const MKL_INT* ldab, MKL_INT* info );

void __stdcall CPBSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                      const MKL_INT* nrhs, MKL_Complex8* ab, const MKL_INT* ldab,
                      MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall CPBSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, MKL_Complex8* ab, const MKL_INT* ldab,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall cpbsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                      const MKL_INT* nrhs, MKL_Complex8* ab, const MKL_INT* ldab,
                      MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall cpbsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, MKL_Complex8* ab, const MKL_INT* ldab,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall CPBSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, const MKL_INT* nrhs, MKL_Complex8* ab,
                       const MKL_INT* ldab, MKL_Complex8* afb, const MKL_INT* ldafb,
                       char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CPBSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, const MKL_INT* nrhs, MKL_Complex8* ab,
                        const MKL_INT* ldab, MKL_Complex8* afb, const MKL_INT* ldafb,
                        char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cpbsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, const MKL_INT* nrhs, MKL_Complex8* ab,
                       const MKL_INT* ldab, MKL_Complex8* afb, const MKL_INT* ldafb,
                       char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cpbsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, const MKL_INT* nrhs, MKL_Complex8* ab,
                        const MKL_INT* ldab, MKL_Complex8* afb, const MKL_INT* ldafb,
                        char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CPBTF2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex8* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall CPBTF2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex8* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall cpbtf2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex8* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall cpbtf2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex8* ab, const MKL_INT* ldab, MKL_INT* info );

void __stdcall CPBTRF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex8* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall CPBTRF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex8* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall cpbtrf( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex8* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall cpbtrf_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex8* ab, const MKL_INT* ldab, MKL_INT* info );

void __stdcall CPBTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const MKL_Complex8* ab, const MKL_INT* ldab,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall CPBTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const MKL_Complex8* ab, const MKL_INT* ldab,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall cpbtrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const MKL_Complex8* ab, const MKL_INT* ldab,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall cpbtrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const MKL_Complex8* ab, const MKL_INT* ldab,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall CPFTRF( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* a, MKL_INT* info );
void __stdcall CPFTRF_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* a, MKL_INT* info );
void __stdcall cpftrf( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* a, MKL_INT* info );
void __stdcall cpftrf_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* a, MKL_INT* info );

void __stdcall CPFTRI( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* a, MKL_INT* info );
void __stdcall CPFTRI_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* a, MKL_INT* info );
void __stdcall cpftri( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex8* a, MKL_INT* info );
void __stdcall cpftri_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* a, MKL_INT* info );

void __stdcall CPFTRS( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex8* a, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall CPFTRS_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall cpftrs( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex8* a, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall cpftrs_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall CPOCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const float* anorm, float* rcond,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CPOCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const float* anorm, float* rcond,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cpocon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const float* anorm, float* rcond,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cpocon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const float* anorm, float* rcond,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CPOEQUB( const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        float* s, float* scond, float* amax, MKL_INT* info );
void __stdcall CPOEQUB_( const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                         float* s, float* scond, float* amax, MKL_INT* info );
void __stdcall cpoequb( const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        float* s, float* scond, float* amax, MKL_INT* info );
void __stdcall cpoequb_( const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                         float* s, float* scond, float* amax, MKL_INT* info );

void __stdcall CPOEQU( const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                       float* s, float* scond, float* amax, MKL_INT* info );
void __stdcall CPOEQU_( const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        float* s, float* scond, float* amax, MKL_INT* info );
void __stdcall cpoequ( const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                       float* s, float* scond, float* amax, MKL_INT* info );
void __stdcall cpoequ_( const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        float* s, float* scond, float* amax, MKL_INT* info );

void __stdcall CPORFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* af,
                       const MKL_INT* ldaf, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* ferr, float* berr,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CPORFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall cporfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* af,
                       const MKL_INT* ldaf, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* ferr, float* berr,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cporfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );

void __stdcall CPORFSX( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const float* s,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CPORFSX_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* af, const MKL_INT* ldaf, const float* s,
                         const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                         const MKL_INT* ldx, float* rcond, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cporfsx( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const float* s,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cporfsx_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* af, const MKL_INT* ldaf, const float* s,
                         const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                         const MKL_INT* ldx, float* rcond, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CPOSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall CPOSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall cposv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall cposv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );

void __stdcall CPOSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* af, const MKL_INT* ldaf, char* equed, int equed_len, float* s,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CPOSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, char* equed, int equed_len, float* s,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cposvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* af, const MKL_INT* ldaf, char* equed, int equed_len, float* s,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cposvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, char* equed, int equed_len, float* s,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CPOSVXX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, char* equed, int equed_len, float* s,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CPOSVXX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                         MKL_Complex8* af, const MKL_INT* ldaf, char* equed, int equed_len, float* s,
                         MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                         const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cposvxx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, char* equed, int equed_len, float* s,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cposvxx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                         MKL_Complex8* af, const MKL_INT* ldaf, char* equed, int equed_len, float* s,
                         MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                         const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CPOTF2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall CPOTF2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall cpotf2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall cpotf2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall CPOTRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall CPOTRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall cpotrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall cpotrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall CPOTRI( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall CPOTRI_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall cpotri( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall cpotri_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall CPOTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall CPOTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall cpotrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall cpotrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall CPPCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                       const float* anorm, float* rcond, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall CPPCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                        const float* anorm, float* rcond, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall cppcon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                       const float* anorm, float* rcond, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall cppcon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                        const float* anorm, float* rcond, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );

void __stdcall CPPEQU( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                       float* s, float* scond, float* amax, MKL_INT* info );
void __stdcall CPPEQU_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                        float* s, float* scond, float* amax, MKL_INT* info );
void __stdcall cppequ( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                       float* s, float* scond, float* amax, MKL_INT* info );
void __stdcall cppequ_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                        float* s, float* scond, float* amax, MKL_INT* info );

void __stdcall CPPRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* ap, const MKL_Complex8* afp,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall CPPRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* ap, const MKL_Complex8* afp,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall cpprfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* ap, const MKL_Complex8* afp,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall cpprfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* ap, const MKL_Complex8* afp,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );

void __stdcall CPPSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex8* ap, MKL_Complex8* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall CPPSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* ap, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall cppsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex8* ap, MKL_Complex8* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall cppsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* ap, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* info );

void __stdcall CPPSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex8* ap, MKL_Complex8* afp,
                       char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CPPSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* ap, MKL_Complex8* afp,
                        char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cppsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex8* ap, MKL_Complex8* afp,
                       char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cppsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* ap, MKL_Complex8* afp,
                        char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CPPTRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       MKL_INT* info );
void __stdcall CPPTRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        MKL_INT* info );
void __stdcall cpptrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       MKL_INT* info );
void __stdcall cpptrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        MKL_INT* info );

void __stdcall CPPTRI( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       MKL_INT* info );
void __stdcall CPPTRI_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        MKL_INT* info );
void __stdcall cpptri( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       MKL_INT* info );
void __stdcall cpptri_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        MKL_INT* info );

void __stdcall CPPTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* ap, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall CPPTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* ap, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall cpptrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* ap, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall cpptrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* ap, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_INT* info );

void __stdcall CPSTF2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank, const float* tol,
                       float* work, MKL_INT* info );
void __stdcall CPSTF2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                        const float* tol, float* work, MKL_INT* info );
void __stdcall cpstf2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank, const float* tol,
                       float* work, MKL_INT* info );
void __stdcall cpstf2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                        const float* tol, float* work, MKL_INT* info );

void __stdcall CPSTRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank, const float* tol,
                       float* work, MKL_INT* info );
void __stdcall CPSTRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                        const float* tol, float* work, MKL_INT* info );
void __stdcall cpstrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank, const float* tol,
                       float* work, MKL_INT* info );
void __stdcall cpstrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                        const float* tol, float* work, MKL_INT* info );

void __stdcall CPTCON( const MKL_INT* n, const float* d, const MKL_Complex8* e,
                       const float* anorm, float* rcond, float* rwork, MKL_INT* info );
void __stdcall CPTCON_( const MKL_INT* n, const float* d, const MKL_Complex8* e,
                        const float* anorm, float* rcond, float* rwork, MKL_INT* info );
void __stdcall cptcon( const MKL_INT* n, const float* d, const MKL_Complex8* e,
                       const float* anorm, float* rcond, float* rwork, MKL_INT* info );
void __stdcall cptcon_( const MKL_INT* n, const float* d, const MKL_Complex8* e,
                        const float* anorm, float* rcond, float* rwork, MKL_INT* info );

void __stdcall CPTEQR( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                       MKL_Complex8* z, const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall CPTEQR_( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                        MKL_Complex8* z, const MKL_INT* ldz, float* work,
                        MKL_INT* info );
void __stdcall cpteqr( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                       MKL_Complex8* z, const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall cpteqr_( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                        MKL_Complex8* z, const MKL_INT* ldz, float* work,
                        MKL_INT* info );

void __stdcall CPTRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* d, const MKL_Complex8* e, const float* df,
                       const MKL_Complex8* ef, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* ferr, float* berr,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CPTRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* d, const MKL_Complex8* e, const float* df,
                        const MKL_Complex8* ef, const MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                        float* ferr, float* berr, MKL_Complex8* work, float* rwork,
                        MKL_INT* info );
void __stdcall cptrfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* d, const MKL_Complex8* e, const float* df,
                       const MKL_Complex8* ef, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* ferr, float* berr,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cptrfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* d, const MKL_Complex8* e, const float* df,
                        const MKL_Complex8* ef, const MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                        float* ferr, float* berr, MKL_Complex8* work, float* rwork,
                        MKL_INT* info );

void __stdcall CPTSV( const MKL_INT* n, const MKL_INT* nrhs, float* d, MKL_Complex8* e,
                      MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall CPTSV_( const MKL_INT* n, const MKL_INT* nrhs, float* d, MKL_Complex8* e,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall cptsv( const MKL_INT* n, const MKL_INT* nrhs, float* d, MKL_Complex8* e,
                      MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall cptsv_( const MKL_INT* n, const MKL_INT* nrhs, float* d, MKL_Complex8* e,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall CPTSVX( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* d, const MKL_Complex8* e, float* df,
                       MKL_Complex8* ef, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CPTSVX_( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* d, const MKL_Complex8* e, float* df,
                        MKL_Complex8* ef, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cptsvx( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* d, const MKL_Complex8* e, float* df,
                       MKL_Complex8* ef, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cptsvx_( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* d, const MKL_Complex8* e, float* df,
                        MKL_Complex8* ef, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CPTTRF( const MKL_INT* n, float* d, MKL_Complex8* e, MKL_INT* info );
void __stdcall CPTTRF_( const MKL_INT* n, float* d, MKL_Complex8* e, MKL_INT* info );
void __stdcall cpttrf( const MKL_INT* n, float* d, MKL_Complex8* e, MKL_INT* info );
void __stdcall cpttrf_( const MKL_INT* n, float* d, MKL_Complex8* e, MKL_INT* info );

void __stdcall CPTTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* d, const MKL_Complex8* e, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall CPTTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* d, const MKL_Complex8* e, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall cpttrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* d, const MKL_Complex8* e, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall cpttrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* d, const MKL_Complex8* e, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall CPTTS2( const MKL_INT* iuplo, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* d, const MKL_Complex8* e, MKL_Complex8* b,
                       const MKL_INT* ldb );
void __stdcall CPTTS2_( const MKL_INT* iuplo, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* d, const MKL_Complex8* e, MKL_Complex8* b,
                        const MKL_INT* ldb );
void __stdcall cptts2( const MKL_INT* iuplo, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* d, const MKL_Complex8* e, MKL_Complex8* b,
                       const MKL_INT* ldb );
void __stdcall cptts2_( const MKL_INT* iuplo, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* d, const MKL_Complex8* e, MKL_Complex8* b,
                        const MKL_INT* ldb );

void __stdcall CROT( const MKL_INT* n, MKL_Complex8* cx, const MKL_INT* incx,
                     MKL_Complex8* cy, const MKL_INT* incy, const float* c,
                     const MKL_Complex8* s );
void __stdcall CROT_( const MKL_INT* n, MKL_Complex8* cx, const MKL_INT* incx,
                      MKL_Complex8* cy, const MKL_INT* incy, const float* c,
                      const MKL_Complex8* s );
void __stdcall crot( const MKL_INT* n, MKL_Complex8* cx, const MKL_INT* incx,
                     MKL_Complex8* cy, const MKL_INT* incy, const float* c,
                     const MKL_Complex8* s );
void __stdcall crot_( const MKL_INT* n, MKL_Complex8* cx, const MKL_INT* incx,
                      MKL_Complex8* cy, const MKL_INT* incy, const float* c,
                      const MKL_Complex8* s );

void __stdcall CSPCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                       const MKL_INT* ipiv, const float* anorm, float* rcond,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CSPCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                        const MKL_INT* ipiv, const float* anorm, float* rcond,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall cspcon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                       const MKL_INT* ipiv, const float* anorm, float* rcond,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall cspcon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                        const MKL_INT* ipiv, const float* anorm, float* rcond,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall CSPMV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                      const MKL_Complex8* ap, const MKL_Complex8* x, const MKL_INT* incx,
                      const MKL_Complex8* beta, MKL_Complex8* y, const MKL_INT* incy );
void __stdcall CSPMV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                       const MKL_Complex8* ap, const MKL_Complex8* x,
                       const MKL_INT* incx, const MKL_Complex8* beta, MKL_Complex8* y,
                       const MKL_INT* incy );
void __stdcall cspmv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                      const MKL_Complex8* ap, const MKL_Complex8* x, const MKL_INT* incx,
                      const MKL_Complex8* beta, MKL_Complex8* y, const MKL_INT* incy );
void __stdcall cspmv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                       const MKL_Complex8* ap, const MKL_Complex8* x,
                       const MKL_INT* incx, const MKL_Complex8* beta, MKL_Complex8* y,
                       const MKL_INT* incy );

void __stdcall CSPR( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                     const MKL_Complex8* x, const MKL_INT* incx, MKL_Complex8* ap );
void __stdcall CSPR_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                      const MKL_Complex8* x, const MKL_INT* incx, MKL_Complex8* ap );
void __stdcall cspr( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                     const MKL_Complex8* x, const MKL_INT* incx, MKL_Complex8* ap );
void __stdcall cspr_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                      const MKL_Complex8* x, const MKL_INT* incx, MKL_Complex8* ap );

void __stdcall CSPRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* ap, const MKL_Complex8* afp,
                       const MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* ferr, float* berr,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CSPRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* ap, const MKL_Complex8* afp,
                        const MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* ferr, float* berr,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall csprfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* ap, const MKL_Complex8* afp,
                       const MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* ferr, float* berr,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall csprfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* ap, const MKL_Complex8* afp,
                        const MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* ferr, float* berr,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CSPSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex8* ap, MKL_INT* ipiv, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall CSPSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* ap, MKL_INT* ipiv, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall cspsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex8* ap, MKL_INT* ipiv, MKL_Complex8* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall cspsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* ap, MKL_INT* ipiv, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );

void __stdcall CSPSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex8* ap, MKL_Complex8* afp,
                       MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CSPSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* ap, MKL_Complex8* afp,
                        MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cspsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex8* ap, MKL_Complex8* afp,
                       MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall cspsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* ap, MKL_Complex8* afp,
                        MKL_INT* ipiv, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CSPTRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall CSPTRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall csptrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall csptrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall CSPTRI( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       const MKL_INT* ipiv, MKL_Complex8* work, MKL_INT* info );
void __stdcall CSPTRI_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        const MKL_INT* ipiv, MKL_Complex8* work, MKL_INT* info );
void __stdcall csptri( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                       const MKL_INT* ipiv, MKL_Complex8* work, MKL_INT* info );
void __stdcall csptri_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* ap,
                        const MKL_INT* ipiv, MKL_Complex8* work, MKL_INT* info );

void __stdcall CSPTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* ap, const MKL_INT* ipiv, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall CSPTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* ap, const MKL_INT* ipiv, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall csptrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* ap, const MKL_INT* ipiv, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall csptrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* ap, const MKL_INT* ipiv, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall CSRSCL( const MKL_INT* n, const float* sa, MKL_Complex8* sx,
                       const MKL_INT* incx );
void __stdcall CSRSCL_( const MKL_INT* n, const float* sa, MKL_Complex8* sx,
                        const MKL_INT* incx );
void __stdcall csrscl( const MKL_INT* n, const float* sa, MKL_Complex8* sx,
                       const MKL_INT* incx );
void __stdcall csrscl_( const MKL_INT* n, const float* sa, MKL_Complex8* sx,
                        const MKL_INT* incx );

void __stdcall CSTEDC( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall CSTEDC_( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall cstedc( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                       const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall cstedc_( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_Complex8* work,
                        const MKL_INT* lwork, float* rwork, const MKL_INT* lrwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall CSTEGR( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                       float* e, const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall CSTEGR_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                        float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_INT* isuppz,
                        float* work, const MKL_INT* lwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* info );
void __stdcall cstegr( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                       float* e, const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       MKL_Complex8* z, const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall cstegr_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                        float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        MKL_Complex8* z, const MKL_INT* ldz, MKL_INT* isuppz,
                        float* work, const MKL_INT* lwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* info );

void __stdcall CSTEIN( const MKL_INT* n, const float* d, const float* e,
                       const MKL_INT* m, const float* w, const MKL_INT* iblock,
                       const MKL_INT* isplit, MKL_Complex8* z, const MKL_INT* ldz,
                       float* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall CSTEIN_( const MKL_INT* n, const float* d, const float* e,
                        const MKL_INT* m, const float* w, const MKL_INT* iblock,
                        const MKL_INT* isplit, MKL_Complex8* z, const MKL_INT* ldz,
                        float* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall cstein( const MKL_INT* n, const float* d, const float* e,
                       const MKL_INT* m, const float* w, const MKL_INT* iblock,
                       const MKL_INT* isplit, MKL_Complex8* z, const MKL_INT* ldz,
                       float* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall cstein_( const MKL_INT* n, const float* d, const float* e,
                        const MKL_INT* m, const float* w, const MKL_INT* iblock,
                        const MKL_INT* isplit, MKL_Complex8* z, const MKL_INT* ldz,
                        float* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall CSTEMR( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                       float* e, const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, MKL_INT* m, float* w, MKL_Complex8* z,
                       const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                       MKL_INT* tryrac, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall CSTEMR_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                        float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, MKL_INT* m, float* w, MKL_Complex8* z,
                        const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                        MKL_INT* tryrac, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall cstemr( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                       float* e, const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, MKL_INT* m, float* w, MKL_Complex8* z,
                       const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                       MKL_INT* tryrac, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall cstemr_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                        float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, MKL_INT* m, float* w, MKL_Complex8* z,
                        const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                        MKL_INT* tryrac, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall CSTEQR( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                       MKL_Complex8* z, const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall CSTEQR_( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                        MKL_Complex8* z, const MKL_INT* ldz, float* work,
                        MKL_INT* info );
void __stdcall csteqr( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                       MKL_Complex8* z, const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall csteqr_( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                        MKL_Complex8* z, const MKL_INT* ldz, float* work,
                        MKL_INT* info );

void __stdcall CSYCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                       float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall CSYCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                        float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall csycon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                       float* rcond, MKL_Complex8* work, MKL_INT* info );
void __stdcall csycon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                        float* rcond, MKL_Complex8* work, MKL_INT* info );

void __stdcall CSYEQUB( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, float* s, float* scond, float* amax,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall CSYEQUB_( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                         const MKL_INT* lda, float* s, float* scond, float* amax,
                         MKL_Complex8* work, MKL_INT* info );
void __stdcall csyequb( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, float* s, float* scond, float* amax,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall csyequb_( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                         const MKL_INT* lda, float* s, float* scond, float* amax,
                         MKL_Complex8* work, MKL_INT* info );

void __stdcall CSYMV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                      const MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* x,
                      const MKL_INT* incx, const MKL_Complex8* beta, MKL_Complex8* y,
                      const MKL_INT* incy );
void __stdcall CSYMV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* x,
                       const MKL_INT* incx, const MKL_Complex8* beta, MKL_Complex8* y,
                       const MKL_INT* incy );
void __stdcall csymv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                      const MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* x,
                      const MKL_INT* incx, const MKL_Complex8* beta, MKL_Complex8* y,
                      const MKL_INT* incy );
void __stdcall csymv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* x,
                       const MKL_INT* incx, const MKL_Complex8* beta, MKL_Complex8* y,
                       const MKL_INT* incy );

void __stdcall CSYR( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                     const MKL_Complex8* x, const MKL_INT* incx, MKL_Complex8* a,
                     const MKL_INT* lda );
void __stdcall CSYR_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                      const MKL_Complex8* x, const MKL_INT* incx, MKL_Complex8* a,
                      const MKL_INT* lda );
void __stdcall csyr( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                     const MKL_Complex8* x, const MKL_INT* incx, MKL_Complex8* a,
                     const MKL_INT* lda );
void __stdcall csyr_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* alpha,
                      const MKL_Complex8* x, const MKL_INT* incx, MKL_Complex8* a,
                      const MKL_INT* lda );

void __stdcall CSYRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                       float* ferr, float* berr, MKL_Complex8* work, float* rwork,
                       MKL_INT* info );
void __stdcall CSYRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall csyrfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                       float* ferr, float* berr, MKL_Complex8* work, float* rwork,
                       MKL_INT* info );
void __stdcall csyrfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );

void __stdcall CSYRFSX( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const float* s, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CSYRFSX_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* af, const MKL_INT* ldaf,
                         const MKL_INT* ipiv, const float* s, const MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                         float* rcond, float* berr, const MKL_INT* n_err_bnds,
                         float* err_bnds_norm, float* err_bnds_comp,
                         const MKL_INT* nparams, float* params, MKL_Complex8* work,
                         float* rwork, MKL_INT* info );
void __stdcall csyrfsx( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const float* s, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall csyrfsx_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_Complex8* af, const MKL_INT* ldaf,
                         const MKL_INT* ipiv, const float* s, const MKL_Complex8* b,
                         const MKL_INT* ldb, MKL_Complex8* x, const MKL_INT* ldx,
                         float* rcond, float* berr, const MKL_INT* n_err_bnds,
                         float* err_bnds_norm, float* err_bnds_comp,
                         const MKL_INT* nparams, float* params, MKL_Complex8* work,
                         float* rwork, MKL_INT* info );

void __stdcall CSYSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                      MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall CSYSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall csysv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                      MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall csysv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall CSYSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* info );
void __stdcall CSYSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* info );
void __stdcall csysvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                       MKL_INT* info );
void __stdcall csysvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        MKL_Complex8* work, const MKL_INT* lwork, float* rwork,
                        MKL_INT* info );

void __stdcall CSYSVXX( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* rpvgrw,
                        float* berr, const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CSYSVXX_( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                         MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                         char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                         MKL_Complex8* x, const MKL_INT* ldx, float* rcond,
                         float* rpvgrw, float* berr, const MKL_INT* n_err_bnds,
                         float* err_bnds_norm, float* err_bnds_comp,
                         const MKL_INT* nparams, float* params, MKL_Complex8* work,
                         float* rwork, MKL_INT* info );
void __stdcall csysvxx( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* x, const MKL_INT* ldx, float* rcond, float* rpvgrw,
                        float* berr, const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall csysvxx_( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex8* a, const MKL_INT* lda,
                         MKL_Complex8* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                         char* equed, int equed_len, float* s, MKL_Complex8* b, const MKL_INT* ldb,
                         MKL_Complex8* x, const MKL_INT* ldx, float* rcond,
                         float* rpvgrw, float* berr, const MKL_INT* n_err_bnds,
                         float* err_bnds_norm, float* err_bnds_comp,
                         const MKL_INT* nparams, float* params, MKL_Complex8* work,
                         float* rwork, MKL_INT* info );

void __stdcall CSYTF2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall CSYTF2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall csytf2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall csytf2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall CSYTRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall CSYTRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall csytrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall csytrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall CSYTRI( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall CSYTRI_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                        MKL_INT* info );
void __stdcall csytri( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall csytri_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex8* work,
                        MKL_INT* info );

void __stdcall CSYTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall CSYTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall csytrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall csytrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall CTBCON( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_Complex8* ab,
                       const MKL_INT* ldab, float* rcond, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall CTBCON_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_Complex8* ab,
                        const MKL_INT* ldab, float* rcond, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall ctbcon( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_Complex8* ab,
                       const MKL_INT* ldab, float* rcond, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall ctbcon_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_Complex8* ab,
                        const MKL_INT* ldab, float* rcond, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );

void __stdcall CTBRFS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const MKL_Complex8* ab, const MKL_INT* ldab,
                       const MKL_Complex8* b, const MKL_INT* ldb, const MKL_Complex8* x,
                       const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall CTBRFS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const MKL_Complex8* ab, const MKL_INT* ldab,
                        const MKL_Complex8* b, const MKL_INT* ldb, const MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall ctbrfs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const MKL_Complex8* ab, const MKL_INT* ldab,
                       const MKL_Complex8* b, const MKL_INT* ldb, const MKL_Complex8* x,
                       const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall ctbrfs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const MKL_Complex8* ab, const MKL_INT* ldab,
                        const MKL_Complex8* b, const MKL_INT* ldb, const MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );

void __stdcall CTBTRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall CTBTRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall ctbtrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ctbtrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const MKL_Complex8* ab, const MKL_INT* ldab, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall CTFSM( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                      const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                      const MKL_INT* n, const MKL_Complex8* alpha, const MKL_Complex8* a,
                      MKL_Complex8* b, const MKL_INT* ldb );
void __stdcall CTFSM_( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                       const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_Complex8* alpha,
                       const MKL_Complex8* a, MKL_Complex8* b, const MKL_INT* ldb );
void __stdcall ctfsm( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                      const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                      const MKL_INT* n, const MKL_Complex8* alpha, const MKL_Complex8* a,
                      MKL_Complex8* b, const MKL_INT* ldb );
void __stdcall ctfsm_( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                       const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_Complex8* alpha,
                       const MKL_Complex8* a, MKL_Complex8* b, const MKL_INT* ldb );

void __stdcall CTFTRI( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, MKL_Complex8* a, MKL_INT* info );
void __stdcall CTFTRI_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, MKL_Complex8* a, MKL_INT* info );
void __stdcall ctftri( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, MKL_Complex8* a, MKL_INT* info );
void __stdcall ctftri_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, MKL_Complex8* a, MKL_INT* info );

void __stdcall CTFTTP( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex8* arf, MKL_Complex8* ap, MKL_INT* info );
void __stdcall CTFTTP_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* arf, MKL_Complex8* ap, MKL_INT* info );
void __stdcall ctfttp( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex8* arf, MKL_Complex8* ap, MKL_INT* info );
void __stdcall ctfttp_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* arf, MKL_Complex8* ap, MKL_INT* info );

void __stdcall CTFTTR( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex8* arf, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall CTFTTR_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* arf, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_INT* info );
void __stdcall ctfttr( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex8* arf, MKL_Complex8* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall ctfttr_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* arf, MKL_Complex8* a, const MKL_INT* lda,
                        MKL_INT* info );

void __stdcall CTGEVC( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const MKL_Complex8* s, const MKL_INT* lds,
                       const MKL_Complex8* p, const MKL_INT* ldp, MKL_Complex8* vl,
                       const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work, float* rwork,
                       MKL_INT* info );
void __stdcall CTGEVC_( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const MKL_Complex8* s, const MKL_INT* lds,
                        const MKL_Complex8* p, const MKL_INT* ldp, MKL_Complex8* vl,
                        const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work, float* rwork,
                        MKL_INT* info );
void __stdcall ctgevc( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const MKL_Complex8* s, const MKL_INT* lds,
                       const MKL_Complex8* p, const MKL_INT* ldp, MKL_Complex8* vl,
                       const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work, float* rwork,
                       MKL_INT* info );
void __stdcall ctgevc_( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const MKL_Complex8* s, const MKL_INT* lds,
                        const MKL_Complex8* p, const MKL_INT* ldp, MKL_Complex8* vl,
                        const MKL_INT* ldvl, MKL_Complex8* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work, float* rwork,
                        MKL_INT* info );

void __stdcall CTGEX2( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* q, const MKL_INT* ldq,
                       MKL_Complex8* z, const MKL_INT* ldz, const MKL_INT* j1,
                       MKL_INT* info );
void __stdcall CTGEX2_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_Complex8* z, const MKL_INT* ldz, const MKL_INT* j1,
                        MKL_INT* info );
void __stdcall ctgex2( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* q, const MKL_INT* ldq,
                       MKL_Complex8* z, const MKL_INT* ldz, const MKL_INT* j1,
                       MKL_INT* info );
void __stdcall ctgex2_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_Complex8* z, const MKL_INT* ldz, const MKL_INT* j1,
                        MKL_INT* info );

void __stdcall CTGEXC( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* q, const MKL_INT* ldq,
                       MKL_Complex8* z, const MKL_INT* ldz, const MKL_INT* ifst,
                       MKL_INT* ilst, MKL_INT* info );
void __stdcall CTGEXC_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_Complex8* z, const MKL_INT* ldz, const MKL_INT* ifst,
                        MKL_INT* ilst, MKL_INT* info );
void __stdcall ctgexc( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* q, const MKL_INT* ldq,
                       MKL_Complex8* z, const MKL_INT* ldz, const MKL_INT* ifst,
                       MKL_INT* ilst, MKL_INT* info );
void __stdcall ctgexc_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_Complex8* z, const MKL_INT* ldz, const MKL_INT* ifst,
                        MKL_INT* ilst, MKL_INT* info );

void __stdcall CTGSEN( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                       const MKL_INT* select, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* q,
                       const MKL_INT* ldq, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_INT* m, float* pl, float* pr, float* dif, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall CTGSEN_( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                        const MKL_INT* select, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* q,
                        const MKL_INT* ldq, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_INT* m, float* pl, float* pr, float* dif, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall ctgsen( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                       const MKL_INT* select, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* q,
                       const MKL_INT* ldq, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_INT* m, float* pl, float* pr, float* dif, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall ctgsen_( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                        const MKL_INT* select, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* alpha, MKL_Complex8* beta, MKL_Complex8* q,
                        const MKL_INT* ldq, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_INT* m, float* pl, float* pr, float* dif, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall CTGSJA( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       const float* tola, const float* tolb, float* alpha, float* beta,
                       MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* v,
                       const MKL_INT* ldv, MKL_Complex8* q, const MKL_INT* ldq,
                       MKL_Complex8* work, MKL_INT* ncycle, MKL_INT* info );
void __stdcall CTGSJA_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        const float* tola, const float* tolb, float* alpha, float* beta,
                        MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* v,
                        const MKL_INT* ldv, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_Complex8* work, MKL_INT* ncycle, MKL_INT* info );
void __stdcall ctgsja( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       const float* tola, const float* tolb, float* alpha, float* beta,
                       MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* v,
                       const MKL_INT* ldv, MKL_Complex8* q, const MKL_INT* ldq,
                       MKL_Complex8* work, MKL_INT* ncycle, MKL_INT* info );
void __stdcall ctgsja_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        const float* tola, const float* tolb, float* alpha, float* beta,
                        MKL_Complex8* u, const MKL_INT* ldu, MKL_Complex8* v,
                        const MKL_INT* ldv, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_Complex8* work, MKL_INT* ncycle, MKL_INT* info );

void __stdcall CTGSNA( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* b, const MKL_INT* ldb, const MKL_Complex8* vl,
                       const MKL_INT* ldvl, const MKL_Complex8* vr, const MKL_INT* ldvr,
                       float* s, float* dif, const MKL_INT* mm, MKL_INT* m,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall CTGSNA_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* b, const MKL_INT* ldb,
                        const MKL_Complex8* vl, const MKL_INT* ldvl,
                        const MKL_Complex8* vr, const MKL_INT* ldvr, float* s,
                        float* dif, const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall ctgsna( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* b, const MKL_INT* ldb, const MKL_Complex8* vl,
                       const MKL_INT* ldvl, const MKL_Complex8* vr, const MKL_INT* ldvr,
                       float* s, float* dif, const MKL_INT* mm, MKL_INT* m,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall ctgsna_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* b, const MKL_INT* ldb,
                        const MKL_Complex8* vl, const MKL_INT* ldvl,
                        const MKL_Complex8* vr, const MKL_INT* ldvr, float* s,
                        float* dif, const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall CTGSY2( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* c,
                       const MKL_INT* ldc, const MKL_Complex8* d, const MKL_INT* ldd,
                       const MKL_Complex8* e, const MKL_INT* lde, MKL_Complex8* f,
                       const MKL_INT* ldf, float* scale, float* rdsum, float* rdscal,
                       MKL_INT* info );
void __stdcall CTGSY2_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* c,
                        const MKL_INT* ldc, const MKL_Complex8* d, const MKL_INT* ldd,
                        const MKL_Complex8* e, const MKL_INT* lde, MKL_Complex8* f,
                        const MKL_INT* ldf, float* scale, float* rdsum, float* rdscal,
                        MKL_INT* info );
void __stdcall ctgsy2( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* c,
                       const MKL_INT* ldc, const MKL_Complex8* d, const MKL_INT* ldd,
                       const MKL_Complex8* e, const MKL_INT* lde, MKL_Complex8* f,
                       const MKL_INT* ldf, float* scale, float* rdsum, float* rdscal,
                       MKL_INT* info );
void __stdcall ctgsy2_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* c,
                        const MKL_INT* ldc, const MKL_Complex8* d, const MKL_INT* ldd,
                        const MKL_Complex8* e, const MKL_INT* lde, MKL_Complex8* f,
                        const MKL_INT* ldf, float* scale, float* rdsum, float* rdscal,
                        MKL_INT* info );

void __stdcall CTGSYL( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* c,
                       const MKL_INT* ldc, const MKL_Complex8* d, const MKL_INT* ldd,
                       const MKL_Complex8* e, const MKL_INT* lde, MKL_Complex8* f,
                       const MKL_INT* ldf, float* scale, float* dif, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall CTGSYL_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* c,
                        const MKL_INT* ldc, const MKL_Complex8* d, const MKL_INT* ldd,
                        const MKL_Complex8* e, const MKL_INT* lde, MKL_Complex8* f,
                        const MKL_INT* ldf, float* scale, float* dif, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall ctgsyl( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* c,
                       const MKL_INT* ldc, const MKL_Complex8* d, const MKL_INT* ldd,
                       const MKL_Complex8* e, const MKL_INT* lde, MKL_Complex8* f,
                       const MKL_INT* ldf, float* scale, float* dif, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall ctgsyl_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* b, const MKL_INT* ldb, MKL_Complex8* c,
                        const MKL_INT* ldc, const MKL_Complex8* d, const MKL_INT* ldd,
                        const MKL_Complex8* e, const MKL_INT* lde, MKL_Complex8* f,
                        const MKL_INT* ldf, float* scale, float* dif, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall CTPCON( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_Complex8* ap, float* rcond,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CTPCON_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_Complex8* ap, float* rcond,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall ctpcon( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_Complex8* ap, float* rcond,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall ctpcon_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_Complex8* ap, float* rcond,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CTPRFS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* ap,
                       const MKL_Complex8* b, const MKL_INT* ldb, const MKL_Complex8* x,
                       const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall CTPRFS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* ap,
                        const MKL_Complex8* b, const MKL_INT* ldb, const MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );
void __stdcall ctprfs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* ap,
                       const MKL_Complex8* b, const MKL_INT* ldb, const MKL_Complex8* x,
                       const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                       float* rwork, MKL_INT* info );
void __stdcall ctprfs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* ap,
                        const MKL_Complex8* b, const MKL_INT* ldb, const MKL_Complex8* x,
                        const MKL_INT* ldx, float* ferr, float* berr, MKL_Complex8* work,
                        float* rwork, MKL_INT* info );

void __stdcall CTPTRI( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                       MKL_Complex8* ap, MKL_INT* info );
void __stdcall CTPTRI_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                        MKL_Complex8* ap, MKL_INT* info );
void __stdcall ctptri( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                       MKL_Complex8* ap, MKL_INT* info );
void __stdcall ctptri_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                        MKL_Complex8* ap, MKL_INT* info );

void __stdcall CTPTRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* ap,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall CTPTRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* ap,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ctptrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* ap,
                       MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ctptrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* ap,
                        MKL_Complex8* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall CTPTTF( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex8* ap, MKL_Complex8* arf, MKL_INT* info );
void __stdcall CTPTTF_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* ap, MKL_Complex8* arf, MKL_INT* info );
void __stdcall ctpttf( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex8* ap, MKL_Complex8* arf, MKL_INT* info );
void __stdcall ctpttf_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* ap, MKL_Complex8* arf, MKL_INT* info );

void __stdcall CTPTTR( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall CTPTTR_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ctpttr( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ctpttr_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall CTRCON( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                       float* rcond, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CTRCON_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        float* rcond, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall ctrcon( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                       float* rcond, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall ctrcon_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_Complex8* a, const MKL_INT* lda,
                        float* rcond, MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CTREVC( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, MKL_Complex8* t, const MKL_INT* ldt,
                       MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                       const MKL_INT* ldvr, const MKL_INT* mm, MKL_INT* m,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CTREVC_( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                        const MKL_INT* ldvr, const MKL_INT* mm, MKL_INT* m,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall ctrevc( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, MKL_Complex8* t, const MKL_INT* ldt,
                       MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                       const MKL_INT* ldvr, const MKL_INT* mm, MKL_INT* m,
                       MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall ctrevc_( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* vl, const MKL_INT* ldvl, MKL_Complex8* vr,
                        const MKL_INT* ldvr, const MKL_INT* mm, MKL_INT* m,
                        MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CTREXC( const char* compq, int compq_len, const MKL_INT* n, MKL_Complex8* t,
                       const MKL_INT* ldt, MKL_Complex8* q, const MKL_INT* ldq,
                       const MKL_INT* ifst, const MKL_INT* ilst, MKL_INT* info );
void __stdcall CTREXC_( const char* compq, int compq_len, const MKL_INT* n, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_Complex8* q, const MKL_INT* ldq,
                        const MKL_INT* ifst, const MKL_INT* ilst, MKL_INT* info );
void __stdcall ctrexc( const char* compq, int compq_len, const MKL_INT* n, MKL_Complex8* t,
                       const MKL_INT* ldt, MKL_Complex8* q, const MKL_INT* ldq,
                       const MKL_INT* ifst, const MKL_INT* ilst, MKL_INT* info );
void __stdcall ctrexc_( const char* compq, int compq_len, const MKL_INT* n, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_Complex8* q, const MKL_INT* ldq,
                        const MKL_INT* ifst, const MKL_INT* ilst, MKL_INT* info );

void __stdcall CTRRFS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* b, const MKL_INT* ldb,
                       const MKL_Complex8* x, const MKL_INT* ldx, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall CTRRFS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* b, const MKL_INT* ldb,
                        const MKL_Complex8* x, const MKL_INT* ldx, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall ctrrfs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* b, const MKL_INT* ldb,
                       const MKL_Complex8* x, const MKL_INT* ldx, float* ferr,
                       float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );
void __stdcall ctrrfs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* b, const MKL_INT* ldb,
                        const MKL_Complex8* x, const MKL_INT* ldx, float* ferr,
                        float* berr, MKL_Complex8* work, float* rwork, MKL_INT* info );

void __stdcall CTRSEN( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                       const MKL_INT* n, MKL_Complex8* t, const MKL_INT* ldt,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* w, MKL_INT* m,
                       float* s, float* sep, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CTRSEN_( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                        const MKL_INT* n, MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* w, MKL_INT* m,
                        float* s, float* sep, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall ctrsen( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                       const MKL_INT* n, MKL_Complex8* t, const MKL_INT* ldt,
                       MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* w, MKL_INT* m,
                       float* s, float* sep, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ctrsen_( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                        const MKL_INT* n, MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* q, const MKL_INT* ldq, MKL_Complex8* w, MKL_INT* m,
                        float* s, float* sep, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CTRSNA( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const MKL_Complex8* t, const MKL_INT* ldt,
                       const MKL_Complex8* vl, const MKL_INT* ldvl,
                       const MKL_Complex8* vr, const MKL_INT* ldvr, float* s, float* sep,
                       const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work,
                       const MKL_INT* ldwork, float* rwork, MKL_INT* info );
void __stdcall CTRSNA_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const MKL_Complex8* t, const MKL_INT* ldt,
                        const MKL_Complex8* vl, const MKL_INT* ldvl,
                        const MKL_Complex8* vr, const MKL_INT* ldvr, float* s,
                        float* sep, const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work,
                        const MKL_INT* ldwork, float* rwork, MKL_INT* info );
void __stdcall ctrsna( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const MKL_Complex8* t, const MKL_INT* ldt,
                       const MKL_Complex8* vl, const MKL_INT* ldvl,
                       const MKL_Complex8* vr, const MKL_INT* ldvr, float* s, float* sep,
                       const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work,
                       const MKL_INT* ldwork, float* rwork, MKL_INT* info );
void __stdcall ctrsna_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const MKL_Complex8* t, const MKL_INT* ldt,
                        const MKL_Complex8* vl, const MKL_INT* ldvl,
                        const MKL_Complex8* vr, const MKL_INT* ldvr, float* s,
                        float* sep, const MKL_INT* mm, MKL_INT* m, MKL_Complex8* work,
                        const MKL_INT* ldwork, float* rwork, MKL_INT* info );

void __stdcall CTRSYL( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                       const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* c, const MKL_INT* ldc, float* scale,
                       MKL_INT* info );
void __stdcall CTRSYL_( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* c, const MKL_INT* ldc, float* scale,
                        MKL_INT* info );
void __stdcall ctrsyl( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                       const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_Complex8* c, const MKL_INT* ldc, float* scale,
                       MKL_INT* info );
void __stdcall ctrsyl_( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_Complex8* c, const MKL_INT* ldc, float* scale,
                        MKL_INT* info );

void __stdcall CTRTI2( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall CTRTI2_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ctrti2( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ctrti2_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall CTRTRI( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall CTRTRI_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ctrtri( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ctrtri_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall CTRTRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall CTRTRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall ctrtrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall ctrtrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_INT* info );

void __stdcall CTRTTF( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* arf,
                       MKL_INT* info );
void __stdcall CTRTTF_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* arf,
                        MKL_INT* info );
void __stdcall ctrttf( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* arf,
                       MKL_INT* info );
void __stdcall ctrttf_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* arf,
                        MKL_INT* info );

void __stdcall CTRTTP( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* ap, MKL_INT* info );
void __stdcall CTRTTP_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* ap, MKL_INT* info );
void __stdcall ctrttp( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* ap, MKL_INT* info );
void __stdcall ctrttp_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* ap, MKL_INT* info );

void __stdcall CTZRQF( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_INT* info );
void __stdcall CTZRQF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_INT* info );
void __stdcall ctzrqf( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_INT* info );
void __stdcall ctzrqf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_INT* info );

void __stdcall CTZRZF( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall CTZRZF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ctzrzf( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ctzrzf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNG2L( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CUNG2L_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall cung2l( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall cung2l_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall CUNG2R( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CUNG2R_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall cung2r( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall cung2r_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall CUNGBR( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* tau, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CUNGBR_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall cungbr( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* tau, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall cungbr_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNGHR( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNGHR_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunghr( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunghr_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNGL2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CUNGL2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall cungl2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall cungl2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall CUNGLQ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNGLQ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunglq( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunglq_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNGQL( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNGQL_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cungql( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cungql_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNGQR( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNGQR_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cungqr( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cungqr_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNGR2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CUNGR2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall cungr2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall cungr2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall CUNGRQ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNGRQ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cungrq( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cungrq_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex8* a, const MKL_INT* lda, const MKL_Complex8* tau,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNGTR( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNGTR_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall cungtr( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall cungtr_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNM2L( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );
void __stdcall CUNM2L_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );
void __stdcall cunm2l( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );
void __stdcall cunm2l_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );

void __stdcall CUNM2R( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );
void __stdcall CUNM2R_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );
void __stdcall cunm2r( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );
void __stdcall cunm2r_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );

void __stdcall CUNMBR( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNMBR_( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunmbr( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunmbr_( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNMHR( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNMHR_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunmhr( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunmhr_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNML2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );
void __stdcall CUNML2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );
void __stdcall cunml2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );
void __stdcall cunml2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );

void __stdcall CUNMLQ( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CUNMLQ_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall cunmlq( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall cunmlq_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CUNMQL( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CUNMQL_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall cunmql( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall cunmql_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CUNMQR( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CUNMQR_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall cunmqr( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall cunmqr_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CUNMR2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );
void __stdcall CUNMR2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );
void __stdcall cunmr2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );
void __stdcall cunmr2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, MKL_INT* info );

void __stdcall CUNMR3( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CUNMR3_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall cunmr3( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall cunmr3_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall CUNMRQ( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CUNMRQ_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall cunmrq( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall cunmrq_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CUNMRZ( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CUNMRZ_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunmrz( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cunmrz_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall CUNMTR( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall CUNMTR_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall cunmtr( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                       const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall cunmtr_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                        const MKL_INT* lda, const MKL_Complex8* tau, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall CUPGTR( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                       const MKL_Complex8* tau, MKL_Complex8* q, const MKL_INT* ldq,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CUPGTR_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                        const MKL_Complex8* tau, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall cupgtr( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                       const MKL_Complex8* tau, MKL_Complex8* q, const MKL_INT* ldq,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall cupgtr_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex8* ap,
                        const MKL_Complex8* tau, MKL_Complex8* q, const MKL_INT* ldq,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall CUPMTR( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* ap,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CUPMTR_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* ap,
                        const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall cupmtr( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* ap,
                       const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall cupmtr_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* ap,
                        const MKL_Complex8* tau, MKL_Complex8* c, const MKL_INT* ldc,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall DBDSDC( const char* uplo, int uplo_len, const char* compq, int compq_len, const MKL_INT* n, double* d,
                       double* e, double* u, const MKL_INT* ldu, double* vt,
                       const MKL_INT* ldvt, double* q, MKL_INT* iq, double* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall DBDSDC_( const char* uplo, int uplo_len, const char* compq, int compq_len, const MKL_INT* n, double* d,
                        double* e, double* u, const MKL_INT* ldu, double* vt,
                        const MKL_INT* ldvt, double* q, MKL_INT* iq, double* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall dbdsdc( const char* uplo, int uplo_len, const char* compq, int compq_len, const MKL_INT* n, double* d,
                       double* e, double* u, const MKL_INT* ldu, double* vt,
                       const MKL_INT* ldvt, double* q, MKL_INT* iq, double* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall dbdsdc_( const char* uplo, int uplo_len, const char* compq, int compq_len, const MKL_INT* n, double* d,
                        double* e, double* u, const MKL_INT* ldu, double* vt,
                        const MKL_INT* ldvt, double* q, MKL_INT* iq, double* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall DBDSQR( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                       const MKL_INT* nru, const MKL_INT* ncc, double* d, double* e,
                       double* vt, const MKL_INT* ldvt, double* u, const MKL_INT* ldu,
                       double* c, const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall DBDSQR_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                        const MKL_INT* nru, const MKL_INT* ncc, double* d, double* e,
                        double* vt, const MKL_INT* ldvt, double* u, const MKL_INT* ldu,
                        double* c, const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dbdsqr( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                       const MKL_INT* nru, const MKL_INT* ncc, double* d, double* e,
                       double* vt, const MKL_INT* ldvt, double* u, const MKL_INT* ldu,
                       double* c, const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dbdsqr_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                        const MKL_INT* nru, const MKL_INT* ncc, double* d, double* e,
                        double* vt, const MKL_INT* ldvt, double* u, const MKL_INT* ldu,
                        double* c, const MKL_INT* ldc, double* work, MKL_INT* info );

void __stdcall DDISNA( const char* job, int job_len, const MKL_INT* m, const MKL_INT* n,
                       const double* d, double* sep, MKL_INT* info );
void __stdcall DDISNA_( const char* job, int job_len, const MKL_INT* m, const MKL_INT* n,
                        const double* d, double* sep, MKL_INT* info );
void __stdcall ddisna( const char* job, int job_len, const MKL_INT* m, const MKL_INT* n,
                       const double* d, double* sep, MKL_INT* info );
void __stdcall ddisna_( const char* job, int job_len, const MKL_INT* m, const MKL_INT* n,
                        const double* d, double* sep, MKL_INT* info );

void __stdcall DGBBRD( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                       double* ab, const MKL_INT* ldab, double* d, double* e, double* q,
                       const MKL_INT* ldq, double* pt, const MKL_INT* ldpt, double* c,
                       const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall DGBBRD_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                        double* ab, const MKL_INT* ldab, double* d, double* e, double* q,
                        const MKL_INT* ldq, double* pt, const MKL_INT* ldpt, double* c,
                        const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dgbbrd( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                       double* ab, const MKL_INT* ldab, double* d, double* e, double* q,
                       const MKL_INT* ldq, double* pt, const MKL_INT* ldpt, double* c,
                       const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dgbbrd_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                        double* ab, const MKL_INT* ldab, double* d, double* e, double* q,
                        const MKL_INT* ldq, double* pt, const MKL_INT* ldpt, double* c,
                        const MKL_INT* ldc, double* work, MKL_INT* info );

void __stdcall DGBCON( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                       const MKL_INT* ipiv, const double* anorm, double* rcond,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGBCON_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                        const MKL_INT* ipiv, const double* anorm, double* rcond,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgbcon( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                       const MKL_INT* ipiv, const double* anorm, double* rcond,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgbcon_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                        const MKL_INT* ipiv, const double* anorm, double* rcond,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGBEQUB( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                        double* r, double* c, double* rowcnd, double* colcnd,
                        double* amax, MKL_INT* info );
void __stdcall DGBEQUB_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                         double* r, double* c, double* rowcnd, double* colcnd,
                         double* amax, MKL_INT* info );
void __stdcall dgbequb( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                        double* r, double* c, double* rowcnd, double* colcnd,
                        double* amax, MKL_INT* info );
void __stdcall dgbequb_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                         double* r, double* c, double* rowcnd, double* colcnd,
                         double* amax, MKL_INT* info );

void __stdcall DGBEQU( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                       double* r, double* c, double* rowcnd, double* colcnd,
                       double* amax, MKL_INT* info );
void __stdcall DGBEQU_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                        double* r, double* c, double* rowcnd, double* colcnd,
                        double* amax, MKL_INT* info );
void __stdcall dgbequ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                       double* r, double* c, double* rowcnd, double* colcnd,
                       double* amax, MKL_INT* info );
void __stdcall dgbequ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                        double* r, double* c, double* rowcnd, double* colcnd,
                        double* amax, MKL_INT* info );

void __stdcall DGBRFS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const double* ab,
                       const MKL_INT* ldab, const double* afb, const MKL_INT* ldafb,
                       const MKL_INT* ipiv, const double* b, const MKL_INT* ldb,
                       double* x, const MKL_INT* ldx, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGBRFS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const double* ab,
                        const MKL_INT* ldab, const double* afb, const MKL_INT* ldafb,
                        const MKL_INT* ipiv, const double* b, const MKL_INT* ldb,
                        double* x, const MKL_INT* ldx, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgbrfs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const double* ab,
                       const MKL_INT* ldab, const double* afb, const MKL_INT* ldafb,
                       const MKL_INT* ipiv, const double* b, const MKL_INT* ldb,
                       double* x, const MKL_INT* ldx, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgbrfs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const double* ab,
                        const MKL_INT* ldab, const double* afb, const MKL_INT* ldafb,
                        const MKL_INT* ipiv, const double* b, const MKL_INT* ldb,
                        double* x, const MKL_INT* ldx, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGBRFSX( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        const double* ab, const MKL_INT* ldab, const double* afb,
                        const MKL_INT* ldafb, const MKL_INT* ipiv, const double* r,
                        const double* c, const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGBRFSX_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         const double* ab, const MKL_INT* ldab, const double* afb,
                         const MKL_INT* ldafb, const MKL_INT* ipiv, const double* r,
                         const double* c, const double* b, const MKL_INT* ldb, double* x,
                         const MKL_INT* ldx, double* rcond, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgbrfsx( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        const double* ab, const MKL_INT* ldab, const double* afb,
                        const MKL_INT* ldafb, const MKL_INT* ipiv, const double* r,
                        const double* c, const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgbrfsx_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         const double* ab, const MKL_INT* ldab, const double* afb,
                         const MKL_INT* ldafb, const MKL_INT* ipiv, const double* r,
                         const double* c, const double* b, const MKL_INT* ldb, double* x,
                         const MKL_INT* ldx, double* rcond, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGBSV( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                      const MKL_INT* nrhs, double* ab, const MKL_INT* ldab,
                      MKL_INT* ipiv, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DGBSV_( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                       const MKL_INT* nrhs, double* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dgbsv( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                      const MKL_INT* nrhs, double* ab, const MKL_INT* ldab,
                      MKL_INT* ipiv, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dgbsv_( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                       const MKL_INT* nrhs, double* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, double* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall DGBSVX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                       double* ab, const MKL_INT* ldab, double* afb,
                       const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                       double* c, double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGBSVX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        double* ab, const MKL_INT* ldab, double* afb,
                        const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                        double* c, double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgbsvx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                       double* ab, const MKL_INT* ldab, double* afb,
                       const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                       double* c, double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgbsvx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        double* ab, const MKL_INT* ldab, double* afb,
                        const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                        double* c, double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGBSVXX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        double* ab, const MKL_INT* ldab, double* afb,
                        const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                        double* c, double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* rpvgrw, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGBSVXX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         double* ab, const MKL_INT* ldab, double* afb,
                         const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                         double* c, double* b, const MKL_INT* ldb, double* x,
                         const MKL_INT* ldx, double* rcond, double* rpvgrw, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgbsvxx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        double* ab, const MKL_INT* ldab, double* afb,
                        const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                        double* c, double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* rpvgrw, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgbsvxx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         double* ab, const MKL_INT* ldab, double* afb,
                         const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                         double* c, double* b, const MKL_INT* ldb, double* x,
                         const MKL_INT* ldx, double* rcond, double* rpvgrw, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGBTF2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, double* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall DGBTF2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, double* ab, const MKL_INT* ldab,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall dgbtf2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, double* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall dgbtf2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, double* ab, const MKL_INT* ldab,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall DGBTRF( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, double* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall DGBTRF_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, double* ab, const MKL_INT* ldab,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall dgbtrf( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, double* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall dgbtrf_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, double* ab, const MKL_INT* ldab,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall DGBTRS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const double* ab,
                       const MKL_INT* ldab, const MKL_INT* ipiv, double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall DGBTRS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const double* ab,
                        const MKL_INT* ldab, const MKL_INT* ipiv, double* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall dgbtrs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const double* ab,
                       const MKL_INT* ldab, const MKL_INT* ipiv, double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall dgbtrs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const double* ab,
                        const MKL_INT* ldab, const MKL_INT* ipiv, double* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall DGEBAK( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const double* scale,
                       const MKL_INT* m, double* v, const MKL_INT* ldv, MKL_INT* info );
void __stdcall DGEBAK_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const double* scale,
                        const MKL_INT* m, double* v, const MKL_INT* ldv, MKL_INT* info );
void __stdcall dgebak( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const double* scale,
                       const MKL_INT* m, double* v, const MKL_INT* ldv, MKL_INT* info );
void __stdcall dgebak_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const double* scale,
                        const MKL_INT* m, double* v, const MKL_INT* ldv, MKL_INT* info );

void __stdcall DGEBAL( const char* job, int job_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* ilo, MKL_INT* ihi, double* scale, MKL_INT* info );
void __stdcall DGEBAL_( const char* job, int job_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                        MKL_INT* ilo, MKL_INT* ihi, double* scale, MKL_INT* info );
void __stdcall dgebal( const char* job, int job_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* ilo, MKL_INT* ihi, double* scale, MKL_INT* info );
void __stdcall dgebal_( const char* job, int job_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                        MKL_INT* ilo, MKL_INT* ihi, double* scale, MKL_INT* info );

void __stdcall DGEBD2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* d, double* e, double* tauq, double* taup, double* work,
                       MKL_INT* info );
void __stdcall DGEBD2_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* d, double* e, double* tauq,
                        double* taup, double* work, MKL_INT* info );
void __stdcall dgebd2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* d, double* e, double* tauq, double* taup, double* work,
                       MKL_INT* info );
void __stdcall dgebd2_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* d, double* e, double* tauq,
                        double* taup, double* work, MKL_INT* info );

void __stdcall DGEBRD( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* d, double* e, double* tauq, double* taup, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGEBRD_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* d, double* e, double* tauq,
                        double* taup, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dgebrd( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* d, double* e, double* tauq, double* taup, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgebrd_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* d, double* e, double* tauq,
                        double* taup, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DGECON( const char* norm, int norm_len, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const double* anorm, double* rcond,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGECON_( const char* norm, int norm_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const double* anorm, double* rcond,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgecon( const char* norm, int norm_len, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const double* anorm, double* rcond,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgecon_( const char* norm, int norm_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const double* anorm, double* rcond,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGEEQUB( const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, double* r, double* c, double* rowcnd,
                        double* colcnd, double* amax, MKL_INT* info );
void __stdcall DGEEQUB_( const MKL_INT* m, const MKL_INT* n, const double* a,
                         const MKL_INT* lda, double* r, double* c, double* rowcnd,
                         double* colcnd, double* amax, MKL_INT* info );
void __stdcall dgeequb( const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, double* r, double* c, double* rowcnd,
                        double* colcnd, double* amax, MKL_INT* info );
void __stdcall dgeequb_( const MKL_INT* m, const MKL_INT* n, const double* a,
                         const MKL_INT* lda, double* r, double* c, double* rowcnd,
                         double* colcnd, double* amax, MKL_INT* info );

void __stdcall DGEEQU( const MKL_INT* m, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, double* r, double* c, double* rowcnd,
                       double* colcnd, double* amax, MKL_INT* info );
void __stdcall DGEEQU_( const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, double* r, double* c, double* rowcnd,
                        double* colcnd, double* amax, MKL_INT* info );
void __stdcall dgeequ( const MKL_INT* m, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, double* r, double* c, double* rowcnd,
                       double* colcnd, double* amax, MKL_INT* info );
void __stdcall dgeequ_( const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, double* r, double* c, double* rowcnd,
                        double* colcnd, double* amax, MKL_INT* info );

void __stdcall DGEES( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                      MKL_D_SELECT_FUNCTION_2 select, const MKL_INT* n, double* a,
                      const MKL_INT* lda, MKL_INT* sdim, double* wr, double* wi,
                      double* vs, const MKL_INT* ldvs, double* work,
                      const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall DGEES_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_D_SELECT_FUNCTION_2 select, const MKL_INT* n, double* a,
                       const MKL_INT* lda, MKL_INT* sdim, double* wr, double* wi,
                       double* vs, const MKL_INT* ldvs, double* work,
                       const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall dgees( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                      MKL_D_SELECT_FUNCTION_2 select, const MKL_INT* n, double* a,
                      const MKL_INT* lda, MKL_INT* sdim, double* wr, double* wi,
                      double* vs, const MKL_INT* ldvs, double* work,
                      const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall dgees_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_D_SELECT_FUNCTION_2 select, const MKL_INT* n, double* a,
                       const MKL_INT* lda, MKL_INT* sdim, double* wr, double* wi,
                       double* vs, const MKL_INT* ldvs, double* work,
                       const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );

void __stdcall DGEESX( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_D_SELECT_FUNCTION_2 select, const char* sense, int sense_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, MKL_INT* sdim,
                       double* wr, double* wi, double* vs, const MKL_INT* ldvs,
                       double* rconde, double* rcondv, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* bwork, MKL_INT* info );
void __stdcall DGEESX_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                        MKL_D_SELECT_FUNCTION_2 select, const char* sense, int sense_len,
                        const MKL_INT* n, double* a, const MKL_INT* lda, MKL_INT* sdim,
                        double* wr, double* wi, double* vs, const MKL_INT* ldvs,
                        double* rconde, double* rcondv, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* bwork, MKL_INT* info );
void __stdcall dgeesx( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_D_SELECT_FUNCTION_2 select, const char* sense, int sense_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, MKL_INT* sdim,
                       double* wr, double* wi, double* vs, const MKL_INT* ldvs,
                       double* rconde, double* rcondv, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* bwork, MKL_INT* info );
void __stdcall dgeesx_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                        MKL_D_SELECT_FUNCTION_2 select, const char* sense, int sense_len,
                        const MKL_INT* n, double* a, const MKL_INT* lda, MKL_INT* sdim,
                        double* wr, double* wi, double* vs, const MKL_INT* ldvs,
                        double* rconde, double* rcondv, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* bwork, MKL_INT* info );

void __stdcall DGEEV( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* wr, double* wi, double* vl,
                      const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr, double* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGEEV_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* wr, double* wi, double* vl,
                       const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgeev( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* wr, double* wi, double* vl,
                      const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr, double* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgeev_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* wr, double* wi, double* vl,
                       const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                       double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGEEVX( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* wr, double* wi, double* vl,
                       const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                       MKL_INT* ilo, MKL_INT* ihi, double* scale, double* abnrm,
                       double* rconde, double* rcondv, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGEEVX_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* wr, double* wi, double* vl,
                        const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, double* scale, double* abnrm,
                        double* rconde, double* rcondv, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgeevx( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* wr, double* wi, double* vl,
                       const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                       MKL_INT* ilo, MKL_INT* ihi, double* scale, double* abnrm,
                       double* rconde, double* rcondv, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgeevx_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* wr, double* wi, double* vl,
                        const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, double* scale, double* abnrm,
                        double* rconde, double* rcondv, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGEGS( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                      double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                      double* alphar, double* alphai, double* beta, double* vsl,
                      const MKL_INT* ldvsl, double* vsr, const MKL_INT* ldvsr,
                      double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGEGS_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       double* alphar, double* alphai, double* beta, double* vsl,
                       const MKL_INT* ldvsl, double* vsr, const MKL_INT* ldvsr,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgegs( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                      double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                      double* alphar, double* alphai, double* beta, double* vsl,
                      const MKL_INT* ldvsl, double* vsr, const MKL_INT* ldvsr,
                      double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgegs_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       double* alphar, double* alphai, double* beta, double* vsl,
                       const MKL_INT* ldvsl, double* vsr, const MKL_INT* ldvsr,
                       double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGEGV( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* b, const MKL_INT* ldb, double* alphar,
                      double* alphai, double* beta, double* vl, const MKL_INT* ldvl,
                      double* vr, const MKL_INT* ldvr, double* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGEGV_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* alphar,
                       double* alphai, double* beta, double* vl, const MKL_INT* ldvl,
                       double* vr, const MKL_INT* ldvr, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgegv( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* b, const MKL_INT* ldb, double* alphar,
                      double* alphai, double* beta, double* vl, const MKL_INT* ldvl,
                      double* vr, const MKL_INT* ldvr, double* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgegv_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* alphar,
                       double* alphai, double* beta, double* vl, const MKL_INT* ldvl,
                       double* vr, const MKL_INT* ldvr, double* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGEHD2( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       double* a, const MKL_INT* lda, double* tau, double* work,
                       MKL_INT* info );
void __stdcall DGEHD2_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        double* a, const MKL_INT* lda, double* tau, double* work,
                        MKL_INT* info );
void __stdcall dgehd2( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       double* a, const MKL_INT* lda, double* tau, double* work,
                       MKL_INT* info );
void __stdcall dgehd2_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        double* a, const MKL_INT* lda, double* tau, double* work,
                        MKL_INT* info );

void __stdcall DGEHRD( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       double* a, const MKL_INT* lda, double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGEHRD_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        double* a, const MKL_INT* lda, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgehrd( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       double* a, const MKL_INT* lda, double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgehrd_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        double* a, const MKL_INT* lda, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGEJSV( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobr, int jobr_len, const char* jobt, int jobt_len,
                       const char* jobp, int jobp_len, const MKL_INT* m, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* sva, double* u, const MKL_INT* ldu,
                       double* v, const MKL_INT* ldv, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall DGEJSV_( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobr, int jobr_len, const char* jobt, int jobt_len,
                        const char* jobp, int jobp_len, const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* sva, double* u, const MKL_INT* ldu,
                        double* v, const MKL_INT* ldv, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgejsv( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobr, int jobr_len, const char* jobt, int jobt_len,
                       const char* jobp, int jobp_len, const MKL_INT* m, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* sva, double* u, const MKL_INT* ldu,
                       double* v, const MKL_INT* ldv, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall dgejsv_( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobr, int jobr_len, const char* jobt, int jobt_len,
                        const char* jobp, int jobp_len, const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* sva, double* u, const MKL_INT* ldu,
                        double* v, const MKL_INT* ldv, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGELQ2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, MKL_INT* info );
void __stdcall DGELQ2_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work, MKL_INT* info );
void __stdcall dgelq2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, MKL_INT* info );
void __stdcall dgelq2_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work, MKL_INT* info );

void __stdcall DGELQF( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGELQF_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgelqf( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgelqf_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGELSD( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, double* s, const double* rcond, MKL_INT* rank,
                       double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall DGELSD_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, double* s, const double* rcond,
                        MKL_INT* rank, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall dgelsd( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, double* s, const double* rcond, MKL_INT* rank,
                       double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall dgelsd_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, double* s, const double* rcond,
                        MKL_INT* rank, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall DGELS( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* b,
                      const MKL_INT* ldb, double* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall DGELS_( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dgels( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* b,
                      const MKL_INT* ldb, double* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall dgels_( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, double* work, const MKL_INT* lwork,
                       MKL_INT* info );

void __stdcall DGELSS( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       double* s, const double* rcond, MKL_INT* rank, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGELSS_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* s, const double* rcond, MKL_INT* rank, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgelss( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       double* s, const double* rcond, MKL_INT* rank, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgelss_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* s, const double* rcond, MKL_INT* rank, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGELSX( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       MKL_INT* jpvt, const double* rcond, MKL_INT* rank, double* work,
                       MKL_INT* info );
void __stdcall DGELSX_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        MKL_INT* jpvt, const double* rcond, MKL_INT* rank, double* work,
                        MKL_INT* info );
void __stdcall dgelsx( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       MKL_INT* jpvt, const double* rcond, MKL_INT* rank, double* work,
                       MKL_INT* info );
void __stdcall dgelsx_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        MKL_INT* jpvt, const double* rcond, MKL_INT* rank, double* work,
                        MKL_INT* info );

void __stdcall DGELSY( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       MKL_INT* jpvt, const double* rcond, MKL_INT* rank, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGELSY_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        MKL_INT* jpvt, const double* rcond, MKL_INT* rank, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgelsy( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       MKL_INT* jpvt, const double* rcond, MKL_INT* rank, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgelsy_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        MKL_INT* jpvt, const double* rcond, MKL_INT* rank, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGEQL2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, MKL_INT* info );
void __stdcall DGEQL2_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work, MKL_INT* info );
void __stdcall dgeql2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, MKL_INT* info );
void __stdcall dgeql2_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work, MKL_INT* info );

void __stdcall DGEQLF( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGEQLF_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgeqlf( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgeqlf_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGEQP3( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* jpvt, double* tau, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DGEQP3_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* jpvt, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgeqp3( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* jpvt, double* tau, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dgeqp3_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* jpvt, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGEQPF( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* jpvt, double* tau, double* work, MKL_INT* info );
void __stdcall DGEQPF_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* jpvt, double* tau, double* work,
                        MKL_INT* info );
void __stdcall dgeqpf( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* jpvt, double* tau, double* work, MKL_INT* info );
void __stdcall dgeqpf_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* jpvt, double* tau, double* work,
                        MKL_INT* info );

void __stdcall DGEQR2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, MKL_INT* info );
void __stdcall DGEQR2_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work, MKL_INT* info );
void __stdcall dgeqr2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, MKL_INT* info );
void __stdcall dgeqr2_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work, MKL_INT* info );

void __stdcall DGEQR2P( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                        double* tau, double* work, MKL_INT* info );
void __stdcall DGEQR2P_( const MKL_INT* m, const MKL_INT* n, double* a,
                         const MKL_INT* lda, double* tau, double* work, MKL_INT* info );
void __stdcall dgeqr2p( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                        double* tau, double* work, MKL_INT* info );
void __stdcall dgeqr2p_( const MKL_INT* m, const MKL_INT* n, double* a,
                         const MKL_INT* lda, double* tau, double* work, MKL_INT* info );

void __stdcall DGEQRF( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGEQRF_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgeqrf( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgeqrf_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGEQRFP( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                        double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGEQRFP_( const MKL_INT* m, const MKL_INT* n, double* a,
                         const MKL_INT* lda, double* tau, double* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgeqrfp( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                        double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgeqrfp_( const MKL_INT* m, const MKL_INT* n, double* a,
                         const MKL_INT* lda, double* tau, double* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGERFS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, const double* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                       double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGERFS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, const double* af,
                        const MKL_INT* ldaf, const MKL_INT* ipiv, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                        double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgerfs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, const double* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                       double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgerfs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, const double* af,
                        const MKL_INT* ldaf, const MKL_INT* ipiv, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                        double* berr, double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGERFSX( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                        const double* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const double* r, const double* c, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* rcond,
                        double* berr, const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGERFSX_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                         const double* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                         const double* r, const double* c, const double* b,
                         const MKL_INT* ldb, double* x, const MKL_INT* ldx,
                         double* rcond, double* berr, const MKL_INT* n_err_bnds,
                         double* err_bnds_norm, double* err_bnds_comp,
                         const MKL_INT* nparams, double* params, double* work,
                         MKL_INT* iwork, MKL_INT* info );
void __stdcall dgerfsx( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                        const double* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const double* r, const double* c, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* rcond,
                        double* berr, const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgerfsx_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                         const double* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                         const double* r, const double* c, const double* b,
                         const MKL_INT* ldb, double* x, const MKL_INT* ldx,
                         double* rcond, double* berr, const MKL_INT* n_err_bnds,
                         double* err_bnds_norm, double* err_bnds_comp,
                         const MKL_INT* nparams, double* params, double* work,
                         MKL_INT* iwork, MKL_INT* info );

void __stdcall DGERQ2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, MKL_INT* info );
void __stdcall DGERQ2_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work, MKL_INT* info );
void __stdcall dgerq2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, MKL_INT* info );
void __stdcall dgerq2_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work, MKL_INT* info );

void __stdcall DGERQF( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGERQF_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgerqf( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgerqf_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGESC2( const MKL_INT* n, const double* a, const MKL_INT* lda,
                       double* rhs, const MKL_INT* ipiv, const MKL_INT* jpiv,
                       double* scale );
void __stdcall DGESC2_( const MKL_INT* n, const double* a, const MKL_INT* lda,
                        double* rhs, const MKL_INT* ipiv, const MKL_INT* jpiv,
                        double* scale );
void __stdcall dgesc2( const MKL_INT* n, const double* a, const MKL_INT* lda,
                       double* rhs, const MKL_INT* ipiv, const MKL_INT* jpiv,
                       double* scale );
void __stdcall dgesc2_( const MKL_INT* n, const double* a, const MKL_INT* lda,
                        double* rhs, const MKL_INT* ipiv, const MKL_INT* jpiv,
                        double* scale );

void __stdcall DGESDD( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* s, double* u, const MKL_INT* ldu,
                       double* vt, const MKL_INT* ldvt, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGESDD_( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* s, double* u, const MKL_INT* ldu,
                        double* vt, const MKL_INT* ldvt, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgesdd( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* s, double* u, const MKL_INT* ldu,
                       double* vt, const MKL_INT* ldvt, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgesdd_( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* s, double* u, const MKL_INT* ldu,
                        double* vt, const MKL_INT* ldvt, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGESVD( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                       const MKL_INT* n, double* a, const MKL_INT* lda, double* s,
                       double* u, const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGESVD_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                        const MKL_INT* n, double* a, const MKL_INT* lda, double* s,
                        double* u, const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgesvd( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                       const MKL_INT* n, double* a, const MKL_INT* lda, double* s,
                       double* u, const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgesvd_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                        const MKL_INT* n, double* a, const MKL_INT* lda, double* s,
                        double* u, const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                        double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGESV( const MKL_INT* n, const MKL_INT* nrhs, double* a,
                      const MKL_INT* lda, MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall DGESV_( const MKL_INT* n, const MKL_INT* nrhs, double* a,
                       const MKL_INT* lda, MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall dgesv( const MKL_INT* n, const MKL_INT* nrhs, double* a,
                      const MKL_INT* lda, MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall dgesv_( const MKL_INT* n, const MKL_INT* nrhs, double* a,
                       const MKL_INT* lda, MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                       MKL_INT* info );

void __stdcall DGESVJ( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                       const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* sva, const MKL_INT* mv, double* v, const MKL_INT* ldv,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGESVJ_( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* sva, const MKL_INT* mv, double* v,
                        const MKL_INT* ldv, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dgesvj( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                       const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* sva, const MKL_INT* mv, double* v, const MKL_INT* ldv,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgesvj_( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* sva, const MKL_INT* mv, double* v,
                        const MKL_INT* ldv, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DGESVX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                       const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                       double* c, double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGESVX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                        const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                        double* c, double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgesvx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                       const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                       double* c, double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgesvx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                        const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                        double* c, double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGESVXX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                        const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                        double* c, double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* rpvgrw, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGESVXX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                         const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                         double* c, double* b, const MKL_INT* ldb, double* x,
                         const MKL_INT* ldx, double* rcond, double* rpvgrw, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgesvxx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                        const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                        double* c, double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* rpvgrw, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgesvxx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                         const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                         double* c, double* b, const MKL_INT* ldb, double* x,
                         const MKL_INT* ldx, double* rcond, double* rpvgrw, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGETC2( const MKL_INT* n, double* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_INT* jpiv, MKL_INT* info );
void __stdcall DGETC2_( const MKL_INT* n, double* a, const MKL_INT* lda, MKL_INT* ipiv,
                        MKL_INT* jpiv, MKL_INT* info );
void __stdcall dgetc2( const MKL_INT* n, double* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_INT* jpiv, MKL_INT* info );
void __stdcall dgetc2_( const MKL_INT* n, double* a, const MKL_INT* lda, MKL_INT* ipiv,
                        MKL_INT* jpiv, MKL_INT* info );

void __stdcall DGETF2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall DGETF2_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall dgetf2( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall dgetf2_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall DGETRF( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall DGETRF_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall dgetrf( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall dgetrf_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall MKL_DGETRFNPI( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                              double* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall MKL_DGETRFNPI_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                               double* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_dgetrfnpi( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                              double* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_dgetrfnpi_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                               double* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall DGETRI( const MKL_INT* n, double* a, const MKL_INT* lda,
                       const MKL_INT* ipiv, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DGETRI_( const MKL_INT* n, double* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dgetri( const MKL_INT* n, double* a, const MKL_INT* lda,
                       const MKL_INT* ipiv, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dgetri_( const MKL_INT* n, double* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DGETRS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DGETRS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dgetrs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dgetrs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        double* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall DGGBAK( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const double* lscale,
                       const double* rscale, const MKL_INT* m, double* v,
                       const MKL_INT* ldv, MKL_INT* info );
void __stdcall DGGBAK_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const double* lscale,
                        const double* rscale, const MKL_INT* m, double* v,
                        const MKL_INT* ldv, MKL_INT* info );
void __stdcall dggbak( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const double* lscale,
                       const double* rscale, const MKL_INT* m, double* v,
                       const MKL_INT* ldv, MKL_INT* info );
void __stdcall dggbak_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const double* lscale,
                        const double* rscale, const MKL_INT* m, double* v,
                        const MKL_INT* ldv, MKL_INT* info );

void __stdcall DGGBAL( const char* job, int job_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb, MKL_INT* ilo, MKL_INT* ihi,
                       double* lscale, double* rscale, double* work, MKL_INT* info );
void __stdcall DGGBAL_( const char* job, int job_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, MKL_INT* ilo, MKL_INT* ihi,
                        double* lscale, double* rscale, double* work, MKL_INT* info );
void __stdcall dggbal( const char* job, int job_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb, MKL_INT* ilo, MKL_INT* ihi,
                       double* lscale, double* rscale, double* work, MKL_INT* info );
void __stdcall dggbal_( const char* job, int job_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, MKL_INT* ilo, MKL_INT* ihi,
                        double* lscale, double* rscale, double* work, MKL_INT* info );

void __stdcall DGGES( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                      MKL_D_SELECT_FUNCTION_3 selctg, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* b, const MKL_INT* ldb, MKL_INT* sdim,
                      double* alphar, double* alphai, double* beta, double* vsl,
                      const MKL_INT* ldvsl, double* vsr, const MKL_INT* ldvsr,
                      double* work, const MKL_INT* lwork, MKL_INT* bwork,
                      MKL_INT* info );
void __stdcall DGGES_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_D_SELECT_FUNCTION_3 selctg, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, MKL_INT* sdim,
                       double* alphar, double* alphai, double* beta, double* vsl,
                       const MKL_INT* ldvsl, double* vsr, const MKL_INT* ldvsr,
                       double* work, const MKL_INT* lwork, MKL_INT* bwork,
                       MKL_INT* info );
void __stdcall dgges( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                      MKL_D_SELECT_FUNCTION_3 selctg, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* b, const MKL_INT* ldb, MKL_INT* sdim,
                      double* alphar, double* alphai, double* beta, double* vsl,
                      const MKL_INT* ldvsl, double* vsr, const MKL_INT* ldvsr,
                      double* work, const MKL_INT* lwork, MKL_INT* bwork,
                      MKL_INT* info );
void __stdcall dgges_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_D_SELECT_FUNCTION_3 selctg, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, MKL_INT* sdim,
                       double* alphar, double* alphai, double* beta, double* vsl,
                       const MKL_INT* ldvsl, double* vsr, const MKL_INT* ldvsr,
                       double* work, const MKL_INT* lwork, MKL_INT* bwork,
                       MKL_INT* info );

void __stdcall DGGESX( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_D_SELECT_FUNCTION_3 selctg, const char* sense, int sense_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, MKL_INT* sdim, double* alphar, double* alphai,
                       double* beta, double* vsl, const MKL_INT* ldvsl, double* vsr,
                       const MKL_INT* ldvsr, double* rconde, double* rcondv,
                       double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall DGGESX_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                        MKL_D_SELECT_FUNCTION_3 selctg, const char* sense, int sense_len,
                        const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, MKL_INT* sdim, double* alphar,
                        double* alphai, double* beta, double* vsl, const MKL_INT* ldvsl,
                        double* vsr, const MKL_INT* ldvsr, double* rconde,
                        double* rcondv, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* bwork,
                        MKL_INT* info );
void __stdcall dggesx( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_D_SELECT_FUNCTION_3 selctg, const char* sense, int sense_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, MKL_INT* sdim, double* alphar, double* alphai,
                       double* beta, double* vsl, const MKL_INT* ldvsl, double* vsr,
                       const MKL_INT* ldvsr, double* rconde, double* rcondv,
                       double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall dggesx_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                        MKL_D_SELECT_FUNCTION_3 selctg, const char* sense, int sense_len,
                        const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, MKL_INT* sdim, double* alphar,
                        double* alphai, double* beta, double* vsl, const MKL_INT* ldvsl,
                        double* vsr, const MKL_INT* ldvsr, double* rconde,
                        double* rcondv, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* bwork,
                        MKL_INT* info );

void __stdcall DGGEV( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* b, const MKL_INT* ldb, double* alphar,
                      double* alphai, double* beta, double* vl, const MKL_INT* ldvl,
                      double* vr, const MKL_INT* ldvr, double* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGGEV_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* alphar,
                       double* alphai, double* beta, double* vl, const MKL_INT* ldvl,
                       double* vr, const MKL_INT* ldvr, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dggev( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* b, const MKL_INT* ldb, double* alphar,
                      double* alphai, double* beta, double* vl, const MKL_INT* ldvl,
                      double* vr, const MKL_INT* ldvr, double* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall dggev_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* alphar,
                       double* alphai, double* beta, double* vl, const MKL_INT* ldvl,
                       double* vr, const MKL_INT* ldvr, double* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGGEVX( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* alphar,
                       double* alphai, double* beta, double* vl, const MKL_INT* ldvl,
                       double* vr, const MKL_INT* ldvr, MKL_INT* ilo, MKL_INT* ihi,
                       double* lscale, double* rscale, double* abnrm, double* bbnrm,
                       double* rconde, double* rcondv, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* bwork,
                       MKL_INT* info );
void __stdcall DGGEVX_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* alphar, double* alphai, double* beta, double* vl,
                        const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, double* lscale, double* rscale,
                        double* abnrm, double* bbnrm, double* rconde, double* rcondv,
                        double* work, const MKL_INT* lwork, MKL_INT* iwork,
                        MKL_INT* bwork, MKL_INT* info );
void __stdcall dggevx( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* alphar,
                       double* alphai, double* beta, double* vl, const MKL_INT* ldvl,
                       double* vr, const MKL_INT* ldvr, MKL_INT* ilo, MKL_INT* ihi,
                       double* lscale, double* rscale, double* abnrm, double* bbnrm,
                       double* rconde, double* rcondv, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* bwork,
                       MKL_INT* info );
void __stdcall dggevx_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* alphar, double* alphai, double* beta, double* vl,
                        const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, double* lscale, double* rscale,
                        double* abnrm, double* bbnrm, double* rconde, double* rcondv,
                        double* work, const MKL_INT* lwork, MKL_INT* iwork,
                        MKL_INT* bwork, MKL_INT* info );

void __stdcall DGGGLM( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* d,
                       double* x, double* y, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DGGGLM_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb, double* d,
                        double* x, double* y, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dggglm( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* d,
                       double* x, double* y, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dggglm_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb, double* d,
                        double* x, double* y, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DGGHRD( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* q,
                       const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                       MKL_INT* info );
void __stdcall DGGHRD_( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb, double* q,
                        const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                        MKL_INT* info );
void __stdcall dgghrd( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* q,
                       const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                       MKL_INT* info );
void __stdcall dgghrd_( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb, double* q,
                        const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                        MKL_INT* info );

void __stdcall DGGLSE( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* c,
                       double* d, double* x, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DGGLSE_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb, double* c,
                        double* d, double* x, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dgglse( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* c,
                       double* d, double* x, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dgglse_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb, double* c,
                        double* d, double* x, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DGGQRF( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, double* a,
                       const MKL_INT* lda, double* taua, double* b, const MKL_INT* ldb,
                       double* taub, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGGQRF_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, double* a,
                        const MKL_INT* lda, double* taua, double* b, const MKL_INT* ldb,
                        double* taub, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dggqrf( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, double* a,
                       const MKL_INT* lda, double* taua, double* b, const MKL_INT* ldb,
                       double* taub, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dggqrf_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, double* a,
                        const MKL_INT* lda, double* taua, double* b, const MKL_INT* ldb,
                        double* taub, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DGGRQF( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* taua, double* b, const MKL_INT* ldb,
                       double* taub, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGGRQF_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* taua, double* b, const MKL_INT* ldb,
                        double* taub, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dggrqf( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* taua, double* b, const MKL_INT* ldb,
                       double* taub, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dggrqf_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* taua, double* b, const MKL_INT* ldb,
                        double* taub, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DGGSVD( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                       MKL_INT* l, double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, double* alpha, double* beta, double* u,
                       const MKL_INT* ldu, double* v, const MKL_INT* ldv, double* q,
                       const MKL_INT* ldq, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGGSVD_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                        MKL_INT* l, double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, double* alpha, double* beta, double* u,
                        const MKL_INT* ldu, double* v, const MKL_INT* ldv, double* q,
                        const MKL_INT* ldq, double* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall dggsvd( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                       MKL_INT* l, double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, double* alpha, double* beta, double* u,
                       const MKL_INT* ldu, double* v, const MKL_INT* ldv, double* q,
                       const MKL_INT* ldq, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dggsvd_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                        MKL_INT* l, double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, double* alpha, double* beta, double* u,
                        const MKL_INT* ldu, double* v, const MKL_INT* ldv, double* q,
                        const MKL_INT* ldq, double* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall DGGSVP( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       const double* tola, const double* tolb, MKL_INT* k, MKL_INT* l,
                       double* u, const MKL_INT* ldu, double* v, const MKL_INT* ldv,
                       double* q, const MKL_INT* ldq, MKL_INT* iwork, double* tau,
                       double* work, MKL_INT* info );
void __stdcall DGGSVP_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        const double* tola, const double* tolb, MKL_INT* k, MKL_INT* l,
                        double* u, const MKL_INT* ldu, double* v, const MKL_INT* ldv,
                        double* q, const MKL_INT* ldq, MKL_INT* iwork, double* tau,
                        double* work, MKL_INT* info );
void __stdcall dggsvp( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       const double* tola, const double* tolb, MKL_INT* k, MKL_INT* l,
                       double* u, const MKL_INT* ldu, double* v, const MKL_INT* ldv,
                       double* q, const MKL_INT* ldq, MKL_INT* iwork, double* tau,
                       double* work, MKL_INT* info );
void __stdcall dggsvp_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        const double* tola, const double* tolb, MKL_INT* k, MKL_INT* l,
                        double* u, const MKL_INT* ldu, double* v, const MKL_INT* ldv,
                        double* q, const MKL_INT* ldq, MKL_INT* iwork, double* tau,
                        double* work, MKL_INT* info );

void __stdcall DGSVJ0( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* d, double* sva, const MKL_INT* mv,
                       double* v, const MKL_INT* ldv, const double* eps,
                       const double* sfmin, const double* tol, const MKL_INT* nsweep,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DGSVJ0_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* d, double* sva, const MKL_INT* mv,
                        double* v, const MKL_INT* ldv, const double* eps,
                        const double* sfmin, const double* tol, const MKL_INT* nsweep,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgsvj0( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* d, double* sva, const MKL_INT* mv,
                       double* v, const MKL_INT* ldv, const double* eps,
                       const double* sfmin, const double* tol, const MKL_INT* nsweep,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dgsvj0_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* d, double* sva, const MKL_INT* mv,
                        double* v, const MKL_INT* ldv, const double* eps,
                        const double* sfmin, const double* tol, const MKL_INT* nsweep,
                        double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DGSVJ1( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* n1, double* a, const MKL_INT* lda, double* d,
                       double* sva, const MKL_INT* mv, double* v, const MKL_INT* ldv,
                       const double* eps, const double* sfmin, const double* tol,
                       const MKL_INT* nsweep, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DGSVJ1_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* n1, double* a, const MKL_INT* lda, double* d,
                        double* sva, const MKL_INT* mv, double* v, const MKL_INT* ldv,
                        const double* eps, const double* sfmin, const double* tol,
                        const MKL_INT* nsweep, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dgsvj1( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* n1, double* a, const MKL_INT* lda, double* d,
                       double* sva, const MKL_INT* mv, double* v, const MKL_INT* ldv,
                       const double* eps, const double* sfmin, const double* tol,
                       const MKL_INT* nsweep, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dgsvj1_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* n1, double* a, const MKL_INT* lda, double* d,
                        double* sva, const MKL_INT* mv, double* v, const MKL_INT* ldv,
                        const double* eps, const double* sfmin, const double* tol,
                        const MKL_INT* nsweep, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DGTCON( const char* norm, int norm_len, const MKL_INT* n, const double* dl,
                       const double* d, const double* du, const double* du2,
                       const MKL_INT* ipiv, const double* anorm, double* rcond,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGTCON_( const char* norm, int norm_len, const MKL_INT* n, const double* dl,
                        const double* d, const double* du, const double* du2,
                        const MKL_INT* ipiv, const double* anorm, double* rcond,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgtcon( const char* norm, int norm_len, const MKL_INT* n, const double* dl,
                       const double* d, const double* du, const double* du2,
                       const MKL_INT* ipiv, const double* anorm, double* rcond,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgtcon_( const char* norm, int norm_len, const MKL_INT* n, const double* dl,
                        const double* d, const double* du, const double* du2,
                        const MKL_INT* ipiv, const double* anorm, double* rcond,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGTRFS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* dl, const double* d, const double* du,
                       const double* dlf, const double* df, const double* duf,
                       const double* du2, const MKL_INT* ipiv, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                       double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGTRFS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* dl, const double* d, const double* du,
                        const double* dlf, const double* df, const double* duf,
                        const double* du2, const MKL_INT* ipiv, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                        double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgtrfs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* dl, const double* d, const double* du,
                       const double* dlf, const double* df, const double* duf,
                       const double* du2, const MKL_INT* ipiv, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                       double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgtrfs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* dl, const double* d, const double* du,
                        const double* dlf, const double* df, const double* duf,
                        const double* du2, const MKL_INT* ipiv, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                        double* berr, double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGTSV( const MKL_INT* n, const MKL_INT* nrhs, double* dl, double* d,
                      double* du, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DGTSV_( const MKL_INT* n, const MKL_INT* nrhs, double* dl, double* d,
                       double* du, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dgtsv( const MKL_INT* n, const MKL_INT* nrhs, double* dl, double* d,
                      double* du, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dgtsv_( const MKL_INT* n, const MKL_INT* nrhs, double* dl, double* d,
                       double* du, double* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall DGTSVX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const double* dl, const double* d,
                       const double* du, double* dlf, double* df, double* duf,
                       double* du2, MKL_INT* ipiv, const double* b, const MKL_INT* ldb,
                       double* x, const MKL_INT* ldx, double* rcond, double* ferr,
                       double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DGTSVX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* dl, const double* d,
                        const double* du, double* dlf, double* df, double* duf,
                        double* du2, MKL_INT* ipiv, const double* b, const MKL_INT* ldb,
                        double* x, const MKL_INT* ldx, double* rcond, double* ferr,
                        double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgtsvx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const double* dl, const double* d,
                       const double* du, double* dlf, double* df, double* duf,
                       double* du2, MKL_INT* ipiv, const double* b, const MKL_INT* ldb,
                       double* x, const MKL_INT* ldx, double* rcond, double* ferr,
                       double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dgtsvx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* dl, const double* d,
                        const double* du, double* dlf, double* df, double* duf,
                        double* du2, MKL_INT* ipiv, const double* b, const MKL_INT* ldb,
                        double* x, const MKL_INT* ldx, double* rcond, double* ferr,
                        double* berr, double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DGTTRF( const MKL_INT* n, double* dl, double* d, double* du, double* du2,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall DGTTRF_( const MKL_INT* n, double* dl, double* d, double* du, double* du2,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall dgttrf( const MKL_INT* n, double* dl, double* d, double* du, double* du2,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall dgttrf_( const MKL_INT* n, double* dl, double* d, double* du, double* du2,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall DGTTRS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* dl, const double* d, const double* du,
                       const double* du2, const MKL_INT* ipiv, double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall DGTTRS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* dl, const double* d, const double* du,
                        const double* du2, const MKL_INT* ipiv, double* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall dgttrs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* dl, const double* d, const double* du,
                       const double* du2, const MKL_INT* ipiv, double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall dgttrs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* dl, const double* d, const double* du,
                        const double* du2, const MKL_INT* ipiv, double* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall DGTTS2( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* dl, const double* d, const double* du,
                       const double* du2, const MKL_INT* ipiv, double* b,
                       const MKL_INT* ldb );
void __stdcall DGTTS2_( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* dl, const double* d, const double* du,
                        const double* du2, const MKL_INT* ipiv, double* b,
                        const MKL_INT* ldb );
void __stdcall dgtts2( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* dl, const double* d, const double* du,
                       const double* du2, const MKL_INT* ipiv, double* b,
                       const MKL_INT* ldb );
void __stdcall dgtts2_( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* dl, const double* d, const double* du,
                        const double* du2, const MKL_INT* ipiv, double* b,
                        const MKL_INT* ldb );

void __stdcall DHGEQZ( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       double* h, const MKL_INT* ldh, double* t, const MKL_INT* ldt,
                       double* alphar, double* alphai, double* beta, double* q,
                       const MKL_INT* ldq, double* z, const MKL_INT* ldz, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DHGEQZ_( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        double* h, const MKL_INT* ldh, double* t, const MKL_INT* ldt,
                        double* alphar, double* alphai, double* beta, double* q,
                        const MKL_INT* ldq, double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dhgeqz( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       double* h, const MKL_INT* ldh, double* t, const MKL_INT* ldt,
                       double* alphar, double* alphai, double* beta, double* q,
                       const MKL_INT* ldq, double* z, const MKL_INT* ldz, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dhgeqz_( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        double* h, const MKL_INT* ldh, double* t, const MKL_INT* ldt,
                        double* alphar, double* alphai, double* beta, double* q,
                        const MKL_INT* ldq, double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DHSEIN( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                       MKL_INT* select, const MKL_INT* n, const double* h,
                       const MKL_INT* ldh, double* wr, const double* wi, double* vl,
                       const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, double* work, MKL_INT* ifaill,
                       MKL_INT* ifailr, MKL_INT* info );
void __stdcall DHSEIN_( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                        MKL_INT* select, const MKL_INT* n, const double* h,
                        const MKL_INT* ldh, double* wr, const double* wi, double* vl,
                        const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, double* work, MKL_INT* ifaill,
                        MKL_INT* ifailr, MKL_INT* info );
void __stdcall dhsein( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                       MKL_INT* select, const MKL_INT* n, const double* h,
                       const MKL_INT* ldh, double* wr, const double* wi, double* vl,
                       const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, double* work, MKL_INT* ifaill,
                       MKL_INT* ifailr, MKL_INT* info );
void __stdcall dhsein_( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                        MKL_INT* select, const MKL_INT* n, const double* h,
                        const MKL_INT* ldh, double* wr, const double* wi, double* vl,
                        const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, double* work, MKL_INT* ifaill,
                        MKL_INT* ifailr, MKL_INT* info );

void __stdcall DHSEQR( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                       const MKL_INT* ldh, double* wr, double* wi, double* z,
                       const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DHSEQR_( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                        const MKL_INT* ldh, double* wr, double* wi, double* z,
                        const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dhseqr( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                       const MKL_INT* ldh, double* wr, double* wi, double* z,
                       const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dhseqr_( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                        const MKL_INT* ldh, double* wr, double* wi, double* z,
                        const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

MKL_INT __stdcall DISNAN( const double* din );
MKL_INT __stdcall DISNAN_( const double* din );
MKL_INT __stdcall disnan( const double* din );
MKL_INT __stdcall disnan_( const double* din );

void __stdcall DLABAD( double* smallx, double* large );
void __stdcall DLABAD_( double* smallx, double* large );
void __stdcall dlabad( double* smallx, double* large );
void __stdcall dlabad_( double* smallx, double* large );

void __stdcall DLABRD( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, double* a,
                       const MKL_INT* lda, double* d, double* e, double* tauq,
                       double* taup, double* x, const MKL_INT* ldx, double* y,
                       const MKL_INT* ldy );
void __stdcall DLABRD_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, double* a,
                        const MKL_INT* lda, double* d, double* e, double* tauq,
                        double* taup, double* x, const MKL_INT* ldx, double* y,
                        const MKL_INT* ldy );
void __stdcall dlabrd( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, double* a,
                       const MKL_INT* lda, double* d, double* e, double* tauq,
                       double* taup, double* x, const MKL_INT* ldx, double* y,
                       const MKL_INT* ldy );
void __stdcall dlabrd_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, double* a,
                        const MKL_INT* lda, double* d, double* e, double* tauq,
                        double* taup, double* x, const MKL_INT* ldx, double* y,
                        const MKL_INT* ldy );

void __stdcall DLACN2( const MKL_INT* n, double* v, double* x, MKL_INT* isgn,
                       double* est, MKL_INT* kase, MKL_INT* isave );
void __stdcall DLACN2_( const MKL_INT* n, double* v, double* x, MKL_INT* isgn,
                        double* est, MKL_INT* kase, MKL_INT* isave );
void __stdcall dlacn2( const MKL_INT* n, double* v, double* x, MKL_INT* isgn,
                       double* est, MKL_INT* kase, MKL_INT* isave );
void __stdcall dlacn2_( const MKL_INT* n, double* v, double* x, MKL_INT* isgn,
                        double* est, MKL_INT* kase, MKL_INT* isave );

void __stdcall DLACON( const MKL_INT* n, double* v, double* x, MKL_INT* isgn,
                       double* est, MKL_INT* kase );
void __stdcall DLACON_( const MKL_INT* n, double* v, double* x, MKL_INT* isgn,
                        double* est, MKL_INT* kase );
void __stdcall dlacon( const MKL_INT* n, double* v, double* x, MKL_INT* isgn,
                       double* est, MKL_INT* kase );
void __stdcall dlacon_( const MKL_INT* n, double* v, double* x, MKL_INT* isgn,
                        double* est, MKL_INT* kase );

void __stdcall DLACPY( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb );
void __stdcall DLACPY_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb );
void __stdcall dlacpy( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb );
void __stdcall dlacpy_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb );

void __stdcall DLADIV( const double* a, const double* b, const double* c,
                       const double* d, double* p, double* q );
void __stdcall DLADIV_( const double* a, const double* b, const double* c,
                        const double* d, double* p, double* q );
void __stdcall dladiv( const double* a, const double* b, const double* c,
                       const double* d, double* p, double* q );
void __stdcall dladiv_( const double* a, const double* b, const double* c,
                        const double* d, double* p, double* q );

void __stdcall DLAE2( const double* a, const double* b, const double* c, double* rt1,
                      double* rt2 );
void __stdcall DLAE2_( const double* a, const double* b, const double* c, double* rt1,
                       double* rt2 );
void __stdcall dlae2( const double* a, const double* b, const double* c, double* rt1,
                      double* rt2 );
void __stdcall dlae2_( const double* a, const double* b, const double* c, double* rt1,
                       double* rt2 );

void __stdcall DLAEBZ( const MKL_INT* ijob, const MKL_INT* nitmax, const MKL_INT* n,
                       const MKL_INT* mmax, const MKL_INT* minp, const MKL_INT* nbmin,
                       const double* abstol, const double* reltol, const double* pivmin,
                       const double* d, const double* e, const double* e2, MKL_INT* nval,
                       double* ab, double* c, MKL_INT* mout, MKL_INT* nab, double* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall DLAEBZ_( const MKL_INT* ijob, const MKL_INT* nitmax, const MKL_INT* n,
                        const MKL_INT* mmax, const MKL_INT* minp, const MKL_INT* nbmin,
                        const double* abstol, const double* reltol, const double* pivmin,
                        const double* d, const double* e, const double* e2,
                        MKL_INT* nval, double* ab, double* c, MKL_INT* mout,
                        MKL_INT* nab, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dlaebz( const MKL_INT* ijob, const MKL_INT* nitmax, const MKL_INT* n,
                       const MKL_INT* mmax, const MKL_INT* minp, const MKL_INT* nbmin,
                       const double* abstol, const double* reltol, const double* pivmin,
                       const double* d, const double* e, const double* e2, MKL_INT* nval,
                       double* ab, double* c, MKL_INT* mout, MKL_INT* nab, double* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall dlaebz_( const MKL_INT* ijob, const MKL_INT* nitmax, const MKL_INT* n,
                        const MKL_INT* mmax, const MKL_INT* minp, const MKL_INT* nbmin,
                        const double* abstol, const double* reltol, const double* pivmin,
                        const double* d, const double* e, const double* e2,
                        MKL_INT* nval, double* ab, double* c, MKL_INT* mout,
                        MKL_INT* nab, double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DLAED0( const MKL_INT* icompq, const MKL_INT* qsiz, const MKL_INT* n,
                       double* d, const double* e, double* q, const MKL_INT* ldq,
                       double* qstore, const MKL_INT* ldqs, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall DLAED0_( const MKL_INT* icompq, const MKL_INT* qsiz, const MKL_INT* n,
                        double* d, const double* e, double* q, const MKL_INT* ldq,
                        double* qstore, const MKL_INT* ldqs, double* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall dlaed0( const MKL_INT* icompq, const MKL_INT* qsiz, const MKL_INT* n,
                       double* d, const double* e, double* q, const MKL_INT* ldq,
                       double* qstore, const MKL_INT* ldqs, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall dlaed0_( const MKL_INT* icompq, const MKL_INT* qsiz, const MKL_INT* n,
                        double* d, const double* e, double* q, const MKL_INT* ldq,
                        double* qstore, const MKL_INT* ldqs, double* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall DLAED1( const MKL_INT* n, double* d, double* q, const MKL_INT* ldq,
                       MKL_INT* indxq, const double* rho, const MKL_INT* cutpnt,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DLAED1_( const MKL_INT* n, double* d, double* q, const MKL_INT* ldq,
                        MKL_INT* indxq, const double* rho, const MKL_INT* cutpnt,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dlaed1( const MKL_INT* n, double* d, double* q, const MKL_INT* ldq,
                       MKL_INT* indxq, const double* rho, const MKL_INT* cutpnt,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dlaed1_( const MKL_INT* n, double* d, double* q, const MKL_INT* ldq,
                        MKL_INT* indxq, const double* rho, const MKL_INT* cutpnt,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DLAED2( MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, double* d,
                       double* q, const MKL_INT* ldq, MKL_INT* indxq, double* rho,
                       const double* z, double* dlamda, double* w, double* q2,
                       MKL_INT* indx, MKL_INT* indxc, MKL_INT* indxp, MKL_INT* coltyp,
                       MKL_INT* info );
void __stdcall DLAED2_( MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, double* d,
                        double* q, const MKL_INT* ldq, MKL_INT* indxq, double* rho,
                        const double* z, double* dlamda, double* w, double* q2,
                        MKL_INT* indx, MKL_INT* indxc, MKL_INT* indxp, MKL_INT* coltyp,
                        MKL_INT* info );
void __stdcall dlaed2( MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, double* d,
                       double* q, const MKL_INT* ldq, MKL_INT* indxq, double* rho,
                       const double* z, double* dlamda, double* w, double* q2,
                       MKL_INT* indx, MKL_INT* indxc, MKL_INT* indxp, MKL_INT* coltyp,
                       MKL_INT* info );
void __stdcall dlaed2_( MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, double* d,
                        double* q, const MKL_INT* ldq, MKL_INT* indxq, double* rho,
                        const double* z, double* dlamda, double* w, double* q2,
                        MKL_INT* indx, MKL_INT* indxc, MKL_INT* indxp, MKL_INT* coltyp,
                        MKL_INT* info );

void __stdcall DLAED3( const MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, double* d,
                       double* q, const MKL_INT* ldq, const double* rho, double* dlamda,
                       const double* q2, const MKL_INT* indx, const MKL_INT* ctot,
                       double* w, double* s, MKL_INT* info );
void __stdcall DLAED3_( const MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, double* d,
                        double* q, const MKL_INT* ldq, const double* rho, double* dlamda,
                        const double* q2, const MKL_INT* indx, const MKL_INT* ctot,
                        double* w, double* s, MKL_INT* info );
void __stdcall dlaed3( const MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, double* d,
                       double* q, const MKL_INT* ldq, const double* rho, double* dlamda,
                       const double* q2, const MKL_INT* indx, const MKL_INT* ctot,
                       double* w, double* s, MKL_INT* info );
void __stdcall dlaed3_( const MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, double* d,
                        double* q, const MKL_INT* ldq, const double* rho, double* dlamda,
                        const double* q2, const MKL_INT* indx, const MKL_INT* ctot,
                        double* w, double* s, MKL_INT* info );

void __stdcall DLAED4( const MKL_INT* n, const MKL_INT* i, const double* d,
                       const double* z, double* delta, const double* rho, double* dlam,
                       MKL_INT* info );
void __stdcall DLAED4_( const MKL_INT* n, const MKL_INT* i, const double* d,
                        const double* z, double* delta, const double* rho, double* dlam,
                        MKL_INT* info );
void __stdcall dlaed4( const MKL_INT* n, const MKL_INT* i, const double* d,
                       const double* z, double* delta, const double* rho, double* dlam,
                       MKL_INT* info );
void __stdcall dlaed4_( const MKL_INT* n, const MKL_INT* i, const double* d,
                        const double* z, double* delta, const double* rho, double* dlam,
                        MKL_INT* info );

void __stdcall DLAED5( const MKL_INT* i, const double* d, const double* z, double* delta,
                       const double* rho, double* dlam );
void __stdcall DLAED5_( const MKL_INT* i, const double* d, const double* z,
                        double* delta, const double* rho, double* dlam );
void __stdcall dlaed5( const MKL_INT* i, const double* d, const double* z, double* delta,
                       const double* rho, double* dlam );
void __stdcall dlaed5_( const MKL_INT* i, const double* d, const double* z,
                        double* delta, const double* rho, double* dlam );

void __stdcall DLAED6( const MKL_INT* kniter, const MKL_INT* orgati, const double* rho,
                       const double* d, const double* z, const double* finit,
                       double* tau, MKL_INT* info );
void __stdcall DLAED6_( const MKL_INT* kniter, const MKL_INT* orgati, const double* rho,
                        const double* d, const double* z, const double* finit,
                        double* tau, MKL_INT* info );
void __stdcall dlaed6( const MKL_INT* kniter, const MKL_INT* orgati, const double* rho,
                       const double* d, const double* z, const double* finit,
                       double* tau, MKL_INT* info );
void __stdcall dlaed6_( const MKL_INT* kniter, const MKL_INT* orgati, const double* rho,
                        const double* d, const double* z, const double* finit,
                        double* tau, MKL_INT* info );

void __stdcall DLAED7( const MKL_INT* icompq, const MKL_INT* n, const MKL_INT* qsiz,
                       const MKL_INT* tlvls, const MKL_INT* curlvl,
                       const MKL_INT* curpbm, double* d, double* q, const MKL_INT* ldq,
                       MKL_INT* indxq, const double* rho, const MKL_INT* cutpnt,
                       double* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const double* givnum, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall DLAED7_( const MKL_INT* icompq, const MKL_INT* n, const MKL_INT* qsiz,
                        const MKL_INT* tlvls, const MKL_INT* curlvl,
                        const MKL_INT* curpbm, double* d, double* q, const MKL_INT* ldq,
                        MKL_INT* indxq, const double* rho, const MKL_INT* cutpnt,
                        double* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const double* givnum, double* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall dlaed7( const MKL_INT* icompq, const MKL_INT* n, const MKL_INT* qsiz,
                       const MKL_INT* tlvls, const MKL_INT* curlvl,
                       const MKL_INT* curpbm, double* d, double* q, const MKL_INT* ldq,
                       MKL_INT* indxq, const double* rho, const MKL_INT* cutpnt,
                       double* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const double* givnum, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall dlaed7_( const MKL_INT* icompq, const MKL_INT* n, const MKL_INT* qsiz,
                        const MKL_INT* tlvls, const MKL_INT* curlvl,
                        const MKL_INT* curpbm, double* d, double* q, const MKL_INT* ldq,
                        MKL_INT* indxq, const double* rho, const MKL_INT* cutpnt,
                        double* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const double* givnum, double* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall DLAED8( const MKL_INT* icompq, MKL_INT* k, const MKL_INT* n,
                       const MKL_INT* qsiz, double* d, double* q, const MKL_INT* ldq,
                       const MKL_INT* indxq, double* rho, const MKL_INT* cutpnt,
                       const double* z, double* dlamda, double* q2, const MKL_INT* ldq2,
                       double* w, MKL_INT* perm, MKL_INT* givptr, MKL_INT* givcol,
                       double* givnum, MKL_INT* indxp, MKL_INT* indx, MKL_INT* info );
void __stdcall DLAED8_( const MKL_INT* icompq, MKL_INT* k, const MKL_INT* n,
                        const MKL_INT* qsiz, double* d, double* q, const MKL_INT* ldq,
                        const MKL_INT* indxq, double* rho, const MKL_INT* cutpnt,
                        const double* z, double* dlamda, double* q2, const MKL_INT* ldq2,
                        double* w, MKL_INT* perm, MKL_INT* givptr, MKL_INT* givcol,
                        double* givnum, MKL_INT* indxp, MKL_INT* indx, MKL_INT* info );
void __stdcall dlaed8( const MKL_INT* icompq, MKL_INT* k, const MKL_INT* n,
                       const MKL_INT* qsiz, double* d, double* q, const MKL_INT* ldq,
                       const MKL_INT* indxq, double* rho, const MKL_INT* cutpnt,
                       const double* z, double* dlamda, double* q2, const MKL_INT* ldq2,
                       double* w, MKL_INT* perm, MKL_INT* givptr, MKL_INT* givcol,
                       double* givnum, MKL_INT* indxp, MKL_INT* indx, MKL_INT* info );
void __stdcall dlaed8_( const MKL_INT* icompq, MKL_INT* k, const MKL_INT* n,
                        const MKL_INT* qsiz, double* d, double* q, const MKL_INT* ldq,
                        const MKL_INT* indxq, double* rho, const MKL_INT* cutpnt,
                        const double* z, double* dlamda, double* q2, const MKL_INT* ldq2,
                        double* w, MKL_INT* perm, MKL_INT* givptr, MKL_INT* givcol,
                        double* givnum, MKL_INT* indxp, MKL_INT* indx, MKL_INT* info );

void __stdcall DLAED9( const MKL_INT* k, const MKL_INT* kstart, const MKL_INT* kstop,
                       const MKL_INT* n, double* d, double* q, const MKL_INT* ldq,
                       const double* rho, const double* dlamda, const double* w,
                       double* s, const MKL_INT* lds, MKL_INT* info );
void __stdcall DLAED9_( const MKL_INT* k, const MKL_INT* kstart, const MKL_INT* kstop,
                        const MKL_INT* n, double* d, double* q, const MKL_INT* ldq,
                        const double* rho, const double* dlamda, const double* w,
                        double* s, const MKL_INT* lds, MKL_INT* info );
void __stdcall dlaed9( const MKL_INT* k, const MKL_INT* kstart, const MKL_INT* kstop,
                       const MKL_INT* n, double* d, double* q, const MKL_INT* ldq,
                       const double* rho, const double* dlamda, const double* w,
                       double* s, const MKL_INT* lds, MKL_INT* info );
void __stdcall dlaed9_( const MKL_INT* k, const MKL_INT* kstart, const MKL_INT* kstop,
                        const MKL_INT* n, double* d, double* q, const MKL_INT* ldq,
                        const double* rho, const double* dlamda, const double* w,
                        double* s, const MKL_INT* lds, MKL_INT* info );

void __stdcall DLAEDA( const MKL_INT* n, const MKL_INT* tlvls, const MKL_INT* curlvl,
                       const MKL_INT* curpbm, const MKL_INT* prmptr, const MKL_INT* perm,
                       const MKL_INT* givptr, const MKL_INT* givcol,
                       const double* givnum, const double* q, const MKL_INT* qptr,
                       double* z, double* ztemp, MKL_INT* info );
void __stdcall DLAEDA_( const MKL_INT* n, const MKL_INT* tlvls, const MKL_INT* curlvl,
                        const MKL_INT* curpbm, const MKL_INT* prmptr,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const double* givnum, const double* q,
                        const MKL_INT* qptr, double* z, double* ztemp, MKL_INT* info );
void __stdcall dlaeda( const MKL_INT* n, const MKL_INT* tlvls, const MKL_INT* curlvl,
                       const MKL_INT* curpbm, const MKL_INT* prmptr, const MKL_INT* perm,
                       const MKL_INT* givptr, const MKL_INT* givcol,
                       const double* givnum, const double* q, const MKL_INT* qptr,
                       double* z, double* ztemp, MKL_INT* info );
void __stdcall dlaeda_( const MKL_INT* n, const MKL_INT* tlvls, const MKL_INT* curlvl,
                        const MKL_INT* curpbm, const MKL_INT* prmptr,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const double* givnum, const double* q,
                        const MKL_INT* qptr, double* z, double* ztemp, MKL_INT* info );

void __stdcall DLAEIN( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                       const double* h, const MKL_INT* ldh, const double* wr,
                       const double* wi, double* vr, double* vi, double* b,
                       const MKL_INT* ldb, double* work, const double* eps3,
                       const double* smlnum, const double* bignum, MKL_INT* info );
void __stdcall DLAEIN_( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                        const double* h, const MKL_INT* ldh, const double* wr,
                        const double* wi, double* vr, double* vi, double* b,
                        const MKL_INT* ldb, double* work, const double* eps3,
                        const double* smlnum, const double* bignum, MKL_INT* info );
void __stdcall dlaein( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                       const double* h, const MKL_INT* ldh, const double* wr,
                       const double* wi, double* vr, double* vi, double* b,
                       const MKL_INT* ldb, double* work, const double* eps3,
                       const double* smlnum, const double* bignum, MKL_INT* info );
void __stdcall dlaein_( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                        const double* h, const MKL_INT* ldh, const double* wr,
                        const double* wi, double* vr, double* vi, double* b,
                        const MKL_INT* ldb, double* work, const double* eps3,
                        const double* smlnum, const double* bignum, MKL_INT* info );

void __stdcall DLAEV2( const double* a, const double* b, const double* c, double* rt1,
                       double* rt2, double* cs1, double* sn1 );
void __stdcall DLAEV2_( const double* a, const double* b, const double* c, double* rt1,
                        double* rt2, double* cs1, double* sn1 );
void __stdcall dlaev2( const double* a, const double* b, const double* c, double* rt1,
                       double* rt2, double* cs1, double* sn1 );
void __stdcall dlaev2_( const double* a, const double* b, const double* c, double* rt1,
                        double* rt2, double* cs1, double* sn1 );

void __stdcall DLAEXC( const MKL_INT* wantq, const MKL_INT* n, double* t,
                       const MKL_INT* ldt, double* q, const MKL_INT* ldq,
                       const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                       double* work, MKL_INT* info );
void __stdcall DLAEXC_( const MKL_INT* wantq, const MKL_INT* n, double* t,
                        const MKL_INT* ldt, double* q, const MKL_INT* ldq,
                        const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                        double* work, MKL_INT* info );
void __stdcall dlaexc( const MKL_INT* wantq, const MKL_INT* n, double* t,
                       const MKL_INT* ldt, double* q, const MKL_INT* ldq,
                       const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                       double* work, MKL_INT* info );
void __stdcall dlaexc_( const MKL_INT* wantq, const MKL_INT* n, double* t,
                        const MKL_INT* ldt, double* q, const MKL_INT* ldq,
                        const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                        double* work, MKL_INT* info );

void __stdcall DLAG2( const double* a, const MKL_INT* lda, const double* b,
                      const MKL_INT* ldb, const double* safmin, double* scale1,
                      double* scale2, double* wr1, double* wr2, double* wi );
void __stdcall DLAG2_( const double* a, const MKL_INT* lda, const double* b,
                       const MKL_INT* ldb, const double* safmin, double* scale1,
                       double* scale2, double* wr1, double* wr2, double* wi );
void __stdcall dlag2( const double* a, const MKL_INT* lda, const double* b,
                      const MKL_INT* ldb, const double* safmin, double* scale1,
                      double* scale2, double* wr1, double* wr2, double* wi );
void __stdcall dlag2_( const double* a, const MKL_INT* lda, const double* b,
                       const MKL_INT* ldb, const double* safmin, double* scale1,
                       double* scale2, double* wr1, double* wr2, double* wi );

void __stdcall DLAG2S( const MKL_INT* m, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, float* sa, const MKL_INT* ldsa,
                       MKL_INT* info );
void __stdcall DLAG2S_( const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, float* sa, const MKL_INT* ldsa,
                        MKL_INT* info );
void __stdcall dlag2s( const MKL_INT* m, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, float* sa, const MKL_INT* ldsa,
                       MKL_INT* info );
void __stdcall dlag2s_( const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, float* sa, const MKL_INT* ldsa,
                        MKL_INT* info );

void __stdcall DLAGS2( const MKL_INT* upper, const double* a1, const double* a2,
                       const double* a3, const double* b1, const double* b2,
                       const double* b3, double* csu, double* snu, double* csv,
                       double* snv, double* csq, double* snq );
void __stdcall DLAGS2_( const MKL_INT* upper, const double* a1, const double* a2,
                        const double* a3, const double* b1, const double* b2,
                        const double* b3, double* csu, double* snu, double* csv,
                        double* snv, double* csq, double* snq );
void __stdcall dlags2( const MKL_INT* upper, const double* a1, const double* a2,
                       const double* a3, const double* b1, const double* b2,
                       const double* b3, double* csu, double* snu, double* csv,
                       double* snv, double* csq, double* snq );
void __stdcall dlags2_( const MKL_INT* upper, const double* a1, const double* a2,
                        const double* a3, const double* b1, const double* b2,
                        const double* b3, double* csu, double* snu, double* csv,
                        double* snv, double* csq, double* snq );

void __stdcall DLAGTF( const MKL_INT* n, double* a, const double* lambda, double* b,
                       double* c, const double* tol, double* d, MKL_INT* in,
                       MKL_INT* info );
void __stdcall DLAGTF_( const MKL_INT* n, double* a, const double* lambda, double* b,
                        double* c, const double* tol, double* d, MKL_INT* in,
                        MKL_INT* info );
void __stdcall dlagtf( const MKL_INT* n, double* a, const double* lambda, double* b,
                       double* c, const double* tol, double* d, MKL_INT* in,
                       MKL_INT* info );
void __stdcall dlagtf_( const MKL_INT* n, double* a, const double* lambda, double* b,
                        double* c, const double* tol, double* d, MKL_INT* in,
                        MKL_INT* info );

void __stdcall DLAGTM( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* alpha, const double* dl, const double* d,
                       const double* du, const double* x, const MKL_INT* ldx,
                       const double* beta, double* b, const MKL_INT* ldb );
void __stdcall DLAGTM_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* alpha, const double* dl, const double* d,
                        const double* du, const double* x, const MKL_INT* ldx,
                        const double* beta, double* b, const MKL_INT* ldb );
void __stdcall dlagtm( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* alpha, const double* dl, const double* d,
                       const double* du, const double* x, const MKL_INT* ldx,
                       const double* beta, double* b, const MKL_INT* ldb );
void __stdcall dlagtm_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* alpha, const double* dl, const double* d,
                        const double* du, const double* x, const MKL_INT* ldx,
                        const double* beta, double* b, const MKL_INT* ldb );

void __stdcall DLAGTS( const MKL_INT* job, const MKL_INT* n, const double* a,
                       const double* b, const double* c, const double* d,
                       const MKL_INT* in, double* y, double* tol, MKL_INT* info );
void __stdcall DLAGTS_( const MKL_INT* job, const MKL_INT* n, const double* a,
                        const double* b, const double* c, const double* d,
                        const MKL_INT* in, double* y, double* tol, MKL_INT* info );
void __stdcall dlagts( const MKL_INT* job, const MKL_INT* n, const double* a,
                       const double* b, const double* c, const double* d,
                       const MKL_INT* in, double* y, double* tol, MKL_INT* info );
void __stdcall dlagts_( const MKL_INT* job, const MKL_INT* n, const double* a,
                        const double* b, const double* c, const double* d,
                        const MKL_INT* in, double* y, double* tol, MKL_INT* info );

void __stdcall DLAGV2( double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       double* alphar, double* alphai, double* beta, double* csl,
                       double* snl, double* csr, double* snr );
void __stdcall DLAGV2_( double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* alphar, double* alphai, double* beta, double* csl,
                        double* snl, double* csr, double* snr );
void __stdcall dlagv2( double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       double* alphar, double* alphai, double* beta, double* csl,
                       double* snl, double* csr, double* snr );
void __stdcall dlagv2_( double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* alphar, double* alphai, double* beta, double* csl,
                        double* snl, double* csr, double* snr );

void __stdcall DLAHQR( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                       const MKL_INT* ldh, double* wr, double* wi, const MKL_INT* iloz,
                       const MKL_INT* ihiz, double* z, const MKL_INT* ldz,
                       MKL_INT* info );
void __stdcall DLAHQR_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                        const MKL_INT* ldh, double* wr, double* wi, const MKL_INT* iloz,
                        const MKL_INT* ihiz, double* z, const MKL_INT* ldz,
                        MKL_INT* info );
void __stdcall dlahqr( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                       const MKL_INT* ldh, double* wr, double* wi, const MKL_INT* iloz,
                       const MKL_INT* ihiz, double* z, const MKL_INT* ldz,
                       MKL_INT* info );
void __stdcall dlahqr_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                        const MKL_INT* ldh, double* wr, double* wi, const MKL_INT* iloz,
                        const MKL_INT* ihiz, double* z, const MKL_INT* ldz,
                        MKL_INT* info );

void __stdcall DLAHR2( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, double* a,
                       const MKL_INT* lda, double* tau, double* t, const MKL_INT* ldt,
                       double* y, const MKL_INT* ldy );
void __stdcall DLAHR2_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, double* a,
                        const MKL_INT* lda, double* tau, double* t, const MKL_INT* ldt,
                        double* y, const MKL_INT* ldy );
void __stdcall dlahr2( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, double* a,
                       const MKL_INT* lda, double* tau, double* t, const MKL_INT* ldt,
                       double* y, const MKL_INT* ldy );
void __stdcall dlahr2_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, double* a,
                        const MKL_INT* lda, double* tau, double* t, const MKL_INT* ldt,
                        double* y, const MKL_INT* ldy );

void __stdcall DLAHRD( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, double* a,
                       const MKL_INT* lda, double* tau, double* t, const MKL_INT* ldt,
                       double* y, const MKL_INT* ldy );
void __stdcall DLAHRD_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, double* a,
                        const MKL_INT* lda, double* tau, double* t, const MKL_INT* ldt,
                        double* y, const MKL_INT* ldy );
void __stdcall dlahrd( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, double* a,
                       const MKL_INT* lda, double* tau, double* t, const MKL_INT* ldt,
                       double* y, const MKL_INT* ldy );
void __stdcall dlahrd_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, double* a,
                        const MKL_INT* lda, double* tau, double* t, const MKL_INT* ldt,
                        double* y, const MKL_INT* ldy );

void __stdcall DLAIC1( const MKL_INT* job, const MKL_INT* j, const double* x,
                       const double* sest, const double* w, const double* gamma,
                       double* sestpr, double* s, double* c );
void __stdcall DLAIC1_( const MKL_INT* job, const MKL_INT* j, const double* x,
                        const double* sest, const double* w, const double* gamma,
                        double* sestpr, double* s, double* c );
void __stdcall dlaic1( const MKL_INT* job, const MKL_INT* j, const double* x,
                       const double* sest, const double* w, const double* gamma,
                       double* sestpr, double* s, double* c );
void __stdcall dlaic1_( const MKL_INT* job, const MKL_INT* j, const double* x,
                        const double* sest, const double* w, const double* gamma,
                        double* sestpr, double* s, double* c );

MKL_INT __stdcall DLAISNAN( const double* din1, const double* din2 );
MKL_INT __stdcall DLAISNAN_( const double* din1, const double* din2 );
MKL_INT __stdcall dlaisnan( const double* din1, const double* din2 );
MKL_INT __stdcall dlaisnan_( const double* din1, const double* din2 );

void __stdcall DLALN2( const MKL_INT* ltrans, const MKL_INT* na, const MKL_INT* nw,
                       const double* smin, const double* ca, const double* a,
                       const MKL_INT* lda, const double* d1, const double* d2,
                       const double* b, const MKL_INT* ldb, const double* wr,
                       const double* wi, double* x, const MKL_INT* ldx, double* scale,
                       double* xnorm, MKL_INT* info );
void __stdcall DLALN2_( const MKL_INT* ltrans, const MKL_INT* na, const MKL_INT* nw,
                        const double* smin, const double* ca, const double* a,
                        const MKL_INT* lda, const double* d1, const double* d2,
                        const double* b, const MKL_INT* ldb, const double* wr,
                        const double* wi, double* x, const MKL_INT* ldx, double* scale,
                        double* xnorm, MKL_INT* info );
void __stdcall dlaln2( const MKL_INT* ltrans, const MKL_INT* na, const MKL_INT* nw,
                       const double* smin, const double* ca, const double* a,
                       const MKL_INT* lda, const double* d1, const double* d2,
                       const double* b, const MKL_INT* ldb, const double* wr,
                       const double* wi, double* x, const MKL_INT* ldx, double* scale,
                       double* xnorm, MKL_INT* info );
void __stdcall dlaln2_( const MKL_INT* ltrans, const MKL_INT* na, const MKL_INT* nw,
                        const double* smin, const double* ca, const double* a,
                        const MKL_INT* lda, const double* d1, const double* d2,
                        const double* b, const MKL_INT* ldb, const double* wr,
                        const double* wi, double* x, const MKL_INT* ldx, double* scale,
                        double* xnorm, MKL_INT* info );

void __stdcall DLALS0( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, const MKL_INT* nrhs, double* b,
                       const MKL_INT* ldb, double* bx, const MKL_INT* ldbx,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const double* givnum,
                       const MKL_INT* ldgnum, const double* poles, const double* difl,
                       const double* difr, const double* z, const MKL_INT* k,
                       const double* c, const double* s, double* work, MKL_INT* info );
void __stdcall DLALS0_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, const MKL_INT* nrhs, double* b,
                        const MKL_INT* ldb, double* bx, const MKL_INT* ldbx,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const MKL_INT* ldgcol,
                        const double* givnum, const MKL_INT* ldgnum, const double* poles,
                        const double* difl, const double* difr, const double* z,
                        const MKL_INT* k, const double* c, const double* s, double* work,
                        MKL_INT* info );
void __stdcall dlals0( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, const MKL_INT* nrhs, double* b,
                       const MKL_INT* ldb, double* bx, const MKL_INT* ldbx,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const double* givnum,
                       const MKL_INT* ldgnum, const double* poles, const double* difl,
                       const double* difr, const double* z, const MKL_INT* k,
                       const double* c, const double* s, double* work, MKL_INT* info );
void __stdcall dlals0_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, const MKL_INT* nrhs, double* b,
                        const MKL_INT* ldb, double* bx, const MKL_INT* ldbx,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const MKL_INT* ldgcol,
                        const double* givnum, const MKL_INT* ldgnum, const double* poles,
                        const double* difl, const double* difr, const double* z,
                        const MKL_INT* k, const double* c, const double* s, double* work,
                        MKL_INT* info );

void __stdcall DLALSA( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, double* b, const MKL_INT* ldb, double* bx,
                       const MKL_INT* ldbx, const double* u, const MKL_INT* ldu,
                       const double* vt, const MKL_INT* k, const double* difl,
                       const double* difr, const double* z, const double* poles,
                       const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const MKL_INT* perm, const double* givnum,
                       const double* c, const double* s, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall DLALSA_( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, double* b, const MKL_INT* ldb, double* bx,
                        const MKL_INT* ldbx, const double* u, const MKL_INT* ldu,
                        const double* vt, const MKL_INT* k, const double* difl,
                        const double* difr, const double* z, const double* poles,
                        const MKL_INT* givptr, const MKL_INT* givcol,
                        const MKL_INT* ldgcol, const MKL_INT* perm, const double* givnum,
                        const double* c, const double* s, double* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall dlalsa( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, double* b, const MKL_INT* ldb, double* bx,
                       const MKL_INT* ldbx, const double* u, const MKL_INT* ldu,
                       const double* vt, const MKL_INT* k, const double* difl,
                       const double* difr, const double* z, const double* poles,
                       const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const MKL_INT* perm, const double* givnum,
                       const double* c, const double* s, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall dlalsa_( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, double* b, const MKL_INT* ldb, double* bx,
                        const MKL_INT* ldbx, const double* u, const MKL_INT* ldu,
                        const double* vt, const MKL_INT* k, const double* difl,
                        const double* difr, const double* z, const double* poles,
                        const MKL_INT* givptr, const MKL_INT* givcol,
                        const MKL_INT* ldgcol, const MKL_INT* perm, const double* givnum,
                        const double* c, const double* s, double* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall DLALSD( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, double* d, double* e, double* b,
                       const MKL_INT* ldb, const double* rcond, MKL_INT* rank,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DLALSD_( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, double* d, double* e, double* b,
                        const MKL_INT* ldb, const double* rcond, MKL_INT* rank,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dlalsd( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, double* d, double* e, double* b,
                       const MKL_INT* ldb, const double* rcond, MKL_INT* rank,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dlalsd_( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, double* d, double* e, double* b,
                        const MKL_INT* ldb, const double* rcond, MKL_INT* rank,
                        double* work, MKL_INT* iwork, MKL_INT* info );

double __stdcall DLAMCH( const char* cmach , int cmach_len);
double __stdcall DLAMCH_( const char* cmach , int cmach_len);
double __stdcall dlamch( const char* cmach , int cmach_len);
double __stdcall dlamch_( const char* cmach , int cmach_len);

void __stdcall DLAMC1( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, MKL_INT* ieee1 );
void __stdcall DLAMC1_( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, MKL_INT* ieee1 );
void __stdcall dlamc1( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, MKL_INT* ieee1 );
void __stdcall dlamc1_( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, MKL_INT* ieee1 );

void __stdcall DLAMC2( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, double* eps,
                       MKL_INT* emin, double* rmin, MKL_INT* emax, double* rmax );
void __stdcall DLAMC2_( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, double* eps,
                        MKL_INT* emin, double* rmin, MKL_INT* emax, double* rmax );
void __stdcall dlamc2( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, double* eps,
                       MKL_INT* emin, double* rmin, MKL_INT* emax, double* rmax );
void __stdcall dlamc2_( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, double* eps,
                        MKL_INT* emin, double* rmin, MKL_INT* emax, double* rmax );

double __stdcall DLAMC3( const double* a, const double* b );
double __stdcall DLAMC3_( const double* a, const double* b );
double __stdcall dlamc3( const double* a, const double* b );
double __stdcall dlamc3_( const double* a, const double* b );

void __stdcall DLAMC4( MKL_INT* emin, const double* start, const MKL_INT* base );
void __stdcall DLAMC4_( MKL_INT* emin, const double* start, const MKL_INT* base );
void __stdcall dlamc4( MKL_INT* emin, const double* start, const MKL_INT* base );
void __stdcall dlamc4_( MKL_INT* emin, const double* start, const MKL_INT* base );

void __stdcall DLAMC5( const MKL_INT* beta, const MKL_INT* p, const MKL_INT* emin,
                       const MKL_INT* ieee, MKL_INT* emax, double* rmax );
void __stdcall DLAMC5_( const MKL_INT* beta, const MKL_INT* p, const MKL_INT* emin,
                        const MKL_INT* ieee, MKL_INT* emax, double* rmax );
void __stdcall dlamc5( const MKL_INT* beta, const MKL_INT* p, const MKL_INT* emin,
                       const MKL_INT* ieee, MKL_INT* emax, double* rmax );
void __stdcall dlamc5_( const MKL_INT* beta, const MKL_INT* p, const MKL_INT* emin,
                        const MKL_INT* ieee, MKL_INT* emax, double* rmax );

void __stdcall DLAMRG( const MKL_INT* n1, const MKL_INT* n2, const double* a,
                       const MKL_INT* dtrd1, const MKL_INT* dtrd2, MKL_INT* index );
void __stdcall DLAMRG_( const MKL_INT* n1, const MKL_INT* n2, const double* a,
                        const MKL_INT* dtrd1, const MKL_INT* dtrd2, MKL_INT* index );
void __stdcall dlamrg( const MKL_INT* n1, const MKL_INT* n2, const double* a,
                       const MKL_INT* dtrd1, const MKL_INT* dtrd2, MKL_INT* index );
void __stdcall dlamrg_( const MKL_INT* n1, const MKL_INT* n2, const double* a,
                        const MKL_INT* dtrd1, const MKL_INT* dtrd2, MKL_INT* index );

MKL_INT __stdcall DLANEG( const MKL_INT* n, const double* d, const double* lld,
                          const double* sigma, const double* pivmin, const MKL_INT* r );
MKL_INT __stdcall DLANEG_( const MKL_INT* n, const double* d, const double* lld,
                           const double* sigma, const double* pivmin, const MKL_INT* r );
MKL_INT __stdcall dlaneg( const MKL_INT* n, const double* d, const double* lld,
                          const double* sigma, const double* pivmin, const MKL_INT* r );
MKL_INT __stdcall dlaneg_( const MKL_INT* n, const double* d, const double* lld,
                           const double* sigma, const double* pivmin, const MKL_INT* r );

double __stdcall DLANGB( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                         double* work );
double __stdcall DLANGB_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                          const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                          double* work );
double __stdcall dlangb( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                         double* work );
double __stdcall dlangb_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                          const MKL_INT* ku, const double* ab, const MKL_INT* ldab,
                          double* work );

double __stdcall DLANGE( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                         const double* a, const MKL_INT* lda, double* work );
double __stdcall DLANGE_( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                          const double* a, const MKL_INT* lda, double* work );
double __stdcall dlange( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                         const double* a, const MKL_INT* lda, double* work );
double __stdcall dlange_( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                          const double* a, const MKL_INT* lda, double* work );

double __stdcall DLANGT( const char* norm, int norm_len, const MKL_INT* n, const double* dl,
                         const double* d, const double* du );
double __stdcall DLANGT_( const char* norm, int norm_len, const MKL_INT* n, const double* dl,
                          const double* d, const double* du );
double __stdcall dlangt( const char* norm, int norm_len, const MKL_INT* n, const double* dl,
                         const double* d, const double* du );
double __stdcall dlangt_( const char* norm, int norm_len, const MKL_INT* n, const double* dl,
                          const double* d, const double* du );

double __stdcall DLANHS( const char* norm, int norm_len, const MKL_INT* n, const double* a,
                         const MKL_INT* lda, double* work );
double __stdcall DLANHS_( const char* norm, int norm_len, const MKL_INT* n, const double* a,
                          const MKL_INT* lda, double* work );
double __stdcall dlanhs( const char* norm, int norm_len, const MKL_INT* n, const double* a,
                         const MKL_INT* lda, double* work );
double __stdcall dlanhs_( const char* norm, int norm_len, const MKL_INT* n, const double* a,
                          const MKL_INT* lda, double* work );

double __stdcall DLANSB( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* k, const double* ab, const MKL_INT* ldab,
                         double* work );
double __stdcall DLANSB_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* k, const double* ab, const MKL_INT* ldab,
                          double* work );
double __stdcall dlansb( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* k, const double* ab, const MKL_INT* ldab,
                         double* work );
double __stdcall dlansb_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* k, const double* ab, const MKL_INT* ldab,
                          double* work );

double __stdcall DLANSF( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                         const MKL_INT* n, const double* a, double* work );
double __stdcall DLANSF_( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                          const MKL_INT* n, const double* a, double* work );
double __stdcall dlansf( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                         const MKL_INT* n, const double* a, double* work );
double __stdcall dlansf_( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                          const MKL_INT* n, const double* a, double* work );

double __stdcall DLANSP( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const double* ap, double* work );
double __stdcall DLANSP_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const double* ap, double* work );
double __stdcall dlansp( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const double* ap, double* work );
double __stdcall dlansp_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const double* ap, double* work );

double __stdcall DLANST( const char* norm, int norm_len, const MKL_INT* n, const double* d,
                         const double* e );
double __stdcall DLANST_( const char* norm, int norm_len, const MKL_INT* n, const double* d,
                          const double* e );
double __stdcall dlanst( const char* norm, int norm_len, const MKL_INT* n, const double* d,
                         const double* e );
double __stdcall dlanst_( const char* norm, int norm_len, const MKL_INT* n, const double* d,
                          const double* e );

double __stdcall DLANSY( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const double* a, const MKL_INT* lda, double* work );
double __stdcall DLANSY_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const double* a, const MKL_INT* lda, double* work );
double __stdcall dlansy( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const double* a, const MKL_INT* lda, double* work );
double __stdcall dlansy_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const double* a, const MKL_INT* lda, double* work );

double __stdcall DLANTB( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const MKL_INT* k, const double* ab,
                         const MKL_INT* ldab, double* work );
double __stdcall DLANTB_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                          const MKL_INT* n, const MKL_INT* k, const double* ab,
                          const MKL_INT* ldab, double* work );
double __stdcall dlantb( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const MKL_INT* k, const double* ab,
                         const MKL_INT* ldab, double* work );
double __stdcall dlantb_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                          const MKL_INT* n, const MKL_INT* k, const double* ab,
                          const MKL_INT* ldab, double* work );

double __stdcall DLANTP( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const double* ap, double* work );
double __stdcall DLANTP_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                          const MKL_INT* n, const double* ap, double* work );
double __stdcall dlantp( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const double* ap, double* work );
double __stdcall dlantp_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                          const MKL_INT* n, const double* ap, double* work );

double __stdcall DLANTR( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* m, const MKL_INT* n, const double* a,
                         const MKL_INT* lda, double* work );
double __stdcall DLANTR_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                          const MKL_INT* m, const MKL_INT* n, const double* a,
                          const MKL_INT* lda, double* work );
double __stdcall dlantr( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* m, const MKL_INT* n, const double* a,
                         const MKL_INT* lda, double* work );
double __stdcall dlantr_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                          const MKL_INT* m, const MKL_INT* n, const double* a,
                          const MKL_INT* lda, double* work );

void __stdcall DLANV2( double* a, double* b, double* c, double* d, double* rt1r,
                       double* rt1i, double* rt2r, double* rt2i, double* cs,
                       double* sn );
void __stdcall DLANV2_( double* a, double* b, double* c, double* d, double* rt1r,
                        double* rt1i, double* rt2r, double* rt2i, double* cs,
                        double* sn );
void __stdcall dlanv2( double* a, double* b, double* c, double* d, double* rt1r,
                       double* rt1i, double* rt2r, double* rt2i, double* cs,
                       double* sn );
void __stdcall dlanv2_( double* a, double* b, double* c, double* d, double* rt1r,
                        double* rt1i, double* rt2r, double* rt2i, double* cs,
                        double* sn );

void __stdcall DLAPLL( const MKL_INT* n, double* x, const MKL_INT* incx, double* y,
                       const MKL_INT* incy, double* ssmin );
void __stdcall DLAPLL_( const MKL_INT* n, double* x, const MKL_INT* incx, double* y,
                        const MKL_INT* incy, double* ssmin );
void __stdcall dlapll( const MKL_INT* n, double* x, const MKL_INT* incx, double* y,
                       const MKL_INT* incy, double* ssmin );
void __stdcall dlapll_( const MKL_INT* n, double* x, const MKL_INT* incx, double* y,
                        const MKL_INT* incy, double* ssmin );

void __stdcall DLAPMT( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       double* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall DLAPMT_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        double* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall dlapmt( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       double* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall dlapmt_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        double* x, const MKL_INT* ldx, MKL_INT* k );

double __stdcall DLAPY2( const double* x, const double* y );
double __stdcall DLAPY2_( const double* x, const double* y );
double __stdcall dlapy2( const double* x, const double* y );
double __stdcall dlapy2_( const double* x, const double* y );

double __stdcall DLAPY3( const double* x, const double* y, const double* z );
double __stdcall DLAPY3_( const double* x, const double* y, const double* z );
double __stdcall dlapy3( const double* x, const double* y, const double* z );
double __stdcall dlapy3_( const double* x, const double* y, const double* z );

void __stdcall DLAQGB( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, double* ab, const MKL_INT* ldab,
                       const double* r, const double* c, const double* rowcnd,
                       const double* colcnd, const double* amax, char* equed , int equed_len);
void __stdcall DLAQGB_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, double* ab, const MKL_INT* ldab,
                        const double* r, const double* c, const double* rowcnd,
                        const double* colcnd, const double* amax, char* equed , int equed_len);
void __stdcall dlaqgb( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, double* ab, const MKL_INT* ldab,
                       const double* r, const double* c, const double* rowcnd,
                       const double* colcnd, const double* amax, char* equed , int equed_len);
void __stdcall dlaqgb_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, double* ab, const MKL_INT* ldab,
                        const double* r, const double* c, const double* rowcnd,
                        const double* colcnd, const double* amax, char* equed , int equed_len);

void __stdcall DLAQGE( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       const double* r, const double* c, const double* rowcnd,
                       const double* colcnd, const double* amax, char* equed , int equed_len);
void __stdcall DLAQGE_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, const double* r, const double* c,
                        const double* rowcnd, const double* colcnd, const double* amax,
                        char* equed , int equed_len);
void __stdcall dlaqge( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       const double* r, const double* c, const double* rowcnd,
                       const double* colcnd, const double* amax, char* equed , int equed_len);
void __stdcall dlaqge_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, const double* r, const double* c,
                        const double* rowcnd, const double* colcnd, const double* amax,
                        char* equed , int equed_len);

void __stdcall DLAQP2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       double* a, const MKL_INT* lda, MKL_INT* jpvt, double* tau,
                       double* vn1, double* vn2, double* work );
void __stdcall DLAQP2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        double* a, const MKL_INT* lda, MKL_INT* jpvt, double* tau,
                        double* vn1, double* vn2, double* work );
void __stdcall dlaqp2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       double* a, const MKL_INT* lda, MKL_INT* jpvt, double* tau,
                       double* vn1, double* vn2, double* work );
void __stdcall dlaqp2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        double* a, const MKL_INT* lda, MKL_INT* jpvt, double* tau,
                        double* vn1, double* vn2, double* work );

void __stdcall DLAQPS( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       const MKL_INT* nb, MKL_INT* kb, double* a, const MKL_INT* lda,
                       MKL_INT* jpvt, double* tau, double* vn1, double* vn2,
                       double* auxv, double* f, const MKL_INT* ldf );
void __stdcall DLAQPS_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        const MKL_INT* nb, MKL_INT* kb, double* a, const MKL_INT* lda,
                        MKL_INT* jpvt, double* tau, double* vn1, double* vn2,
                        double* auxv, double* f, const MKL_INT* ldf );
void __stdcall dlaqps( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       const MKL_INT* nb, MKL_INT* kb, double* a, const MKL_INT* lda,
                       MKL_INT* jpvt, double* tau, double* vn1, double* vn2,
                       double* auxv, double* f, const MKL_INT* ldf );
void __stdcall dlaqps_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        const MKL_INT* nb, MKL_INT* kb, double* a, const MKL_INT* lda,
                        MKL_INT* jpvt, double* tau, double* vn1, double* vn2,
                        double* auxv, double* f, const MKL_INT* ldf );

void __stdcall DLAQR0( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                       const MKL_INT* ldh, double* wr, double* wi, const MKL_INT* iloz,
                       const MKL_INT* ihiz, double* z, const MKL_INT* ldz, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DLAQR0_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                        const MKL_INT* ldh, double* wr, double* wi, const MKL_INT* iloz,
                        const MKL_INT* ihiz, double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dlaqr0( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                       const MKL_INT* ldh, double* wr, double* wi, const MKL_INT* iloz,
                       const MKL_INT* ihiz, double* z, const MKL_INT* ldz, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dlaqr0_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                        const MKL_INT* ldh, double* wr, double* wi, const MKL_INT* iloz,
                        const MKL_INT* ihiz, double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DLAQR1( const MKL_INT* n, const double* h, const MKL_INT* ldh,
                       const double* sr1, double* si1, double* sr2, double* si2,
                       double* v );
void __stdcall DLAQR1_( const MKL_INT* n, const double* h, const MKL_INT* ldh,
                        const double* sr1, double* si1, double* sr2, double* si2,
                        double* v );
void __stdcall dlaqr1( const MKL_INT* n, const double* h, const MKL_INT* ldh,
                       const double* sr1, double* si1, double* sr2, double* si2,
                       double* v );
void __stdcall dlaqr1_( const MKL_INT* n, const double* h, const MKL_INT* ldh,
                        const double* sr1, double* si1, double* sr2, double* si2,
                        double* v );

void __stdcall DLAQR2( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       double* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, double* z, const MKL_INT* ldz, MKL_INT* ns,
                       MKL_INT* nd, double* sr, double* si, double* v,
                       const MKL_INT* ldv, const MKL_INT* nh, double* t,
                       const MKL_INT* ldt, const MKL_INT* nv, double* wv,
                       const MKL_INT* ldwv, double* work, const MKL_INT* lwork );
void __stdcall DLAQR2_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        double* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, double* z, const MKL_INT* ldz, MKL_INT* ns,
                        MKL_INT* nd, double* sr, double* si, double* v,
                        const MKL_INT* ldv, const MKL_INT* nh, double* t,
                        const MKL_INT* ldt, const MKL_INT* nv, double* wv,
                        const MKL_INT* ldwv, double* work, const MKL_INT* lwork );
void __stdcall dlaqr2( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       double* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, double* z, const MKL_INT* ldz, MKL_INT* ns,
                       MKL_INT* nd, double* sr, double* si, double* v,
                       const MKL_INT* ldv, const MKL_INT* nh, double* t,
                       const MKL_INT* ldt, const MKL_INT* nv, double* wv,
                       const MKL_INT* ldwv, double* work, const MKL_INT* lwork );
void __stdcall dlaqr2_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        double* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, double* z, const MKL_INT* ldz, MKL_INT* ns,
                        MKL_INT* nd, double* sr, double* si, double* v,
                        const MKL_INT* ldv, const MKL_INT* nh, double* t,
                        const MKL_INT* ldt, const MKL_INT* nv, double* wv,
                        const MKL_INT* ldwv, double* work, const MKL_INT* lwork );

void __stdcall DLAQR3( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       double* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, double* z, const MKL_INT* ldz, MKL_INT* ns,
                       MKL_INT* nd, double* sr, double* si, double* v,
                       const MKL_INT* ldv, const MKL_INT* nh, double* t,
                       const MKL_INT* ldt, const MKL_INT* nv, double* wv,
                       const MKL_INT* ldwv, double* work, const MKL_INT* lwork );
void __stdcall DLAQR3_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        double* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, double* z, const MKL_INT* ldz, MKL_INT* ns,
                        MKL_INT* nd, double* sr, double* si, double* v,
                        const MKL_INT* ldv, const MKL_INT* nh, double* t,
                        const MKL_INT* ldt, const MKL_INT* nv, double* wv,
                        const MKL_INT* ldwv, double* work, const MKL_INT* lwork );
void __stdcall dlaqr3( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       double* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, double* z, const MKL_INT* ldz, MKL_INT* ns,
                       MKL_INT* nd, double* sr, double* si, double* v,
                       const MKL_INT* ldv, const MKL_INT* nh, double* t,
                       const MKL_INT* ldt, const MKL_INT* nv, double* wv,
                       const MKL_INT* ldwv, double* work, const MKL_INT* lwork );
void __stdcall dlaqr3_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        double* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, double* z, const MKL_INT* ldz, MKL_INT* ns,
                        MKL_INT* nd, double* sr, double* si, double* v,
                        const MKL_INT* ldv, const MKL_INT* nh, double* t,
                        const MKL_INT* ldt, const MKL_INT* nv, double* wv,
                        const MKL_INT* ldwv, double* work, const MKL_INT* lwork );

void __stdcall DLAQR4( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                       const MKL_INT* ldh, double* wr, double* wi, const MKL_INT* iloz,
                       const MKL_INT* ihiz, double* z, const MKL_INT* ldz, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DLAQR4_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                        const MKL_INT* ldh, double* wr, double* wi, const MKL_INT* iloz,
                        const MKL_INT* ihiz, double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dlaqr4( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                       const MKL_INT* ldh, double* wr, double* wi, const MKL_INT* iloz,
                       const MKL_INT* ihiz, double* z, const MKL_INT* ldz, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dlaqr4_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, double* h,
                        const MKL_INT* ldh, double* wr, double* wi, const MKL_INT* iloz,
                        const MKL_INT* ihiz, double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DLAQR5( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* kacc22,
                       const MKL_INT* n, const MKL_INT* ktop, const MKL_INT* kbot,
                       const MKL_INT* nshfts, double* sr, double* si, double* h,
                       const MKL_INT* ldh, const MKL_INT* iloz, const MKL_INT* ihiz,
                       double* z, const MKL_INT* ldz, double* v, const MKL_INT* ldv,
                       double* u, const MKL_INT* ldu, const MKL_INT* nv, double* wv,
                       const MKL_INT* ldwv, const MKL_INT* nh, double* wh,
                       const MKL_INT* ldwh );
void __stdcall DLAQR5_( const MKL_INT* wantt, const MKL_INT* wantz,
                        const MKL_INT* kacc22, const MKL_INT* n, const MKL_INT* ktop,
                        const MKL_INT* kbot, const MKL_INT* nshfts, double* sr,
                        double* si, double* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, double* z, const MKL_INT* ldz, double* v,
                        const MKL_INT* ldv, double* u, const MKL_INT* ldu,
                        const MKL_INT* nv, double* wv, const MKL_INT* ldwv,
                        const MKL_INT* nh, double* wh, const MKL_INT* ldwh );
void __stdcall dlaqr5( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* kacc22,
                       const MKL_INT* n, const MKL_INT* ktop, const MKL_INT* kbot,
                       const MKL_INT* nshfts, double* sr, double* si, double* h,
                       const MKL_INT* ldh, const MKL_INT* iloz, const MKL_INT* ihiz,
                       double* z, const MKL_INT* ldz, double* v, const MKL_INT* ldv,
                       double* u, const MKL_INT* ldu, const MKL_INT* nv, double* wv,
                       const MKL_INT* ldwv, const MKL_INT* nh, double* wh,
                       const MKL_INT* ldwh );
void __stdcall dlaqr5_( const MKL_INT* wantt, const MKL_INT* wantz,
                        const MKL_INT* kacc22, const MKL_INT* n, const MKL_INT* ktop,
                        const MKL_INT* kbot, const MKL_INT* nshfts, double* sr,
                        double* si, double* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, double* z, const MKL_INT* ldz, double* v,
                        const MKL_INT* ldv, double* u, const MKL_INT* ldu,
                        const MKL_INT* nv, double* wv, const MKL_INT* ldwv,
                        const MKL_INT* nh, double* wh, const MKL_INT* ldwh );

void __stdcall DLAQSB( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, double* ab,
                       const MKL_INT* ldab, const double* s, const double* scond,
                       const double* amax, char* equed , int equed_len);
void __stdcall DLAQSB_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        double* ab, const MKL_INT* ldab, const double* s,
                        const double* scond, const double* amax, char* equed , int equed_len);
void __stdcall dlaqsb( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, double* ab,
                       const MKL_INT* ldab, const double* s, const double* scond,
                       const double* amax, char* equed , int equed_len);
void __stdcall dlaqsb_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        double* ab, const MKL_INT* ldab, const double* s,
                        const double* scond, const double* amax, char* equed , int equed_len);

void __stdcall DLAQSP( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, const double* s,
                       const double* scond, const double* amax, char* equed , int equed_len);
void __stdcall DLAQSP_( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, const double* s,
                        const double* scond, const double* amax, char* equed , int equed_len);
void __stdcall dlaqsp( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, const double* s,
                       const double* scond, const double* amax, char* equed , int equed_len);
void __stdcall dlaqsp_( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, const double* s,
                        const double* scond, const double* amax, char* equed , int equed_len);

void __stdcall DLAQSY( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       const double* s, const double* scond, const double* amax,
                       char* equed , int equed_len);
void __stdcall DLAQSY_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, const double* s, const double* scond,
                        const double* amax, char* equed , int equed_len);
void __stdcall dlaqsy( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       const double* s, const double* scond, const double* amax,
                       char* equed , int equed_len);
void __stdcall dlaqsy_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, const double* s, const double* scond,
                        const double* amax, char* equed , int equed_len);

void __stdcall DLAQTR( const MKL_INT* ltran, const MKL_INT* lreal, const MKL_INT* n,
                       const double* t, const MKL_INT* ldt, const double* b,
                       const double* w, double* scale, double* x, double* work,
                       MKL_INT* info );
void __stdcall DLAQTR_( const MKL_INT* ltran, const MKL_INT* lreal, const MKL_INT* n,
                        const double* t, const MKL_INT* ldt, const double* b,
                        const double* w, double* scale, double* x, double* work,
                        MKL_INT* info );
void __stdcall dlaqtr( const MKL_INT* ltran, const MKL_INT* lreal, const MKL_INT* n,
                       const double* t, const MKL_INT* ldt, const double* b,
                       const double* w, double* scale, double* x, double* work,
                       MKL_INT* info );
void __stdcall dlaqtr_( const MKL_INT* ltran, const MKL_INT* lreal, const MKL_INT* n,
                        const double* t, const MKL_INT* ldt, const double* b,
                        const double* w, double* scale, double* x, double* work,
                        MKL_INT* info );

void __stdcall DLAR1V( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                       const double* lambda, const double* d, const double* l,
                       const double* ld, const double* lld, const double* pivmin,
                       const double* gaptol, double* z, const MKL_INT* wantnc,
                       MKL_INT* negcnt, double* ztz, double* mingma, MKL_INT* r,
                       MKL_INT* isuppz, double* nrminv, double* resid, double* rqcorr,
                       double* work );
void __stdcall DLAR1V_( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                        const double* lambda, const double* d, const double* l,
                        const double* ld, const double* lld, const double* pivmin,
                        const double* gaptol, double* z, const MKL_INT* wantnc,
                        MKL_INT* negcnt, double* ztz, double* mingma, MKL_INT* r,
                        MKL_INT* isuppz, double* nrminv, double* resid, double* rqcorr,
                        double* work );
void __stdcall dlar1v( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                       const double* lambda, const double* d, const double* l,
                       const double* ld, const double* lld, const double* pivmin,
                       const double* gaptol, double* z, const MKL_INT* wantnc,
                       MKL_INT* negcnt, double* ztz, double* mingma, MKL_INT* r,
                       MKL_INT* isuppz, double* nrminv, double* resid, double* rqcorr,
                       double* work );
void __stdcall dlar1v_( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                        const double* lambda, const double* d, const double* l,
                        const double* ld, const double* lld, const double* pivmin,
                        const double* gaptol, double* z, const MKL_INT* wantnc,
                        MKL_INT* negcnt, double* ztz, double* mingma, MKL_INT* r,
                        MKL_INT* isuppz, double* nrminv, double* resid, double* rqcorr,
                        double* work );

void __stdcall DLAR2V( const MKL_INT* n, double* x, double* y, double* z,
                       const MKL_INT* incx, const double* c, const double* s,
                       const MKL_INT* incc );
void __stdcall DLAR2V_( const MKL_INT* n, double* x, double* y, double* z,
                        const MKL_INT* incx, const double* c, const double* s,
                        const MKL_INT* incc );
void __stdcall dlar2v( const MKL_INT* n, double* x, double* y, double* z,
                       const MKL_INT* incx, const double* c, const double* s,
                       const MKL_INT* incc );
void __stdcall dlar2v_( const MKL_INT* n, double* x, double* y, double* z,
                        const MKL_INT* incx, const double* c, const double* s,
                        const MKL_INT* incc );

void __stdcall DLARFB( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const double* v, const MKL_INT* ldv,
                       const double* t, const MKL_INT* ldt, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* ldwork );
void __stdcall DLARFB_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const double* v, const MKL_INT* ldv,
                        const double* t, const MKL_INT* ldt, double* c,
                        const MKL_INT* ldc, double* work, const MKL_INT* ldwork );
void __stdcall dlarfb( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const double* v, const MKL_INT* ldv,
                       const double* t, const MKL_INT* ldt, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* ldwork );
void __stdcall dlarfb_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const double* v, const MKL_INT* ldv,
                        const double* t, const MKL_INT* ldt, double* c,
                        const MKL_INT* ldc, double* work, const MKL_INT* ldwork );

void __stdcall DLARF( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const double* v, const MKL_INT* incv, const double* tau, double* c,
                      const MKL_INT* ldc, double* work );
void __stdcall DLARF_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const double* v, const MKL_INT* incv, const double* tau,
                       double* c, const MKL_INT* ldc, double* work );
void __stdcall dlarf( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const double* v, const MKL_INT* incv, const double* tau, double* c,
                      const MKL_INT* ldc, double* work );
void __stdcall dlarf_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const double* v, const MKL_INT* incv, const double* tau,
                       double* c, const MKL_INT* ldc, double* work );

void __stdcall DLARFG( const MKL_INT* n, double* alpha, double* x, const MKL_INT* incx,
                       double* tau );
void __stdcall DLARFG_( const MKL_INT* n, double* alpha, double* x, const MKL_INT* incx,
                        double* tau );
void __stdcall dlarfg( const MKL_INT* n, double* alpha, double* x, const MKL_INT* incx,
                       double* tau );
void __stdcall dlarfg_( const MKL_INT* n, double* alpha, double* x, const MKL_INT* incx,
                        double* tau );

void __stdcall DLARFGP( const MKL_INT* n, double* alpha, double* x, const MKL_INT* incx,
                        double* tau );
void __stdcall DLARFGP_( const MKL_INT* n, double* alpha, double* x, const MKL_INT* incx,
                         double* tau );
void __stdcall dlarfgp( const MKL_INT* n, double* alpha, double* x, const MKL_INT* incx,
                        double* tau );
void __stdcall dlarfgp_( const MKL_INT* n, double* alpha, double* x, const MKL_INT* incx,
                         double* tau );

void __stdcall DLARFP( const MKL_INT* n, double* alpha, double* x, const MKL_INT* incx,
                       double* tau );
void __stdcall DLARFP_( const MKL_INT* n, double* alpha, double* x, const MKL_INT* incx,
                        double* tau );
void __stdcall dlarfp( const MKL_INT* n, double* alpha, double* x, const MKL_INT* incx,
                       double* tau );
void __stdcall dlarfp_( const MKL_INT* n, double* alpha, double* x, const MKL_INT* incx,
                        double* tau );

void __stdcall DLARFT( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, const double* v, const MKL_INT* ldv,
                       const double* tau, double* t, const MKL_INT* ldt );
void __stdcall DLARFT_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, const double* v, const MKL_INT* ldv,
                        const double* tau, double* t, const MKL_INT* ldt );
void __stdcall dlarft( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, const double* v, const MKL_INT* ldv,
                       const double* tau, double* t, const MKL_INT* ldt );
void __stdcall dlarft_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, const double* v, const MKL_INT* ldv,
                        const double* tau, double* t, const MKL_INT* ldt );

void __stdcall DLARFX( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const double* v, const double* tau, double* c, const MKL_INT* ldc,
                       double* work );
void __stdcall DLARFX_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const double* v, const double* tau, double* c,
                        const MKL_INT* ldc, double* work );
void __stdcall dlarfx( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const double* v, const double* tau, double* c, const MKL_INT* ldc,
                       double* work );
void __stdcall dlarfx_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const double* v, const double* tau, double* c,
                        const MKL_INT* ldc, double* work );

void __stdcall DLARGV( const MKL_INT* n, double* x, const MKL_INT* incx, double* y,
                       const MKL_INT* incy, double* c, const MKL_INT* incc );
void __stdcall DLARGV_( const MKL_INT* n, double* x, const MKL_INT* incx, double* y,
                        const MKL_INT* incy, double* c, const MKL_INT* incc );
void __stdcall dlargv( const MKL_INT* n, double* x, const MKL_INT* incx, double* y,
                       const MKL_INT* incy, double* c, const MKL_INT* incc );
void __stdcall dlargv_( const MKL_INT* n, double* x, const MKL_INT* incx, double* y,
                        const MKL_INT* incy, double* c, const MKL_INT* incc );

void __stdcall DLARNV( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                       double* x );
void __stdcall DLARNV_( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                        double* x );
void __stdcall dlarnv( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                       double* x );
void __stdcall dlarnv_( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                        double* x );

void __stdcall DLARRA( const MKL_INT* n, const double* d, double* e, double* e2,
                       const double* spltol, const double* tnrm, MKL_INT* nsplit,
                       MKL_INT* isplit, MKL_INT* info );
void __stdcall DLARRA_( const MKL_INT* n, const double* d, double* e, double* e2,
                        const double* spltol, const double* tnrm, MKL_INT* nsplit,
                        MKL_INT* isplit, MKL_INT* info );
void __stdcall dlarra( const MKL_INT* n, const double* d, double* e, double* e2,
                       const double* spltol, const double* tnrm, MKL_INT* nsplit,
                       MKL_INT* isplit, MKL_INT* info );
void __stdcall dlarra_( const MKL_INT* n, const double* d, double* e, double* e2,
                        const double* spltol, const double* tnrm, MKL_INT* nsplit,
                        MKL_INT* isplit, MKL_INT* info );

void __stdcall DLARRB( const MKL_INT* n, const double* d, const double* lld,
                       const MKL_INT* ifirst, const MKL_INT* ilast, const double* rtol1,
                       const double* rtol2, const MKL_INT* offset, double* w,
                       double* wgap, double* werr, double* work, MKL_INT* iwork,
                       const double* pivmin, const double* spdiam, const MKL_INT* twist,
                       MKL_INT* info );
void __stdcall DLARRB_( const MKL_INT* n, const double* d, const double* lld,
                        const MKL_INT* ifirst, const MKL_INT* ilast, const double* rtol1,
                        const double* rtol2, const MKL_INT* offset, double* w,
                        double* wgap, double* werr, double* work, MKL_INT* iwork,
                        const double* pivmin, const double* spdiam, const MKL_INT* twist,
                        MKL_INT* info );
void __stdcall dlarrb( const MKL_INT* n, const double* d, const double* lld,
                       const MKL_INT* ifirst, const MKL_INT* ilast, const double* rtol1,
                       const double* rtol2, const MKL_INT* offset, double* w,
                       double* wgap, double* werr, double* work, MKL_INT* iwork,
                       const double* pivmin, const double* spdiam, const MKL_INT* twist,
                       MKL_INT* info );
void __stdcall dlarrb_( const MKL_INT* n, const double* d, const double* lld,
                        const MKL_INT* ifirst, const MKL_INT* ilast, const double* rtol1,
                        const double* rtol2, const MKL_INT* offset, double* w,
                        double* wgap, double* werr, double* work, MKL_INT* iwork,
                        const double* pivmin, const double* spdiam, const MKL_INT* twist,
                        MKL_INT* info );

void __stdcall DLARRC( const char* jobt, int jobt_len, const MKL_INT* n, const double* vl,
                       const double* vu, const double* d, const double* e,
                       const double* pivmin, MKL_INT* eigcnt, MKL_INT* lcnt,
                       MKL_INT* rcnt, MKL_INT* info );
void __stdcall DLARRC_( const char* jobt, int jobt_len, const MKL_INT* n, const double* vl,
                        const double* vu, const double* d, const double* e,
                        const double* pivmin, MKL_INT* eigcnt, MKL_INT* lcnt,
                        MKL_INT* rcnt, MKL_INT* info );
void __stdcall dlarrc( const char* jobt, int jobt_len, const MKL_INT* n, const double* vl,
                       const double* vu, const double* d, const double* e,
                       const double* pivmin, MKL_INT* eigcnt, MKL_INT* lcnt,
                       MKL_INT* rcnt, MKL_INT* info );
void __stdcall dlarrc_( const char* jobt, int jobt_len, const MKL_INT* n, const double* vl,
                        const double* vu, const double* d, const double* e,
                        const double* pivmin, MKL_INT* eigcnt, MKL_INT* lcnt,
                        MKL_INT* rcnt, MKL_INT* info );

void __stdcall DLARRD( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* gers, const double* reltol,
                       const double* d, const double* e, const double* e2,
                       const double* pivmin, const MKL_INT* nsplit,
                       const MKL_INT* isplit, MKL_INT* m, double* w, double* werr,
                       double* wl, double* wu, MKL_INT* iblock, MKL_INT* indexw,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DLARRD_( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* gers, const double* reltol,
                        const double* d, const double* e, const double* e2,
                        const double* pivmin, const MKL_INT* nsplit,
                        const MKL_INT* isplit, MKL_INT* m, double* w, double* werr,
                        double* wl, double* wu, MKL_INT* iblock, MKL_INT* indexw,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dlarrd( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* gers, const double* reltol,
                       const double* d, const double* e, const double* e2,
                       const double* pivmin, const MKL_INT* nsplit,
                       const MKL_INT* isplit, MKL_INT* m, double* w, double* werr,
                       double* wl, double* wu, MKL_INT* iblock, MKL_INT* indexw,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dlarrd_( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* gers, const double* reltol,
                        const double* d, const double* e, const double* e2,
                        const double* pivmin, const MKL_INT* nsplit,
                        const MKL_INT* isplit, MKL_INT* m, double* w, double* werr,
                        double* wl, double* wu, MKL_INT* iblock, MKL_INT* indexw,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DLARRE( const char* range, int range_len, const MKL_INT* n, double* vl, double* vu,
                       const MKL_INT* il, const MKL_INT* iu, double* d, double* e,
                       double* e2, const double* rtol1, const double* rtol2,
                       const double* spltol, MKL_INT* nsplit, MKL_INT* isplit,
                       MKL_INT* m, double* w, double* werr, double* wgap,
                       MKL_INT* iblock, MKL_INT* indexw, double* gers, double* pivmin,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DLARRE_( const char* range, int range_len, const MKL_INT* n, double* vl, double* vu,
                        const MKL_INT* il, const MKL_INT* iu, double* d, double* e,
                        double* e2, const double* rtol1, const double* rtol2,
                        const double* spltol, MKL_INT* nsplit, MKL_INT* isplit,
                        MKL_INT* m, double* w, double* werr, double* wgap,
                        MKL_INT* iblock, MKL_INT* indexw, double* gers, double* pivmin,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dlarre( const char* range, int range_len, const MKL_INT* n, double* vl, double* vu,
                       const MKL_INT* il, const MKL_INT* iu, double* d, double* e,
                       double* e2, const double* rtol1, const double* rtol2,
                       const double* spltol, MKL_INT* nsplit, MKL_INT* isplit,
                       MKL_INT* m, double* w, double* werr, double* wgap,
                       MKL_INT* iblock, MKL_INT* indexw, double* gers, double* pivmin,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dlarre_( const char* range, int range_len, const MKL_INT* n, double* vl, double* vu,
                        const MKL_INT* il, const MKL_INT* iu, double* d, double* e,
                        double* e2, const double* rtol1, const double* rtol2,
                        const double* spltol, MKL_INT* nsplit, MKL_INT* isplit,
                        MKL_INT* m, double* w, double* werr, double* wgap,
                        MKL_INT* iblock, MKL_INT* indexw, double* gers, double* pivmin,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DLARRF( const MKL_INT* n, const double* d, const double* l,
                       const double* ld, const MKL_INT* clstrt, const MKL_INT* clend,
                       const double* w, double* wgap, const double* werr,
                       const double* spdiam, const double* clgapl, double* clgapr,
                       const double* pivmin, double* sigma, double* dplus, double* lplus,
                       double* work, MKL_INT* info );
void __stdcall DLARRF_( const MKL_INT* n, const double* d, const double* l,
                        const double* ld, const MKL_INT* clstrt, const MKL_INT* clend,
                        const double* w, double* wgap, const double* werr,
                        const double* spdiam, const double* clgapl, double* clgapr,
                        const double* pivmin, double* sigma, double* dplus,
                        double* lplus, double* work, MKL_INT* info );
void __stdcall dlarrf( const MKL_INT* n, const double* d, const double* l,
                       const double* ld, const MKL_INT* clstrt, const MKL_INT* clend,
                       const double* w, double* wgap, const double* werr,
                       const double* spdiam, const double* clgapl, double* clgapr,
                       const double* pivmin, double* sigma, double* dplus, double* lplus,
                       double* work, MKL_INT* info );
void __stdcall dlarrf_( const MKL_INT* n, const double* d, const double* l,
                        const double* ld, const MKL_INT* clstrt, const MKL_INT* clend,
                        const double* w, double* wgap, const double* werr,
                        const double* spdiam, const double* clgapl, double* clgapr,
                        const double* pivmin, double* sigma, double* dplus,
                        double* lplus, double* work, MKL_INT* info );

void __stdcall DLARRJ( const MKL_INT* n, const double* d, const double* e2,
                       const MKL_INT* ifirst, const MKL_INT* ilast, const double* rtol,
                       const MKL_INT* offset, double* w, double* werr, double* work,
                       MKL_INT* iwork, const double* pivmin, const double* spdiam,
                       MKL_INT* info );
void __stdcall DLARRJ_( const MKL_INT* n, const double* d, const double* e2,
                        const MKL_INT* ifirst, const MKL_INT* ilast, const double* rtol,
                        const MKL_INT* offset, double* w, double* werr, double* work,
                        MKL_INT* iwork, const double* pivmin, const double* spdiam,
                        MKL_INT* info );
void __stdcall dlarrj( const MKL_INT* n, const double* d, const double* e2,
                       const MKL_INT* ifirst, const MKL_INT* ilast, const double* rtol,
                       const MKL_INT* offset, double* w, double* werr, double* work,
                       MKL_INT* iwork, const double* pivmin, const double* spdiam,
                       MKL_INT* info );
void __stdcall dlarrj_( const MKL_INT* n, const double* d, const double* e2,
                        const MKL_INT* ifirst, const MKL_INT* ilast, const double* rtol,
                        const MKL_INT* offset, double* w, double* werr, double* work,
                        MKL_INT* iwork, const double* pivmin, const double* spdiam,
                        MKL_INT* info );

void __stdcall DLARRK( const MKL_INT* n, const MKL_INT* iw, const double* gl,
                       const double* gu, const double* d, const double* e2,
                       const double* pivmin, const double* reltol, double* w,
                       double* werr, MKL_INT* info );
void __stdcall DLARRK_( const MKL_INT* n, const MKL_INT* iw, const double* gl,
                        const double* gu, const double* d, const double* e2,
                        const double* pivmin, const double* reltol, double* w,
                        double* werr, MKL_INT* info );
void __stdcall dlarrk( const MKL_INT* n, const MKL_INT* iw, const double* gl,
                       const double* gu, const double* d, const double* e2,
                       const double* pivmin, const double* reltol, double* w,
                       double* werr, MKL_INT* info );
void __stdcall dlarrk_( const MKL_INT* n, const MKL_INT* iw, const double* gl,
                        const double* gu, const double* d, const double* e2,
                        const double* pivmin, const double* reltol, double* w,
                        double* werr, MKL_INT* info );

void __stdcall DLARRR( const MKL_INT* n, const double* d, double* e, MKL_INT* info );
void __stdcall DLARRR_( const MKL_INT* n, const double* d, double* e, MKL_INT* info );
void __stdcall dlarrr( const MKL_INT* n, const double* d, double* e, MKL_INT* info );
void __stdcall dlarrr_( const MKL_INT* n, const double* d, double* e, MKL_INT* info );

void __stdcall DLARRV( const MKL_INT* n, const double* vl, const double* vu, double* d,
                       double* l, double* pivmin, const MKL_INT* isplit,
                       const MKL_INT* m, const MKL_INT* dol, const MKL_INT* dou,
                       const double* minrgp, const double* rtol1, const double* rtol2,
                       double* w, double* werr, double* wgap, const MKL_INT* iblock,
                       const MKL_INT* indexw, const double* gers, double* z,
                       const MKL_INT* ldz, MKL_INT* isuppz, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall DLARRV_( const MKL_INT* n, const double* vl, const double* vu, double* d,
                        double* l, double* pivmin, const MKL_INT* isplit,
                        const MKL_INT* m, const MKL_INT* dol, const MKL_INT* dou,
                        const double* minrgp, const double* rtol1, const double* rtol2,
                        double* w, double* werr, double* wgap, const MKL_INT* iblock,
                        const MKL_INT* indexw, const double* gers, double* z,
                        const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall dlarrv( const MKL_INT* n, const double* vl, const double* vu, double* d,
                       double* l, double* pivmin, const MKL_INT* isplit,
                       const MKL_INT* m, const MKL_INT* dol, const MKL_INT* dou,
                       const double* minrgp, const double* rtol1, const double* rtol2,
                       double* w, double* werr, double* wgap, const MKL_INT* iblock,
                       const MKL_INT* indexw, const double* gers, double* z,
                       const MKL_INT* ldz, MKL_INT* isuppz, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall dlarrv_( const MKL_INT* n, const double* vl, const double* vu, double* d,
                        double* l, double* pivmin, const MKL_INT* isplit,
                        const MKL_INT* m, const MKL_INT* dol, const MKL_INT* dou,
                        const double* minrgp, const double* rtol1, const double* rtol2,
                        double* w, double* werr, double* wgap, const MKL_INT* iblock,
                        const MKL_INT* indexw, const double* gers, double* z,
                        const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall DLARTG( const double* f, const double* g, double* cs, double* sn,
                       double* r );
void __stdcall DLARTG_( const double* f, const double* g, double* cs, double* sn,
                        double* r );
void __stdcall dlartg( const double* f, const double* g, double* cs, double* sn,
                       double* r );
void __stdcall dlartg_( const double* f, const double* g, double* cs, double* sn,
                        double* r );

void __stdcall DLARTV( const MKL_INT* n, double* x, const MKL_INT* incx, double* y,
                       const MKL_INT* incy, const double* c, const double* s,
                       const MKL_INT* incc );
void __stdcall DLARTV_( const MKL_INT* n, double* x, const MKL_INT* incx, double* y,
                        const MKL_INT* incy, const double* c, const double* s,
                        const MKL_INT* incc );
void __stdcall dlartv( const MKL_INT* n, double* x, const MKL_INT* incx, double* y,
                       const MKL_INT* incy, const double* c, const double* s,
                       const MKL_INT* incc );
void __stdcall dlartv_( const MKL_INT* n, double* x, const MKL_INT* incx, double* y,
                        const MKL_INT* incy, const double* c, const double* s,
                        const MKL_INT* incc );

void __stdcall DLARUV( MKL_INT* iseed, const MKL_INT* n, double* x );
void __stdcall DLARUV_( MKL_INT* iseed, const MKL_INT* n, double* x );
void __stdcall dlaruv( MKL_INT* iseed, const MKL_INT* n, double* x );
void __stdcall dlaruv_( MKL_INT* iseed, const MKL_INT* n, double* x );

void __stdcall DLARZB( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, const double* v,
                       const MKL_INT* ldv, const double* t, const MKL_INT* ldt,
                       double* c, const MKL_INT* ldc, double* work,
                       const MKL_INT* ldwork );
void __stdcall DLARZB_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const double* v,
                        const MKL_INT* ldv, const double* t, const MKL_INT* ldt,
                        double* c, const MKL_INT* ldc, double* work,
                        const MKL_INT* ldwork );
void __stdcall dlarzb( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, const double* v,
                       const MKL_INT* ldv, const double* t, const MKL_INT* ldt,
                       double* c, const MKL_INT* ldc, double* work,
                       const MKL_INT* ldwork );
void __stdcall dlarzb_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const double* v,
                        const MKL_INT* ldv, const double* t, const MKL_INT* ldt,
                        double* c, const MKL_INT* ldc, double* work,
                        const MKL_INT* ldwork );

void __stdcall DLARZ( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* l, const double* v, const MKL_INT* incv,
                      const double* tau, double* c, const MKL_INT* ldc, double* work );
void __stdcall DLARZ_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* l, const double* v, const MKL_INT* incv,
                       const double* tau, double* c, const MKL_INT* ldc, double* work );
void __stdcall dlarz( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* l, const double* v, const MKL_INT* incv,
                      const double* tau, double* c, const MKL_INT* ldc, double* work );
void __stdcall dlarz_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* l, const double* v, const MKL_INT* incv,
                       const double* tau, double* c, const MKL_INT* ldc, double* work );

void __stdcall DLARZT( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, double* v, const MKL_INT* ldv,
                       const double* tau, double* t, const MKL_INT* ldt );
void __stdcall DLARZT_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, double* v, const MKL_INT* ldv,
                        const double* tau, double* t, const MKL_INT* ldt );
void __stdcall dlarzt( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, double* v, const MKL_INT* ldv,
                       const double* tau, double* t, const MKL_INT* ldt );
void __stdcall dlarzt_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, double* v, const MKL_INT* ldv,
                        const double* tau, double* t, const MKL_INT* ldt );

void __stdcall DLAS2( const double* f, const double* g, const double* h, double* ssmin,
                      double* ssmax );
void __stdcall DLAS2_( const double* f, const double* g, const double* h, double* ssmin,
                       double* ssmax );
void __stdcall dlas2( const double* f, const double* g, const double* h, double* ssmin,
                      double* ssmax );
void __stdcall dlas2_( const double* f, const double* g, const double* h, double* ssmin,
                       double* ssmax );

void __stdcall DLASCL( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                       const double* cfrom, const double* cto, const MKL_INT* m,
                       const MKL_INT* n, double* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall DLASCL_( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                        const double* cfrom, const double* cto, const MKL_INT* m,
                        const MKL_INT* n, double* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall dlascl( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                       const double* cfrom, const double* cto, const MKL_INT* m,
                       const MKL_INT* n, double* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall dlascl_( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                        const double* cfrom, const double* cto, const MKL_INT* m,
                        const MKL_INT* n, double* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall DLASD0( const MKL_INT* n, const MKL_INT* sqre, double* d, const double* e,
                       double* u, const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                       const MKL_INT* smlsiz, MKL_INT* iwork, double* work,
                       MKL_INT* info );
void __stdcall DLASD0_( const MKL_INT* n, const MKL_INT* sqre, double* d,
                        const double* e, double* u, const MKL_INT* ldu, double* vt,
                        const MKL_INT* ldvt, const MKL_INT* smlsiz, MKL_INT* iwork,
                        double* work, MKL_INT* info );
void __stdcall dlasd0( const MKL_INT* n, const MKL_INT* sqre, double* d, const double* e,
                       double* u, const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                       const MKL_INT* smlsiz, MKL_INT* iwork, double* work,
                       MKL_INT* info );
void __stdcall dlasd0_( const MKL_INT* n, const MKL_INT* sqre, double* d,
                        const double* e, double* u, const MKL_INT* ldu, double* vt,
                        const MKL_INT* ldvt, const MKL_INT* smlsiz, MKL_INT* iwork,
                        double* work, MKL_INT* info );

void __stdcall DLASD1( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                       double* d, double* alpha, double* beta, double* u,
                       const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                       MKL_INT* idxq, MKL_INT* iwork, double* work, MKL_INT* info );
void __stdcall DLASD1_( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                        double* d, double* alpha, double* beta, double* u,
                        const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                        MKL_INT* idxq, MKL_INT* iwork, double* work, MKL_INT* info );
void __stdcall dlasd1( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                       double* d, double* alpha, double* beta, double* u,
                       const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                       MKL_INT* idxq, MKL_INT* iwork, double* work, MKL_INT* info );
void __stdcall dlasd1_( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                        double* d, double* alpha, double* beta, double* u,
                        const MKL_INT* ldu, double* vt, const MKL_INT* ldvt,
                        MKL_INT* idxq, MKL_INT* iwork, double* work, MKL_INT* info );

void __stdcall DLASD2( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                       MKL_INT* k, double* d, double* z, const double* alpha,
                       const double* beta, double* u, const MKL_INT* ldu, double* vt,
                       const MKL_INT* ldvt, double* dsigma, double* u2,
                       const MKL_INT* ldu2, double* vt2, const MKL_INT* ldvt2,
                       MKL_INT* idxp, MKL_INT* idx, MKL_INT* idxc, MKL_INT* idxq,
                       MKL_INT* coltyp, MKL_INT* info );
void __stdcall DLASD2_( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                        MKL_INT* k, double* d, double* z, const double* alpha,
                        const double* beta, double* u, const MKL_INT* ldu, double* vt,
                        const MKL_INT* ldvt, double* dsigma, double* u2,
                        const MKL_INT* ldu2, double* vt2, const MKL_INT* ldvt2,
                        MKL_INT* idxp, MKL_INT* idx, MKL_INT* idxc, MKL_INT* idxq,
                        MKL_INT* coltyp, MKL_INT* info );
void __stdcall dlasd2( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                       MKL_INT* k, double* d, double* z, const double* alpha,
                       const double* beta, double* u, const MKL_INT* ldu, double* vt,
                       const MKL_INT* ldvt, double* dsigma, double* u2,
                       const MKL_INT* ldu2, double* vt2, const MKL_INT* ldvt2,
                       MKL_INT* idxp, MKL_INT* idx, MKL_INT* idxc, MKL_INT* idxq,
                       MKL_INT* coltyp, MKL_INT* info );
void __stdcall dlasd2_( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                        MKL_INT* k, double* d, double* z, const double* alpha,
                        const double* beta, double* u, const MKL_INT* ldu, double* vt,
                        const MKL_INT* ldvt, double* dsigma, double* u2,
                        const MKL_INT* ldu2, double* vt2, const MKL_INT* ldvt2,
                        MKL_INT* idxp, MKL_INT* idx, MKL_INT* idxc, MKL_INT* idxq,
                        MKL_INT* coltyp, MKL_INT* info );

void __stdcall DLASD3( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                       const MKL_INT* k, double* d, double* q, const MKL_INT* ldq,
                       const double* dsigma, double* u, const MKL_INT* ldu, double* u2,
                       const MKL_INT* ldu2, double* vt, const MKL_INT* ldvt, double* vt2,
                       const MKL_INT* ldvt2, const MKL_INT* idxc, const MKL_INT* ctot,
                       const double* z, MKL_INT* info );
void __stdcall DLASD3_( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                        const MKL_INT* k, double* d, double* q, const MKL_INT* ldq,
                        const double* dsigma, double* u, const MKL_INT* ldu, double* u2,
                        const MKL_INT* ldu2, double* vt, const MKL_INT* ldvt,
                        double* vt2, const MKL_INT* ldvt2, const MKL_INT* idxc,
                        const MKL_INT* ctot, const double* z, MKL_INT* info );
void __stdcall dlasd3( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                       const MKL_INT* k, double* d, double* q, const MKL_INT* ldq,
                       const double* dsigma, double* u, const MKL_INT* ldu, double* u2,
                       const MKL_INT* ldu2, double* vt, const MKL_INT* ldvt, double* vt2,
                       const MKL_INT* ldvt2, const MKL_INT* idxc, const MKL_INT* ctot,
                       const double* z, MKL_INT* info );
void __stdcall dlasd3_( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                        const MKL_INT* k, double* d, double* q, const MKL_INT* ldq,
                        const double* dsigma, double* u, const MKL_INT* ldu, double* u2,
                        const MKL_INT* ldu2, double* vt, const MKL_INT* ldvt,
                        double* vt2, const MKL_INT* ldvt2, const MKL_INT* idxc,
                        const MKL_INT* ctot, const double* z, MKL_INT* info );

void __stdcall DLASD4( const MKL_INT* n, const MKL_INT* i, const double* d,
                       const double* z, double* delta, const double* rho, double* sigma,
                       double* work, MKL_INT* info );
void __stdcall DLASD4_( const MKL_INT* n, const MKL_INT* i, const double* d,
                        const double* z, double* delta, const double* rho, double* sigma,
                        double* work, MKL_INT* info );
void __stdcall dlasd4( const MKL_INT* n, const MKL_INT* i, const double* d,
                       const double* z, double* delta, const double* rho, double* sigma,
                       double* work, MKL_INT* info );
void __stdcall dlasd4_( const MKL_INT* n, const MKL_INT* i, const double* d,
                        const double* z, double* delta, const double* rho, double* sigma,
                        double* work, MKL_INT* info );

void __stdcall DLASD5( const MKL_INT* i, const double* d, const double* z, double* delta,
                       const double* rho, double* dsigma, double* work );
void __stdcall DLASD5_( const MKL_INT* i, const double* d, const double* z,
                        double* delta, const double* rho, double* dsigma, double* work );
void __stdcall dlasd5( const MKL_INT* i, const double* d, const double* z, double* delta,
                       const double* rho, double* dsigma, double* work );
void __stdcall dlasd5_( const MKL_INT* i, const double* d, const double* z,
                        double* delta, const double* rho, double* dsigma, double* work );

void __stdcall DLASD6( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, double* d, double* vf, double* vl,
                       double* alpha, double* beta, MKL_INT* idxq, MKL_INT* perm,
                       MKL_INT* givptr, MKL_INT* givcol, const MKL_INT* ldgcol,
                       double* givnum, const MKL_INT* ldgnum, double* poles,
                       double* difl, double* difr, double* z, MKL_INT* k, double* c,
                       double* s, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DLASD6_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, double* d, double* vf, double* vl,
                        double* alpha, double* beta, MKL_INT* idxq, MKL_INT* perm,
                        MKL_INT* givptr, MKL_INT* givcol, const MKL_INT* ldgcol,
                        double* givnum, const MKL_INT* ldgnum, double* poles,
                        double* difl, double* difr, double* z, MKL_INT* k, double* c,
                        double* s, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dlasd6( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, double* d, double* vf, double* vl,
                       double* alpha, double* beta, MKL_INT* idxq, MKL_INT* perm,
                       MKL_INT* givptr, MKL_INT* givcol, const MKL_INT* ldgcol,
                       double* givnum, const MKL_INT* ldgnum, double* poles,
                       double* difl, double* difr, double* z, MKL_INT* k, double* c,
                       double* s, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dlasd6_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, double* d, double* vf, double* vl,
                        double* alpha, double* beta, MKL_INT* idxq, MKL_INT* perm,
                        MKL_INT* givptr, MKL_INT* givcol, const MKL_INT* ldgcol,
                        double* givnum, const MKL_INT* ldgnum, double* poles,
                        double* difl, double* difr, double* z, MKL_INT* k, double* c,
                        double* s, double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DLASD7( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, MKL_INT* k, double* d, double* z, double* zw,
                       double* vf, double* vfw, double* vl, double* vlw,
                       const double* alpha, const double* beta, double* dsigma,
                       MKL_INT* idx, MKL_INT* idxp, const MKL_INT* idxq, MKL_INT* perm,
                       MKL_INT* givptr, MKL_INT* givcol, const MKL_INT* ldgcol,
                       double* givnum, const MKL_INT* ldgnum, double* c, double* s,
                       MKL_INT* info );
void __stdcall DLASD7_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, MKL_INT* k, double* d, double* z,
                        double* zw, double* vf, double* vfw, double* vl, double* vlw,
                        const double* alpha, const double* beta, double* dsigma,
                        MKL_INT* idx, MKL_INT* idxp, const MKL_INT* idxq, MKL_INT* perm,
                        MKL_INT* givptr, MKL_INT* givcol, const MKL_INT* ldgcol,
                        double* givnum, const MKL_INT* ldgnum, double* c, double* s,
                        MKL_INT* info );
void __stdcall dlasd7( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, MKL_INT* k, double* d, double* z, double* zw,
                       double* vf, double* vfw, double* vl, double* vlw,
                       const double* alpha, const double* beta, double* dsigma,
                       MKL_INT* idx, MKL_INT* idxp, const MKL_INT* idxq, MKL_INT* perm,
                       MKL_INT* givptr, MKL_INT* givcol, const MKL_INT* ldgcol,
                       double* givnum, const MKL_INT* ldgnum, double* c, double* s,
                       MKL_INT* info );
void __stdcall dlasd7_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, MKL_INT* k, double* d, double* z,
                        double* zw, double* vf, double* vfw, double* vl, double* vlw,
                        const double* alpha, const double* beta, double* dsigma,
                        MKL_INT* idx, MKL_INT* idxp, const MKL_INT* idxq, MKL_INT* perm,
                        MKL_INT* givptr, MKL_INT* givcol, const MKL_INT* ldgcol,
                        double* givnum, const MKL_INT* ldgnum, double* c, double* s,
                        MKL_INT* info );

void __stdcall DLASD8( const MKL_INT* icompq, const MKL_INT* k, double* d, double* z,
                       double* vf, double* vl, double* difl, double* difr,
                       const MKL_INT* lddifr, double* dsigma, double* work,
                       MKL_INT* info );
void __stdcall DLASD8_( const MKL_INT* icompq, const MKL_INT* k, double* d, double* z,
                        double* vf, double* vl, double* difl, double* difr,
                        const MKL_INT* lddifr, double* dsigma, double* work,
                        MKL_INT* info );
void __stdcall dlasd8( const MKL_INT* icompq, const MKL_INT* k, double* d, double* z,
                       double* vf, double* vl, double* difl, double* difr,
                       const MKL_INT* lddifr, double* dsigma, double* work,
                       MKL_INT* info );
void __stdcall dlasd8_( const MKL_INT* icompq, const MKL_INT* k, double* d, double* z,
                        double* vf, double* vl, double* difl, double* difr,
                        const MKL_INT* lddifr, double* dsigma, double* work,
                        MKL_INT* info );

void __stdcall DLASDA( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* sqre, double* d, const double* e, double* u,
                       const MKL_INT* ldu, double* vt, MKL_INT* k, double* difl,
                       double* difr, double* z, double* poles, MKL_INT* givptr,
                       MKL_INT* givcol, const MKL_INT* ldgcol, MKL_INT* perm,
                       double* givnum, double* c, double* s, double* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall DLASDA_( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* sqre, double* d, const double* e, double* u,
                        const MKL_INT* ldu, double* vt, MKL_INT* k, double* difl,
                        double* difr, double* z, double* poles, MKL_INT* givptr,
                        MKL_INT* givcol, const MKL_INT* ldgcol, MKL_INT* perm,
                        double* givnum, double* c, double* s, double* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall dlasda( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* sqre, double* d, const double* e, double* u,
                       const MKL_INT* ldu, double* vt, MKL_INT* k, double* difl,
                       double* difr, double* z, double* poles, MKL_INT* givptr,
                       MKL_INT* givcol, const MKL_INT* ldgcol, MKL_INT* perm,
                       double* givnum, double* c, double* s, double* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall dlasda_( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* sqre, double* d, const double* e, double* u,
                        const MKL_INT* ldu, double* vt, MKL_INT* k, double* difl,
                        double* difr, double* z, double* poles, MKL_INT* givptr,
                        MKL_INT* givcol, const MKL_INT* ldgcol, MKL_INT* perm,
                        double* givnum, double* c, double* s, double* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall DLASDQ( const char* uplo, int uplo_len, const MKL_INT* sqre, const MKL_INT* n,
                       const MKL_INT* ncvt, const MKL_INT* nru, const MKL_INT* ncc,
                       double* d, double* e, double* vt, const MKL_INT* ldvt, double* u,
                       const MKL_INT* ldu, double* c, const MKL_INT* ldc, double* work,
                       MKL_INT* info );
void __stdcall DLASDQ_( const char* uplo, int uplo_len, const MKL_INT* sqre, const MKL_INT* n,
                        const MKL_INT* ncvt, const MKL_INT* nru, const MKL_INT* ncc,
                        double* d, double* e, double* vt, const MKL_INT* ldvt, double* u,
                        const MKL_INT* ldu, double* c, const MKL_INT* ldc, double* work,
                        MKL_INT* info );
void __stdcall dlasdq( const char* uplo, int uplo_len, const MKL_INT* sqre, const MKL_INT* n,
                       const MKL_INT* ncvt, const MKL_INT* nru, const MKL_INT* ncc,
                       double* d, double* e, double* vt, const MKL_INT* ldvt, double* u,
                       const MKL_INT* ldu, double* c, const MKL_INT* ldc, double* work,
                       MKL_INT* info );
void __stdcall dlasdq_( const char* uplo, int uplo_len, const MKL_INT* sqre, const MKL_INT* n,
                        const MKL_INT* ncvt, const MKL_INT* nru, const MKL_INT* ncc,
                        double* d, double* e, double* vt, const MKL_INT* ldvt, double* u,
                        const MKL_INT* ldu, double* c, const MKL_INT* ldc, double* work,
                        MKL_INT* info );

void __stdcall DLASDT( const MKL_INT* n, MKL_INT* lvl, MKL_INT* nd, MKL_INT* inode,
                       MKL_INT* ndiml, MKL_INT* ndimr, const MKL_INT* msub );
void __stdcall DLASDT_( const MKL_INT* n, MKL_INT* lvl, MKL_INT* nd, MKL_INT* inode,
                        MKL_INT* ndiml, MKL_INT* ndimr, const MKL_INT* msub );
void __stdcall dlasdt( const MKL_INT* n, MKL_INT* lvl, MKL_INT* nd, MKL_INT* inode,
                       MKL_INT* ndiml, MKL_INT* ndimr, const MKL_INT* msub );
void __stdcall dlasdt_( const MKL_INT* n, MKL_INT* lvl, MKL_INT* nd, MKL_INT* inode,
                        MKL_INT* ndiml, MKL_INT* ndimr, const MKL_INT* msub );

void __stdcall DLASET( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const double* alpha, const double* beta, double* a,
                       const MKL_INT* lda );
void __stdcall DLASET_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const double* alpha, const double* beta, double* a,
                        const MKL_INT* lda );
void __stdcall dlaset( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const double* alpha, const double* beta, double* a,
                       const MKL_INT* lda );
void __stdcall dlaset_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const double* alpha, const double* beta, double* a,
                        const MKL_INT* lda );

void __stdcall DLASQ1( const MKL_INT* n, double* d, double* e, double* work,
                       MKL_INT* info );
void __stdcall DLASQ1_( const MKL_INT* n, double* d, double* e, double* work,
                        MKL_INT* info );
void __stdcall dlasq1( const MKL_INT* n, double* d, double* e, double* work,
                       MKL_INT* info );
void __stdcall dlasq1_( const MKL_INT* n, double* d, double* e, double* work,
                        MKL_INT* info );

void __stdcall DLASQ2( const MKL_INT* n, double* z, MKL_INT* info );
void __stdcall DLASQ2_( const MKL_INT* n, double* z, MKL_INT* info );
void __stdcall dlasq2( const MKL_INT* n, double* z, MKL_INT* info );
void __stdcall dlasq2_( const MKL_INT* n, double* z, MKL_INT* info );

void __stdcall DLASQ3( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                       MKL_INT* pp, double* dmin, double* sigma, double* desig,
                       const double* qmax, MKL_INT* nfail, MKL_INT* iter, MKL_INT* ndiv,
                       const MKL_INT* ieee, MKL_INT* ttype, double* dmin1, double* dmin2,
                       double* dn, double* dn1, double* dn2, double* g, double* tau );
void __stdcall DLASQ3_( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                        MKL_INT* pp, double* dmin, double* sigma, double* desig,
                        const double* qmax, MKL_INT* nfail, MKL_INT* iter, MKL_INT* ndiv,
                        const MKL_INT* ieee, MKL_INT* ttype, double* dmin1,
                        double* dmin2, double* dn, double* dn1, double* dn2, double* g,
                        double* tau );
void __stdcall dlasq3( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                       MKL_INT* pp, double* dmin, double* sigma, double* desig,
                       const double* qmax, MKL_INT* nfail, MKL_INT* iter, MKL_INT* ndiv,
                       const MKL_INT* ieee, MKL_INT* ttype, double* dmin1, double* dmin2,
                       double* dn, double* dn1, double* dn2, double* g, double* tau );
void __stdcall dlasq3_( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                        MKL_INT* pp, double* dmin, double* sigma, double* desig,
                        const double* qmax, MKL_INT* nfail, MKL_INT* iter, MKL_INT* ndiv,
                        const MKL_INT* ieee, MKL_INT* ttype, double* dmin1,
                        double* dmin2, double* dn, double* dn1, double* dn2, double* g,
                        double* tau );

void __stdcall DLASQ4( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                       const MKL_INT* pp, MKL_INT* n0in, const double* dmin,
                       const double* dmin1, const double* dmin2, const double* dn,
                       const double* dn1, const double* dn2, double* tau, MKL_INT* ttype,
                       double* g );
void __stdcall DLASQ4_( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                        const MKL_INT* pp, MKL_INT* n0in, const double* dmin,
                        const double* dmin1, const double* dmin2, const double* dn,
                        const double* dn1, const double* dn2, double* tau,
                        MKL_INT* ttype, double* g );
void __stdcall dlasq4( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                       const MKL_INT* pp, MKL_INT* n0in, const double* dmin,
                       const double* dmin1, const double* dmin2, const double* dn,
                       const double* dn1, const double* dn2, double* tau, MKL_INT* ttype,
                       double* g );
void __stdcall dlasq4_( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                        const MKL_INT* pp, MKL_INT* n0in, const double* dmin,
                        const double* dmin1, const double* dmin2, const double* dn,
                        const double* dn1, const double* dn2, double* tau,
                        MKL_INT* ttype, double* g );

void __stdcall DLASQ5( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                       const MKL_INT* pp, const double* tau, const double* sigma,
                       double* dmin, double* dmin1, double* dmin2, double* dn,
                       double* dnm1, double* dnm2, const MKL_INT* ieee,
                       const double* eps);
void __stdcall DLASQ5_( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                        const MKL_INT* pp, const double* tau, const double* sigma,
                        double* dmin, double* dmin1, double* dmin2, double* dn,
                        double* dnm1, double* dnm2, const MKL_INT* ieee,
                        const double* eps);
void __stdcall dlasq5( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                       const MKL_INT* pp, const double* tau, const double* sigma,
                       double* dmin, double* dmin1, double* dmin2, double* dn,
                       double* dnm1, double* dnm2, const MKL_INT* ieee,
                       const double* eps);
void __stdcall dlasq5_( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                        const MKL_INT* pp, const double* tau, const double* sigma,
                        double* dmin, double* dmin1, double* dmin2, double* dn,
                        double* dnm1, double* dnm2, const MKL_INT* ieee,
                        const double* eps);


void __stdcall DLASQ6( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                       const MKL_INT* pp, double* dmin, double* dmin1, double* dmin2,
                       double* dn, double* dnm1, double* dnm2 );
void __stdcall DLASQ6_( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                        const MKL_INT* pp, double* dmin, double* dmin1, double* dmin2,
                        double* dn, double* dnm1, double* dnm2 );
void __stdcall dlasq6( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                       const MKL_INT* pp, double* dmin, double* dmin1, double* dmin2,
                       double* dn, double* dnm1, double* dnm2 );
void __stdcall dlasq6_( const MKL_INT* i0, const MKL_INT* n0, const double* z,
                        const MKL_INT* pp, double* dmin, double* dmin1, double* dmin2,
                        double* dn, double* dnm1, double* dnm2 );

void __stdcall DLASR( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                      const MKL_INT* m, const MKL_INT* n, const double* c,
                      const double* s, double* a, const MKL_INT* lda );
void __stdcall DLASR_( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                       const MKL_INT* m, const MKL_INT* n, const double* c,
                       const double* s, double* a, const MKL_INT* lda );
void __stdcall dlasr( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                      const MKL_INT* m, const MKL_INT* n, const double* c,
                      const double* s, double* a, const MKL_INT* lda );
void __stdcall dlasr_( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                       const MKL_INT* m, const MKL_INT* n, const double* c,
                       const double* s, double* a, const MKL_INT* lda );

void __stdcall DLASRT( const char* id, int id_len, const MKL_INT* n, double* d, MKL_INT* info );
void __stdcall DLASRT_( const char* id, int id_len, const MKL_INT* n, double* d, MKL_INT* info );
void __stdcall dlasrt( const char* id, int id_len, const MKL_INT* n, double* d, MKL_INT* info );
void __stdcall dlasrt_( const char* id, int id_len, const MKL_INT* n, double* d, MKL_INT* info );

void __stdcall DLASSQ( const MKL_INT* n, const double* x, const MKL_INT* incx,
                       double* scale, double* sumsq );
void __stdcall DLASSQ_( const MKL_INT* n, const double* x, const MKL_INT* incx,
                        double* scale, double* sumsq );
void __stdcall dlassq( const MKL_INT* n, const double* x, const MKL_INT* incx,
                       double* scale, double* sumsq );
void __stdcall dlassq_( const MKL_INT* n, const double* x, const MKL_INT* incx,
                        double* scale, double* sumsq );

void __stdcall DLASV2( const double* f, const double* g, const double* h, double* ssmin,
                       double* ssmax, double* snr, double* csr, double* snl,
                       double* csl );
void __stdcall DLASV2_( const double* f, const double* g, const double* h, double* ssmin,
                        double* ssmax, double* snr, double* csr, double* snl,
                        double* csl );
void __stdcall dlasv2( const double* f, const double* g, const double* h, double* ssmin,
                       double* ssmax, double* snr, double* csr, double* snl,
                       double* csl );
void __stdcall dlasv2_( const double* f, const double* g, const double* h, double* ssmin,
                        double* ssmax, double* snr, double* csr, double* snl,
                        double* csl );

void __stdcall DLASWP( const MKL_INT* n, double* a, const MKL_INT* lda,
                       const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                       const MKL_INT* incx );
void __stdcall DLASWP_( const MKL_INT* n, double* a, const MKL_INT* lda,
                        const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                        const MKL_INT* incx );
void __stdcall dlaswp( const MKL_INT* n, double* a, const MKL_INT* lda,
                       const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                       const MKL_INT* incx );
void __stdcall dlaswp_( const MKL_INT* n, double* a, const MKL_INT* lda,
                        const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                        const MKL_INT* incx );

void __stdcall DLASY2( const MKL_INT* ltranl, const MKL_INT* ltranr, const MKL_INT* isgn,
                       const MKL_INT* n1, const MKL_INT* n2, const double* tl,
                       const MKL_INT* ldtl, const double* tr, const MKL_INT* ldtr,
                       const double* b, const MKL_INT* ldb, double* scale, double* x,
                       const MKL_INT* ldx, double* xnorm, MKL_INT* info );
void __stdcall DLASY2_( const MKL_INT* ltranl, const MKL_INT* ltranr,
                        const MKL_INT* isgn, const MKL_INT* n1, const MKL_INT* n2,
                        const double* tl, const MKL_INT* ldtl, const double* tr,
                        const MKL_INT* ldtr, const double* b, const MKL_INT* ldb,
                        double* scale, double* x, const MKL_INT* ldx, double* xnorm,
                        MKL_INT* info );
void __stdcall dlasy2( const MKL_INT* ltranl, const MKL_INT* ltranr, const MKL_INT* isgn,
                       const MKL_INT* n1, const MKL_INT* n2, const double* tl,
                       const MKL_INT* ldtl, const double* tr, const MKL_INT* ldtr,
                       const double* b, const MKL_INT* ldb, double* scale, double* x,
                       const MKL_INT* ldx, double* xnorm, MKL_INT* info );
void __stdcall dlasy2_( const MKL_INT* ltranl, const MKL_INT* ltranr,
                        const MKL_INT* isgn, const MKL_INT* n1, const MKL_INT* n2,
                        const double* tl, const MKL_INT* ldtl, const double* tr,
                        const MKL_INT* ldtr, const double* b, const MKL_INT* ldb,
                        double* scale, double* x, const MKL_INT* ldx, double* xnorm,
                        MKL_INT* info );

void __stdcall DLASYF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_INT* kb, double* a, const MKL_INT* lda, MKL_INT* ipiv,
                       double* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall DLASYF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_INT* kb, double* a, const MKL_INT* lda, MKL_INT* ipiv,
                        double* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall dlasyf( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_INT* kb, double* a, const MKL_INT* lda, MKL_INT* ipiv,
                       double* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall dlasyf_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_INT* kb, double* a, const MKL_INT* lda, MKL_INT* ipiv,
                        double* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall DLAT2S( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, float* sa, const MKL_INT* ldsa,
                       MKL_INT* info );
void __stdcall DLAT2S_( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, float* sa, const MKL_INT* ldsa,
                        MKL_INT* info );
void __stdcall dlat2s( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, float* sa, const MKL_INT* ldsa,
                       MKL_INT* info );
void __stdcall dlat2s_( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, float* sa, const MKL_INT* ldsa,
                        MKL_INT* info );

void __stdcall DLATBS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                       const double* ab, const MKL_INT* ldab, double* x, double* scale,
                       double* cnorm, MKL_INT* info );
void __stdcall DLATBS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                        const double* ab, const MKL_INT* ldab, double* x, double* scale,
                        double* cnorm, MKL_INT* info );
void __stdcall dlatbs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                       const double* ab, const MKL_INT* ldab, double* x, double* scale,
                       double* cnorm, MKL_INT* info );
void __stdcall dlatbs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                        const double* ab, const MKL_INT* ldab, double* x, double* scale,
                        double* cnorm, MKL_INT* info );

void __stdcall DLATDF( const MKL_INT* ijob, const MKL_INT* n, const double* z,
                       const MKL_INT* ldz, double* rhs, double* rdsum, double* rdscal,
                       const MKL_INT* ipiv, const MKL_INT* jpiv );
void __stdcall DLATDF_( const MKL_INT* ijob, const MKL_INT* n, const double* z,
                        const MKL_INT* ldz, double* rhs, double* rdsum, double* rdscal,
                        const MKL_INT* ipiv, const MKL_INT* jpiv );
void __stdcall dlatdf( const MKL_INT* ijob, const MKL_INT* n, const double* z,
                       const MKL_INT* ldz, double* rhs, double* rdsum, double* rdscal,
                       const MKL_INT* ipiv, const MKL_INT* jpiv );
void __stdcall dlatdf_( const MKL_INT* ijob, const MKL_INT* n, const double* z,
                        const MKL_INT* ldz, double* rhs, double* rdsum, double* rdscal,
                        const MKL_INT* ipiv, const MKL_INT* jpiv );

void __stdcall DLATPS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const double* ap, double* x,
                       double* scale, double* cnorm, MKL_INT* info );
void __stdcall DLATPS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const double* ap,
                        double* x, double* scale, double* cnorm, MKL_INT* info );
void __stdcall dlatps( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const double* ap, double* x,
                       double* scale, double* cnorm, MKL_INT* info );
void __stdcall dlatps_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const double* ap,
                        double* x, double* scale, double* cnorm, MKL_INT* info );

void __stdcall DLATRD( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb, double* a,
                       const MKL_INT* lda, double* e, double* tau, double* w,
                       const MKL_INT* ldw );
void __stdcall DLATRD_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb, double* a,
                        const MKL_INT* lda, double* e, double* tau, double* w,
                        const MKL_INT* ldw );
void __stdcall dlatrd( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb, double* a,
                       const MKL_INT* lda, double* e, double* tau, double* w,
                       const MKL_INT* ldw );
void __stdcall dlatrd_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb, double* a,
                        const MKL_INT* lda, double* e, double* tau, double* w,
                        const MKL_INT* ldw );

void __stdcall DLATRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, double* x, double* scale, double* cnorm,
                       MKL_INT* info );
void __stdcall DLATRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, double* x, double* scale, double* cnorm,
                        MKL_INT* info );
void __stdcall dlatrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, double* x, double* scale, double* cnorm,
                       MKL_INT* info );
void __stdcall dlatrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, double* x, double* scale, double* cnorm,
                        MKL_INT* info );

void __stdcall DLATRZ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, double* a,
                       const MKL_INT* lda, double* tau, double* work );
void __stdcall DLATRZ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, double* a,
                        const MKL_INT* lda, double* tau, double* work );
void __stdcall dlatrz( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, double* a,
                       const MKL_INT* lda, double* tau, double* work );
void __stdcall dlatrz_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, double* a,
                        const MKL_INT* lda, double* tau, double* work );

void __stdcall DLATZM( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const double* v, const MKL_INT* incv, const double* tau,
                       double* c1, double* c2, const MKL_INT* ldc, double* work );
void __stdcall DLATZM_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const double* v, const MKL_INT* incv, const double* tau,
                        double* c1, double* c2, const MKL_INT* ldc, double* work );
void __stdcall dlatzm( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const double* v, const MKL_INT* incv, const double* tau,
                       double* c1, double* c2, const MKL_INT* ldc, double* work );
void __stdcall dlatzm_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const double* v, const MKL_INT* incv, const double* tau,
                        double* c1, double* c2, const MKL_INT* ldc, double* work );

void __stdcall DLAUU2( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall DLAUU2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall dlauu2( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall dlauu2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall DLAUUM( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall DLAUUM_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall dlauum( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall dlauum_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall DOPGTR( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap,
                       const double* tau, double* q, const MKL_INT* ldq, double* work,
                       MKL_INT* info );
void __stdcall DOPGTR_( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap,
                        const double* tau, double* q, const MKL_INT* ldq, double* work,
                        MKL_INT* info );
void __stdcall dopgtr( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap,
                       const double* tau, double* q, const MKL_INT* ldq, double* work,
                       MKL_INT* info );
void __stdcall dopgtr_( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap,
                        const double* tau, double* q, const MKL_INT* ldq, double* work,
                        MKL_INT* info );

void __stdcall DOPMTR( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const double* ap,
                       const double* tau, double* c, const MKL_INT* ldc, double* work,
                       MKL_INT* info );
void __stdcall DOPMTR_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const double* ap,
                        const double* tau, double* c, const MKL_INT* ldc, double* work,
                        MKL_INT* info );
void __stdcall dopmtr( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const double* ap,
                       const double* tau, double* c, const MKL_INT* ldc, double* work,
                       MKL_INT* info );
void __stdcall dopmtr_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const double* ap,
                        const double* tau, double* c, const MKL_INT* ldc, double* work,
                        MKL_INT* info );

void __stdcall DORG2L( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       MKL_INT* info );
void __stdcall DORG2L_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        MKL_INT* info );
void __stdcall dorg2l( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       MKL_INT* info );
void __stdcall dorg2l_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        MKL_INT* info );

void __stdcall DORG2R( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       MKL_INT* info );
void __stdcall DORG2R_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        MKL_INT* info );
void __stdcall dorg2r( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       MKL_INT* info );
void __stdcall dorg2r_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        MKL_INT* info );

void __stdcall DORGBR( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, double* a, const MKL_INT* lda,
                       const double* tau, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DORGBR_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, double* a, const MKL_INT* lda,
                        const double* tau, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dorgbr( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, double* a, const MKL_INT* lda,
                       const double* tau, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dorgbr_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, double* a, const MKL_INT* lda,
                        const double* tau, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DORGHR( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       double* a, const MKL_INT* lda, const double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DORGHR_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        double* a, const MKL_INT* lda, const double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorghr( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       double* a, const MKL_INT* lda, const double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorghr_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        double* a, const MKL_INT* lda, const double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORGL2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       MKL_INT* info );
void __stdcall DORGL2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        MKL_INT* info );
void __stdcall dorgl2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       MKL_INT* info );
void __stdcall dorgl2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        MKL_INT* info );

void __stdcall DORGLQ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DORGLQ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorglq( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorglq_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORGQL( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DORGQL_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorgql( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorgql_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORGQR( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DORGQR_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorgqr( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorgqr_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORGR2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       MKL_INT* info );
void __stdcall DORGR2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        MKL_INT* info );
void __stdcall dorgr2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       MKL_INT* info );
void __stdcall dorgr2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        MKL_INT* info );

void __stdcall DORGRQ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DORGRQ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorgrq( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                       const MKL_INT* lda, const double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorgrq_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORGTR( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       const double* tau, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DORGTR_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dorgtr( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       const double* tau, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dorgtr_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, const double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORM2L( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall DORM2L_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dorm2l( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dorm2l_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, MKL_INT* info );

void __stdcall DORM2R( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall DORM2R_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dorm2r( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dorm2r_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, MKL_INT* info );

void __stdcall DORMBR( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       const double* a, const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DORMBR_( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        const double* a, const MKL_INT* lda, const double* tau,
                        double* c, const MKL_INT* ldc, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dormbr( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       const double* a, const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dormbr_( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        const double* a, const MKL_INT* lda, const double* tau,
                        double* c, const MKL_INT* ldc, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORMHR( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       const double* a, const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DORMHR_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        const double* a, const MKL_INT* lda, const double* tau,
                        double* c, const MKL_INT* ldc, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dormhr( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       const double* a, const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dormhr_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        const double* a, const MKL_INT* lda, const double* tau,
                        double* c, const MKL_INT* ldc, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORML2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall DORML2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dorml2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dorml2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, MKL_INT* info );

void __stdcall DORMLQ( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DORMLQ_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dormlq( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dormlq_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DORMQL( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DORMQL_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dormql( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dormql_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DORMQR( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DORMQR_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dormqr( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dormqr_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DORMR2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall DORMR2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dormr2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dormr2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, MKL_INT* info );

void __stdcall DORMR3( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const double* a, const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall DORMR3_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const double* a, const MKL_INT* lda, const double* tau,
                        double* c, const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dormr3( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const double* a, const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, MKL_INT* info );
void __stdcall dormr3_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const double* a, const MKL_INT* lda, const double* tau,
                        double* c, const MKL_INT* ldc, double* work, MKL_INT* info );

void __stdcall DORMRQ( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DORMRQ_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dormrq( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dormrq_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DORMRZ( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const double* a, const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DORMRZ_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const double* a, const MKL_INT* lda, const double* tau,
                        double* c, const MKL_INT* ldc, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dormrz( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const double* a, const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dormrz_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const double* a, const MKL_INT* lda, const double* tau,
                        double* c, const MKL_INT* ldc, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DORMTR( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DORMTR_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dormtr( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const double* tau, double* c,
                       const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dormtr_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const double* tau, double* c,
                        const MKL_INT* ldc, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DPBCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const double* ab, const MKL_INT* ldab, const double* anorm,
                       double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DPBCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const double* ab, const MKL_INT* ldab, const double* anorm,
                        double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dpbcon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const double* ab, const MKL_INT* ldab, const double* anorm,
                       double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dpbcon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const double* ab, const MKL_INT* ldab, const double* anorm,
                        double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DPBEQU( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const double* ab, const MKL_INT* ldab, double* s, double* scond,
                       double* amax, MKL_INT* info );
void __stdcall DPBEQU_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const double* ab, const MKL_INT* ldab, double* s, double* scond,
                        double* amax, MKL_INT* info );
void __stdcall dpbequ( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const double* ab, const MKL_INT* ldab, double* s, double* scond,
                       double* amax, MKL_INT* info );
void __stdcall dpbequ_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const double* ab, const MKL_INT* ldab, double* s, double* scond,
                        double* amax, MKL_INT* info );

void __stdcall DPBRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const double* ab, const MKL_INT* ldab,
                       const double* afb, const MKL_INT* ldafb, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                       double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DPBRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const double* ab, const MKL_INT* ldab,
                        const double* afb, const MKL_INT* ldafb, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                        double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dpbrfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const double* ab, const MKL_INT* ldab,
                       const double* afb, const MKL_INT* ldafb, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                       double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dpbrfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const double* ab, const MKL_INT* ldab,
                        const double* afb, const MKL_INT* ldafb, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                        double* berr, double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DPBSTF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, double* ab,
                       const MKL_INT* ldab, MKL_INT* info );
void __stdcall DPBSTF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        double* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall dpbstf( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, double* ab,
                       const MKL_INT* ldab, MKL_INT* info );
void __stdcall dpbstf_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        double* ab, const MKL_INT* ldab, MKL_INT* info );

void __stdcall DPBSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                      const MKL_INT* nrhs, double* ab, const MKL_INT* ldab, double* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall DPBSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, double* ab, const MKL_INT* ldab, double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall dpbsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                      const MKL_INT* nrhs, double* ab, const MKL_INT* ldab, double* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall dpbsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, double* ab, const MKL_INT* ldab, double* b,
                       const MKL_INT* ldb, MKL_INT* info );

void __stdcall DPBSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, const MKL_INT* nrhs, double* ab,
                       const MKL_INT* ldab, double* afb, const MKL_INT* ldafb,
                       char* equed, int equed_len, double* s, double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DPBSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, const MKL_INT* nrhs, double* ab,
                        const MKL_INT* ldab, double* afb, const MKL_INT* ldafb,
                        char* equed, int equed_len, double* s, double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dpbsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, const MKL_INT* nrhs, double* ab,
                       const MKL_INT* ldab, double* afb, const MKL_INT* ldafb,
                       char* equed, int equed_len, double* s, double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dpbsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, const MKL_INT* nrhs, double* ab,
                        const MKL_INT* ldab, double* afb, const MKL_INT* ldafb,
                        char* equed, int equed_len, double* s, double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DPBTF2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, double* ab,
                       const MKL_INT* ldab, MKL_INT* info );
void __stdcall DPBTF2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        double* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall dpbtf2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, double* ab,
                       const MKL_INT* ldab, MKL_INT* info );
void __stdcall dpbtf2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        double* ab, const MKL_INT* ldab, MKL_INT* info );

void __stdcall DPBTRF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, double* ab,
                       const MKL_INT* ldab, MKL_INT* info );
void __stdcall DPBTRF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        double* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall dpbtrf( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, double* ab,
                       const MKL_INT* ldab, MKL_INT* info );
void __stdcall dpbtrf_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        double* ab, const MKL_INT* ldab, MKL_INT* info );

void __stdcall DPBTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const double* ab, const MKL_INT* ldab,
                       double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DPBTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const double* ab, const MKL_INT* ldab,
                        double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dpbtrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const double* ab, const MKL_INT* ldab,
                       double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dpbtrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const double* ab, const MKL_INT* ldab,
                        double* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall DPFTRF( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                       MKL_INT* info );
void __stdcall DPFTRF_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        double* a, MKL_INT* info );
void __stdcall dpftrf( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                       MKL_INT* info );
void __stdcall dpftrf_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        double* a, MKL_INT* info );

void __stdcall DPFTRI( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                       MKL_INT* info );
void __stdcall DPFTRI_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        double* a, MKL_INT* info );
void __stdcall dpftri( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                       MKL_INT* info );
void __stdcall dpftri_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        double* a, MKL_INT* info );

void __stdcall DPFTRS( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const double* a, double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall DPFTRS_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* a, double* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall dpftrs( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const double* a, double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall dpftrs_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* a, double* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall DPOCON( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const double* anorm, double* rcond,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DPOCON_( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const double* anorm, double* rcond,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dpocon( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const double* anorm, double* rcond,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dpocon_( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const double* anorm, double* rcond,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DPOEQUB( const MKL_INT* n, const double* a, const MKL_INT* lda, double* s,
                        double* scond, double* amax, MKL_INT* info );
void __stdcall DPOEQUB_( const MKL_INT* n, const double* a, const MKL_INT* lda,
                         double* s, double* scond, double* amax, MKL_INT* info );
void __stdcall dpoequb( const MKL_INT* n, const double* a, const MKL_INT* lda, double* s,
                        double* scond, double* amax, MKL_INT* info );
void __stdcall dpoequb_( const MKL_INT* n, const double* a, const MKL_INT* lda,
                         double* s, double* scond, double* amax, MKL_INT* info );

void __stdcall DPOEQU( const MKL_INT* n, const double* a, const MKL_INT* lda, double* s,
                       double* scond, double* amax, MKL_INT* info );
void __stdcall DPOEQU_( const MKL_INT* n, const double* a, const MKL_INT* lda, double* s,
                        double* scond, double* amax, MKL_INT* info );
void __stdcall dpoequ( const MKL_INT* n, const double* a, const MKL_INT* lda, double* s,
                       double* scond, double* amax, MKL_INT* info );
void __stdcall dpoequ_( const MKL_INT* n, const double* a, const MKL_INT* lda, double* s,
                        double* scond, double* amax, MKL_INT* info );

void __stdcall DPORFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, const double* af,
                       const MKL_INT* ldaf, const double* b, const MKL_INT* ldb,
                       double* x, const MKL_INT* ldx, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DPORFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, const double* af,
                        const MKL_INT* ldaf, const double* b, const MKL_INT* ldb,
                        double* x, const MKL_INT* ldx, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dporfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, const double* af,
                       const MKL_INT* ldaf, const double* b, const MKL_INT* ldb,
                       double* x, const MKL_INT* ldx, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dporfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, const double* af,
                        const MKL_INT* ldaf, const double* b, const MKL_INT* ldb,
                        double* x, const MKL_INT* ldx, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DPORFSX( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                        const double* af, const MKL_INT* ldaf, const double* s,
                        const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DPORFSX_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                         const double* af, const MKL_INT* ldaf, const double* s,
                         const double* b, const MKL_INT* ldb, double* x,
                         const MKL_INT* ldx, double* rcond, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dporfsx( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                        const double* af, const MKL_INT* ldaf, const double* s,
                        const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dporfsx_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                         const double* af, const MKL_INT* ldaf, const double* s,
                         const double* b, const MKL_INT* ldb, double* x,
                         const MKL_INT* ldx, double* rcond, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DPOSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, double* a,
                      const MKL_INT* lda, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DPOSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall dposv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, double* a,
                      const MKL_INT* lda, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dposv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       MKL_INT* info );

void __stdcall DPOSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                       const MKL_INT* ldaf, char* equed, int equed_len, double* s, double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* rcond,
                       double* ferr, double* berr, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall DPOSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                        const MKL_INT* ldaf, char* equed, int equed_len, double* s, double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, double* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall dposvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                       const MKL_INT* ldaf, char* equed, int equed_len, double* s, double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* rcond,
                       double* ferr, double* berr, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall dposvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                        const MKL_INT* ldaf, char* equed, int equed_len, double* s, double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, double* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall DPOSVXX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                        const MKL_INT* ldaf, char* equed, int equed_len, double* s, double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* rcond,
                        double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                        double* err_bnds_norm, double* err_bnds_comp,
                        const MKL_INT* nparams, double* params, double* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall DPOSVXX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                         const MKL_INT* ldaf, char* equed, int equed_len, double* s, double* b,
                         const MKL_INT* ldb, double* x, const MKL_INT* ldx,
                         double* rcond, double* rpvgrw, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dposvxx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                        const MKL_INT* ldaf, char* equed, int equed_len, double* s, double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* rcond,
                        double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                        double* err_bnds_norm, double* err_bnds_comp,
                        const MKL_INT* nparams, double* params, double* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall dposvxx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                         const MKL_INT* ldaf, char* equed, int equed_len, double* s, double* b,
                         const MKL_INT* ldb, double* x, const MKL_INT* ldx,
                         double* rcond, double* rpvgrw, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DPOTF2( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall DPOTF2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall dpotf2( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall dpotf2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall DPOTRF( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall DPOTRF_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall dpotrf( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall dpotrf_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall DPOTRI( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall DPOTRI_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall dpotri( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall dpotri_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall DPOTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall DPOTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall dpotrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall dpotrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall DPPCON( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap,
                       const double* anorm, double* rcond, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall DPPCON_( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap,
                        const double* anorm, double* rcond, double* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall dppcon( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap,
                       const double* anorm, double* rcond, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall dppcon_( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap,
                        const double* anorm, double* rcond, double* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall DPPEQU( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap, double* s,
                       double* scond, double* amax, MKL_INT* info );
void __stdcall DPPEQU_( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap, double* s,
                        double* scond, double* amax, MKL_INT* info );
void __stdcall dppequ( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap, double* s,
                       double* scond, double* amax, MKL_INT* info );
void __stdcall dppequ_( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap, double* s,
                        double* scond, double* amax, MKL_INT* info );

void __stdcall DPPRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* ap, const double* afp, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                       double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DPPRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* ap, const double* afp, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                        double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dpprfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* ap, const double* afp, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                       double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dpprfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* ap, const double* afp, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                        double* berr, double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DPPSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      double* ap, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DPPSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       double* ap, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dppsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      double* ap, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dppsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       double* ap, double* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall DPPSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, double* ap, double* afp, char* equed, int equed_len,
                       double* s, double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DPPSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, double* ap, double* afp, char* equed, int equed_len,
                        double* s, double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dppsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, double* ap, double* afp, char* equed, int equed_len,
                       double* s, double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dppsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, double* ap, double* afp, char* equed, int equed_len,
                        double* s, double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DPPTRF( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, MKL_INT* info );
void __stdcall DPPTRF_( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, MKL_INT* info );
void __stdcall dpptrf( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, MKL_INT* info );
void __stdcall dpptrf_( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, MKL_INT* info );

void __stdcall DPPTRI( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, MKL_INT* info );
void __stdcall DPPTRI_( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, MKL_INT* info );
void __stdcall dpptri( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, MKL_INT* info );
void __stdcall dpptri_( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, MKL_INT* info );

void __stdcall DPPTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* ap, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DPPTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* ap, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dpptrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* ap, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dpptrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* ap, double* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall DPSTF2( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* piv, MKL_INT* rank, const double* tol, double* work,
                       MKL_INT* info );
void __stdcall DPSTF2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                        const double* tol, double* work, MKL_INT* info );
void __stdcall dpstf2( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* piv, MKL_INT* rank, const double* tol, double* work,
                       MKL_INT* info );
void __stdcall dpstf2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                        const double* tol, double* work, MKL_INT* info );

void __stdcall DPSTRF( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* piv, MKL_INT* rank, const double* tol, double* work,
                       MKL_INT* info );
void __stdcall DPSTRF_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                        const double* tol, double* work, MKL_INT* info );
void __stdcall dpstrf( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* piv, MKL_INT* rank, const double* tol, double* work,
                       MKL_INT* info );
void __stdcall dpstrf_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                        const double* tol, double* work, MKL_INT* info );

void __stdcall DPTCON( const MKL_INT* n, const double* d, const double* e,
                       const double* anorm, double* rcond, double* work, MKL_INT* info );
void __stdcall DPTCON_( const MKL_INT* n, const double* d, const double* e,
                        const double* anorm, double* rcond, double* work,
                        MKL_INT* info );
void __stdcall dptcon( const MKL_INT* n, const double* d, const double* e,
                       const double* anorm, double* rcond, double* work, MKL_INT* info );
void __stdcall dptcon_( const MKL_INT* n, const double* d, const double* e,
                        const double* anorm, double* rcond, double* work,
                        MKL_INT* info );

void __stdcall DPTEQR( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall DPTEQR_( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                        double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall dpteqr( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall dpteqr_( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                        double* z, const MKL_INT* ldz, double* work, MKL_INT* info );

void __stdcall DPTRFS( const MKL_INT* n, const MKL_INT* nrhs, const double* d,
                       const double* e, const double* df, const double* ef,
                       const double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* ferr, double* berr, double* work,
                       MKL_INT* info );
void __stdcall DPTRFS_( const MKL_INT* n, const MKL_INT* nrhs, const double* d,
                        const double* e, const double* df, const double* ef,
                        const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* ferr, double* berr, double* work,
                        MKL_INT* info );
void __stdcall dptrfs( const MKL_INT* n, const MKL_INT* nrhs, const double* d,
                       const double* e, const double* df, const double* ef,
                       const double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* ferr, double* berr, double* work,
                       MKL_INT* info );
void __stdcall dptrfs_( const MKL_INT* n, const MKL_INT* nrhs, const double* d,
                        const double* e, const double* df, const double* ef,
                        const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* ferr, double* berr, double* work,
                        MKL_INT* info );

void __stdcall DPTSV( const MKL_INT* n, const MKL_INT* nrhs, double* d, double* e,
                      double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DPTSV_( const MKL_INT* n, const MKL_INT* nrhs, double* d, double* e,
                       double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dptsv( const MKL_INT* n, const MKL_INT* nrhs, double* d, double* e,
                      double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dptsv_( const MKL_INT* n, const MKL_INT* nrhs, double* d, double* e,
                       double* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall DPTSVX( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* d, const double* e, double* df, double* ef,
                       const double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       double* work, MKL_INT* info );
void __stdcall DPTSVX_( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* d, const double* e, double* df, double* ef,
                        const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        double* work, MKL_INT* info );
void __stdcall dptsvx( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* d, const double* e, double* df, double* ef,
                       const double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       double* work, MKL_INT* info );
void __stdcall dptsvx_( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* d, const double* e, double* df, double* ef,
                        const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        double* work, MKL_INT* info );

void __stdcall DPTTRF( const MKL_INT* n, double* d, double* e, MKL_INT* info );
void __stdcall DPTTRF_( const MKL_INT* n, double* d, double* e, MKL_INT* info );
void __stdcall dpttrf( const MKL_INT* n, double* d, double* e, MKL_INT* info );
void __stdcall dpttrf_( const MKL_INT* n, double* d, double* e, MKL_INT* info );

void __stdcall DPTTRS( const MKL_INT* n, const MKL_INT* nrhs, const double* d,
                       const double* e, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DPTTRS_( const MKL_INT* n, const MKL_INT* nrhs, const double* d,
                        const double* e, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dpttrs( const MKL_INT* n, const MKL_INT* nrhs, const double* d,
                       const double* e, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dpttrs_( const MKL_INT* n, const MKL_INT* nrhs, const double* d,
                        const double* e, double* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall DPTTS2( const MKL_INT* n, const MKL_INT* nrhs, const double* d,
                       const double* e, double* b, const MKL_INT* ldb );
void __stdcall DPTTS2_( const MKL_INT* n, const MKL_INT* nrhs, const double* d,
                        const double* e, double* b, const MKL_INT* ldb );
void __stdcall dptts2( const MKL_INT* n, const MKL_INT* nrhs, const double* d,
                       const double* e, double* b, const MKL_INT* ldb );
void __stdcall dptts2_( const MKL_INT* n, const MKL_INT* nrhs, const double* d,
                        const double* e, double* b, const MKL_INT* ldb );

void __stdcall DRSCL( const MKL_INT* n, const double* sa, double* sx,
                      const MKL_INT* incx );
void __stdcall DRSCL_( const MKL_INT* n, const double* sa, double* sx,
                       const MKL_INT* incx );
void __stdcall drscl( const MKL_INT* n, const double* sa, double* sx,
                      const MKL_INT* incx );
void __stdcall drscl_( const MKL_INT* n, const double* sa, double* sx,
                       const MKL_INT* incx );

void __stdcall DSBEVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, double* ab, const MKL_INT* ldab, double* w,
                       double* z, const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall DSBEVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, double* ab, const MKL_INT* ldab, double* w,
                        double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall dsbevd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, double* ab, const MKL_INT* ldab, double* w,
                       double* z, const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall dsbevd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, double* ab, const MKL_INT* ldab, double* w,
                        double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall DSBEV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* kd, double* ab, const MKL_INT* ldab, double* w,
                      double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall DSBEV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, double* ab, const MKL_INT* ldab, double* w,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall dsbev( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* kd, double* ab, const MKL_INT* ldab, double* w,
                      double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall dsbev_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, double* ab, const MKL_INT* ldab, double* w,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* info );

void __stdcall DSBEVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* kd, double* ab,
                       const MKL_INT* ldab, double* q, const MKL_INT* ldq,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall DSBEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* kd, double* ab,
                        const MKL_INT* ldab, double* q, const MKL_INT* ldq,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, double* work, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );
void __stdcall dsbevx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* kd, double* ab,
                       const MKL_INT* ldab, double* q, const MKL_INT* ldq,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall dsbevx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* kd, double* ab,
                        const MKL_INT* ldab, double* q, const MKL_INT* ldq,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, double* work, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );

void __stdcall DSBGST( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, double* ab,
                       const MKL_INT* ldab, const double* bb, const MKL_INT* ldbb,
                       double* x, const MKL_INT* ldx, double* work, MKL_INT* info );
void __stdcall DSBGST_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, double* ab,
                        const MKL_INT* ldab, const double* bb, const MKL_INT* ldbb,
                        double* x, const MKL_INT* ldx, double* work, MKL_INT* info );
void __stdcall dsbgst( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, double* ab,
                       const MKL_INT* ldab, const double* bb, const MKL_INT* ldbb,
                       double* x, const MKL_INT* ldx, double* work, MKL_INT* info );
void __stdcall dsbgst_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, double* ab,
                        const MKL_INT* ldab, const double* bb, const MKL_INT* ldbb,
                        double* x, const MKL_INT* ldx, double* work, MKL_INT* info );

void __stdcall DSBGVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, double* ab,
                       const MKL_INT* ldab, double* bb, const MKL_INT* ldbb, double* w,
                       double* z, const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall DSBGVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, double* ab,
                        const MKL_INT* ldab, double* bb, const MKL_INT* ldbb, double* w,
                        double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall dsbgvd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, double* ab,
                       const MKL_INT* ldab, double* bb, const MKL_INT* ldbb, double* w,
                       double* z, const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall dsbgvd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, double* ab,
                        const MKL_INT* ldab, double* bb, const MKL_INT* ldbb, double* w,
                        double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall DSBGV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* ka, const MKL_INT* kb, double* ab,
                      const MKL_INT* ldab, double* bb, const MKL_INT* ldbb, double* w,
                      double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall DSBGV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, double* ab,
                       const MKL_INT* ldab, double* bb, const MKL_INT* ldbb, double* w,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall dsbgv( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* ka, const MKL_INT* kb, double* ab,
                      const MKL_INT* ldab, double* bb, const MKL_INT* ldbb, double* w,
                      double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall dsbgv_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, double* ab,
                       const MKL_INT* ldab, double* bb, const MKL_INT* ldbb, double* w,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* info );

void __stdcall DSBGVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                       double* ab, const MKL_INT* ldab, double* bb, const MKL_INT* ldbb,
                       double* q, const MKL_INT* ldq, const double* vl, const double* vu,
                       const MKL_INT* il, const MKL_INT* iu, const double* abstol,
                       MKL_INT* m, double* w, double* z, const MKL_INT* ldz,
                       double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall DSBGVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                        double* ab, const MKL_INT* ldab, double* bb, const MKL_INT* ldbb,
                        double* q, const MKL_INT* ldq, const double* vl,
                        const double* vu, const MKL_INT* il, const MKL_INT* iu,
                        const double* abstol, MKL_INT* m, double* w, double* z,
                        const MKL_INT* ldz, double* work, MKL_INT* iwork, MKL_INT* ifail,
                        MKL_INT* info );
void __stdcall dsbgvx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                       double* ab, const MKL_INT* ldab, double* bb, const MKL_INT* ldbb,
                       double* q, const MKL_INT* ldq, const double* vl, const double* vu,
                       const MKL_INT* il, const MKL_INT* iu, const double* abstol,
                       MKL_INT* m, double* w, double* z, const MKL_INT* ldz,
                       double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall dsbgvx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                        double* ab, const MKL_INT* ldab, double* bb, const MKL_INT* ldbb,
                        double* q, const MKL_INT* ldq, const double* vl,
                        const double* vu, const MKL_INT* il, const MKL_INT* iu,
                        const double* abstol, MKL_INT* m, double* w, double* z,
                        const MKL_INT* ldz, double* work, MKL_INT* iwork, MKL_INT* ifail,
                        MKL_INT* info );

void __stdcall DSBTRD( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, double* ab, const MKL_INT* ldab, double* d,
                       double* e, double* q, const MKL_INT* ldq, double* work,
                       MKL_INT* info );
void __stdcall DSBTRD_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, double* ab, const MKL_INT* ldab, double* d,
                        double* e, double* q, const MKL_INT* ldq, double* work,
                        MKL_INT* info );
void __stdcall dsbtrd( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, double* ab, const MKL_INT* ldab, double* d,
                       double* e, double* q, const MKL_INT* ldq, double* work,
                       MKL_INT* info );
void __stdcall dsbtrd_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, double* ab, const MKL_INT* ldab, double* d,
                        double* e, double* q, const MKL_INT* ldq, double* work,
                        MKL_INT* info );

double __stdcall DSECND( void );
double __stdcall DSECND_( void );
double __stdcall dsecnd( void );
double __stdcall dsecnd_( void );

void __stdcall DSFRK( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                      const MKL_INT* n, const MKL_INT* k, const double* alpha,
                      const double* a, const MKL_INT* lda, const double* beta,
                      double* c );
void __stdcall DSFRK_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* n, const MKL_INT* k, const double* alpha,
                       const double* a, const MKL_INT* lda, const double* beta,
                       double* c );
void __stdcall dsfrk( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                      const MKL_INT* n, const MKL_INT* k, const double* alpha,
                      const double* a, const MKL_INT* lda, const double* beta,
                      double* c );
void __stdcall dsfrk_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* n, const MKL_INT* k, const double* alpha,
                       const double* a, const MKL_INT* lda, const double* beta,
                       double* c );

void __stdcall DSGESV( const MKL_INT* n, const MKL_INT* nrhs, double* a,
                       const MKL_INT* lda, MKL_INT* ipiv, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* work,
                       float* swork, MKL_INT* iter, MKL_INT* info );
void __stdcall DSGESV_( const MKL_INT* n, const MKL_INT* nrhs, double* a,
                        const MKL_INT* lda, MKL_INT* ipiv, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* work,
                        float* swork, MKL_INT* iter, MKL_INT* info );
void __stdcall dsgesv( const MKL_INT* n, const MKL_INT* nrhs, double* a,
                       const MKL_INT* lda, MKL_INT* ipiv, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* work,
                       float* swork, MKL_INT* iter, MKL_INT* info );
void __stdcall dsgesv_( const MKL_INT* n, const MKL_INT* nrhs, double* a,
                        const MKL_INT* lda, MKL_INT* ipiv, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* work,
                        float* swork, MKL_INT* iter, MKL_INT* info );

void __stdcall DSPCON( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap,
                       const MKL_INT* ipiv, const double* anorm, double* rcond,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DSPCON_( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap,
                        const MKL_INT* ipiv, const double* anorm, double* rcond,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dspcon( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap,
                       const MKL_INT* ipiv, const double* anorm, double* rcond,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dspcon_( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap,
                        const MKL_INT* ipiv, const double* anorm, double* rcond,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DSPEVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* ap,
                       double* w, double* z, const MKL_INT* ldz, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall DSPEVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* ap,
                        double* w, double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall dspevd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* ap,
                       double* w, double* z, const MKL_INT* ldz, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall dspevd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* ap,
                        double* w, double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall DSPEV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* ap,
                      double* w, double* z, const MKL_INT* ldz, double* work,
                      MKL_INT* info );
void __stdcall DSPEV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* ap,
                       double* w, double* z, const MKL_INT* ldz, double* work,
                       MKL_INT* info );
void __stdcall dspev( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* ap,
                      double* w, double* z, const MKL_INT* ldz, double* work,
                      MKL_INT* info );
void __stdcall dspev_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* ap,
                       double* w, double* z, const MKL_INT* ldz, double* work,
                       MKL_INT* info );

void __stdcall DSPEVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* ap, const double* vl, const double* vu,
                       const MKL_INT* il, const MKL_INT* iu, const double* abstol,
                       MKL_INT* m, double* w, double* z, const MKL_INT* ldz,
                       double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall DSPEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, double* ap, const double* vl, const double* vu,
                        const MKL_INT* il, const MKL_INT* iu, const double* abstol,
                        MKL_INT* m, double* w, double* z, const MKL_INT* ldz,
                        double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall dspevx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* ap, const double* vl, const double* vu,
                       const MKL_INT* il, const MKL_INT* iu, const double* abstol,
                       MKL_INT* m, double* w, double* z, const MKL_INT* ldz,
                       double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall dspevx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, double* ap, const double* vl, const double* vu,
                        const MKL_INT* il, const MKL_INT* iu, const double* abstol,
                        MKL_INT* m, double* w, double* z, const MKL_INT* ldz,
                        double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall DSPGST( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       double* ap, const double* bp, MKL_INT* info );
void __stdcall DSPGST_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        double* ap, const double* bp, MKL_INT* info );
void __stdcall dspgst( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       double* ap, const double* bp, MKL_INT* info );
void __stdcall dspgst_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        double* ap, const double* bp, MKL_INT* info );

void __stdcall DSPGVD( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* ap, double* bp, double* w, double* z,
                       const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall DSPGVD_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, double* ap, double* bp, double* w, double* z,
                        const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall dspgvd( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* ap, double* bp, double* w, double* z,
                       const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall dspgvd_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, double* ap, double* bp, double* w, double* z,
                        const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall DSPGV( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, double* ap, double* bp, double* w, double* z,
                      const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall DSPGV_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* ap, double* bp, double* w, double* z,
                       const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall dspgv( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, double* ap, double* bp, double* w, double* z,
                      const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall dspgv_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* ap, double* bp, double* w, double* z,
                       const MKL_INT* ldz, double* work, MKL_INT* info );

void __stdcall DSPGVX( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, double* ap, double* bp,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall DSPGVX_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, double* ap, double* bp,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, double* work, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );
void __stdcall dspgvx( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, double* ap, double* bp,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall dspgvx_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, double* ap, double* bp,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, double* work, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );

void __stdcall DSPOSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       double* a, const MKL_INT* lda, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* work,
                       float* swork, MKL_INT* iter, MKL_INT* info );
void __stdcall DSPOSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        double* a, const MKL_INT* lda, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* work,
                        float* swork, MKL_INT* iter, MKL_INT* info );
void __stdcall dsposv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       double* a, const MKL_INT* lda, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* work,
                       float* swork, MKL_INT* iter, MKL_INT* info );
void __stdcall dsposv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        double* a, const MKL_INT* lda, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* work,
                        float* swork, MKL_INT* iter, MKL_INT* info );

void __stdcall DSPRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* ap, const double* afp, const MKL_INT* ipiv,
                       const double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* ferr, double* berr, double* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall DSPRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* ap, const double* afp, const MKL_INT* ipiv,
                        const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* ferr, double* berr, double* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall dsprfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* ap, const double* afp, const MKL_INT* ipiv,
                       const double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* ferr, double* berr, double* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall dsprfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* ap, const double* afp, const MKL_INT* ipiv,
                        const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* ferr, double* berr, double* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall DSPSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      double* ap, MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall DSPSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       double* ap, MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall dspsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      double* ap, MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall dspsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       double* ap, MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                       MKL_INT* info );

void __stdcall DSPSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const double* ap, double* afp, MKL_INT* ipiv,
                       const double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DSPSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* ap, double* afp,
                        MKL_INT* ipiv, const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dspsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const double* ap, double* afp, MKL_INT* ipiv,
                       const double* b, const MKL_INT* ldb, double* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dspsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* ap, double* afp,
                        MKL_INT* ipiv, const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DSPTRD( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, double* d,
                       double* e, double* tau, MKL_INT* info );
void __stdcall DSPTRD_( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, double* d,
                        double* e, double* tau, MKL_INT* info );
void __stdcall dsptrd( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, double* d,
                       double* e, double* tau, MKL_INT* info );
void __stdcall dsptrd_( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, double* d,
                        double* e, double* tau, MKL_INT* info );

void __stdcall DSPTRF( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall DSPTRF_( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, MKL_INT* ipiv,
                        MKL_INT* info );
void __stdcall dsptrf( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall dsptrf_( const char* uplo, int uplo_len, const MKL_INT* n, double* ap, MKL_INT* ipiv,
                        MKL_INT* info );

void __stdcall DSPTRI( const char* uplo, int uplo_len, const MKL_INT* n, double* ap,
                       const MKL_INT* ipiv, double* work, MKL_INT* info );
void __stdcall DSPTRI_( const char* uplo, int uplo_len, const MKL_INT* n, double* ap,
                        const MKL_INT* ipiv, double* work, MKL_INT* info );
void __stdcall dsptri( const char* uplo, int uplo_len, const MKL_INT* n, double* ap,
                       const MKL_INT* ipiv, double* work, MKL_INT* info );
void __stdcall dsptri_( const char* uplo, int uplo_len, const MKL_INT* n, double* ap,
                        const MKL_INT* ipiv, double* work, MKL_INT* info );

void __stdcall DSPTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* ap, const MKL_INT* ipiv, double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall DSPTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* ap, const MKL_INT* ipiv, double* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall dsptrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* ap, const MKL_INT* ipiv, double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall dsptrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* ap, const MKL_INT* ipiv, double* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall DSTEBZ( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, const double* d,
                       const double* e, MKL_INT* m, MKL_INT* nsplit, double* w,
                       MKL_INT* iblock, MKL_INT* isplit, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall DSTEBZ_( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, const double* d,
                        const double* e, MKL_INT* m, MKL_INT* nsplit, double* w,
                        MKL_INT* iblock, MKL_INT* isplit, double* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall dstebz( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, const double* d,
                       const double* e, MKL_INT* m, MKL_INT* nsplit, double* w,
                       MKL_INT* iblock, MKL_INT* isplit, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall dstebz_( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, const double* d,
                        const double* e, MKL_INT* m, MKL_INT* nsplit, double* w,
                        MKL_INT* iblock, MKL_INT* isplit, double* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall DSTEDC( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                       double* z, const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall DSTEDC_( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                        double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall dstedc( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                       double* z, const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall dstedc_( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                        double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall DSTEGR( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                       double* e, const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       double* z, const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall DSTEGR_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                        double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall dstegr( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                       double* e, const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       double* z, const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall dstegr_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                        double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall DSTEIN( const MKL_INT* n, const double* d, const double* e,
                       const MKL_INT* m, const double* w, const MKL_INT* iblock,
                       const MKL_INT* isplit, double* z, const MKL_INT* ldz,
                       double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall DSTEIN_( const MKL_INT* n, const double* d, const double* e,
                        const MKL_INT* m, const double* w, const MKL_INT* iblock,
                        const MKL_INT* isplit, double* z, const MKL_INT* ldz,
                        double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall dstein( const MKL_INT* n, const double* d, const double* e,
                       const MKL_INT* m, const double* w, const MKL_INT* iblock,
                       const MKL_INT* isplit, double* z, const MKL_INT* ldz,
                       double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall dstein_( const MKL_INT* n, const double* d, const double* e,
                        const MKL_INT* m, const double* w, const MKL_INT* iblock,
                        const MKL_INT* isplit, double* z, const MKL_INT* ldz,
                        double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall DSTEMR( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                       double* e, const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, MKL_INT* m, double* w, double* z,
                       const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                       MKL_INT* tryrac, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall DSTEMR_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                        double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, MKL_INT* m, double* w, double* z,
                        const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                        MKL_INT* tryrac, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall dstemr( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                       double* e, const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, MKL_INT* m, double* w, double* z,
                       const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                       MKL_INT* tryrac, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall dstemr_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                        double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, MKL_INT* m, double* w, double* z,
                        const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                        MKL_INT* tryrac, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall DSTEQR( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall DSTEQR_( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                        double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall dsteqr( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall dsteqr_( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                        double* z, const MKL_INT* ldz, double* work, MKL_INT* info );

void __stdcall DSTERF( const MKL_INT* n, double* d, double* e, MKL_INT* info );
void __stdcall DSTERF_( const MKL_INT* n, double* d, double* e, MKL_INT* info );
void __stdcall dsterf( const MKL_INT* n, double* d, double* e, MKL_INT* info );
void __stdcall dsterf_( const MKL_INT* n, double* d, double* e, MKL_INT* info );

void __stdcall DSTEVD( const char* jobz, int jobz_len, const MKL_INT* n, double* d, double* e,
                       double* z, const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall DSTEVD_( const char* jobz, int jobz_len, const MKL_INT* n, double* d, double* e,
                        double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall dstevd( const char* jobz, int jobz_len, const MKL_INT* n, double* d, double* e,
                       double* z, const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall dstevd_( const char* jobz, int jobz_len, const MKL_INT* n, double* d, double* e,
                        double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall DSTEV( const char* jobz, int jobz_len, const MKL_INT* n, double* d, double* e,
                      double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall DSTEV_( const char* jobz, int jobz_len, const MKL_INT* n, double* d, double* e,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall dstev( const char* jobz, int jobz_len, const MKL_INT* n, double* d, double* e,
                      double* z, const MKL_INT* ldz, double* work, MKL_INT* info );
void __stdcall dstev_( const char* jobz, int jobz_len, const MKL_INT* n, double* d, double* e,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* info );

void __stdcall DSTEVR( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                       double* e, const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       double* z, const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall DSTEVR_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                        double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall dstevr( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                       double* e, const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       double* z, const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall dstevr_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                        double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall DSTEVX( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                       double* e, const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall DSTEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                        double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, double* work, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );
void __stdcall dstevx( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                       double* e, const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       double* z, const MKL_INT* ldz, double* work, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall dstevx_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                        double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, double* work, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );

void __stdcall DSYCON( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                       double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DSYCON_( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                        double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dsycon( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                       double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dsycon_( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                        double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DSYEQUB( char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, double* s, double* scond, double* amax,
                        double* work, MKL_INT* info );
void __stdcall DSYEQUB_( char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                         const MKL_INT* lda, double* s, double* scond, double* amax,
                         double* work, MKL_INT* info );
void __stdcall dsyequb( char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, double* s, double* scond, double* amax,
                        double* work, MKL_INT* info );
void __stdcall dsyequb_( char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                         const MKL_INT* lda, double* s, double* scond, double* amax,
                         double* work, MKL_INT* info );

void __stdcall DSYEVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* w, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall DSYEVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* w, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall dsyevd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* w, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall dsyevd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* w, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall DSYEV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* w, double* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall DSYEV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* w, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dsyev( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                      const MKL_INT* lda, double* w, double* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall dsyev_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* w, double* work, const MKL_INT* lwork,
                       MKL_INT* info );

void __stdcall DSYEVR( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, const double* vl,
                       const double* vu, const MKL_INT* il, const MKL_INT* iu,
                       const double* abstol, MKL_INT* m, double* w, double* z,
                       const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall DSYEVR_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, double* a, const MKL_INT* lda,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall dsyevr( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, const double* vl,
                       const double* vu, const MKL_INT* il, const MKL_INT* iu,
                       const double* abstol, MKL_INT* m, double* w, double* z,
                       const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall dsyevr_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, double* a, const MKL_INT* lda,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall DSYEVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, const double* vl,
                       const double* vu, const MKL_INT* il, const MKL_INT* iu,
                       const double* abstol, MKL_INT* m, double* w, double* z,
                       const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall DSYEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, double* a, const MKL_INT* lda,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* ifail,
                        MKL_INT* info );
void __stdcall dsyevx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, const double* vl,
                       const double* vu, const MKL_INT* il, const MKL_INT* iu,
                       const double* abstol, MKL_INT* m, double* w, double* z,
                       const MKL_INT* ldz, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall dsyevx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, double* a, const MKL_INT* lda,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* ifail,
                        MKL_INT* info );

void __stdcall DSYGS2( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       double* a, const MKL_INT* lda, const double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall DSYGS2_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        double* a, const MKL_INT* lda, const double* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall dsygs2( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       double* a, const MKL_INT* lda, const double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall dsygs2_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        double* a, const MKL_INT* lda, const double* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall DSYGST( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       double* a, const MKL_INT* lda, const double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall DSYGST_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        double* a, const MKL_INT* lda, const double* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall dsygst( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       double* a, const MKL_INT* lda, const double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall dsygst_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        double* a, const MKL_INT* lda, const double* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall DSYGVD( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, double* w, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall DSYGVD_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, double* w, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall dsygvd( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, double* w, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall dsygvd_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                        const MKL_INT* ldb, double* w, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall DSYGV( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                      const MKL_INT* ldb, double* w, double* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall DSYGV_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, double* w, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dsygv( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                      const MKL_INT* ldb, double* w, double* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall dsygv_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, double* a, const MKL_INT* lda, double* b,
                       const MKL_INT* ldb, double* w, double* work, const MKL_INT* lwork,
                       MKL_INT* info );

void __stdcall DSYGVX( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb, const double* vl, const double* vu,
                       const MKL_INT* il, const MKL_INT* iu, const double* abstol,
                       MKL_INT* m, double* w, double* z, const MKL_INT* ldz,
                       double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall DSYGVX_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* ifail,
                        MKL_INT* info );
void __stdcall dsygvx( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb, const double* vl, const double* vu,
                       const MKL_INT* il, const MKL_INT* iu, const double* abstol,
                       MKL_INT* m, double* w, double* z, const MKL_INT* ldz,
                       double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall dsygvx_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        double* z, const MKL_INT* ldz, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* ifail,
                        MKL_INT* info );

void __stdcall DSYRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, const double* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                       double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DSYRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, const double* af,
                        const MKL_INT* ldaf, const MKL_INT* ipiv, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                        double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dsyrfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, const double* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                       double* berr, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dsyrfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, const double* af,
                        const MKL_INT* ldaf, const MKL_INT* ipiv, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* ferr,
                        double* berr, double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DSYRFSX( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                        const double* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const double* s, const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DSYRFSX_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                         const double* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                         const double* s, const double* b, const MKL_INT* ldb, double* x,
                         const MKL_INT* ldx, double* rcond, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dsyrfsx( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                        const double* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const double* s, const double* b, const MKL_INT* ldb, double* x,
                        const MKL_INT* ldx, double* rcond, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dsyrfsx_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                         const double* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                         const double* s, const double* b, const MKL_INT* ldb, double* x,
                         const MKL_INT* ldx, double* rcond, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DSYSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, double* a,
                      const MKL_INT* lda, MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                      double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSYSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       double* a, const MKL_INT* lda, MKL_INT* ipiv, double* b,
                       const MKL_INT* ldb, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dsysv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, double* a,
                      const MKL_INT* lda, MKL_INT* ipiv, double* b, const MKL_INT* ldb,
                      double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsysv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       double* a, const MKL_INT* lda, MKL_INT* ipiv, double* b,
                       const MKL_INT* ldb, double* work, const MKL_INT* lwork,
                       MKL_INT* info );

void __stdcall DSYSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                       double* af, const MKL_INT* ldaf, MKL_INT* ipiv, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* rcond,
                       double* ferr, double* berr, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall DSYSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                        double* af, const MKL_INT* ldaf, MKL_INT* ipiv, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall dsysvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                       double* af, const MKL_INT* ldaf, MKL_INT* ipiv, const double* b,
                       const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* rcond,
                       double* ferr, double* berr, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall dsysvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const double* a, const MKL_INT* lda,
                        double* af, const MKL_INT* ldaf, MKL_INT* ipiv, const double* b,
                        const MKL_INT* ldb, double* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall DSYSVXX( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                        const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, double* s,
                        double* b, const MKL_INT* ldb, double* x, const MKL_INT* ldx,
                        double* rcond, double* rpvgrw, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DSYSVXX_( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                         const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, double* s,
                         double* b, const MKL_INT* ldb, double* x, const MKL_INT* ldx,
                         double* rcond, double* rpvgrw, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dsysvxx( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                        const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, double* s,
                        double* b, const MKL_INT* ldb, double* x, const MKL_INT* ldx,
                        double* rcond, double* rpvgrw, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dsysvxx_( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, double* a, const MKL_INT* lda, double* af,
                         const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, double* s,
                         double* b, const MKL_INT* ldb, double* x, const MKL_INT* ldx,
                         double* rcond, double* rpvgrw, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DSYTD2( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* d, double* e, double* tau, MKL_INT* info );
void __stdcall DSYTD2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* d, double* e, double* tau,
                        MKL_INT* info );
void __stdcall dsytd2( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* d, double* e, double* tau, MKL_INT* info );
void __stdcall dsytd2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* d, double* e, double* tau,
                        MKL_INT* info );

void __stdcall DSYTF2( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall DSYTF2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall dsytf2( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall dsytf2_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall DSYTRD( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* d, double* e, double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSYTRD_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* d, double* e, double* tau,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytrd( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* d, double* e, double* tau, double* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytrd_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* d, double* e, double* tau,
                        double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DSYTRF( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* ipiv, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DSYTRF_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* ipiv, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsytrf( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* ipiv, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dsytrf_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* ipiv, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall DSYTRI( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       const MKL_INT* ipiv, double* work, MKL_INT* info );
void __stdcall DSYTRI_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, double* work,
                        MKL_INT* info );
void __stdcall dsytri( const char* uplo, int uplo_len, const MKL_INT* n, double* a, const MKL_INT* lda,
                       const MKL_INT* ipiv, double* work, MKL_INT* info );
void __stdcall dsytri_( const char* uplo, int uplo_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, double* work,
                        MKL_INT* info );

void __stdcall DSYTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DSYTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dsytrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dsytrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        double* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall DTBCON( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const double* ab,
                       const MKL_INT* ldab, double* rcond, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall DTBCON_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const double* ab,
                        const MKL_INT* ldab, double* rcond, double* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall dtbcon( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const double* ab,
                       const MKL_INT* ldab, double* rcond, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall dtbcon_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const double* ab,
                        const MKL_INT* ldab, double* rcond, double* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall DTBRFS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const double* ab, const MKL_INT* ldab, const double* b,
                       const MKL_INT* ldb, const double* x, const MKL_INT* ldx,
                       double* ferr, double* berr, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall DTBRFS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const double* ab, const MKL_INT* ldab, const double* b,
                        const MKL_INT* ldb, const double* x, const MKL_INT* ldx,
                        double* ferr, double* berr, double* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall dtbrfs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const double* ab, const MKL_INT* ldab, const double* b,
                       const MKL_INT* ldb, const double* x, const MKL_INT* ldx,
                       double* ferr, double* berr, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall dtbrfs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const double* ab, const MKL_INT* ldab, const double* b,
                        const MKL_INT* ldb, const double* x, const MKL_INT* ldx,
                        double* ferr, double* berr, double* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall DTBTRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const double* ab, const MKL_INT* ldab, double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall DTBTRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const double* ab, const MKL_INT* ldab, double* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall dtbtrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const double* ab, const MKL_INT* ldab, double* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall dtbtrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const double* ab, const MKL_INT* ldab, double* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall DTFSM( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                      const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                      const MKL_INT* n, const double* alpha, const double* a, double* b,
                      const MKL_INT* ldb );
void __stdcall DTFSM_( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                       const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                       const MKL_INT* n, const double* alpha, const double* a, double* b,
                       const MKL_INT* ldb );
void __stdcall dtfsm( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                      const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                      const MKL_INT* n, const double* alpha, const double* a, double* b,
                      const MKL_INT* ldb );
void __stdcall dtfsm_( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                       const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                       const MKL_INT* n, const double* alpha, const double* a, double* b,
                       const MKL_INT* ldb );

void __stdcall DTFTRI( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, double* a, MKL_INT* info );
void __stdcall DTFTRI_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, double* a, MKL_INT* info );
void __stdcall dtftri( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, double* a, MKL_INT* info );
void __stdcall dtftri_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, double* a, MKL_INT* info );

void __stdcall DTFTTP( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const double* arf, double* ap, MKL_INT* info );
void __stdcall DTFTTP_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const double* arf, double* ap, MKL_INT* info );
void __stdcall dtfttp( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const double* arf, double* ap, MKL_INT* info );
void __stdcall dtfttp_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const double* arf, double* ap, MKL_INT* info );

void __stdcall DTFTTR( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const double* arf, double* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall DTFTTR_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const double* arf, double* a, const MKL_INT* lda,
                        MKL_INT* info );
void __stdcall dtfttr( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const double* arf, double* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall dtfttr_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const double* arf, double* a, const MKL_INT* lda,
                        MKL_INT* info );

void __stdcall DTGEVC( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const double* s, const MKL_INT* lds,
                       const double* p, const MKL_INT* ldp, double* vl,
                       const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, double* work, MKL_INT* info );
void __stdcall DTGEVC_( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const double* s, const MKL_INT* lds,
                        const double* p, const MKL_INT* ldp, double* vl,
                        const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, double* work, MKL_INT* info );
void __stdcall dtgevc( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const double* s, const MKL_INT* lds,
                       const double* p, const MKL_INT* ldp, double* vl,
                       const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, double* work, MKL_INT* info );
void __stdcall dtgevc_( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const double* s, const MKL_INT* lds,
                        const double* p, const MKL_INT* ldp, double* vl,
                        const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, double* work, MKL_INT* info );

void __stdcall DTGEX2( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       double* q, const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                       const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DTGEX2_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* q, const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                        const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dtgex2( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       double* q, const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                       const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dtgex2_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* q, const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                        const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                        double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DTGEXC( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       double* q, const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                       MKL_INT* ifst, MKL_INT* ilst, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall DTGEXC_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* q, const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                        MKL_INT* ifst, MKL_INT* ilst, double* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall dtgexc( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       double* q, const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                       MKL_INT* ifst, MKL_INT* ilst, double* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall dtgexc_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        double* a, const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* q, const MKL_INT* ldq, double* z, const MKL_INT* ldz,
                        MKL_INT* ifst, MKL_INT* ilst, double* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall DTGSEN( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                       const MKL_INT* select, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* alphar,
                       double* alphai, double* beta, double* q, const MKL_INT* ldq,
                       double* z, const MKL_INT* ldz, MKL_INT* m, double* pl, double* pr,
                       double* dif, double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall DTGSEN_( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                        const MKL_INT* select, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* alphar, double* alphai, double* beta, double* q,
                        const MKL_INT* ldq, double* z, const MKL_INT* ldz, MKL_INT* m,
                        double* pl, double* pr, double* dif, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall dtgsen( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                       const MKL_INT* select, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb, double* alphar,
                       double* alphai, double* beta, double* q, const MKL_INT* ldq,
                       double* z, const MKL_INT* ldz, MKL_INT* m, double* pl, double* pr,
                       double* dif, double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall dtgsen_( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                        const MKL_INT* select, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        double* alphar, double* alphai, double* beta, double* q,
                        const MKL_INT* ldq, double* z, const MKL_INT* ldz, MKL_INT* m,
                        double* pl, double* pr, double* dif, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall DTGSJA( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb, const double* tola,
                       const double* tolb, double* alpha, double* beta, double* u,
                       const MKL_INT* ldu, double* v, const MKL_INT* ldv, double* q,
                       const MKL_INT* ldq, double* work, MKL_INT* ncycle,
                       MKL_INT* info );
void __stdcall DTGSJA_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        const double* tola, const double* tolb, double* alpha,
                        double* beta, double* u, const MKL_INT* ldu, double* v,
                        const MKL_INT* ldv, double* q, const MKL_INT* ldq, double* work,
                        MKL_INT* ncycle, MKL_INT* info );
void __stdcall dtgsja( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb, const double* tola,
                       const double* tolb, double* alpha, double* beta, double* u,
                       const MKL_INT* ldu, double* v, const MKL_INT* ldv, double* q,
                       const MKL_INT* ldq, double* work, MKL_INT* ncycle,
                       MKL_INT* info );
void __stdcall dtgsja_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        const double* tola, const double* tolb, double* alpha,
                        double* beta, double* u, const MKL_INT* ldu, double* v,
                        const MKL_INT* ldv, double* q, const MKL_INT* ldq, double* work,
                        MKL_INT* ncycle, MKL_INT* info );

void __stdcall DTGSNA( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const double* a, const MKL_INT* lda,
                       const double* b, const MKL_INT* ldb, const double* vl,
                       const MKL_INT* ldvl, const double* vr, const MKL_INT* ldvr,
                       double* s, double* dif, const MKL_INT* mm, MKL_INT* m,
                       double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall DTGSNA_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const double* a, const MKL_INT* lda,
                        const double* b, const MKL_INT* ldb, const double* vl,
                        const MKL_INT* ldvl, const double* vr, const MKL_INT* ldvr,
                        double* s, double* dif, const MKL_INT* mm, MKL_INT* m,
                        double* work, const MKL_INT* lwork, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall dtgsna( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const double* a, const MKL_INT* lda,
                       const double* b, const MKL_INT* ldb, const double* vl,
                       const MKL_INT* ldvl, const double* vr, const MKL_INT* ldvr,
                       double* s, double* dif, const MKL_INT* mm, MKL_INT* m,
                       double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall dtgsna_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const double* a, const MKL_INT* lda,
                        const double* b, const MKL_INT* ldb, const double* vl,
                        const MKL_INT* ldvl, const double* vr, const MKL_INT* ldvr,
                        double* s, double* dif, const MKL_INT* mm, MKL_INT* m,
                        double* work, const MKL_INT* lwork, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall DTGSY2( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const double* a, const MKL_INT* lda,
                       const double* b, const MKL_INT* ldb, double* c,
                       const MKL_INT* ldc, const double* d, const MKL_INT* ldd,
                       const double* e, const MKL_INT* lde, double* f,
                       const MKL_INT* ldf, double* scale, double* rdsum, double* rdscal,
                       MKL_INT* iwork, MKL_INT* pq, MKL_INT* info );
void __stdcall DTGSY2_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const double* a, const MKL_INT* lda,
                        const double* b, const MKL_INT* ldb, double* c,
                        const MKL_INT* ldc, const double* d, const MKL_INT* ldd,
                        const double* e, const MKL_INT* lde, double* f,
                        const MKL_INT* ldf, double* scale, double* rdsum, double* rdscal,
                        MKL_INT* iwork, MKL_INT* pq, MKL_INT* info );
void __stdcall dtgsy2( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const double* a, const MKL_INT* lda,
                       const double* b, const MKL_INT* ldb, double* c,
                       const MKL_INT* ldc, const double* d, const MKL_INT* ldd,
                       const double* e, const MKL_INT* lde, double* f,
                       const MKL_INT* ldf, double* scale, double* rdsum, double* rdscal,
                       MKL_INT* iwork, MKL_INT* pq, MKL_INT* info );
void __stdcall dtgsy2_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const double* a, const MKL_INT* lda,
                        const double* b, const MKL_INT* ldb, double* c,
                        const MKL_INT* ldc, const double* d, const MKL_INT* ldd,
                        const double* e, const MKL_INT* lde, double* f,
                        const MKL_INT* ldf, double* scale, double* rdsum, double* rdscal,
                        MKL_INT* iwork, MKL_INT* pq, MKL_INT* info );

void __stdcall DTGSYL( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const double* a, const MKL_INT* lda,
                       const double* b, const MKL_INT* ldb, double* c,
                       const MKL_INT* ldc, const double* d, const MKL_INT* ldd,
                       const double* e, const MKL_INT* lde, double* f,
                       const MKL_INT* ldf, double* scale, double* dif, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall DTGSYL_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const double* a, const MKL_INT* lda,
                        const double* b, const MKL_INT* ldb, double* c,
                        const MKL_INT* ldc, const double* d, const MKL_INT* ldd,
                        const double* e, const MKL_INT* lde, double* f,
                        const MKL_INT* ldf, double* scale, double* dif, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall dtgsyl( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const double* a, const MKL_INT* lda,
                       const double* b, const MKL_INT* ldb, double* c,
                       const MKL_INT* ldc, const double* d, const MKL_INT* ldd,
                       const double* e, const MKL_INT* lde, double* f,
                       const MKL_INT* ldf, double* scale, double* dif, double* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall dtgsyl_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const double* a, const MKL_INT* lda,
                        const double* b, const MKL_INT* ldb, double* c,
                        const MKL_INT* ldc, const double* d, const MKL_INT* ldd,
                        const double* e, const MKL_INT* lde, double* f,
                        const MKL_INT* ldf, double* scale, double* dif, double* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall DTPCON( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const double* ap, double* rcond, double* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall DTPCON_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const double* ap, double* rcond, double* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall dtpcon( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const double* ap, double* rcond, double* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall dtpcon_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const double* ap, double* rcond, double* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall DTPRFS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const double* ap,
                       const double* b, const MKL_INT* ldb, const double* x,
                       const MKL_INT* ldx, double* ferr, double* berr, double* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall DTPRFS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const double* ap,
                        const double* b, const MKL_INT* ldb, const double* x,
                        const MKL_INT* ldx, double* ferr, double* berr, double* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall dtprfs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const double* ap,
                       const double* b, const MKL_INT* ldb, const double* x,
                       const MKL_INT* ldx, double* ferr, double* berr, double* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall dtprfs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const double* ap,
                        const double* b, const MKL_INT* ldb, const double* x,
                        const MKL_INT* ldx, double* ferr, double* berr, double* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall DTPTRI( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, double* ap,
                       MKL_INT* info );
void __stdcall DTPTRI_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, double* ap,
                        MKL_INT* info );
void __stdcall dtptri( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, double* ap,
                       MKL_INT* info );
void __stdcall dtptri_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, double* ap,
                        MKL_INT* info );

void __stdcall DTPTRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const double* ap,
                       double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DTPTRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const double* ap,
                        double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dtptrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const double* ap,
                       double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall dtptrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const double* ap,
                        double* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall DTPTTF( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const double* ap, double* arf, MKL_INT* info );
void __stdcall DTPTTF_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const double* ap, double* arf, MKL_INT* info );
void __stdcall dtpttf( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const double* ap, double* arf, MKL_INT* info );
void __stdcall dtpttf_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const double* ap, double* arf, MKL_INT* info );

void __stdcall DTPTTR( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap, double* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall DTPTTR_( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap, double* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall dtpttr( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap, double* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall dtpttr_( const char* uplo, int uplo_len, const MKL_INT* n, const double* ap, double* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall DTRCON( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const double* a, const MKL_INT* lda,
                       double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DTRCON_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const double* a, const MKL_INT* lda,
                        double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dtrcon( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const double* a, const MKL_INT* lda,
                       double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dtrcon_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const double* a, const MKL_INT* lda,
                        double* rcond, double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DTREVC( const char* side, int side_len, const char* howmny, int howmny_len, MKL_INT* select,
                       const MKL_INT* n, const double* t, const MKL_INT* ldt, double* vl,
                       const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, double* work, MKL_INT* info );
void __stdcall DTREVC_( const char* side, int side_len, const char* howmny, int howmny_len, MKL_INT* select,
                        const MKL_INT* n, const double* t, const MKL_INT* ldt,
                        double* vl, const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, double* work, MKL_INT* info );
void __stdcall dtrevc( const char* side, int side_len, const char* howmny, int howmny_len, MKL_INT* select,
                       const MKL_INT* n, const double* t, const MKL_INT* ldt, double* vl,
                       const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, double* work, MKL_INT* info );
void __stdcall dtrevc_( const char* side, int side_len, const char* howmny, int howmny_len, MKL_INT* select,
                        const MKL_INT* n, const double* t, const MKL_INT* ldt,
                        double* vl, const MKL_INT* ldvl, double* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, double* work, MKL_INT* info );

void __stdcall DTREXC( const char* compq, int compq_len, const MKL_INT* n, double* t,
                       const MKL_INT* ldt, double* q, const MKL_INT* ldq, MKL_INT* ifst,
                       MKL_INT* ilst, double* work, MKL_INT* info );
void __stdcall DTREXC_( const char* compq, int compq_len, const MKL_INT* n, double* t,
                        const MKL_INT* ldt, double* q, const MKL_INT* ldq, MKL_INT* ifst,
                        MKL_INT* ilst, double* work, MKL_INT* info );
void __stdcall dtrexc( const char* compq, int compq_len, const MKL_INT* n, double* t,
                       const MKL_INT* ldt, double* q, const MKL_INT* ldq, MKL_INT* ifst,
                       MKL_INT* ilst, double* work, MKL_INT* info );
void __stdcall dtrexc_( const char* compq, int compq_len, const MKL_INT* n, double* t,
                        const MKL_INT* ldt, double* q, const MKL_INT* ldq, MKL_INT* ifst,
                        MKL_INT* ilst, double* work, MKL_INT* info );

void __stdcall DTRRFS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const double* a,
                       const MKL_INT* lda, const double* b, const MKL_INT* ldb,
                       const double* x, const MKL_INT* ldx, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall DTRRFS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const double* a,
                        const MKL_INT* lda, const double* b, const MKL_INT* ldb,
                        const double* x, const MKL_INT* ldx, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dtrrfs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const double* a,
                       const MKL_INT* lda, const double* b, const MKL_INT* ldb,
                       const double* x, const MKL_INT* ldx, double* ferr, double* berr,
                       double* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall dtrrfs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const double* a,
                        const MKL_INT* lda, const double* b, const MKL_INT* ldb,
                        const double* x, const MKL_INT* ldx, double* ferr, double* berr,
                        double* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall DTRSEN( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                       const MKL_INT* n, double* t, const MKL_INT* ldt, double* q,
                       const MKL_INT* ldq, double* wr, double* wi, MKL_INT* m, double* s,
                       double* sep, double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall DTRSEN_( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                        const MKL_INT* n, double* t, const MKL_INT* ldt, double* q,
                        const MKL_INT* ldq, double* wr, double* wi, MKL_INT* m,
                        double* s, double* sep, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall dtrsen( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                       const MKL_INT* n, double* t, const MKL_INT* ldt, double* q,
                       const MKL_INT* ldq, double* wr, double* wi, MKL_INT* m, double* s,
                       double* sep, double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall dtrsen_( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                        const MKL_INT* n, double* t, const MKL_INT* ldt, double* q,
                        const MKL_INT* ldq, double* wr, double* wi, MKL_INT* m,
                        double* s, double* sep, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall DTRSNA( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const double* t, const MKL_INT* ldt,
                       const double* vl, const MKL_INT* ldvl, const double* vr,
                       const MKL_INT* ldvr, double* s, double* sep, const MKL_INT* mm,
                       MKL_INT* m, double* work, const MKL_INT* ldwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall DTRSNA_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const double* t, const MKL_INT* ldt,
                        const double* vl, const MKL_INT* ldvl, const double* vr,
                        const MKL_INT* ldvr, double* s, double* sep, const MKL_INT* mm,
                        MKL_INT* m, double* work, const MKL_INT* ldwork, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall dtrsna( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const double* t, const MKL_INT* ldt,
                       const double* vl, const MKL_INT* ldvl, const double* vr,
                       const MKL_INT* ldvr, double* s, double* sep, const MKL_INT* mm,
                       MKL_INT* m, double* work, const MKL_INT* ldwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall dtrsna_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const double* t, const MKL_INT* ldt,
                        const double* vl, const MKL_INT* ldvl, const double* vr,
                        const MKL_INT* ldvr, double* s, double* sep, const MKL_INT* mm,
                        MKL_INT* m, double* work, const MKL_INT* ldwork, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall DTRSYL( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                       const MKL_INT* m, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const double* b, const MKL_INT* ldb,
                       double* c, const MKL_INT* ldc, double* scale, MKL_INT* info );
void __stdcall DTRSYL_( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                        const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const double* b, const MKL_INT* ldb,
                        double* c, const MKL_INT* ldc, double* scale, MKL_INT* info );
void __stdcall dtrsyl( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                       const MKL_INT* m, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const double* b, const MKL_INT* ldb,
                       double* c, const MKL_INT* ldc, double* scale, MKL_INT* info );
void __stdcall dtrsyl_( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                        const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const double* b, const MKL_INT* ldb,
                        double* c, const MKL_INT* ldc, double* scale, MKL_INT* info );

void __stdcall DTRTI2( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall DTRTI2_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall dtrti2( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall dtrti2_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall DTRTRI( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall DTRTRI_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall dtrtri( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, double* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall dtrtri_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, double* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall DTRTRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall DTRTRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall dtrtrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const double* a,
                       const MKL_INT* lda, double* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall dtrtrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const double* a,
                        const MKL_INT* lda, double* b, const MKL_INT* ldb,
                        MKL_INT* info );

void __stdcall DTRTTF( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const double* a, const MKL_INT* lda, double* arf, MKL_INT* info );
void __stdcall DTRTTF_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const double* a, const MKL_INT* lda, double* arf,
                        MKL_INT* info );
void __stdcall dtrttf( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const double* a, const MKL_INT* lda, double* arf, MKL_INT* info );
void __stdcall dtrttf_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const double* a, const MKL_INT* lda, double* arf,
                        MKL_INT* info );

void __stdcall DTRTTP( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, double* ap, MKL_INT* info );
void __stdcall DTRTTP_( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, double* ap, MKL_INT* info );
void __stdcall dtrttp( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, double* ap, MKL_INT* info );
void __stdcall dtrttp_( const char* uplo, int uplo_len, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, double* ap, MKL_INT* info );

void __stdcall DTZRQF( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, MKL_INT* info );
void __stdcall DTZRQF_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, MKL_INT* info );
void __stdcall dtzrqf( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, MKL_INT* info );
void __stdcall dtzrqf_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, MKL_INT* info );

void __stdcall DTZRZF( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DTZRZF_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall dtzrzf( const MKL_INT* m, const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* tau, double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dtzrzf_( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* tau, double* work,
                        const MKL_INT* lwork, MKL_INT* info );

double __stdcall DZSUM1( const MKL_INT* n, const MKL_Complex16* cx,
                         const MKL_INT* incx );
double __stdcall DZSUM1_( const MKL_INT* n, const MKL_Complex16* cx,
                          const MKL_INT* incx );
double __stdcall dzsum1( const MKL_INT* n, const MKL_Complex16* cx,
                         const MKL_INT* incx );
double __stdcall dzsum1_( const MKL_INT* n, const MKL_Complex16* cx,
                          const MKL_INT* incx );

MKL_INT __stdcall ICMAX1( const MKL_INT* n, const MKL_Complex8* cx,
                          const MKL_INT* incx );
MKL_INT __stdcall ICMAX1_( const MKL_INT* n, const MKL_Complex8* cx,
                           const MKL_INT* incx );
MKL_INT __stdcall icmax1( const MKL_INT* n, const MKL_Complex8* cx,
                          const MKL_INT* incx );
MKL_INT __stdcall icmax1_( const MKL_INT* n, const MKL_Complex8* cx,
                           const MKL_INT* incx );

MKL_INT __stdcall IEEECK( const MKL_INT* ispec, const float* zero, const float* one );
MKL_INT __stdcall IEEECK_( const MKL_INT* ispec, const float* zero, const float* one );
MKL_INT __stdcall ieeeck( const MKL_INT* ispec, const float* zero, const float* one );
MKL_INT __stdcall ieeeck_( const MKL_INT* ispec, const float* zero, const float* one );

MKL_INT __stdcall ILACLC( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ILACLC_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                           const MKL_INT* lda );
MKL_INT __stdcall ilaclc( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ilaclc_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                           const MKL_INT* lda );

MKL_INT __stdcall ILACLR( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ILACLR_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                           const MKL_INT* lda );
MKL_INT __stdcall ilaclr( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ilaclr_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex8* a,
                           const MKL_INT* lda );

MKL_INT __stdcall ILADIAG( const char* diag , int diag_len);
MKL_INT __stdcall ILADIAG_( const char* diag , int diag_len);
MKL_INT __stdcall iladiag( const char* diag , int diag_len);
MKL_INT __stdcall iladiag_( const char* diag , int diag_len);

MKL_INT __stdcall ILADLC( const MKL_INT* m, const MKL_INT* n, const double* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ILADLC_( const MKL_INT* m, const MKL_INT* n, const double* a,
                           const MKL_INT* lda );
MKL_INT __stdcall iladlc( const MKL_INT* m, const MKL_INT* n, const double* a,
                          const MKL_INT* lda );
MKL_INT __stdcall iladlc_( const MKL_INT* m, const MKL_INT* n, const double* a,
                           const MKL_INT* lda );

MKL_INT __stdcall ILADLR( const MKL_INT* m, const MKL_INT* n, const double* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ILADLR_( const MKL_INT* m, const MKL_INT* n, const double* a,
                           const MKL_INT* lda );
MKL_INT __stdcall iladlr( const MKL_INT* m, const MKL_INT* n, const double* a,
                          const MKL_INT* lda );
MKL_INT __stdcall iladlr_( const MKL_INT* m, const MKL_INT* n, const double* a,
                           const MKL_INT* lda );

MKL_INT __stdcall ILAENV( const MKL_INT* ispec, const char* name, int name_len, const char* opts, int opts_len,
                          const MKL_INT* n1, const MKL_INT* n2, const MKL_INT* n3,
                          const MKL_INT* n4 );
MKL_INT __stdcall ILAENV_( const MKL_INT* ispec, const char* name, int name_len, const char* opts, int opts_len,
                           const MKL_INT* n1, const MKL_INT* n2, const MKL_INT* n3,
                           const MKL_INT* n4 );
MKL_INT __stdcall ilaenv( const MKL_INT* ispec, const char* name, int name_len, const char* opts, int opts_len,
                          const MKL_INT* n1, const MKL_INT* n2, const MKL_INT* n3,
                          const MKL_INT* n4 );
MKL_INT __stdcall ilaenv_( const MKL_INT* ispec, const char* name, int name_len, const char* opts, int opts_len,
                           const MKL_INT* n1, const MKL_INT* n2, const MKL_INT* n3,
                           const MKL_INT* n4 );

MKL_INT __stdcall ILAENV2STAGE( const MKL_INT* ispec, const char* name, int name_len, const char* opts, int opts_len,
                          const MKL_INT* n1, const MKL_INT* n2, const MKL_INT* n3,
                          const MKL_INT* n4 );
MKL_INT __stdcall ILAENV2STAGE_( const MKL_INT* ispec, const char* name, int name_len, const char* opts, int opts_len,
                           const MKL_INT* n1, const MKL_INT* n2, const MKL_INT* n3,
                           const MKL_INT* n4 );
MKL_INT __stdcall ilaenv2stage( const MKL_INT* ispec, const char* name, int name_len, const char* opts, int opts_len,
                          const MKL_INT* n1, const MKL_INT* n2, const MKL_INT* n3,
                          const MKL_INT* n4 );
MKL_INT __stdcall ilaenv2stage_( const MKL_INT* ispec, const char* name, int name_len, const char* opts, int opts_len,
                           const MKL_INT* n1, const MKL_INT* n2, const MKL_INT* n3,
                           const MKL_INT* n4 );

MKL_INT __stdcall ILAPREC( const char* prec , int prec_len);
MKL_INT __stdcall ILAPREC_( const char* prec , int prec_len);
MKL_INT __stdcall ilaprec( const char* prec , int prec_len);
MKL_INT __stdcall ilaprec_( const char* prec , int prec_len);

MKL_INT __stdcall ILASLC( const MKL_INT* m, const MKL_INT* n, const float* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ILASLC_( const MKL_INT* m, const MKL_INT* n, const float* a,
                           const MKL_INT* lda );
MKL_INT __stdcall ilaslc( const MKL_INT* m, const MKL_INT* n, const float* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ilaslc_( const MKL_INT* m, const MKL_INT* n, const float* a,
                           const MKL_INT* lda );

MKL_INT __stdcall ILASLR( const MKL_INT* m, const MKL_INT* n, const float* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ILASLR_( const MKL_INT* m, const MKL_INT* n, const float* a,
                           const MKL_INT* lda );
MKL_INT __stdcall ilaslr( const MKL_INT* m, const MKL_INT* n, const float* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ilaslr_( const MKL_INT* m, const MKL_INT* n, const float* a,
                           const MKL_INT* lda );

MKL_INT __stdcall ILATRANS( const char* trans , int trans_len);
MKL_INT __stdcall ILATRANS_( const char* trans , int trans_len);
MKL_INT __stdcall ilatrans( const char* trans , int trans_len);
MKL_INT __stdcall ilatrans_( const char* trans , int trans_len);

MKL_INT __stdcall ILAUPLO( const char* uplo , int uplo_len);
MKL_INT __stdcall ILAUPLO_( const char* uplo , int uplo_len);
MKL_INT __stdcall ilauplo( const char* uplo , int uplo_len);
MKL_INT __stdcall ilauplo_( const char* uplo , int uplo_len);

void __stdcall ILAVER( MKL_INT* vers_major, MKL_INT* vers_minor, MKL_INT* vers_patch );
void __stdcall ILAVER_( MKL_INT* vers_major, MKL_INT* vers_minor, MKL_INT* vers_patch );
void __stdcall ilaver( MKL_INT* vers_major, MKL_INT* vers_minor, MKL_INT* vers_patch );
void __stdcall ilaver_( MKL_INT* vers_major, MKL_INT* vers_minor, MKL_INT* vers_patch );

MKL_INT __stdcall ILAZLC( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ILAZLC_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                           const MKL_INT* lda );
MKL_INT __stdcall ilazlc( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ilazlc_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                           const MKL_INT* lda );

MKL_INT __stdcall ILAZLR( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ILAZLR_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                           const MKL_INT* lda );
MKL_INT __stdcall ilazlr( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                          const MKL_INT* lda );
MKL_INT __stdcall ilazlr_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                           const MKL_INT* lda );

MKL_INT __stdcall IPARMQ( const MKL_INT* ispec, const char* name, int name_len, const char* opts, int opts_len,
                          const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                          const MKL_INT* lwork );
MKL_INT __stdcall IPARMQ_( const MKL_INT* ispec, const char* name, int name_len, const char* opts, int opts_len,
                           const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                           const MKL_INT* lwork );
MKL_INT __stdcall iparmq( const MKL_INT* ispec, const char* name, int name_len, const char* opts, int opts_len,
                          const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                          const MKL_INT* lwork );
MKL_INT __stdcall iparmq_( const MKL_INT* ispec, const char* name, int name_len, const char* opts, int opts_len,
                           const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                           const MKL_INT* lwork );

MKL_INT __stdcall IZMAX1( const MKL_INT* n, const MKL_Complex16* cx,
                          const MKL_INT* incx );
MKL_INT __stdcall IZMAX1_( const MKL_INT* n, const MKL_Complex16* cx,
                           const MKL_INT* incx );
MKL_INT __stdcall izmax1( const MKL_INT* n, const MKL_Complex16* cx,
                          const MKL_INT* incx );
MKL_INT __stdcall izmax1_( const MKL_INT* n, const MKL_Complex16* cx,
                           const MKL_INT* incx );

MKL_INT __stdcall LSAMEN( const MKL_INT* n, const char* ca, int ca_len, const char* cb , int cb_len);
MKL_INT __stdcall LSAMEN_( const MKL_INT* n, const char* ca, int ca_len, const char* cb , int cb_len);
MKL_INT __stdcall lsamen( const MKL_INT* n, const char* ca, int ca_len, const char* cb , int cb_len);
MKL_INT __stdcall lsamen_( const MKL_INT* n, const char* ca, int ca_len, const char* cb , int cb_len);

void __stdcall SBDSDC( const char* uplo, int uplo_len, const char* compq, int compq_len, const MKL_INT* n, float* d,
                       float* e, float* u, const MKL_INT* ldu, float* vt,
                       const MKL_INT* ldvt, float* q, MKL_INT* iq, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall SBDSDC_( const char* uplo, int uplo_len, const char* compq, int compq_len, const MKL_INT* n, float* d,
                        float* e, float* u, const MKL_INT* ldu, float* vt,
                        const MKL_INT* ldvt, float* q, MKL_INT* iq, float* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall sbdsdc( const char* uplo, int uplo_len, const char* compq, int compq_len, const MKL_INT* n, float* d,
                       float* e, float* u, const MKL_INT* ldu, float* vt,
                       const MKL_INT* ldvt, float* q, MKL_INT* iq, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall sbdsdc_( const char* uplo, int uplo_len, const char* compq, int compq_len, const MKL_INT* n, float* d,
                        float* e, float* u, const MKL_INT* ldu, float* vt,
                        const MKL_INT* ldvt, float* q, MKL_INT* iq, float* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall SBDSQR( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                       const MKL_INT* nru, const MKL_INT* ncc, float* d, float* e,
                       float* vt, const MKL_INT* ldvt, float* u, const MKL_INT* ldu,
                       float* c, const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall SBDSQR_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                        const MKL_INT* nru, const MKL_INT* ncc, float* d, float* e,
                        float* vt, const MKL_INT* ldvt, float* u, const MKL_INT* ldu,
                        float* c, const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sbdsqr( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                       const MKL_INT* nru, const MKL_INT* ncc, float* d, float* e,
                       float* vt, const MKL_INT* ldvt, float* u, const MKL_INT* ldu,
                       float* c, const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sbdsqr_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                        const MKL_INT* nru, const MKL_INT* ncc, float* d, float* e,
                        float* vt, const MKL_INT* ldvt, float* u, const MKL_INT* ldu,
                        float* c, const MKL_INT* ldc, float* work, MKL_INT* info );

float __stdcall SCSUM1( const MKL_INT* n, const MKL_Complex8* cx, const MKL_INT* incx );
float __stdcall SCSUM1_( const MKL_INT* n, const MKL_Complex8* cx, const MKL_INT* incx );
float __stdcall scsum1( const MKL_INT* n, const MKL_Complex8* cx, const MKL_INT* incx );
float __stdcall scsum1_( const MKL_INT* n, const MKL_Complex8* cx, const MKL_INT* incx );

void __stdcall SDISNA( const char* job, int job_len, const MKL_INT* m, const MKL_INT* n,
                       const float* d, float* sep, MKL_INT* info );
void __stdcall SDISNA_( const char* job, int job_len, const MKL_INT* m, const MKL_INT* n,
                        const float* d, float* sep, MKL_INT* info );
void __stdcall sdisna( const char* job, int job_len, const MKL_INT* m, const MKL_INT* n,
                       const float* d, float* sep, MKL_INT* info );
void __stdcall sdisna_( const char* job, int job_len, const MKL_INT* m, const MKL_INT* n,
                        const float* d, float* sep, MKL_INT* info );

float __stdcall SECOND( void );
float __stdcall SECOND_( void );
float __stdcall second( void );
float __stdcall second_( void );

void __stdcall SGBBRD( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                       float* ab, const MKL_INT* ldab, float* d, float* e, float* q,
                       const MKL_INT* ldq, float* pt, const MKL_INT* ldpt, float* c,
                       const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall SGBBRD_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                        float* ab, const MKL_INT* ldab, float* d, float* e, float* q,
                        const MKL_INT* ldq, float* pt, const MKL_INT* ldpt, float* c,
                        const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sgbbrd( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                       float* ab, const MKL_INT* ldab, float* d, float* e, float* q,
                       const MKL_INT* ldq, float* pt, const MKL_INT* ldpt, float* c,
                       const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sgbbrd_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                        float* ab, const MKL_INT* ldab, float* d, float* e, float* q,
                        const MKL_INT* ldq, float* pt, const MKL_INT* ldpt, float* c,
                        const MKL_INT* ldc, float* work, MKL_INT* info );

void __stdcall SGBCON( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                       const MKL_INT* ipiv, const float* anorm, float* rcond,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SGBCON_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                        const MKL_INT* ipiv, const float* anorm, float* rcond,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgbcon( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                       const MKL_INT* ipiv, const float* anorm, float* rcond,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgbcon_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                        const MKL_INT* ipiv, const float* anorm, float* rcond,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGBEQUB( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                        float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                        MKL_INT* info );
void __stdcall SGBEQUB_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                         float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                         MKL_INT* info );
void __stdcall sgbequb( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                        float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                        MKL_INT* info );
void __stdcall sgbequb_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                         float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                         MKL_INT* info );

void __stdcall SGBEQU( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const float* ab, const MKL_INT* ldab, float* r,
                       float* c, float* rowcnd, float* colcnd, float* amax,
                       MKL_INT* info );
void __stdcall SGBEQU_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                        float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                        MKL_INT* info );
void __stdcall sgbequ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const float* ab, const MKL_INT* ldab, float* r,
                       float* c, float* rowcnd, float* colcnd, float* amax,
                       MKL_INT* info );
void __stdcall sgbequ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                        float* r, float* c, float* rowcnd, float* colcnd, float* amax,
                        MKL_INT* info );

void __stdcall SGBRFS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const float* ab,
                       const MKL_INT* ldab, const float* afb, const MKL_INT* ldafb,
                       const MKL_INT* ipiv, const float* b, const MKL_INT* ldb, float* x,
                       const MKL_INT* ldx, float* ferr, float* berr, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall SGBRFS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const float* ab,
                        const MKL_INT* ldab, const float* afb, const MKL_INT* ldafb,
                        const MKL_INT* ipiv, const float* b, const MKL_INT* ldb,
                        float* x, const MKL_INT* ldx, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgbrfs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const float* ab,
                       const MKL_INT* ldab, const float* afb, const MKL_INT* ldafb,
                       const MKL_INT* ipiv, const float* b, const MKL_INT* ldb, float* x,
                       const MKL_INT* ldx, float* ferr, float* berr, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall sgbrfs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const float* ab,
                        const MKL_INT* ldab, const float* afb, const MKL_INT* ldafb,
                        const MKL_INT* ipiv, const float* b, const MKL_INT* ldb,
                        float* x, const MKL_INT* ldx, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGBRFSX( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        const float* ab, const MKL_INT* ldab, const float* afb,
                        const MKL_INT* ldafb, const MKL_INT* ipiv, const float* r,
                        const float* c, const float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SGBRFSX_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         const float* ab, const MKL_INT* ldab, const float* afb,
                         const MKL_INT* ldafb, const MKL_INT* ipiv, const float* r,
                         const float* c, const float* b, const MKL_INT* ldb, float* x,
                         const MKL_INT* ldx, float* rcond, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgbrfsx( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        const float* ab, const MKL_INT* ldab, const float* afb,
                        const MKL_INT* ldafb, const MKL_INT* ipiv, const float* r,
                        const float* c, const float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgbrfsx_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         const float* ab, const MKL_INT* ldab, const float* afb,
                         const MKL_INT* ldafb, const MKL_INT* ipiv, const float* r,
                         const float* c, const float* b, const MKL_INT* ldb, float* x,
                         const MKL_INT* ldx, float* rcond, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGBSV( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                      const MKL_INT* nrhs, float* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                      float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall SGBSV_( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                       const MKL_INT* nrhs, float* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sgbsv( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                      const MKL_INT* nrhs, float* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                      float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sgbsv_( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                       const MKL_INT* nrhs, float* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, float* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall SGBSVX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                       float* ab, const MKL_INT* ldab, float* afb, const MKL_INT* ldafb,
                       MKL_INT* ipiv, char* equed, int equed_len, float* r, float* c, float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                       float* ferr, float* berr, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall SGBSVX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        float* ab, const MKL_INT* ldab, float* afb, const MKL_INT* ldafb,
                        MKL_INT* ipiv, char* equed, int equed_len, float* r, float* c, float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                        float* ferr, float* berr, float* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall sgbsvx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                       float* ab, const MKL_INT* ldab, float* afb, const MKL_INT* ldafb,
                       MKL_INT* ipiv, char* equed, int equed_len, float* r, float* c, float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                       float* ferr, float* berr, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall sgbsvx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        float* ab, const MKL_INT* ldab, float* afb, const MKL_INT* ldafb,
                        MKL_INT* ipiv, char* equed, int equed_len, float* r, float* c, float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                        float* ferr, float* berr, float* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall SGBSVXX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        float* ab, const MKL_INT* ldab, float* afb, const MKL_INT* ldafb,
                        MKL_INT* ipiv, char* equed, int equed_len, float* r, float* c, float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                        float* rpvgrw, float* berr, const MKL_INT* n_err_bnds,
                        float* err_bnds_norm, float* err_bnds_comp,
                        const MKL_INT* nparams, float* params, float* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall SGBSVXX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         float* ab, const MKL_INT* ldab, float* afb,
                         const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                         float* c, float* b, const MKL_INT* ldb, float* x,
                         const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgbsvxx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        float* ab, const MKL_INT* ldab, float* afb, const MKL_INT* ldafb,
                        MKL_INT* ipiv, char* equed, int equed_len, float* r, float* c, float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                        float* rpvgrw, float* berr, const MKL_INT* n_err_bnds,
                        float* err_bnds_norm, float* err_bnds_comp,
                        const MKL_INT* nparams, float* params, float* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall sgbsvxx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         float* ab, const MKL_INT* ldab, float* afb,
                         const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                         float* c, float* b, const MKL_INT* ldb, float* x,
                         const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGBTF2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, float* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall SGBTF2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, float* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                        MKL_INT* info );
void __stdcall sgbtf2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, float* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall sgbtf2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, float* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                        MKL_INT* info );

void __stdcall SGBTRF( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, float* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall SGBTRF_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, float* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                        MKL_INT* info );
void __stdcall sgbtrf( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, float* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall sgbtrf_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, float* ab, const MKL_INT* ldab, MKL_INT* ipiv,
                        MKL_INT* info );

void __stdcall SGBTRS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const float* ab,
                       const MKL_INT* ldab, const MKL_INT* ipiv, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall SGBTRS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const float* ab,
                        const MKL_INT* ldab, const MKL_INT* ipiv, float* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall sgbtrs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const float* ab,
                       const MKL_INT* ldab, const MKL_INT* ipiv, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall sgbtrs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const float* ab,
                        const MKL_INT* ldab, const MKL_INT* ipiv, float* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall SGEBAK( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const float* scale,
                       const MKL_INT* m, float* v, const MKL_INT* ldv, MKL_INT* info );
void __stdcall SGEBAK_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const float* scale,
                        const MKL_INT* m, float* v, const MKL_INT* ldv, MKL_INT* info );
void __stdcall sgebak( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const float* scale,
                       const MKL_INT* m, float* v, const MKL_INT* ldv, MKL_INT* info );
void __stdcall sgebak_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const float* scale,
                        const MKL_INT* m, float* v, const MKL_INT* ldv, MKL_INT* info );

void __stdcall SGEBAL( const char* job, int job_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* ilo, MKL_INT* ihi, float* scale, MKL_INT* info );
void __stdcall SGEBAL_( const char* job, int job_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* ilo, MKL_INT* ihi, float* scale, MKL_INT* info );
void __stdcall sgebal( const char* job, int job_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* ilo, MKL_INT* ihi, float* scale, MKL_INT* info );
void __stdcall sgebal_( const char* job, int job_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* ilo, MKL_INT* ihi, float* scale, MKL_INT* info );

void __stdcall SGEBD2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* d, float* e, float* tauq, float* taup, float* work,
                       MKL_INT* info );
void __stdcall SGEBD2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* d, float* e, float* tauq, float* taup, float* work,
                        MKL_INT* info );
void __stdcall sgebd2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* d, float* e, float* tauq, float* taup, float* work,
                       MKL_INT* info );
void __stdcall sgebd2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* d, float* e, float* tauq, float* taup, float* work,
                        MKL_INT* info );

void __stdcall SGEBRD( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* d, float* e, float* tauq, float* taup, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGEBRD_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* d, float* e, float* tauq, float* taup, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgebrd( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* d, float* e, float* tauq, float* taup, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgebrd_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* d, float* e, float* tauq, float* taup, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGECON( const char* norm, int norm_len, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const float* anorm, float* rcond, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall SGECON_( const char* norm, int norm_len, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const float* anorm, float* rcond,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgecon( const char* norm, int norm_len, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const float* anorm, float* rcond, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall sgecon_( const char* norm, int norm_len, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const float* anorm, float* rcond,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGEEQUB( const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, float* r, float* c, float* rowcnd,
                        float* colcnd, float* amax, MKL_INT* info );
void __stdcall SGEEQUB_( const MKL_INT* m, const MKL_INT* n, const float* a,
                         const MKL_INT* lda, float* r, float* c, float* rowcnd,
                         float* colcnd, float* amax, MKL_INT* info );
void __stdcall sgeequb( const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, float* r, float* c, float* rowcnd,
                        float* colcnd, float* amax, MKL_INT* info );
void __stdcall sgeequb_( const MKL_INT* m, const MKL_INT* n, const float* a,
                         const MKL_INT* lda, float* r, float* c, float* rowcnd,
                         float* colcnd, float* amax, MKL_INT* info );

void __stdcall SGEEQU( const MKL_INT* m, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, float* r, float* c, float* rowcnd,
                       float* colcnd, float* amax, MKL_INT* info );
void __stdcall SGEEQU_( const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, float* r, float* c, float* rowcnd,
                        float* colcnd, float* amax, MKL_INT* info );
void __stdcall sgeequ( const MKL_INT* m, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, float* r, float* c, float* rowcnd,
                       float* colcnd, float* amax, MKL_INT* info );
void __stdcall sgeequ_( const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, float* r, float* c, float* rowcnd,
                        float* colcnd, float* amax, MKL_INT* info );

void __stdcall SGEES( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                      MKL_S_SELECT_FUNCTION_2 select, const MKL_INT* n, float* a,
                      const MKL_INT* lda, MKL_INT* sdim, float* wr, float* wi, float* vs,
                      const MKL_INT* ldvs, float* work, const MKL_INT* lwork,
                      MKL_INT* bwork, MKL_INT* info );
void __stdcall SGEES_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_S_SELECT_FUNCTION_2 select, const MKL_INT* n, float* a,
                       const MKL_INT* lda, MKL_INT* sdim, float* wr, float* wi,
                       float* vs, const MKL_INT* ldvs, float* work, const MKL_INT* lwork,
                       MKL_INT* bwork, MKL_INT* info );
void __stdcall sgees( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                      MKL_S_SELECT_FUNCTION_2 select, const MKL_INT* n, float* a,
                      const MKL_INT* lda, MKL_INT* sdim, float* wr, float* wi, float* vs,
                      const MKL_INT* ldvs, float* work, const MKL_INT* lwork,
                      MKL_INT* bwork, MKL_INT* info );
void __stdcall sgees_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_S_SELECT_FUNCTION_2 select, const MKL_INT* n, float* a,
                       const MKL_INT* lda, MKL_INT* sdim, float* wr, float* wi,
                       float* vs, const MKL_INT* ldvs, float* work, const MKL_INT* lwork,
                       MKL_INT* bwork, MKL_INT* info );

void __stdcall SGEESX( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_S_SELECT_FUNCTION_2 select, const char* sense, int sense_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, MKL_INT* sdim,
                       float* wr, float* wi, float* vs, const MKL_INT* ldvs,
                       float* rconde, float* rcondv, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* bwork,
                       MKL_INT* info );
void __stdcall SGEESX_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                        MKL_S_SELECT_FUNCTION_2 select, const char* sense, int sense_len,
                        const MKL_INT* n, float* a, const MKL_INT* lda, MKL_INT* sdim,
                        float* wr, float* wi, float* vs, const MKL_INT* ldvs,
                        float* rconde, float* rcondv, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* bwork,
                        MKL_INT* info );
void __stdcall sgeesx( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_S_SELECT_FUNCTION_2 select, const char* sense, int sense_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, MKL_INT* sdim,
                       float* wr, float* wi, float* vs, const MKL_INT* ldvs,
                       float* rconde, float* rcondv, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* bwork,
                       MKL_INT* info );
void __stdcall sgeesx_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                        MKL_S_SELECT_FUNCTION_2 select, const char* sense, int sense_len,
                        const MKL_INT* n, float* a, const MKL_INT* lda, MKL_INT* sdim,
                        float* wr, float* wi, float* vs, const MKL_INT* ldvs,
                        float* rconde, float* rcondv, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* bwork,
                        MKL_INT* info );

void __stdcall SGEEV( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* wr, float* wi, float* vl,
                      const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr, float* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGEEV_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* wr, float* wi, float* vl,
                       const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgeev( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* wr, float* wi, float* vl,
                      const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr, float* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgeev_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* wr, float* wi, float* vl,
                       const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr, float* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGEEVX( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* wr, float* wi, float* vl, const MKL_INT* ldvl, float* vr,
                       const MKL_INT* ldvr, MKL_INT* ilo, MKL_INT* ihi, float* scale,
                       float* abnrm, float* rconde, float* rcondv, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall SGEEVX_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* wr, float* wi, float* vl,
                        const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, float* scale, float* abnrm,
                        float* rconde, float* rcondv, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall sgeevx( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* wr, float* wi, float* vl, const MKL_INT* ldvl, float* vr,
                       const MKL_INT* ldvr, MKL_INT* ilo, MKL_INT* ihi, float* scale,
                       float* abnrm, float* rconde, float* rcondv, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgeevx_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* wr, float* wi, float* vl,
                        const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, float* scale, float* abnrm,
                        float* rconde, float* rcondv, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall SGEGS( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                      float* alphai, float* beta, float* vsl, const MKL_INT* ldvsl,
                      float* vsr, const MKL_INT* ldvsr, float* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGEGS_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                       float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       float* alphar, float* alphai, float* beta, float* vsl,
                       const MKL_INT* ldvsl, float* vsr, const MKL_INT* ldvsr,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgegs( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                      float* alphai, float* beta, float* vsl, const MKL_INT* ldvsl,
                      float* vsr, const MKL_INT* ldvsr, float* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgegs_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                       float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       float* alphar, float* alphai, float* beta, float* vsl,
                       const MKL_INT* ldvsl, float* vsr, const MKL_INT* ldvsr,
                       float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGEGV( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                      float* alphai, float* beta, float* vl, const MKL_INT* ldvl,
                      float* vr, const MKL_INT* ldvr, float* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall SGEGV_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                       float* alphai, float* beta, float* vl, const MKL_INT* ldvl,
                       float* vr, const MKL_INT* ldvr, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sgegv( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                      float* alphai, float* beta, float* vl, const MKL_INT* ldvl,
                      float* vr, const MKL_INT* ldvr, float* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall sgegv_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                       float* alphai, float* beta, float* vl, const MKL_INT* ldvl,
                       float* vr, const MKL_INT* ldvr, float* work, const MKL_INT* lwork,
                       MKL_INT* info );

void __stdcall SGEHD2( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       float* a, const MKL_INT* lda, float* tau, float* work,
                       MKL_INT* info );
void __stdcall SGEHD2_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        float* a, const MKL_INT* lda, float* tau, float* work,
                        MKL_INT* info );
void __stdcall sgehd2( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       float* a, const MKL_INT* lda, float* tau, float* work,
                       MKL_INT* info );
void __stdcall sgehd2_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        float* a, const MKL_INT* lda, float* tau, float* work,
                        MKL_INT* info );

void __stdcall SGEHRD( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       float* a, const MKL_INT* lda, float* tau, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGEHRD_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        float* a, const MKL_INT* lda, float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgehrd( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       float* a, const MKL_INT* lda, float* tau, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgehrd_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        float* a, const MKL_INT* lda, float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGEJSV( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobr, int jobr_len, const char* jobt, int jobt_len,
                       const char* jobp, int jobp_len, const MKL_INT* m, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* sva, float* u, const MKL_INT* ldu,
                       float* v, const MKL_INT* ldv, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall SGEJSV_( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobr, int jobr_len, const char* jobt, int jobt_len,
                        const char* jobp, int jobp_len, const MKL_INT* m, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* sva, float* u, const MKL_INT* ldu,
                        float* v, const MKL_INT* ldv, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall sgejsv( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobr, int jobr_len, const char* jobt, int jobt_len,
                       const char* jobp, int jobp_len, const MKL_INT* m, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* sva, float* u, const MKL_INT* ldu,
                       float* v, const MKL_INT* ldv, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall sgejsv_( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobr, int jobr_len, const char* jobt, int jobt_len,
                        const char* jobp, int jobp_len, const MKL_INT* m, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* sva, float* u, const MKL_INT* ldu,
                        float* v, const MKL_INT* ldv, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall SGELQ2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, MKL_INT* info );
void __stdcall SGELQ2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, MKL_INT* info );
void __stdcall sgelq2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, MKL_INT* info );
void __stdcall sgelq2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, MKL_INT* info );

void __stdcall SGELQF( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGELQF_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgelqf( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgelqf_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGELSD( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       float* s, const float* rcond, MKL_INT* rank, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall SGELSD_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* s, const float* rcond, MKL_INT* rank, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgelsd( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       float* s, const float* rcond, MKL_INT* rank, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgelsd_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* s, const float* rcond, MKL_INT* rank, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGELS( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* b,
                      const MKL_INT* ldb, float* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall SGELS_( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sgels( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* b,
                      const MKL_INT* ldb, float* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall sgels_( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb, float* work, const MKL_INT* lwork,
                       MKL_INT* info );

void __stdcall SGELSS( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* s,
                       const float* rcond, MKL_INT* rank, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGELSS_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* s, const float* rcond, MKL_INT* rank, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgelss( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* s,
                       const float* rcond, MKL_INT* rank, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgelss_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* s, const float* rcond, MKL_INT* rank, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGELSX( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* jpvt,
                       const float* rcond, MKL_INT* rank, float* work, MKL_INT* info );
void __stdcall SGELSX_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        MKL_INT* jpvt, const float* rcond, MKL_INT* rank, float* work,
                        MKL_INT* info );
void __stdcall sgelsx( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* jpvt,
                       const float* rcond, MKL_INT* rank, float* work, MKL_INT* info );
void __stdcall sgelsx_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        MKL_INT* jpvt, const float* rcond, MKL_INT* rank, float* work,
                        MKL_INT* info );

void __stdcall SGELSY( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* jpvt,
                       const float* rcond, MKL_INT* rank, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGELSY_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        MKL_INT* jpvt, const float* rcond, MKL_INT* rank, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgelsy( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* jpvt,
                       const float* rcond, MKL_INT* rank, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgelsy_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        MKL_INT* jpvt, const float* rcond, MKL_INT* rank, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGEQL2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, MKL_INT* info );
void __stdcall SGEQL2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, MKL_INT* info );
void __stdcall sgeql2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, MKL_INT* info );
void __stdcall sgeql2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, MKL_INT* info );

void __stdcall SGEQLF( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGEQLF_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgeqlf( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgeqlf_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGEQP3( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* jpvt, float* tau, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SGEQP3_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* jpvt, float* tau, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sgeqp3( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* jpvt, float* tau, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sgeqp3_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* jpvt, float* tau, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SGEQPF( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* jpvt, float* tau, float* work, MKL_INT* info );
void __stdcall SGEQPF_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* jpvt, float* tau, float* work, MKL_INT* info );
void __stdcall sgeqpf( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* jpvt, float* tau, float* work, MKL_INT* info );
void __stdcall sgeqpf_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* jpvt, float* tau, float* work, MKL_INT* info );

void __stdcall SGEQR2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, MKL_INT* info );
void __stdcall SGEQR2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, MKL_INT* info );
void __stdcall sgeqr2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, MKL_INT* info );
void __stdcall sgeqr2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, MKL_INT* info );

void __stdcall SGEQR2P( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, MKL_INT* info );
void __stdcall SGEQR2P_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                         float* tau, float* work, MKL_INT* info );
void __stdcall sgeqr2p( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, MKL_INT* info );
void __stdcall sgeqr2p_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                         float* tau, float* work, MKL_INT* info );

void __stdcall SGEQRF( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGEQRF_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgeqrf( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgeqrf_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGEQRFP( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGEQRFP_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                         float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgeqrfp( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgeqrfp_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                         float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGERFS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, const float* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                       float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SGERFS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, const float* af,
                        const MKL_INT* ldaf, const MKL_INT* ipiv, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                        float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgerfs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, const float* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                       float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgerfs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, const float* af,
                        const MKL_INT* ldaf, const MKL_INT* ipiv, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                        float* berr, float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGERFSX( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                        const float* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const float* r, const float* c, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                        float* berr, const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SGERFSX_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                         const float* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                         const float* r, const float* c, const float* b,
                         const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                         float* berr, const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgerfsx( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                        const float* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const float* r, const float* c, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                        float* berr, const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgerfsx_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                         const float* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                         const float* r, const float* c, const float* b,
                         const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                         float* berr, const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGERQ2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, MKL_INT* info );
void __stdcall SGERQ2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, MKL_INT* info );
void __stdcall sgerq2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, MKL_INT* info );
void __stdcall sgerq2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, MKL_INT* info );

void __stdcall SGERQF( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGERQF_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgerqf( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgerqf_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGESC2( const MKL_INT* n, const float* a, const MKL_INT* lda, float* rhs,
                       const MKL_INT* ipiv, const MKL_INT* jpiv, float* scale );
void __stdcall SGESC2_( const MKL_INT* n, const float* a, const MKL_INT* lda, float* rhs,
                        const MKL_INT* ipiv, const MKL_INT* jpiv, float* scale );
void __stdcall sgesc2( const MKL_INT* n, const float* a, const MKL_INT* lda, float* rhs,
                       const MKL_INT* ipiv, const MKL_INT* jpiv, float* scale );
void __stdcall sgesc2_( const MKL_INT* n, const float* a, const MKL_INT* lda, float* rhs,
                        const MKL_INT* ipiv, const MKL_INT* jpiv, float* scale );

void __stdcall SGESDD( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* s, float* u, const MKL_INT* ldu,
                       float* vt, const MKL_INT* ldvt, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall SGESDD_( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* s, float* u, const MKL_INT* ldu,
                        float* vt, const MKL_INT* ldvt, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgesdd( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* s, float* u, const MKL_INT* ldu,
                       float* vt, const MKL_INT* ldvt, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall sgesdd_( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* s, float* u, const MKL_INT* ldu,
                        float* vt, const MKL_INT* ldvt, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGESVD( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                       const MKL_INT* n, float* a, const MKL_INT* lda, float* s,
                       float* u, const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGESVD_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                        const MKL_INT* n, float* a, const MKL_INT* lda, float* s,
                        float* u, const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgesvd( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                       const MKL_INT* n, float* a, const MKL_INT* lda, float* s,
                       float* u, const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgesvd_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                        const MKL_INT* n, float* a, const MKL_INT* lda, float* s,
                        float* u, const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                        float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGESV( const MKL_INT* n, const MKL_INT* nrhs, float* a,
                      const MKL_INT* lda, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall SGESV_( const MKL_INT* n, const MKL_INT* nrhs, float* a,
                       const MKL_INT* lda, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall sgesv( const MKL_INT* n, const MKL_INT* nrhs, float* a,
                      const MKL_INT* lda, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall sgesv_( const MKL_INT* n, const MKL_INT* nrhs, float* a,
                       const MKL_INT* lda, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                       MKL_INT* info );

void __stdcall SGESVJ( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                       const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* sva, const MKL_INT* mv, float* v, const MKL_INT* ldv,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGESVJ_( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* sva, const MKL_INT* mv, float* v, const MKL_INT* ldv,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgesvj( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                       const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* sva, const MKL_INT* mv, float* v, const MKL_INT* ldv,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgesvj_( const char* joba, int joba_len, const char* jobu, int jobu_len, const char* jobv, int jobv_len,
                        const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* sva, const MKL_INT* mv, float* v, const MKL_INT* ldv,
                        float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGESVX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                       const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                       float* c, float* b, const MKL_INT* ldb, float* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SGESVX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                        const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                        float* c, float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgesvx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                       const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                       float* c, float* b, const MKL_INT* ldb, float* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgesvx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                        const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                        float* c, float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGESVXX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                        const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                        float* c, float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SGESVXX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                         const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                         float* c, float* b, const MKL_INT* ldb, float* x,
                         const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgesvxx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                        const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                        float* c, float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgesvxx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                         const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, float* r,
                         float* c, float* b, const MKL_INT* ldb, float* x,
                         const MKL_INT* ldx, float* rcond, float* rpvgrw, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGETC2( const MKL_INT* n, float* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_INT* jpiv, MKL_INT* info );
void __stdcall SGETC2_( const MKL_INT* n, float* a, const MKL_INT* lda, MKL_INT* ipiv,
                        MKL_INT* jpiv, MKL_INT* info );
void __stdcall sgetc2( const MKL_INT* n, float* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_INT* jpiv, MKL_INT* info );
void __stdcall sgetc2_( const MKL_INT* n, float* a, const MKL_INT* lda, MKL_INT* ipiv,
                        MKL_INT* jpiv, MKL_INT* info );

void __stdcall SGETF2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall SGETF2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall sgetf2( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall sgetf2_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall SGETRF( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall SGETRF_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall sgetrf( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall sgetrf_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall MKL_SGETRFNPI( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                              float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall MKL_SGETRFNPI_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                               float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_sgetrfnpi( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                              float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_sgetrfnpi_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                               float* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall SGETRI( const MKL_INT* n, float* a, const MKL_INT* lda,
                       const MKL_INT* ipiv, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SGETRI_( const MKL_INT* n, float* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sgetri( const MKL_INT* n, float* a, const MKL_INT* lda,
                       const MKL_INT* ipiv, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sgetri_( const MKL_INT* n, float* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SGETRS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, const MKL_INT* ipiv, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall SGETRS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sgetrs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, const MKL_INT* ipiv, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall sgetrs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        float* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall SGGBAK( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const float* lscale,
                       const float* rscale, const MKL_INT* m, float* v,
                       const MKL_INT* ldv, MKL_INT* info );
void __stdcall SGGBAK_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const float* lscale,
                        const float* rscale, const MKL_INT* m, float* v,
                        const MKL_INT* ldv, MKL_INT* info );
void __stdcall sggbak( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const float* lscale,
                       const float* rscale, const MKL_INT* m, float* v,
                       const MKL_INT* ldv, MKL_INT* info );
void __stdcall sggbak_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const float* lscale,
                        const float* rscale, const MKL_INT* m, float* v,
                        const MKL_INT* ldv, MKL_INT* info );

void __stdcall SGGBAL( const char* job, int job_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, MKL_INT* ilo, MKL_INT* ihi,
                       float* lscale, float* rscale, float* work, MKL_INT* info );
void __stdcall SGGBAL_( const char* job, int job_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, MKL_INT* ilo, MKL_INT* ihi,
                        float* lscale, float* rscale, float* work, MKL_INT* info );
void __stdcall sggbal( const char* job, int job_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, MKL_INT* ilo, MKL_INT* ihi,
                       float* lscale, float* rscale, float* work, MKL_INT* info );
void __stdcall sggbal_( const char* job, int job_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, MKL_INT* ilo, MKL_INT* ihi,
                        float* lscale, float* rscale, float* work, MKL_INT* info );

void __stdcall SGGES( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                      MKL_S_SELECT_FUNCTION_3 selctg, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* sdim,
                      float* alphar, float* alphai, float* beta, float* vsl,
                      const MKL_INT* ldvsl, float* vsr, const MKL_INT* ldvsr,
                      float* work, const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall SGGES_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_S_SELECT_FUNCTION_3 selctg, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* sdim,
                       float* alphar, float* alphai, float* beta, float* vsl,
                       const MKL_INT* ldvsl, float* vsr, const MKL_INT* ldvsr,
                       float* work, const MKL_INT* lwork, MKL_INT* bwork,
                       MKL_INT* info );
void __stdcall sgges( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                      MKL_S_SELECT_FUNCTION_3 selctg, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* sdim,
                      float* alphar, float* alphai, float* beta, float* vsl,
                      const MKL_INT* ldvsl, float* vsr, const MKL_INT* ldvsr,
                      float* work, const MKL_INT* lwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall sgges_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_S_SELECT_FUNCTION_3 selctg, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* sdim,
                       float* alphar, float* alphai, float* beta, float* vsl,
                       const MKL_INT* ldvsl, float* vsr, const MKL_INT* ldvsr,
                       float* work, const MKL_INT* lwork, MKL_INT* bwork,
                       MKL_INT* info );

void __stdcall SGGESX( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_S_SELECT_FUNCTION_3 selctg, const char* sense, int sense_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb, MKL_INT* sdim, float* alphar, float* alphai,
                       float* beta, float* vsl, const MKL_INT* ldvsl, float* vsr,
                       const MKL_INT* ldvsr, float* rconde, float* rcondv, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* bwork, MKL_INT* info );
void __stdcall SGGESX_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                        MKL_S_SELECT_FUNCTION_3 selctg, const char* sense, int sense_len,
                        const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, MKL_INT* sdim, float* alphar, float* alphai,
                        float* beta, float* vsl, const MKL_INT* ldvsl, float* vsr,
                        const MKL_INT* ldvsr, float* rconde, float* rcondv, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* bwork, MKL_INT* info );
void __stdcall sggesx( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_S_SELECT_FUNCTION_3 selctg, const char* sense, int sense_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb, MKL_INT* sdim, float* alphar, float* alphai,
                       float* beta, float* vsl, const MKL_INT* ldvsl, float* vsr,
                       const MKL_INT* ldvsr, float* rconde, float* rcondv, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* bwork, MKL_INT* info );
void __stdcall sggesx_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                        MKL_S_SELECT_FUNCTION_3 selctg, const char* sense, int sense_len,
                        const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, MKL_INT* sdim, float* alphar, float* alphai,
                        float* beta, float* vsl, const MKL_INT* ldvsl, float* vsr,
                        const MKL_INT* ldvsr, float* rconde, float* rcondv, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* bwork, MKL_INT* info );

void __stdcall SGGEV( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                      float* alphai, float* beta, float* vl, const MKL_INT* ldvl,
                      float* vr, const MKL_INT* ldvr, float* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall SGGEV_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                       float* alphai, float* beta, float* vl, const MKL_INT* ldvl,
                       float* vr, const MKL_INT* ldvr, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sggev( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                      float* alphai, float* beta, float* vl, const MKL_INT* ldvl,
                      float* vr, const MKL_INT* ldvr, float* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall sggev_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                       float* alphai, float* beta, float* vl, const MKL_INT* ldvl,
                       float* vr, const MKL_INT* ldvr, float* work, const MKL_INT* lwork,
                       MKL_INT* info );

void __stdcall SGGEVX( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, float* alphar, float* alphai,
                       float* beta, float* vl, const MKL_INT* ldvl, float* vr,
                       const MKL_INT* ldvr, MKL_INT* ilo, MKL_INT* ihi, float* lscale,
                       float* rscale, float* abnrm, float* bbnrm, float* rconde,
                       float* rcondv, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* bwork, MKL_INT* info );
void __stdcall SGGEVX_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                        float* alphai, float* beta, float* vl, const MKL_INT* ldvl,
                        float* vr, const MKL_INT* ldvr, MKL_INT* ilo, MKL_INT* ihi,
                        float* lscale, float* rscale, float* abnrm, float* bbnrm,
                        float* rconde, float* rcondv, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall sggevx( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, float* alphar, float* alphai,
                       float* beta, float* vl, const MKL_INT* ldvl, float* vr,
                       const MKL_INT* ldvr, MKL_INT* ilo, MKL_INT* ihi, float* lscale,
                       float* rscale, float* abnrm, float* bbnrm, float* rconde,
                       float* rcondv, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* bwork, MKL_INT* info );
void __stdcall sggevx_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                        float* alphai, float* beta, float* vl, const MKL_INT* ldvl,
                        float* vr, const MKL_INT* ldvr, MKL_INT* ilo, MKL_INT* ihi,
                        float* lscale, float* rscale, float* abnrm, float* bbnrm,
                        float* rconde, float* rcondv, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* bwork, MKL_INT* info );

void __stdcall SGGGLM( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* d,
                       float* x, float* y, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SGGGLM_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb, float* d,
                        float* x, float* y, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sggglm( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* d,
                       float* x, float* y, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sggglm_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb, float* d,
                        float* x, float* y, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SGGHRD( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* q,
                       const MKL_INT* ldq, float* z, const MKL_INT* ldz, MKL_INT* info );
void __stdcall SGGHRD_( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb, float* q,
                        const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                        MKL_INT* info );
void __stdcall sgghrd( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* q,
                       const MKL_INT* ldq, float* z, const MKL_INT* ldz, MKL_INT* info );
void __stdcall sgghrd_( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb, float* q,
                        const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                        MKL_INT* info );

void __stdcall SGGLSE( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* c,
                       float* d, float* x, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SGGLSE_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb, float* c,
                        float* d, float* x, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sgglse( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* c,
                       float* d, float* x, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sgglse_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb, float* c,
                        float* d, float* x, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SGGQRF( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, float* a,
                       const MKL_INT* lda, float* taua, float* b, const MKL_INT* ldb,
                       float* taub, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGGQRF_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, float* a,
                        const MKL_INT* lda, float* taua, float* b, const MKL_INT* ldb,
                        float* taub, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sggqrf( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, float* a,
                       const MKL_INT* lda, float* taua, float* b, const MKL_INT* ldb,
                       float* taub, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sggqrf_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p, float* a,
                        const MKL_INT* lda, float* taua, float* b, const MKL_INT* ldb,
                        float* taub, float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGGRQF( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* taua, float* b, const MKL_INT* ldb,
                       float* taub, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGGRQF_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* taua, float* b, const MKL_INT* ldb,
                        float* taub, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sggrqf( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* taua, float* b, const MKL_INT* ldb,
                       float* taub, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sggrqf_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* taua, float* b, const MKL_INT* ldb,
                        float* taub, float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGGSVD( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                       MKL_INT* l, float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb, float* alpha, float* beta, float* u,
                       const MKL_INT* ldu, float* v, const MKL_INT* ldv, float* q,
                       const MKL_INT* ldq, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SGGSVD_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                        MKL_INT* l, float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, float* alpha, float* beta, float* u,
                        const MKL_INT* ldu, float* v, const MKL_INT* ldv, float* q,
                        const MKL_INT* ldq, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sggsvd( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                       MKL_INT* l, float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb, float* alpha, float* beta, float* u,
                       const MKL_INT* ldu, float* v, const MKL_INT* ldv, float* q,
                       const MKL_INT* ldq, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sggsvd_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                        MKL_INT* l, float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, float* alpha, float* beta, float* u,
                        const MKL_INT* ldu, float* v, const MKL_INT* ldv, float* q,
                        const MKL_INT* ldq, float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGGSVP( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       const float* tola, const float* tolb, MKL_INT* k, MKL_INT* l,
                       float* u, const MKL_INT* ldu, float* v, const MKL_INT* ldv,
                       float* q, const MKL_INT* ldq, MKL_INT* iwork, float* tau,
                       float* work, MKL_INT* info );
void __stdcall SGGSVP_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        const float* tola, const float* tolb, MKL_INT* k, MKL_INT* l,
                        float* u, const MKL_INT* ldu, float* v, const MKL_INT* ldv,
                        float* q, const MKL_INT* ldq, MKL_INT* iwork, float* tau,
                        float* work, MKL_INT* info );
void __stdcall sggsvp( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       const float* tola, const float* tolb, MKL_INT* k, MKL_INT* l,
                       float* u, const MKL_INT* ldu, float* v, const MKL_INT* ldv,
                       float* q, const MKL_INT* ldq, MKL_INT* iwork, float* tau,
                       float* work, MKL_INT* info );
void __stdcall sggsvp_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        const float* tola, const float* tolb, MKL_INT* k, MKL_INT* l,
                        float* u, const MKL_INT* ldu, float* v, const MKL_INT* ldv,
                        float* q, const MKL_INT* ldq, MKL_INT* iwork, float* tau,
                        float* work, MKL_INT* info );

void __stdcall SGSVJ0( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* d, float* sva, const MKL_INT* mv,
                       float* v, const MKL_INT* ldv, const float* eps,
                       const float* sfmin, const float* tol, const MKL_INT* nsweep,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SGSVJ0_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* d, float* sva, const MKL_INT* mv,
                        float* v, const MKL_INT* ldv, const float* eps,
                        const float* sfmin, const float* tol, const MKL_INT* nsweep,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgsvj0( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* d, float* sva, const MKL_INT* mv,
                       float* v, const MKL_INT* ldv, const float* eps,
                       const float* sfmin, const float* tol, const MKL_INT* nsweep,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sgsvj0_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* d, float* sva, const MKL_INT* mv,
                        float* v, const MKL_INT* ldv, const float* eps,
                        const float* sfmin, const float* tol, const MKL_INT* nsweep,
                        float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SGSVJ1( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* n1, float* a, const MKL_INT* lda, float* d,
                       float* sva, const MKL_INT* mv, float* v, const MKL_INT* ldv,
                       const float* eps, const float* sfmin, const float* tol,
                       const MKL_INT* nsweep, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SGSVJ1_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* n1, float* a, const MKL_INT* lda, float* d,
                        float* sva, const MKL_INT* mv, float* v, const MKL_INT* ldv,
                        const float* eps, const float* sfmin, const float* tol,
                        const MKL_INT* nsweep, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sgsvj1( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* n1, float* a, const MKL_INT* lda, float* d,
                       float* sva, const MKL_INT* mv, float* v, const MKL_INT* ldv,
                       const float* eps, const float* sfmin, const float* tol,
                       const MKL_INT* nsweep, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sgsvj1_( const char* jobv, int jobv_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* n1, float* a, const MKL_INT* lda, float* d,
                        float* sva, const MKL_INT* mv, float* v, const MKL_INT* ldv,
                        const float* eps, const float* sfmin, const float* tol,
                        const MKL_INT* nsweep, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SGTCON( const char* norm, int norm_len, const MKL_INT* n, const float* dl,
                       const float* d, const float* du, const float* du2,
                       const MKL_INT* ipiv, const float* anorm, float* rcond,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SGTCON_( const char* norm, int norm_len, const MKL_INT* n, const float* dl,
                        const float* d, const float* du, const float* du2,
                        const MKL_INT* ipiv, const float* anorm, float* rcond,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgtcon( const char* norm, int norm_len, const MKL_INT* n, const float* dl,
                       const float* d, const float* du, const float* du2,
                       const MKL_INT* ipiv, const float* anorm, float* rcond,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgtcon_( const char* norm, int norm_len, const MKL_INT* n, const float* dl,
                        const float* d, const float* du, const float* du2,
                        const MKL_INT* ipiv, const float* anorm, float* rcond,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGTRFS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* dl, const float* d, const float* du,
                       const float* dlf, const float* df, const float* duf,
                       const float* du2, const MKL_INT* ipiv, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                       float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SGTRFS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* dl, const float* d, const float* du,
                        const float* dlf, const float* df, const float* duf,
                        const float* du2, const MKL_INT* ipiv, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                        float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgtrfs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* dl, const float* d, const float* du,
                       const float* dlf, const float* df, const float* duf,
                       const float* du2, const MKL_INT* ipiv, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                       float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgtrfs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* dl, const float* d, const float* du,
                        const float* dlf, const float* df, const float* duf,
                        const float* du2, const MKL_INT* ipiv, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                        float* berr, float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGTSV( const MKL_INT* n, const MKL_INT* nrhs, float* dl, float* d,
                      float* du, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall SGTSV_( const MKL_INT* n, const MKL_INT* nrhs, float* dl, float* d,
                       float* du, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sgtsv( const MKL_INT* n, const MKL_INT* nrhs, float* dl, float* d,
                      float* du, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sgtsv_( const MKL_INT* n, const MKL_INT* nrhs, float* dl, float* d,
                       float* du, float* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall SGTSVX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const float* dl, const float* d,
                       const float* du, float* dlf, float* df, float* duf, float* du2,
                       MKL_INT* ipiv, const float* b, const MKL_INT* ldb, float* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SGTSVX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* dl, const float* d,
                        const float* du, float* dlf, float* df, float* duf, float* du2,
                        MKL_INT* ipiv, const float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgtsvx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const float* dl, const float* d,
                       const float* du, float* dlf, float* df, float* duf, float* du2,
                       MKL_INT* ipiv, const float* b, const MKL_INT* ldb, float* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sgtsvx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* dl, const float* d,
                        const float* du, float* dlf, float* df, float* duf, float* du2,
                        MKL_INT* ipiv, const float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SGTTRF( const MKL_INT* n, float* dl, float* d, float* du, float* du2,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall SGTTRF_( const MKL_INT* n, float* dl, float* d, float* du, float* du2,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall sgttrf( const MKL_INT* n, float* dl, float* d, float* du, float* du2,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall sgttrf_( const MKL_INT* n, float* dl, float* d, float* du, float* du2,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall SGTTRS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* dl, const float* d, const float* du,
                       const float* du2, const MKL_INT* ipiv, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall SGTTRS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* dl, const float* d, const float* du,
                        const float* du2, const MKL_INT* ipiv, float* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall sgttrs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* dl, const float* d, const float* du,
                       const float* du2, const MKL_INT* ipiv, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall sgttrs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* dl, const float* d, const float* du,
                        const float* du2, const MKL_INT* ipiv, float* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall SGTTS2( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* dl, const float* d, const float* du,
                       const float* du2, const MKL_INT* ipiv, float* b,
                       const MKL_INT* ldb );
void __stdcall SGTTS2_( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* dl, const float* d, const float* du,
                        const float* du2, const MKL_INT* ipiv, float* b,
                        const MKL_INT* ldb );
void __stdcall sgtts2( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* dl, const float* d, const float* du,
                       const float* du2, const MKL_INT* ipiv, float* b,
                       const MKL_INT* ldb );
void __stdcall sgtts2_( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* dl, const float* d, const float* du,
                        const float* du2, const MKL_INT* ipiv, float* b,
                        const MKL_INT* ldb );

void __stdcall SHGEQZ( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       float* h, const MKL_INT* ldh, float* t, const MKL_INT* ldt,
                       float* alphar, float* alphai, float* beta, float* q,
                       const MKL_INT* ldq, float* z, const MKL_INT* ldz, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall SHGEQZ_( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        float* h, const MKL_INT* ldh, float* t, const MKL_INT* ldt,
                        float* alphar, float* alphai, float* beta, float* q,
                        const MKL_INT* ldq, float* z, const MKL_INT* ldz, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall shgeqz( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       float* h, const MKL_INT* ldh, float* t, const MKL_INT* ldt,
                       float* alphar, float* alphai, float* beta, float* q,
                       const MKL_INT* ldq, float* z, const MKL_INT* ldz, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall shgeqz_( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        float* h, const MKL_INT* ldh, float* t, const MKL_INT* ldt,
                        float* alphar, float* alphai, float* beta, float* q,
                        const MKL_INT* ldq, float* z, const MKL_INT* ldz, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SHSEIN( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                       MKL_INT* select, const MKL_INT* n, const float* h,
                       const MKL_INT* ldh, float* wr, const float* wi, float* vl,
                       const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, float* work, MKL_INT* ifaill,
                       MKL_INT* ifailr, MKL_INT* info );
void __stdcall SHSEIN_( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                        MKL_INT* select, const MKL_INT* n, const float* h,
                        const MKL_INT* ldh, float* wr, const float* wi, float* vl,
                        const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, float* work, MKL_INT* ifaill,
                        MKL_INT* ifailr, MKL_INT* info );
void __stdcall shsein( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                       MKL_INT* select, const MKL_INT* n, const float* h,
                       const MKL_INT* ldh, float* wr, const float* wi, float* vl,
                       const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, float* work, MKL_INT* ifaill,
                       MKL_INT* ifailr, MKL_INT* info );
void __stdcall shsein_( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                        MKL_INT* select, const MKL_INT* n, const float* h,
                        const MKL_INT* ldh, float* wr, const float* wi, float* vl,
                        const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, float* work, MKL_INT* ifaill,
                        MKL_INT* ifailr, MKL_INT* info );

void __stdcall SHSEQR( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                       const MKL_INT* ldh, float* wr, float* wi, float* z,
                       const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SHSEQR_( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                        const MKL_INT* ldh, float* wr, float* wi, float* z,
                        const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall shseqr( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                       const MKL_INT* ldh, float* wr, float* wi, float* z,
                       const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall shseqr_( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                        const MKL_INT* ldh, float* wr, float* wi, float* z,
                        const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

MKL_INT __stdcall SISNAN( const float* sin );
MKL_INT __stdcall SISNAN_( const float* sin );
MKL_INT __stdcall sisnan( const float* sin );
MKL_INT __stdcall sisnan_( const float* sin );

void __stdcall SLABAD( float* smallx, float* large );
void __stdcall SLABAD_( float* smallx, float* large );
void __stdcall slabad( float* smallx, float* large );
void __stdcall slabad_( float* smallx, float* large );

void __stdcall SLABRD( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, float* a,
                       const MKL_INT* lda, float* d, float* e, float* tauq, float* taup,
                       float* x, const MKL_INT* ldx, float* y, const MKL_INT* ldy );
void __stdcall SLABRD_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, float* a,
                        const MKL_INT* lda, float* d, float* e, float* tauq, float* taup,
                        float* x, const MKL_INT* ldx, float* y, const MKL_INT* ldy );
void __stdcall slabrd( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, float* a,
                       const MKL_INT* lda, float* d, float* e, float* tauq, float* taup,
                       float* x, const MKL_INT* ldx, float* y, const MKL_INT* ldy );
void __stdcall slabrd_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb, float* a,
                        const MKL_INT* lda, float* d, float* e, float* tauq, float* taup,
                        float* x, const MKL_INT* ldx, float* y, const MKL_INT* ldy );

void __stdcall SLACN2( const MKL_INT* n, float* v, float* x, MKL_INT* isgn, float* est,
                       MKL_INT* kase, MKL_INT* isave );
void __stdcall SLACN2_( const MKL_INT* n, float* v, float* x, MKL_INT* isgn, float* est,
                        MKL_INT* kase, MKL_INT* isave );
void __stdcall slacn2( const MKL_INT* n, float* v, float* x, MKL_INT* isgn, float* est,
                       MKL_INT* kase, MKL_INT* isave );
void __stdcall slacn2_( const MKL_INT* n, float* v, float* x, MKL_INT* isgn, float* est,
                        MKL_INT* kase, MKL_INT* isave );

void __stdcall SLACON( const MKL_INT* n, float* v, float* x, MKL_INT* isgn, float* est,
                       MKL_INT* kase );
void __stdcall SLACON_( const MKL_INT* n, float* v, float* x, MKL_INT* isgn, float* est,
                        MKL_INT* kase );
void __stdcall slacon( const MKL_INT* n, float* v, float* x, MKL_INT* isgn, float* est,
                       MKL_INT* kase );
void __stdcall slacon_( const MKL_INT* n, float* v, float* x, MKL_INT* isgn, float* est,
                        MKL_INT* kase );

void __stdcall SLACPY( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb );
void __stdcall SLACPY_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb );
void __stdcall slacpy( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb );
void __stdcall slacpy_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb );

void __stdcall SLADIV( const float* a, const float* b, const float* c, const float* d,
                       float* p, float* q );
void __stdcall SLADIV_( const float* a, const float* b, const float* c, const float* d,
                        float* p, float* q );
void __stdcall sladiv( const float* a, const float* b, const float* c, const float* d,
                       float* p, float* q );
void __stdcall sladiv_( const float* a, const float* b, const float* c, const float* d,
                        float* p, float* q );

void __stdcall SLAE2( const float* a, const float* b, const float* c, float* rt1,
                      float* rt2 );
void __stdcall SLAE2_( const float* a, const float* b, const float* c, float* rt1,
                       float* rt2 );
void __stdcall slae2( const float* a, const float* b, const float* c, float* rt1,
                      float* rt2 );
void __stdcall slae2_( const float* a, const float* b, const float* c, float* rt1,
                       float* rt2 );

void __stdcall SLAEBZ( const MKL_INT* ijob, const MKL_INT* nitmax, const MKL_INT* n,
                       const MKL_INT* mmax, const MKL_INT* minp, const MKL_INT* nbmin,
                       const float* abstol, const float* reltol, const float* pivmin,
                       const float* d, const float* e, const float* e2, MKL_INT* nval,
                       float* ab, float* c, MKL_INT* mout, MKL_INT* nab, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall SLAEBZ_( const MKL_INT* ijob, const MKL_INT* nitmax, const MKL_INT* n,
                        const MKL_INT* mmax, const MKL_INT* minp, const MKL_INT* nbmin,
                        const float* abstol, const float* reltol, const float* pivmin,
                        const float* d, const float* e, const float* e2, MKL_INT* nval,
                        float* ab, float* c, MKL_INT* mout, MKL_INT* nab, float* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall slaebz( const MKL_INT* ijob, const MKL_INT* nitmax, const MKL_INT* n,
                       const MKL_INT* mmax, const MKL_INT* minp, const MKL_INT* nbmin,
                       const float* abstol, const float* reltol, const float* pivmin,
                       const float* d, const float* e, const float* e2, MKL_INT* nval,
                       float* ab, float* c, MKL_INT* mout, MKL_INT* nab, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall slaebz_( const MKL_INT* ijob, const MKL_INT* nitmax, const MKL_INT* n,
                        const MKL_INT* mmax, const MKL_INT* minp, const MKL_INT* nbmin,
                        const float* abstol, const float* reltol, const float* pivmin,
                        const float* d, const float* e, const float* e2, MKL_INT* nval,
                        float* ab, float* c, MKL_INT* mout, MKL_INT* nab, float* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall SLAED0( const MKL_INT* icompq, const MKL_INT* qsiz, const MKL_INT* n,
                       float* d, const float* e, float* q, const MKL_INT* ldq,
                       float* qstore, const MKL_INT* ldqs, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall SLAED0_( const MKL_INT* icompq, const MKL_INT* qsiz, const MKL_INT* n,
                        float* d, const float* e, float* q, const MKL_INT* ldq,
                        float* qstore, const MKL_INT* ldqs, float* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall slaed0( const MKL_INT* icompq, const MKL_INT* qsiz, const MKL_INT* n,
                       float* d, const float* e, float* q, const MKL_INT* ldq,
                       float* qstore, const MKL_INT* ldqs, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall slaed0_( const MKL_INT* icompq, const MKL_INT* qsiz, const MKL_INT* n,
                        float* d, const float* e, float* q, const MKL_INT* ldq,
                        float* qstore, const MKL_INT* ldqs, float* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall SLAED1( const MKL_INT* n, float* d, float* q, const MKL_INT* ldq,
                       MKL_INT* indxq, const float* rho, const MKL_INT* cutpnt,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SLAED1_( const MKL_INT* n, float* d, float* q, const MKL_INT* ldq,
                        MKL_INT* indxq, const float* rho, const MKL_INT* cutpnt,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall slaed1( const MKL_INT* n, float* d, float* q, const MKL_INT* ldq,
                       MKL_INT* indxq, const float* rho, const MKL_INT* cutpnt,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall slaed1_( const MKL_INT* n, float* d, float* q, const MKL_INT* ldq,
                        MKL_INT* indxq, const float* rho, const MKL_INT* cutpnt,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SLAED2( MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, float* d,
                       float* q, const MKL_INT* ldq, MKL_INT* indxq, float* rho,
                       const float* z, float* dlamda, float* w, float* q2, MKL_INT* indx,
                       MKL_INT* indxc, MKL_INT* indxp, MKL_INT* coltyp, MKL_INT* info );
void __stdcall SLAED2_( MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, float* d,
                        float* q, const MKL_INT* ldq, MKL_INT* indxq, float* rho,
                        const float* z, float* dlamda, float* w, float* q2,
                        MKL_INT* indx, MKL_INT* indxc, MKL_INT* indxp, MKL_INT* coltyp,
                        MKL_INT* info );
void __stdcall slaed2( MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, float* d,
                       float* q, const MKL_INT* ldq, MKL_INT* indxq, float* rho,
                       const float* z, float* dlamda, float* w, float* q2, MKL_INT* indx,
                       MKL_INT* indxc, MKL_INT* indxp, MKL_INT* coltyp, MKL_INT* info );
void __stdcall slaed2_( MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, float* d,
                        float* q, const MKL_INT* ldq, MKL_INT* indxq, float* rho,
                        const float* z, float* dlamda, float* w, float* q2,
                        MKL_INT* indx, MKL_INT* indxc, MKL_INT* indxp, MKL_INT* coltyp,
                        MKL_INT* info );

void __stdcall SLAED3( const MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, float* d,
                       float* q, const MKL_INT* ldq, const float* rho, float* dlamda,
                       const float* q2, const MKL_INT* indx, const MKL_INT* ctot,
                       float* w, float* s, MKL_INT* info );
void __stdcall SLAED3_( const MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, float* d,
                        float* q, const MKL_INT* ldq, const float* rho, float* dlamda,
                        const float* q2, const MKL_INT* indx, const MKL_INT* ctot,
                        float* w, float* s, MKL_INT* info );
void __stdcall slaed3( const MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, float* d,
                       float* q, const MKL_INT* ldq, const float* rho, float* dlamda,
                       const float* q2, const MKL_INT* indx, const MKL_INT* ctot,
                       float* w, float* s, MKL_INT* info );
void __stdcall slaed3_( const MKL_INT* k, const MKL_INT* n, const MKL_INT* n1, float* d,
                        float* q, const MKL_INT* ldq, const float* rho, float* dlamda,
                        const float* q2, const MKL_INT* indx, const MKL_INT* ctot,
                        float* w, float* s, MKL_INT* info );

void __stdcall SLAED4( const MKL_INT* n, const MKL_INT* i, const float* d,
                       const float* z, float* delta, const float* rho, float* dlam,
                       MKL_INT* info );
void __stdcall SLAED4_( const MKL_INT* n, const MKL_INT* i, const float* d,
                        const float* z, float* delta, const float* rho, float* dlam,
                        MKL_INT* info );
void __stdcall slaed4( const MKL_INT* n, const MKL_INT* i, const float* d,
                       const float* z, float* delta, const float* rho, float* dlam,
                       MKL_INT* info );
void __stdcall slaed4_( const MKL_INT* n, const MKL_INT* i, const float* d,
                        const float* z, float* delta, const float* rho, float* dlam,
                        MKL_INT* info );

void __stdcall SLAED5( const MKL_INT* i, const float* d, const float* z, float* delta,
                       const float* rho, float* dlam );
void __stdcall SLAED5_( const MKL_INT* i, const float* d, const float* z, float* delta,
                        const float* rho, float* dlam );
void __stdcall slaed5( const MKL_INT* i, const float* d, const float* z, float* delta,
                       const float* rho, float* dlam );
void __stdcall slaed5_( const MKL_INT* i, const float* d, const float* z, float* delta,
                        const float* rho, float* dlam );

void __stdcall SLAED6( const MKL_INT* kniter, const MKL_INT* orgati, const float* rho,
                       const float* d, const float* z, const float* finit, float* tau,
                       MKL_INT* info );
void __stdcall SLAED6_( const MKL_INT* kniter, const MKL_INT* orgati, const float* rho,
                        const float* d, const float* z, const float* finit, float* tau,
                        MKL_INT* info );
void __stdcall slaed6( const MKL_INT* kniter, const MKL_INT* orgati, const float* rho,
                       const float* d, const float* z, const float* finit, float* tau,
                       MKL_INT* info );
void __stdcall slaed6_( const MKL_INT* kniter, const MKL_INT* orgati, const float* rho,
                        const float* d, const float* z, const float* finit, float* tau,
                        MKL_INT* info );

void __stdcall SLAED7( const MKL_INT* icompq, const MKL_INT* n, const MKL_INT* qsiz,
                       const MKL_INT* tlvls, const MKL_INT* curlvl,
                       const MKL_INT* curpbm, float* d, float* q, const MKL_INT* ldq,
                       MKL_INT* indxq, const float* rho, const MKL_INT* cutpnt,
                       float* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const float* givnum, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SLAED7_( const MKL_INT* icompq, const MKL_INT* n, const MKL_INT* qsiz,
                        const MKL_INT* tlvls, const MKL_INT* curlvl,
                        const MKL_INT* curpbm, float* d, float* q, const MKL_INT* ldq,
                        MKL_INT* indxq, const float* rho, const MKL_INT* cutpnt,
                        float* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const float* givnum, float* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall slaed7( const MKL_INT* icompq, const MKL_INT* n, const MKL_INT* qsiz,
                       const MKL_INT* tlvls, const MKL_INT* curlvl,
                       const MKL_INT* curpbm, float* d, float* q, const MKL_INT* ldq,
                       MKL_INT* indxq, const float* rho, const MKL_INT* cutpnt,
                       float* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const float* givnum, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall slaed7_( const MKL_INT* icompq, const MKL_INT* n, const MKL_INT* qsiz,
                        const MKL_INT* tlvls, const MKL_INT* curlvl,
                        const MKL_INT* curpbm, float* d, float* q, const MKL_INT* ldq,
                        MKL_INT* indxq, const float* rho, const MKL_INT* cutpnt,
                        float* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const float* givnum, float* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall SLAED8( const MKL_INT* icompq, MKL_INT* k, const MKL_INT* n,
                       const MKL_INT* qsiz, float* d, float* q, const MKL_INT* ldq,
                       const MKL_INT* indxq, float* rho, const MKL_INT* cutpnt,
                       const float* z, float* dlamda, float* q2, const MKL_INT* ldq2,
                       float* w, MKL_INT* perm, MKL_INT* givptr, MKL_INT* givcol,
                       float* givnum, MKL_INT* indxp, MKL_INT* indx, MKL_INT* info );
void __stdcall SLAED8_( const MKL_INT* icompq, MKL_INT* k, const MKL_INT* n,
                        const MKL_INT* qsiz, float* d, float* q, const MKL_INT* ldq,
                        const MKL_INT* indxq, float* rho, const MKL_INT* cutpnt,
                        const float* z, float* dlamda, float* q2, const MKL_INT* ldq2,
                        float* w, MKL_INT* perm, MKL_INT* givptr, MKL_INT* givcol,
                        float* givnum, MKL_INT* indxp, MKL_INT* indx, MKL_INT* info );
void __stdcall slaed8( const MKL_INT* icompq, MKL_INT* k, const MKL_INT* n,
                       const MKL_INT* qsiz, float* d, float* q, const MKL_INT* ldq,
                       const MKL_INT* indxq, float* rho, const MKL_INT* cutpnt,
                       const float* z, float* dlamda, float* q2, const MKL_INT* ldq2,
                       float* w, MKL_INT* perm, MKL_INT* givptr, MKL_INT* givcol,
                       float* givnum, MKL_INT* indxp, MKL_INT* indx, MKL_INT* info );
void __stdcall slaed8_( const MKL_INT* icompq, MKL_INT* k, const MKL_INT* n,
                        const MKL_INT* qsiz, float* d, float* q, const MKL_INT* ldq,
                        const MKL_INT* indxq, float* rho, const MKL_INT* cutpnt,
                        const float* z, float* dlamda, float* q2, const MKL_INT* ldq2,
                        float* w, MKL_INT* perm, MKL_INT* givptr, MKL_INT* givcol,
                        float* givnum, MKL_INT* indxp, MKL_INT* indx, MKL_INT* info );

void __stdcall SLAED9( const MKL_INT* k, const MKL_INT* kstart, const MKL_INT* kstop,
                       const MKL_INT* n, float* d, float* q, const MKL_INT* ldq,
                       const float* rho, const float* dlamda, const float* w, float* s,
                       const MKL_INT* lds, MKL_INT* info );
void __stdcall SLAED9_( const MKL_INT* k, const MKL_INT* kstart, const MKL_INT* kstop,
                        const MKL_INT* n, float* d, float* q, const MKL_INT* ldq,
                        const float* rho, const float* dlamda, const float* w, float* s,
                        const MKL_INT* lds, MKL_INT* info );
void __stdcall slaed9( const MKL_INT* k, const MKL_INT* kstart, const MKL_INT* kstop,
                       const MKL_INT* n, float* d, float* q, const MKL_INT* ldq,
                       const float* rho, const float* dlamda, const float* w, float* s,
                       const MKL_INT* lds, MKL_INT* info );
void __stdcall slaed9_( const MKL_INT* k, const MKL_INT* kstart, const MKL_INT* kstop,
                        const MKL_INT* n, float* d, float* q, const MKL_INT* ldq,
                        const float* rho, const float* dlamda, const float* w, float* s,
                        const MKL_INT* lds, MKL_INT* info );

void __stdcall SLAEDA( const MKL_INT* n, const MKL_INT* tlvls, const MKL_INT* curlvl,
                       const MKL_INT* curpbm, const MKL_INT* prmptr, const MKL_INT* perm,
                       const MKL_INT* givptr, const MKL_INT* givcol, const float* givnum,
                       const float* q, const MKL_INT* qptr, float* z, float* ztemp,
                       MKL_INT* info );
void __stdcall SLAEDA_( const MKL_INT* n, const MKL_INT* tlvls, const MKL_INT* curlvl,
                        const MKL_INT* curpbm, const MKL_INT* prmptr,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const float* givnum, const float* q,
                        const MKL_INT* qptr, float* z, float* ztemp, MKL_INT* info );
void __stdcall slaeda( const MKL_INT* n, const MKL_INT* tlvls, const MKL_INT* curlvl,
                       const MKL_INT* curpbm, const MKL_INT* prmptr, const MKL_INT* perm,
                       const MKL_INT* givptr, const MKL_INT* givcol, const float* givnum,
                       const float* q, const MKL_INT* qptr, float* z, float* ztemp,
                       MKL_INT* info );
void __stdcall slaeda_( const MKL_INT* n, const MKL_INT* tlvls, const MKL_INT* curlvl,
                        const MKL_INT* curpbm, const MKL_INT* prmptr,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const float* givnum, const float* q,
                        const MKL_INT* qptr, float* z, float* ztemp, MKL_INT* info );

void __stdcall SLAEIN( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                       const float* h, const MKL_INT* ldh, const float* wr,
                       const float* wi, float* vr, float* vi, float* b,
                       const MKL_INT* ldb, float* work, const float* eps3,
                       const float* smlnum, const float* bignum, MKL_INT* info );
void __stdcall SLAEIN_( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                        const float* h, const MKL_INT* ldh, const float* wr,
                        const float* wi, float* vr, float* vi, float* b,
                        const MKL_INT* ldb, float* work, const float* eps3,
                        const float* smlnum, const float* bignum, MKL_INT* info );
void __stdcall slaein( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                       const float* h, const MKL_INT* ldh, const float* wr,
                       const float* wi, float* vr, float* vi, float* b,
                       const MKL_INT* ldb, float* work, const float* eps3,
                       const float* smlnum, const float* bignum, MKL_INT* info );
void __stdcall slaein_( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                        const float* h, const MKL_INT* ldh, const float* wr,
                        const float* wi, float* vr, float* vi, float* b,
                        const MKL_INT* ldb, float* work, const float* eps3,
                        const float* smlnum, const float* bignum, MKL_INT* info );

void __stdcall SLAEV2( const float* a, const float* b, const float* c, float* rt1,
                       float* rt2, float* cs1, float* sn1 );
void __stdcall SLAEV2_( const float* a, const float* b, const float* c, float* rt1,
                        float* rt2, float* cs1, float* sn1 );
void __stdcall slaev2( const float* a, const float* b, const float* c, float* rt1,
                       float* rt2, float* cs1, float* sn1 );
void __stdcall slaev2_( const float* a, const float* b, const float* c, float* rt1,
                        float* rt2, float* cs1, float* sn1 );

void __stdcall SLAEXC( const MKL_INT* wantq, const MKL_INT* n, float* t,
                       const MKL_INT* ldt, float* q, const MKL_INT* ldq,
                       const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                       float* work, MKL_INT* info );
void __stdcall SLAEXC_( const MKL_INT* wantq, const MKL_INT* n, float* t,
                        const MKL_INT* ldt, float* q, const MKL_INT* ldq,
                        const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                        float* work, MKL_INT* info );
void __stdcall slaexc( const MKL_INT* wantq, const MKL_INT* n, float* t,
                       const MKL_INT* ldt, float* q, const MKL_INT* ldq,
                       const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                       float* work, MKL_INT* info );
void __stdcall slaexc_( const MKL_INT* wantq, const MKL_INT* n, float* t,
                        const MKL_INT* ldt, float* q, const MKL_INT* ldq,
                        const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                        float* work, MKL_INT* info );

void __stdcall SLAG2D( const MKL_INT* m, const MKL_INT* n, const float* sa,
                       const MKL_INT* ldsa, double* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall SLAG2D_( const MKL_INT* m, const MKL_INT* n, const float* sa,
                        const MKL_INT* ldsa, double* a, const MKL_INT* lda,
                        MKL_INT* info );
void __stdcall slag2d( const MKL_INT* m, const MKL_INT* n, const float* sa,
                       const MKL_INT* ldsa, double* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall slag2d_( const MKL_INT* m, const MKL_INT* n, const float* sa,
                        const MKL_INT* ldsa, double* a, const MKL_INT* lda,
                        MKL_INT* info );

void __stdcall SLAG2( const float* a, const MKL_INT* lda, const float* b,
                      const MKL_INT* ldb, const float* safmin, float* scale1,
                      float* scale2, float* wr1, float* wr2, float* wi );
void __stdcall SLAG2_( const float* a, const MKL_INT* lda, const float* b,
                       const MKL_INT* ldb, const float* safmin, float* scale1,
                       float* scale2, float* wr1, float* wr2, float* wi );
void __stdcall slag2( const float* a, const MKL_INT* lda, const float* b,
                      const MKL_INT* ldb, const float* safmin, float* scale1,
                      float* scale2, float* wr1, float* wr2, float* wi );
void __stdcall slag2_( const float* a, const MKL_INT* lda, const float* b,
                       const MKL_INT* ldb, const float* safmin, float* scale1,
                       float* scale2, float* wr1, float* wr2, float* wi );

void __stdcall SLAGS2( const MKL_INT* upper, const float* a1, const float* a2,
                       const float* a3, const float* b1, const float* b2,
                       const float* b3, float* csu, float* snu, float* csv, float* snv,
                       float* csq, float* snq );
void __stdcall SLAGS2_( const MKL_INT* upper, const float* a1, const float* a2,
                        const float* a3, const float* b1, const float* b2,
                        const float* b3, float* csu, float* snu, float* csv, float* snv,
                        float* csq, float* snq );
void __stdcall slags2( const MKL_INT* upper, const float* a1, const float* a2,
                       const float* a3, const float* b1, const float* b2,
                       const float* b3, float* csu, float* snu, float* csv, float* snv,
                       float* csq, float* snq );
void __stdcall slags2_( const MKL_INT* upper, const float* a1, const float* a2,
                        const float* a3, const float* b1, const float* b2,
                        const float* b3, float* csu, float* snu, float* csv, float* snv,
                        float* csq, float* snq );

void __stdcall SLAGTF( const MKL_INT* n, float* a, const float* lambda, float* b,
                       float* c, const float* tol, float* d, MKL_INT* in,
                       MKL_INT* info );
void __stdcall SLAGTF_( const MKL_INT* n, float* a, const float* lambda, float* b,
                        float* c, const float* tol, float* d, MKL_INT* in,
                        MKL_INT* info );
void __stdcall slagtf( const MKL_INT* n, float* a, const float* lambda, float* b,
                       float* c, const float* tol, float* d, MKL_INT* in,
                       MKL_INT* info );
void __stdcall slagtf_( const MKL_INT* n, float* a, const float* lambda, float* b,
                        float* c, const float* tol, float* d, MKL_INT* in,
                        MKL_INT* info );

void __stdcall SLAGTM( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* alpha, const float* dl, const float* d,
                       const float* du, const float* x, const MKL_INT* ldx,
                       const float* beta, float* b, const MKL_INT* ldb );
void __stdcall SLAGTM_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* alpha, const float* dl, const float* d,
                        const float* du, const float* x, const MKL_INT* ldx,
                        const float* beta, float* b, const MKL_INT* ldb );
void __stdcall slagtm( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* alpha, const float* dl, const float* d,
                       const float* du, const float* x, const MKL_INT* ldx,
                       const float* beta, float* b, const MKL_INT* ldb );
void __stdcall slagtm_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* alpha, const float* dl, const float* d,
                        const float* du, const float* x, const MKL_INT* ldx,
                        const float* beta, float* b, const MKL_INT* ldb );

void __stdcall SLAGTS( const MKL_INT* job, const MKL_INT* n, const float* a,
                       const float* b, const float* c, const float* d, const MKL_INT* in,
                       float* y, float* tol, MKL_INT* info );
void __stdcall SLAGTS_( const MKL_INT* job, const MKL_INT* n, const float* a,
                        const float* b, const float* c, const float* d,
                        const MKL_INT* in, float* y, float* tol, MKL_INT* info );
void __stdcall slagts( const MKL_INT* job, const MKL_INT* n, const float* a,
                       const float* b, const float* c, const float* d, const MKL_INT* in,
                       float* y, float* tol, MKL_INT* info );
void __stdcall slagts_( const MKL_INT* job, const MKL_INT* n, const float* a,
                        const float* b, const float* c, const float* d,
                        const MKL_INT* in, float* y, float* tol, MKL_INT* info );

void __stdcall SLAGV2( float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       float* alphar, float* alphai, float* beta, float* csl, float* snl,
                       float* csr, float* snr );
void __stdcall SLAGV2_( float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* alphar, float* alphai, float* beta, float* csl,
                        float* snl, float* csr, float* snr );
void __stdcall slagv2( float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       float* alphar, float* alphai, float* beta, float* csl, float* snl,
                       float* csr, float* snr );
void __stdcall slagv2_( float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* alphar, float* alphai, float* beta, float* csl,
                        float* snl, float* csr, float* snr );

void __stdcall SLAHQR( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                       const MKL_INT* ldh, float* wr, float* wi, const MKL_INT* iloz,
                       const MKL_INT* ihiz, float* z, const MKL_INT* ldz,
                       MKL_INT* info );
void __stdcall SLAHQR_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                        const MKL_INT* ldh, float* wr, float* wi, const MKL_INT* iloz,
                        const MKL_INT* ihiz, float* z, const MKL_INT* ldz,
                        MKL_INT* info );
void __stdcall slahqr( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                       const MKL_INT* ldh, float* wr, float* wi, const MKL_INT* iloz,
                       const MKL_INT* ihiz, float* z, const MKL_INT* ldz,
                       MKL_INT* info );
void __stdcall slahqr_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                        const MKL_INT* ldh, float* wr, float* wi, const MKL_INT* iloz,
                        const MKL_INT* ihiz, float* z, const MKL_INT* ldz,
                        MKL_INT* info );

void __stdcall SLAHR2( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, float* a,
                       const MKL_INT* lda, float* tau, float* t, const MKL_INT* ldt,
                       float* y, const MKL_INT* ldy );
void __stdcall SLAHR2_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, float* a,
                        const MKL_INT* lda, float* tau, float* t, const MKL_INT* ldt,
                        float* y, const MKL_INT* ldy );
void __stdcall slahr2( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, float* a,
                       const MKL_INT* lda, float* tau, float* t, const MKL_INT* ldt,
                       float* y, const MKL_INT* ldy );
void __stdcall slahr2_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, float* a,
                        const MKL_INT* lda, float* tau, float* t, const MKL_INT* ldt,
                        float* y, const MKL_INT* ldy );

void __stdcall SLAHRD( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, float* a,
                       const MKL_INT* lda, float* tau, float* t, const MKL_INT* ldt,
                       float* y, const MKL_INT* ldy );
void __stdcall SLAHRD_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, float* a,
                        const MKL_INT* lda, float* tau, float* t, const MKL_INT* ldt,
                        float* y, const MKL_INT* ldy );
void __stdcall slahrd( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, float* a,
                       const MKL_INT* lda, float* tau, float* t, const MKL_INT* ldt,
                       float* y, const MKL_INT* ldy );
void __stdcall slahrd_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb, float* a,
                        const MKL_INT* lda, float* tau, float* t, const MKL_INT* ldt,
                        float* y, const MKL_INT* ldy );

void __stdcall SLAIC1( const MKL_INT* job, const MKL_INT* j, const float* x,
                       const float* sest, const float* w, const float* gamma,
                       float* sestpr, float* s, float* c );
void __stdcall SLAIC1_( const MKL_INT* job, const MKL_INT* j, const float* x,
                        const float* sest, const float* w, const float* gamma,
                        float* sestpr, float* s, float* c );
void __stdcall slaic1( const MKL_INT* job, const MKL_INT* j, const float* x,
                       const float* sest, const float* w, const float* gamma,
                       float* sestpr, float* s, float* c );
void __stdcall slaic1_( const MKL_INT* job, const MKL_INT* j, const float* x,
                        const float* sest, const float* w, const float* gamma,
                        float* sestpr, float* s, float* c );

MKL_INT __stdcall SLAISNAN( const float* sin1, const float* sin2 );
MKL_INT __stdcall SLAISNAN_( const float* sin1, const float* sin2 );
MKL_INT __stdcall slaisnan( const float* sin1, const float* sin2 );
MKL_INT __stdcall slaisnan_( const float* sin1, const float* sin2 );

void __stdcall SLALN2( const MKL_INT* ltrans, const MKL_INT* na, const MKL_INT* nw,
                       const float* smin, const float* ca, const float* a,
                       const MKL_INT* lda, const float* d1, const float* d2,
                       const float* b, const MKL_INT* ldb, const float* wr,
                       const float* wi, float* x, const MKL_INT* ldx, float* scale,
                       float* xnorm, MKL_INT* info );
void __stdcall SLALN2_( const MKL_INT* ltrans, const MKL_INT* na, const MKL_INT* nw,
                        const float* smin, const float* ca, const float* a,
                        const MKL_INT* lda, const float* d1, const float* d2,
                        const float* b, const MKL_INT* ldb, const float* wr,
                        const float* wi, float* x, const MKL_INT* ldx, float* scale,
                        float* xnorm, MKL_INT* info );
void __stdcall slaln2( const MKL_INT* ltrans, const MKL_INT* na, const MKL_INT* nw,
                       const float* smin, const float* ca, const float* a,
                       const MKL_INT* lda, const float* d1, const float* d2,
                       const float* b, const MKL_INT* ldb, const float* wr,
                       const float* wi, float* x, const MKL_INT* ldx, float* scale,
                       float* xnorm, MKL_INT* info );
void __stdcall slaln2_( const MKL_INT* ltrans, const MKL_INT* na, const MKL_INT* nw,
                        const float* smin, const float* ca, const float* a,
                        const MKL_INT* lda, const float* d1, const float* d2,
                        const float* b, const MKL_INT* ldb, const float* wr,
                        const float* wi, float* x, const MKL_INT* ldx, float* scale,
                        float* xnorm, MKL_INT* info );

void __stdcall SLALS0( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, const MKL_INT* nrhs, float* b,
                       const MKL_INT* ldb, float* bx, const MKL_INT* ldbx,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const float* givnum, const MKL_INT* ldgnum,
                       const float* poles, const float* difl, const float* difr,
                       const float* z, const MKL_INT* k, const float* c, const float* s,
                       float* work, MKL_INT* info );
void __stdcall SLALS0_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, const MKL_INT* nrhs, float* b,
                        const MKL_INT* ldb, float* bx, const MKL_INT* ldbx,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const MKL_INT* ldgcol,
                        const float* givnum, const MKL_INT* ldgnum, const float* poles,
                        const float* difl, const float* difr, const float* z,
                        const MKL_INT* k, const float* c, const float* s, float* work,
                        MKL_INT* info );
void __stdcall slals0( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, const MKL_INT* nrhs, float* b,
                       const MKL_INT* ldb, float* bx, const MKL_INT* ldbx,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const float* givnum, const MKL_INT* ldgnum,
                       const float* poles, const float* difl, const float* difr,
                       const float* z, const MKL_INT* k, const float* c, const float* s,
                       float* work, MKL_INT* info );
void __stdcall slals0_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, const MKL_INT* nrhs, float* b,
                        const MKL_INT* ldb, float* bx, const MKL_INT* ldbx,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const MKL_INT* ldgcol,
                        const float* givnum, const MKL_INT* ldgnum, const float* poles,
                        const float* difl, const float* difr, const float* z,
                        const MKL_INT* k, const float* c, const float* s, float* work,
                        MKL_INT* info );

void __stdcall SLALSA( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, float* b, const MKL_INT* ldb, float* bx,
                       const MKL_INT* ldbx, const float* u, const MKL_INT* ldu,
                       const float* vt, const MKL_INT* k, const float* difl,
                       const float* difr, const float* z, const float* poles,
                       const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const MKL_INT* perm, const float* givnum,
                       const float* c, const float* s, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall SLALSA_( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, float* b, const MKL_INT* ldb, float* bx,
                        const MKL_INT* ldbx, const float* u, const MKL_INT* ldu,
                        const float* vt, const MKL_INT* k, const float* difl,
                        const float* difr, const float* z, const float* poles,
                        const MKL_INT* givptr, const MKL_INT* givcol,
                        const MKL_INT* ldgcol, const MKL_INT* perm, const float* givnum,
                        const float* c, const float* s, float* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall slalsa( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, float* b, const MKL_INT* ldb, float* bx,
                       const MKL_INT* ldbx, const float* u, const MKL_INT* ldu,
                       const float* vt, const MKL_INT* k, const float* difl,
                       const float* difr, const float* z, const float* poles,
                       const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const MKL_INT* perm, const float* givnum,
                       const float* c, const float* s, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall slalsa_( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, float* b, const MKL_INT* ldb, float* bx,
                        const MKL_INT* ldbx, const float* u, const MKL_INT* ldu,
                        const float* vt, const MKL_INT* k, const float* difl,
                        const float* difr, const float* z, const float* poles,
                        const MKL_INT* givptr, const MKL_INT* givcol,
                        const MKL_INT* ldgcol, const MKL_INT* perm, const float* givnum,
                        const float* c, const float* s, float* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall SLALSD( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, float* d, float* e, float* b,
                       const MKL_INT* ldb, const float* rcond, MKL_INT* rank,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SLALSD_( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, float* d, float* e, float* b,
                        const MKL_INT* ldb, const float* rcond, MKL_INT* rank,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall slalsd( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, float* d, float* e, float* b,
                       const MKL_INT* ldb, const float* rcond, MKL_INT* rank,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall slalsd_( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, float* d, float* e, float* b,
                        const MKL_INT* ldb, const float* rcond, MKL_INT* rank,
                        float* work, MKL_INT* iwork, MKL_INT* info );

float __stdcall SLAMCH( const char* cmach , int cmach_len);
float __stdcall SLAMCH_( const char* cmach , int cmach_len);
float __stdcall slamch( const char* cmach , int cmach_len);
float __stdcall slamch_( const char* cmach , int cmach_len);

void __stdcall SLAMC1( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, MKL_INT* ieee1 );
void __stdcall SLAMC1_( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, MKL_INT* ieee1 );
void __stdcall slamc1( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, MKL_INT* ieee1 );
void __stdcall slamc1_( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, MKL_INT* ieee1 );

void __stdcall SLAMC2( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, float* eps,
                       MKL_INT* emin, float* rmin, MKL_INT* emax, float* rmax );
void __stdcall SLAMC2_( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, float* eps,
                        MKL_INT* emin, float* rmin, MKL_INT* emax, float* rmax );
void __stdcall slamc2( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, float* eps,
                       MKL_INT* emin, float* rmin, MKL_INT* emax, float* rmax );
void __stdcall slamc2_( MKL_INT* beta, MKL_INT* t, MKL_INT* rnd, float* eps,
                        MKL_INT* emin, float* rmin, MKL_INT* emax, float* rmax );

float __stdcall SLAMC3( const float* a, const float* b );
float __stdcall SLAMC3_( const float* a, const float* b );
float __stdcall slamc3( const float* a, const float* b );
float __stdcall slamc3_( const float* a, const float* b );

void __stdcall SLAMC4( MKL_INT* emin, const float* start, const MKL_INT* base );
void __stdcall SLAMC4_( MKL_INT* emin, const float* start, const MKL_INT* base );
void __stdcall slamc4( MKL_INT* emin, const float* start, const MKL_INT* base );
void __stdcall slamc4_( MKL_INT* emin, const float* start, const MKL_INT* base );

void __stdcall SLAMC5( const MKL_INT* beta, const MKL_INT* p, const MKL_INT* emin,
                       const MKL_INT* ieee, MKL_INT* emax, float* rmax );
void __stdcall SLAMC5_( const MKL_INT* beta, const MKL_INT* p, const MKL_INT* emin,
                        const MKL_INT* ieee, MKL_INT* emax, float* rmax );
void __stdcall slamc5( const MKL_INT* beta, const MKL_INT* p, const MKL_INT* emin,
                       const MKL_INT* ieee, MKL_INT* emax, float* rmax );
void __stdcall slamc5_( const MKL_INT* beta, const MKL_INT* p, const MKL_INT* emin,
                        const MKL_INT* ieee, MKL_INT* emax, float* rmax );

void __stdcall SLAMRG( const MKL_INT* n1, const MKL_INT* n2, const float* a,
                       const MKL_INT* strd1, const MKL_INT* strd2, MKL_INT* index );
void __stdcall SLAMRG_( const MKL_INT* n1, const MKL_INT* n2, const float* a,
                        const MKL_INT* strd1, const MKL_INT* strd2, MKL_INT* index );
void __stdcall slamrg( const MKL_INT* n1, const MKL_INT* n2, const float* a,
                       const MKL_INT* strd1, const MKL_INT* strd2, MKL_INT* index );
void __stdcall slamrg_( const MKL_INT* n1, const MKL_INT* n2, const float* a,
                        const MKL_INT* strd1, const MKL_INT* strd2, MKL_INT* index );

MKL_INT __stdcall SLANEG( const MKL_INT* n, const float* d, const float* lld,
                          const float* sigma, const float* pivmin, const MKL_INT* r );
MKL_INT __stdcall SLANEG_( const MKL_INT* n, const float* d, const float* lld,
                           const float* sigma, const float* pivmin, const MKL_INT* r );
MKL_INT __stdcall slaneg( const MKL_INT* n, const float* d, const float* lld,
                          const float* sigma, const float* pivmin, const MKL_INT* r );
MKL_INT __stdcall slaneg_( const MKL_INT* n, const float* d, const float* lld,
                           const float* sigma, const float* pivmin, const MKL_INT* r );

float __stdcall SLANGB( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                        float* work );
float __stdcall SLANGB_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                         float* work );
float __stdcall slangb( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                        float* work );
float __stdcall slangb_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const float* ab, const MKL_INT* ldab,
                         float* work );

float __stdcall SLANGE( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                        const float* a, const MKL_INT* lda, float* work );
float __stdcall SLANGE_( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                         const float* a, const MKL_INT* lda, float* work );
float __stdcall slange( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                        const float* a, const MKL_INT* lda, float* work );
float __stdcall slange_( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                         const float* a, const MKL_INT* lda, float* work );

float __stdcall SLANGT( const char* norm, int norm_len, const MKL_INT* n, const float* dl,
                        const float* d, const float* du );
float __stdcall SLANGT_( const char* norm, int norm_len, const MKL_INT* n, const float* dl,
                         const float* d, const float* du );
float __stdcall slangt( const char* norm, int norm_len, const MKL_INT* n, const float* dl,
                        const float* d, const float* du );
float __stdcall slangt_( const char* norm, int norm_len, const MKL_INT* n, const float* dl,
                         const float* d, const float* du );

float __stdcall SLANHS( const char* norm, int norm_len, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, float* work );
float __stdcall SLANHS_( const char* norm, int norm_len, const MKL_INT* n, const float* a,
                         const MKL_INT* lda, float* work );
float __stdcall slanhs( const char* norm, int norm_len, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, float* work );
float __stdcall slanhs_( const char* norm, int norm_len, const MKL_INT* n, const float* a,
                         const MKL_INT* lda, float* work );

float __stdcall SLANSB( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* k, const float* ab, const MKL_INT* ldab,
                        float* work );
float __stdcall SLANSB_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* k, const float* ab, const MKL_INT* ldab,
                         float* work );
float __stdcall slansb( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* k, const float* ab, const MKL_INT* ldab,
                        float* work );
float __stdcall slansb_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* k, const float* ab, const MKL_INT* ldab,
                         float* work );

float __stdcall SLANSF( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const float* a, float* work );
float __stdcall SLANSF_( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                         const MKL_INT* n, const float* a, float* work );
float __stdcall slansf( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const float* a, float* work );
float __stdcall slansf_( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                         const MKL_INT* n, const float* a, float* work );

float __stdcall SLANSP( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* ap, float* work );
float __stdcall SLANSP_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const float* ap, float* work );
float __stdcall slansp( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* ap, float* work );
float __stdcall slansp_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const float* ap, float* work );

float __stdcall SLANST( const char* norm, int norm_len, const MKL_INT* n, const float* d,
                        const float* e );
float __stdcall SLANST_( const char* norm, int norm_len, const MKL_INT* n, const float* d,
                         const float* e );
float __stdcall slanst( const char* norm, int norm_len, const MKL_INT* n, const float* d,
                        const float* e );
float __stdcall slanst_( const char* norm, int norm_len, const MKL_INT* n, const float* d,
                         const float* e );

float __stdcall SLANSY( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* a, const MKL_INT* lda, float* work );
float __stdcall SLANSY_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const float* a, const MKL_INT* lda, float* work );
float __stdcall slansy( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* a, const MKL_INT* lda, float* work );
float __stdcall slansy_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const float* a, const MKL_INT* lda, float* work );

float __stdcall SLANTB( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* k, const float* ab,
                        const MKL_INT* ldab, float* work );
float __stdcall SLANTB_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const MKL_INT* k, const float* ab,
                         const MKL_INT* ldab, float* work );
float __stdcall slantb( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* k, const float* ab,
                        const MKL_INT* ldab, float* work );
float __stdcall slantb_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const MKL_INT* k, const float* ab,
                         const MKL_INT* ldab, float* work );

float __stdcall SLANTP( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const float* ap, float* work );
float __stdcall SLANTP_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const float* ap, float* work );
float __stdcall slantp( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const float* ap, float* work );
float __stdcall slantp_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const float* ap, float* work );

float __stdcall SLANTR( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, float* work );
float __stdcall SLANTR_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* m, const MKL_INT* n, const float* a,
                         const MKL_INT* lda, float* work );
float __stdcall slantr( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, float* work );
float __stdcall slantr_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* m, const MKL_INT* n, const float* a,
                         const MKL_INT* lda, float* work );

void __stdcall SLANV2( float* a, float* b, float* c, float* d, float* rt1r, float* rt1i,
                       float* rt2r, float* rt2i, float* cs, float* sn );
void __stdcall SLANV2_( float* a, float* b, float* c, float* d, float* rt1r, float* rt1i,
                        float* rt2r, float* rt2i, float* cs, float* sn );
void __stdcall slanv2( float* a, float* b, float* c, float* d, float* rt1r, float* rt1i,
                       float* rt2r, float* rt2i, float* cs, float* sn );
void __stdcall slanv2_( float* a, float* b, float* c, float* d, float* rt1r, float* rt1i,
                        float* rt2r, float* rt2i, float* cs, float* sn );

void __stdcall SLAPLL( const MKL_INT* n, float* x, const MKL_INT* incx, float* y,
                       const MKL_INT* incy, float* ssmin );
void __stdcall SLAPLL_( const MKL_INT* n, float* x, const MKL_INT* incx, float* y,
                        const MKL_INT* incy, float* ssmin );
void __stdcall slapll( const MKL_INT* n, float* x, const MKL_INT* incx, float* y,
                       const MKL_INT* incy, float* ssmin );
void __stdcall slapll_( const MKL_INT* n, float* x, const MKL_INT* incx, float* y,
                        const MKL_INT* incy, float* ssmin );

void __stdcall SLAPMT( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       float* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall SLAPMT_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        float* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall slapmt( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       float* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall slapmt_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        float* x, const MKL_INT* ldx, MKL_INT* k );

float __stdcall SLAPY2( const float* x, const float* y );
float __stdcall SLAPY2_( const float* x, const float* y );
float __stdcall slapy2( const float* x, const float* y );
float __stdcall slapy2_( const float* x, const float* y );

float __stdcall SLAPY3( const float* x, const float* y, const float* z );
float __stdcall SLAPY3_( const float* x, const float* y, const float* z );
float __stdcall slapy3( const float* x, const float* y, const float* z );
float __stdcall slapy3_( const float* x, const float* y, const float* z );

void __stdcall SLAQGB( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, float* ab, const MKL_INT* ldab, const float* r,
                       const float* c, const float* rowcnd, const float* colcnd,
                       const float* amax, char* equed , int equed_len);
void __stdcall SLAQGB_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, float* ab, const MKL_INT* ldab,
                        const float* r, const float* c, const float* rowcnd,
                        const float* colcnd, const float* amax, char* equed , int equed_len);
void __stdcall slaqgb( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, float* ab, const MKL_INT* ldab, const float* r,
                       const float* c, const float* rowcnd, const float* colcnd,
                       const float* amax, char* equed , int equed_len);
void __stdcall slaqgb_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, float* ab, const MKL_INT* ldab,
                        const float* r, const float* c, const float* rowcnd,
                        const float* colcnd, const float* amax, char* equed , int equed_len);

void __stdcall SLAQGE( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       const float* r, const float* c, const float* rowcnd,
                       const float* colcnd, const float* amax, char* equed , int equed_len);
void __stdcall SLAQGE_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        const float* r, const float* c, const float* rowcnd,
                        const float* colcnd, const float* amax, char* equed , int equed_len);
void __stdcall slaqge( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       const float* r, const float* c, const float* rowcnd,
                       const float* colcnd, const float* amax, char* equed , int equed_len);
void __stdcall slaqge_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        const float* r, const float* c, const float* rowcnd,
                        const float* colcnd, const float* amax, char* equed , int equed_len);

void __stdcall SLAQP2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       float* a, const MKL_INT* lda, MKL_INT* jpvt, float* tau,
                       float* vn1, float* vn2, float* work );
void __stdcall SLAQP2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        float* a, const MKL_INT* lda, MKL_INT* jpvt, float* tau,
                        float* vn1, float* vn2, float* work );
void __stdcall slaqp2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       float* a, const MKL_INT* lda, MKL_INT* jpvt, float* tau,
                       float* vn1, float* vn2, float* work );
void __stdcall slaqp2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        float* a, const MKL_INT* lda, MKL_INT* jpvt, float* tau,
                        float* vn1, float* vn2, float* work );

void __stdcall SLAQPS( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       const MKL_INT* nb, MKL_INT* kb, float* a, const MKL_INT* lda,
                       MKL_INT* jpvt, float* tau, float* vn1, float* vn2, float* auxv,
                       float* f, const MKL_INT* ldf );
void __stdcall SLAQPS_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        const MKL_INT* nb, MKL_INT* kb, float* a, const MKL_INT* lda,
                        MKL_INT* jpvt, float* tau, float* vn1, float* vn2, float* auxv,
                        float* f, const MKL_INT* ldf );
void __stdcall slaqps( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       const MKL_INT* nb, MKL_INT* kb, float* a, const MKL_INT* lda,
                       MKL_INT* jpvt, float* tau, float* vn1, float* vn2, float* auxv,
                       float* f, const MKL_INT* ldf );
void __stdcall slaqps_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        const MKL_INT* nb, MKL_INT* kb, float* a, const MKL_INT* lda,
                        MKL_INT* jpvt, float* tau, float* vn1, float* vn2, float* auxv,
                        float* f, const MKL_INT* ldf );

void __stdcall SLAQR0( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                       const MKL_INT* ldh, float* wr, float* wi, const MKL_INT* iloz,
                       const MKL_INT* ihiz, float* z, const MKL_INT* ldz, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall SLAQR0_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                        const MKL_INT* ldh, float* wr, float* wi, const MKL_INT* iloz,
                        const MKL_INT* ihiz, float* z, const MKL_INT* ldz, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall slaqr0( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                       const MKL_INT* ldh, float* wr, float* wi, const MKL_INT* iloz,
                       const MKL_INT* ihiz, float* z, const MKL_INT* ldz, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall slaqr0_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                        const MKL_INT* ldh, float* wr, float* wi, const MKL_INT* iloz,
                        const MKL_INT* ihiz, float* z, const MKL_INT* ldz, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SLAQR1( const MKL_INT* n, const float* h, const MKL_INT* ldh,
                       const float* sr1, float* si1, float* sr2, float* si2, float* v );
void __stdcall SLAQR1_( const MKL_INT* n, const float* h, const MKL_INT* ldh,
                        const float* sr1, float* si1, float* sr2, float* si2, float* v );
void __stdcall slaqr1( const MKL_INT* n, const float* h, const MKL_INT* ldh,
                       const float* sr1, float* si1, float* sr2, float* si2, float* v );
void __stdcall slaqr1_( const MKL_INT* n, const float* h, const MKL_INT* ldh,
                        const float* sr1, float* si1, float* sr2, float* si2, float* v );

void __stdcall SLAQR2( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       float* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, float* z, const MKL_INT* ldz, MKL_INT* ns,
                       MKL_INT* nd, float* sr, float* si, float* v, const MKL_INT* ldv,
                       const MKL_INT* nh, float* t, const MKL_INT* ldt,
                       const MKL_INT* nv, float* wv, const MKL_INT* ldwv, float* work,
                       const MKL_INT* lwork );
void __stdcall SLAQR2_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        float* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, float* z, const MKL_INT* ldz, MKL_INT* ns,
                        MKL_INT* nd, float* sr, float* si, float* v, const MKL_INT* ldv,
                        const MKL_INT* nh, float* t, const MKL_INT* ldt,
                        const MKL_INT* nv, float* wv, const MKL_INT* ldwv, float* work,
                        const MKL_INT* lwork );
void __stdcall slaqr2( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       float* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, float* z, const MKL_INT* ldz, MKL_INT* ns,
                       MKL_INT* nd, float* sr, float* si, float* v, const MKL_INT* ldv,
                       const MKL_INT* nh, float* t, const MKL_INT* ldt,
                       const MKL_INT* nv, float* wv, const MKL_INT* ldwv, float* work,
                       const MKL_INT* lwork );
void __stdcall slaqr2_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        float* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, float* z, const MKL_INT* ldz, MKL_INT* ns,
                        MKL_INT* nd, float* sr, float* si, float* v, const MKL_INT* ldv,
                        const MKL_INT* nh, float* t, const MKL_INT* ldt,
                        const MKL_INT* nv, float* wv, const MKL_INT* ldwv, float* work,
                        const MKL_INT* lwork );

void __stdcall SLAQR3( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       float* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, float* z, const MKL_INT* ldz, MKL_INT* ns,
                       MKL_INT* nd, float* sr, float* si, float* v, const MKL_INT* ldv,
                       const MKL_INT* nh, float* t, const MKL_INT* ldt,
                       const MKL_INT* nv, float* wv, const MKL_INT* ldwv, float* work,
                       const MKL_INT* lwork );
void __stdcall SLAQR3_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        float* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, float* z, const MKL_INT* ldz, MKL_INT* ns,
                        MKL_INT* nd, float* sr, float* si, float* v, const MKL_INT* ldv,
                        const MKL_INT* nh, float* t, const MKL_INT* ldt,
                        const MKL_INT* nv, float* wv, const MKL_INT* ldwv, float* work,
                        const MKL_INT* lwork );
void __stdcall slaqr3( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       float* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, float* z, const MKL_INT* ldz, MKL_INT* ns,
                       MKL_INT* nd, float* sr, float* si, float* v, const MKL_INT* ldv,
                       const MKL_INT* nh, float* t, const MKL_INT* ldt,
                       const MKL_INT* nv, float* wv, const MKL_INT* ldwv, float* work,
                       const MKL_INT* lwork );
void __stdcall slaqr3_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        float* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, float* z, const MKL_INT* ldz, MKL_INT* ns,
                        MKL_INT* nd, float* sr, float* si, float* v, const MKL_INT* ldv,
                        const MKL_INT* nh, float* t, const MKL_INT* ldt,
                        const MKL_INT* nv, float* wv, const MKL_INT* ldwv, float* work,
                        const MKL_INT* lwork );

void __stdcall SLAQR4( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                       const MKL_INT* ldh, float* wr, float* wi, const MKL_INT* iloz,
                       const MKL_INT* ihiz, float* z, const MKL_INT* ldz, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall SLAQR4_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                        const MKL_INT* ldh, float* wr, float* wi, const MKL_INT* iloz,
                        const MKL_INT* ihiz, float* z, const MKL_INT* ldz, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall slaqr4( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                       const MKL_INT* ldh, float* wr, float* wi, const MKL_INT* iloz,
                       const MKL_INT* ihiz, float* z, const MKL_INT* ldz, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall slaqr4_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, float* h,
                        const MKL_INT* ldh, float* wr, float* wi, const MKL_INT* iloz,
                        const MKL_INT* ihiz, float* z, const MKL_INT* ldz, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SLAQR5( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* kacc22,
                       const MKL_INT* n, const MKL_INT* ktop, const MKL_INT* kbot,
                       const MKL_INT* nshfts, float* sr, float* si, float* h,
                       const MKL_INT* ldh, const MKL_INT* iloz, const MKL_INT* ihiz,
                       float* z, const MKL_INT* ldz, float* v, const MKL_INT* ldv,
                       float* u, const MKL_INT* ldu, const MKL_INT* nv, float* wv,
                       const MKL_INT* ldwv, const MKL_INT* nh, float* wh,
                       const MKL_INT* ldwh );
void __stdcall SLAQR5_( const MKL_INT* wantt, const MKL_INT* wantz,
                        const MKL_INT* kacc22, const MKL_INT* n, const MKL_INT* ktop,
                        const MKL_INT* kbot, const MKL_INT* nshfts, float* sr, float* si,
                        float* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, float* z, const MKL_INT* ldz, float* v,
                        const MKL_INT* ldv, float* u, const MKL_INT* ldu,
                        const MKL_INT* nv, float* wv, const MKL_INT* ldwv,
                        const MKL_INT* nh, float* wh, const MKL_INT* ldwh );
void __stdcall slaqr5( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* kacc22,
                       const MKL_INT* n, const MKL_INT* ktop, const MKL_INT* kbot,
                       const MKL_INT* nshfts, float* sr, float* si, float* h,
                       const MKL_INT* ldh, const MKL_INT* iloz, const MKL_INT* ihiz,
                       float* z, const MKL_INT* ldz, float* v, const MKL_INT* ldv,
                       float* u, const MKL_INT* ldu, const MKL_INT* nv, float* wv,
                       const MKL_INT* ldwv, const MKL_INT* nh, float* wh,
                       const MKL_INT* ldwh );
void __stdcall slaqr5_( const MKL_INT* wantt, const MKL_INT* wantz,
                        const MKL_INT* kacc22, const MKL_INT* n, const MKL_INT* ktop,
                        const MKL_INT* kbot, const MKL_INT* nshfts, float* sr, float* si,
                        float* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, float* z, const MKL_INT* ldz, float* v,
                        const MKL_INT* ldv, float* u, const MKL_INT* ldu,
                        const MKL_INT* nv, float* wv, const MKL_INT* ldwv,
                        const MKL_INT* nh, float* wh, const MKL_INT* ldwh );

void __stdcall SLAQSB( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                       const MKL_INT* ldab, const float* s, const float* scond,
                       const float* amax, char* equed , int equed_len);
void __stdcall SLAQSB_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                        const MKL_INT* ldab, const float* s, const float* scond,
                        const float* amax, char* equed , int equed_len);
void __stdcall slaqsb( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                       const MKL_INT* ldab, const float* s, const float* scond,
                       const float* amax, char* equed , int equed_len);
void __stdcall slaqsb_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                        const MKL_INT* ldab, const float* s, const float* scond,
                        const float* amax, char* equed , int equed_len);

void __stdcall SLAQSP( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, const float* s,
                       const float* scond, const float* amax, char* equed , int equed_len);
void __stdcall SLAQSP_( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, const float* s,
                        const float* scond, const float* amax, char* equed , int equed_len);
void __stdcall slaqsp( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, const float* s,
                       const float* scond, const float* amax, char* equed , int equed_len);
void __stdcall slaqsp_( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, const float* s,
                        const float* scond, const float* amax, char* equed , int equed_len);

void __stdcall SLAQSY( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       const float* s, const float* scond, const float* amax,
                       char* equed , int equed_len);
void __stdcall SLAQSY_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        const float* s, const float* scond, const float* amax,
                        char* equed , int equed_len);
void __stdcall slaqsy( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       const float* s, const float* scond, const float* amax,
                       char* equed , int equed_len);
void __stdcall slaqsy_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        const float* s, const float* scond, const float* amax,
                        char* equed , int equed_len);

void __stdcall SLAQTR( const MKL_INT* ltran, const MKL_INT* lreal, const MKL_INT* n,
                       const float* t, const MKL_INT* ldt, const float* b,
                       const float* w, float* scale, float* x, float* work,
                       MKL_INT* info );
void __stdcall SLAQTR_( const MKL_INT* ltran, const MKL_INT* lreal, const MKL_INT* n,
                        const float* t, const MKL_INT* ldt, const float* b,
                        const float* w, float* scale, float* x, float* work,
                        MKL_INT* info );
void __stdcall slaqtr( const MKL_INT* ltran, const MKL_INT* lreal, const MKL_INT* n,
                       const float* t, const MKL_INT* ldt, const float* b,
                       const float* w, float* scale, float* x, float* work,
                       MKL_INT* info );
void __stdcall slaqtr_( const MKL_INT* ltran, const MKL_INT* lreal, const MKL_INT* n,
                        const float* t, const MKL_INT* ldt, const float* b,
                        const float* w, float* scale, float* x, float* work,
                        MKL_INT* info );

void __stdcall SLAR1V( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                       const float* lambda, const float* d, const float* l,
                       const float* ld, const float* lld, const float* pivmin,
                       const float* gaptol, float* z, const MKL_INT* wantnc,
                       MKL_INT* negcnt, float* ztz, float* mingma, MKL_INT* r,
                       MKL_INT* isuppz, float* nrminv, float* resid, float* rqcorr,
                       float* work );
void __stdcall SLAR1V_( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                        const float* lambda, const float* d, const float* l,
                        const float* ld, const float* lld, const float* pivmin,
                        const float* gaptol, float* z, const MKL_INT* wantnc,
                        MKL_INT* negcnt, float* ztz, float* mingma, MKL_INT* r,
                        MKL_INT* isuppz, float* nrminv, float* resid, float* rqcorr,
                        float* work );
void __stdcall slar1v( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                       const float* lambda, const float* d, const float* l,
                       const float* ld, const float* lld, const float* pivmin,
                       const float* gaptol, float* z, const MKL_INT* wantnc,
                       MKL_INT* negcnt, float* ztz, float* mingma, MKL_INT* r,
                       MKL_INT* isuppz, float* nrminv, float* resid, float* rqcorr,
                       float* work );
void __stdcall slar1v_( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                        const float* lambda, const float* d, const float* l,
                        const float* ld, const float* lld, const float* pivmin,
                        const float* gaptol, float* z, const MKL_INT* wantnc,
                        MKL_INT* negcnt, float* ztz, float* mingma, MKL_INT* r,
                        MKL_INT* isuppz, float* nrminv, float* resid, float* rqcorr,
                        float* work );

void __stdcall SLAR2V( const MKL_INT* n, float* x, float* y, float* z,
                       const MKL_INT* incx, const float* c, const float* s,
                       const MKL_INT* incc );
void __stdcall SLAR2V_( const MKL_INT* n, float* x, float* y, float* z,
                        const MKL_INT* incx, const float* c, const float* s,
                        const MKL_INT* incc );
void __stdcall slar2v( const MKL_INT* n, float* x, float* y, float* z,
                       const MKL_INT* incx, const float* c, const float* s,
                       const MKL_INT* incc );
void __stdcall slar2v_( const MKL_INT* n, float* x, float* y, float* z,
                        const MKL_INT* incx, const float* c, const float* s,
                        const MKL_INT* incc );

void __stdcall SLARFB( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const float* v, const MKL_INT* ldv,
                       const float* t, const MKL_INT* ldt, float* c, const MKL_INT* ldc,
                       float* work, const MKL_INT* ldwork );
void __stdcall SLARFB_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const float* v, const MKL_INT* ldv,
                        const float* t, const MKL_INT* ldt, float* c, const MKL_INT* ldc,
                        float* work, const MKL_INT* ldwork );
void __stdcall slarfb( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const float* v, const MKL_INT* ldv,
                       const float* t, const MKL_INT* ldt, float* c, const MKL_INT* ldc,
                       float* work, const MKL_INT* ldwork );
void __stdcall slarfb_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const float* v, const MKL_INT* ldv,
                        const float* t, const MKL_INT* ldt, float* c, const MKL_INT* ldc,
                        float* work, const MKL_INT* ldwork );

void __stdcall SLARF( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const float* v, const MKL_INT* incv, const float* tau, float* c,
                      const MKL_INT* ldc, float* work );
void __stdcall SLARF_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const float* v, const MKL_INT* incv, const float* tau, float* c,
                       const MKL_INT* ldc, float* work );
void __stdcall slarf( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const float* v, const MKL_INT* incv, const float* tau, float* c,
                      const MKL_INT* ldc, float* work );
void __stdcall slarf_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const float* v, const MKL_INT* incv, const float* tau, float* c,
                       const MKL_INT* ldc, float* work );

void __stdcall SLARFG( const MKL_INT* n, float* alpha, float* x, const MKL_INT* incx,
                       float* tau );
void __stdcall SLARFG_( const MKL_INT* n, float* alpha, float* x, const MKL_INT* incx,
                        float* tau );
void __stdcall slarfg( const MKL_INT* n, float* alpha, float* x, const MKL_INT* incx,
                       float* tau );
void __stdcall slarfg_( const MKL_INT* n, float* alpha, float* x, const MKL_INT* incx,
                        float* tau );

void __stdcall SLARFGP( const MKL_INT* n, float* alpha, float* x, const MKL_INT* incx,
                        float* tau );
void __stdcall SLARFGP_( const MKL_INT* n, float* alpha, float* x, const MKL_INT* incx,
                         float* tau );
void __stdcall slarfgp( const MKL_INT* n, float* alpha, float* x, const MKL_INT* incx,
                        float* tau );
void __stdcall slarfgp_( const MKL_INT* n, float* alpha, float* x, const MKL_INT* incx,
                         float* tau );

void __stdcall SLARFP( const MKL_INT* n, float* alpha, float* x, const MKL_INT* incx,
                       float* tau );
void __stdcall SLARFP_( const MKL_INT* n, float* alpha, float* x, const MKL_INT* incx,
                        float* tau );
void __stdcall slarfp( const MKL_INT* n, float* alpha, float* x, const MKL_INT* incx,
                       float* tau );
void __stdcall slarfp_( const MKL_INT* n, float* alpha, float* x, const MKL_INT* incx,
                        float* tau );

void __stdcall SLARFT( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, const float* v, const MKL_INT* ldv, const float* tau,
                       float* t, const MKL_INT* ldt );
void __stdcall SLARFT_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, const float* v, const MKL_INT* ldv, const float* tau,
                        float* t, const MKL_INT* ldt );
void __stdcall slarft( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, const float* v, const MKL_INT* ldv, const float* tau,
                       float* t, const MKL_INT* ldt );
void __stdcall slarft_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, const float* v, const MKL_INT* ldv, const float* tau,
                        float* t, const MKL_INT* ldt );

void __stdcall SLARFX( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const float* v, const float* tau, float* c, const MKL_INT* ldc,
                       float* work );
void __stdcall SLARFX_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const float* v, const float* tau, float* c, const MKL_INT* ldc,
                        float* work );
void __stdcall slarfx( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const float* v, const float* tau, float* c, const MKL_INT* ldc,
                       float* work );
void __stdcall slarfx_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const float* v, const float* tau, float* c, const MKL_INT* ldc,
                        float* work );

void __stdcall SLARGV( const MKL_INT* n, float* x, const MKL_INT* incx, float* y,
                       const MKL_INT* incy, float* c, const MKL_INT* incc );
void __stdcall SLARGV_( const MKL_INT* n, float* x, const MKL_INT* incx, float* y,
                        const MKL_INT* incy, float* c, const MKL_INT* incc );
void __stdcall slargv( const MKL_INT* n, float* x, const MKL_INT* incx, float* y,
                       const MKL_INT* incy, float* c, const MKL_INT* incc );
void __stdcall slargv_( const MKL_INT* n, float* x, const MKL_INT* incx, float* y,
                        const MKL_INT* incy, float* c, const MKL_INT* incc );

void __stdcall SLARNV( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                       float* x );
void __stdcall SLARNV_( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                        float* x );
void __stdcall slarnv( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                       float* x );
void __stdcall slarnv_( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                        float* x );

void __stdcall SLARRA( const MKL_INT* n, const float* d, float* e, float* e2,
                       const float* spltol, const float* tnrm, MKL_INT* nsplit,
                       MKL_INT* isplit, MKL_INT* info );
void __stdcall SLARRA_( const MKL_INT* n, const float* d, float* e, float* e2,
                        const float* spltol, const float* tnrm, MKL_INT* nsplit,
                        MKL_INT* isplit, MKL_INT* info );
void __stdcall slarra( const MKL_INT* n, const float* d, float* e, float* e2,
                       const float* spltol, const float* tnrm, MKL_INT* nsplit,
                       MKL_INT* isplit, MKL_INT* info );
void __stdcall slarra_( const MKL_INT* n, const float* d, float* e, float* e2,
                        const float* spltol, const float* tnrm, MKL_INT* nsplit,
                        MKL_INT* isplit, MKL_INT* info );

void __stdcall SLARRB( const MKL_INT* n, const float* d, const float* lld,
                       const MKL_INT* ifirst, const MKL_INT* ilast, const float* rtol1,
                       const float* rtol2, const MKL_INT* offset, float* w, float* wgap,
                       float* werr, float* work, MKL_INT* iwork, const float* pivmin,
                       const float* spdiam, const MKL_INT* twist, MKL_INT* info );
void __stdcall SLARRB_( const MKL_INT* n, const float* d, const float* lld,
                        const MKL_INT* ifirst, const MKL_INT* ilast, const float* rtol1,
                        const float* rtol2, const MKL_INT* offset, float* w, float* wgap,
                        float* werr, float* work, MKL_INT* iwork, const float* pivmin,
                        const float* spdiam, const MKL_INT* twist, MKL_INT* info );
void __stdcall slarrb( const MKL_INT* n, const float* d, const float* lld,
                       const MKL_INT* ifirst, const MKL_INT* ilast, const float* rtol1,
                       const float* rtol2, const MKL_INT* offset, float* w, float* wgap,
                       float* werr, float* work, MKL_INT* iwork, const float* pivmin,
                       const float* spdiam, const MKL_INT* twist, MKL_INT* info );
void __stdcall slarrb_( const MKL_INT* n, const float* d, const float* lld,
                        const MKL_INT* ifirst, const MKL_INT* ilast, const float* rtol1,
                        const float* rtol2, const MKL_INT* offset, float* w, float* wgap,
                        float* werr, float* work, MKL_INT* iwork, const float* pivmin,
                        const float* spdiam, const MKL_INT* twist, MKL_INT* info );

void __stdcall SLARRC( const char* jobt, int jobt_len, const MKL_INT* n, const float* vl,
                       const float* vu, const float* d, const float* e,
                       const float* pivmin, MKL_INT* eigcnt, MKL_INT* lcnt,
                       MKL_INT* rcnt, MKL_INT* info );
void __stdcall SLARRC_( const char* jobt, int jobt_len, const MKL_INT* n, const float* vl,
                        const float* vu, const float* d, const float* e,
                        const float* pivmin, MKL_INT* eigcnt, MKL_INT* lcnt,
                        MKL_INT* rcnt, MKL_INT* info );
void __stdcall slarrc( const char* jobt, int jobt_len, const MKL_INT* n, const float* vl,
                       const float* vu, const float* d, const float* e,
                       const float* pivmin, MKL_INT* eigcnt, MKL_INT* lcnt,
                       MKL_INT* rcnt, MKL_INT* info );
void __stdcall slarrc_( const char* jobt, int jobt_len, const MKL_INT* n, const float* vl,
                        const float* vu, const float* d, const float* e,
                        const float* pivmin, MKL_INT* eigcnt, MKL_INT* lcnt,
                        MKL_INT* rcnt, MKL_INT* info );

void __stdcall SLARRD( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* gers, const float* reltol,
                       const float* d, const float* e, const float* e2,
                       const float* pivmin, const MKL_INT* nsplit, const MKL_INT* isplit,
                       MKL_INT* m, float* w, float* werr, float* wl, float* wu,
                       MKL_INT* iblock, MKL_INT* indexw, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall SLARRD_( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* gers, const float* reltol,
                        const float* d, const float* e, const float* e2,
                        const float* pivmin, const MKL_INT* nsplit,
                        const MKL_INT* isplit, MKL_INT* m, float* w, float* werr,
                        float* wl, float* wu, MKL_INT* iblock, MKL_INT* indexw,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall slarrd( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* gers, const float* reltol,
                       const float* d, const float* e, const float* e2,
                       const float* pivmin, const MKL_INT* nsplit, const MKL_INT* isplit,
                       MKL_INT* m, float* w, float* werr, float* wl, float* wu,
                       MKL_INT* iblock, MKL_INT* indexw, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall slarrd_( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* gers, const float* reltol,
                        const float* d, const float* e, const float* e2,
                        const float* pivmin, const MKL_INT* nsplit,
                        const MKL_INT* isplit, MKL_INT* m, float* w, float* werr,
                        float* wl, float* wu, MKL_INT* iblock, MKL_INT* indexw,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SLARRE( const char* range, int range_len, const MKL_INT* n, float* vl, float* vu,
                       const MKL_INT* il, const MKL_INT* iu, float* d, float* e,
                       float* e2, const float* rtol1, const float* rtol2,
                       const float* spltol, MKL_INT* nsplit, MKL_INT* isplit, MKL_INT* m,
                       float* w, float* werr, float* wgap, MKL_INT* iblock,
                       MKL_INT* indexw, float* gers, float* pivmin, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall SLARRE_( const char* range, int range_len, const MKL_INT* n, float* vl, float* vu,
                        const MKL_INT* il, const MKL_INT* iu, float* d, float* e,
                        float* e2, const float* rtol1, const float* rtol2,
                        const float* spltol, MKL_INT* nsplit, MKL_INT* isplit,
                        MKL_INT* m, float* w, float* werr, float* wgap, MKL_INT* iblock,
                        MKL_INT* indexw, float* gers, float* pivmin, float* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall slarre( const char* range, int range_len, const MKL_INT* n, float* vl, float* vu,
                       const MKL_INT* il, const MKL_INT* iu, float* d, float* e,
                       float* e2, const float* rtol1, const float* rtol2,
                       const float* spltol, MKL_INT* nsplit, MKL_INT* isplit, MKL_INT* m,
                       float* w, float* werr, float* wgap, MKL_INT* iblock,
                       MKL_INT* indexw, float* gers, float* pivmin, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall slarre_( const char* range, int range_len, const MKL_INT* n, float* vl, float* vu,
                        const MKL_INT* il, const MKL_INT* iu, float* d, float* e,
                        float* e2, const float* rtol1, const float* rtol2,
                        const float* spltol, MKL_INT* nsplit, MKL_INT* isplit,
                        MKL_INT* m, float* w, float* werr, float* wgap, MKL_INT* iblock,
                        MKL_INT* indexw, float* gers, float* pivmin, float* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall SLARRF( const MKL_INT* n, const float* d, const float* l, const float* ld,
                       const MKL_INT* clstrt, const MKL_INT* clend, const float* w,
                       float* wgap, const float* werr, const float* spdiam,
                       const float* clgapl, float* clgapr, const float* pivmin,
                       float* sigma, float* dplus, float* lplus, float* work,
                       MKL_INT* info );
void __stdcall SLARRF_( const MKL_INT* n, const float* d, const float* l,
                        const float* ld, const MKL_INT* clstrt, const MKL_INT* clend,
                        const float* w, float* wgap, const float* werr,
                        const float* spdiam, const float* clgapl, float* clgapr,
                        const float* pivmin, float* sigma, float* dplus, float* lplus,
                        float* work, MKL_INT* info );
void __stdcall slarrf( const MKL_INT* n, const float* d, const float* l, const float* ld,
                       const MKL_INT* clstrt, const MKL_INT* clend, const float* w,
                       float* wgap, const float* werr, const float* spdiam,
                       const float* clgapl, float* clgapr, const float* pivmin,
                       float* sigma, float* dplus, float* lplus, float* work,
                       MKL_INT* info );
void __stdcall slarrf_( const MKL_INT* n, const float* d, const float* l,
                        const float* ld, const MKL_INT* clstrt, const MKL_INT* clend,
                        const float* w, float* wgap, const float* werr,
                        const float* spdiam, const float* clgapl, float* clgapr,
                        const float* pivmin, float* sigma, float* dplus, float* lplus,
                        float* work, MKL_INT* info );

void __stdcall SLARRJ( const MKL_INT* n, const float* d, const float* e2,
                       const MKL_INT* ifirst, const MKL_INT* ilast, const float* rtol,
                       const MKL_INT* offset, float* w, float* werr, float* work,
                       MKL_INT* iwork, const float* pivmin, const float* spdiam,
                       MKL_INT* info );
void __stdcall SLARRJ_( const MKL_INT* n, const float* d, const float* e2,
                        const MKL_INT* ifirst, const MKL_INT* ilast, const float* rtol,
                        const MKL_INT* offset, float* w, float* werr, float* work,
                        MKL_INT* iwork, const float* pivmin, const float* spdiam,
                        MKL_INT* info );
void __stdcall slarrj( const MKL_INT* n, const float* d, const float* e2,
                       const MKL_INT* ifirst, const MKL_INT* ilast, const float* rtol,
                       const MKL_INT* offset, float* w, float* werr, float* work,
                       MKL_INT* iwork, const float* pivmin, const float* spdiam,
                       MKL_INT* info );
void __stdcall slarrj_( const MKL_INT* n, const float* d, const float* e2,
                        const MKL_INT* ifirst, const MKL_INT* ilast, const float* rtol,
                        const MKL_INT* offset, float* w, float* werr, float* work,
                        MKL_INT* iwork, const float* pivmin, const float* spdiam,
                        MKL_INT* info );

void __stdcall SLARRK( const MKL_INT* n, const MKL_INT* iw, const float* gl,
                       const float* gu, const float* d, const float* e2,
                       const float* pivmin, const float* reltol, float* w, float* werr,
                       MKL_INT* info );
void __stdcall SLARRK_( const MKL_INT* n, const MKL_INT* iw, const float* gl,
                        const float* gu, const float* d, const float* e2,
                        const float* pivmin, const float* reltol, float* w, float* werr,
                        MKL_INT* info );
void __stdcall slarrk( const MKL_INT* n, const MKL_INT* iw, const float* gl,
                       const float* gu, const float* d, const float* e2,
                       const float* pivmin, const float* reltol, float* w, float* werr,
                       MKL_INT* info );
void __stdcall slarrk_( const MKL_INT* n, const MKL_INT* iw, const float* gl,
                        const float* gu, const float* d, const float* e2,
                        const float* pivmin, const float* reltol, float* w, float* werr,
                        MKL_INT* info );

void __stdcall SLARRR( const MKL_INT* n, const float* d, float* e, MKL_INT* info );
void __stdcall SLARRR_( const MKL_INT* n, const float* d, float* e, MKL_INT* info );
void __stdcall slarrr( const MKL_INT* n, const float* d, float* e, MKL_INT* info );
void __stdcall slarrr_( const MKL_INT* n, const float* d, float* e, MKL_INT* info );

void __stdcall SLARRV( const MKL_INT* n, const float* vl, const float* vu, float* d,
                       float* l, float* pivmin, const MKL_INT* isplit, const MKL_INT* m,
                       const MKL_INT* dol, const MKL_INT* dou, const float* minrgp,
                       const float* rtol1, const float* rtol2, float* w, float* werr,
                       float* wgap, const MKL_INT* iblock, const MKL_INT* indexw,
                       const float* gers, float* z, const MKL_INT* ldz, MKL_INT* isuppz,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SLARRV_( const MKL_INT* n, const float* vl, const float* vu, float* d,
                        float* l, float* pivmin, const MKL_INT* isplit, const MKL_INT* m,
                        const MKL_INT* dol, const MKL_INT* dou, const float* minrgp,
                        const float* rtol1, const float* rtol2, float* w, float* werr,
                        float* wgap, const MKL_INT* iblock, const MKL_INT* indexw,
                        const float* gers, float* z, const MKL_INT* ldz, MKL_INT* isuppz,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall slarrv( const MKL_INT* n, const float* vl, const float* vu, float* d,
                       float* l, float* pivmin, const MKL_INT* isplit, const MKL_INT* m,
                       const MKL_INT* dol, const MKL_INT* dou, const float* minrgp,
                       const float* rtol1, const float* rtol2, float* w, float* werr,
                       float* wgap, const MKL_INT* iblock, const MKL_INT* indexw,
                       const float* gers, float* z, const MKL_INT* ldz, MKL_INT* isuppz,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall slarrv_( const MKL_INT* n, const float* vl, const float* vu, float* d,
                        float* l, float* pivmin, const MKL_INT* isplit, const MKL_INT* m,
                        const MKL_INT* dol, const MKL_INT* dou, const float* minrgp,
                        const float* rtol1, const float* rtol2, float* w, float* werr,
                        float* wgap, const MKL_INT* iblock, const MKL_INT* indexw,
                        const float* gers, float* z, const MKL_INT* ldz, MKL_INT* isuppz,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SLARTG( const float* f, const float* g, float* cs, float* sn, float* r );
void __stdcall SLARTG_( const float* f, const float* g, float* cs, float* sn, float* r );
void __stdcall slartg( const float* f, const float* g, float* cs, float* sn, float* r );
void __stdcall slartg_( const float* f, const float* g, float* cs, float* sn, float* r );

void __stdcall SLARTV( const MKL_INT* n, float* x, const MKL_INT* incx, float* y,
                       const MKL_INT* incy, const float* c, const float* s,
                       const MKL_INT* incc );
void __stdcall SLARTV_( const MKL_INT* n, float* x, const MKL_INT* incx, float* y,
                        const MKL_INT* incy, const float* c, const float* s,
                        const MKL_INT* incc );
void __stdcall slartv( const MKL_INT* n, float* x, const MKL_INT* incx, float* y,
                       const MKL_INT* incy, const float* c, const float* s,
                       const MKL_INT* incc );
void __stdcall slartv_( const MKL_INT* n, float* x, const MKL_INT* incx, float* y,
                        const MKL_INT* incy, const float* c, const float* s,
                        const MKL_INT* incc );

void __stdcall SLARUV( MKL_INT* iseed, const MKL_INT* n, float* x );
void __stdcall SLARUV_( MKL_INT* iseed, const MKL_INT* n, float* x );
void __stdcall slaruv( MKL_INT* iseed, const MKL_INT* n, float* x );
void __stdcall slaruv_( MKL_INT* iseed, const MKL_INT* n, float* x );

void __stdcall SLARZB( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, const float* v,
                       const MKL_INT* ldv, const float* t, const MKL_INT* ldt, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* ldwork );
void __stdcall SLARZB_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const float* v,
                        const MKL_INT* ldv, const float* t, const MKL_INT* ldt, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* ldwork );
void __stdcall slarzb( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, const float* v,
                       const MKL_INT* ldv, const float* t, const MKL_INT* ldt, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* ldwork );
void __stdcall slarzb_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const float* v,
                        const MKL_INT* ldv, const float* t, const MKL_INT* ldt, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* ldwork );

void __stdcall SLARZ( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* l, const float* v, const MKL_INT* incv,
                      const float* tau, float* c, const MKL_INT* ldc, float* work );
void __stdcall SLARZ_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* l, const float* v, const MKL_INT* incv,
                       const float* tau, float* c, const MKL_INT* ldc, float* work );
void __stdcall slarz( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* l, const float* v, const MKL_INT* incv,
                      const float* tau, float* c, const MKL_INT* ldc, float* work );
void __stdcall slarz_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* l, const float* v, const MKL_INT* incv,
                       const float* tau, float* c, const MKL_INT* ldc, float* work );

void __stdcall SLARZT( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, float* v, const MKL_INT* ldv, const float* tau,
                       float* t, const MKL_INT* ldt );
void __stdcall SLARZT_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, float* v, const MKL_INT* ldv, const float* tau,
                        float* t, const MKL_INT* ldt );
void __stdcall slarzt( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, float* v, const MKL_INT* ldv, const float* tau,
                       float* t, const MKL_INT* ldt );
void __stdcall slarzt_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, float* v, const MKL_INT* ldv, const float* tau,
                        float* t, const MKL_INT* ldt );

void __stdcall SLAS2( const float* f, const float* g, const float* h, float* ssmin,
                      float* ssmax );
void __stdcall SLAS2_( const float* f, const float* g, const float* h, float* ssmin,
                       float* ssmax );
void __stdcall slas2( const float* f, const float* g, const float* h, float* ssmin,
                      float* ssmax );
void __stdcall slas2_( const float* f, const float* g, const float* h, float* ssmin,
                       float* ssmax );

void __stdcall SLASCL( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                       const float* cfrom, const float* cto, const MKL_INT* m,
                       const MKL_INT* n, float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall SLASCL_( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                        const float* cfrom, const float* cto, const MKL_INT* m,
                        const MKL_INT* n, float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall slascl( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                       const float* cfrom, const float* cto, const MKL_INT* m,
                       const MKL_INT* n, float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall slascl_( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                        const float* cfrom, const float* cto, const MKL_INT* m,
                        const MKL_INT* n, float* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall SLASD0( const MKL_INT* n, const MKL_INT* sqre, float* d, const float* e,
                       float* u, const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                       const MKL_INT* smlsiz, MKL_INT* iwork, float* work,
                       MKL_INT* info );
void __stdcall SLASD0_( const MKL_INT* n, const MKL_INT* sqre, float* d, const float* e,
                        float* u, const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                        const MKL_INT* smlsiz, MKL_INT* iwork, float* work,
                        MKL_INT* info );
void __stdcall slasd0( const MKL_INT* n, const MKL_INT* sqre, float* d, const float* e,
                       float* u, const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                       const MKL_INT* smlsiz, MKL_INT* iwork, float* work,
                       MKL_INT* info );
void __stdcall slasd0_( const MKL_INT* n, const MKL_INT* sqre, float* d, const float* e,
                        float* u, const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                        const MKL_INT* smlsiz, MKL_INT* iwork, float* work,
                        MKL_INT* info );

void __stdcall SLASD1( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                       float* d, float* alpha, float* beta, float* u, const MKL_INT* ldu,
                       float* vt, const MKL_INT* ldvt, MKL_INT* idxq, MKL_INT* iwork,
                       float* work, MKL_INT* info );
void __stdcall SLASD1_( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                        float* d, float* alpha, float* beta, float* u,
                        const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                        MKL_INT* idxq, MKL_INT* iwork, float* work, MKL_INT* info );
void __stdcall slasd1( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                       float* d, float* alpha, float* beta, float* u, const MKL_INT* ldu,
                       float* vt, const MKL_INT* ldvt, MKL_INT* idxq, MKL_INT* iwork,
                       float* work, MKL_INT* info );
void __stdcall slasd1_( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                        float* d, float* alpha, float* beta, float* u,
                        const MKL_INT* ldu, float* vt, const MKL_INT* ldvt,
                        MKL_INT* idxq, MKL_INT* iwork, float* work, MKL_INT* info );

void __stdcall SLASD2( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                       MKL_INT* k, float* d, float* z, const float* alpha,
                       const float* beta, float* u, const MKL_INT* ldu, float* vt,
                       const MKL_INT* ldvt, float* dsigma, float* u2,
                       const MKL_INT* ldu2, float* vt2, const MKL_INT* ldvt2,
                       MKL_INT* idxp, MKL_INT* idx, MKL_INT* idxc, MKL_INT* idxq,
                       MKL_INT* coltyp, MKL_INT* info );
void __stdcall SLASD2_( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                        MKL_INT* k, float* d, float* z, const float* alpha,
                        const float* beta, float* u, const MKL_INT* ldu, float* vt,
                        const MKL_INT* ldvt, float* dsigma, float* u2,
                        const MKL_INT* ldu2, float* vt2, const MKL_INT* ldvt2,
                        MKL_INT* idxp, MKL_INT* idx, MKL_INT* idxc, MKL_INT* idxq,
                        MKL_INT* coltyp, MKL_INT* info );
void __stdcall slasd2( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                       MKL_INT* k, float* d, float* z, const float* alpha,
                       const float* beta, float* u, const MKL_INT* ldu, float* vt,
                       const MKL_INT* ldvt, float* dsigma, float* u2,
                       const MKL_INT* ldu2, float* vt2, const MKL_INT* ldvt2,
                       MKL_INT* idxp, MKL_INT* idx, MKL_INT* idxc, MKL_INT* idxq,
                       MKL_INT* coltyp, MKL_INT* info );
void __stdcall slasd2_( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                        MKL_INT* k, float* d, float* z, const float* alpha,
                        const float* beta, float* u, const MKL_INT* ldu, float* vt,
                        const MKL_INT* ldvt, float* dsigma, float* u2,
                        const MKL_INT* ldu2, float* vt2, const MKL_INT* ldvt2,
                        MKL_INT* idxp, MKL_INT* idx, MKL_INT* idxc, MKL_INT* idxq,
                        MKL_INT* coltyp, MKL_INT* info );

void __stdcall SLASD3( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                       const MKL_INT* k, float* d, float* q, const MKL_INT* ldq,
                       float* dsigma, float* u, const MKL_INT* ldu, const float* u2,
                       const MKL_INT* ldu2, float* vt, const MKL_INT* ldvt, float* vt2,
                       const MKL_INT* ldvt2, const MKL_INT* idxc, const MKL_INT* ctot,
                       float* z, MKL_INT* info );
void __stdcall SLASD3_( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                        const MKL_INT* k, float* d, float* q, const MKL_INT* ldq,
                        float* dsigma, float* u, const MKL_INT* ldu, const float* u2,
                        const MKL_INT* ldu2, float* vt, const MKL_INT* ldvt, float* vt2,
                        const MKL_INT* ldvt2, const MKL_INT* idxc, const MKL_INT* ctot,
                        float* z, MKL_INT* info );
void __stdcall slasd3( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                       const MKL_INT* k, float* d, float* q, const MKL_INT* ldq,
                       float* dsigma, float* u, const MKL_INT* ldu, const float* u2,
                       const MKL_INT* ldu2, float* vt, const MKL_INT* ldvt, float* vt2,
                       const MKL_INT* ldvt2, const MKL_INT* idxc, const MKL_INT* ctot,
                       float* z, MKL_INT* info );
void __stdcall slasd3_( const MKL_INT* nl, const MKL_INT* nr, const MKL_INT* sqre,
                        const MKL_INT* k, float* d, float* q, const MKL_INT* ldq,
                        float* dsigma, float* u, const MKL_INT* ldu, const float* u2,
                        const MKL_INT* ldu2, float* vt, const MKL_INT* ldvt, float* vt2,
                        const MKL_INT* ldvt2, const MKL_INT* idxc, const MKL_INT* ctot,
                        float* z, MKL_INT* info );

void __stdcall SLASD4( const MKL_INT* n, const MKL_INT* i, const float* d,
                       const float* z, float* delta, const float* rho, float* sigma,
                       float* work, MKL_INT* info );
void __stdcall SLASD4_( const MKL_INT* n, const MKL_INT* i, const float* d,
                        const float* z, float* delta, const float* rho, float* sigma,
                        float* work, MKL_INT* info );
void __stdcall slasd4( const MKL_INT* n, const MKL_INT* i, const float* d,
                       const float* z, float* delta, const float* rho, float* sigma,
                       float* work, MKL_INT* info );
void __stdcall slasd4_( const MKL_INT* n, const MKL_INT* i, const float* d,
                        const float* z, float* delta, const float* rho, float* sigma,
                        float* work, MKL_INT* info );

void __stdcall SLASD5( const MKL_INT* i, const float* d, const float* z, float* delta,
                       const float* rho, float* dsigma, float* work );
void __stdcall SLASD5_( const MKL_INT* i, const float* d, const float* z, float* delta,
                        const float* rho, float* dsigma, float* work );
void __stdcall slasd5( const MKL_INT* i, const float* d, const float* z, float* delta,
                       const float* rho, float* dsigma, float* work );
void __stdcall slasd5_( const MKL_INT* i, const float* d, const float* z, float* delta,
                        const float* rho, float* dsigma, float* work );

void __stdcall SLASD6( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, float* d, float* vf, float* vl, float* alpha,
                       float* beta, MKL_INT* idxq, MKL_INT* perm, MKL_INT* givptr,
                       MKL_INT* givcol, const MKL_INT* ldgcol, float* givnum,
                       const MKL_INT* ldgnum, float* poles, float* difl, float* difr,
                       float* z, MKL_INT* k, float* c, float* s, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall SLASD6_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, float* d, float* vf, float* vl,
                        float* alpha, float* beta, MKL_INT* idxq, MKL_INT* perm,
                        MKL_INT* givptr, MKL_INT* givcol, const MKL_INT* ldgcol,
                        float* givnum, const MKL_INT* ldgnum, float* poles, float* difl,
                        float* difr, float* z, MKL_INT* k, float* c, float* s,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall slasd6( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, float* d, float* vf, float* vl, float* alpha,
                       float* beta, MKL_INT* idxq, MKL_INT* perm, MKL_INT* givptr,
                       MKL_INT* givcol, const MKL_INT* ldgcol, float* givnum,
                       const MKL_INT* ldgnum, float* poles, float* difl, float* difr,
                       float* z, MKL_INT* k, float* c, float* s, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall slasd6_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, float* d, float* vf, float* vl,
                        float* alpha, float* beta, MKL_INT* idxq, MKL_INT* perm,
                        MKL_INT* givptr, MKL_INT* givcol, const MKL_INT* ldgcol,
                        float* givnum, const MKL_INT* ldgnum, float* poles, float* difl,
                        float* difr, float* z, MKL_INT* k, float* c, float* s,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SLASD7( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, MKL_INT* k, float* d, float* z, float* zw,
                       float* vf, float* vfw, float* vl, float* vlw, const float* alpha,
                       const float* beta, float* dsigma, MKL_INT* idx, MKL_INT* idxp,
                       const MKL_INT* idxq, MKL_INT* perm, MKL_INT* givptr,
                       MKL_INT* givcol, const MKL_INT* ldgcol, float* givnum,
                       const MKL_INT* ldgnum, float* c, float* s, MKL_INT* info );
void __stdcall SLASD7_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, MKL_INT* k, float* d, float* z, float* zw,
                        float* vf, float* vfw, float* vl, float* vlw, const float* alpha,
                        const float* beta, float* dsigma, MKL_INT* idx, MKL_INT* idxp,
                        const MKL_INT* idxq, MKL_INT* perm, MKL_INT* givptr,
                        MKL_INT* givcol, const MKL_INT* ldgcol, float* givnum,
                        const MKL_INT* ldgnum, float* c, float* s, MKL_INT* info );
void __stdcall slasd7( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, MKL_INT* k, float* d, float* z, float* zw,
                       float* vf, float* vfw, float* vl, float* vlw, const float* alpha,
                       const float* beta, float* dsigma, MKL_INT* idx, MKL_INT* idxp,
                       const MKL_INT* idxq, MKL_INT* perm, MKL_INT* givptr,
                       MKL_INT* givcol, const MKL_INT* ldgcol, float* givnum,
                       const MKL_INT* ldgnum, float* c, float* s, MKL_INT* info );
void __stdcall slasd7_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, MKL_INT* k, float* d, float* z, float* zw,
                        float* vf, float* vfw, float* vl, float* vlw, const float* alpha,
                        const float* beta, float* dsigma, MKL_INT* idx, MKL_INT* idxp,
                        const MKL_INT* idxq, MKL_INT* perm, MKL_INT* givptr,
                        MKL_INT* givcol, const MKL_INT* ldgcol, float* givnum,
                        const MKL_INT* ldgnum, float* c, float* s, MKL_INT* info );

void __stdcall SLASD8( const MKL_INT* icompq, const MKL_INT* k, float* d, float* z,
                       float* vf, float* vl, float* difl, float* difr,
                       const MKL_INT* lddifr, float* dsigma, float* work,
                       MKL_INT* info );
void __stdcall SLASD8_( const MKL_INT* icompq, const MKL_INT* k, float* d, float* z,
                        float* vf, float* vl, float* difl, float* difr,
                        const MKL_INT* lddifr, float* dsigma, float* work,
                        MKL_INT* info );
void __stdcall slasd8( const MKL_INT* icompq, const MKL_INT* k, float* d, float* z,
                       float* vf, float* vl, float* difl, float* difr,
                       const MKL_INT* lddifr, float* dsigma, float* work,
                       MKL_INT* info );
void __stdcall slasd8_( const MKL_INT* icompq, const MKL_INT* k, float* d, float* z,
                        float* vf, float* vl, float* difl, float* difr,
                        const MKL_INT* lddifr, float* dsigma, float* work,
                        MKL_INT* info );

void __stdcall SLASDA( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* sqre, float* d, const float* e, float* u,
                       const MKL_INT* ldu, float* vt, MKL_INT* k, float* difl,
                       float* difr, float* z, float* poles, MKL_INT* givptr,
                       MKL_INT* givcol, const MKL_INT* ldgcol, MKL_INT* perm,
                       float* givnum, float* c, float* s, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall SLASDA_( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* sqre, float* d, const float* e, float* u,
                        const MKL_INT* ldu, float* vt, MKL_INT* k, float* difl,
                        float* difr, float* z, float* poles, MKL_INT* givptr,
                        MKL_INT* givcol, const MKL_INT* ldgcol, MKL_INT* perm,
                        float* givnum, float* c, float* s, float* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall slasda( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* sqre, float* d, const float* e, float* u,
                       const MKL_INT* ldu, float* vt, MKL_INT* k, float* difl,
                       float* difr, float* z, float* poles, MKL_INT* givptr,
                       MKL_INT* givcol, const MKL_INT* ldgcol, MKL_INT* perm,
                       float* givnum, float* c, float* s, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall slasda_( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* sqre, float* d, const float* e, float* u,
                        const MKL_INT* ldu, float* vt, MKL_INT* k, float* difl,
                        float* difr, float* z, float* poles, MKL_INT* givptr,
                        MKL_INT* givcol, const MKL_INT* ldgcol, MKL_INT* perm,
                        float* givnum, float* c, float* s, float* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall SLASDQ( const char* uplo, int uplo_len, const MKL_INT* sqre, const MKL_INT* n,
                       const MKL_INT* ncvt, const MKL_INT* nru, const MKL_INT* ncc,
                       float* d, float* e, float* vt, const MKL_INT* ldvt, float* u,
                       const MKL_INT* ldu, float* c, const MKL_INT* ldc, float* work,
                       MKL_INT* info );
void __stdcall SLASDQ_( const char* uplo, int uplo_len, const MKL_INT* sqre, const MKL_INT* n,
                        const MKL_INT* ncvt, const MKL_INT* nru, const MKL_INT* ncc,
                        float* d, float* e, float* vt, const MKL_INT* ldvt, float* u,
                        const MKL_INT* ldu, float* c, const MKL_INT* ldc, float* work,
                        MKL_INT* info );
void __stdcall slasdq( const char* uplo, int uplo_len, const MKL_INT* sqre, const MKL_INT* n,
                       const MKL_INT* ncvt, const MKL_INT* nru, const MKL_INT* ncc,
                       float* d, float* e, float* vt, const MKL_INT* ldvt, float* u,
                       const MKL_INT* ldu, float* c, const MKL_INT* ldc, float* work,
                       MKL_INT* info );
void __stdcall slasdq_( const char* uplo, int uplo_len, const MKL_INT* sqre, const MKL_INT* n,
                        const MKL_INT* ncvt, const MKL_INT* nru, const MKL_INT* ncc,
                        float* d, float* e, float* vt, const MKL_INT* ldvt, float* u,
                        const MKL_INT* ldu, float* c, const MKL_INT* ldc, float* work,
                        MKL_INT* info );

void __stdcall SLASDT( const MKL_INT* n, MKL_INT* lvl, MKL_INT* nd, MKL_INT* inode,
                       MKL_INT* ndiml, MKL_INT* ndimr, const MKL_INT* msub );
void __stdcall SLASDT_( const MKL_INT* n, MKL_INT* lvl, MKL_INT* nd, MKL_INT* inode,
                        MKL_INT* ndiml, MKL_INT* ndimr, const MKL_INT* msub );
void __stdcall slasdt( const MKL_INT* n, MKL_INT* lvl, MKL_INT* nd, MKL_INT* inode,
                       MKL_INT* ndiml, MKL_INT* ndimr, const MKL_INT* msub );
void __stdcall slasdt_( const MKL_INT* n, MKL_INT* lvl, MKL_INT* nd, MKL_INT* inode,
                        MKL_INT* ndiml, MKL_INT* ndimr, const MKL_INT* msub );

void __stdcall SLASET( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const float* alpha, const float* beta, float* a,
                       const MKL_INT* lda );
void __stdcall SLASET_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const float* alpha, const float* beta, float* a,
                        const MKL_INT* lda );
void __stdcall slaset( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const float* alpha, const float* beta, float* a,
                       const MKL_INT* lda );
void __stdcall slaset_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const float* alpha, const float* beta, float* a,
                        const MKL_INT* lda );

void __stdcall SLASQ1( const MKL_INT* n, float* d, float* e, float* work,
                       MKL_INT* info );
void __stdcall SLASQ1_( const MKL_INT* n, float* d, float* e, float* work,
                        MKL_INT* info );
void __stdcall slasq1( const MKL_INT* n, float* d, float* e, float* work,
                       MKL_INT* info );
void __stdcall slasq1_( const MKL_INT* n, float* d, float* e, float* work,
                        MKL_INT* info );

void __stdcall SLASQ2( const MKL_INT* n, float* z, MKL_INT* info );
void __stdcall SLASQ2_( const MKL_INT* n, float* z, MKL_INT* info );
void __stdcall slasq2( const MKL_INT* n, float* z, MKL_INT* info );
void __stdcall slasq2_( const MKL_INT* n, float* z, MKL_INT* info );

void __stdcall SLASQ3( const MKL_INT* i0, const MKL_INT* n0, const float* z, MKL_INT* pp,
                       float* dmin, float* sigma, float* desig, const float* qmax,
                       MKL_INT* nfail, MKL_INT* iter, MKL_INT* ndiv, const MKL_INT* ieee,
                       MKL_INT* ttype, float* dmin1, float* dmin2, float* dn, float* dn1,
                       float* dn2, float* g, float* tau );
void __stdcall SLASQ3_( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                        MKL_INT* pp, float* dmin, float* sigma, float* desig,
                        const float* qmax, MKL_INT* nfail, MKL_INT* iter, MKL_INT* ndiv,
                        const MKL_INT* ieee, MKL_INT* ttype, float* dmin1, float* dmin2,
                        float* dn, float* dn1, float* dn2, float* g, float* tau );
void __stdcall slasq3( const MKL_INT* i0, const MKL_INT* n0, const float* z, MKL_INT* pp,
                       float* dmin, float* sigma, float* desig, const float* qmax,
                       MKL_INT* nfail, MKL_INT* iter, MKL_INT* ndiv, const MKL_INT* ieee,
                       MKL_INT* ttype, float* dmin1, float* dmin2, float* dn, float* dn1,
                       float* dn2, float* g, float* tau );
void __stdcall slasq3_( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                        MKL_INT* pp, float* dmin, float* sigma, float* desig,
                        const float* qmax, MKL_INT* nfail, MKL_INT* iter, MKL_INT* ndiv,
                        const MKL_INT* ieee, MKL_INT* ttype, float* dmin1, float* dmin2,
                        float* dn, float* dn1, float* dn2, float* g, float* tau );

void __stdcall SLASQ4( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                       const MKL_INT* pp, MKL_INT* n0in, const float* dmin,
                       const float* dmin1, const float* dmin2, const float* dn,
                       const float* dn1, const float* dn2, float* tau, MKL_INT* ttype,
                       float* g );
void __stdcall SLASQ4_( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                        const MKL_INT* pp, MKL_INT* n0in, const float* dmin,
                        const float* dmin1, const float* dmin2, const float* dn,
                        const float* dn1, const float* dn2, float* tau, MKL_INT* ttype,
                        float* g );
void __stdcall slasq4( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                       const MKL_INT* pp, MKL_INT* n0in, const float* dmin,
                       const float* dmin1, const float* dmin2, const float* dn,
                       const float* dn1, const float* dn2, float* tau, MKL_INT* ttype,
                       float* g );
void __stdcall slasq4_( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                        const MKL_INT* pp, MKL_INT* n0in, const float* dmin,
                        const float* dmin1, const float* dmin2, const float* dn,
                        const float* dn1, const float* dn2, float* tau, MKL_INT* ttype,
                        float* g );

void __stdcall SLASQ5( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                       const MKL_INT* pp, const float* tau, const float* sigma,
                       float* dmin, float* dmin1, float* dmin2, float* dn,
                       float* dnm1, float* dnm2, const MKL_INT* ieee,
                       const float* eps );
void __stdcall SLASQ5_( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                        const MKL_INT* pp, const float* tau, const float* sigma,
                        float* dmin, float* dmin1, float* dmin2, float* dn,
                        float* dnm1, float* dnm2, const MKL_INT* ieee,
                        const float* eps );
void __stdcall slasq5( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                       const MKL_INT* pp, const float* tau, const float* sigma,
                       float* dmin, float* dmin1, float* dmin2, float* dn,
                       float* dnm1, float* dnm2, const MKL_INT* ieee,
                       const float* eps );
void __stdcall slasq5_( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                        const MKL_INT* pp, const float* tau, const float* sigma,
                        float* dmin, float* dmin1, float* dmin2, float* dn,
                        float* dnm1, float* dnm2, const MKL_INT* ieee,
                        const float* eps );


void __stdcall SLASQ6( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                       const MKL_INT* pp, float* dmin, float* dmin1, float* dmin2,
                       float* dn, float* dnm1, float* dnm2 );
void __stdcall SLASQ6_( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                        const MKL_INT* pp, float* dmin, float* dmin1, float* dmin2,
                        float* dn, float* dnm1, float* dnm2 );
void __stdcall slasq6( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                       const MKL_INT* pp, float* dmin, float* dmin1, float* dmin2,
                       float* dn, float* dnm1, float* dnm2 );
void __stdcall slasq6_( const MKL_INT* i0, const MKL_INT* n0, const float* z,
                        const MKL_INT* pp, float* dmin, float* dmin1, float* dmin2,
                        float* dn, float* dnm1, float* dnm2 );

void __stdcall SLASR( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                      const MKL_INT* m, const MKL_INT* n, const float* c, const float* s,
                      float* a, const MKL_INT* lda );
void __stdcall SLASR_( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                       const MKL_INT* m, const MKL_INT* n, const float* c,
                       const float* s, float* a, const MKL_INT* lda );
void __stdcall slasr( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                      const MKL_INT* m, const MKL_INT* n, const float* c, const float* s,
                      float* a, const MKL_INT* lda );
void __stdcall slasr_( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                       const MKL_INT* m, const MKL_INT* n, const float* c,
                       const float* s, float* a, const MKL_INT* lda );

void __stdcall SLASRT( const char* id, int id_len, const MKL_INT* n, float* d, MKL_INT* info );
void __stdcall SLASRT_( const char* id, int id_len, const MKL_INT* n, float* d, MKL_INT* info );
void __stdcall slasrt( const char* id, int id_len, const MKL_INT* n, float* d, MKL_INT* info );
void __stdcall slasrt_( const char* id, int id_len, const MKL_INT* n, float* d, MKL_INT* info );

void __stdcall SLASSQ( const MKL_INT* n, const float* x, const MKL_INT* incx,
                       float* scale, float* sumsq );
void __stdcall SLASSQ_( const MKL_INT* n, const float* x, const MKL_INT* incx,
                        float* scale, float* sumsq );
void __stdcall slassq( const MKL_INT* n, const float* x, const MKL_INT* incx,
                       float* scale, float* sumsq );
void __stdcall slassq_( const MKL_INT* n, const float* x, const MKL_INT* incx,
                        float* scale, float* sumsq );

void __stdcall SLASV2( const float* f, const float* g, const float* h, float* ssmin,
                       float* ssmax, float* snr, float* csr, float* snl, float* csl );
void __stdcall SLASV2_( const float* f, const float* g, const float* h, float* ssmin,
                        float* ssmax, float* snr, float* csr, float* snl, float* csl );
void __stdcall slasv2( const float* f, const float* g, const float* h, float* ssmin,
                       float* ssmax, float* snr, float* csr, float* snl, float* csl );
void __stdcall slasv2_( const float* f, const float* g, const float* h, float* ssmin,
                        float* ssmax, float* snr, float* csr, float* snl, float* csl );

void __stdcall SLASWP( const MKL_INT* n, float* a, const MKL_INT* lda, const MKL_INT* k1,
                       const MKL_INT* k2, const MKL_INT* ipiv, const MKL_INT* incx );
void __stdcall SLASWP_( const MKL_INT* n, float* a, const MKL_INT* lda,
                        const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                        const MKL_INT* incx );
void __stdcall slaswp( const MKL_INT* n, float* a, const MKL_INT* lda, const MKL_INT* k1,
                       const MKL_INT* k2, const MKL_INT* ipiv, const MKL_INT* incx );
void __stdcall slaswp_( const MKL_INT* n, float* a, const MKL_INT* lda,
                        const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                        const MKL_INT* incx );

void __stdcall SLASY2( const MKL_INT* ltranl, const MKL_INT* ltranr, const MKL_INT* isgn,
                       const MKL_INT* n1, const MKL_INT* n2, const float* tl,
                       const MKL_INT* ldtl, const float* tr, const MKL_INT* ldtr,
                       const float* b, const MKL_INT* ldb, float* scale, float* x,
                       const MKL_INT* ldx, float* xnorm, MKL_INT* info );
void __stdcall SLASY2_( const MKL_INT* ltranl, const MKL_INT* ltranr,
                        const MKL_INT* isgn, const MKL_INT* n1, const MKL_INT* n2,
                        const float* tl, const MKL_INT* ldtl, const float* tr,
                        const MKL_INT* ldtr, const float* b, const MKL_INT* ldb,
                        float* scale, float* x, const MKL_INT* ldx, float* xnorm,
                        MKL_INT* info );
void __stdcall slasy2( const MKL_INT* ltranl, const MKL_INT* ltranr, const MKL_INT* isgn,
                       const MKL_INT* n1, const MKL_INT* n2, const float* tl,
                       const MKL_INT* ldtl, const float* tr, const MKL_INT* ldtr,
                       const float* b, const MKL_INT* ldb, float* scale, float* x,
                       const MKL_INT* ldx, float* xnorm, MKL_INT* info );
void __stdcall slasy2_( const MKL_INT* ltranl, const MKL_INT* ltranr,
                        const MKL_INT* isgn, const MKL_INT* n1, const MKL_INT* n2,
                        const float* tl, const MKL_INT* ldtl, const float* tr,
                        const MKL_INT* ldtr, const float* b, const MKL_INT* ldb,
                        float* scale, float* x, const MKL_INT* ldx, float* xnorm,
                        MKL_INT* info );

void __stdcall SLASYF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_INT* kb, float* a, const MKL_INT* lda, MKL_INT* ipiv,
                       float* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall SLASYF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_INT* kb, float* a, const MKL_INT* lda, MKL_INT* ipiv,
                        float* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall slasyf( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_INT* kb, float* a, const MKL_INT* lda, MKL_INT* ipiv,
                       float* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall slasyf_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_INT* kb, float* a, const MKL_INT* lda, MKL_INT* ipiv,
                        float* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall SLATBS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                       const float* ab, const MKL_INT* ldab, float* x, float* scale,
                       float* cnorm, MKL_INT* info );
void __stdcall SLATBS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                        const float* ab, const MKL_INT* ldab, float* x, float* scale,
                        float* cnorm, MKL_INT* info );
void __stdcall slatbs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                       const float* ab, const MKL_INT* ldab, float* x, float* scale,
                       float* cnorm, MKL_INT* info );
void __stdcall slatbs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                        const float* ab, const MKL_INT* ldab, float* x, float* scale,
                        float* cnorm, MKL_INT* info );

void __stdcall SLATDF( const MKL_INT* ijob, const MKL_INT* n, const float* z,
                       const MKL_INT* ldz, float* rhs, float* rdsum, float* rdscal,
                       const MKL_INT* ipiv, const MKL_INT* jpiv );
void __stdcall SLATDF_( const MKL_INT* ijob, const MKL_INT* n, const float* z,
                        const MKL_INT* ldz, float* rhs, float* rdsum, float* rdscal,
                        const MKL_INT* ipiv, const MKL_INT* jpiv );
void __stdcall slatdf( const MKL_INT* ijob, const MKL_INT* n, const float* z,
                       const MKL_INT* ldz, float* rhs, float* rdsum, float* rdscal,
                       const MKL_INT* ipiv, const MKL_INT* jpiv );
void __stdcall slatdf_( const MKL_INT* ijob, const MKL_INT* n, const float* z,
                        const MKL_INT* ldz, float* rhs, float* rdsum, float* rdscal,
                        const MKL_INT* ipiv, const MKL_INT* jpiv );

void __stdcall SLATPS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const float* ap, float* x,
                       float* scale, float* cnorm, MKL_INT* info );
void __stdcall SLATPS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const float* ap, float* x,
                        float* scale, float* cnorm, MKL_INT* info );
void __stdcall slatps( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const float* ap, float* x,
                       float* scale, float* cnorm, MKL_INT* info );
void __stdcall slatps_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const float* ap, float* x,
                        float* scale, float* cnorm, MKL_INT* info );

void __stdcall SLATRD( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb, float* a,
                       const MKL_INT* lda, float* e, float* tau, float* w,
                       const MKL_INT* ldw );
void __stdcall SLATRD_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb, float* a,
                        const MKL_INT* lda, float* e, float* tau, float* w,
                        const MKL_INT* ldw );
void __stdcall slatrd( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb, float* a,
                       const MKL_INT* lda, float* e, float* tau, float* w,
                       const MKL_INT* ldw );
void __stdcall slatrd_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb, float* a,
                        const MKL_INT* lda, float* e, float* tau, float* w,
                        const MKL_INT* ldw );

void __stdcall SLATRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, float* x, float* scale, float* cnorm,
                       MKL_INT* info );
void __stdcall SLATRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, float* x, float* scale, float* cnorm,
                        MKL_INT* info );
void __stdcall slatrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, float* x, float* scale, float* cnorm,
                       MKL_INT* info );
void __stdcall slatrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, float* x, float* scale, float* cnorm,
                        MKL_INT* info );

void __stdcall SLATRZ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, float* a,
                       const MKL_INT* lda, float* tau, float* work );
void __stdcall SLATRZ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, float* a,
                        const MKL_INT* lda, float* tau, float* work );
void __stdcall slatrz( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, float* a,
                       const MKL_INT* lda, float* tau, float* work );
void __stdcall slatrz_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l, float* a,
                        const MKL_INT* lda, float* tau, float* work );

void __stdcall SLATZM( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const float* v, const MKL_INT* incv, const float* tau, float* c1,
                       float* c2, const MKL_INT* ldc, float* work );
void __stdcall SLATZM_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const float* v, const MKL_INT* incv, const float* tau, float* c1,
                        float* c2, const MKL_INT* ldc, float* work );
void __stdcall slatzm( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const float* v, const MKL_INT* incv, const float* tau, float* c1,
                       float* c2, const MKL_INT* ldc, float* work );
void __stdcall slatzm_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const float* v, const MKL_INT* incv, const float* tau, float* c1,
                        float* c2, const MKL_INT* ldc, float* work );

void __stdcall SLAUU2( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall SLAUU2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* info );
void __stdcall slauu2( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall slauu2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* info );

void __stdcall SLAUUM( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall SLAUUM_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* info );
void __stdcall slauum( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall slauum_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* info );

void __stdcall SOPGTR( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap,
                       const float* tau, float* q, const MKL_INT* ldq, float* work,
                       MKL_INT* info );
void __stdcall SOPGTR_( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap,
                        const float* tau, float* q, const MKL_INT* ldq, float* work,
                        MKL_INT* info );
void __stdcall sopgtr( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap,
                       const float* tau, float* q, const MKL_INT* ldq, float* work,
                       MKL_INT* info );
void __stdcall sopgtr_( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap,
                        const float* tau, float* q, const MKL_INT* ldq, float* work,
                        MKL_INT* info );

void __stdcall SOPMTR( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const float* ap,
                       const float* tau, float* c, const MKL_INT* ldc, float* work,
                       MKL_INT* info );
void __stdcall SOPMTR_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const float* ap,
                        const float* tau, float* c, const MKL_INT* ldc, float* work,
                        MKL_INT* info );
void __stdcall sopmtr( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const float* ap,
                       const float* tau, float* c, const MKL_INT* ldc, float* work,
                       MKL_INT* info );
void __stdcall sopmtr_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const float* ap,
                        const float* tau, float* c, const MKL_INT* ldc, float* work,
                        MKL_INT* info );

void __stdcall SORG2L( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       MKL_INT* info );
void __stdcall SORG2L_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        MKL_INT* info );
void __stdcall sorg2l( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       MKL_INT* info );
void __stdcall sorg2l_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        MKL_INT* info );

void __stdcall SORG2R( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       MKL_INT* info );
void __stdcall SORG2R_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        MKL_INT* info );
void __stdcall sorg2r( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       MKL_INT* info );
void __stdcall sorg2r_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        MKL_INT* info );

void __stdcall SORGBR( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, float* a, const MKL_INT* lda, const float* tau,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SORGBR_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, float* a, const MKL_INT* lda, const float* tau,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorgbr( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, float* a, const MKL_INT* lda, const float* tau,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorgbr_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, float* a, const MKL_INT* lda, const float* tau,
                        float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SORGHR( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       float* a, const MKL_INT* lda, const float* tau, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall SORGHR_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        float* a, const MKL_INT* lda, const float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorghr( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       float* a, const MKL_INT* lda, const float* tau, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorghr_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        float* a, const MKL_INT* lda, const float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SORGL2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       MKL_INT* info );
void __stdcall SORGL2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        MKL_INT* info );
void __stdcall sorgl2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       MKL_INT* info );
void __stdcall sorgl2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        MKL_INT* info );

void __stdcall SORGLQ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall SORGLQ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorglq( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorglq_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SORGQL( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall SORGQL_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorgql( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorgql_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SORGQR( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall SORGQR_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorgqr( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorgqr_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SORGR2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       MKL_INT* info );
void __stdcall SORGR2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        MKL_INT* info );
void __stdcall sorgr2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       MKL_INT* info );
void __stdcall sorgr2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        MKL_INT* info );

void __stdcall SORGRQ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall SORGRQ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorgrq( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                       const MKL_INT* lda, const float* tau, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall sorgrq_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k, float* a,
                        const MKL_INT* lda, const float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SORGTR( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       const float* tau, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SORGTR_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        const float* tau, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sorgtr( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       const float* tau, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sorgtr_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        const float* tau, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SORM2L( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall SORM2L_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sorm2l( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sorm2l_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, MKL_INT* info );

void __stdcall SORM2R( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall SORM2R_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sorm2r( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sorm2r_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, MKL_INT* info );

void __stdcall SORMBR( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       const float* a, const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SORMBR_( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        const float* a, const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sormbr( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       const float* a, const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sormbr_( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        const float* a, const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SORMHR( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       const float* a, const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SORMHR_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        const float* a, const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sormhr( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       const float* a, const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sormhr_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        const float* a, const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SORML2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall SORML2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sorml2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sorml2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, MKL_INT* info );

void __stdcall SORMLQ( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SORMLQ_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sormlq( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sormlq_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SORMQL( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SORMQL_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sormql( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sormql_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SORMQR( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SORMQR_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sormqr( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sormqr_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SORMR2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall SORMR2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sormr2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sormr2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, MKL_INT* info );

void __stdcall SORMR3( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const float* a, const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall SORMR3_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const float* a, const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sormr3( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const float* a, const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, MKL_INT* info );
void __stdcall sormr3_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const float* a, const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, MKL_INT* info );

void __stdcall SORMRQ( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SORMRQ_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sormrq( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sormrq_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SORMRZ( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const float* a, const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SORMRZ_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const float* a, const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sormrz( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const float* a, const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sormrz_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const float* a, const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SORMTR( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SORMTR_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall sormtr( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const float* tau, float* c,
                       const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall sormtr_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const float* tau, float* c,
                        const MKL_INT* ldc, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SPBCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const float* ab, const MKL_INT* ldab, const float* anorm,
                       float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SPBCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const float* ab, const MKL_INT* ldab, const float* anorm,
                        float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall spbcon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const float* ab, const MKL_INT* ldab, const float* anorm,
                       float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall spbcon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const float* ab, const MKL_INT* ldab, const float* anorm,
                        float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SPBEQU( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const float* ab, const MKL_INT* ldab, float* s, float* scond,
                       float* amax, MKL_INT* info );
void __stdcall SPBEQU_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const float* ab, const MKL_INT* ldab, float* s, float* scond,
                        float* amax, MKL_INT* info );
void __stdcall spbequ( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const float* ab, const MKL_INT* ldab, float* s, float* scond,
                       float* amax, MKL_INT* info );
void __stdcall spbequ_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const float* ab, const MKL_INT* ldab, float* s, float* scond,
                        float* amax, MKL_INT* info );

void __stdcall SPBRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const float* ab, const MKL_INT* ldab,
                       const float* afb, const MKL_INT* ldafb, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                       float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SPBRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const float* ab, const MKL_INT* ldab,
                        const float* afb, const MKL_INT* ldafb, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                        float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall spbrfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const float* ab, const MKL_INT* ldab,
                       const float* afb, const MKL_INT* ldafb, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                       float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall spbrfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const float* ab, const MKL_INT* ldab,
                        const float* afb, const MKL_INT* ldafb, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                        float* berr, float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SPBSTF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                       const MKL_INT* ldab, MKL_INT* info );
void __stdcall SPBSTF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                        const MKL_INT* ldab, MKL_INT* info );
void __stdcall spbstf( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                       const MKL_INT* ldab, MKL_INT* info );
void __stdcall spbstf_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                        const MKL_INT* ldab, MKL_INT* info );

void __stdcall SPBSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                      const MKL_INT* nrhs, float* ab, const MKL_INT* ldab, float* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall SPBSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, float* ab, const MKL_INT* ldab, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall spbsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                      const MKL_INT* nrhs, float* ab, const MKL_INT* ldab, float* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall spbsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, float* ab, const MKL_INT* ldab, float* b,
                       const MKL_INT* ldb, MKL_INT* info );

void __stdcall SPBSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, const MKL_INT* nrhs, float* ab,
                       const MKL_INT* ldab, float* afb, const MKL_INT* ldafb,
                       char* equed, int equed_len, float* s, float* b, const MKL_INT* ldb, float* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SPBSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, const MKL_INT* nrhs, float* ab,
                        const MKL_INT* ldab, float* afb, const MKL_INT* ldafb,
                        char* equed, int equed_len, float* s, float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall spbsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, const MKL_INT* nrhs, float* ab,
                       const MKL_INT* ldab, float* afb, const MKL_INT* ldafb,
                       char* equed, int equed_len, float* s, float* b, const MKL_INT* ldb, float* x,
                       const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall spbsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, const MKL_INT* nrhs, float* ab,
                        const MKL_INT* ldab, float* afb, const MKL_INT* ldafb,
                        char* equed, int equed_len, float* s, float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SPBTF2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                       const MKL_INT* ldab, MKL_INT* info );
void __stdcall SPBTF2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                        const MKL_INT* ldab, MKL_INT* info );
void __stdcall spbtf2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                       const MKL_INT* ldab, MKL_INT* info );
void __stdcall spbtf2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                        const MKL_INT* ldab, MKL_INT* info );

void __stdcall SPBTRF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                       const MKL_INT* ldab, MKL_INT* info );
void __stdcall SPBTRF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                        const MKL_INT* ldab, MKL_INT* info );
void __stdcall spbtrf( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                       const MKL_INT* ldab, MKL_INT* info );
void __stdcall spbtrf_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd, float* ab,
                        const MKL_INT* ldab, MKL_INT* info );

void __stdcall SPBTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const float* ab, const MKL_INT* ldab,
                       float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall SPBTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const float* ab, const MKL_INT* ldab,
                        float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall spbtrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const float* ab, const MKL_INT* ldab,
                       float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall spbtrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const float* ab, const MKL_INT* ldab,
                        float* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall SPFTRF( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                       MKL_INT* info );
void __stdcall SPFTRF_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                        MKL_INT* info );
void __stdcall spftrf( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                       MKL_INT* info );
void __stdcall spftrf_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                        MKL_INT* info );

void __stdcall SPFTRI( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                       MKL_INT* info );
void __stdcall SPFTRI_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                        MKL_INT* info );
void __stdcall spftri( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                       MKL_INT* info );
void __stdcall spftri_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                        MKL_INT* info );

void __stdcall SPFTRS( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const float* a, float* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall SPFTRS_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* a, float* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall spftrs( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const float* a, float* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall spftrs_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* a, float* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall SPOCON( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const float* anorm, float* rcond, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall SPOCON_( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const float* anorm, float* rcond,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall spocon( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const float* anorm, float* rcond, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall spocon_( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const float* anorm, float* rcond,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SPOEQUB( const MKL_INT* n, const float* a, const MKL_INT* lda, float* s,
                        float* scond, float* amax, MKL_INT* info );
void __stdcall SPOEQUB_( const MKL_INT* n, const float* a, const MKL_INT* lda, float* s,
                         float* scond, float* amax, MKL_INT* info );
void __stdcall spoequb( const MKL_INT* n, const float* a, const MKL_INT* lda, float* s,
                        float* scond, float* amax, MKL_INT* info );
void __stdcall spoequb_( const MKL_INT* n, const float* a, const MKL_INT* lda, float* s,
                         float* scond, float* amax, MKL_INT* info );

void __stdcall SPOEQU( const MKL_INT* n, const float* a, const MKL_INT* lda, float* s,
                       float* scond, float* amax, MKL_INT* info );
void __stdcall SPOEQU_( const MKL_INT* n, const float* a, const MKL_INT* lda, float* s,
                        float* scond, float* amax, MKL_INT* info );
void __stdcall spoequ( const MKL_INT* n, const float* a, const MKL_INT* lda, float* s,
                       float* scond, float* amax, MKL_INT* info );
void __stdcall spoequ_( const MKL_INT* n, const float* a, const MKL_INT* lda, float* s,
                        float* scond, float* amax, MKL_INT* info );

void __stdcall SPORFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, const float* af,
                       const MKL_INT* ldaf, const float* b, const MKL_INT* ldb, float* x,
                       const MKL_INT* ldx, float* ferr, float* berr, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall SPORFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, const float* af,
                        const MKL_INT* ldaf, const float* b, const MKL_INT* ldb,
                        float* x, const MKL_INT* ldx, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sporfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, const float* af,
                       const MKL_INT* ldaf, const float* b, const MKL_INT* ldb, float* x,
                       const MKL_INT* ldx, float* ferr, float* berr, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall sporfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, const float* af,
                        const MKL_INT* ldaf, const float* b, const MKL_INT* ldb,
                        float* x, const MKL_INT* ldx, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SPORFSX( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                        const float* af, const MKL_INT* ldaf, const float* s,
                        const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                        float* rcond, float* berr, const MKL_INT* n_err_bnds,
                        float* err_bnds_norm, float* err_bnds_comp,
                        const MKL_INT* nparams, float* params, float* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall SPORFSX_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                         const float* af, const MKL_INT* ldaf, const float* s,
                         const float* b, const MKL_INT* ldb, float* x,
                         const MKL_INT* ldx, float* rcond, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sporfsx( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                        const float* af, const MKL_INT* ldaf, const float* s,
                        const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                        float* rcond, float* berr, const MKL_INT* n_err_bnds,
                        float* err_bnds_norm, float* err_bnds_comp,
                        const MKL_INT* nparams, float* params, float* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall sporfsx_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                         const float* af, const MKL_INT* ldaf, const float* s,
                         const float* b, const MKL_INT* ldb, float* x,
                         const MKL_INT* ldx, float* rcond, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SPOSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                      const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall SPOSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sposv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                      const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sposv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall SPOSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                       const MKL_INT* ldaf, char* equed, int equed_len, float* s, float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                       float* ferr, float* berr, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall SPOSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                        const MKL_INT* ldaf, char* equed, int equed_len, float* s, float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                        float* ferr, float* berr, float* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall sposvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                       const MKL_INT* ldaf, char* equed, int equed_len, float* s, float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                       float* ferr, float* berr, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall sposvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                        const MKL_INT* ldaf, char* equed, int equed_len, float* s, float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                        float* ferr, float* berr, float* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall SPOSVXX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                        const MKL_INT* ldaf, char* equed, int equed_len, float* s, float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                        float* rpvgrw, float* berr, const MKL_INT* n_err_bnds,
                        float* err_bnds_norm, float* err_bnds_comp,
                        const MKL_INT* nparams, float* params, float* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall SPOSVXX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                         const MKL_INT* ldaf, char* equed, int equed_len, float* s, float* b,
                         const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                         float* rpvgrw, float* berr, const MKL_INT* n_err_bnds,
                         float* err_bnds_norm, float* err_bnds_comp,
                         const MKL_INT* nparams, float* params, float* work,
                         MKL_INT* iwork, MKL_INT* info );
void __stdcall sposvxx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                        const MKL_INT* ldaf, char* equed, int equed_len, float* s, float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                        float* rpvgrw, float* berr, const MKL_INT* n_err_bnds,
                        float* err_bnds_norm, float* err_bnds_comp,
                        const MKL_INT* nparams, float* params, float* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall sposvxx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                         const MKL_INT* ldaf, char* equed, int equed_len, float* s, float* b,
                         const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                         float* rpvgrw, float* berr, const MKL_INT* n_err_bnds,
                         float* err_bnds_norm, float* err_bnds_comp,
                         const MKL_INT* nparams, float* params, float* work,
                         MKL_INT* iwork, MKL_INT* info );

void __stdcall SPOTF2( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall SPOTF2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* info );
void __stdcall spotf2( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall spotf2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* info );

void __stdcall SPOTRF( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall SPOTRF_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* info );
void __stdcall spotrf( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall spotrf_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* info );

void __stdcall SPOTRI( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall SPOTRI_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* info );
void __stdcall spotri( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall spotri_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* info );

void __stdcall SPOTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall SPOTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall spotrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall spotrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        MKL_INT* info );

void __stdcall SPPCON( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap,
                       const float* anorm, float* rcond, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall SPPCON_( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap,
                        const float* anorm, float* rcond, float* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall sppcon( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap,
                       const float* anorm, float* rcond, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall sppcon_( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap,
                        const float* anorm, float* rcond, float* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall SPPEQU( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap, float* s,
                       float* scond, float* amax, MKL_INT* info );
void __stdcall SPPEQU_( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap, float* s,
                        float* scond, float* amax, MKL_INT* info );
void __stdcall sppequ( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap, float* s,
                       float* scond, float* amax, MKL_INT* info );
void __stdcall sppequ_( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap, float* s,
                        float* scond, float* amax, MKL_INT* info );

void __stdcall SPPRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* ap, const float* afp, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                       float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SPPRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* ap, const float* afp, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                        float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall spprfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* ap, const float* afp, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                       float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall spprfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* ap, const float* afp, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                        float* berr, float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SPPSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* ap,
                      float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall SPPSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       float* ap, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sppsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* ap,
                      float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sppsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       float* ap, float* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall SPPSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, float* ap, float* afp, char* equed, int equed_len, float* s,
                       float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                       float* rcond, float* ferr, float* berr, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall SPPSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, float* ap, float* afp, char* equed, int equed_len,
                        float* s, float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sppsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, float* ap, float* afp, char* equed, int equed_len, float* s,
                       float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                       float* rcond, float* ferr, float* berr, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall sppsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, float* ap, float* afp, char* equed, int equed_len,
                        float* s, float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SPPTRF( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, MKL_INT* info );
void __stdcall SPPTRF_( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, MKL_INT* info );
void __stdcall spptrf( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, MKL_INT* info );
void __stdcall spptrf_( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, MKL_INT* info );

void __stdcall SPPTRI( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, MKL_INT* info );
void __stdcall SPPTRI_( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, MKL_INT* info );
void __stdcall spptri( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, MKL_INT* info );
void __stdcall spptri_( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, MKL_INT* info );

void __stdcall SPPTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* ap, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall SPPTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* ap, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall spptrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* ap, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall spptrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* ap, float* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall SPSTF2( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* piv, MKL_INT* rank, const float* tol, float* work,
                       MKL_INT* info );
void __stdcall SPSTF2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* piv, MKL_INT* rank, const float* tol, float* work,
                        MKL_INT* info );
void __stdcall spstf2( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* piv, MKL_INT* rank, const float* tol, float* work,
                       MKL_INT* info );
void __stdcall spstf2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* piv, MKL_INT* rank, const float* tol, float* work,
                        MKL_INT* info );

void __stdcall SPSTRF( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* piv, MKL_INT* rank, const float* tol, float* work,
                       MKL_INT* info );
void __stdcall SPSTRF_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* piv, MKL_INT* rank, const float* tol, float* work,
                        MKL_INT* info );
void __stdcall spstrf( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* piv, MKL_INT* rank, const float* tol, float* work,
                       MKL_INT* info );
void __stdcall spstrf_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* piv, MKL_INT* rank, const float* tol, float* work,
                        MKL_INT* info );

void __stdcall SPTCON( const MKL_INT* n, const float* d, const float* e,
                       const float* anorm, float* rcond, float* work, MKL_INT* info );
void __stdcall SPTCON_( const MKL_INT* n, const float* d, const float* e,
                        const float* anorm, float* rcond, float* work, MKL_INT* info );
void __stdcall sptcon( const MKL_INT* n, const float* d, const float* e,
                       const float* anorm, float* rcond, float* work, MKL_INT* info );
void __stdcall sptcon_( const MKL_INT* n, const float* d, const float* e,
                        const float* anorm, float* rcond, float* work, MKL_INT* info );

void __stdcall SPTEQR( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e, float* z,
                       const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall SPTEQR_( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                        float* z, const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall spteqr( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e, float* z,
                       const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall spteqr_( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                        float* z, const MKL_INT* ldz, float* work, MKL_INT* info );

void __stdcall SPTRFS( const MKL_INT* n, const MKL_INT* nrhs, const float* d,
                       const float* e, const float* df, const float* ef, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                       float* berr, float* work, MKL_INT* info );
void __stdcall SPTRFS_( const MKL_INT* n, const MKL_INT* nrhs, const float* d,
                        const float* e, const float* df, const float* ef, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                        float* berr, float* work, MKL_INT* info );
void __stdcall sptrfs( const MKL_INT* n, const MKL_INT* nrhs, const float* d,
                       const float* e, const float* df, const float* ef, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                       float* berr, float* work, MKL_INT* info );
void __stdcall sptrfs_( const MKL_INT* n, const MKL_INT* nrhs, const float* d,
                        const float* e, const float* df, const float* ef, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                        float* berr, float* work, MKL_INT* info );

void __stdcall SPTSV( const MKL_INT* n, const MKL_INT* nrhs, float* d, float* e,
                      float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall SPTSV_( const MKL_INT* n, const MKL_INT* nrhs, float* d, float* e,
                       float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sptsv( const MKL_INT* n, const MKL_INT* nrhs, float* d, float* e,
                      float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sptsv_( const MKL_INT* n, const MKL_INT* nrhs, float* d, float* e,
                       float* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall SPTSVX( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* d, const float* e, float* df, float* ef,
                       const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                       float* rcond, float* ferr, float* berr, float* work,
                       MKL_INT* info );
void __stdcall SPTSVX_( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* d, const float* e, float* df, float* ef,
                        const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                        float* rcond, float* ferr, float* berr, float* work,
                        MKL_INT* info );
void __stdcall sptsvx( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* d, const float* e, float* df, float* ef,
                       const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                       float* rcond, float* ferr, float* berr, float* work,
                       MKL_INT* info );
void __stdcall sptsvx_( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* d, const float* e, float* df, float* ef,
                        const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                        float* rcond, float* ferr, float* berr, float* work,
                        MKL_INT* info );

void __stdcall SPTTRF( const MKL_INT* n, float* d, float* e, MKL_INT* info );
void __stdcall SPTTRF_( const MKL_INT* n, float* d, float* e, MKL_INT* info );
void __stdcall spttrf( const MKL_INT* n, float* d, float* e, MKL_INT* info );
void __stdcall spttrf_( const MKL_INT* n, float* d, float* e, MKL_INT* info );

void __stdcall SPTTRS( const MKL_INT* n, const MKL_INT* nrhs, const float* d,
                       const float* e, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall SPTTRS_( const MKL_INT* n, const MKL_INT* nrhs, const float* d,
                        const float* e, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall spttrs( const MKL_INT* n, const MKL_INT* nrhs, const float* d,
                       const float* e, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall spttrs_( const MKL_INT* n, const MKL_INT* nrhs, const float* d,
                        const float* e, float* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall SPTTS2( const MKL_INT* n, const MKL_INT* nrhs, const float* d,
                       const float* e, float* b, const MKL_INT* ldb );
void __stdcall SPTTS2_( const MKL_INT* n, const MKL_INT* nrhs, const float* d,
                        const float* e, float* b, const MKL_INT* ldb );
void __stdcall sptts2( const MKL_INT* n, const MKL_INT* nrhs, const float* d,
                       const float* e, float* b, const MKL_INT* ldb );
void __stdcall sptts2_( const MKL_INT* n, const MKL_INT* nrhs, const float* d,
                        const float* e, float* b, const MKL_INT* ldb );

void __stdcall SRSCL( const MKL_INT* n, const float* sa, float* sx,
                      const MKL_INT* incx );
void __stdcall SRSCL_( const MKL_INT* n, const float* sa, float* sx,
                       const MKL_INT* incx );
void __stdcall srscl( const MKL_INT* n, const float* sa, float* sx,
                      const MKL_INT* incx );
void __stdcall srscl_( const MKL_INT* n, const float* sa, float* sx,
                       const MKL_INT* incx );

void __stdcall SSBEVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, float* ab, const MKL_INT* ldab, float* w,
                       float* z, const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall SSBEVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, float* ab, const MKL_INT* ldab, float* w,
                        float* z, const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall ssbevd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, float* ab, const MKL_INT* ldab, float* w,
                       float* z, const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall ssbevd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, float* ab, const MKL_INT* ldab, float* w,
                        float* z, const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall SSBEV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* kd, float* ab, const MKL_INT* ldab, float* w,
                      float* z, const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall SSBEV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, float* ab, const MKL_INT* ldab, float* w,
                       float* z, const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall ssbev( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* kd, float* ab, const MKL_INT* ldab, float* w,
                      float* z, const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall ssbev_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, float* ab, const MKL_INT* ldab, float* w,
                       float* z, const MKL_INT* ldz, float* work, MKL_INT* info );

void __stdcall SSBEVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* kd, float* ab,
                       const MKL_INT* ldab, float* q, const MKL_INT* ldq,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       float* z, const MKL_INT* ldz, float* work, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall SSBEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* kd, float* ab,
                        const MKL_INT* ldab, float* q, const MKL_INT* ldq,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        float* z, const MKL_INT* ldz, float* work, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );
void __stdcall ssbevx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* kd, float* ab,
                       const MKL_INT* ldab, float* q, const MKL_INT* ldq,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       float* z, const MKL_INT* ldz, float* work, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall ssbevx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* kd, float* ab,
                        const MKL_INT* ldab, float* q, const MKL_INT* ldq,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        float* z, const MKL_INT* ldz, float* work, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );

void __stdcall SSBGST( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, float* ab,
                       const MKL_INT* ldab, const float* bb, const MKL_INT* ldbb,
                       float* x, const MKL_INT* ldx, float* work, MKL_INT* info );
void __stdcall SSBGST_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, float* ab,
                        const MKL_INT* ldab, const float* bb, const MKL_INT* ldbb,
                        float* x, const MKL_INT* ldx, float* work, MKL_INT* info );
void __stdcall ssbgst( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, float* ab,
                       const MKL_INT* ldab, const float* bb, const MKL_INT* ldbb,
                       float* x, const MKL_INT* ldx, float* work, MKL_INT* info );
void __stdcall ssbgst_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, float* ab,
                        const MKL_INT* ldab, const float* bb, const MKL_INT* ldbb,
                        float* x, const MKL_INT* ldx, float* work, MKL_INT* info );

void __stdcall SSBGVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, float* ab,
                       const MKL_INT* ldab, float* bb, const MKL_INT* ldbb, float* w,
                       float* z, const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall SSBGVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, float* ab,
                        const MKL_INT* ldab, float* bb, const MKL_INT* ldbb, float* w,
                        float* z, const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall ssbgvd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, float* ab,
                       const MKL_INT* ldab, float* bb, const MKL_INT* ldbb, float* w,
                       float* z, const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall ssbgvd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, float* ab,
                        const MKL_INT* ldab, float* bb, const MKL_INT* ldbb, float* w,
                        float* z, const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall SSBGV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* ka, const MKL_INT* kb, float* ab,
                      const MKL_INT* ldab, float* bb, const MKL_INT* ldbb, float* w,
                      float* z, const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall SSBGV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, float* ab,
                       const MKL_INT* ldab, float* bb, const MKL_INT* ldbb, float* w,
                       float* z, const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall ssbgv( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* ka, const MKL_INT* kb, float* ab,
                      const MKL_INT* ldab, float* bb, const MKL_INT* ldbb, float* w,
                      float* z, const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall ssbgv_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, float* ab,
                       const MKL_INT* ldab, float* bb, const MKL_INT* ldbb, float* w,
                       float* z, const MKL_INT* ldz, float* work, MKL_INT* info );

void __stdcall SSBGVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb, float* ab,
                       const MKL_INT* ldab, float* bb, const MKL_INT* ldbb, float* q,
                       const MKL_INT* ldq, const float* vl, const float* vu,
                       const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                       MKL_INT* m, float* w, float* z, const MKL_INT* ldz, float* work,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall SSBGVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                        float* ab, const MKL_INT* ldab, float* bb, const MKL_INT* ldbb,
                        float* q, const MKL_INT* ldq, const float* vl, const float* vu,
                        const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                        MKL_INT* m, float* w, float* z, const MKL_INT* ldz, float* work,
                        MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall ssbgvx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb, float* ab,
                       const MKL_INT* ldab, float* bb, const MKL_INT* ldbb, float* q,
                       const MKL_INT* ldq, const float* vl, const float* vu,
                       const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                       MKL_INT* m, float* w, float* z, const MKL_INT* ldz, float* work,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall ssbgvx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                        float* ab, const MKL_INT* ldab, float* bb, const MKL_INT* ldbb,
                        float* q, const MKL_INT* ldq, const float* vl, const float* vu,
                        const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                        MKL_INT* m, float* w, float* z, const MKL_INT* ldz, float* work,
                        MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall SSBTRD( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, float* ab, const MKL_INT* ldab, float* d,
                       float* e, float* q, const MKL_INT* ldq, float* work,
                       MKL_INT* info );
void __stdcall SSBTRD_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, float* ab, const MKL_INT* ldab, float* d,
                        float* e, float* q, const MKL_INT* ldq, float* work,
                        MKL_INT* info );
void __stdcall ssbtrd( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, float* ab, const MKL_INT* ldab, float* d,
                       float* e, float* q, const MKL_INT* ldq, float* work,
                       MKL_INT* info );
void __stdcall ssbtrd_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, float* ab, const MKL_INT* ldab, float* d,
                        float* e, float* q, const MKL_INT* ldq, float* work,
                        MKL_INT* info );

void __stdcall SSFRK( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                      const MKL_INT* n, const MKL_INT* k, const float* alpha,
                      const float* a, const MKL_INT* lda, const float* beta, float* c );
void __stdcall SSFRK_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* n, const MKL_INT* k, const float* alpha,
                       const float* a, const MKL_INT* lda, const float* beta, float* c );
void __stdcall ssfrk( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                      const MKL_INT* n, const MKL_INT* k, const float* alpha,
                      const float* a, const MKL_INT* lda, const float* beta, float* c );
void __stdcall ssfrk_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* n, const MKL_INT* k, const float* alpha,
                       const float* a, const MKL_INT* lda, const float* beta, float* c );

void __stdcall SSPCON( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap,
                       const MKL_INT* ipiv, const float* anorm, float* rcond,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SSPCON_( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap,
                        const MKL_INT* ipiv, const float* anorm, float* rcond,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sspcon( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap,
                       const MKL_INT* ipiv, const float* anorm, float* rcond,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall sspcon_( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap,
                        const MKL_INT* ipiv, const float* anorm, float* rcond,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SSPEVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* ap,
                       float* w, float* z, const MKL_INT* ldz, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall SSPEVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* ap,
                        float* w, float* z, const MKL_INT* ldz, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall sspevd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* ap,
                       float* w, float* z, const MKL_INT* ldz, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall sspevd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* ap,
                        float* w, float* z, const MKL_INT* ldz, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall SSPEV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* ap,
                      float* w, float* z, const MKL_INT* ldz, float* work,
                      MKL_INT* info );
void __stdcall SSPEV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* ap,
                       float* w, float* z, const MKL_INT* ldz, float* work,
                       MKL_INT* info );
void __stdcall sspev( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* ap,
                      float* w, float* z, const MKL_INT* ldz, float* work,
                      MKL_INT* info );
void __stdcall sspev_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* ap,
                       float* w, float* z, const MKL_INT* ldz, float* work,
                       MKL_INT* info );

void __stdcall SSPEVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* ap, const float* vl, const float* vu,
                       const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                       MKL_INT* m, float* w, float* z, const MKL_INT* ldz, float* work,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall SSPEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, float* ap, const float* vl, const float* vu,
                        const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                        MKL_INT* m, float* w, float* z, const MKL_INT* ldz, float* work,
                        MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall sspevx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* ap, const float* vl, const float* vu,
                       const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                       MKL_INT* m, float* w, float* z, const MKL_INT* ldz, float* work,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall sspevx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, float* ap, const float* vl, const float* vu,
                        const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                        MKL_INT* m, float* w, float* z, const MKL_INT* ldz, float* work,
                        MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall SSPGST( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       float* ap, const float* bp, MKL_INT* info );
void __stdcall SSPGST_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        float* ap, const float* bp, MKL_INT* info );
void __stdcall sspgst( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       float* ap, const float* bp, MKL_INT* info );
void __stdcall sspgst_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        float* ap, const float* bp, MKL_INT* info );

void __stdcall SSPGVD( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* ap, float* bp, float* w, float* z,
                       const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall SSPGVD_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, float* ap, float* bp, float* w, float* z,
                        const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall sspgvd( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* ap, float* bp, float* w, float* z,
                       const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall sspgvd_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, float* ap, float* bp, float* w, float* z,
                        const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall SSPGV( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, float* ap, float* bp, float* w, float* z,
                      const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall SSPGV_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* ap, float* bp, float* w, float* z,
                       const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall sspgv( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, float* ap, float* bp, float* w, float* z,
                      const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall sspgv_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* ap, float* bp, float* w, float* z,
                       const MKL_INT* ldz, float* work, MKL_INT* info );

void __stdcall SSPGVX( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, float* ap, float* bp,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       float* z, const MKL_INT* ldz, float* work, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall SSPGVX_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, float* ap, float* bp,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        float* z, const MKL_INT* ldz, float* work, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );
void __stdcall sspgvx( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, float* ap, float* bp,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       float* z, const MKL_INT* ldz, float* work, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall sspgvx_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, float* ap, float* bp,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        float* z, const MKL_INT* ldz, float* work, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );

void __stdcall SSPRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* ap, const float* afp, const MKL_INT* ipiv,
                       const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                       float* ferr, float* berr, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall SSPRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* ap, const float* afp, const MKL_INT* ipiv,
                        const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                        float* ferr, float* berr, float* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall ssprfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* ap, const float* afp, const MKL_INT* ipiv,
                       const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                       float* ferr, float* berr, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall ssprfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* ap, const float* afp, const MKL_INT* ipiv,
                        const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                        float* ferr, float* berr, float* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall SSPSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* ap,
                      MKL_INT* ipiv, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall SSPSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       float* ap, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall sspsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* ap,
                      MKL_INT* ipiv, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sspsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       float* ap, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                       MKL_INT* info );

void __stdcall SSPSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const float* ap, float* afp, MKL_INT* ipiv,
                       const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                       float* rcond, float* ferr, float* berr, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall SSPSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* ap, float* afp, MKL_INT* ipiv,
                        const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                        float* rcond, float* ferr, float* berr, float* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall sspsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const float* ap, float* afp, MKL_INT* ipiv,
                       const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                       float* rcond, float* ferr, float* berr, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall sspsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* ap, float* afp, MKL_INT* ipiv,
                        const float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                        float* rcond, float* ferr, float* berr, float* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall SSPTRD( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, float* d, float* e,
                       float* tau, MKL_INT* info );
void __stdcall SSPTRD_( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, float* d,
                        float* e, float* tau, MKL_INT* info );
void __stdcall ssptrd( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, float* d, float* e,
                       float* tau, MKL_INT* info );
void __stdcall ssptrd_( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, float* d,
                        float* e, float* tau, MKL_INT* info );

void __stdcall SSPTRF( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall SSPTRF_( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, MKL_INT* ipiv,
                        MKL_INT* info );
void __stdcall ssptrf( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall ssptrf_( const char* uplo, int uplo_len, const MKL_INT* n, float* ap, MKL_INT* ipiv,
                        MKL_INT* info );

void __stdcall SSPTRI( const char* uplo, int uplo_len, const MKL_INT* n, float* ap,
                       const MKL_INT* ipiv, float* work, MKL_INT* info );
void __stdcall SSPTRI_( const char* uplo, int uplo_len, const MKL_INT* n, float* ap,
                        const MKL_INT* ipiv, float* work, MKL_INT* info );
void __stdcall ssptri( const char* uplo, int uplo_len, const MKL_INT* n, float* ap,
                       const MKL_INT* ipiv, float* work, MKL_INT* info );
void __stdcall ssptri_( const char* uplo, int uplo_len, const MKL_INT* n, float* ap,
                        const MKL_INT* ipiv, float* work, MKL_INT* info );

void __stdcall SSPTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* ap, const MKL_INT* ipiv, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall SSPTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* ap, const MKL_INT* ipiv, float* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall ssptrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* ap, const MKL_INT* ipiv, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ssptrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* ap, const MKL_INT* ipiv, float* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall SSTEBZ( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, const float* d,
                       const float* e, MKL_INT* m, MKL_INT* nsplit, float* w,
                       MKL_INT* iblock, MKL_INT* isplit, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall SSTEBZ_( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, const float* d,
                        const float* e, MKL_INT* m, MKL_INT* nsplit, float* w,
                        MKL_INT* iblock, MKL_INT* isplit, float* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall sstebz( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                       const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, const float* d,
                       const float* e, MKL_INT* m, MKL_INT* nsplit, float* w,
                       MKL_INT* iblock, MKL_INT* isplit, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall sstebz_( const char* range, int range_len, const char* order, int order_len, const MKL_INT* n,
                        const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, const float* d,
                        const float* e, MKL_INT* m, MKL_INT* nsplit, float* w,
                        MKL_INT* iblock, MKL_INT* isplit, float* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall SSTEDC( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e, float* z,
                       const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall SSTEDC_( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                        float* z, const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall sstedc( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e, float* z,
                       const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall sstedc_( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                        float* z, const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall SSTEGR( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                       float* e, const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       float* z, const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall SSTEGR_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                        float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        float* z, const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall sstegr( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                       float* e, const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       float* z, const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall sstegr_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                        float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        float* z, const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall SSTEIN( const MKL_INT* n, const float* d, const float* e,
                       const MKL_INT* m, const float* w, const MKL_INT* iblock,
                       const MKL_INT* isplit, float* z, const MKL_INT* ldz, float* work,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall SSTEIN_( const MKL_INT* n, const float* d, const float* e,
                        const MKL_INT* m, const float* w, const MKL_INT* iblock,
                        const MKL_INT* isplit, float* z, const MKL_INT* ldz, float* work,
                        MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall sstein( const MKL_INT* n, const float* d, const float* e,
                       const MKL_INT* m, const float* w, const MKL_INT* iblock,
                       const MKL_INT* isplit, float* z, const MKL_INT* ldz, float* work,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall sstein_( const MKL_INT* n, const float* d, const float* e,
                        const MKL_INT* m, const float* w, const MKL_INT* iblock,
                        const MKL_INT* isplit, float* z, const MKL_INT* ldz, float* work,
                        MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall SSTEMR( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                       float* e, const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, MKL_INT* m, float* w, float* z,
                       const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                       MKL_INT* tryrac, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall SSTEMR_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                        float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, MKL_INT* m, float* w, float* z,
                        const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                        MKL_INT* tryrac, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall sstemr( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                       float* e, const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, MKL_INT* m, float* w, float* z,
                       const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                       MKL_INT* tryrac, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall sstemr_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                        float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, MKL_INT* m, float* w, float* z,
                        const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                        MKL_INT* tryrac, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall SSTEQR( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e, float* z,
                       const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall SSTEQR_( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                        float* z, const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall ssteqr( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e, float* z,
                       const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall ssteqr_( const char* compz, int compz_len, const MKL_INT* n, float* d, float* e,
                        float* z, const MKL_INT* ldz, float* work, MKL_INT* info );

void __stdcall SSTERF( const MKL_INT* n, float* d, float* e, MKL_INT* info );
void __stdcall SSTERF_( const MKL_INT* n, float* d, float* e, MKL_INT* info );
void __stdcall ssterf( const MKL_INT* n, float* d, float* e, MKL_INT* info );
void __stdcall ssterf_( const MKL_INT* n, float* d, float* e, MKL_INT* info );

void __stdcall SSTEVD( const char* jobz, int jobz_len, const MKL_INT* n, float* d, float* e, float* z,
                       const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall SSTEVD_( const char* jobz, int jobz_len, const MKL_INT* n, float* d, float* e, float* z,
                        const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall sstevd( const char* jobz, int jobz_len, const MKL_INT* n, float* d, float* e, float* z,
                       const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall sstevd_( const char* jobz, int jobz_len, const MKL_INT* n, float* d, float* e, float* z,
                        const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall SSTEV( const char* jobz, int jobz_len, const MKL_INT* n, float* d, float* e, float* z,
                      const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall SSTEV_( const char* jobz, int jobz_len, const MKL_INT* n, float* d, float* e, float* z,
                       const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall sstev( const char* jobz, int jobz_len, const MKL_INT* n, float* d, float* e, float* z,
                      const MKL_INT* ldz, float* work, MKL_INT* info );
void __stdcall sstev_( const char* jobz, int jobz_len, const MKL_INT* n, float* d, float* e, float* z,
                       const MKL_INT* ldz, float* work, MKL_INT* info );

void __stdcall SSTEVR( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                       float* e, const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       float* z, const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall SSTEVR_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                        float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        float* z, const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall sstevr( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                       float* e, const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       float* z, const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall sstevr_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                        float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        float* z, const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall SSTEVX( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                       float* e, const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       float* z, const MKL_INT* ldz, float* work, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall SSTEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                        float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        float* z, const MKL_INT* ldz, float* work, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );
void __stdcall sstevx( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                       float* e, const float* vl, const float* vu, const MKL_INT* il,
                       const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                       float* z, const MKL_INT* ldz, float* work, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall sstevx_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, float* d,
                        float* e, const float* vl, const float* vu, const MKL_INT* il,
                        const MKL_INT* iu, const float* abstol, MKL_INT* m, float* w,
                        float* z, const MKL_INT* ldz, float* work, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );

void __stdcall SSYCON( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                       float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SSYCON_( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                        float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall ssycon( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                       float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall ssycon_( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, const float* anorm,
                        float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SSYEQUB( char* uplo, int uplo_len, const MKL_INT* n, const float* a, const MKL_INT* lda,
                        float* s, float* scond, float* amax, float* work,
                        MKL_INT* info );
void __stdcall SSYEQUB_( char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                         const MKL_INT* lda, float* s, float* scond, float* amax,
                         float* work, MKL_INT* info );
void __stdcall ssyequb( char* uplo, int uplo_len, const MKL_INT* n, const float* a, const MKL_INT* lda,
                        float* s, float* scond, float* amax, float* work,
                        MKL_INT* info );
void __stdcall ssyequb_( char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                         const MKL_INT* lda, float* s, float* scond, float* amax,
                         float* work, MKL_INT* info );

void __stdcall SSYEVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* w, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall SSYEVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* w, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall ssyevd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* w, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall ssyevd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* w, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall SSYEV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* w, float* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall SSYEV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* w, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ssyev( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                      const MKL_INT* lda, float* w, float* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall ssyev_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* w, float* work, const MKL_INT* lwork,
                       MKL_INT* info );

void __stdcall SSYEVR( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, const float* vl,
                       const float* vu, const MKL_INT* il, const MKL_INT* iu,
                       const float* abstol, MKL_INT* m, float* w, float* z,
                       const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall SSYEVR_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, float* a, const MKL_INT* lda, const float* vl,
                        const float* vu, const MKL_INT* il, const MKL_INT* iu,
                        const float* abstol, MKL_INT* m, float* w, float* z,
                        const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall ssyevr( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, const float* vl,
                       const float* vu, const MKL_INT* il, const MKL_INT* iu,
                       const float* abstol, MKL_INT* m, float* w, float* z,
                       const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall ssyevr_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, float* a, const MKL_INT* lda, const float* vl,
                        const float* vu, const MKL_INT* il, const MKL_INT* iu,
                        const float* abstol, MKL_INT* m, float* w, float* z,
                        const MKL_INT* ldz, MKL_INT* isuppz, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall SSYEVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, const float* vl,
                       const float* vu, const MKL_INT* il, const MKL_INT* iu,
                       const float* abstol, MKL_INT* m, float* w, float* z,
                       const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall SSYEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, float* a, const MKL_INT* lda, const float* vl,
                        const float* vu, const MKL_INT* il, const MKL_INT* iu,
                        const float* abstol, MKL_INT* m, float* w, float* z,
                        const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall ssyevx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, const float* vl,
                       const float* vu, const MKL_INT* il, const MKL_INT* iu,
                       const float* abstol, MKL_INT* m, float* w, float* z,
                       const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall ssyevx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, float* a, const MKL_INT* lda, const float* vl,
                        const float* vu, const MKL_INT* il, const MKL_INT* iu,
                        const float* abstol, MKL_INT* m, float* w, float* z,
                        const MKL_INT* ldz, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall SSYGS2( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       float* a, const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall SSYGS2_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        float* a, const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall ssygs2( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       float* a, const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall ssygs2_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        float* a, const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                        MKL_INT* info );

void __stdcall SSYGST( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       float* a, const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall SSYGST_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        float* a, const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall ssygst( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       float* a, const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall ssygst_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        float* a, const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                        MKL_INT* info );

void __stdcall SSYGVD( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb, float* w, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall SSYGVD_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, float* w, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall ssygvd( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb, float* w, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall ssygvd_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                        const MKL_INT* ldb, float* w, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall SSYGV( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                      const MKL_INT* ldb, float* w, float* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall SSYGV_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb, float* w, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ssygv( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                      const MKL_INT* ldb, float* w, float* work, const MKL_INT* lwork,
                      MKL_INT* info );
void __stdcall ssygv_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, float* a, const MKL_INT* lda, float* b,
                       const MKL_INT* ldb, float* w, float* work, const MKL_INT* lwork,
                       MKL_INT* info );

void __stdcall SSYGVX( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, const float* vl, const float* vu,
                       const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                       MKL_INT* m, float* w, float* z, const MKL_INT* ldz, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* ifail,
                       MKL_INT* info );
void __stdcall SSYGVX_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, const float* vl, const float* vu,
                        const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                        MKL_INT* m, float* w, float* z, const MKL_INT* ldz, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* ifail,
                        MKL_INT* info );
void __stdcall ssygvx( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, const float* vl, const float* vu,
                       const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                       MKL_INT* m, float* w, float* z, const MKL_INT* ldz, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* ifail,
                       MKL_INT* info );
void __stdcall ssygvx_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, const float* vl, const float* vu,
                        const MKL_INT* il, const MKL_INT* iu, const float* abstol,
                        MKL_INT* m, float* w, float* z, const MKL_INT* ldz, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* ifail,
                        MKL_INT* info );

void __stdcall SSYRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, const float* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                       float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SSYRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, const float* af,
                        const MKL_INT* ldaf, const MKL_INT* ipiv, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                        float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall ssyrfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, const float* af,
                       const MKL_INT* ldaf, const MKL_INT* ipiv, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                       float* berr, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall ssyrfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, const float* af,
                        const MKL_INT* ldaf, const MKL_INT* ipiv, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* ferr,
                        float* berr, float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SSYRFSX( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                        const float* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const float* s, const float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SSYRFSX_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                         const float* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                         const float* s, const float* b, const MKL_INT* ldb, float* x,
                         const MKL_INT* ldx, float* rcond, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall ssyrfsx( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                        const float* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                        const float* s, const float* b, const MKL_INT* ldb, float* x,
                        const MKL_INT* ldx, float* rcond, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall ssyrfsx_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                         const float* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                         const float* s, const float* b, const MKL_INT* ldb, float* x,
                         const MKL_INT* ldx, float* rcond, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SSYSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                      const MKL_INT* lda, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                      float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                       const MKL_INT* lda, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssysv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                      const MKL_INT* lda, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                      float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssysv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs, float* a,
                       const MKL_INT* lda, MKL_INT* ipiv, float* b, const MKL_INT* ldb,
                       float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SSYSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                       float* af, const MKL_INT* ldaf, MKL_INT* ipiv, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                       float* ferr, float* berr, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall SSYSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                        float* af, const MKL_INT* ldaf, MKL_INT* ipiv, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                        float* ferr, float* berr, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall ssysvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                       float* af, const MKL_INT* ldaf, MKL_INT* ipiv, const float* b,
                       const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                       float* ferr, float* berr, float* work, const MKL_INT* lwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall ssysvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const float* a, const MKL_INT* lda,
                        float* af, const MKL_INT* ldaf, MKL_INT* ipiv, const float* b,
                        const MKL_INT* ldb, float* x, const MKL_INT* ldx, float* rcond,
                        float* ferr, float* berr, float* work, const MKL_INT* lwork,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall SSYSVXX( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                        const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, float* s,
                        float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                        float* rcond, float* rpvgrw, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall SSYSVXX_( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                         const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, float* s,
                         float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                         float* rcond, float* rpvgrw, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall ssysvxx( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                        const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, float* s,
                        float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                        float* rcond, float* rpvgrw, float* berr,
                        const MKL_INT* n_err_bnds, float* err_bnds_norm,
                        float* err_bnds_comp, const MKL_INT* nparams, float* params,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall ssysvxx_( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, float* a, const MKL_INT* lda, float* af,
                         const MKL_INT* ldaf, MKL_INT* ipiv, char* equed, int equed_len, float* s,
                         float* b, const MKL_INT* ldb, float* x, const MKL_INT* ldx,
                         float* rcond, float* rpvgrw, float* berr,
                         const MKL_INT* n_err_bnds, float* err_bnds_norm,
                         float* err_bnds_comp, const MKL_INT* nparams, float* params,
                         float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall SSYTD2( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* d, float* e, float* tau, MKL_INT* info );
void __stdcall SSYTD2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* d, float* e, float* tau, MKL_INT* info );
void __stdcall ssytd2( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* d, float* e, float* tau, MKL_INT* info );
void __stdcall ssytd2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* d, float* e, float* tau, MKL_INT* info );

void __stdcall SSYTF2( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall SSYTF2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall ssytf2( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall ssytf2_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall SSYTRD( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* d, float* e, float* tau, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall SSYTRD_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* d, float* e, float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytrd( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* d, float* e, float* tau, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ssytrd_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* d, float* e, float* tau, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall SSYTRF( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* ipiv, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYTRF_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* ipiv, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall ssytrf( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* ipiv, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssytrf_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* ipiv, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall SSYTRI( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       const MKL_INT* ipiv, float* work, MKL_INT* info );
void __stdcall SSYTRI_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, float* work, MKL_INT* info );
void __stdcall ssytri( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                       const MKL_INT* ipiv, float* work, MKL_INT* info );
void __stdcall ssytri_( const char* uplo, int uplo_len, const MKL_INT* n, float* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, float* work, MKL_INT* info );

void __stdcall SSYTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, const MKL_INT* ipiv, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall SSYTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ssytrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const float* a, const MKL_INT* lda, const MKL_INT* ipiv, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ssytrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        float* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall STBCON( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const float* ab,
                       const MKL_INT* ldab, float* rcond, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall STBCON_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const float* ab,
                        const MKL_INT* ldab, float* rcond, float* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall stbcon( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const float* ab,
                       const MKL_INT* ldab, float* rcond, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall stbcon_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const float* ab,
                        const MKL_INT* ldab, float* rcond, float* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall STBRFS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const float* ab, const MKL_INT* ldab, const float* b,
                       const MKL_INT* ldb, const float* x, const MKL_INT* ldx,
                       float* ferr, float* berr, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall STBRFS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const float* ab, const MKL_INT* ldab, const float* b,
                        const MKL_INT* ldb, const float* x, const MKL_INT* ldx,
                        float* ferr, float* berr, float* work, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall stbrfs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const float* ab, const MKL_INT* ldab, const float* b,
                       const MKL_INT* ldb, const float* x, const MKL_INT* ldx,
                       float* ferr, float* berr, float* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall stbrfs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const float* ab, const MKL_INT* ldab, const float* b,
                        const MKL_INT* ldb, const float* x, const MKL_INT* ldx,
                        float* ferr, float* berr, float* work, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall STBTRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const float* ab, const MKL_INT* ldab, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall STBTRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const float* ab, const MKL_INT* ldab, float* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall stbtrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const float* ab, const MKL_INT* ldab, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall stbtrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const float* ab, const MKL_INT* ldab, float* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall STFSM( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                      const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                      const MKL_INT* n, const float* alpha, const float* a, float* b,
                      const MKL_INT* ldb );
void __stdcall STFSM_( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                       const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                       const MKL_INT* n, const float* alpha, const float* a, float* b,
                       const MKL_INT* ldb );
void __stdcall stfsm( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                      const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                      const MKL_INT* n, const float* alpha, const float* a, float* b,
                      const MKL_INT* ldb );
void __stdcall stfsm_( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                       const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                       const MKL_INT* n, const float* alpha, const float* a, float* b,
                       const MKL_INT* ldb );

void __stdcall STFTRI( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, float* a, MKL_INT* info );
void __stdcall STFTRI_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, float* a, MKL_INT* info );
void __stdcall stftri( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, float* a, MKL_INT* info );
void __stdcall stftri_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, float* a, MKL_INT* info );

void __stdcall STFTTP( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const float* arf, float* ap, MKL_INT* info );
void __stdcall STFTTP_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* arf, float* ap, MKL_INT* info );
void __stdcall stfttp( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const float* arf, float* ap, MKL_INT* info );
void __stdcall stfttp_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* arf, float* ap, MKL_INT* info );

void __stdcall STFTTR( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const float* arf, float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall STFTTR_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* arf, float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall stfttr( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const float* arf, float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall stfttr_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* arf, float* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall STGEVC( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const float* s, const MKL_INT* lds,
                       const float* p, const MKL_INT* ldp, float* vl,
                       const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, float* work, MKL_INT* info );
void __stdcall STGEVC_( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const float* s, const MKL_INT* lds,
                        const float* p, const MKL_INT* ldp, float* vl,
                        const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, float* work, MKL_INT* info );
void __stdcall stgevc( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const float* s, const MKL_INT* lds,
                       const float* p, const MKL_INT* ldp, float* vl,
                       const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, float* work, MKL_INT* info );
void __stdcall stgevc_( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const float* s, const MKL_INT* lds,
                        const float* p, const MKL_INT* ldp, float* vl,
                        const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, float* work, MKL_INT* info );

void __stdcall STGEX2( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       float* q, const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                       const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall STGEX2_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* q, const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                        const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                        float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall stgex2( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       float* q, const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                       const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                       float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall stgex2_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* q, const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                        const MKL_INT* j1, const MKL_INT* n1, const MKL_INT* n2,
                        float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall STGEXC( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       float* q, const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                       MKL_INT* ifst, MKL_INT* ilst, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall STGEXC_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* q, const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                        MKL_INT* ifst, MKL_INT* ilst, float* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall stgexc( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                       float* q, const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                       MKL_INT* ifst, MKL_INT* ilst, float* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall stgexc_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        float* a, const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        float* q, const MKL_INT* ldq, float* z, const MKL_INT* ldz,
                        MKL_INT* ifst, MKL_INT* ilst, float* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall STGSEN( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                       const MKL_INT* select, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                       float* alphai, float* beta, float* q, const MKL_INT* ldq,
                       float* z, const MKL_INT* ldz, MKL_INT* m, float* pl, float* pr,
                       float* dif, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall STGSEN_( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                        const MKL_INT* select, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                        float* alphai, float* beta, float* q, const MKL_INT* ldq,
                        float* z, const MKL_INT* ldz, MKL_INT* m, float* pl, float* pr,
                        float* dif, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* info );
void __stdcall stgsen( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                       const MKL_INT* select, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                       float* alphai, float* beta, float* q, const MKL_INT* ldq,
                       float* z, const MKL_INT* ldz, MKL_INT* m, float* pl, float* pr,
                       float* dif, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall stgsen_( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                        const MKL_INT* select, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb, float* alphar,
                        float* alphai, float* beta, float* q, const MKL_INT* ldq,
                        float* z, const MKL_INT* ldz, MKL_INT* m, float* pl, float* pr,
                        float* dif, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* info );

void __stdcall STGSJA( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, const float* tola,
                       const float* tolb, float* alpha, float* beta, float* u,
                       const MKL_INT* ldu, float* v, const MKL_INT* ldv, float* q,
                       const MKL_INT* ldq, float* work, MKL_INT* ncycle, MKL_INT* info );
void __stdcall STGSJA_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, const float* tola,
                        const float* tolb, float* alpha, float* beta, float* u,
                        const MKL_INT* ldu, float* v, const MKL_INT* ldv, float* q,
                        const MKL_INT* ldq, float* work, MKL_INT* ncycle,
                        MKL_INT* info );
void __stdcall stgsja( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, const float* tola,
                       const float* tolb, float* alpha, float* beta, float* u,
                       const MKL_INT* ldu, float* v, const MKL_INT* ldv, float* q,
                       const MKL_INT* ldq, float* work, MKL_INT* ncycle, MKL_INT* info );
void __stdcall stgsja_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, const float* tola,
                        const float* tolb, float* alpha, float* beta, float* u,
                        const MKL_INT* ldu, float* v, const MKL_INT* ldv, float* q,
                        const MKL_INT* ldq, float* work, MKL_INT* ncycle,
                        MKL_INT* info );

void __stdcall STGSNA( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const float* a, const MKL_INT* lda,
                       const float* b, const MKL_INT* ldb, const float* vl,
                       const MKL_INT* ldvl, const float* vr, const MKL_INT* ldvr,
                       float* s, float* dif, const MKL_INT* mm, MKL_INT* m, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall STGSNA_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const float* a, const MKL_INT* lda,
                        const float* b, const MKL_INT* ldb, const float* vl,
                        const MKL_INT* ldvl, const float* vr, const MKL_INT* ldvr,
                        float* s, float* dif, const MKL_INT* mm, MKL_INT* m, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall stgsna( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const float* a, const MKL_INT* lda,
                       const float* b, const MKL_INT* ldb, const float* vl,
                       const MKL_INT* ldvl, const float* vr, const MKL_INT* ldvr,
                       float* s, float* dif, const MKL_INT* mm, MKL_INT* m, float* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall stgsna_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const float* a, const MKL_INT* lda,
                        const float* b, const MKL_INT* ldb, const float* vl,
                        const MKL_INT* ldvl, const float* vr, const MKL_INT* ldvr,
                        float* s, float* dif, const MKL_INT* mm, MKL_INT* m, float* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall STGSY2( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const float* a, const MKL_INT* lda,
                       const float* b, const MKL_INT* ldb, float* c, const MKL_INT* ldc,
                       const float* d, const MKL_INT* ldd, const float* e,
                       const MKL_INT* lde, float* f, const MKL_INT* ldf, float* scale,
                       float* rdsum, float* rdscal, MKL_INT* iwork, MKL_INT* pq,
                       MKL_INT* info );
void __stdcall STGSY2_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const float* a, const MKL_INT* lda,
                        const float* b, const MKL_INT* ldb, float* c, const MKL_INT* ldc,
                        const float* d, const MKL_INT* ldd, const float* e,
                        const MKL_INT* lde, float* f, const MKL_INT* ldf, float* scale,
                        float* rdsum, float* rdscal, MKL_INT* iwork, MKL_INT* pq,
                        MKL_INT* info );
void __stdcall stgsy2( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const float* a, const MKL_INT* lda,
                       const float* b, const MKL_INT* ldb, float* c, const MKL_INT* ldc,
                       const float* d, const MKL_INT* ldd, const float* e,
                       const MKL_INT* lde, float* f, const MKL_INT* ldf, float* scale,
                       float* rdsum, float* rdscal, MKL_INT* iwork, MKL_INT* pq,
                       MKL_INT* info );
void __stdcall stgsy2_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const float* a, const MKL_INT* lda,
                        const float* b, const MKL_INT* ldb, float* c, const MKL_INT* ldc,
                        const float* d, const MKL_INT* ldd, const float* e,
                        const MKL_INT* lde, float* f, const MKL_INT* ldf, float* scale,
                        float* rdsum, float* rdscal, MKL_INT* iwork, MKL_INT* pq,
                        MKL_INT* info );

void __stdcall STGSYL( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const float* a, const MKL_INT* lda,
                       const float* b, const MKL_INT* ldb, float* c, const MKL_INT* ldc,
                       const float* d, const MKL_INT* ldd, const float* e,
                       const MKL_INT* lde, float* f, const MKL_INT* ldf, float* scale,
                       float* dif, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall STGSYL_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const float* a, const MKL_INT* lda,
                        const float* b, const MKL_INT* ldb, float* c, const MKL_INT* ldc,
                        const float* d, const MKL_INT* ldd, const float* e,
                        const MKL_INT* lde, float* f, const MKL_INT* ldf, float* scale,
                        float* dif, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall stgsyl( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const float* a, const MKL_INT* lda,
                       const float* b, const MKL_INT* ldb, float* c, const MKL_INT* ldc,
                       const float* d, const MKL_INT* ldd, const float* e,
                       const MKL_INT* lde, float* f, const MKL_INT* ldf, float* scale,
                       float* dif, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall stgsyl_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const float* a, const MKL_INT* lda,
                        const float* b, const MKL_INT* ldb, float* c, const MKL_INT* ldc,
                        const float* d, const MKL_INT* ldd, const float* e,
                        const MKL_INT* lde, float* f, const MKL_INT* ldf, float* scale,
                        float* dif, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall STPCON( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const float* ap, float* rcond, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall STPCON_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const float* ap, float* rcond, float* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall stpcon( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const float* ap, float* rcond, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall stpcon_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const float* ap, float* rcond, float* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall STPRFS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const float* ap,
                       const float* b, const MKL_INT* ldb, const float* x,
                       const MKL_INT* ldx, float* ferr, float* berr, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall STPRFS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const float* ap,
                        const float* b, const MKL_INT* ldb, const float* x,
                        const MKL_INT* ldx, float* ferr, float* berr, float* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall stprfs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const float* ap,
                       const float* b, const MKL_INT* ldb, const float* x,
                       const MKL_INT* ldx, float* ferr, float* berr, float* work,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall stprfs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const float* ap,
                        const float* b, const MKL_INT* ldb, const float* x,
                        const MKL_INT* ldx, float* ferr, float* berr, float* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall STPTRI( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, float* ap,
                       MKL_INT* info );
void __stdcall STPTRI_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, float* ap,
                        MKL_INT* info );
void __stdcall stptri( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, float* ap,
                       MKL_INT* info );
void __stdcall stptri_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, float* ap,
                        MKL_INT* info );

void __stdcall STPTRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const float* ap, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall STPTRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const float* ap, float* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall stptrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const float* ap, float* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall stptrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const float* ap, float* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall STPTTF( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const float* ap, float* arf, MKL_INT* info );
void __stdcall STPTTF_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* ap, float* arf, MKL_INT* info );
void __stdcall stpttf( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const float* ap, float* arf, MKL_INT* info );
void __stdcall stpttf_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* ap, float* arf, MKL_INT* info );

void __stdcall STPTTR( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap, float* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall STPTTR_( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap, float* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall stpttr( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap, float* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall stpttr_( const char* uplo, int uplo_len, const MKL_INT* n, const float* ap, float* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall STRCON( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const float* a, const MKL_INT* lda,
                       float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall STRCON_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const float* a, const MKL_INT* lda,
                        float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall strcon( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const float* a, const MKL_INT* lda,
                       float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall strcon_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const float* a, const MKL_INT* lda,
                        float* rcond, float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall STREVC( const char* side, int side_len, const char* howmny, int howmny_len, MKL_INT* select,
                       const MKL_INT* n, const float* t, const MKL_INT* ldt, float* vl,
                       const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, float* work, MKL_INT* info );
void __stdcall STREVC_( const char* side, int side_len, const char* howmny, int howmny_len, MKL_INT* select,
                        const MKL_INT* n, const float* t, const MKL_INT* ldt, float* vl,
                        const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, float* work, MKL_INT* info );
void __stdcall strevc( const char* side, int side_len, const char* howmny, int howmny_len, MKL_INT* select,
                       const MKL_INT* n, const float* t, const MKL_INT* ldt, float* vl,
                       const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, float* work, MKL_INT* info );
void __stdcall strevc_( const char* side, int side_len, const char* howmny, int howmny_len, MKL_INT* select,
                        const MKL_INT* n, const float* t, const MKL_INT* ldt, float* vl,
                        const MKL_INT* ldvl, float* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, float* work, MKL_INT* info );

void __stdcall STREXC( const char* compq, int compq_len, const MKL_INT* n, float* t, const MKL_INT* ldt,
                       float* q, const MKL_INT* ldq, MKL_INT* ifst, MKL_INT* ilst,
                       float* work, MKL_INT* info );
void __stdcall STREXC_( const char* compq, int compq_len, const MKL_INT* n, float* t,
                        const MKL_INT* ldt, float* q, const MKL_INT* ldq, MKL_INT* ifst,
                        MKL_INT* ilst, float* work, MKL_INT* info );
void __stdcall strexc( const char* compq, int compq_len, const MKL_INT* n, float* t, const MKL_INT* ldt,
                       float* q, const MKL_INT* ldq, MKL_INT* ifst, MKL_INT* ilst,
                       float* work, MKL_INT* info );
void __stdcall strexc_( const char* compq, int compq_len, const MKL_INT* n, float* t,
                        const MKL_INT* ldt, float* q, const MKL_INT* ldq, MKL_INT* ifst,
                        MKL_INT* ilst, float* work, MKL_INT* info );

void __stdcall STRRFS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const float* a,
                       const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                       const float* x, const MKL_INT* ldx, float* ferr, float* berr,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall STRRFS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const float* a,
                        const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                        const float* x, const MKL_INT* ldx, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall strrfs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const float* a,
                       const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                       const float* x, const MKL_INT* ldx, float* ferr, float* berr,
                       float* work, MKL_INT* iwork, MKL_INT* info );
void __stdcall strrfs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const float* a,
                        const MKL_INT* lda, const float* b, const MKL_INT* ldb,
                        const float* x, const MKL_INT* ldx, float* ferr, float* berr,
                        float* work, MKL_INT* iwork, MKL_INT* info );

void __stdcall STRSEN( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                       const MKL_INT* n, float* t, const MKL_INT* ldt, float* q,
                       const MKL_INT* ldq, float* wr, float* wi, MKL_INT* m, float* s,
                       float* sep, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall STRSEN_( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                        const MKL_INT* n, float* t, const MKL_INT* ldt, float* q,
                        const MKL_INT* ldq, float* wr, float* wi, MKL_INT* m, float* s,
                        float* sep, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* info );
void __stdcall strsen( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                       const MKL_INT* n, float* t, const MKL_INT* ldt, float* q,
                       const MKL_INT* ldq, float* wr, float* wi, MKL_INT* m, float* s,
                       float* sep, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall strsen_( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                        const MKL_INT* n, float* t, const MKL_INT* ldt, float* q,
                        const MKL_INT* ldq, float* wr, float* wi, MKL_INT* m, float* s,
                        float* sep, float* work, const MKL_INT* lwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* info );

void __stdcall STRSNA( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const float* t, const MKL_INT* ldt,
                       const float* vl, const MKL_INT* ldvl, const float* vr,
                       const MKL_INT* ldvr, float* s, float* sep, const MKL_INT* mm,
                       MKL_INT* m, float* work, const MKL_INT* ldwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall STRSNA_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const float* t, const MKL_INT* ldt,
                        const float* vl, const MKL_INT* ldvl, const float* vr,
                        const MKL_INT* ldvr, float* s, float* sep, const MKL_INT* mm,
                        MKL_INT* m, float* work, const MKL_INT* ldwork, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall strsna( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const float* t, const MKL_INT* ldt,
                       const float* vl, const MKL_INT* ldvl, const float* vr,
                       const MKL_INT* ldvr, float* s, float* sep, const MKL_INT* mm,
                       MKL_INT* m, float* work, const MKL_INT* ldwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall strsna_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const float* t, const MKL_INT* ldt,
                        const float* vl, const MKL_INT* ldvl, const float* vr,
                        const MKL_INT* ldvr, float* s, float* sep, const MKL_INT* mm,
                        MKL_INT* m, float* work, const MKL_INT* ldwork, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall STRSYL( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                       const MKL_INT* m, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const float* b, const MKL_INT* ldb, float* c,
                       const MKL_INT* ldc, float* scale, MKL_INT* info );
void __stdcall STRSYL_( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                        const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const float* b, const MKL_INT* ldb, float* c,
                        const MKL_INT* ldc, float* scale, MKL_INT* info );
void __stdcall strsyl( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                       const MKL_INT* m, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const float* b, const MKL_INT* ldb, float* c,
                       const MKL_INT* ldc, float* scale, MKL_INT* info );
void __stdcall strsyl_( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                        const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const float* b, const MKL_INT* ldb, float* c,
                        const MKL_INT* ldc, float* scale, MKL_INT* info );

void __stdcall STRTI2( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall STRTI2_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall strti2( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall strti2_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall STRTRI( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall STRTRI_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall strtri( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, float* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall strtri_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n, float* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall STRTRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall STRTRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall strtrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const float* a,
                       const MKL_INT* lda, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall strtrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const float* a,
                        const MKL_INT* lda, float* b, const MKL_INT* ldb,
                        MKL_INT* info );

void __stdcall STRTTF( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const float* a, const MKL_INT* lda, float* arf, MKL_INT* info );
void __stdcall STRTTF_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* a, const MKL_INT* lda, float* arf, MKL_INT* info );
void __stdcall strttf( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const float* a, const MKL_INT* lda, float* arf, MKL_INT* info );
void __stdcall strttf_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const float* a, const MKL_INT* lda, float* arf, MKL_INT* info );

void __stdcall STRTTP( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, float* ap, MKL_INT* info );
void __stdcall STRTTP_( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, float* ap, MKL_INT* info );
void __stdcall strttp( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, float* ap, MKL_INT* info );
void __stdcall strttp_( const char* uplo, int uplo_len, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, float* ap, MKL_INT* info );

void __stdcall STZRQF( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, MKL_INT* info );
void __stdcall STZRQF_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, MKL_INT* info );
void __stdcall stzrqf( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, MKL_INT* info );
void __stdcall stzrqf_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, MKL_INT* info );

void __stdcall STZRZF( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall STZRZF_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall stzrzf( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall stzrzf_( const MKL_INT* m, const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* tau, float* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall XERBLA_ARRAY( const char* srname_array, int srname_array_len, const MKL_INT* srname_len,
                             const MKL_INT* info );
void __stdcall XERBLA_ARRAY_( const char* srname_array, int srname_array_len, const MKL_INT* srname_len,
                              const MKL_INT* info );
void __stdcall xerbla_array( const char* srname_array, int srname_array_len, const MKL_INT* srname_len,
                             const MKL_INT* info );
void __stdcall xerbla_array_( const char* srname_array, int srname_array_len, const MKL_INT* srname_len,
                              const MKL_INT* info );

void __stdcall ZBDSQR( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                       const MKL_INT* nru, const MKL_INT* ncc, double* d, double* e,
                       MKL_Complex16* vt, const MKL_INT* ldvt, MKL_Complex16* u,
                       const MKL_INT* ldu, MKL_Complex16* c, const MKL_INT* ldc,
                       double* rwork, MKL_INT* info );
void __stdcall ZBDSQR_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                        const MKL_INT* nru, const MKL_INT* ncc, double* d, double* e,
                        MKL_Complex16* vt, const MKL_INT* ldvt, MKL_Complex16* u,
                        const MKL_INT* ldu, MKL_Complex16* c, const MKL_INT* ldc,
                        double* rwork, MKL_INT* info );
void __stdcall zbdsqr( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                       const MKL_INT* nru, const MKL_INT* ncc, double* d, double* e,
                       MKL_Complex16* vt, const MKL_INT* ldvt, MKL_Complex16* u,
                       const MKL_INT* ldu, MKL_Complex16* c, const MKL_INT* ldc,
                       double* rwork, MKL_INT* info );
void __stdcall zbdsqr_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* ncvt,
                        const MKL_INT* nru, const MKL_INT* ncc, double* d, double* e,
                        MKL_Complex16* vt, const MKL_INT* ldvt, MKL_Complex16* u,
                        const MKL_INT* ldu, MKL_Complex16* c, const MKL_INT* ldc,
                        double* rwork, MKL_INT* info );

void __stdcall ZCGESV( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                       MKL_Complex16* work, MKL_Complex8* swork, double* rwork,
                       MKL_INT* iter, MKL_INT* info );
void __stdcall ZCGESV_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        MKL_Complex16* work, MKL_Complex8* swork, double* rwork,
                        MKL_INT* iter, MKL_INT* info );
void __stdcall zcgesv( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                       MKL_Complex16* work, MKL_Complex8* swork, double* rwork,
                       MKL_INT* iter, MKL_INT* info );
void __stdcall zcgesv_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        MKL_Complex16* work, MKL_Complex8* swork, double* rwork,
                        MKL_INT* iter, MKL_INT* info );

void __stdcall ZCPOSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                       MKL_Complex16* work, MKL_Complex8* swork, double* rwork,
                       MKL_INT* iter, MKL_INT* info );
void __stdcall ZCPOSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        MKL_Complex16* work, MKL_Complex8* swork, double* rwork,
                        MKL_INT* iter, MKL_INT* info );
void __stdcall zcposv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                       MKL_Complex16* work, MKL_Complex8* swork, double* rwork,
                       MKL_INT* iter, MKL_INT* info );
void __stdcall zcposv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        MKL_Complex16* work, MKL_Complex8* swork, double* rwork,
                        MKL_INT* iter, MKL_INT* info );

void __stdcall ZDRSCL( const MKL_INT* n, const double* sa, MKL_Complex16* sx,
                       const MKL_INT* incx );
void __stdcall ZDRSCL_( const MKL_INT* n, const double* sa, MKL_Complex16* sx,
                        const MKL_INT* incx );
void __stdcall zdrscl( const MKL_INT* n, const double* sa, MKL_Complex16* sx,
                       const MKL_INT* incx );
void __stdcall zdrscl_( const MKL_INT* n, const double* sa, MKL_Complex16* sx,
                        const MKL_INT* incx );

void __stdcall ZGBBRD( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                       MKL_Complex16* ab, const MKL_INT* ldab, double* d, double* e,
                       MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* pt,
                       const MKL_INT* ldpt, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZGBBRD_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                        MKL_Complex16* ab, const MKL_INT* ldab, double* d, double* e,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* pt,
                        const MKL_INT* ldpt, MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgbbrd( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                       MKL_Complex16* ab, const MKL_INT* ldab, double* d, double* e,
                       MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* pt,
                       const MKL_INT* ldpt, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgbbrd_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* ncc, const MKL_INT* kl, const MKL_INT* ku,
                        MKL_Complex16* ab, const MKL_INT* ldab, double* d, double* e,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* pt,
                        const MKL_INT* ldpt, MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZGBCON( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                       const MKL_INT* ipiv, const double* anorm, double* rcond,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZGBCON_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                        const MKL_INT* ipiv, const double* anorm, double* rcond,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgbcon( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                       const MKL_INT* ipiv, const double* anorm, double* rcond,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgbcon_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                        const MKL_INT* ipiv, const double* anorm, double* rcond,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZGBEQUB( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                        double* r, double* c, double* rowcnd, double* colcnd,
                        double* amax, MKL_INT* info );
void __stdcall ZGBEQUB_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                         double* r, double* c, double* rowcnd, double* colcnd,
                         double* amax, MKL_INT* info );
void __stdcall zgbequb( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                        double* r, double* c, double* rowcnd, double* colcnd,
                        double* amax, MKL_INT* info );
void __stdcall zgbequb_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                         double* r, double* c, double* rowcnd, double* colcnd,
                         double* amax, MKL_INT* info );

void __stdcall ZGBEQU( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                       double* r, double* c, double* rowcnd, double* colcnd,
                       double* amax, MKL_INT* info );
void __stdcall ZGBEQU_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                        double* r, double* c, double* rowcnd, double* colcnd,
                        double* amax, MKL_INT* info );
void __stdcall zgbequ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                       double* r, double* c, double* rowcnd, double* colcnd,
                       double* amax, MKL_INT* info );
void __stdcall zgbequ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                        double* r, double* c, double* rowcnd, double* colcnd,
                        double* amax, MKL_INT* info );

void __stdcall ZGBRFS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex16* ab,
                       const MKL_INT* ldab, const MKL_Complex16* afb,
                       const MKL_INT* ldafb, const MKL_INT* ipiv, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                       double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );
void __stdcall ZGBRFS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex16* ab,
                        const MKL_INT* ldab, const MKL_Complex16* afb,
                        const MKL_INT* ldafb, const MKL_INT* ipiv,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgbrfs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex16* ab,
                       const MKL_INT* ldab, const MKL_Complex16* afb,
                       const MKL_INT* ldafb, const MKL_INT* ipiv, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                       double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );
void __stdcall zgbrfs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex16* ab,
                        const MKL_INT* ldab, const MKL_Complex16* afb,
                        const MKL_INT* ldafb, const MKL_INT* ipiv,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZGBRFSX( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        const MKL_Complex16* ab, const MKL_INT* ldab,
                        const MKL_Complex16* afb, const MKL_INT* ldafb,
                        const MKL_INT* ipiv, const double* r, const double* c,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZGBRFSX_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         const MKL_Complex16* ab, const MKL_INT* ldab,
                         const MKL_Complex16* afb, const MKL_INT* ldafb,
                         const MKL_INT* ipiv, const double* r, const double* c,
                         const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                         const MKL_INT* ldx, double* rcond, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgbrfsx( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        const MKL_Complex16* ab, const MKL_INT* ldab,
                        const MKL_Complex16* afb, const MKL_INT* ldafb,
                        const MKL_INT* ipiv, const double* r, const double* c,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgbrfsx_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         const MKL_Complex16* ab, const MKL_INT* ldab,
                         const MKL_Complex16* afb, const MKL_INT* ldafb,
                         const MKL_INT* ipiv, const double* r, const double* c,
                         const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                         const MKL_INT* ldx, double* rcond, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZGBSV( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                      const MKL_INT* nrhs, MKL_Complex16* ab, const MKL_INT* ldab,
                      MKL_INT* ipiv, MKL_Complex16* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall ZGBSV_( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                       const MKL_INT* nrhs, MKL_Complex16* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall zgbsv( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                      const MKL_INT* nrhs, MKL_Complex16* ab, const MKL_INT* ldab,
                      MKL_INT* ipiv, MKL_Complex16* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall zgbsv_( const MKL_INT* n, const MKL_INT* kl, const MKL_INT* ku,
                       const MKL_INT* nrhs, MKL_Complex16* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* info );

void __stdcall ZGBSVX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                       MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* afb,
                       const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                       double* c, MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZGBSVX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* afb,
                        const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                        double* c, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );
void __stdcall zgbsvx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                       MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* afb,
                       const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                       double* c, MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgbsvx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* afb,
                        const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                        double* c, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );

void __stdcall ZGBSVXX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* afb,
                        const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                        double* c, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                        double* err_bnds_norm, double* err_bnds_comp,
                        const MKL_INT* nparams, double* params, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall ZGBSVXX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* afb,
                         const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                         double* c, MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                         double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                         double* err_bnds_norm, double* err_bnds_comp,
                         const MKL_INT* nparams, double* params, MKL_Complex16* work,
                         double* rwork, MKL_INT* info );
void __stdcall zgbsvxx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                        MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* afb,
                        const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                        double* c, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                        double* err_bnds_norm, double* err_bnds_comp,
                        const MKL_INT* nparams, double* params, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall zgbsvxx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* kl, const MKL_INT* ku, const MKL_INT* nrhs,
                         MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* afb,
                         const MKL_INT* ldafb, MKL_INT* ipiv, char* equed, int equed_len, double* r,
                         double* c, MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                         double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                         double* err_bnds_norm, double* err_bnds_comp,
                         const MKL_INT* nparams, double* params, MKL_Complex16* work,
                         double* rwork, MKL_INT* info );

void __stdcall ZGBTF2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, MKL_Complex16* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZGBTF2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, MKL_Complex16* ab, const MKL_INT* ldab,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall zgbtf2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, MKL_Complex16* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall zgbtf2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, MKL_Complex16* ab, const MKL_INT* ldab,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall ZGBTRF( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, MKL_Complex16* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZGBTRF_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, MKL_Complex16* ab, const MKL_INT* ldab,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall zgbtrf( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, MKL_Complex16* ab, const MKL_INT* ldab,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall zgbtrf_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, MKL_Complex16* ab, const MKL_INT* ldab,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall ZGBTRS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex16* ab,
                       const MKL_INT* ldab, const MKL_INT* ipiv, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZGBTRS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex16* ab,
                        const MKL_INT* ldab, const MKL_INT* ipiv, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall zgbtrs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex16* ab,
                       const MKL_INT* ldab, const MKL_INT* ipiv, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zgbtrs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* nrhs, const MKL_Complex16* ab,
                        const MKL_INT* ldab, const MKL_INT* ipiv, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZGEBAK( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const double* scale,
                       const MKL_INT* m, MKL_Complex16* v, const MKL_INT* ldv,
                       MKL_INT* info );
void __stdcall ZGEBAK_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const double* scale,
                        const MKL_INT* m, MKL_Complex16* v, const MKL_INT* ldv,
                        MKL_INT* info );
void __stdcall zgebak( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const double* scale,
                       const MKL_INT* m, MKL_Complex16* v, const MKL_INT* ldv,
                       MKL_INT* info );
void __stdcall zgebak_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const double* scale,
                        const MKL_INT* m, MKL_Complex16* v, const MKL_INT* ldv,
                        MKL_INT* info );

void __stdcall ZGEBAL( const char* job, int job_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ilo, MKL_INT* ihi, double* scale,
                       MKL_INT* info );
void __stdcall ZGEBAL_( const char* job, int job_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ilo, MKL_INT* ihi, double* scale,
                        MKL_INT* info );
void __stdcall zgebal( const char* job, int job_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ilo, MKL_INT* ihi, double* scale,
                       MKL_INT* info );
void __stdcall zgebal_( const char* job, int job_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ilo, MKL_INT* ihi, double* scale,
                        MKL_INT* info );

void __stdcall ZGEBD2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, double* d, double* e, MKL_Complex16* tauq,
                       MKL_Complex16* taup, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZGEBD2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, double* d, double* e, MKL_Complex16* tauq,
                        MKL_Complex16* taup, MKL_Complex16* work, MKL_INT* info );
void __stdcall zgebd2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, double* d, double* e, MKL_Complex16* tauq,
                       MKL_Complex16* taup, MKL_Complex16* work, MKL_INT* info );
void __stdcall zgebd2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, double* d, double* e, MKL_Complex16* tauq,
                        MKL_Complex16* taup, MKL_Complex16* work, MKL_INT* info );

void __stdcall ZGEBRD( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, double* d, double* e, MKL_Complex16* tauq,
                       MKL_Complex16* taup, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZGEBRD_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, double* d, double* e, MKL_Complex16* tauq,
                        MKL_Complex16* taup, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zgebrd( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, double* d, double* e, MKL_Complex16* tauq,
                       MKL_Complex16* taup, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zgebrd_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, double* d, double* e, MKL_Complex16* tauq,
                        MKL_Complex16* taup, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall ZGECON( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const double* anorm, double* rcond,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZGECON_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const double* anorm, double* rcond,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgecon( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const double* anorm, double* rcond,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgecon_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const double* anorm, double* rcond,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZGEEQUB( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, double* r, double* c, double* rowcnd,
                        double* colcnd, double* amax, MKL_INT* info );
void __stdcall ZGEEQUB_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                         const MKL_INT* lda, double* r, double* c, double* rowcnd,
                         double* colcnd, double* amax, MKL_INT* info );
void __stdcall zgeequb( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, double* r, double* c, double* rowcnd,
                        double* colcnd, double* amax, MKL_INT* info );
void __stdcall zgeequb_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                         const MKL_INT* lda, double* r, double* c, double* rowcnd,
                         double* colcnd, double* amax, MKL_INT* info );

void __stdcall ZGEEQU( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, double* r, double* c, double* rowcnd,
                       double* colcnd, double* amax, MKL_INT* info );
void __stdcall ZGEEQU_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, double* r, double* c, double* rowcnd,
                        double* colcnd, double* amax, MKL_INT* info );
void __stdcall zgeequ( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, double* r, double* c, double* rowcnd,
                       double* colcnd, double* amax, MKL_INT* info );
void __stdcall zgeequ_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, double* r, double* c, double* rowcnd,
                        double* colcnd, double* amax, MKL_INT* info );

void __stdcall ZGEES( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                      MKL_Z_SELECT_FUNCTION_1 select, const MKL_INT* n, MKL_Complex16* a,
                      const MKL_INT* lda, MKL_INT* sdim, MKL_Complex16* w,
                      MKL_Complex16* vs, const MKL_INT* ldvs, MKL_Complex16* work,
                      const MKL_INT* lwork, double* rwork, MKL_INT* bwork,
                      MKL_INT* info );
void __stdcall ZGEES_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_Z_SELECT_FUNCTION_1 select, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* sdim,
                       MKL_Complex16* w, MKL_Complex16* vs, const MKL_INT* ldvs,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* bwork, MKL_INT* info );
void __stdcall zgees( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                      MKL_Z_SELECT_FUNCTION_1 select, const MKL_INT* n, MKL_Complex16* a,
                      const MKL_INT* lda, MKL_INT* sdim, MKL_Complex16* w,
                      MKL_Complex16* vs, const MKL_INT* ldvs, MKL_Complex16* work,
                      const MKL_INT* lwork, double* rwork, MKL_INT* bwork,
                      MKL_INT* info );
void __stdcall zgees_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_Z_SELECT_FUNCTION_1 select, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* sdim,
                       MKL_Complex16* w, MKL_Complex16* vs, const MKL_INT* ldvs,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* bwork, MKL_INT* info );

void __stdcall ZGEESX( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_Z_SELECT_FUNCTION_1 select, const char* sense, int sense_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_INT* sdim, MKL_Complex16* w, MKL_Complex16* vs,
                       const MKL_INT* ldvs, double* rconde, double* rcondv,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* bwork, MKL_INT* info );
void __stdcall ZGEESX_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                        MKL_Z_SELECT_FUNCTION_1 select, const char* sense, int sense_len,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* sdim, MKL_Complex16* w, MKL_Complex16* vs,
                        const MKL_INT* ldvs, double* rconde, double* rcondv,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        MKL_INT* bwork, MKL_INT* info );
void __stdcall zgeesx( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                       MKL_Z_SELECT_FUNCTION_1 select, const char* sense, int sense_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_INT* sdim, MKL_Complex16* w, MKL_Complex16* vs,
                       const MKL_INT* ldvs, double* rconde, double* rcondv,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* bwork, MKL_INT* info );
void __stdcall zgeesx_( const char* jobvs, int jobvs_len, const char* sort, int sort_len,
                        MKL_Z_SELECT_FUNCTION_1 select, const char* sense, int sense_len,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* sdim, MKL_Complex16* w, MKL_Complex16* vs,
                        const MKL_INT* ldvs, double* rconde, double* rcondv,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        MKL_INT* bwork, MKL_INT* info );

void __stdcall ZGEEV( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* w,
                      MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                      const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                      double* rwork, MKL_INT* info );
void __stdcall ZGEEV_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* w,
                       MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                       const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );
void __stdcall zgeev( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* w,
                      MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                      const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                      double* rwork, MKL_INT* info );
void __stdcall zgeev_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* w,
                       MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                       const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );

void __stdcall ZGEEVX( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* w, MKL_Complex16* vl,
                       const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                       MKL_INT* ilo, MKL_INT* ihi, double* scale, double* abnrm,
                       double* rconde, double* rcondv, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, MKL_INT* info );
void __stdcall ZGEEVX_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* w, MKL_Complex16* vl,
                        const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, double* scale, double* abnrm,
                        double* rconde, double* rcondv, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, MKL_INT* info );
void __stdcall zgeevx( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* w, MKL_Complex16* vl,
                       const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                       MKL_INT* ilo, MKL_INT* ihi, double* scale, double* abnrm,
                       double* rconde, double* rcondv, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, MKL_INT* info );
void __stdcall zgeevx_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* w, MKL_Complex16* vl,
                        const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, double* scale, double* abnrm,
                        double* rconde, double* rcondv, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, MKL_INT* info );

void __stdcall ZGEGS( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                      MKL_Complex16* vsl, const MKL_INT* ldvsl, MKL_Complex16* vsr,
                      const MKL_INT* ldvsr, MKL_Complex16* work, const MKL_INT* lwork,
                      double* rwork, MKL_INT* info );
void __stdcall ZGEGS_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                       MKL_Complex16* vsl, const MKL_INT* ldvsl, MKL_Complex16* vsr,
                       const MKL_INT* ldvsr, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );
void __stdcall zgegs( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                      MKL_Complex16* vsl, const MKL_INT* ldvsl, MKL_Complex16* vsr,
                      const MKL_INT* ldvsr, MKL_Complex16* work, const MKL_INT* lwork,
                      double* rwork, MKL_INT* info );
void __stdcall zgegs_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                       MKL_Complex16* vsl, const MKL_INT* ldvsl, MKL_Complex16* vsr,
                       const MKL_INT* ldvsr, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );

void __stdcall ZGEGV( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                      MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                      const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                      double* rwork, MKL_INT* info );
void __stdcall ZGEGV_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                       MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                       const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );
void __stdcall zgegv( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                      MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                      const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                      double* rwork, MKL_INT* info );
void __stdcall zgegv_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                       MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                       const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );

void __stdcall ZGEHD2( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZGEHD2_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zgehd2( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zgehd2_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                        MKL_Complex16* work, MKL_INT* info );

void __stdcall ZGEHRD( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGEHRD_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgehrd( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgehrd_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGELQ2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall ZGELQ2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall zgelq2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall zgelq2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        MKL_INT* info );

void __stdcall ZGELQF( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGELQF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgelqf( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgelqf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGELSD( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, double* s, const double* rcond, MKL_INT* rank,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall ZGELSD_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, double* s, const double* rcond,
                        MKL_INT* rank, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall zgelsd( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, double* s, const double* rcond, MKL_INT* rank,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall zgelsd_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, double* s, const double* rcond,
                        MKL_INT* rank, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall ZGELS( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                      MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGELS_( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgels( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                      MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgels_( const char* trans, int trans_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGELSS( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, double* s, const double* rcond, MKL_INT* rank,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* info );
void __stdcall ZGELSS_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, double* s, const double* rcond,
                        MKL_INT* rank, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* info );
void __stdcall zgelss( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, double* s, const double* rcond, MKL_INT* rank,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* info );
void __stdcall zgelss_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, double* s, const double* rcond,
                        MKL_INT* rank, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* info );

void __stdcall ZGELSX( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* jpvt, const double* rcond,
                       MKL_INT* rank, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );
void __stdcall ZGELSX_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* jpvt, const double* rcond,
                        MKL_INT* rank, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );
void __stdcall zgelsx( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* jpvt, const double* rcond,
                       MKL_INT* rank, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );
void __stdcall zgelsx_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* jpvt, const double* rcond,
                        MKL_INT* rank, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );

void __stdcall ZGELSY( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* jpvt, const double* rcond,
                       MKL_INT* rank, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );
void __stdcall ZGELSY_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* jpvt, const double* rcond,
                        MKL_INT* rank, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* info );
void __stdcall zgelsy( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* jpvt, const double* rcond,
                       MKL_INT* rank, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );
void __stdcall zgelsy_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nrhs,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* jpvt, const double* rcond,
                        MKL_INT* rank, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* info );

void __stdcall ZGEQL2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall ZGEQL2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall zgeql2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall zgeql2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        MKL_INT* info );

void __stdcall ZGEQLF( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGEQLF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgeqlf( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgeqlf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGEQP3( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* info );
void __stdcall ZGEQP3_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        MKL_INT* info );
void __stdcall zgeqp3( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* info );
void __stdcall zgeqp3_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        MKL_INT* info );

void __stdcall ZGEQPF( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex16* tau,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZGEQPF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex16* tau,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgeqpf( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex16* tau,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgeqpf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex16* tau,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZGEQR2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall ZGEQR2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall zgeqr2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall zgeqr2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        MKL_INT* info );

void __stdcall ZGEQR2P( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall ZGEQR2P_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                         MKL_INT* info );
void __stdcall zgeqr2p( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall zgeqr2p_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                         MKL_INT* info );

void __stdcall ZGEQRF( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGEQRF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgeqrf( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgeqrf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGEQRFP( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGEQRFP_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgeqrfp( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgeqrfp_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGERFS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZGERFS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgerfs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgerfs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZGERFSX( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_INT* ipiv, const double* r, const double* c,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZGERFSX_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* af, const MKL_INT* ldaf,
                         const MKL_INT* ipiv, const double* r, const double* c,
                         const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                         const MKL_INT* ldx, double* rcond, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgerfsx( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_INT* ipiv, const double* r, const double* c,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgerfsx_( const char* trans, int trans_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* af, const MKL_INT* ldaf,
                         const MKL_INT* ipiv, const double* r, const double* c,
                         const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                         const MKL_INT* ldx, double* rcond, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZGERQ2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall ZGERQ2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall zgerq2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall zgerq2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        MKL_INT* info );

void __stdcall ZGERQF( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGERQF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgerqf( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zgerqf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGESC2( const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* rhs, const MKL_INT* ipiv, const MKL_INT* jpiv,
                       double* scale );
void __stdcall ZGESC2_( const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* rhs, const MKL_INT* ipiv, const MKL_INT* jpiv,
                        double* scale );
void __stdcall zgesc2( const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* rhs, const MKL_INT* ipiv, const MKL_INT* jpiv,
                       double* scale );
void __stdcall zgesc2_( const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* rhs, const MKL_INT* ipiv, const MKL_INT* jpiv,
                        double* scale );

void __stdcall ZGESDD( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, double* s, MKL_Complex16* u,
                       const MKL_INT* ldu, MKL_Complex16* vt, const MKL_INT* ldvt,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall ZGESDD_( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, double* s,
                        MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* vt,
                        const MKL_INT* ldvt, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall zgesdd( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, double* s, MKL_Complex16* u,
                       const MKL_INT* ldu, MKL_Complex16* vt, const MKL_INT* ldvt,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall zgesdd_( const char* jobz, int jobz_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, double* s,
                        MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* vt,
                        const MKL_INT* ldvt, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall ZGESVD( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, double* s,
                       MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* vt,
                       const MKL_INT* ldvt, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );
void __stdcall ZGESVD_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        double* s, MKL_Complex16* u, const MKL_INT* ldu,
                        MKL_Complex16* vt, const MKL_INT* ldvt, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, MKL_INT* info );
void __stdcall zgesvd( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda, double* s,
                       MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* vt,
                       const MKL_INT* ldvt, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );
void __stdcall zgesvd_( const char* jobu, int jobu_len, const char* jobvt, int jobvt_len, const MKL_INT* m,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        double* s, MKL_Complex16* u, const MKL_INT* ldu,
                        MKL_Complex16* vt, const MKL_INT* ldvt, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, MKL_INT* info );

void __stdcall ZGESV( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* a,
                      const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZGESV_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zgesv( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* a,
                      const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall zgesv_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZGESVX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                       char* equed, int equed_len, double* r, double* c, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                       double* rcond, double* ferr, double* berr, MKL_Complex16* work,
                       double* rwork, MKL_INT* info );
void __stdcall ZGESVX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, double* r, double* c, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        double* rcond, double* ferr, double* berr, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall zgesvx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                       char* equed, int equed_len, double* r, double* c, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                       double* rcond, double* ferr, double* berr, MKL_Complex16* work,
                       double* rwork, MKL_INT* info );
void __stdcall zgesvx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, double* r, double* c, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        double* rcond, double* ferr, double* berr, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );

void __stdcall ZGESVXX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, double* r, double* c, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        double* rcond, double* rpvgrw, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZGESVXX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                         char* equed, int equed_len, double* r, double* c, MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                         double* rcond, double* rpvgrw, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgesvxx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, double* r, double* c, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        double* rcond, double* rpvgrw, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgesvxx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                         char* equed, int equed_len, double* r, double* c, MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                         double* rcond, double* rpvgrw, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZGETC2( const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* jpiv, MKL_INT* info );
void __stdcall ZGETC2_( const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* jpiv, MKL_INT* info );
void __stdcall zgetc2( const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_INT* ipiv, MKL_INT* jpiv, MKL_INT* info );
void __stdcall zgetc2_( const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* ipiv, MKL_INT* jpiv, MKL_INT* info );

void __stdcall ZGETF2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZGETF2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zgetf2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zgetf2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall ZGETRF( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZGETRF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zgetrf( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zgetrf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall MKL_ZGETRFNPI( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                              MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall MKL_ZGETRFNPI_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                               MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_zgetrfnpi( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                              MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_zgetrfnpi_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nfact,
                               MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall ZGETRI( const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_INT* ipiv, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZGETRI_( const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zgetri( const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_INT* ipiv, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zgetri_( const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall ZGETRS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZGETRS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zgetrs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zgetrs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZGGBAK( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const double* lscale,
                       const double* rscale, const MKL_INT* m, MKL_Complex16* v,
                       const MKL_INT* ldv, MKL_INT* info );
void __stdcall ZGGBAK_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const double* lscale,
                        const double* rscale, const MKL_INT* m, MKL_Complex16* v,
                        const MKL_INT* ldv, MKL_INT* info );
void __stdcall zggbak( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, const double* lscale,
                       const double* rscale, const MKL_INT* m, MKL_Complex16* v,
                       const MKL_INT* ldv, MKL_INT* info );
void __stdcall zggbak_( const char* job, int job_len, const char* side, int side_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, const double* lscale,
                        const double* rscale, const MKL_INT* m, MKL_Complex16* v,
                        const MKL_INT* ldv, MKL_INT* info );

void __stdcall ZGGBAL( const char* job, int job_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* ilo, MKL_INT* ihi, double* lscale, double* rscale,
                       double* work, MKL_INT* info );
void __stdcall ZGGBAL_( const char* job, int job_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* ilo, MKL_INT* ihi, double* lscale, double* rscale,
                        double* work, MKL_INT* info );
void __stdcall zggbal( const char* job, int job_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* ilo, MKL_INT* ihi, double* lscale, double* rscale,
                       double* work, MKL_INT* info );
void __stdcall zggbal_( const char* job, int job_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* ilo, MKL_INT* ihi, double* lscale, double* rscale,
                        double* work, MKL_INT* info );

void __stdcall ZGGES( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                      MKL_Z_SELECT_FUNCTION_2 selctg, const MKL_INT* n, MKL_Complex16* a,
                      const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                      MKL_INT* sdim, MKL_Complex16* alpha, MKL_Complex16* beta,
                      MKL_Complex16* vsl, const MKL_INT* ldvsl, MKL_Complex16* vsr,
                      const MKL_INT* ldvsr, MKL_Complex16* work, const MKL_INT* lwork,
                      double* rwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall ZGGES_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_Z_SELECT_FUNCTION_2 selctg, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* sdim, MKL_Complex16* alpha,
                       MKL_Complex16* beta, MKL_Complex16* vsl, const MKL_INT* ldvsl,
                       MKL_Complex16* vsr, const MKL_INT* ldvsr, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, MKL_INT* bwork,
                       MKL_INT* info );
void __stdcall zgges( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                      MKL_Z_SELECT_FUNCTION_2 selctg, const MKL_INT* n, MKL_Complex16* a,
                      const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                      MKL_INT* sdim, MKL_Complex16* alpha, MKL_Complex16* beta,
                      MKL_Complex16* vsl, const MKL_INT* ldvsl, MKL_Complex16* vsr,
                      const MKL_INT* ldvsr, MKL_Complex16* work, const MKL_INT* lwork,
                      double* rwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall zgges_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_Z_SELECT_FUNCTION_2 selctg, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* sdim, MKL_Complex16* alpha,
                       MKL_Complex16* beta, MKL_Complex16* vsl, const MKL_INT* ldvsl,
                       MKL_Complex16* vsr, const MKL_INT* ldvsr, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, MKL_INT* bwork,
                       MKL_INT* info );

void __stdcall ZGGESX( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_Z_SELECT_FUNCTION_2 selctg, const char* sense, int sense_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* sdim,
                       MKL_Complex16* alpha, MKL_Complex16* beta, MKL_Complex16* vsl,
                       const MKL_INT* ldvsl, MKL_Complex16* vsr, const MKL_INT* ldvsr,
                       double* rconde, double* rcondv, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall ZGGESX_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                        MKL_Z_SELECT_FUNCTION_2 selctg, const char* sense, int sense_len,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* sdim,
                        MKL_Complex16* alpha, MKL_Complex16* beta, MKL_Complex16* vsl,
                        const MKL_INT* ldvsl, MKL_Complex16* vsr, const MKL_INT* ldvsr,
                        double* rconde, double* rcondv, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall zggesx( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                       MKL_Z_SELECT_FUNCTION_2 selctg, const char* sense, int sense_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* sdim,
                       MKL_Complex16* alpha, MKL_Complex16* beta, MKL_Complex16* vsl,
                       const MKL_INT* ldvsl, MKL_Complex16* vsr, const MKL_INT* ldvsr,
                       double* rconde, double* rcondv, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall zggesx_( const char* jobvsl, int jobvsl_len, const char* jobvsr, int jobvsr_len, const char* sort, int sort_len,
                        MKL_Z_SELECT_FUNCTION_2 selctg, const char* sense, int sense_len,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* sdim,
                        MKL_Complex16* alpha, MKL_Complex16* beta, MKL_Complex16* vsl,
                        const MKL_INT* ldvsl, MKL_Complex16* vsr, const MKL_INT* ldvsr,
                        double* rconde, double* rcondv, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* bwork, MKL_INT* info );

void __stdcall ZGGEV( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                      MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                      const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                      double* rwork, MKL_INT* info );
void __stdcall ZGGEV_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                       MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                       const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );
void __stdcall zggev( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                      MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                      const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                      double* rwork, MKL_INT* info );
void __stdcall zggev_( const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* alpha, MKL_Complex16* beta,
                       MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                       const MKL_INT* ldvr, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );

void __stdcall ZGGEVX( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* alpha, MKL_Complex16* beta, MKL_Complex16* vl,
                       const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                       MKL_INT* ilo, MKL_INT* ihi, double* lscale, double* rscale,
                       double* abnrm, double* bbnrm, double* rconde, double* rcondv,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* iwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall ZGGEVX_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* alpha, MKL_Complex16* beta, MKL_Complex16* vl,
                        const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, double* lscale, double* rscale,
                        double* abnrm, double* bbnrm, double* rconde, double* rcondv,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        MKL_INT* iwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall zggevx( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                       const char* sense, int sense_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* alpha, MKL_Complex16* beta, MKL_Complex16* vl,
                       const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                       MKL_INT* ilo, MKL_INT* ihi, double* lscale, double* rscale,
                       double* abnrm, double* bbnrm, double* rconde, double* rcondv,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* iwork, MKL_INT* bwork, MKL_INT* info );
void __stdcall zggevx_( const char* balanc, int balanc_len, const char* jobvl, int jobvl_len, const char* jobvr, int jobvr_len,
                        const char* sense, int sense_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* alpha, MKL_Complex16* beta, MKL_Complex16* vl,
                        const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                        MKL_INT* ilo, MKL_INT* ihi, double* lscale, double* rscale,
                        double* abnrm, double* bbnrm, double* rconde, double* rcondv,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        MKL_INT* iwork, MKL_INT* bwork, MKL_INT* info );

void __stdcall ZGGGLM( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* d, MKL_Complex16* x,
                       MKL_Complex16* y, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZGGGLM_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* d, MKL_Complex16* x,
                        MKL_Complex16* y, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zggglm( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* d, MKL_Complex16* x,
                       MKL_Complex16* y, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zggglm_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* d, MKL_Complex16* x,
                        MKL_Complex16* y, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall ZGGHRD( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_INT* info );
void __stdcall ZGGHRD_( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_INT* info );
void __stdcall zgghrd( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_INT* info );
void __stdcall zgghrd_( const char* compq, int compq_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_INT* info );

void __stdcall ZGGLSE( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* c, MKL_Complex16* d,
                       MKL_Complex16* x, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZGGLSE_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* c, MKL_Complex16* d,
                        MKL_Complex16* x, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zgglse( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* c, MKL_Complex16* d,
                       MKL_Complex16* x, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zgglse_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* p,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* c, MKL_Complex16* d,
                        MKL_Complex16* x, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall ZGGQRF( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* taua,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* taub,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGGQRF_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* taua,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* taub,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zggqrf( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* taua,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* taub,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zggqrf_( const MKL_INT* n, const MKL_INT* m, const MKL_INT* p,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* taua,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* taub,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGGRQF( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* taua,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* taub,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZGGRQF_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* taua,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* taub,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zggrqf( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* taua,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* taub,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zggrqf_( const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* taua,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* taub,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZGGSVD( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                       MKL_INT* l, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb, double* alpha, double* beta,
                       MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* v,
                       const MKL_INT* ldv, MKL_Complex16* q, const MKL_INT* ldq,
                       MKL_Complex16* work, double* rwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall ZGGSVD_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                        MKL_INT* l, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb, double* alpha,
                        double* beta, MKL_Complex16* u, const MKL_INT* ldu,
                        MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                        const MKL_INT* ldq, MKL_Complex16* work, double* rwork,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall zggsvd( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                       MKL_INT* l, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb, double* alpha, double* beta,
                       MKL_Complex16* u, const MKL_INT* ldu, MKL_Complex16* v,
                       const MKL_INT* ldv, MKL_Complex16* q, const MKL_INT* ldq,
                       MKL_Complex16* work, double* rwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall zggsvd_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* p, MKL_INT* k,
                        MKL_INT* l, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb, double* alpha,
                        double* beta, MKL_Complex16* u, const MKL_INT* ldu,
                        MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                        const MKL_INT* ldq, MKL_Complex16* work, double* rwork,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall ZGGSVP( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, const double* tola, const double* tolb,
                       MKL_INT* k, MKL_INT* l, MKL_Complex16* u, const MKL_INT* ldu,
                       MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                       const MKL_INT* ldq, MKL_INT* iwork, double* rwork,
                       MKL_Complex16* tau, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZGGSVP_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, const double* tola, const double* tolb,
                        MKL_INT* k, MKL_INT* l, MKL_Complex16* u, const MKL_INT* ldu,
                        MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                        const MKL_INT* ldq, MKL_INT* iwork, double* rwork,
                        MKL_Complex16* tau, MKL_Complex16* work, MKL_INT* info );
void __stdcall zggsvp( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, const double* tola, const double* tolb,
                       MKL_INT* k, MKL_INT* l, MKL_Complex16* u, const MKL_INT* ldu,
                       MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                       const MKL_INT* ldq, MKL_INT* iwork, double* rwork,
                       MKL_Complex16* tau, MKL_Complex16* work, MKL_INT* info );
void __stdcall zggsvp_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, const double* tola, const double* tolb,
                        MKL_INT* k, MKL_INT* l, MKL_Complex16* u, const MKL_INT* ldu,
                        MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                        const MKL_INT* ldq, MKL_INT* iwork, double* rwork,
                        MKL_Complex16* tau, MKL_Complex16* work, MKL_INT* info );

void __stdcall ZGTCON( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* dl,
                       const MKL_Complex16* d, const MKL_Complex16* du,
                       const MKL_Complex16* du2, const MKL_INT* ipiv,
                       const double* anorm, double* rcond, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall ZGTCON_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* dl,
                        const MKL_Complex16* d, const MKL_Complex16* du,
                        const MKL_Complex16* du2, const MKL_INT* ipiv,
                        const double* anorm, double* rcond, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall zgtcon( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* dl,
                       const MKL_Complex16* d, const MKL_Complex16* du,
                       const MKL_Complex16* du2, const MKL_INT* ipiv,
                       const double* anorm, double* rcond, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall zgtcon_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* dl,
                        const MKL_Complex16* d, const MKL_Complex16* du,
                        const MKL_Complex16* du2, const MKL_INT* ipiv,
                        const double* anorm, double* rcond, MKL_Complex16* work,
                        MKL_INT* info );

void __stdcall ZGTRFS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* dl, const MKL_Complex16* d,
                       const MKL_Complex16* du, const MKL_Complex16* dlf,
                       const MKL_Complex16* df, const MKL_Complex16* duf,
                       const MKL_Complex16* du2, const MKL_INT* ipiv,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZGTRFS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* dl, const MKL_Complex16* d,
                        const MKL_Complex16* du, const MKL_Complex16* dlf,
                        const MKL_Complex16* df, const MKL_Complex16* duf,
                        const MKL_Complex16* du2, const MKL_INT* ipiv,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgtrfs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* dl, const MKL_Complex16* d,
                       const MKL_Complex16* du, const MKL_Complex16* dlf,
                       const MKL_Complex16* df, const MKL_Complex16* duf,
                       const MKL_Complex16* du2, const MKL_INT* ipiv,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zgtrfs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* dl, const MKL_Complex16* d,
                        const MKL_Complex16* du, const MKL_Complex16* dlf,
                        const MKL_Complex16* df, const MKL_Complex16* duf,
                        const MKL_Complex16* du2, const MKL_INT* ipiv,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZGTSV( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* dl,
                      MKL_Complex16* d, MKL_Complex16* du, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZGTSV_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* dl,
                       MKL_Complex16* d, MKL_Complex16* du, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zgtsv( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* dl,
                      MKL_Complex16* d, MKL_Complex16* du, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall zgtsv_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* dl,
                       MKL_Complex16* d, MKL_Complex16* du, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZGTSVX( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex16* dl,
                       const MKL_Complex16* d, const MKL_Complex16* du,
                       MKL_Complex16* dlf, MKL_Complex16* df, MKL_Complex16* duf,
                       MKL_Complex16* du2, MKL_INT* ipiv, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                       double* rcond, double* ferr, double* berr, MKL_Complex16* work,
                       double* rwork, MKL_INT* info );
void __stdcall ZGTSVX_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* dl,
                        const MKL_Complex16* d, const MKL_Complex16* du,
                        MKL_Complex16* dlf, MKL_Complex16* df, MKL_Complex16* duf,
                        MKL_Complex16* du2, MKL_INT* ipiv, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        double* rcond, double* ferr, double* berr, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall zgtsvx( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex16* dl,
                       const MKL_Complex16* d, const MKL_Complex16* du,
                       MKL_Complex16* dlf, MKL_Complex16* df, MKL_Complex16* duf,
                       MKL_Complex16* du2, MKL_INT* ipiv, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                       double* rcond, double* ferr, double* berr, MKL_Complex16* work,
                       double* rwork, MKL_INT* info );
void __stdcall zgtsvx_( const char* fact, int fact_len, const char* trans, int trans_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* dl,
                        const MKL_Complex16* d, const MKL_Complex16* du,
                        MKL_Complex16* dlf, MKL_Complex16* df, MKL_Complex16* duf,
                        MKL_Complex16* du2, MKL_INT* ipiv, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        double* rcond, double* ferr, double* berr, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );

void __stdcall ZGTTRF( const MKL_INT* n, MKL_Complex16* dl, MKL_Complex16* d,
                       MKL_Complex16* du, MKL_Complex16* du2, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall ZGTTRF_( const MKL_INT* n, MKL_Complex16* dl, MKL_Complex16* d,
                        MKL_Complex16* du, MKL_Complex16* du2, MKL_INT* ipiv,
                        MKL_INT* info );
void __stdcall zgttrf( const MKL_INT* n, MKL_Complex16* dl, MKL_Complex16* d,
                       MKL_Complex16* du, MKL_Complex16* du2, MKL_INT* ipiv,
                       MKL_INT* info );
void __stdcall zgttrf_( const MKL_INT* n, MKL_Complex16* dl, MKL_Complex16* d,
                        MKL_Complex16* du, MKL_Complex16* du2, MKL_INT* ipiv,
                        MKL_INT* info );

void __stdcall ZGTTRS( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* dl, const MKL_Complex16* d,
                       const MKL_Complex16* du, const MKL_Complex16* du2,
                       const MKL_INT* ipiv, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall ZGTTRS_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* dl, const MKL_Complex16* d,
                        const MKL_Complex16* du, const MKL_Complex16* du2,
                        const MKL_INT* ipiv, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall zgttrs( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* dl, const MKL_Complex16* d,
                       const MKL_Complex16* du, const MKL_Complex16* du2,
                       const MKL_INT* ipiv, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall zgttrs_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* dl, const MKL_Complex16* d,
                        const MKL_Complex16* du, const MKL_Complex16* du2,
                        const MKL_INT* ipiv, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* info );

void __stdcall ZGTTS2( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* dl, const MKL_Complex16* d,
                       const MKL_Complex16* du, const MKL_Complex16* du2,
                       const MKL_INT* ipiv, MKL_Complex16* b, const MKL_INT* ldb );
void __stdcall ZGTTS2_( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* dl, const MKL_Complex16* d,
                        const MKL_Complex16* du, const MKL_Complex16* du2,
                        const MKL_INT* ipiv, MKL_Complex16* b, const MKL_INT* ldb );
void __stdcall zgtts2( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* dl, const MKL_Complex16* d,
                       const MKL_Complex16* du, const MKL_Complex16* du2,
                       const MKL_INT* ipiv, MKL_Complex16* b, const MKL_INT* ldb );
void __stdcall zgtts2_( const MKL_INT* itrans, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* dl, const MKL_Complex16* d,
                        const MKL_Complex16* du, const MKL_Complex16* du2,
                        const MKL_INT* ipiv, MKL_Complex16* b, const MKL_INT* ldb );

void __stdcall ZHBEVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex16* ab, const MKL_INT* ldab,
                       double* w, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall ZHBEVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, MKL_Complex16* ab, const MKL_INT* ldab,
                        double* w, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall zhbevd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex16* ab, const MKL_INT* ldab,
                       double* w, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall zhbevd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, MKL_Complex16* ab, const MKL_INT* ldab,
                        double* w, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall ZHBEV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* kd, MKL_Complex16* ab, const MKL_INT* ldab,
                      double* w, MKL_Complex16* z, const MKL_INT* ldz,
                      MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZHBEV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex16* ab, const MKL_INT* ldab,
                       double* w, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zhbev( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* kd, MKL_Complex16* ab, const MKL_INT* ldab,
                      double* w, MKL_Complex16* z, const MKL_INT* ldz,
                      MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zhbev_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex16* ab, const MKL_INT* ldab,
                       double* w, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZHBEVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* kd, MKL_Complex16* ab,
                       const MKL_INT* ldab, MKL_Complex16* q, const MKL_INT* ldq,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       double* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall ZHBEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* kd, MKL_Complex16* ab,
                        const MKL_INT* ldab, MKL_Complex16* q, const MKL_INT* ldq,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                        double* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall zhbevx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* kd, MKL_Complex16* ab,
                       const MKL_INT* ldab, MKL_Complex16* q, const MKL_INT* ldq,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       double* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall zhbevx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* kd, MKL_Complex16* ab,
                        const MKL_INT* ldab, MKL_Complex16* q, const MKL_INT* ldq,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                        double* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall ZHBGST( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, MKL_Complex16* ab,
                       const MKL_INT* ldab, const MKL_Complex16* bb, const MKL_INT* ldbb,
                       MKL_Complex16* x, const MKL_INT* ldx, MKL_Complex16* work,
                       double* rwork, MKL_INT* info );
void __stdcall ZHBGST_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, MKL_Complex16* ab,
                        const MKL_INT* ldab, const MKL_Complex16* bb,
                        const MKL_INT* ldbb, MKL_Complex16* x, const MKL_INT* ldx,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zhbgst( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, MKL_Complex16* ab,
                       const MKL_INT* ldab, const MKL_Complex16* bb, const MKL_INT* ldbb,
                       MKL_Complex16* x, const MKL_INT* ldx, MKL_Complex16* work,
                       double* rwork, MKL_INT* info );
void __stdcall zhbgst_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, MKL_Complex16* ab,
                        const MKL_INT* ldab, const MKL_Complex16* bb,
                        const MKL_INT* ldbb, MKL_Complex16* x, const MKL_INT* ldx,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZHBGVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, MKL_Complex16* ab,
                       const MKL_INT* ldab, MKL_Complex16* bb, const MKL_INT* ldbb,
                       double* w, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall ZHBGVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, MKL_Complex16* ab,
                        const MKL_INT* ldab, MKL_Complex16* bb, const MKL_INT* ldbb,
                        double* w, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall zhbgvd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, MKL_Complex16* ab,
                       const MKL_INT* ldab, MKL_Complex16* bb, const MKL_INT* ldbb,
                       double* w, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall zhbgvd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* ka, const MKL_INT* kb, MKL_Complex16* ab,
                        const MKL_INT* ldab, MKL_Complex16* bb, const MKL_INT* ldbb,
                        double* w, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall ZHBGV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* ka, const MKL_INT* kb, MKL_Complex16* ab,
                      const MKL_INT* ldab, MKL_Complex16* bb, const MKL_INT* ldbb,
                      double* w, MKL_Complex16* z, const MKL_INT* ldz,
                      MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZHBGV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, MKL_Complex16* ab,
                       const MKL_INT* ldab, MKL_Complex16* bb, const MKL_INT* ldbb,
                       double* w, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zhbgv( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      const MKL_INT* ka, const MKL_INT* kb, MKL_Complex16* ab,
                      const MKL_INT* ldab, MKL_Complex16* bb, const MKL_INT* ldbb,
                      double* w, MKL_Complex16* z, const MKL_INT* ldz,
                      MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zhbgv_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* ka, const MKL_INT* kb, MKL_Complex16* ab,
                       const MKL_INT* ldab, MKL_Complex16* bb, const MKL_INT* ldbb,
                       double* w, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZHBGVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                       MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* bb,
                       const MKL_INT* ldbb, MKL_Complex16* q, const MKL_INT* ldq,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       double* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall ZHBGVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                        MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* bb,
                        const MKL_INT* ldbb, MKL_Complex16* q, const MKL_INT* ldq,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                        double* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall zhbgvx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                       MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* bb,
                       const MKL_INT* ldbb, MKL_Complex16* q, const MKL_INT* ldq,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       double* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall zhbgvx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, const MKL_INT* ka, const MKL_INT* kb,
                        MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* bb,
                        const MKL_INT* ldbb, MKL_Complex16* q, const MKL_INT* ldq,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                        double* rwork, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall ZHBTRD( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex16* ab, const MKL_INT* ldab,
                       double* d, double* e, MKL_Complex16* q, const MKL_INT* ldq,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZHBTRD_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, MKL_Complex16* ab, const MKL_INT* ldab,
                        double* d, double* e, MKL_Complex16* q, const MKL_INT* ldq,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zhbtrd( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex16* ab, const MKL_INT* ldab,
                       double* d, double* e, MKL_Complex16* q, const MKL_INT* ldq,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zhbtrd_( const char* vect, int vect_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, MKL_Complex16* ab, const MKL_INT* ldab,
                        double* d, double* e, MKL_Complex16* q, const MKL_INT* ldq,
                        MKL_Complex16* work, MKL_INT* info );

void __stdcall ZHECON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                       double* rcond, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZHECON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                        double* rcond, MKL_Complex16* work, MKL_INT* info );
void __stdcall zhecon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                       double* rcond, MKL_Complex16* work, MKL_INT* info );
void __stdcall zhecon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                        double* rcond, MKL_Complex16* work, MKL_INT* info );

void __stdcall ZHEEQUB( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, double* s, double* scond, double* amax,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall ZHEEQUB_( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                         const MKL_INT* lda, double* s, double* scond, double* amax,
                         MKL_Complex16* work, MKL_INT* info );
void __stdcall zheequb( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, double* s, double* scond, double* amax,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zheequb_( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                         const MKL_INT* lda, double* s, double* scond, double* amax,
                         MKL_Complex16* work, MKL_INT* info );

void __stdcall ZHEEVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, double* w,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall ZHEEVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, double* w,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall zheevd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, double* w,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall zheevd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, double* w,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall ZHEEV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      MKL_Complex16* a, const MKL_INT* lda, double* w,
                      MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                      MKL_INT* info );
void __stdcall ZHEEV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, double* w,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* info );
void __stdcall zheev( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      MKL_Complex16* a, const MKL_INT* lda, double* w,
                      MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                      MKL_INT* info );
void __stdcall zheev_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, double* w,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* info );

void __stdcall ZHEEVR( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_INT* isuppz,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall ZHEEVR_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_INT* isuppz,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall zheevr( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_INT* isuppz,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall zheevr_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_INT* isuppz,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall ZHEEVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall ZHEEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );
void __stdcall zheevx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall zheevx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );

void __stdcall ZHEGS2( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZHEGS2_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhegs2( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhegs2_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZHEGST( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZHEGST_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhegst( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhegst_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZHEGVD( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb, double* w,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall ZHEGVD_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb, double* w,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall zhegvd( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb, double* w,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                       MKL_INT* info );
void __stdcall zhegvd_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb, double* w,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall ZHEGV( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                      MKL_Complex16* b, const MKL_INT* ldb, double* w,
                      MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                      MKL_INT* info );
void __stdcall ZHEGV_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb, double* w,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* info );
void __stdcall zhegv( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                      MKL_Complex16* b, const MKL_INT* ldb, double* w,
                      MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                      MKL_INT* info );
void __stdcall zhegv_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, const MKL_INT* ldb, double* w,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* info );

void __stdcall ZHEGVX( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall ZHEGVX_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );
void __stdcall zhegvx( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall zhegvx_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );

void __stdcall ZHERFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZHERFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zherfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zherfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZHERFSX( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_INT* ipiv, const double* s, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        double* rcond, double* berr, const MKL_INT* n_err_bnds,
                        double* err_bnds_norm, double* err_bnds_comp,
                        const MKL_INT* nparams, double* params, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall ZHERFSX_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* af, const MKL_INT* ldaf,
                         const MKL_INT* ipiv, const double* s, const MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                         double* rcond, double* berr, const MKL_INT* n_err_bnds,
                         double* err_bnds_norm, double* err_bnds_comp,
                         const MKL_INT* nparams, double* params, MKL_Complex16* work,
                         double* rwork, MKL_INT* info );
void __stdcall zherfsx( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_INT* ipiv, const double* s, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        double* rcond, double* berr, const MKL_INT* n_err_bnds,
                        double* err_bnds_norm, double* err_bnds_comp,
                        const MKL_INT* nparams, double* params, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall zherfsx_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* af, const MKL_INT* ldaf,
                         const MKL_INT* ipiv, const double* s, const MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                         double* rcond, double* berr, const MKL_INT* n_err_bnds,
                         double* err_bnds_norm, double* err_bnds_comp,
                         const MKL_INT* nparams, double* params, MKL_Complex16* work,
                         double* rwork, MKL_INT* info );

void __stdcall ZHESV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                      MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZHESV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhesv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                      MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhesv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZHESVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* info );
void __stdcall ZHESVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        MKL_INT* info );
void __stdcall zhesvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* info );
void __stdcall zhesvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        MKL_INT* info );

void __stdcall ZHESVXX( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                        double* err_bnds_norm, double* err_bnds_comp,
                        const MKL_INT* nparams, double* params, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall ZHESVXX_( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                         char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                         double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                         double* err_bnds_norm, double* err_bnds_comp,
                         const MKL_INT* nparams, double* params, MKL_Complex16* work,
                         double* rwork, MKL_INT* info );
void __stdcall zhesvxx( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                        double* err_bnds_norm, double* err_bnds_comp,
                        const MKL_INT* nparams, double* params, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall zhesvxx_( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                         char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                         double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                         double* err_bnds_norm, double* err_bnds_comp,
                         const MKL_INT* nparams, double* params, MKL_Complex16* work,
                         double* rwork, MKL_INT* info );

void __stdcall ZHETD2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, double* d, double* e, MKL_Complex16* tau,
                       MKL_INT* info );
void __stdcall ZHETD2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, double* d, double* e, MKL_Complex16* tau,
                        MKL_INT* info );
void __stdcall zhetd2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, double* d, double* e, MKL_Complex16* tau,
                       MKL_INT* info );
void __stdcall zhetd2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, double* d, double* e, MKL_Complex16* tau,
                        MKL_INT* info );

void __stdcall ZHETF2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZHETF2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zhetf2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zhetf2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall ZHETRD( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, double* d, double* e, MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZHETRD_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, double* d, double* e, MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetrd( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, double* d, double* e, MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetrd_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, double* d, double* e, MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZHETRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZHETRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZHETRI( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall ZHETRI_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall zhetri( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall zhetri_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                        MKL_INT* info );

void __stdcall ZHETRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZHETRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhetrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhetrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZHFRK( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                      const MKL_INT* n, const MKL_INT* k, const double* alpha,
                      const MKL_Complex16* a, const MKL_INT* lda, const double* beta,
                      MKL_Complex16* c );
void __stdcall ZHFRK_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* n, const MKL_INT* k, const double* alpha,
                       const MKL_Complex16* a, const MKL_INT* lda, const double* beta,
                       MKL_Complex16* c );
void __stdcall zhfrk( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                      const MKL_INT* n, const MKL_INT* k, const double* alpha,
                      const MKL_Complex16* a, const MKL_INT* lda, const double* beta,
                      MKL_Complex16* c );
void __stdcall zhfrk_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* n, const MKL_INT* k, const double* alpha,
                       const MKL_Complex16* a, const MKL_INT* lda, const double* beta,
                       MKL_Complex16* c );

void __stdcall ZHGEQZ( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex16* h, const MKL_INT* ldh, MKL_Complex16* t,
                       const MKL_INT* ldt, MKL_Complex16* alpha, MKL_Complex16* beta,
                       MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );
void __stdcall ZHGEQZ_( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex16* h, const MKL_INT* ldh, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_Complex16* alpha, MKL_Complex16* beta,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* info );
void __stdcall zhgeqz( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex16* h, const MKL_INT* ldh, MKL_Complex16* t,
                       const MKL_INT* ldt, MKL_Complex16* alpha, MKL_Complex16* beta,
                       MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, MKL_INT* info );
void __stdcall zhgeqz_( const char* job, int job_len, const char* compq, int compq_len, const char* compz, int compz_len,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex16* h, const MKL_INT* ldh, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_Complex16* alpha, MKL_Complex16* beta,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, MKL_INT* info );

void __stdcall ZHPCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                       const MKL_INT* ipiv, const double* anorm, double* rcond,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZHPCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                        const MKL_INT* ipiv, const double* anorm, double* rcond,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zhpcon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                       const MKL_INT* ipiv, const double* anorm, double* rcond,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zhpcon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                        const MKL_INT* ipiv, const double* anorm, double* rcond,
                        MKL_Complex16* work, MKL_INT* info );

void __stdcall ZHPEVD( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* ap, double* w, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, const MKL_INT* lrwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall ZHPEVD_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* ap, double* w, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, const MKL_INT* lrwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* info );
void __stdcall zhpevd( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* ap, double* w, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                       double* rwork, const MKL_INT* lrwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall zhpevd_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* ap, double* w, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                        double* rwork, const MKL_INT* lrwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* info );

void __stdcall ZHPEV( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      MKL_Complex16* ap, double* w, MKL_Complex16* z, const MKL_INT* ldz,
                      MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZHPEV_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* ap, double* w, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );
void __stdcall zhpev( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                      MKL_Complex16* ap, double* w, MKL_Complex16* z, const MKL_INT* ldz,
                      MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zhpev_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* ap, double* w, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );

void __stdcall ZHPEVX( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* ap, const double* vl,
                       const double* vu, const MKL_INT* il, const MKL_INT* iu,
                       const double* abstol, MKL_INT* m, double* w, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* work, double* rwork,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall ZHPEVX_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex16* ap, const double* vl,
                        const double* vu, const MKL_INT* il, const MKL_INT* iu,
                        const double* abstol, MKL_INT* m, double* w, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_Complex16* work, double* rwork,
                        MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall zhpevx( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* ap, const double* vl,
                       const double* vu, const MKL_INT* il, const MKL_INT* iu,
                       const double* abstol, MKL_INT* m, double* w, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* work, double* rwork,
                       MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall zhpevx_( const char* jobz, int jobz_len, const char* range, int range_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex16* ap, const double* vl,
                        const double* vu, const MKL_INT* il, const MKL_INT* iu,
                        const double* abstol, MKL_INT* m, double* w, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_Complex16* work, double* rwork,
                        MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall ZHPGST( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* ap, const MKL_Complex16* bp, MKL_INT* info );
void __stdcall ZHPGST_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* ap, const MKL_Complex16* bp, MKL_INT* info );
void __stdcall zhpgst( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* ap, const MKL_Complex16* bp, MKL_INT* info );
void __stdcall zhpgst_( const MKL_INT* itype, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* ap, const MKL_Complex16* bp, MKL_INT* info );

void __stdcall ZHPGVD( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* ap, MKL_Complex16* bp, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall ZHPGVD_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex16* ap, MKL_Complex16* bp,
                        double* w, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );
void __stdcall zhpgvd( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* ap, MKL_Complex16* bp, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall zhpgvd_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                        const MKL_INT* n, MKL_Complex16* ap, MKL_Complex16* bp,
                        double* w, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        const MKL_INT* lrwork, MKL_INT* iwork, const MKL_INT* liwork,
                        MKL_INT* info );

void __stdcall ZHPGV( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, MKL_Complex16* ap, MKL_Complex16* bp, double* w,
                      MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                      double* rwork, MKL_INT* info );
void __stdcall ZHPGV_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* ap, MKL_Complex16* bp, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       double* rwork, MKL_INT* info );
void __stdcall zhpgv( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                      const MKL_INT* n, MKL_Complex16* ap, MKL_Complex16* bp, double* w,
                      MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                      double* rwork, MKL_INT* info );
void __stdcall zhpgv_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* uplo, int uplo_len,
                       const MKL_INT* n, MKL_Complex16* ap, MKL_Complex16* bp, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       double* rwork, MKL_INT* info );

void __stdcall ZHPGVX( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       MKL_Complex16* bp, const double* vl, const double* vu,
                       const MKL_INT* il, const MKL_INT* iu, const double* abstol,
                       MKL_INT* m, double* w, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, double* rwork, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall ZHPGVX_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        MKL_Complex16* bp, const double* vl, const double* vu,
                        const MKL_INT* il, const MKL_INT* iu, const double* abstol,
                        MKL_INT* m, double* w, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, double* rwork, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );
void __stdcall zhpgvx( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                       const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       MKL_Complex16* bp, const double* vl, const double* vu,
                       const MKL_INT* il, const MKL_INT* iu, const double* abstol,
                       MKL_INT* m, double* w, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, double* rwork, MKL_INT* iwork,
                       MKL_INT* ifail, MKL_INT* info );
void __stdcall zhpgvx_( const MKL_INT* itype, const char* jobz, int jobz_len, const char* range, int range_len,
                        const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        MKL_Complex16* bp, const double* vl, const double* vu,
                        const MKL_INT* il, const MKL_INT* iu, const double* abstol,
                        MKL_INT* m, double* w, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, double* rwork, MKL_INT* iwork,
                        MKL_INT* ifail, MKL_INT* info );

void __stdcall ZHPRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* ap, const MKL_Complex16* afp,
                       const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZHPRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* ap, const MKL_Complex16* afp,
                        const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zhprfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* ap, const MKL_Complex16* afp,
                       const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zhprfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* ap, const MKL_Complex16* afp,
                        const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZHPSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex16* ap, MKL_INT* ipiv, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZHPSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* ap, MKL_INT* ipiv, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhpsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex16* ap, MKL_INT* ipiv, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhpsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* ap, MKL_INT* ipiv, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZHPSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex16* ap, MKL_Complex16* afp,
                       MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* rcond, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZHPSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* ap, MKL_Complex16* afp,
                        MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );
void __stdcall zhpsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex16* ap, MKL_Complex16* afp,
                       MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* rcond, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zhpsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* ap, MKL_Complex16* afp,
                        MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );

void __stdcall ZHPTRD( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap, double* d,
                       double* e, MKL_Complex16* tau, MKL_INT* info );
void __stdcall ZHPTRD_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap, double* d,
                        double* e, MKL_Complex16* tau, MKL_INT* info );
void __stdcall zhptrd( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap, double* d,
                       double* e, MKL_Complex16* tau, MKL_INT* info );
void __stdcall zhptrd_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap, double* d,
                        double* e, MKL_Complex16* tau, MKL_INT* info );

void __stdcall ZHPTRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZHPTRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall zhptrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall zhptrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall ZHPTRI( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       const MKL_INT* ipiv, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZHPTRI_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        const MKL_INT* ipiv, MKL_Complex16* work, MKL_INT* info );
void __stdcall zhptri( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       const MKL_INT* ipiv, MKL_Complex16* work, MKL_INT* info );
void __stdcall zhptri_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        const MKL_INT* ipiv, MKL_Complex16* work, MKL_INT* info );

void __stdcall ZHPTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* ap, const MKL_INT* ipiv, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZHPTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* ap, const MKL_INT* ipiv, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhptrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* ap, const MKL_INT* ipiv, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zhptrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* ap, const MKL_INT* ipiv, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZHSEIN( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                       const MKL_INT* select, const MKL_INT* n, const MKL_Complex16* h,
                       const MKL_INT* ldh, MKL_Complex16* w, MKL_Complex16* vl,
                       const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work, double* rwork,
                       MKL_INT* ifaill, MKL_INT* ifailr, MKL_INT* info );
void __stdcall ZHSEIN_( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                        const MKL_INT* select, const MKL_INT* n, const MKL_Complex16* h,
                        const MKL_INT* ldh, MKL_Complex16* w, MKL_Complex16* vl,
                        const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                        double* rwork, MKL_INT* ifaill, MKL_INT* ifailr, MKL_INT* info );
void __stdcall zhsein( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                       const MKL_INT* select, const MKL_INT* n, const MKL_Complex16* h,
                       const MKL_INT* ldh, MKL_Complex16* w, MKL_Complex16* vl,
                       const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work, double* rwork,
                       MKL_INT* ifaill, MKL_INT* ifailr, MKL_INT* info );
void __stdcall zhsein_( const char* side, int side_len, const char* eigsrc, int eigsrc_len, const char* initv, int initv_len,
                        const MKL_INT* select, const MKL_INT* n, const MKL_Complex16* h,
                        const MKL_INT* ldh, MKL_Complex16* w, MKL_Complex16* vl,
                        const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                        double* rwork, MKL_INT* ifaill, MKL_INT* ifailr, MKL_INT* info );

void __stdcall ZHSEQR( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                       const MKL_INT* ldh, MKL_Complex16* w, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZHSEQR_( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                        const MKL_INT* ldh, MKL_Complex16* w, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zhseqr( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                       const MKL_INT* ldh, MKL_Complex16* w, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zhseqr_( const char* job, int job_len, const char* compz, int compz_len, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                        const MKL_INT* ldh, MKL_Complex16* w, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall ZLABRD( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                       MKL_Complex16* a, const MKL_INT* lda, double* d, double* e,
                       MKL_Complex16* tauq, MKL_Complex16* taup, MKL_Complex16* x,
                       const MKL_INT* ldx, MKL_Complex16* y, const MKL_INT* ldy );
void __stdcall ZLABRD_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                        MKL_Complex16* a, const MKL_INT* lda, double* d, double* e,
                        MKL_Complex16* tauq, MKL_Complex16* taup, MKL_Complex16* x,
                        const MKL_INT* ldx, MKL_Complex16* y, const MKL_INT* ldy );
void __stdcall zlabrd( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                       MKL_Complex16* a, const MKL_INT* lda, double* d, double* e,
                       MKL_Complex16* tauq, MKL_Complex16* taup, MKL_Complex16* x,
                       const MKL_INT* ldx, MKL_Complex16* y, const MKL_INT* ldy );
void __stdcall zlabrd_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* nb,
                        MKL_Complex16* a, const MKL_INT* lda, double* d, double* e,
                        MKL_Complex16* tauq, MKL_Complex16* taup, MKL_Complex16* x,
                        const MKL_INT* ldx, MKL_Complex16* y, const MKL_INT* ldy );

void __stdcall ZLACGV( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx );
void __stdcall ZLACGV_( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx );
void __stdcall zlacgv( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx );
void __stdcall zlacgv_( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx );

void __stdcall ZLACN2( const MKL_INT* n, MKL_Complex16* v, MKL_Complex16* x, double* est,
                       MKL_INT* kase, MKL_INT* isave );
void __stdcall ZLACN2_( const MKL_INT* n, MKL_Complex16* v, MKL_Complex16* x,
                        double* est, MKL_INT* kase, MKL_INT* isave );
void __stdcall zlacn2( const MKL_INT* n, MKL_Complex16* v, MKL_Complex16* x, double* est,
                       MKL_INT* kase, MKL_INT* isave );
void __stdcall zlacn2_( const MKL_INT* n, MKL_Complex16* v, MKL_Complex16* x,
                        double* est, MKL_INT* kase, MKL_INT* isave );

void __stdcall ZLACON( const MKL_INT* n, MKL_Complex16* v, MKL_Complex16* x, double* est,
                       MKL_INT* kase );
void __stdcall ZLACON_( const MKL_INT* n, MKL_Complex16* v, MKL_Complex16* x,
                        double* est, MKL_INT* kase );
void __stdcall zlacon( const MKL_INT* n, MKL_Complex16* v, MKL_Complex16* x, double* est,
                       MKL_INT* kase );
void __stdcall zlacon_( const MKL_INT* n, MKL_Complex16* v, MKL_Complex16* x,
                        double* est, MKL_INT* kase );

void __stdcall ZLACP2( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const double* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb );
void __stdcall ZLACP2_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const double* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb );
void __stdcall zlacp2( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const double* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb );
void __stdcall zlacp2_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const double* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb );

void __stdcall ZLACPY( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb );
void __stdcall ZLACPY_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb );
void __stdcall zlacpy( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb );
void __stdcall zlacpy_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb );

void __stdcall ZLACRM( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const double* b, const MKL_INT* ldb,
                       MKL_Complex16* c, const MKL_INT* ldc, double* rwork );
void __stdcall ZLACRM_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const double* b, const MKL_INT* ldb,
                        MKL_Complex16* c, const MKL_INT* ldc, double* rwork );
void __stdcall zlacrm( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const double* b, const MKL_INT* ldb,
                       MKL_Complex16* c, const MKL_INT* ldc, double* rwork );
void __stdcall zlacrm_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const double* b, const MKL_INT* ldb,
                        MKL_Complex16* c, const MKL_INT* ldc, double* rwork );

void __stdcall ZLACRT( const MKL_INT* n, MKL_Complex16* cx, const MKL_INT* incx,
                       MKL_Complex16* cy, const MKL_INT* incy, const MKL_Complex16* c,
                       const MKL_Complex16* s );
void __stdcall ZLACRT_( const MKL_INT* n, MKL_Complex16* cx, const MKL_INT* incx,
                        MKL_Complex16* cy, const MKL_INT* incy, const MKL_Complex16* c,
                        const MKL_Complex16* s );
void __stdcall zlacrt( const MKL_INT* n, MKL_Complex16* cx, const MKL_INT* incx,
                       MKL_Complex16* cy, const MKL_INT* incy, const MKL_Complex16* c,
                       const MKL_Complex16* s );
void __stdcall zlacrt_( const MKL_INT* n, MKL_Complex16* cx, const MKL_INT* incx,
                        MKL_Complex16* cy, const MKL_INT* incy, const MKL_Complex16* c,
                        const MKL_Complex16* s );

void __stdcall ZLADIV( MKL_Complex16* ret_value, const MKL_Complex16* x,
                       const MKL_Complex16* y );
void __stdcall ZLADIV_( MKL_Complex16* ret_value, const MKL_Complex16* x,
                        const MKL_Complex16* y );
void __stdcall zladiv( MKL_Complex16* ret_value, const MKL_Complex16* x,
                       const MKL_Complex16* y );
void __stdcall zladiv_( MKL_Complex16* ret_value, const MKL_Complex16* x,
                        const MKL_Complex16* y );

void __stdcall ZLAED0( const MKL_INT* qsiz, const MKL_INT* n, double* d, double* e,
                       MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* qstore,
                       const MKL_INT* ldqs, double* rwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall ZLAED0_( const MKL_INT* qsiz, const MKL_INT* n, double* d, double* e,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* qstore,
                        const MKL_INT* ldqs, double* rwork, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall zlaed0( const MKL_INT* qsiz, const MKL_INT* n, double* d, double* e,
                       MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* qstore,
                       const MKL_INT* ldqs, double* rwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall zlaed0_( const MKL_INT* qsiz, const MKL_INT* n, double* d, double* e,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* qstore,
                        const MKL_INT* ldqs, double* rwork, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall ZLAED7( const MKL_INT* n, const MKL_INT* cutpnt, const MKL_INT* qsiz,
                       const MKL_INT* tlvls, const MKL_INT* curlvl,
                       const MKL_INT* curpbm, double* d, MKL_Complex16* q,
                       const MKL_INT* ldq, const double* rho, MKL_INT* indxq,
                       double* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const double* givnum, MKL_Complex16* work, double* rwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall ZLAED7_( const MKL_INT* n, const MKL_INT* cutpnt, const MKL_INT* qsiz,
                        const MKL_INT* tlvls, const MKL_INT* curlvl,
                        const MKL_INT* curpbm, double* d, MKL_Complex16* q,
                        const MKL_INT* ldq, const double* rho, MKL_INT* indxq,
                        double* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const double* givnum, MKL_Complex16* work,
                        double* rwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall zlaed7( const MKL_INT* n, const MKL_INT* cutpnt, const MKL_INT* qsiz,
                       const MKL_INT* tlvls, const MKL_INT* curlvl,
                       const MKL_INT* curpbm, double* d, MKL_Complex16* q,
                       const MKL_INT* ldq, const double* rho, MKL_INT* indxq,
                       double* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const double* givnum, MKL_Complex16* work, double* rwork,
                       MKL_INT* iwork, MKL_INT* info );
void __stdcall zlaed7_( const MKL_INT* n, const MKL_INT* cutpnt, const MKL_INT* qsiz,
                        const MKL_INT* tlvls, const MKL_INT* curlvl,
                        const MKL_INT* curpbm, double* d, MKL_Complex16* q,
                        const MKL_INT* ldq, const double* rho, MKL_INT* indxq,
                        double* qstore, MKL_INT* qptr, const MKL_INT* prmptr,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const double* givnum, MKL_Complex16* work,
                        double* rwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall ZLAED8( MKL_INT* k, const MKL_INT* n, const MKL_INT* qsiz,
                       MKL_Complex16* q, const MKL_INT* ldq, double* d, double* rho,
                       const MKL_INT* cutpnt, const double* z, double* dlamda,
                       MKL_Complex16* q2, const MKL_INT* ldq2, double* w, MKL_INT* indxp,
                       MKL_INT* indx, const MKL_INT* indxq, MKL_INT* perm,
                       MKL_INT* givptr, MKL_INT* givcol, double* givnum, MKL_INT* info );
void __stdcall ZLAED8_( MKL_INT* k, const MKL_INT* n, const MKL_INT* qsiz,
                        MKL_Complex16* q, const MKL_INT* ldq, double* d, double* rho,
                        const MKL_INT* cutpnt, const double* z, double* dlamda,
                        MKL_Complex16* q2, const MKL_INT* ldq2, double* w,
                        MKL_INT* indxp, MKL_INT* indx, const MKL_INT* indxq,
                        MKL_INT* perm, MKL_INT* givptr, MKL_INT* givcol, double* givnum,
                        MKL_INT* info );
void __stdcall zlaed8( MKL_INT* k, const MKL_INT* n, const MKL_INT* qsiz,
                       MKL_Complex16* q, const MKL_INT* ldq, double* d, double* rho,
                       const MKL_INT* cutpnt, const double* z, double* dlamda,
                       MKL_Complex16* q2, const MKL_INT* ldq2, double* w, MKL_INT* indxp,
                       MKL_INT* indx, const MKL_INT* indxq, MKL_INT* perm,
                       MKL_INT* givptr, MKL_INT* givcol, double* givnum, MKL_INT* info );
void __stdcall zlaed8_( MKL_INT* k, const MKL_INT* n, const MKL_INT* qsiz,
                        MKL_Complex16* q, const MKL_INT* ldq, double* d, double* rho,
                        const MKL_INT* cutpnt, const double* z, double* dlamda,
                        MKL_Complex16* q2, const MKL_INT* ldq2, double* w,
                        MKL_INT* indxp, MKL_INT* indx, const MKL_INT* indxq,
                        MKL_INT* perm, MKL_INT* givptr, MKL_INT* givcol, double* givnum,
                        MKL_INT* info );

void __stdcall ZLAEIN( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                       const MKL_Complex16* h, const MKL_INT* ldh,
                       const MKL_Complex16* w, MKL_Complex16* v, MKL_Complex16* b,
                       const MKL_INT* ldb, double* rwork, const double* eps3,
                       const double* smlnum, MKL_INT* info );
void __stdcall ZLAEIN_( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                        const MKL_Complex16* h, const MKL_INT* ldh,
                        const MKL_Complex16* w, MKL_Complex16* v, MKL_Complex16* b,
                        const MKL_INT* ldb, double* rwork, const double* eps3,
                        const double* smlnum, MKL_INT* info );
void __stdcall zlaein( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                       const MKL_Complex16* h, const MKL_INT* ldh,
                       const MKL_Complex16* w, MKL_Complex16* v, MKL_Complex16* b,
                       const MKL_INT* ldb, double* rwork, const double* eps3,
                       const double* smlnum, MKL_INT* info );
void __stdcall zlaein_( const MKL_INT* rightv, const MKL_INT* noinit, const MKL_INT* n,
                        const MKL_Complex16* h, const MKL_INT* ldh,
                        const MKL_Complex16* w, MKL_Complex16* v, MKL_Complex16* b,
                        const MKL_INT* ldb, double* rwork, const double* eps3,
                        const double* smlnum, MKL_INT* info );

void __stdcall ZLAESY( const MKL_Complex16* a, const MKL_Complex16* b,
                       const MKL_Complex16* c, MKL_Complex16* rt1, MKL_Complex16* rt2,
                       MKL_Complex16* evscal, MKL_Complex16* cs1, MKL_Complex16* sn1 );
void __stdcall ZLAESY_( const MKL_Complex16* a, const MKL_Complex16* b,
                        const MKL_Complex16* c, MKL_Complex16* rt1, MKL_Complex16* rt2,
                        MKL_Complex16* evscal, MKL_Complex16* cs1, MKL_Complex16* sn1 );
void __stdcall zlaesy( const MKL_Complex16* a, const MKL_Complex16* b,
                       const MKL_Complex16* c, MKL_Complex16* rt1, MKL_Complex16* rt2,
                       MKL_Complex16* evscal, MKL_Complex16* cs1, MKL_Complex16* sn1 );
void __stdcall zlaesy_( const MKL_Complex16* a, const MKL_Complex16* b,
                        const MKL_Complex16* c, MKL_Complex16* rt1, MKL_Complex16* rt2,
                        MKL_Complex16* evscal, MKL_Complex16* cs1, MKL_Complex16* sn1 );

void __stdcall ZLAEV2( const MKL_Complex16* a, const MKL_Complex16* b,
                       const MKL_Complex16* c, double* rt1, double* rt2, double* cs1,
                       MKL_Complex16* sn1 );
void __stdcall ZLAEV2_( const MKL_Complex16* a, const MKL_Complex16* b,
                        const MKL_Complex16* c, double* rt1, double* rt2, double* cs1,
                        MKL_Complex16* sn1 );
void __stdcall zlaev2( const MKL_Complex16* a, const MKL_Complex16* b,
                       const MKL_Complex16* c, double* rt1, double* rt2, double* cs1,
                       MKL_Complex16* sn1 );
void __stdcall zlaev2_( const MKL_Complex16* a, const MKL_Complex16* b,
                        const MKL_Complex16* c, double* rt1, double* rt2, double* cs1,
                        MKL_Complex16* sn1 );

void __stdcall ZLAG2C( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex8* sa, const MKL_INT* ldsa,
                       MKL_INT* info );
void __stdcall ZLAG2C_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex8* sa, const MKL_INT* ldsa,
                        MKL_INT* info );
void __stdcall zlag2c( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex8* sa, const MKL_INT* ldsa,
                       MKL_INT* info );
void __stdcall zlag2c_( const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex8* sa, const MKL_INT* ldsa,
                        MKL_INT* info );

void __stdcall ZLAGS2( const MKL_INT* upper, const double* a1, const MKL_Complex16* a2,
                       const double* a3, const double* b1, const MKL_Complex16* b2,
                       const double* b3, double* csu, MKL_Complex16* snu, double* csv,
                       MKL_Complex16* snv, double* csq, MKL_Complex16* snq );
void __stdcall ZLAGS2_( const MKL_INT* upper, const double* a1, const MKL_Complex16* a2,
                        const double* a3, const double* b1, const MKL_Complex16* b2,
                        const double* b3, double* csu, MKL_Complex16* snu, double* csv,
                        MKL_Complex16* snv, double* csq, MKL_Complex16* snq );
void __stdcall zlags2( const MKL_INT* upper, const double* a1, const MKL_Complex16* a2,
                       const double* a3, const double* b1, const MKL_Complex16* b2,
                       const double* b3, double* csu, MKL_Complex16* snu, double* csv,
                       MKL_Complex16* snv, double* csq, MKL_Complex16* snq );
void __stdcall zlags2_( const MKL_INT* upper, const double* a1, const MKL_Complex16* a2,
                        const double* a3, const double* b1, const MKL_Complex16* b2,
                        const double* b3, double* csu, MKL_Complex16* snu, double* csv,
                        MKL_Complex16* snv, double* csq, MKL_Complex16* snq );

void __stdcall ZLAGTM( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* alpha, const MKL_Complex16* dl,
                       const MKL_Complex16* d, const MKL_Complex16* du,
                       const MKL_Complex16* x, const MKL_INT* ldx, const double* beta,
                       MKL_Complex16* b, const MKL_INT* ldb );
void __stdcall ZLAGTM_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* alpha, const MKL_Complex16* dl,
                        const MKL_Complex16* d, const MKL_Complex16* du,
                        const MKL_Complex16* x, const MKL_INT* ldx, const double* beta,
                        MKL_Complex16* b, const MKL_INT* ldb );
void __stdcall zlagtm( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* alpha, const MKL_Complex16* dl,
                       const MKL_Complex16* d, const MKL_Complex16* du,
                       const MKL_Complex16* x, const MKL_INT* ldx, const double* beta,
                       MKL_Complex16* b, const MKL_INT* ldb );
void __stdcall zlagtm_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* alpha, const MKL_Complex16* dl,
                        const MKL_Complex16* d, const MKL_Complex16* du,
                        const MKL_Complex16* x, const MKL_INT* ldx, const double* beta,
                        MKL_Complex16* b, const MKL_INT* ldb );

void __stdcall ZLAHEF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall ZLAHEF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                        MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall zlahef( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall zlahef_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                        MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall ZLAHQR( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                       const MKL_INT* ldh, MKL_Complex16* w, const MKL_INT* iloz,
                       const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_INT* info );
void __stdcall ZLAHQR_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                        const MKL_INT* ldh, MKL_Complex16* w, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_INT* info );
void __stdcall zlahqr( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                       const MKL_INT* ldh, MKL_Complex16* w, const MKL_INT* iloz,
                       const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_INT* info );
void __stdcall zlahqr_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                        const MKL_INT* ldh, MKL_Complex16* w, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_INT* info );

void __stdcall ZLAHR2( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                       MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* y,
                       const MKL_INT* ldy );
void __stdcall ZLAHR2_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                        MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* y,
                        const MKL_INT* ldy );
void __stdcall zlahr2( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                       MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* y,
                       const MKL_INT* ldy );
void __stdcall zlahr2_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                        MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* y,
                        const MKL_INT* ldy );

void __stdcall ZLAHRD( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                       MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* y,
                       const MKL_INT* ldy );
void __stdcall ZLAHRD_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                        MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* y,
                        const MKL_INT* ldy );
void __stdcall zlahrd( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                       MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* y,
                       const MKL_INT* ldy );
void __stdcall zlahrd_( const MKL_INT* n, const MKL_INT* k, const MKL_INT* nb,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                        MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* y,
                        const MKL_INT* ldy );

void __stdcall ZLAIC1( const MKL_INT* job, const MKL_INT* j, const MKL_Complex16* x,
                       const double* sest, const MKL_Complex16* w,
                       const MKL_Complex16* gamma, double* sestpr, MKL_Complex16* s,
                       MKL_Complex16* c );
void __stdcall ZLAIC1_( const MKL_INT* job, const MKL_INT* j, const MKL_Complex16* x,
                        const double* sest, const MKL_Complex16* w,
                        const MKL_Complex16* gamma, double* sestpr, MKL_Complex16* s,
                        MKL_Complex16* c );
void __stdcall zlaic1( const MKL_INT* job, const MKL_INT* j, const MKL_Complex16* x,
                       const double* sest, const MKL_Complex16* w,
                       const MKL_Complex16* gamma, double* sestpr, MKL_Complex16* s,
                       MKL_Complex16* c );
void __stdcall zlaic1_( const MKL_INT* job, const MKL_INT* j, const MKL_Complex16* x,
                        const double* sest, const MKL_Complex16* w,
                        const MKL_Complex16* gamma, double* sestpr, MKL_Complex16* s,
                        MKL_Complex16* c );

void __stdcall ZLALS0( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, const MKL_INT* nrhs, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* bx, const MKL_INT* ldbx,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const double* givnum,
                       const MKL_INT* ldgnum, const double* poles, const double* difl,
                       const double* difr, const double* z, const MKL_INT* k,
                       const double* c, const double* s, double* rwork, MKL_INT* info );
void __stdcall ZLALS0_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, const MKL_INT* nrhs, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* bx, const MKL_INT* ldbx,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const MKL_INT* ldgcol,
                        const double* givnum, const MKL_INT* ldgnum, const double* poles,
                        const double* difl, const double* difr, const double* z,
                        const MKL_INT* k, const double* c, const double* s,
                        double* rwork, MKL_INT* info );
void __stdcall zlals0( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                       const MKL_INT* sqre, const MKL_INT* nrhs, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* bx, const MKL_INT* ldbx,
                       const MKL_INT* perm, const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const double* givnum,
                       const MKL_INT* ldgnum, const double* poles, const double* difl,
                       const double* difr, const double* z, const MKL_INT* k,
                       const double* c, const double* s, double* rwork, MKL_INT* info );
void __stdcall zlals0_( const MKL_INT* icompq, const MKL_INT* nl, const MKL_INT* nr,
                        const MKL_INT* sqre, const MKL_INT* nrhs, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* bx, const MKL_INT* ldbx,
                        const MKL_INT* perm, const MKL_INT* givptr,
                        const MKL_INT* givcol, const MKL_INT* ldgcol,
                        const double* givnum, const MKL_INT* ldgnum, const double* poles,
                        const double* difl, const double* difr, const double* z,
                        const MKL_INT* k, const double* c, const double* s,
                        double* rwork, MKL_INT* info );

void __stdcall ZLALSA( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* bx, const MKL_INT* ldbx, const double* u,
                       const MKL_INT* ldu, const double* vt, const MKL_INT* k,
                       const double* difl, const double* difr, const double* z,
                       const double* poles, const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const MKL_INT* perm, const double* givnum,
                       const double* c, const double* s, double* rwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall ZLALSA_( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* bx, const MKL_INT* ldbx, const double* u,
                        const MKL_INT* ldu, const double* vt, const MKL_INT* k,
                        const double* difl, const double* difr, const double* z,
                        const double* poles, const MKL_INT* givptr,
                        const MKL_INT* givcol, const MKL_INT* ldgcol,
                        const MKL_INT* perm, const double* givnum, const double* c,
                        const double* s, double* rwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall zlalsa( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* bx, const MKL_INT* ldbx, const double* u,
                       const MKL_INT* ldu, const double* vt, const MKL_INT* k,
                       const double* difl, const double* difr, const double* z,
                       const double* poles, const MKL_INT* givptr, const MKL_INT* givcol,
                       const MKL_INT* ldgcol, const MKL_INT* perm, const double* givnum,
                       const double* c, const double* s, double* rwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall zlalsa_( const MKL_INT* icompq, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* bx, const MKL_INT* ldbx, const double* u,
                        const MKL_INT* ldu, const double* vt, const MKL_INT* k,
                        const double* difl, const double* difr, const double* z,
                        const double* poles, const MKL_INT* givptr,
                        const MKL_INT* givcol, const MKL_INT* ldgcol,
                        const MKL_INT* perm, const double* givnum, const double* c,
                        const double* s, double* rwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall ZLALSD( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, double* d, double* e, MKL_Complex16* b,
                       const MKL_INT* ldb, const double* rcond, MKL_INT* rank,
                       MKL_Complex16* work, double* rwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall ZLALSD_( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, double* d, double* e, MKL_Complex16* b,
                        const MKL_INT* ldb, const double* rcond, MKL_INT* rank,
                        MKL_Complex16* work, double* rwork, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall zlalsd( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                       const MKL_INT* nrhs, double* d, double* e, MKL_Complex16* b,
                       const MKL_INT* ldb, const double* rcond, MKL_INT* rank,
                       MKL_Complex16* work, double* rwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall zlalsd_( const char* uplo, int uplo_len, const MKL_INT* smlsiz, const MKL_INT* n,
                        const MKL_INT* nrhs, double* d, double* e, MKL_Complex16* b,
                        const MKL_INT* ldb, const double* rcond, MKL_INT* rank,
                        MKL_Complex16* work, double* rwork, MKL_INT* iwork,
                        MKL_INT* info );

double __stdcall ZLANGB( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                         double* work );
double __stdcall ZLANGB_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                          const MKL_INT* ku, const MKL_Complex16* ab,
                          const MKL_INT* ldab, double* work );
double __stdcall zlangb( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                         const MKL_INT* ku, const MKL_Complex16* ab, const MKL_INT* ldab,
                         double* work );
double __stdcall zlangb_( const char* norm, int norm_len, const MKL_INT* n, const MKL_INT* kl,
                          const MKL_INT* ku, const MKL_Complex16* ab,
                          const MKL_INT* ldab, double* work );

double __stdcall ZLANGE( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_Complex16* a, const MKL_INT* lda, double* work );
double __stdcall ZLANGE_( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_Complex16* a, const MKL_INT* lda, double* work );
double __stdcall zlange( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                         const MKL_Complex16* a, const MKL_INT* lda, double* work );
double __stdcall zlange_( const char* norm, int norm_len, const MKL_INT* m, const MKL_INT* n,
                          const MKL_Complex16* a, const MKL_INT* lda, double* work );

double __stdcall ZLANGT( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* dl,
                         const MKL_Complex16* d, const MKL_Complex16* du );
double __stdcall ZLANGT_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* dl,
                          const MKL_Complex16* d, const MKL_Complex16* du );
double __stdcall zlangt( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* dl,
                         const MKL_Complex16* d, const MKL_Complex16* du );
double __stdcall zlangt_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* dl,
                          const MKL_Complex16* d, const MKL_Complex16* du );

double __stdcall ZLANHB( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* k, const MKL_Complex16* ab, const MKL_INT* ldab,
                         double* work );
double __stdcall ZLANHB_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* k, const MKL_Complex16* ab, const MKL_INT* ldab,
                          double* work );
double __stdcall zlanhb( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* k, const MKL_Complex16* ab, const MKL_INT* ldab,
                         double* work );
double __stdcall zlanhb_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* k, const MKL_Complex16* ab, const MKL_INT* ldab,
                          double* work );

double __stdcall ZLANHE( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex16* a, const MKL_INT* lda, double* work );
double __stdcall ZLANHE_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex16* a, const MKL_INT* lda, double* work );
double __stdcall zlanhe( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex16* a, const MKL_INT* lda, double* work );
double __stdcall zlanhe_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex16* a, const MKL_INT* lda, double* work );

double __stdcall ZLANHF( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                         const MKL_INT* n, const MKL_Complex16* a, double* work );
double __stdcall ZLANHF_( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                          const MKL_INT* n, const MKL_Complex16* a, double* work );
double __stdcall zlanhf( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                         const MKL_INT* n, const MKL_Complex16* a, double* work );
double __stdcall zlanhf_( const char* norm, int norm_len, const char* transr, int transr_len, const char* uplo, int uplo_len,
                          const MKL_INT* n, const MKL_Complex16* a, double* work );

double __stdcall ZLANHP( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex16* ap, double* work );
double __stdcall ZLANHP_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex16* ap, double* work );
double __stdcall zlanhp( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex16* ap, double* work );
double __stdcall zlanhp_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex16* ap, double* work );

double __stdcall ZLANHS( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* a,
                         const MKL_INT* lda, double* work );
double __stdcall ZLANHS_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* a,
                          const MKL_INT* lda, double* work );
double __stdcall zlanhs( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* a,
                         const MKL_INT* lda, double* work );
double __stdcall zlanhs_( const char* norm, int norm_len, const MKL_INT* n, const MKL_Complex16* a,
                          const MKL_INT* lda, double* work );

double __stdcall ZLANHT( const char* norm, int norm_len, const MKL_INT* n, const double* d,
                         const MKL_Complex16* e );
double __stdcall ZLANHT_( const char* norm, int norm_len, const MKL_INT* n, const double* d,
                          const MKL_Complex16* e );
double __stdcall zlanht( const char* norm, int norm_len, const MKL_INT* n, const double* d,
                         const MKL_Complex16* e );
double __stdcall zlanht_( const char* norm, int norm_len, const MKL_INT* n, const double* d,
                          const MKL_Complex16* e );

double __stdcall ZLANSB( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* k, const MKL_Complex16* ab, const MKL_INT* ldab,
                         double* work );
double __stdcall ZLANSB_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* k, const MKL_Complex16* ab, const MKL_INT* ldab,
                          double* work );
double __stdcall zlansb( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* k, const MKL_Complex16* ab, const MKL_INT* ldab,
                         double* work );
double __stdcall zlansb_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_INT* k, const MKL_Complex16* ab, const MKL_INT* ldab,
                          double* work );

double __stdcall ZLANSP( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex16* ap, double* work );
double __stdcall ZLANSP_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex16* ap, double* work );
double __stdcall zlansp( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex16* ap, double* work );
double __stdcall zlansp_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex16* ap, double* work );

double __stdcall ZLANSY( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex16* a, const MKL_INT* lda, double* work );
double __stdcall ZLANSY_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex16* a, const MKL_INT* lda, double* work );
double __stdcall zlansy( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_Complex16* a, const MKL_INT* lda, double* work );
double __stdcall zlansy_( const char* norm, int norm_len, const char* uplo, int uplo_len, const MKL_INT* n,
                          const MKL_Complex16* a, const MKL_INT* lda, double* work );

double __stdcall ZLANTB( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* ab,
                         const MKL_INT* ldab, double* work );
double __stdcall ZLANTB_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                          const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* ab,
                          const MKL_INT* ldab, double* work );
double __stdcall zlantb( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* ab,
                         const MKL_INT* ldab, double* work );
double __stdcall zlantb_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                          const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* ab,
                          const MKL_INT* ldab, double* work );

double __stdcall ZLANTP( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const MKL_Complex16* ap, double* work );
double __stdcall ZLANTP_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                          const MKL_INT* n, const MKL_Complex16* ap, double* work );
double __stdcall zlantp( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* n, const MKL_Complex16* ap, double* work );
double __stdcall zlantp_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                          const MKL_INT* n, const MKL_Complex16* ap, double* work );

double __stdcall ZLANTR( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                         const MKL_INT* lda, double* work );
double __stdcall ZLANTR_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                          const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                          const MKL_INT* lda, double* work );
double __stdcall zlantr( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                         const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                         const MKL_INT* lda, double* work );
double __stdcall zlantr_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                          const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                          const MKL_INT* lda, double* work );

void __stdcall ZLAPLL( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx,
                       MKL_Complex16* y, const MKL_INT* incy, double* ssmin );
void __stdcall ZLAPLL_( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx,
                        MKL_Complex16* y, const MKL_INT* incy, double* ssmin );
void __stdcall zlapll( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx,
                       MKL_Complex16* y, const MKL_INT* incy, double* ssmin );
void __stdcall zlapll_( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx,
                        MKL_Complex16* y, const MKL_INT* incy, double* ssmin );

void __stdcall ZLAPMT( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex16* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall ZLAPMT_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall zlapmt( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex16* x, const MKL_INT* ldx, MKL_INT* k );
void __stdcall zlapmt_( const MKL_INT* forwrd, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* x, const MKL_INT* ldx, MKL_INT* k );

void __stdcall ZLAQGB( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, MKL_Complex16* ab, const MKL_INT* ldab,
                       const double* r, const double* c, const double* rowcnd,
                       const double* colcnd, const double* amax, char* equed , int equed_len);
void __stdcall ZLAQGB_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, MKL_Complex16* ab, const MKL_INT* ldab,
                        const double* r, const double* c, const double* rowcnd,
                        const double* colcnd, const double* amax, char* equed , int equed_len);
void __stdcall zlaqgb( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                       const MKL_INT* ku, MKL_Complex16* ab, const MKL_INT* ldab,
                       const double* r, const double* c, const double* rowcnd,
                       const double* colcnd, const double* amax, char* equed , int equed_len);
void __stdcall zlaqgb_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* kl,
                        const MKL_INT* ku, MKL_Complex16* ab, const MKL_INT* ldab,
                        const double* r, const double* c, const double* rowcnd,
                        const double* colcnd, const double* amax, char* equed , int equed_len);

void __stdcall ZLAQGE( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, const double* r, const double* c,
                       const double* rowcnd, const double* colcnd, const double* amax,
                       char* equed , int equed_len);
void __stdcall ZLAQGE_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const double* r, const double* c,
                        const double* rowcnd, const double* colcnd, const double* amax,
                        char* equed , int equed_len);
void __stdcall zlaqge( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, const double* r, const double* c,
                       const double* rowcnd, const double* colcnd, const double* amax,
                       char* equed , int equed_len);
void __stdcall zlaqge_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const double* r, const double* c,
                        const double* rowcnd, const double* colcnd, const double* amax,
                        char* equed , int equed_len);

void __stdcall ZLAQHB( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex16* ab, const MKL_INT* ldab, double* s,
                       const double* scond, const double* amax, char* equed , int equed_len);
void __stdcall ZLAQHB_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex16* ab, const MKL_INT* ldab, double* s,
                        const double* scond, const double* amax, char* equed , int equed_len);
void __stdcall zlaqhb( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex16* ab, const MKL_INT* ldab, double* s,
                       const double* scond, const double* amax, char* equed , int equed_len);
void __stdcall zlaqhb_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex16* ab, const MKL_INT* ldab, double* s,
                        const double* scond, const double* amax, char* equed , int equed_len);

void __stdcall ZLAQHE( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, const double* s, const double* scond,
                       const double* amax, char* equed , int equed_len);
void __stdcall ZLAQHE_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const double* s, const double* scond,
                        const double* amax, char* equed , int equed_len);
void __stdcall zlaqhe( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, const double* s, const double* scond,
                       const double* amax, char* equed , int equed_len);
void __stdcall zlaqhe_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const double* s, const double* scond,
                        const double* amax, char* equed , int equed_len);

void __stdcall ZLAQHP( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       const double* s, const double* scond, const double* amax,
                       char* equed , int equed_len);
void __stdcall ZLAQHP_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        const double* s, const double* scond, const double* amax,
                        char* equed , int equed_len);
void __stdcall zlaqhp( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       const double* s, const double* scond, const double* amax,
                       char* equed , int equed_len);
void __stdcall zlaqhp_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        const double* s, const double* scond, const double* amax,
                        char* equed , int equed_len);

void __stdcall ZLAQP2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* jpvt,
                       MKL_Complex16* tau, double* vn1, double* vn2,
                       MKL_Complex16* work );
void __stdcall ZLAQP2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_INT* jpvt,
                        MKL_Complex16* tau, double* vn1, double* vn2,
                        MKL_Complex16* work );
void __stdcall zlaqp2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* jpvt,
                       MKL_Complex16* tau, double* vn1, double* vn2,
                       MKL_Complex16* work );
void __stdcall zlaqp2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_INT* jpvt,
                        MKL_Complex16* tau, double* vn1, double* vn2,
                        MKL_Complex16* work );

void __stdcall ZLAQPS( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       const MKL_INT* nb, MKL_INT* kb, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex16* tau,
                       double* vn1, double* vn2, MKL_Complex16* auxv, MKL_Complex16* f,
                       const MKL_INT* ldf );
void __stdcall ZLAQPS_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        const MKL_INT* nb, MKL_INT* kb, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex16* tau,
                        double* vn1, double* vn2, MKL_Complex16* auxv, MKL_Complex16* f,
                        const MKL_INT* ldf );
void __stdcall zlaqps( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                       const MKL_INT* nb, MKL_INT* kb, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex16* tau,
                       double* vn1, double* vn2, MKL_Complex16* auxv, MKL_Complex16* f,
                       const MKL_INT* ldf );
void __stdcall zlaqps_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* offset,
                        const MKL_INT* nb, MKL_INT* kb, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* jpvt, MKL_Complex16* tau,
                        double* vn1, double* vn2, MKL_Complex16* auxv, MKL_Complex16* f,
                        const MKL_INT* ldf );

void __stdcall ZLAQR0( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                       const MKL_INT* ldh, MKL_Complex16* w, MKL_INT* iloz,
                       MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZLAQR0_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                        const MKL_INT* ldh, MKL_Complex16* w, MKL_INT* iloz,
                        MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zlaqr0( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                       const MKL_INT* ldh, MKL_Complex16* w, MKL_INT* iloz,
                       MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zlaqr0_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                        const MKL_INT* ldh, MKL_Complex16* w, MKL_INT* iloz,
                        MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZLAQR1( const MKL_INT* n, const MKL_Complex16* h, const MKL_INT* ldh,
                       const MKL_Complex16* s1, MKL_Complex16* s2, MKL_Complex16* v );
void __stdcall ZLAQR1_( const MKL_INT* n, const MKL_Complex16* h, const MKL_INT* ldh,
                        const MKL_Complex16* s1, MKL_Complex16* s2, MKL_Complex16* v );
void __stdcall zlaqr1( const MKL_INT* n, const MKL_Complex16* h, const MKL_INT* ldh,
                       const MKL_Complex16* s1, MKL_Complex16* s2, MKL_Complex16* v );
void __stdcall zlaqr1_( const MKL_INT* n, const MKL_Complex16* h, const MKL_INT* ldh,
                        const MKL_Complex16* s1, MKL_Complex16* s2, MKL_Complex16* v );

void __stdcall ZLAQR2( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       MKL_Complex16* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_INT* ns, MKL_INT* nd, MKL_Complex16* sh, MKL_Complex16* v,
                       const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex16* t,
                       const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex16* wv,
                       const MKL_INT* ldwv, MKL_Complex16* work, const MKL_INT* lwork );
void __stdcall ZLAQR2_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        MKL_Complex16* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_INT* ns, MKL_INT* nd, MKL_Complex16* sh, MKL_Complex16* v,
                        const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex16* t,
                        const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex16* wv,
                        const MKL_INT* ldwv, MKL_Complex16* work, const MKL_INT* lwork );
void __stdcall zlaqr2( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       MKL_Complex16* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_INT* ns, MKL_INT* nd, MKL_Complex16* sh, MKL_Complex16* v,
                       const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex16* t,
                       const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex16* wv,
                       const MKL_INT* ldwv, MKL_Complex16* work, const MKL_INT* lwork );
void __stdcall zlaqr2_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        MKL_Complex16* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_INT* ns, MKL_INT* nd, MKL_Complex16* sh, MKL_Complex16* v,
                        const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex16* t,
                        const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex16* wv,
                        const MKL_INT* ldwv, MKL_Complex16* work, const MKL_INT* lwork );

void __stdcall ZLAQR3( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       MKL_Complex16* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_INT* ns, MKL_INT* nd, MKL_Complex16* sh, MKL_Complex16* v,
                       const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex16* t,
                       const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex16* wv,
                       const MKL_INT* ldwv, MKL_Complex16* work, const MKL_INT* lwork );
void __stdcall ZLAQR3_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        MKL_Complex16* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_INT* ns, MKL_INT* nd, MKL_Complex16* sh, MKL_Complex16* v,
                        const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex16* t,
                        const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex16* wv,
                        const MKL_INT* ldwv, MKL_Complex16* work, const MKL_INT* lwork );
void __stdcall zlaqr3( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                       MKL_Complex16* h, const MKL_INT* ldh, const MKL_INT* iloz,
                       const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_INT* ns, MKL_INT* nd, MKL_Complex16* sh, MKL_Complex16* v,
                       const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex16* t,
                       const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex16* wv,
                       const MKL_INT* ldwv, MKL_Complex16* work, const MKL_INT* lwork );
void __stdcall zlaqr3_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ktop, const MKL_INT* kbot, const MKL_INT* nw,
                        MKL_Complex16* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_INT* ns, MKL_INT* nd, MKL_Complex16* sh, MKL_Complex16* v,
                        const MKL_INT* ldv, const MKL_INT* nh, MKL_Complex16* t,
                        const MKL_INT* ldt, const MKL_INT* nv, MKL_Complex16* wv,
                        const MKL_INT* ldwv, MKL_Complex16* work, const MKL_INT* lwork );

void __stdcall ZLAQR4( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                       const MKL_INT* ldh, MKL_Complex16* w, MKL_INT* iloz,
                       MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZLAQR4_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                        const MKL_INT* ldh, MKL_Complex16* w, MKL_INT* iloz,
                        MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zlaqr4( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                       const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                       const MKL_INT* ldh, MKL_Complex16* w, MKL_INT* iloz,
                       MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zlaqr4_( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* n,
                        const MKL_INT* ilo, const MKL_INT* ihi, MKL_Complex16* h,
                        const MKL_INT* ldh, MKL_Complex16* w, MKL_INT* iloz,
                        MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZLAQR5( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* kacc22,
                       const MKL_INT* n, const MKL_INT* ktop, const MKL_INT* kbot,
                       const MKL_INT* nshfts, MKL_Complex16* s, MKL_Complex16* h,
                       const MKL_INT* ldh, const MKL_INT* iloz, const MKL_INT* ihiz,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* v,
                       const MKL_INT* ldv, MKL_Complex16* u, const MKL_INT* ldu,
                       const MKL_INT* nv, MKL_Complex16* wv, const MKL_INT* ldwv,
                       const MKL_INT* nh, MKL_Complex16* wh, const MKL_INT* ldwh );
void __stdcall ZLAQR5_( const MKL_INT* wantt, const MKL_INT* wantz,
                        const MKL_INT* kacc22, const MKL_INT* n, const MKL_INT* ktop,
                        const MKL_INT* kbot, const MKL_INT* nshfts, MKL_Complex16* s,
                        MKL_Complex16* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* u,
                        const MKL_INT* ldu, const MKL_INT* nv, MKL_Complex16* wv,
                        const MKL_INT* ldwv, const MKL_INT* nh, MKL_Complex16* wh,
                        const MKL_INT* ldwh );
void __stdcall zlaqr5( const MKL_INT* wantt, const MKL_INT* wantz, const MKL_INT* kacc22,
                       const MKL_INT* n, const MKL_INT* ktop, const MKL_INT* kbot,
                       const MKL_INT* nshfts, MKL_Complex16* s, MKL_Complex16* h,
                       const MKL_INT* ldh, const MKL_INT* iloz, const MKL_INT* ihiz,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* v,
                       const MKL_INT* ldv, MKL_Complex16* u, const MKL_INT* ldu,
                       const MKL_INT* nv, MKL_Complex16* wv, const MKL_INT* ldwv,
                       const MKL_INT* nh, MKL_Complex16* wh, const MKL_INT* ldwh );
void __stdcall zlaqr5_( const MKL_INT* wantt, const MKL_INT* wantz,
                        const MKL_INT* kacc22, const MKL_INT* n, const MKL_INT* ktop,
                        const MKL_INT* kbot, const MKL_INT* nshfts, MKL_Complex16* s,
                        MKL_Complex16* h, const MKL_INT* ldh, const MKL_INT* iloz,
                        const MKL_INT* ihiz, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* u,
                        const MKL_INT* ldu, const MKL_INT* nv, MKL_Complex16* wv,
                        const MKL_INT* ldwv, const MKL_INT* nh, MKL_Complex16* wh,
                        const MKL_INT* ldwh );

void __stdcall ZLAQSB( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex16* ab, const MKL_INT* ldab, const double* s,
                       const double* scond, const double* amax, char* equed , int equed_len);
void __stdcall ZLAQSB_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex16* ab, const MKL_INT* ldab, const double* s,
                        const double* scond, const double* amax, char* equed , int equed_len);
void __stdcall zlaqsb( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex16* ab, const MKL_INT* ldab, const double* s,
                       const double* scond, const double* amax, char* equed , int equed_len);
void __stdcall zlaqsb_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex16* ab, const MKL_INT* ldab, const double* s,
                        const double* scond, const double* amax, char* equed , int equed_len);

void __stdcall ZLAQSP( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       const double* s, const double* scond, const double* amax,
                       char* equed , int equed_len);
void __stdcall ZLAQSP_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        const double* s, const double* scond, const double* amax,
                        char* equed , int equed_len);
void __stdcall zlaqsp( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       const double* s, const double* scond, const double* amax,
                       char* equed , int equed_len);
void __stdcall zlaqsp_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        const double* s, const double* scond, const double* amax,
                        char* equed , int equed_len);

void __stdcall ZLAQSY( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, const double* s, const double* scond,
                       const double* amax, char* equed , int equed_len);
void __stdcall ZLAQSY_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const double* s, const double* scond,
                        const double* amax, char* equed , int equed_len);
void __stdcall zlaqsy( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, const double* s, const double* scond,
                       const double* amax, char* equed , int equed_len);
void __stdcall zlaqsy_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const double* s, const double* scond,
                        const double* amax, char* equed , int equed_len);

void __stdcall ZLAR1V( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                       const double* lambda, const double* d, const double* l,
                       const double* ld, const double* lld, const double* pivmin,
                       const double* gaptol, MKL_Complex16* z, const MKL_INT* wantnc,
                       MKL_INT* negcnt, double* ztz, double* mingma, MKL_INT* r,
                       MKL_INT* isuppz, double* nrminv, double* resid, double* rqcorr,
                       double* work );
void __stdcall ZLAR1V_( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                        const double* lambda, const double* d, const double* l,
                        const double* ld, const double* lld, const double* pivmin,
                        const double* gaptol, MKL_Complex16* z, const MKL_INT* wantnc,
                        MKL_INT* negcnt, double* ztz, double* mingma, MKL_INT* r,
                        MKL_INT* isuppz, double* nrminv, double* resid, double* rqcorr,
                        double* work );
void __stdcall zlar1v( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                       const double* lambda, const double* d, const double* l,
                       const double* ld, const double* lld, const double* pivmin,
                       const double* gaptol, MKL_Complex16* z, const MKL_INT* wantnc,
                       MKL_INT* negcnt, double* ztz, double* mingma, MKL_INT* r,
                       MKL_INT* isuppz, double* nrminv, double* resid, double* rqcorr,
                       double* work );
void __stdcall zlar1v_( const MKL_INT* n, const MKL_INT* b1, const MKL_INT* bn,
                        const double* lambda, const double* d, const double* l,
                        const double* ld, const double* lld, const double* pivmin,
                        const double* gaptol, MKL_Complex16* z, const MKL_INT* wantnc,
                        MKL_INT* negcnt, double* ztz, double* mingma, MKL_INT* r,
                        MKL_INT* isuppz, double* nrminv, double* resid, double* rqcorr,
                        double* work );

void __stdcall ZLAR2V( const MKL_INT* n, MKL_Complex16* x, MKL_Complex16* y,
                       MKL_Complex16* z, const MKL_INT* incx, const double* c,
                       const MKL_Complex16* s, const MKL_INT* incc );
void __stdcall ZLAR2V_( const MKL_INT* n, MKL_Complex16* x, MKL_Complex16* y,
                        MKL_Complex16* z, const MKL_INT* incx, const double* c,
                        const MKL_Complex16* s, const MKL_INT* incc );
void __stdcall zlar2v( const MKL_INT* n, MKL_Complex16* x, MKL_Complex16* y,
                       MKL_Complex16* z, const MKL_INT* incx, const double* c,
                       const MKL_Complex16* s, const MKL_INT* incc );
void __stdcall zlar2v_( const MKL_INT* n, MKL_Complex16* x, MKL_Complex16* y,
                        MKL_Complex16* z, const MKL_INT* incx, const double* c,
                        const MKL_Complex16* s, const MKL_INT* incc );

void __stdcall ZLARCM( const MKL_INT* m, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* c, const MKL_INT* ldc, double* rwork );
void __stdcall ZLARCM_( const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* c, const MKL_INT* ldc, double* rwork );
void __stdcall zlarcm( const MKL_INT* m, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* c, const MKL_INT* ldc, double* rwork );
void __stdcall zlarcm_( const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* c, const MKL_INT* ldc, double* rwork );

void __stdcall ZLARFB( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex16* v, const MKL_INT* ldv,
                       const MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* ldwork );
void __stdcall ZLARFB_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* ldwork );
void __stdcall zlarfb( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex16* v, const MKL_INT* ldv,
                       const MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* ldwork );
void __stdcall zlarfb_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* t, const MKL_INT* ldt, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* ldwork );

void __stdcall ZLARF( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_Complex16* v, const MKL_INT* incv,
                      const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                      MKL_Complex16* work );
void __stdcall ZLARF_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex16* v, const MKL_INT* incv,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work );
void __stdcall zlarf( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_Complex16* v, const MKL_INT* incv,
                      const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                      MKL_Complex16* work );
void __stdcall zlarf_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex16* v, const MKL_INT* incv,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work );

void __stdcall ZLARFG( const MKL_INT* n, MKL_Complex16* alpha, MKL_Complex16* x,
                       const MKL_INT* incx, MKL_Complex16* tau );
void __stdcall ZLARFG_( const MKL_INT* n, MKL_Complex16* alpha, MKL_Complex16* x,
                        const MKL_INT* incx, MKL_Complex16* tau );
void __stdcall zlarfg( const MKL_INT* n, MKL_Complex16* alpha, MKL_Complex16* x,
                       const MKL_INT* incx, MKL_Complex16* tau );
void __stdcall zlarfg_( const MKL_INT* n, MKL_Complex16* alpha, MKL_Complex16* x,
                        const MKL_INT* incx, MKL_Complex16* tau );

void __stdcall ZLARFGP( const MKL_INT* n, MKL_Complex16* alpha, MKL_Complex16* x,
                        const MKL_INT* incx, MKL_Complex16* tau );
void __stdcall ZLARFGP_( const MKL_INT* n, MKL_Complex16* alpha, MKL_Complex16* x,
                         const MKL_INT* incx, MKL_Complex16* tau );
void __stdcall zlarfgp( const MKL_INT* n, MKL_Complex16* alpha, MKL_Complex16* x,
                        const MKL_INT* incx, MKL_Complex16* tau );
void __stdcall zlarfgp_( const MKL_INT* n, MKL_Complex16* alpha, MKL_Complex16* x,
                         const MKL_INT* incx, MKL_Complex16* tau );

void __stdcall ZLARFP( const MKL_INT* n, MKL_Complex16* alpha, MKL_Complex16* x,
                       const MKL_INT* incx, MKL_Complex16* tau );
void __stdcall ZLARFP_( const MKL_INT* n, MKL_Complex16* alpha, MKL_Complex16* x,
                        const MKL_INT* incx, MKL_Complex16* tau );
void __stdcall zlarfp( const MKL_INT* n, MKL_Complex16* alpha, MKL_Complex16* x,
                       const MKL_INT* incx, MKL_Complex16* tau );
void __stdcall zlarfp_( const MKL_INT* n, MKL_Complex16* alpha, MKL_Complex16* x,
                        const MKL_INT* incx, MKL_Complex16* tau );

void __stdcall ZLARFT( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex16* v, const MKL_INT* ldv,
                       const MKL_Complex16* tau, MKL_Complex16* t, const MKL_INT* ldt );
void __stdcall ZLARFT_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* tau, MKL_Complex16* t, const MKL_INT* ldt );
void __stdcall zlarft( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, const MKL_Complex16* v, const MKL_INT* ldv,
                       const MKL_Complex16* tau, MKL_Complex16* t, const MKL_INT* ldt );
void __stdcall zlarft_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* tau, MKL_Complex16* t, const MKL_INT* ldt );

void __stdcall ZLARFX( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex16* v, const MKL_Complex16* tau,
                       MKL_Complex16* c, const MKL_INT* ldc, MKL_Complex16* work );
void __stdcall ZLARFX_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex16* v, const MKL_Complex16* tau,
                        MKL_Complex16* c, const MKL_INT* ldc, MKL_Complex16* work );
void __stdcall zlarfx( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex16* v, const MKL_Complex16* tau,
                       MKL_Complex16* c, const MKL_INT* ldc, MKL_Complex16* work );
void __stdcall zlarfx_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex16* v, const MKL_Complex16* tau,
                        MKL_Complex16* c, const MKL_INT* ldc, MKL_Complex16* work );

void __stdcall ZLARGV( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx,
                       MKL_Complex16* y, const MKL_INT* incy, double* c,
                       const MKL_INT* incc );
void __stdcall ZLARGV_( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx,
                        MKL_Complex16* y, const MKL_INT* incy, double* c,
                        const MKL_INT* incc );
void __stdcall zlargv( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx,
                       MKL_Complex16* y, const MKL_INT* incy, double* c,
                       const MKL_INT* incc );
void __stdcall zlargv_( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx,
                        MKL_Complex16* y, const MKL_INT* incy, double* c,
                        const MKL_INT* incc );

void __stdcall ZLARNV( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                       MKL_Complex16* x );
void __stdcall ZLARNV_( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                        MKL_Complex16* x );
void __stdcall zlarnv( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                       MKL_Complex16* x );
void __stdcall zlarnv_( const MKL_INT* idist, MKL_INT* iseed, const MKL_INT* n,
                        MKL_Complex16* x );

void __stdcall ZLARRV( const MKL_INT* n, const double* vl, const double* vu, double* d,
                       double* l, double* pivmin, const MKL_INT* isplit,
                       const MKL_INT* m, const MKL_INT* dol, const MKL_INT* dou,
                       const double* minrgp, const double* rtol1, const double* rtol2,
                       double* w, double* werr, double* wgap, const MKL_INT* iblock,
                       const MKL_INT* indexw, const double* gers, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_INT* isuppz, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall ZLARRV_( const MKL_INT* n, const double* vl, const double* vu, double* d,
                        double* l, double* pivmin, const MKL_INT* isplit,
                        const MKL_INT* m, const MKL_INT* dol, const MKL_INT* dou,
                        const double* minrgp, const double* rtol1, const double* rtol2,
                        double* w, double* werr, double* wgap, const MKL_INT* iblock,
                        const MKL_INT* indexw, const double* gers, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                        MKL_INT* iwork, MKL_INT* info );
void __stdcall zlarrv( const MKL_INT* n, const double* vl, const double* vu, double* d,
                       double* l, double* pivmin, const MKL_INT* isplit,
                       const MKL_INT* m, const MKL_INT* dol, const MKL_INT* dou,
                       const double* minrgp, const double* rtol1, const double* rtol2,
                       double* w, double* werr, double* wgap, const MKL_INT* iblock,
                       const MKL_INT* indexw, const double* gers, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_INT* isuppz, double* work, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall zlarrv_( const MKL_INT* n, const double* vl, const double* vu, double* d,
                        double* l, double* pivmin, const MKL_INT* isplit,
                        const MKL_INT* m, const MKL_INT* dol, const MKL_INT* dou,
                        const double* minrgp, const double* rtol1, const double* rtol2,
                        double* w, double* werr, double* wgap, const MKL_INT* iblock,
                        const MKL_INT* indexw, const double* gers, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_INT* isuppz, double* work,
                        MKL_INT* iwork, MKL_INT* info );

void __stdcall ZLARTG( const MKL_Complex16* f, const MKL_Complex16* g, double* cs,
                       MKL_Complex16* sn, MKL_Complex16* r );
void __stdcall ZLARTG_( const MKL_Complex16* f, const MKL_Complex16* g, double* cs,
                        MKL_Complex16* sn, MKL_Complex16* r );
void __stdcall zlartg( const MKL_Complex16* f, const MKL_Complex16* g, double* cs,
                       MKL_Complex16* sn, MKL_Complex16* r );
void __stdcall zlartg_( const MKL_Complex16* f, const MKL_Complex16* g, double* cs,
                        MKL_Complex16* sn, MKL_Complex16* r );

void __stdcall ZLARTV( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx,
                       MKL_Complex16* y, const MKL_INT* incy, const double* c,
                       const MKL_Complex16* s, const MKL_INT* incc );
void __stdcall ZLARTV_( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx,
                        MKL_Complex16* y, const MKL_INT* incy, const double* c,
                        const MKL_Complex16* s, const MKL_INT* incc );
void __stdcall zlartv( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx,
                       MKL_Complex16* y, const MKL_INT* incy, const double* c,
                       const MKL_Complex16* s, const MKL_INT* incc );
void __stdcall zlartv_( const MKL_INT* n, MKL_Complex16* x, const MKL_INT* incx,
                        MKL_Complex16* y, const MKL_INT* incy, const double* c,
                        const MKL_Complex16* s, const MKL_INT* incc );

void __stdcall ZLARZB( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, const MKL_Complex16* v,
                       const MKL_INT* ldv, const MKL_Complex16* t, const MKL_INT* ldt,
                       MKL_Complex16* c, const MKL_INT* ldc, MKL_Complex16* work,
                       const MKL_INT* ldwork );
void __stdcall ZLARZB_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_Complex16* v,
                        const MKL_INT* ldv, const MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* c, const MKL_INT* ldc, MKL_Complex16* work,
                        const MKL_INT* ldwork );
void __stdcall zlarzb( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, const MKL_Complex16* v,
                       const MKL_INT* ldv, const MKL_Complex16* t, const MKL_INT* ldt,
                       MKL_Complex16* c, const MKL_INT* ldc, MKL_Complex16* work,
                       const MKL_INT* ldwork );
void __stdcall zlarzb_( const char* side, int side_len, const char* trans, int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, const MKL_Complex16* v,
                        const MKL_INT* ldv, const MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* c, const MKL_INT* ldc, MKL_Complex16* work,
                        const MKL_INT* ldwork );

void __stdcall ZLARZ( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* l, const MKL_Complex16* v, const MKL_INT* incv,
                      const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                      MKL_Complex16* work );
void __stdcall ZLARZ_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* l, const MKL_Complex16* v, const MKL_INT* incv,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work );
void __stdcall zlarz( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                      const MKL_INT* l, const MKL_Complex16* v, const MKL_INT* incv,
                      const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                      MKL_Complex16* work );
void __stdcall zlarz_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* l, const MKL_Complex16* v, const MKL_INT* incv,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work );

void __stdcall ZLARZT( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, MKL_Complex16* v, const MKL_INT* ldv,
                       const MKL_Complex16* tau, MKL_Complex16* t, const MKL_INT* ldt );
void __stdcall ZLARZT_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* tau, MKL_Complex16* t, const MKL_INT* ldt );
void __stdcall zlarzt( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                       const MKL_INT* k, MKL_Complex16* v, const MKL_INT* ldv,
                       const MKL_Complex16* tau, MKL_Complex16* t, const MKL_INT* ldt );
void __stdcall zlarzt_( const char* direct, int direct_len, const char* storev, int storev_len, const MKL_INT* n,
                        const MKL_INT* k, MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* tau, MKL_Complex16* t, const MKL_INT* ldt );

void __stdcall ZLASCL( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                       const double* cfrom, const double* cto, const MKL_INT* m,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall ZLASCL_( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                        const double* cfrom, const double* cto, const MKL_INT* m,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* info );
void __stdcall zlascl( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                       const double* cfrom, const double* cto, const MKL_INT* m,
                       const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall zlascl_( const char* type, int type_len, const MKL_INT* kl, const MKL_INT* ku,
                        const double* cfrom, const double* cto, const MKL_INT* m,
                        const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* info );

void __stdcall ZLASET( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex16* alpha, const MKL_Complex16* beta,
                       MKL_Complex16* a, const MKL_INT* lda );
void __stdcall ZLASET_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex16* alpha, const MKL_Complex16* beta,
                        MKL_Complex16* a, const MKL_INT* lda );
void __stdcall zlaset( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex16* alpha, const MKL_Complex16* beta,
                       MKL_Complex16* a, const MKL_INT* lda );
void __stdcall zlaset_( const char* uplo, int uplo_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex16* alpha, const MKL_Complex16* beta,
                        MKL_Complex16* a, const MKL_INT* lda );

void __stdcall ZLASR( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                      const MKL_INT* m, const MKL_INT* n, const double* c,
                      const double* s, MKL_Complex16* a, const MKL_INT* lda );
void __stdcall ZLASR_( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                       const MKL_INT* m, const MKL_INT* n, const double* c,
                       const double* s, MKL_Complex16* a, const MKL_INT* lda );
void __stdcall zlasr( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                      const MKL_INT* m, const MKL_INT* n, const double* c,
                      const double* s, MKL_Complex16* a, const MKL_INT* lda );
void __stdcall zlasr_( const char* side, int side_len, const char* pivot, int pivot_len, const char* direct, int direct_len,
                       const MKL_INT* m, const MKL_INT* n, const double* c,
                       const double* s, MKL_Complex16* a, const MKL_INT* lda );

void __stdcall ZLASSQ( const MKL_INT* n, const MKL_Complex16* x, const MKL_INT* incx,
                       double* scale, double* sumsq );
void __stdcall ZLASSQ_( const MKL_INT* n, const MKL_Complex16* x, const MKL_INT* incx,
                        double* scale, double* sumsq );
void __stdcall zlassq( const MKL_INT* n, const MKL_Complex16* x, const MKL_INT* incx,
                       double* scale, double* sumsq );
void __stdcall zlassq_( const MKL_INT* n, const MKL_Complex16* x, const MKL_INT* incx,
                        double* scale, double* sumsq );

void __stdcall ZLASWP( const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                       const MKL_INT* incx );
void __stdcall ZLASWP_( const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                        const MKL_INT* incx );
void __stdcall zlaswp( const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                       const MKL_INT* incx );
void __stdcall zlaswp_( const MKL_INT* n, MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_INT* k1, const MKL_INT* k2, const MKL_INT* ipiv,
                        const MKL_INT* incx );

void __stdcall ZLASYF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall ZLASYF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                        MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall zlasyf( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );
void __stdcall zlasyf_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_INT* kb, MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                        MKL_Complex16* w, const MKL_INT* ldw, MKL_INT* info );

void __stdcall ZLAT2C( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex8* sa, const MKL_INT* ldsa,
                       MKL_INT* info );
void __stdcall ZLAT2C_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex8* sa, const MKL_INT* ldsa,
                        MKL_INT* info );
void __stdcall zlat2c( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex8* sa, const MKL_INT* ldsa,
                       MKL_INT* info );
void __stdcall zlat2c_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex8* sa, const MKL_INT* ldsa,
                        MKL_INT* info );

void __stdcall ZLATBS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* x,
                       double* scale, double* cnorm, MKL_INT* info );
void __stdcall ZLATBS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* x,
                        double* scale, double* cnorm, MKL_INT* info );
void __stdcall zlatbs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* x,
                       double* scale, double* cnorm, MKL_INT* info );
void __stdcall zlatbs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* x,
                        double* scale, double* cnorm, MKL_INT* info );

void __stdcall ZLATDF( const MKL_INT* ijob, const MKL_INT* n, const MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* rhs, double* rdsum,
                       double* rdscal, const MKL_INT* ipiv, const MKL_INT* jpiv );
void __stdcall ZLATDF_( const MKL_INT* ijob, const MKL_INT* n, const MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_Complex16* rhs, double* rdsum,
                        double* rdscal, const MKL_INT* ipiv, const MKL_INT* jpiv );
void __stdcall zlatdf( const MKL_INT* ijob, const MKL_INT* n, const MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* rhs, double* rdsum,
                       double* rdscal, const MKL_INT* ipiv, const MKL_INT* jpiv );
void __stdcall zlatdf_( const MKL_INT* ijob, const MKL_INT* n, const MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_Complex16* rhs, double* rdsum,
                        double* rdscal, const MKL_INT* ipiv, const MKL_INT* jpiv );

void __stdcall ZLATPS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex16* ap,
                       MKL_Complex16* x, double* scale, double* cnorm, MKL_INT* info );
void __stdcall ZLATPS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex16* ap,
                        MKL_Complex16* x, double* scale, double* cnorm, MKL_INT* info );
void __stdcall zlatps( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex16* ap,
                       MKL_Complex16* x, double* scale, double* cnorm, MKL_INT* info );
void __stdcall zlatps_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex16* ap,
                        MKL_Complex16* x, double* scale, double* cnorm, MKL_INT* info );

void __stdcall ZLATRD( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_Complex16* a, const MKL_INT* lda, double* e,
                       MKL_Complex16* tau, MKL_Complex16* w, const MKL_INT* ldw );
void __stdcall ZLATRD_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_Complex16* a, const MKL_INT* lda, double* e,
                        MKL_Complex16* tau, MKL_Complex16* w, const MKL_INT* ldw );
void __stdcall zlatrd( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                       MKL_Complex16* a, const MKL_INT* lda, double* e,
                       MKL_Complex16* tau, MKL_Complex16* w, const MKL_INT* ldw );
void __stdcall zlatrd_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nb,
                        MKL_Complex16* a, const MKL_INT* lda, double* e,
                        MKL_Complex16* tau, MKL_Complex16* w, const MKL_INT* ldw );

void __stdcall ZLATRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* x, double* scale,
                       double* cnorm, MKL_INT* info );
void __stdcall ZLATRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* x, double* scale,
                        double* cnorm, MKL_INT* info );
void __stdcall zlatrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* x, double* scale,
                       double* cnorm, MKL_INT* info );
void __stdcall zlatrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const char* normin, int normin_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* x, double* scale,
                        double* cnorm, MKL_INT* info );

void __stdcall ZLATRZ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                       MKL_Complex16* work );
void __stdcall ZLATRZ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                        MKL_Complex16* work );
void __stdcall zlatrz( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                       MKL_Complex16* work );
void __stdcall zlatrz_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* l,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* tau,
                        MKL_Complex16* work );

void __stdcall ZLATZM( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex16* v, const MKL_INT* incv,
                       const MKL_Complex16* tau, MKL_Complex16* c1, MKL_Complex16* c2,
                       const MKL_INT* ldc, MKL_Complex16* work );
void __stdcall ZLATZM_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex16* v, const MKL_INT* incv,
                        const MKL_Complex16* tau, MKL_Complex16* c1, MKL_Complex16* c2,
                        const MKL_INT* ldc, MKL_Complex16* work );
void __stdcall zlatzm( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex16* v, const MKL_INT* incv,
                       const MKL_Complex16* tau, MKL_Complex16* c1, MKL_Complex16* c2,
                       const MKL_INT* ldc, MKL_Complex16* work );
void __stdcall zlatzm_( const char* side, int side_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex16* v, const MKL_INT* incv,
                        const MKL_Complex16* tau, MKL_Complex16* c1, MKL_Complex16* c2,
                        const MKL_INT* ldc, MKL_Complex16* work );

void __stdcall ZLAUU2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall ZLAUU2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall zlauu2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall zlauu2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall ZLAUUM( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall ZLAUUM_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall zlauum( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall zlauum_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall ZPBCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_Complex16* ab, const MKL_INT* ldab, const double* anorm,
                       double* rcond, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );
void __stdcall ZPBCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_Complex16* ab, const MKL_INT* ldab,
                        const double* anorm, double* rcond, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall zpbcon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_Complex16* ab, const MKL_INT* ldab, const double* anorm,
                       double* rcond, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );
void __stdcall zpbcon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_Complex16* ab, const MKL_INT* ldab,
                        const double* anorm, double* rcond, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );

void __stdcall ZPBEQU( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_Complex16* ab, const MKL_INT* ldab, double* s,
                       double* scond, double* amax, MKL_INT* info );
void __stdcall ZPBEQU_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_Complex16* ab, const MKL_INT* ldab, double* s,
                        double* scond, double* amax, MKL_INT* info );
void __stdcall zpbequ( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_Complex16* ab, const MKL_INT* ldab, double* s,
                       double* scond, double* amax, MKL_INT* info );
void __stdcall zpbequ_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_Complex16* ab, const MKL_INT* ldab, double* s,
                        double* scond, double* amax, MKL_INT* info );

void __stdcall ZPBRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const MKL_Complex16* ab, const MKL_INT* ldab,
                       const MKL_Complex16* afb, const MKL_INT* ldafb,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZPBRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const MKL_Complex16* ab,
                        const MKL_INT* ldab, const MKL_Complex16* afb,
                        const MKL_INT* ldafb, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zpbrfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const MKL_Complex16* ab, const MKL_INT* ldab,
                       const MKL_Complex16* afb, const MKL_INT* ldafb,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zpbrfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const MKL_Complex16* ab,
                        const MKL_INT* ldab, const MKL_Complex16* afb,
                        const MKL_INT* ldafb, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZPBSTF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex16* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall ZPBSTF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex16* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall zpbstf( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex16* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall zpbstf_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex16* ab, const MKL_INT* ldab, MKL_INT* info );

void __stdcall ZPBSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                      const MKL_INT* nrhs, MKL_Complex16* ab, const MKL_INT* ldab,
                      MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZPBSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, MKL_Complex16* ab, const MKL_INT* ldab,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zpbsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                      const MKL_INT* nrhs, MKL_Complex16* ab, const MKL_INT* ldab,
                      MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zpbsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, MKL_Complex16* ab, const MKL_INT* ldab,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZPBSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, const MKL_INT* nrhs, MKL_Complex16* ab,
                       const MKL_INT* ldab, MKL_Complex16* afb, const MKL_INT* ldafb,
                       char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* rcond, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZPBSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, const MKL_INT* nrhs, MKL_Complex16* ab,
                        const MKL_INT* ldab, MKL_Complex16* afb, const MKL_INT* ldafb,
                        char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );
void __stdcall zpbsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, const MKL_INT* nrhs, MKL_Complex16* ab,
                       const MKL_INT* ldab, MKL_Complex16* afb, const MKL_INT* ldafb,
                       char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* rcond, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zpbsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, const MKL_INT* nrhs, MKL_Complex16* ab,
                        const MKL_INT* ldab, MKL_Complex16* afb, const MKL_INT* ldafb,
                        char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );

void __stdcall ZPBTF2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex16* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall ZPBTF2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex16* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall zpbtf2( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex16* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall zpbtf2_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex16* ab, const MKL_INT* ldab, MKL_INT* info );

void __stdcall ZPBTRF( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex16* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall ZPBTRF_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex16* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall zpbtrf( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       MKL_Complex16* ab, const MKL_INT* ldab, MKL_INT* info );
void __stdcall zpbtrf_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        MKL_Complex16* ab, const MKL_INT* ldab, MKL_INT* info );

void __stdcall ZPBTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const MKL_Complex16* ab, const MKL_INT* ldab,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZPBTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const MKL_Complex16* ab,
                        const MKL_INT* ldab, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall zpbtrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                       const MKL_INT* nrhs, const MKL_Complex16* ab, const MKL_INT* ldab,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zpbtrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* kd,
                        const MKL_INT* nrhs, const MKL_Complex16* ab,
                        const MKL_INT* ldab, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* info );

void __stdcall ZPFTRF( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* a, MKL_INT* info );
void __stdcall ZPFTRF_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* a, MKL_INT* info );
void __stdcall zpftrf( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* a, MKL_INT* info );
void __stdcall zpftrf_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* a, MKL_INT* info );

void __stdcall ZPFTRI( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* a, MKL_INT* info );
void __stdcall ZPFTRI_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* a, MKL_INT* info );
void __stdcall zpftri( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       MKL_Complex16* a, MKL_INT* info );
void __stdcall zpftri_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* a, MKL_INT* info );

void __stdcall ZPFTRS( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex16* a, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZPFTRS_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall zpftrs( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex16* a, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zpftrs_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZPOCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const double* anorm, double* rcond,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZPOCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const double* anorm, double* rcond,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zpocon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const double* anorm, double* rcond,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zpocon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const double* anorm, double* rcond,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZPOEQUB( const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        double* s, double* scond, double* amax, MKL_INT* info );
void __stdcall ZPOEQUB_( const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                         double* s, double* scond, double* amax, MKL_INT* info );
void __stdcall zpoequb( const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        double* s, double* scond, double* amax, MKL_INT* info );
void __stdcall zpoequb_( const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                         double* s, double* scond, double* amax, MKL_INT* info );

void __stdcall ZPOEQU( const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                       double* s, double* scond, double* amax, MKL_INT* info );
void __stdcall ZPOEQU_( const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        double* s, double* scond, double* amax, MKL_INT* info );
void __stdcall zpoequ( const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                       double* s, double* scond, double* amax, MKL_INT* info );
void __stdcall zpoequ_( const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        double* s, double* scond, double* amax, MKL_INT* info );

void __stdcall ZPORFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* af, const MKL_INT* ldaf,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZPORFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zporfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* af, const MKL_INT* ldaf,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zporfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZPORFSX( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf, const double* s,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZPORFSX_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* af, const MKL_INT* ldaf, const double* s,
                         const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                         const MKL_INT* ldx, double* rcond, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zporfsx( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf, const double* s,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zporfsx_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* af, const MKL_INT* ldaf, const double* s,
                         const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                         const MKL_INT* ldx, double* rcond, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZPOSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZPOSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zposv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall zposv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZPOSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* af, const MKL_INT* ldaf, char* equed, int equed_len, double* s,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZPOSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, char* equed, int equed_len, double* s,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zposvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* af, const MKL_INT* ldaf, char* equed, int equed_len, double* s,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zposvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, char* equed, int equed_len, double* s,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZPOSVXX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, char* equed, int equed_len, double* s,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* rpvgrw, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZPOSVXX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* af, const MKL_INT* ldaf, char* equed, int equed_len, double* s,
                         MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                         const MKL_INT* ldx, double* rcond, double* rpvgrw, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zposvxx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, char* equed, int equed_len, double* s,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* rpvgrw, double* berr,
                        const MKL_INT* n_err_bnds, double* err_bnds_norm,
                        double* err_bnds_comp, const MKL_INT* nparams, double* params,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zposvxx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* af, const MKL_INT* ldaf, char* equed, int equed_len, double* s,
                         MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                         const MKL_INT* ldx, double* rcond, double* rpvgrw, double* berr,
                         const MKL_INT* n_err_bnds, double* err_bnds_norm,
                         double* err_bnds_comp, const MKL_INT* nparams, double* params,
                         MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZPOTF2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall ZPOTF2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall zpotf2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall zpotf2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall ZPOTRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall ZPOTRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall zpotrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall zpotrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall ZPOTRI( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall ZPOTRI_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* info );
void __stdcall zpotri( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* info );
void __stdcall zpotri_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* info );

void __stdcall ZPOTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZPOTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall zpotrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zpotrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZPPCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                       const double* anorm, double* rcond, MKL_Complex16* work,
                       double* rwork, MKL_INT* info );
void __stdcall ZPPCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                        const double* anorm, double* rcond, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall zppcon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                       const double* anorm, double* rcond, MKL_Complex16* work,
                       double* rwork, MKL_INT* info );
void __stdcall zppcon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                        const double* anorm, double* rcond, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );

void __stdcall ZPPEQU( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                       double* s, double* scond, double* amax, MKL_INT* info );
void __stdcall ZPPEQU_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                        double* s, double* scond, double* amax, MKL_INT* info );
void __stdcall zppequ( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                       double* s, double* scond, double* amax, MKL_INT* info );
void __stdcall zppequ_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                        double* s, double* scond, double* amax, MKL_INT* info );

void __stdcall ZPPRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* ap, const MKL_Complex16* afp,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZPPRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* ap, const MKL_Complex16* afp,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zpprfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* ap, const MKL_Complex16* afp,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zpprfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* ap, const MKL_Complex16* afp,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZPPSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex16* ap, MKL_Complex16* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall ZPPSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* ap, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall zppsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex16* ap, MKL_Complex16* b, const MKL_INT* ldb,
                      MKL_INT* info );
void __stdcall zppsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* ap, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* info );

void __stdcall ZPPSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex16* ap, MKL_Complex16* afp,
                       char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* rcond, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZPPSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* ap, MKL_Complex16* afp,
                        char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );
void __stdcall zppsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, MKL_Complex16* ap, MKL_Complex16* afp,
                       char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* rcond, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zppsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* ap, MKL_Complex16* afp,
                        char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );

void __stdcall ZPPTRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       MKL_INT* info );
void __stdcall ZPPTRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        MKL_INT* info );
void __stdcall zpptrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       MKL_INT* info );
void __stdcall zpptrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        MKL_INT* info );

void __stdcall ZPPTRI( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       MKL_INT* info );
void __stdcall ZPPTRI_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        MKL_INT* info );
void __stdcall zpptri( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       MKL_INT* info );
void __stdcall zpptri_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        MKL_INT* info );

void __stdcall ZPPTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* ap, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall ZPPTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* ap, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall zpptrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* ap, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall zpptrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* ap, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* info );

void __stdcall ZPSTF2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                       const double* tol, double* work, MKL_INT* info );
void __stdcall ZPSTF2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                        const double* tol, double* work, MKL_INT* info );
void __stdcall zpstf2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                       const double* tol, double* work, MKL_INT* info );
void __stdcall zpstf2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                        const double* tol, double* work, MKL_INT* info );

void __stdcall ZPSTRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                       const double* tol, double* work, MKL_INT* info );
void __stdcall ZPSTRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                        const double* tol, double* work, MKL_INT* info );
void __stdcall zpstrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                       const double* tol, double* work, MKL_INT* info );
void __stdcall zpstrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* piv, MKL_INT* rank,
                        const double* tol, double* work, MKL_INT* info );

void __stdcall ZPTCON( const MKL_INT* n, const double* d, const MKL_Complex16* e,
                       const double* anorm, double* rcond, double* rwork,
                       MKL_INT* info );
void __stdcall ZPTCON_( const MKL_INT* n, const double* d, const MKL_Complex16* e,
                        const double* anorm, double* rcond, double* rwork,
                        MKL_INT* info );
void __stdcall zptcon( const MKL_INT* n, const double* d, const MKL_Complex16* e,
                       const double* anorm, double* rcond, double* rwork,
                       MKL_INT* info );
void __stdcall zptcon_( const MKL_INT* n, const double* d, const MKL_Complex16* e,
                        const double* anorm, double* rcond, double* rwork,
                        MKL_INT* info );

void __stdcall ZPTEQR( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                       MKL_Complex16* z, const MKL_INT* ldz, double* work,
                       MKL_INT* info );
void __stdcall ZPTEQR_( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                        MKL_Complex16* z, const MKL_INT* ldz, double* work,
                        MKL_INT* info );
void __stdcall zpteqr( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                       MKL_Complex16* z, const MKL_INT* ldz, double* work,
                       MKL_INT* info );
void __stdcall zpteqr_( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                        MKL_Complex16* z, const MKL_INT* ldz, double* work,
                        MKL_INT* info );

void __stdcall ZPTRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* d, const MKL_Complex16* e, const double* df,
                       const MKL_Complex16* ef, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                       double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );
void __stdcall ZPTRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* d, const MKL_Complex16* e, const double* df,
                        const MKL_Complex16* ef, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );
void __stdcall zptrfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* d, const MKL_Complex16* e, const double* df,
                       const MKL_Complex16* ef, const MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                       double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );
void __stdcall zptrfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* d, const MKL_Complex16* e, const double* df,
                        const MKL_Complex16* ef, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );

void __stdcall ZPTSV( const MKL_INT* n, const MKL_INT* nrhs, double* d, MKL_Complex16* e,
                      MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZPTSV_( const MKL_INT* n, const MKL_INT* nrhs, double* d,
                       MKL_Complex16* e, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall zptsv( const MKL_INT* n, const MKL_INT* nrhs, double* d, MKL_Complex16* e,
                      MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zptsv_( const MKL_INT* n, const MKL_INT* nrhs, double* d,
                       MKL_Complex16* e, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* info );

void __stdcall ZPTSVX( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* d, const MKL_Complex16* e, double* df,
                       MKL_Complex16* ef, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* rcond, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZPTSVX_( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* d, const MKL_Complex16* e, double* df,
                        MKL_Complex16* ef, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );
void __stdcall zptsvx( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* d, const MKL_Complex16* e, double* df,
                       MKL_Complex16* ef, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* rcond, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zptsvx_( const char* fact, int fact_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* d, const MKL_Complex16* e, double* df,
                        MKL_Complex16* ef, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );

void __stdcall ZPTTRF( const MKL_INT* n, double* d, MKL_Complex16* e, MKL_INT* info );
void __stdcall ZPTTRF_( const MKL_INT* n, double* d, MKL_Complex16* e, MKL_INT* info );
void __stdcall zpttrf( const MKL_INT* n, double* d, MKL_Complex16* e, MKL_INT* info );
void __stdcall zpttrf_( const MKL_INT* n, double* d, MKL_Complex16* e, MKL_INT* info );

void __stdcall ZPTTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* d, const MKL_Complex16* e, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZPTTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* d, const MKL_Complex16* e, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall zpttrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* d, const MKL_Complex16* e, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zpttrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* d, const MKL_Complex16* e, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZPTTS2( const MKL_INT* iuplo, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* d, const MKL_Complex16* e, MKL_Complex16* b,
                       const MKL_INT* ldb );
void __stdcall ZPTTS2_( const MKL_INT* iuplo, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* d, const MKL_Complex16* e, MKL_Complex16* b,
                        const MKL_INT* ldb );
void __stdcall zptts2( const MKL_INT* iuplo, const MKL_INT* n, const MKL_INT* nrhs,
                       const double* d, const MKL_Complex16* e, MKL_Complex16* b,
                       const MKL_INT* ldb );
void __stdcall zptts2_( const MKL_INT* iuplo, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* d, const MKL_Complex16* e, MKL_Complex16* b,
                        const MKL_INT* ldb );

void __stdcall ZROT( const MKL_INT* n, MKL_Complex16* cx, const MKL_INT* incx,
                     MKL_Complex16* cy, const MKL_INT* incy, const double* c,
                     const MKL_Complex16* s );
void __stdcall ZROT_( const MKL_INT* n, MKL_Complex16* cx, const MKL_INT* incx,
                      MKL_Complex16* cy, const MKL_INT* incy, const double* c,
                      const MKL_Complex16* s );
void __stdcall zrot( const MKL_INT* n, MKL_Complex16* cx, const MKL_INT* incx,
                     MKL_Complex16* cy, const MKL_INT* incy, const double* c,
                     const MKL_Complex16* s );
void __stdcall zrot_( const MKL_INT* n, MKL_Complex16* cx, const MKL_INT* incx,
                      MKL_Complex16* cy, const MKL_INT* incy, const double* c,
                      const MKL_Complex16* s );

void __stdcall ZSPCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                       const MKL_INT* ipiv, const double* anorm, double* rcond,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZSPCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                        const MKL_INT* ipiv, const double* anorm, double* rcond,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zspcon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                       const MKL_INT* ipiv, const double* anorm, double* rcond,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zspcon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                        const MKL_INT* ipiv, const double* anorm, double* rcond,
                        MKL_Complex16* work, MKL_INT* info );

void __stdcall ZSPMV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                      const MKL_Complex16* ap, const MKL_Complex16* x,
                      const MKL_INT* incx, const MKL_Complex16* beta, MKL_Complex16* y,
                      const MKL_INT* incy );
void __stdcall ZSPMV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                       const MKL_Complex16* ap, const MKL_Complex16* x,
                       const MKL_INT* incx, const MKL_Complex16* beta, MKL_Complex16* y,
                       const MKL_INT* incy );
void __stdcall zspmv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                      const MKL_Complex16* ap, const MKL_Complex16* x,
                      const MKL_INT* incx, const MKL_Complex16* beta, MKL_Complex16* y,
                      const MKL_INT* incy );
void __stdcall zspmv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                       const MKL_Complex16* ap, const MKL_Complex16* x,
                       const MKL_INT* incx, const MKL_Complex16* beta, MKL_Complex16* y,
                       const MKL_INT* incy );

void __stdcall ZSPR( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                     const MKL_Complex16* x, const MKL_INT* incx, MKL_Complex16* ap );
void __stdcall ZSPR_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                      const MKL_Complex16* x, const MKL_INT* incx, MKL_Complex16* ap );
void __stdcall zspr( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                     const MKL_Complex16* x, const MKL_INT* incx, MKL_Complex16* ap );
void __stdcall zspr_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                      const MKL_Complex16* x, const MKL_INT* incx, MKL_Complex16* ap );

void __stdcall ZSPRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* ap, const MKL_Complex16* afp,
                       const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZSPRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* ap, const MKL_Complex16* afp,
                        const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zsprfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* ap, const MKL_Complex16* afp,
                       const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zsprfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* ap, const MKL_Complex16* afp,
                        const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZSPSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex16* ap, MKL_INT* ipiv, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZSPSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* ap, MKL_INT* ipiv, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zspsv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex16* ap, MKL_INT* ipiv, MKL_Complex16* b,
                      const MKL_INT* ldb, MKL_INT* info );
void __stdcall zspsv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* ap, MKL_INT* ipiv, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZSPSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex16* ap, MKL_Complex16* afp,
                       MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* rcond, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZSPSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* ap, MKL_Complex16* afp,
                        MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );
void __stdcall zspsvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex16* ap, MKL_Complex16* afp,
                       MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* x, const MKL_INT* ldx, double* rcond, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zspsvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* ap, MKL_Complex16* afp,
                        MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* ferr, double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );

void __stdcall ZSPTRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZSPTRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        MKL_INT* ipiv, MKL_INT* info );
void __stdcall zsptrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       MKL_INT* ipiv, MKL_INT* info );
void __stdcall zsptrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        MKL_INT* ipiv, MKL_INT* info );

void __stdcall ZSPTRI( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       const MKL_INT* ipiv, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZSPTRI_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        const MKL_INT* ipiv, MKL_Complex16* work, MKL_INT* info );
void __stdcall zsptri( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                       const MKL_INT* ipiv, MKL_Complex16* work, MKL_INT* info );
void __stdcall zsptri_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* ap,
                        const MKL_INT* ipiv, MKL_Complex16* work, MKL_INT* info );

void __stdcall ZSPTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* ap, const MKL_INT* ipiv, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZSPTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* ap, const MKL_INT* ipiv, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall zsptrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* ap, const MKL_INT* ipiv, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zsptrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* ap, const MKL_INT* ipiv, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZSTEDC( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall ZSTEDC_( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, const MKL_INT* lrwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall zstedc( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                       const MKL_INT* lwork, double* rwork, const MKL_INT* lrwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall zstedc_( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_Complex16* work,
                        const MKL_INT* lwork, double* rwork, const MKL_INT* lrwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall ZSTEGR( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                       double* e, const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_INT* isuppz,
                       double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall ZSTEGR_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                        double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_INT* isuppz,
                        double* work, const MKL_INT* lwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* info );
void __stdcall zstegr( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                       double* e, const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                       MKL_Complex16* z, const MKL_INT* ldz, MKL_INT* isuppz,
                       double* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall zstegr_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                        double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, const double* abstol, MKL_INT* m, double* w,
                        MKL_Complex16* z, const MKL_INT* ldz, MKL_INT* isuppz,
                        double* work, const MKL_INT* lwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* info );

void __stdcall ZSTEIN( const MKL_INT* n, const double* d, const double* e,
                       const MKL_INT* m, const double* w, const MKL_INT* iblock,
                       const MKL_INT* isplit, MKL_Complex16* z, const MKL_INT* ldz,
                       double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall ZSTEIN_( const MKL_INT* n, const double* d, const double* e,
                        const MKL_INT* m, const double* w, const MKL_INT* iblock,
                        const MKL_INT* isplit, MKL_Complex16* z, const MKL_INT* ldz,
                        double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall zstein( const MKL_INT* n, const double* d, const double* e,
                       const MKL_INT* m, const double* w, const MKL_INT* iblock,
                       const MKL_INT* isplit, MKL_Complex16* z, const MKL_INT* ldz,
                       double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );
void __stdcall zstein_( const MKL_INT* n, const double* d, const double* e,
                        const MKL_INT* m, const double* w, const MKL_INT* iblock,
                        const MKL_INT* isplit, MKL_Complex16* z, const MKL_INT* ldz,
                        double* work, MKL_INT* iwork, MKL_INT* ifail, MKL_INT* info );

void __stdcall ZSTEMR( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                       double* e, const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, MKL_INT* m, double* w, MKL_Complex16* z,
                       const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                       MKL_INT* tryrac, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall ZSTEMR_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                        double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, MKL_INT* m, double* w, MKL_Complex16* z,
                        const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                        MKL_INT* tryrac, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall zstemr( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                       double* e, const double* vl, const double* vu, const MKL_INT* il,
                       const MKL_INT* iu, MKL_INT* m, double* w, MKL_Complex16* z,
                       const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                       MKL_INT* tryrac, double* work, const MKL_INT* lwork,
                       MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );
void __stdcall zstemr_( const char* jobz, int jobz_len, const char* range, int range_len, const MKL_INT* n, double* d,
                        double* e, const double* vl, const double* vu, const MKL_INT* il,
                        const MKL_INT* iu, MKL_INT* m, double* w, MKL_Complex16* z,
                        const MKL_INT* ldz, const MKL_INT* nzc, MKL_INT* isuppz,
                        MKL_INT* tryrac, double* work, const MKL_INT* lwork,
                        MKL_INT* iwork, const MKL_INT* liwork, MKL_INT* info );

void __stdcall ZSTEQR( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                       MKL_Complex16* z, const MKL_INT* ldz, double* work,
                       MKL_INT* info );
void __stdcall ZSTEQR_( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                        MKL_Complex16* z, const MKL_INT* ldz, double* work,
                        MKL_INT* info );
void __stdcall zsteqr( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                       MKL_Complex16* z, const MKL_INT* ldz, double* work,
                       MKL_INT* info );
void __stdcall zsteqr_( const char* compz, int compz_len, const MKL_INT* n, double* d, double* e,
                        MKL_Complex16* z, const MKL_INT* ldz, double* work,
                        MKL_INT* info );

void __stdcall ZSYCON( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                       double* rcond, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZSYCON_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                        double* rcond, MKL_Complex16* work, MKL_INT* info );
void __stdcall zsycon( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                       double* rcond, MKL_Complex16* work, MKL_INT* info );
void __stdcall zsycon_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, const double* anorm,
                        double* rcond, MKL_Complex16* work, MKL_INT* info );

void __stdcall ZSYEQUB( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, double* s, double* scond, double* amax,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall ZSYEQUB_( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                         const MKL_INT* lda, double* s, double* scond, double* amax,
                         MKL_Complex16* work, MKL_INT* info );
void __stdcall zsyequb( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, double* s, double* scond, double* amax,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zsyequb_( char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                         const MKL_INT* lda, double* s, double* scond, double* amax,
                         MKL_Complex16* work, MKL_INT* info );

void __stdcall ZSYMV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                      const MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* x,
                      const MKL_INT* incx, const MKL_Complex16* beta, MKL_Complex16* y,
                      const MKL_INT* incy );
void __stdcall ZSYMV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* x, const MKL_INT* incx,
                       const MKL_Complex16* beta, MKL_Complex16* y,
                       const MKL_INT* incy );
void __stdcall zsymv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                      const MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* x,
                      const MKL_INT* incx, const MKL_Complex16* beta, MKL_Complex16* y,
                      const MKL_INT* incy );
void __stdcall zsymv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* x, const MKL_INT* incx,
                       const MKL_Complex16* beta, MKL_Complex16* y,
                       const MKL_INT* incy );

void __stdcall ZSYR( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                     const MKL_Complex16* x, const MKL_INT* incx, MKL_Complex16* a,
                     const MKL_INT* lda );
void __stdcall ZSYR_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                      const MKL_Complex16* x, const MKL_INT* incx, MKL_Complex16* a,
                      const MKL_INT* lda );
void __stdcall zsyr( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                     const MKL_Complex16* x, const MKL_INT* incx, MKL_Complex16* a,
                     const MKL_INT* lda );
void __stdcall zsyr_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* alpha,
                      const MKL_Complex16* x, const MKL_INT* incx, MKL_Complex16* a,
                      const MKL_INT* lda );

void __stdcall ZSYRFS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZSYRFS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zsyrfs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* af, const MKL_INT* ldaf, const MKL_INT* ipiv,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* ferr, double* berr,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall zsyrfs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_INT* ipiv, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* ferr, double* berr,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZSYRFSX( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_INT* ipiv, const double* s, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        double* rcond, double* berr, const MKL_INT* n_err_bnds,
                        double* err_bnds_norm, double* err_bnds_comp,
                        const MKL_INT* nparams, double* params, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall ZSYRFSX_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* af, const MKL_INT* ldaf,
                         const MKL_INT* ipiv, const double* s, const MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                         double* rcond, double* berr, const MKL_INT* n_err_bnds,
                         double* err_bnds_norm, double* err_bnds_comp,
                         const MKL_INT* nparams, double* params, MKL_Complex16* work,
                         double* rwork, MKL_INT* info );
void __stdcall zsyrfsx( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* af, const MKL_INT* ldaf,
                        const MKL_INT* ipiv, const double* s, const MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                        double* rcond, double* berr, const MKL_INT* n_err_bnds,
                        double* err_bnds_norm, double* err_bnds_comp,
                        const MKL_INT* nparams, double* params, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall zsyrfsx_( const char* uplo, int uplo_len, const char* equed, int equed_len, const MKL_INT* n,
                         const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_Complex16* af, const MKL_INT* ldaf,
                         const MKL_INT* ipiv, const double* s, const MKL_Complex16* b,
                         const MKL_INT* ldb, MKL_Complex16* x, const MKL_INT* ldx,
                         double* rcond, double* berr, const MKL_INT* n_err_bnds,
                         double* err_bnds_norm, double* err_bnds_comp,
                         const MKL_INT* nparams, double* params, MKL_Complex16* work,
                         double* rwork, MKL_INT* info );

void __stdcall ZSYSV( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                      MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZSYSV_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsysv( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                      MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                      MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                      const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsysv_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZSYSVX( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* info );
void __stdcall ZSYSVX_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        MKL_INT* info );
void __stdcall zsysvx( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                       const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                       MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                       MKL_INT* info );
void __stdcall zsysvx_( const char* fact, int fact_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, const MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* x,
                        const MKL_INT* ldx, double* rcond, double* ferr, double* berr,
                        MKL_Complex16* work, const MKL_INT* lwork, double* rwork,
                        MKL_INT* info );

void __stdcall ZSYSVXX( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                        double* err_bnds_norm, double* err_bnds_comp,
                        const MKL_INT* nparams, double* params, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall ZSYSVXX_( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                         char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                         double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                         double* err_bnds_norm, double* err_bnds_comp,
                         const MKL_INT* nparams, double* params, MKL_Complex16* work,
                         double* rwork, MKL_INT* info );
void __stdcall zsysvxx( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                        char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                        double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                        double* err_bnds_norm, double* err_bnds_comp,
                        const MKL_INT* nparams, double* params, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall zsysvxx_( const char* fact, int fact_len, char* uplo, int uplo_len, const MKL_INT* n,
                         const MKL_INT* nrhs, MKL_Complex16* a, const MKL_INT* lda,
                         MKL_Complex16* af, const MKL_INT* ldaf, MKL_INT* ipiv,
                         char* equed, int equed_len, double* s, MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_Complex16* x, const MKL_INT* ldx, double* rcond,
                         double* rpvgrw, double* berr, const MKL_INT* n_err_bnds,
                         double* err_bnds_norm, double* err_bnds_comp,
                         const MKL_INT* nparams, double* params, MKL_Complex16* work,
                         double* rwork, MKL_INT* info );

void __stdcall ZSYTF2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall ZSYTF2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zsytf2( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );
void __stdcall zsytf2_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_INT* info );

void __stdcall ZSYTRF( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZSYTRF_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsytrf( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zsytrf_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* ipiv, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZSYTRI( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall ZSYTRI_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall zsytri( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall zsytri_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_INT* ipiv, MKL_Complex16* work,
                        MKL_INT* info );

void __stdcall ZSYTRS( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZSYTRS_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zsytrs( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                       const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall zsytrs_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* a, const MKL_INT* lda, const MKL_INT* ipiv,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZTBCON( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_Complex16* ab,
                       const MKL_INT* ldab, double* rcond, MKL_Complex16* work,
                       double* rwork, MKL_INT* info );
void __stdcall ZTBCON_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_Complex16* ab,
                        const MKL_INT* ldab, double* rcond, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall ztbcon( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_Complex16* ab,
                       const MKL_INT* ldab, double* rcond, MKL_Complex16* work,
                       double* rwork, MKL_INT* info );
void __stdcall ztbcon_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_Complex16* ab,
                        const MKL_INT* ldab, double* rcond, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );

void __stdcall ZTBRFS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const MKL_Complex16* ab, const MKL_INT* ldab,
                       const MKL_Complex16* b, const MKL_INT* ldb,
                       const MKL_Complex16* x, const MKL_INT* ldx, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZTBRFS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const MKL_Complex16* ab, const MKL_INT* ldab,
                        const MKL_Complex16* b, const MKL_INT* ldb,
                        const MKL_Complex16* x, const MKL_INT* ldx, double* ferr,
                        double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );
void __stdcall ztbrfs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const MKL_Complex16* ab, const MKL_INT* ldab,
                       const MKL_Complex16* b, const MKL_INT* ldb,
                       const MKL_Complex16* x, const MKL_INT* ldx, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ztbrfs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const MKL_Complex16* ab, const MKL_INT* ldab,
                        const MKL_Complex16* b, const MKL_INT* ldb,
                        const MKL_Complex16* x, const MKL_INT* ldx, double* ferr,
                        double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );

void __stdcall ZTBTRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZTBTRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall ztbtrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                       const MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ztbtrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* kd, const MKL_INT* nrhs,
                        const MKL_Complex16* ab, const MKL_INT* ldab, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZTFSM( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                      const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                      const MKL_INT* n, const MKL_Complex16* alpha,
                      const MKL_Complex16* a, MKL_Complex16* b, const MKL_INT* ldb );
void __stdcall ZTFSM_( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                       const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_Complex16* alpha,
                       const MKL_Complex16* a, MKL_Complex16* b, const MKL_INT* ldb );
void __stdcall ztfsm( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                      const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                      const MKL_INT* n, const MKL_Complex16* alpha,
                      const MKL_Complex16* a, MKL_Complex16* b, const MKL_INT* ldb );
void __stdcall ztfsm_( const char* transr, int transr_len, const char* side, int side_len, const char* uplo, int uplo_len,
                       const char* trans, int trans_len, const char* diag, int diag_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_Complex16* alpha,
                       const MKL_Complex16* a, MKL_Complex16* b, const MKL_INT* ldb );

void __stdcall ZTFTRI( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, MKL_Complex16* a, MKL_INT* info );
void __stdcall ZTFTRI_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, MKL_Complex16* a, MKL_INT* info );
void __stdcall ztftri( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, MKL_Complex16* a, MKL_INT* info );
void __stdcall ztftri_( const char* transr, int transr_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, MKL_Complex16* a, MKL_INT* info );

void __stdcall ZTFTTP( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex16* arf, MKL_Complex16* ap, MKL_INT* info );
void __stdcall ZTFTTP_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex16* arf, MKL_Complex16* ap, MKL_INT* info );
void __stdcall ztfttp( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex16* arf, MKL_Complex16* ap, MKL_INT* info );
void __stdcall ztfttp_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex16* arf, MKL_Complex16* ap, MKL_INT* info );

void __stdcall ZTFTTR( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex16* arf, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall ZTFTTR_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex16* arf, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* info );
void __stdcall ztfttr( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex16* arf, MKL_Complex16* a, const MKL_INT* lda,
                       MKL_INT* info );
void __stdcall ztfttr_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex16* arf, MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* info );

void __stdcall ZTGEVC( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const MKL_Complex16* s, const MKL_INT* lds,
                       const MKL_Complex16* p, const MKL_INT* ldp, MKL_Complex16* vl,
                       const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );
void __stdcall ZTGEVC_( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const MKL_Complex16* s, const MKL_INT* lds,
                        const MKL_Complex16* p, const MKL_INT* ldp, MKL_Complex16* vl,
                        const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );
void __stdcall ztgevc( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const MKL_Complex16* s, const MKL_INT* lds,
                       const MKL_Complex16* p, const MKL_INT* ldp, MKL_Complex16* vl,
                       const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                       const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );
void __stdcall ztgevc_( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const MKL_Complex16* s, const MKL_INT* lds,
                        const MKL_Complex16* p, const MKL_INT* ldp, MKL_Complex16* vl,
                        const MKL_INT* ldvl, MKL_Complex16* vr, const MKL_INT* ldvr,
                        const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                        double* rwork, MKL_INT* info );

void __stdcall ZTGEX2( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* q, const MKL_INT* ldq,
                       MKL_Complex16* z, const MKL_INT* ldz, const MKL_INT* j1,
                       MKL_INT* info );
void __stdcall ZTGEX2_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* q, const MKL_INT* ldq,
                        MKL_Complex16* z, const MKL_INT* ldz, const MKL_INT* j1,
                        MKL_INT* info );
void __stdcall ztgex2( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* q, const MKL_INT* ldq,
                       MKL_Complex16* z, const MKL_INT* ldz, const MKL_INT* j1,
                       MKL_INT* info );
void __stdcall ztgex2_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* q, const MKL_INT* ldq,
                        MKL_Complex16* z, const MKL_INT* ldz, const MKL_INT* j1,
                        MKL_INT* info );

void __stdcall ZTGEXC( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* q, const MKL_INT* ldq,
                       MKL_Complex16* z, const MKL_INT* ldz, const MKL_INT* ifst,
                       MKL_INT* ilst, MKL_INT* info );
void __stdcall ZTGEXC_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* q, const MKL_INT* ldq,
                        MKL_Complex16* z, const MKL_INT* ldz, const MKL_INT* ifst,
                        MKL_INT* ilst, MKL_INT* info );
void __stdcall ztgexc( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* q, const MKL_INT* ldq,
                       MKL_Complex16* z, const MKL_INT* ldz, const MKL_INT* ifst,
                       MKL_INT* ilst, MKL_INT* info );
void __stdcall ztgexc_( const MKL_INT* wantq, const MKL_INT* wantz, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* q, const MKL_INT* ldq,
                        MKL_Complex16* z, const MKL_INT* ldz, const MKL_INT* ifst,
                        MKL_INT* ilst, MKL_INT* info );

void __stdcall ZTGSEN( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                       const MKL_INT* select, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* alpha, MKL_Complex16* beta, MKL_Complex16* q,
                       const MKL_INT* ldq, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_INT* m, double* pl, double* pr, double* dif,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall ZTGSEN_( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                        const MKL_INT* select, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* alpha, MKL_Complex16* beta, MKL_Complex16* q,
                        const MKL_INT* ldq, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_INT* m, double* pl, double* pr, double* dif,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* info );
void __stdcall ztgsen( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                       const MKL_INT* select, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* alpha, MKL_Complex16* beta, MKL_Complex16* q,
                       const MKL_INT* ldq, MKL_Complex16* z, const MKL_INT* ldz,
                       MKL_INT* m, double* pl, double* pr, double* dif,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* iwork,
                       const MKL_INT* liwork, MKL_INT* info );
void __stdcall ztgsen_( const MKL_INT* ijob, const MKL_INT* wantq, const MKL_INT* wantz,
                        const MKL_INT* select, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* alpha, MKL_Complex16* beta, MKL_Complex16* q,
                        const MKL_INT* ldq, MKL_Complex16* z, const MKL_INT* ldz,
                        MKL_INT* m, double* pl, double* pr, double* dif,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* iwork,
                        const MKL_INT* liwork, MKL_INT* info );

void __stdcall ZTGSJA( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       const double* tola, const double* tolb, double* alpha,
                       double* beta, MKL_Complex16* u, const MKL_INT* ldu,
                       MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                       const MKL_INT* ldq, MKL_Complex16* work, MKL_INT* ncycle,
                       MKL_INT* info );
void __stdcall ZTGSJA_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        const double* tola, const double* tolb, double* alpha,
                        double* beta, MKL_Complex16* u, const MKL_INT* ldu,
                        MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                        const MKL_INT* ldq, MKL_Complex16* work, MKL_INT* ncycle,
                        MKL_INT* info );
void __stdcall ztgsja( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                       const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                       const MKL_INT* k, const MKL_INT* l, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       const double* tola, const double* tolb, double* alpha,
                       double* beta, MKL_Complex16* u, const MKL_INT* ldu,
                       MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                       const MKL_INT* ldq, MKL_Complex16* work, MKL_INT* ncycle,
                       MKL_INT* info );
void __stdcall ztgsja_( const char* jobu, int jobu_len, const char* jobv, int jobv_len, const char* jobq, int jobq_len,
                        const MKL_INT* m, const MKL_INT* p, const MKL_INT* n,
                        const MKL_INT* k, const MKL_INT* l, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        const double* tola, const double* tolb, double* alpha,
                        double* beta, MKL_Complex16* u, const MKL_INT* ldu,
                        MKL_Complex16* v, const MKL_INT* ldv, MKL_Complex16* q,
                        const MKL_INT* ldq, MKL_Complex16* work, MKL_INT* ncycle,
                        MKL_INT* info );

void __stdcall ZTGSNA( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* b, const MKL_INT* ldb,
                       const MKL_Complex16* vl, const MKL_INT* ldvl,
                       const MKL_Complex16* vr, const MKL_INT* ldvr, double* s,
                       double* dif, const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall ZTGSNA_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* b, const MKL_INT* ldb,
                        const MKL_Complex16* vl, const MKL_INT* ldvl,
                        const MKL_Complex16* vr, const MKL_INT* ldvr, double* s,
                        double* dif, const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall ztgsna( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* b, const MKL_INT* ldb,
                       const MKL_Complex16* vl, const MKL_INT* ldvl,
                       const MKL_Complex16* vr, const MKL_INT* ldvr, double* s,
                       double* dif, const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );
void __stdcall ztgsna_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* b, const MKL_INT* ldb,
                        const MKL_Complex16* vl, const MKL_INT* ldvl,
                        const MKL_Complex16* vr, const MKL_INT* ldvr, double* s,
                        double* dif, const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* iwork, MKL_INT* info );

void __stdcall ZTGSY2( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* c,
                       const MKL_INT* ldc, const MKL_Complex16* d, const MKL_INT* ldd,
                       const MKL_Complex16* e, const MKL_INT* lde, MKL_Complex16* f,
                       const MKL_INT* ldf, double* scale, double* rdsum, double* rdscal,
                       MKL_INT* info );
void __stdcall ZTGSY2_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* c,
                        const MKL_INT* ldc, const MKL_Complex16* d, const MKL_INT* ldd,
                        const MKL_Complex16* e, const MKL_INT* lde, MKL_Complex16* f,
                        const MKL_INT* ldf, double* scale, double* rdsum, double* rdscal,
                        MKL_INT* info );
void __stdcall ztgsy2( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* c,
                       const MKL_INT* ldc, const MKL_Complex16* d, const MKL_INT* ldd,
                       const MKL_Complex16* e, const MKL_INT* lde, MKL_Complex16* f,
                       const MKL_INT* ldf, double* scale, double* rdsum, double* rdscal,
                       MKL_INT* info );
void __stdcall ztgsy2_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* c,
                        const MKL_INT* ldc, const MKL_Complex16* d, const MKL_INT* ldd,
                        const MKL_Complex16* e, const MKL_INT* lde, MKL_Complex16* f,
                        const MKL_INT* ldf, double* scale, double* rdsum, double* rdscal,
                        MKL_INT* info );

void __stdcall ZTGSYL( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* c,
                       const MKL_INT* ldc, const MKL_Complex16* d, const MKL_INT* ldd,
                       const MKL_Complex16* e, const MKL_INT* lde, MKL_Complex16* f,
                       const MKL_INT* ldf, double* scale, double* dif,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall ZTGSYL_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* c,
                        const MKL_INT* ldc, const MKL_Complex16* d, const MKL_INT* ldd,
                        const MKL_Complex16* e, const MKL_INT* lde, MKL_Complex16* f,
                        const MKL_INT* ldf, double* scale, double* dif,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall ztgsyl( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                       const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* c,
                       const MKL_INT* ldc, const MKL_Complex16* d, const MKL_INT* ldd,
                       const MKL_Complex16* e, const MKL_INT* lde, MKL_Complex16* f,
                       const MKL_INT* ldf, double* scale, double* dif,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall ztgsyl_( const char* trans, int trans_len, const MKL_INT* ijob, const MKL_INT* m,
                        const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* b, const MKL_INT* ldb, MKL_Complex16* c,
                        const MKL_INT* ldc, const MKL_Complex16* d, const MKL_INT* ldd,
                        const MKL_Complex16* e, const MKL_INT* lde, MKL_Complex16* f,
                        const MKL_INT* ldf, double* scale, double* dif,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall ZTPCON( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_Complex16* ap, double* rcond,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZTPCON_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_Complex16* ap, double* rcond,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ztpcon( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_Complex16* ap, double* rcond,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ztpcon_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_Complex16* ap, double* rcond,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZTPRFS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* ap,
                       const MKL_Complex16* b, const MKL_INT* ldb,
                       const MKL_Complex16* x, const MKL_INT* ldx, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZTPRFS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* ap,
                        const MKL_Complex16* b, const MKL_INT* ldb,
                        const MKL_Complex16* x, const MKL_INT* ldx, double* ferr,
                        double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );
void __stdcall ztprfs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* ap,
                       const MKL_Complex16* b, const MKL_INT* ldb,
                       const MKL_Complex16* x, const MKL_INT* ldx, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ztprfs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* ap,
                        const MKL_Complex16* b, const MKL_INT* ldb,
                        const MKL_Complex16* x, const MKL_INT* ldx, double* ferr,
                        double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );

void __stdcall ZTPTRI( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                       MKL_Complex16* ap, MKL_INT* info );
void __stdcall ZTPTRI_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                        MKL_Complex16* ap, MKL_INT* info );
void __stdcall ztptri( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                       MKL_Complex16* ap, MKL_INT* info );
void __stdcall ztptri_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                        MKL_Complex16* ap, MKL_INT* info );

void __stdcall ZTPTRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* ap,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZTPTRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* ap,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ztptrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* ap,
                       MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ztptrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* ap,
                        MKL_Complex16* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZTPTTF( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex16* ap, MKL_Complex16* arf, MKL_INT* info );
void __stdcall ZTPTTF_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex16* ap, MKL_Complex16* arf, MKL_INT* info );
void __stdcall ztpttf( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex16* ap, MKL_Complex16* arf, MKL_INT* info );
void __stdcall ztpttf_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex16* ap, MKL_Complex16* arf, MKL_INT* info );

void __stdcall ZTPTTR( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ZTPTTR_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ztpttr( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ztpttr_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall ZTRCON( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                       double* rcond, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );
void __stdcall ZTRCON_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        double* rcond, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );
void __stdcall ztrcon( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                       double* rcond, MKL_Complex16* work, double* rwork,
                       MKL_INT* info );
void __stdcall ztrcon_( const char* norm, int norm_len, const char* uplo, int uplo_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_Complex16* a, const MKL_INT* lda,
                        double* rcond, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );

void __stdcall ZTREVC( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, MKL_Complex16* t, const MKL_INT* ldt,
                       MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                       const MKL_INT* ldvr, const MKL_INT* mm, MKL_INT* m,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZTREVC_( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                        const MKL_INT* ldvr, const MKL_INT* mm, MKL_INT* m,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ztrevc( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, MKL_Complex16* t, const MKL_INT* ldt,
                       MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                       const MKL_INT* ldvr, const MKL_INT* mm, MKL_INT* m,
                       MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ztrevc_( const char* side, int side_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* vl, const MKL_INT* ldvl, MKL_Complex16* vr,
                        const MKL_INT* ldvr, const MKL_INT* mm, MKL_INT* m,
                        MKL_Complex16* work, double* rwork, MKL_INT* info );

void __stdcall ZTREXC( const char* compq, int compq_len, const MKL_INT* n, MKL_Complex16* t,
                       const MKL_INT* ldt, MKL_Complex16* q, const MKL_INT* ldq,
                       const MKL_INT* ifst, const MKL_INT* ilst, MKL_INT* info );
void __stdcall ZTREXC_( const char* compq, int compq_len, const MKL_INT* n, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_Complex16* q, const MKL_INT* ldq,
                        const MKL_INT* ifst, const MKL_INT* ilst, MKL_INT* info );
void __stdcall ztrexc( const char* compq, int compq_len, const MKL_INT* n, MKL_Complex16* t,
                       const MKL_INT* ldt, MKL_Complex16* q, const MKL_INT* ldq,
                       const MKL_INT* ifst, const MKL_INT* ilst, MKL_INT* info );
void __stdcall ztrexc_( const char* compq, int compq_len, const MKL_INT* n, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_Complex16* q, const MKL_INT* ldq,
                        const MKL_INT* ifst, const MKL_INT* ilst, MKL_INT* info );

void __stdcall ZTRRFS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* b, const MKL_INT* ldb,
                       const MKL_Complex16* x, const MKL_INT* ldx, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ZTRRFS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* b, const MKL_INT* ldb,
                        const MKL_Complex16* x, const MKL_INT* ldx, double* ferr,
                        double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );
void __stdcall ztrrfs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* b, const MKL_INT* ldb,
                       const MKL_Complex16* x, const MKL_INT* ldx, double* ferr,
                       double* berr, MKL_Complex16* work, double* rwork, MKL_INT* info );
void __stdcall ztrrfs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* b, const MKL_INT* ldb,
                        const MKL_Complex16* x, const MKL_INT* ldx, double* ferr,
                        double* berr, MKL_Complex16* work, double* rwork,
                        MKL_INT* info );

void __stdcall ZTRSEN( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                       const MKL_INT* n, MKL_Complex16* t, const MKL_INT* ldt,
                       MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* w,
                       MKL_INT* m, double* s, double* sep, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZTRSEN_( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                        const MKL_INT* n, MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* w,
                        MKL_INT* m, double* s, double* sep, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ztrsen( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                       const MKL_INT* n, MKL_Complex16* t, const MKL_INT* ldt,
                       MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* w,
                       MKL_INT* m, double* s, double* sep, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ztrsen_( const char* job, int job_len, const char* compq, int compq_len, const MKL_INT* select,
                        const MKL_INT* n, MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* q, const MKL_INT* ldq, MKL_Complex16* w,
                        MKL_INT* m, double* s, double* sep, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZTRSNA( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const MKL_Complex16* t, const MKL_INT* ldt,
                       const MKL_Complex16* vl, const MKL_INT* ldvl,
                       const MKL_Complex16* vr, const MKL_INT* ldvr, double* s,
                       double* sep, const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                       const MKL_INT* ldwork, double* rwork, MKL_INT* info );
void __stdcall ZTRSNA_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const MKL_Complex16* t, const MKL_INT* ldt,
                        const MKL_Complex16* vl, const MKL_INT* ldvl,
                        const MKL_Complex16* vr, const MKL_INT* ldvr, double* s,
                        double* sep, const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                        const MKL_INT* ldwork, double* rwork, MKL_INT* info );
void __stdcall ztrsna( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                       const MKL_INT* n, const MKL_Complex16* t, const MKL_INT* ldt,
                       const MKL_Complex16* vl, const MKL_INT* ldvl,
                       const MKL_Complex16* vr, const MKL_INT* ldvr, double* s,
                       double* sep, const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                       const MKL_INT* ldwork, double* rwork, MKL_INT* info );
void __stdcall ztrsna_( const char* job, int job_len, const char* howmny, int howmny_len, const MKL_INT* select,
                        const MKL_INT* n, const MKL_Complex16* t, const MKL_INT* ldt,
                        const MKL_Complex16* vl, const MKL_INT* ldvl,
                        const MKL_Complex16* vr, const MKL_INT* ldvr, double* s,
                        double* sep, const MKL_INT* mm, MKL_INT* m, MKL_Complex16* work,
                        const MKL_INT* ldwork, double* rwork, MKL_INT* info );

void __stdcall ZTRSYL( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                       const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* c, const MKL_INT* ldc, double* scale,
                       MKL_INT* info );
void __stdcall ZTRSYL_( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* c, const MKL_INT* ldc, double* scale,
                        MKL_INT* info );
void __stdcall ztrsyl( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                       const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_Complex16* c, const MKL_INT* ldc, double* scale,
                       MKL_INT* info );
void __stdcall ztrsyl_( const char* trana, int trana_len, const char* tranb, int tranb_len, const MKL_INT* isgn,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* c, const MKL_INT* ldc, double* scale,
                        MKL_INT* info );

void __stdcall ZTRTI2( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ZTRTI2_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ztrti2( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ztrti2_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall ZTRTRI( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ZTRTRI_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ztrtri( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall ztrtri_( const char* uplo, int uplo_len, const char* diag, int diag_len, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall ZTRTRS( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall ZTRTRS_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall ztrtrs( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                       const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                       MKL_INT* info );
void __stdcall ztrtrs_( const char* uplo, int uplo_len, const char* trans, int trans_len, const char* diag, int diag_len,
                        const MKL_INT* n, const MKL_INT* nrhs, const MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* info );

void __stdcall ZTRTTF( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* arf,
                       MKL_INT* info );
void __stdcall ZTRTTF_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* arf,
                        MKL_INT* info );
void __stdcall ztrttf( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* arf,
                       MKL_INT* info );
void __stdcall ztrttf_( const char* transr, int transr_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* arf,
                        MKL_INT* info );

void __stdcall ZTRTTP( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* ap, MKL_INT* info );
void __stdcall ZTRTTP_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* ap, MKL_INT* info );
void __stdcall ztrttp( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* ap, MKL_INT* info );
void __stdcall ztrttp_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* ap, MKL_INT* info );

void __stdcall ZTZRQF( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_INT* info );
void __stdcall ZTZRQF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_INT* info );
void __stdcall ztzrqf( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_INT* info );
void __stdcall ztzrqf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_INT* info );

void __stdcall ZTZRZF( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZTZRZF_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ztzrzf( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ztzrzf_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNG2L( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZUNG2L_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zung2l( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zung2l_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, MKL_INT* info );

void __stdcall ZUNG2R( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZUNG2R_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zung2r( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zung2r_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, MKL_INT* info );

void __stdcall ZUNGBR( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNGBR_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zungbr( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* k, MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zungbr_( const char* vect, int vect_len, const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* k, MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* tau, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNGHR( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNGHR_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunghr( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunghr_( const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNGL2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZUNGL2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zungl2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zungl2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, MKL_INT* info );

void __stdcall ZUNGLQ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNGLQ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunglq( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunglq_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNGQL( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNGQL_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zungql( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zungql_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNGQR( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNGQR_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zungqr( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zungqr_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNGR2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZUNGR2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zungr2( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zungr2_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, MKL_INT* info );

void __stdcall ZUNGRQ( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNGRQ_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zungrq( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zungrq_( const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        MKL_Complex16* a, const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNGTR( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNGTR_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zungtr( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall zungtr_( const char* uplo, int uplo_len, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNM2L( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZUNM2L_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );
void __stdcall zunm2l( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );
void __stdcall zunm2l_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );

void __stdcall ZUNM2R( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZUNM2R_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );
void __stdcall zunm2r( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );
void __stdcall zunm2r_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );

void __stdcall ZUNMBR( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNMBR_( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunmbr( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunmbr_( const char* vect, int vect_len, const char* side, int side_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_INT* k,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNMHR( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNMHR_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunmhr( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunmhr_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* ilo, const MKL_INT* ihi,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNML2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZUNML2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );
void __stdcall zunml2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );
void __stdcall zunml2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );

void __stdcall ZUNMLQ( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZUNMLQ_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zunmlq( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zunmlq_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall ZUNMQL( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZUNMQL_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zunmql( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zunmql_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall ZUNMQR( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZUNMQR_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zunmqr( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zunmqr_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall ZUNMR2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );
void __stdcall ZUNMR2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );
void __stdcall zunmr2( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );
void __stdcall zunmr2_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, MKL_INT* info );

void __stdcall ZUNMR3( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZUNMR3_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zunmr3( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zunmr3_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, MKL_INT* info );

void __stdcall ZUNMRQ( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZUNMRQ_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zunmrq( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zunmrq_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall ZUNMRZ( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZUNMRZ_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunmrz( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall zunmrz_( const char* side, int side_len, const char* trans, int trans_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZUNMTR( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZUNMTR_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zunmtr( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                       const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zunmtr_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* a,
                        const MKL_INT* lda, const MKL_Complex16* tau, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

void __stdcall ZUPGTR( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                       const MKL_Complex16* tau, MKL_Complex16* q, const MKL_INT* ldq,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZUPGTR_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                        const MKL_Complex16* tau, MKL_Complex16* q, const MKL_INT* ldq,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zupgtr( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                       const MKL_Complex16* tau, MKL_Complex16* q, const MKL_INT* ldq,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zupgtr_( const char* uplo, int uplo_len, const MKL_INT* n, const MKL_Complex16* ap,
                        const MKL_Complex16* tau, MKL_Complex16* q, const MKL_INT* ldq,
                        MKL_Complex16* work, MKL_INT* info );

void __stdcall ZUPMTR( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* ap,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZUPMTR_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* ap,
                        const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zupmtr( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                       const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* ap,
                       const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zupmtr_( const char* side, int side_len, const char* uplo, int uplo_len, const char* trans, int trans_len,
                        const MKL_INT* m, const MKL_INT* n, const MKL_Complex16* ap,
                        const MKL_Complex16* tau, MKL_Complex16* c, const MKL_INT* ldc,
                        MKL_Complex16* work, MKL_INT* info );


/* C-declaration of following routines is added in oneMKL 11.2 */

void __stdcall CGEQRT2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall CGEQRT2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_INT* info );
void __stdcall cgeqrt2( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall cgeqrt2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex8* a,
                         const MKL_INT* lda, MKL_Complex8* t,
                         const MKL_INT* ldt, MKL_INT* info );

void __stdcall CHESWAPR( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall CHESWAPR_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall cheswapr( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall cheswapr_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_INT* i1, const MKL_INT* i2 );

void __stdcall CHETRI2( const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall CHETRI2_( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_INT* ipiv, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetri2( const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, MKL_Complex8* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall chetri2_( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_INT* ipiv, MKL_Complex8* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall CHETRI2X( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_INT* ipiv, MKL_Complex8* work,
                         const MKL_INT* nb, MKL_INT* info );
void __stdcall CHETRI2X_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_INT* ipiv, MKL_Complex8* work,
                          const MKL_INT* nb, MKL_INT* info );
void __stdcall chetri2x( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex8* a, const MKL_INT* lda,
                         const MKL_INT* ipiv, MKL_Complex8* work,
                         const MKL_INT* nb, MKL_INT* info );
void __stdcall chetri2x_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_INT* ipiv, MKL_Complex8* work,
                          const MKL_INT* nb, MKL_INT* info );

void __stdcall CLARSCL2( const MKL_INT* m, const MKL_INT* n, const float* d,
                         MKL_Complex8* x, const MKL_INT* ldx );
void __stdcall CLARSCL2_( const MKL_INT* m, const MKL_INT* n, const float* d,
                          MKL_Complex8* x, const MKL_INT* ldx );
void __stdcall clarscl2( const MKL_INT* m, const MKL_INT* n, const float* d,
                         MKL_Complex8* x, const MKL_INT* ldx );
void __stdcall clarscl2_( const MKL_INT* m, const MKL_INT* n, const float* d,
                          MKL_Complex8* x, const MKL_INT* ldx );

void __stdcall CLASCL2( const MKL_INT* m, const MKL_INT* n, const float* d,
                        MKL_Complex8* x, const MKL_INT* ldx );
void __stdcall CLASCL2_( const MKL_INT* m, const MKL_INT* n, const float* d,
                         MKL_Complex8* x, const MKL_INT* ldx );
void __stdcall clascl2( const MKL_INT* m, const MKL_INT* n, const float* d,
                        MKL_Complex8* x, const MKL_INT* ldx );
void __stdcall clascl2_( const MKL_INT* m, const MKL_INT* n, const float* d,
                         MKL_Complex8* x, const MKL_INT* ldx );

void __stdcall CLA_GBAMV( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const MKL_INT* kl,
                          const MKL_INT* ku, const float* alpha,
                          const MKL_Complex8* ab, const MKL_INT* ldab,
                          const MKL_Complex8* x, const MKL_INT* incx,
                          const float* beta, float* y, const MKL_INT* incy );
void __stdcall CLA_GBAMV_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const MKL_INT* kl,
                           const MKL_INT* ku, const float* alpha,
                           const MKL_Complex8* ab, const MKL_INT* ldab,
                           const MKL_Complex8* x, const MKL_INT* incx,
                           const float* beta, float* y, const MKL_INT* incy );
void __stdcall cla_gbamv( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const MKL_INT* kl,
                          const MKL_INT* ku, const float* alpha,
                          const MKL_Complex8* ab, const MKL_INT* ldab,
                          const MKL_Complex8* x, const MKL_INT* incx,
                          const float* beta, float* y, const MKL_INT* incy );
void __stdcall cla_gbamv_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const MKL_INT* kl,
                           const MKL_INT* ku, const float* alpha,
                           const MKL_Complex8* ab, const MKL_INT* ldab,
                           const MKL_Complex8* x, const MKL_INT* incx,
                           const float* beta, float* y, const MKL_INT* incy );

float __stdcall CLA_GBRCOND_C( const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const MKL_Complex8* ab,
                               const MKL_INT* ldab, const MKL_Complex8* afb,
                               const MKL_INT* ldafb, const MKL_INT* ipiv,
                               const float* c, const MKL_INT* capply,
                               MKL_INT* info, MKL_Complex8* work,
                               float* rwork );
float __stdcall CLA_GBRCOND_C_( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_INT* kl,
                                const MKL_INT* ku, const MKL_Complex8* ab,
                                const MKL_INT* ldab, const MKL_Complex8* afb,
                                const MKL_INT* ldafb, const MKL_INT* ipiv,
                                const float* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex8* work,
                                float* rwork );
float __stdcall cla_gbrcond_c( const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const MKL_Complex8* ab,
                               const MKL_INT* ldab, const MKL_Complex8* afb,
                               const MKL_INT* ldafb, const MKL_INT* ipiv,
                               const float* c, const MKL_INT* capply,
                               MKL_INT* info, MKL_Complex8* work,
                               float* rwork );
float __stdcall cla_gbrcond_c_( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_INT* kl,
                                const MKL_INT* ku, const MKL_Complex8* ab,
                                const MKL_INT* ldab, const MKL_Complex8* afb,
                                const MKL_INT* ldafb, const MKL_INT* ipiv,
                                const float* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex8* work,
                                float* rwork );

float __stdcall CLA_GBRCOND_X( const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const MKL_Complex8* ab,
                               const MKL_INT* ldab, const MKL_Complex8* afb,
                               const MKL_INT* ldafb, const MKL_INT* ipiv,
                               const MKL_Complex8* x, MKL_INT* info,
                               MKL_Complex8* work, float* rwork );
float __stdcall CLA_GBRCOND_X_( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_INT* kl,
                                const MKL_INT* ku, const MKL_Complex8* ab,
                                const MKL_INT* ldab, const MKL_Complex8* afb,
                                const MKL_INT* ldafb, const MKL_INT* ipiv,
                                const MKL_Complex8* x, MKL_INT* info,
                                MKL_Complex8* work, float* rwork );
float __stdcall cla_gbrcond_x( const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const MKL_Complex8* ab,
                               const MKL_INT* ldab, const MKL_Complex8* afb,
                               const MKL_INT* ldafb, const MKL_INT* ipiv,
                               const MKL_Complex8* x, MKL_INT* info,
                               MKL_Complex8* work, float* rwork );
float __stdcall cla_gbrcond_x_( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_INT* kl,
                                const MKL_INT* ku, const MKL_Complex8* ab,
                                const MKL_INT* ldab, const MKL_Complex8* afb,
                                const MKL_INT* ldafb, const MKL_INT* ipiv,
                                const MKL_Complex8* x, MKL_INT* info,
                                MKL_Complex8* work, float* rwork );

void __stdcall CLA_GBRFSX_EXTENDED( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* kl,
                                    const MKL_INT* ku, const MKL_INT* nrhs,
                                    const MKL_Complex8* ab,
                                    const MKL_INT* ldab,
                                    const MKL_Complex8* afb,
                                    const MKL_INT* ldafb,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const MKL_Complex8* b,
                                    const MKL_INT* ldb, MKL_Complex8* y,
                                    const MKL_INT* ldy, float* berr_out,
                                    const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, MKL_Complex8* res,
                                    float* ayb, MKL_Complex8* dy,
                                    MKL_Complex8* y_tail, const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall CLA_GBRFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* kl,
                                     const MKL_INT* ku, const MKL_INT* nrhs,
                                     const MKL_Complex8* ab,
                                     const MKL_INT* ldab,
                                     const MKL_Complex8* afb,
                                     const MKL_INT* ldafb,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const MKL_Complex8* b,
                                     const MKL_INT* ldb, MKL_Complex8* y,
                                     const MKL_INT* ldy, float* berr_out,
                                     const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, MKL_Complex8* res,
                                     float* ayb, MKL_Complex8* dy,
                                     MKL_Complex8* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall cla_gbrfsx_extended( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* kl,
                                    const MKL_INT* ku, const MKL_INT* nrhs,
                                    const MKL_Complex8* ab,
                                    const MKL_INT* ldab,
                                    const MKL_Complex8* afb,
                                    const MKL_INT* ldafb,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const MKL_Complex8* b,
                                    const MKL_INT* ldb, MKL_Complex8* y,
                                    const MKL_INT* ldy, float* berr_out,
                                    const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, MKL_Complex8* res,
                                    float* ayb, MKL_Complex8* dy,
                                    MKL_Complex8* y_tail, const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall cla_gbrfsx_extended_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* kl,
                                     const MKL_INT* ku, const MKL_INT* nrhs,
                                     const MKL_Complex8* ab,
                                     const MKL_INT* ldab,
                                     const MKL_Complex8* afb,
                                     const MKL_INT* ldafb,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const MKL_Complex8* b,
                                     const MKL_INT* ldb, MKL_Complex8* y,
                                     const MKL_INT* ldy, float* berr_out,
                                     const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, MKL_Complex8* res,
                                     float* ayb, MKL_Complex8* dy,
                                     MKL_Complex8* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

float __stdcall CLA_GBRPVGRW( const MKL_INT* n, const MKL_INT* kl,
                              const MKL_INT* ku, const MKL_INT* ncols,
                              const MKL_Complex8* ab, const MKL_INT* ldab,
                              const MKL_Complex8* afb, const MKL_INT* ldafb );
float __stdcall CLA_GBRPVGRW_( const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const MKL_INT* ncols,
                               const MKL_Complex8* ab, const MKL_INT* ldab,
                               const MKL_Complex8* afb, const MKL_INT* ldafb );
float __stdcall cla_gbrpvgrw( const MKL_INT* n, const MKL_INT* kl,
                              const MKL_INT* ku, const MKL_INT* ncols,
                              const MKL_Complex8* ab, const MKL_INT* ldab,
                              const MKL_Complex8* afb, const MKL_INT* ldafb );
float __stdcall cla_gbrpvgrw_( const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const MKL_INT* ncols,
                               const MKL_Complex8* ab, const MKL_INT* ldab,
                               const MKL_Complex8* afb, const MKL_INT* ldafb );

void __stdcall CLA_GEAMV( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const float* alpha,
                          const MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* x, const MKL_INT* incx,
                          const float* beta, float* y, const MKL_INT* incy );
void __stdcall CLA_GEAMV_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const float* alpha,
                           const MKL_Complex8* a, const MKL_INT* lda,
                           const MKL_Complex8* x, const MKL_INT* incx,
                           const float* beta, float* y, const MKL_INT* incy );
void __stdcall cla_geamv( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const float* alpha,
                          const MKL_Complex8* a, const MKL_INT* lda,
                          const MKL_Complex8* x, const MKL_INT* incx,
                          const float* beta, float* y, const MKL_INT* incy );
void __stdcall cla_geamv_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const float* alpha,
                           const MKL_Complex8* a, const MKL_INT* lda,
                           const MKL_Complex8* x, const MKL_INT* incx,
                           const float* beta, float* y, const MKL_INT* incy );

float __stdcall CLA_GERCOND_C( const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const float* c, const MKL_INT* capply,
                               MKL_INT* info, MKL_Complex8* work,
                               float* rwork );
float __stdcall CLA_GERCOND_C_( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const float* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex8* work,
                                float* rwork );
float __stdcall cla_gercond_c( const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const float* c, const MKL_INT* capply,
                               MKL_INT* info, MKL_Complex8* work,
                               float* rwork );
float __stdcall cla_gercond_c_( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const float* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex8* work,
                                float* rwork );

float __stdcall CLA_GERCOND_X( const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const MKL_Complex8* x, MKL_INT* info,
                               MKL_Complex8* work, float* rwork );
float __stdcall CLA_GERCOND_X_( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const MKL_Complex8* x, MKL_INT* info,
                                MKL_Complex8* work, float* rwork );
float __stdcall cla_gercond_x( const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const MKL_Complex8* x, MKL_INT* info,
                               MKL_Complex8* work, float* rwork );
float __stdcall cla_gercond_x_( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const MKL_Complex8* x, MKL_INT* info,
                                MKL_Complex8* work, float* rwork );

void __stdcall CLA_GERFSX_EXTENDED( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex8* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex8* af,
                                    const MKL_INT* ldaf, const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const MKL_Complex8* b,
                                    const MKL_INT* ldb, MKL_Complex8* y,
                                    const MKL_INT* ldy, float* berr_out,
                                    const MKL_INT* n_norms, float* errs_n,
                                    float* errs_c, MKL_Complex8* res,
                                    float* ayb, MKL_Complex8* dy,
                                    MKL_Complex8* y_tail, const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall CLA_GERFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex8* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex8* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const MKL_Complex8* b,
                                     const MKL_INT* ldb, MKL_Complex8* y,
                                     const MKL_INT* ldy, float* berr_out,
                                     const MKL_INT* n_norms, float* errs_n,
                                     float* errs_c, MKL_Complex8* res,
                                     float* ayb, MKL_Complex8* dy,
                                     MKL_Complex8* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall cla_gerfsx_extended( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex8* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex8* af,
                                    const MKL_INT* ldaf, const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const MKL_Complex8* b,
                                    const MKL_INT* ldb, MKL_Complex8* y,
                                    const MKL_INT* ldy, float* berr_out,
                                    const MKL_INT* n_norms, float* errs_n,
                                    float* errs_c, MKL_Complex8* res,
                                    float* ayb, MKL_Complex8* dy,
                                    MKL_Complex8* y_tail, const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall cla_gerfsx_extended_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex8* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex8* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const MKL_Complex8* b,
                                     const MKL_INT* ldb, MKL_Complex8* y,
                                     const MKL_INT* ldy, float* berr_out,
                                     const MKL_INT* n_norms, float* errs_n,
                                     float* errs_c, MKL_Complex8* res,
                                     float* ayb, MKL_Complex8* dy,
                                     MKL_Complex8* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

float __stdcall CLA_GERPVGRW( const MKL_INT* n, const MKL_INT* ncols,
                              const MKL_Complex8* a, const MKL_INT* lda,
                              const MKL_Complex8* af, const MKL_INT* ldaf );
float __stdcall CLA_GERPVGRW_( const MKL_INT* n, const MKL_INT* ncols,
                               const MKL_Complex8* a, const MKL_INT* lda,
                               const MKL_Complex8* af, const MKL_INT* ldaf );
float __stdcall cla_gerpvgrw( const MKL_INT* n, const MKL_INT* ncols,
                              const MKL_Complex8* a, const MKL_INT* lda,
                              const MKL_Complex8* af, const MKL_INT* ldaf );
float __stdcall cla_gerpvgrw_( const MKL_INT* n, const MKL_INT* ncols,
                               const MKL_Complex8* a, const MKL_INT* lda,
                               const MKL_Complex8* af, const MKL_INT* ldaf );

void __stdcall CLA_HEAMV( const MKL_INT* uplo, const MKL_INT* n,
                          const float* alpha, const MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_Complex8* x,
                          const MKL_INT* incx, const float* beta, float* y,
                          const MKL_INT* incy );
void __stdcall CLA_HEAMV_( const MKL_INT* uplo, const MKL_INT* n,
                           const float* alpha, const MKL_Complex8* a,
                           const MKL_INT* lda, const MKL_Complex8* x,
                           const MKL_INT* incx, const float* beta, float* y,
                           const MKL_INT* incy );
void __stdcall cla_heamv( const MKL_INT* uplo, const MKL_INT* n,
                          const float* alpha, const MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_Complex8* x,
                          const MKL_INT* incx, const float* beta, float* y,
                          const MKL_INT* incy );
void __stdcall cla_heamv_( const MKL_INT* uplo, const MKL_INT* n,
                           const float* alpha, const MKL_Complex8* a,
                           const MKL_INT* lda, const MKL_Complex8* x,
                           const MKL_INT* incx, const float* beta, float* y,
                           const MKL_INT* incy );

float __stdcall CLA_HERCOND_C( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const float* c, const MKL_INT* capply,
                               MKL_INT* info, MKL_Complex8* work,
                               float* rwork );
float __stdcall CLA_HERCOND_C_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const float* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex8* work,
                                float* rwork );
float __stdcall cla_hercond_c( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const float* c, const MKL_INT* capply,
                               MKL_INT* info, MKL_Complex8* work,
                               float* rwork );
float __stdcall cla_hercond_c_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const float* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex8* work,
                                float* rwork );

float __stdcall CLA_HERCOND_X( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const MKL_Complex8* x, MKL_INT* info,
                               MKL_Complex8* work, float* rwork );
float __stdcall CLA_HERCOND_X_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const MKL_Complex8* x, MKL_INT* info,
                                MKL_Complex8* work, float* rwork );
float __stdcall cla_hercond_x( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const MKL_Complex8* x, MKL_INT* info,
                               MKL_Complex8* work, float* rwork );
float __stdcall cla_hercond_x_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const MKL_Complex8* x, MKL_INT* info,
                                MKL_Complex8* work, float* rwork );

void __stdcall CLA_HERFSX_EXTENDED( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex8* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex8* af,
                                    const MKL_INT* ldaf, const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const MKL_Complex8* b,
                                    const MKL_INT* ldb, MKL_Complex8* y,
                                    const MKL_INT* ldy, float* berr_out,
                                    const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, MKL_Complex8* res,
                                    float* ayb, MKL_Complex8* dy,
                                    MKL_Complex8* y_tail, const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall CLA_HERFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex8* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex8* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const MKL_Complex8* b,
                                     const MKL_INT* ldb, MKL_Complex8* y,
                                     const MKL_INT* ldy, float* berr_out,
                                     const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, MKL_Complex8* res,
                                     float* ayb, MKL_Complex8* dy,
                                     MKL_Complex8* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall cla_herfsx_extended( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex8* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex8* af,
                                    const MKL_INT* ldaf, const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const MKL_Complex8* b,
                                    const MKL_INT* ldb, MKL_Complex8* y,
                                    const MKL_INT* ldy, float* berr_out,
                                    const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, MKL_Complex8* res,
                                    float* ayb, MKL_Complex8* dy,
                                    MKL_Complex8* y_tail, const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall cla_herfsx_extended_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex8* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex8* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const MKL_Complex8* b,
                                     const MKL_INT* ldb, MKL_Complex8* y,
                                     const MKL_INT* ldy, float* berr_out,
                                     const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, MKL_Complex8* res,
                                     float* ayb, MKL_Complex8* dy,
                                     MKL_Complex8* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

float __stdcall CLA_HERPVGRW( const char* uplo, int uplo_len,
                              const MKL_INT* n, const MKL_INT* info,
                              const MKL_Complex8* a, const MKL_INT* lda,
                              const MKL_Complex8* af, const MKL_INT* ldaf,
                              const MKL_INT* ipiv, float* work );
float __stdcall CLA_HERPVGRW_( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* info,
                               const MKL_Complex8* a, const MKL_INT* lda,
                               const MKL_Complex8* af, const MKL_INT* ldaf,
                               const MKL_INT* ipiv, float* work );
float __stdcall cla_herpvgrw( const char* uplo, int uplo_len,
                              const MKL_INT* n, const MKL_INT* info,
                              const MKL_Complex8* a, const MKL_INT* lda,
                              const MKL_Complex8* af, const MKL_INT* ldaf,
                              const MKL_INT* ipiv, float* work );
float __stdcall cla_herpvgrw_( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* info,
                               const MKL_Complex8* a, const MKL_INT* lda,
                               const MKL_Complex8* af, const MKL_INT* ldaf,
                               const MKL_INT* ipiv, float* work );

void __stdcall CLA_LIN_BERR( const MKL_INT* n, const MKL_INT* nz,
                             const MKL_INT* nrhs, const MKL_Complex8* res,
                             const float* ayb, float* berr );
void __stdcall CLA_LIN_BERR_( const MKL_INT* n, const MKL_INT* nz,
                              const MKL_INT* nrhs, const MKL_Complex8* res,
                              const float* ayb, float* berr );
void __stdcall cla_lin_berr( const MKL_INT* n, const MKL_INT* nz,
                             const MKL_INT* nrhs, const MKL_Complex8* res,
                             const float* ayb, float* berr );
void __stdcall cla_lin_berr_( const MKL_INT* n, const MKL_INT* nz,
                              const MKL_INT* nrhs, const MKL_Complex8* res,
                              const float* ayb, float* berr );

float __stdcall CLA_PORCOND_C( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const float* c,
                               const MKL_INT* capply, MKL_INT* info,
                               MKL_Complex8* work, float* rwork );
float __stdcall CLA_PORCOND_C_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const float* c,
                                const MKL_INT* capply, MKL_INT* info,
                                MKL_Complex8* work, float* rwork );
float __stdcall cla_porcond_c( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const float* c,
                               const MKL_INT* capply, MKL_INT* info,
                               MKL_Complex8* work, float* rwork );
float __stdcall cla_porcond_c_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const float* c,
                                const MKL_INT* capply, MKL_INT* info,
                                MKL_Complex8* work, float* rwork );

float __stdcall CLA_PORCOND_X( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_Complex8* x,
                               MKL_INT* info, MKL_Complex8* work,
                               float* rwork );
float __stdcall CLA_PORCOND_X_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_Complex8* x,
                                MKL_INT* info, MKL_Complex8* work,
                                float* rwork );
float __stdcall cla_porcond_x( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_Complex8* x,
                               MKL_INT* info, MKL_Complex8* work,
                               float* rwork );
float __stdcall cla_porcond_x_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_Complex8* x,
                                MKL_INT* info, MKL_Complex8* work,
                                float* rwork );

void __stdcall CLA_PORFSX_EXTENDED( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex8* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex8* af,
                                    const MKL_INT* ldaf,
                                    const MKL_INT* colequ, const float* c,
                                    const MKL_Complex8* b,
                                    const MKL_INT* ldb, MKL_Complex8* y,
                                    const MKL_INT* ldy, float* berr_out,
                                    const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, MKL_Complex8* res,
                                    float* ayb, MKL_Complex8* dy,
                                    MKL_Complex8* y_tail, const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall CLA_PORFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex8* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex8* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* colequ, const float* c,
                                     const MKL_Complex8* b,
                                     const MKL_INT* ldb, MKL_Complex8* y,
                                     const MKL_INT* ldy, float* berr_out,
                                     const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, MKL_Complex8* res,
                                     float* ayb, MKL_Complex8* dy,
                                     MKL_Complex8* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall cla_porfsx_extended( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex8* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex8* af,
                                    const MKL_INT* ldaf,
                                    const MKL_INT* colequ, const float* c,
                                    const MKL_Complex8* b,
                                    const MKL_INT* ldb, MKL_Complex8* y,
                                    const MKL_INT* ldy, float* berr_out,
                                    const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, MKL_Complex8* res,
                                    float* ayb, MKL_Complex8* dy,
                                    MKL_Complex8* y_tail, const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall cla_porfsx_extended_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex8* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex8* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* colequ, const float* c,
                                     const MKL_Complex8* b,
                                     const MKL_INT* ldb, MKL_Complex8* y,
                                     const MKL_INT* ldy, float* berr_out,
                                     const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, MKL_Complex8* res,
                                     float* ayb, MKL_Complex8* dy,
                                     MKL_Complex8* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

float __stdcall CLA_PORPVGRW( const char* uplo, int uplo_len,
                              const MKL_INT* ncols, const MKL_Complex8* a,
                              const MKL_INT* lda, const MKL_Complex8* af,
                              const MKL_INT* ldaf, float* work );
float __stdcall CLA_PORPVGRW_( const char* uplo, int uplo_len,
                               const MKL_INT* ncols, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, float* work );
float __stdcall cla_porpvgrw( const char* uplo, int uplo_len,
                              const MKL_INT* ncols, const MKL_Complex8* a,
                              const MKL_INT* lda, const MKL_Complex8* af,
                              const MKL_INT* ldaf, float* work );
float __stdcall cla_porpvgrw_( const char* uplo, int uplo_len,
                               const MKL_INT* ncols, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, float* work );

void __stdcall CLA_SYAMV( const MKL_INT* uplo, const MKL_INT* n,
                          const float* alpha, const MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_Complex8* x,
                          const MKL_INT* incx, const float* beta, float* y,
                          const MKL_INT* incy );
void __stdcall CLA_SYAMV_( const MKL_INT* uplo, const MKL_INT* n,
                           const float* alpha, const MKL_Complex8* a,
                           const MKL_INT* lda, const MKL_Complex8* x,
                           const MKL_INT* incx, const float* beta, float* y,
                           const MKL_INT* incy );
void __stdcall cla_syamv( const MKL_INT* uplo, const MKL_INT* n,
                          const float* alpha, const MKL_Complex8* a,
                          const MKL_INT* lda, const MKL_Complex8* x,
                          const MKL_INT* incx, const float* beta, float* y,
                          const MKL_INT* incy );
void __stdcall cla_syamv_( const MKL_INT* uplo, const MKL_INT* n,
                           const float* alpha, const MKL_Complex8* a,
                           const MKL_INT* lda, const MKL_Complex8* x,
                           const MKL_INT* incx, const float* beta, float* y,
                           const MKL_INT* incy );

float __stdcall CLA_SYRCOND_C( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const float* c, const MKL_INT* capply,
                               MKL_INT* info, MKL_Complex8* work,
                               float* rwork );
float __stdcall CLA_SYRCOND_C_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const float* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex8* work,
                                float* rwork );
float __stdcall cla_syrcond_c( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const float* c, const MKL_INT* capply,
                               MKL_INT* info, MKL_Complex8* work,
                               float* rwork );
float __stdcall cla_syrcond_c_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const float* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex8* work,
                                float* rwork );

float __stdcall CLA_SYRCOND_X( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const MKL_Complex8* x, MKL_INT* info,
                               MKL_Complex8* work, float* rwork );
float __stdcall CLA_SYRCOND_X_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const MKL_Complex8* x, MKL_INT* info,
                                MKL_Complex8* work, float* rwork );
float __stdcall cla_syrcond_x( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_Complex8* a,
                               const MKL_INT* lda, const MKL_Complex8* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const MKL_Complex8* x, MKL_INT* info,
                               MKL_Complex8* work, float* rwork );
float __stdcall cla_syrcond_x_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex8* a,
                                const MKL_INT* lda, const MKL_Complex8* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const MKL_Complex8* x, MKL_INT* info,
                                MKL_Complex8* work, float* rwork );

void __stdcall CLA_SYRFSX_EXTENDED( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex8* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex8* af,
                                    const MKL_INT* ldaf, const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const MKL_Complex8* b,
                                    const MKL_INT* ldb, MKL_Complex8* y,
                                    const MKL_INT* ldy, float* berr_out,
                                    const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, MKL_Complex8* res,
                                    float* ayb, MKL_Complex8* dy,
                                    MKL_Complex8* y_tail, const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall CLA_SYRFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex8* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex8* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const MKL_Complex8* b,
                                     const MKL_INT* ldb, MKL_Complex8* y,
                                     const MKL_INT* ldy, float* berr_out,
                                     const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, MKL_Complex8* res,
                                     float* ayb, MKL_Complex8* dy,
                                     MKL_Complex8* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall cla_syrfsx_extended( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex8* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex8* af,
                                    const MKL_INT* ldaf, const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const MKL_Complex8* b,
                                    const MKL_INT* ldb, MKL_Complex8* y,
                                    const MKL_INT* ldy, float* berr_out,
                                    const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, MKL_Complex8* res,
                                    float* ayb, MKL_Complex8* dy,
                                    MKL_Complex8* y_tail, const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall cla_syrfsx_extended_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex8* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex8* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const MKL_Complex8* b,
                                     const MKL_INT* ldb, MKL_Complex8* y,
                                     const MKL_INT* ldy, float* berr_out,
                                     const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, MKL_Complex8* res,
                                     float* ayb, MKL_Complex8* dy,
                                     MKL_Complex8* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

float __stdcall CLA_SYRPVGRW( const char* uplo, int uplo_len,
                              const MKL_INT* n, const MKL_INT* info,
                              const MKL_Complex8* a, const MKL_INT* lda,
                              const MKL_Complex8* af, const MKL_INT* ldaf,
                              const MKL_INT* ipiv, float* work );
float __stdcall CLA_SYRPVGRW_( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* info,
                               const MKL_Complex8* a, const MKL_INT* lda,
                               const MKL_Complex8* af, const MKL_INT* ldaf,
                               const MKL_INT* ipiv, float* work );
float __stdcall cla_syrpvgrw( const char* uplo, int uplo_len,
                              const MKL_INT* n, const MKL_INT* info,
                              const MKL_Complex8* a, const MKL_INT* lda,
                              const MKL_Complex8* af, const MKL_INT* ldaf,
                              const MKL_INT* ipiv, float* work );
float __stdcall cla_syrpvgrw_( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* info,
                               const MKL_Complex8* a, const MKL_INT* lda,
                               const MKL_Complex8* af, const MKL_INT* ldaf,
                               const MKL_INT* ipiv, float* work );

void __stdcall CLA_WWADDW( const MKL_INT* n, MKL_Complex8* x, MKL_Complex8* y,
                           const MKL_Complex8* w );
void __stdcall CLA_WWADDW_( const MKL_INT* n, MKL_Complex8* x,
                            MKL_Complex8* y, const MKL_Complex8* w );
void __stdcall cla_wwaddw( const MKL_INT* n, MKL_Complex8* x, MKL_Complex8* y,
                           const MKL_Complex8* w );
void __stdcall cla_wwaddw_( const MKL_INT* n, MKL_Complex8* x,
                            MKL_Complex8* y, const MKL_Complex8* w );

void __stdcall CTPRFB( const char* side, int side_len, const char* trans,
                       int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const MKL_Complex8* v, const MKL_INT* ldv,
                       const MKL_Complex8* t, const MKL_INT* ldt,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* work,
                       const MKL_INT* ldwork );
void __stdcall CTPRFB_( const char* side, int side_len, const char* trans,
                        int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* work,
                        const MKL_INT* ldwork );
void __stdcall ctprfb( const char* side, int side_len, const char* trans,
                       int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const MKL_Complex8* v, const MKL_INT* ldv,
                       const MKL_Complex8* t, const MKL_INT* ldt,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* work,
                       const MKL_INT* ldwork );
void __stdcall ctprfb_( const char* side, int side_len, const char* trans,
                        int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const MKL_Complex8* v, const MKL_INT* ldv,
                        const MKL_Complex8* t, const MKL_INT* ldt,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* work,
                        const MKL_INT* ldwork );

void __stdcall DGEQRT2( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall DGEQRT2_( const MKL_INT* m, const MKL_INT* n, double* a,
                         const MKL_INT* lda, double* t, const MKL_INT* ldt,
                         MKL_INT* info );
void __stdcall dgeqrt2( const MKL_INT* m, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall dgeqrt2_( const MKL_INT* m, const MKL_INT* n, double* a,
                         const MKL_INT* lda, double* t, const MKL_INT* ldt,
                         MKL_INT* info );

void __stdcall DLARSCL2( const MKL_INT* m, const MKL_INT* n, const double* d,
                         double* x, const MKL_INT* ldx );
void __stdcall DLARSCL2_( const MKL_INT* m, const MKL_INT* n, const double* d,
                          double* x, const MKL_INT* ldx );
void __stdcall dlarscl2( const MKL_INT* m, const MKL_INT* n, const double* d,
                         double* x, const MKL_INT* ldx );
void __stdcall dlarscl2_( const MKL_INT* m, const MKL_INT* n, const double* d,
                          double* x, const MKL_INT* ldx );

void __stdcall DLASCL2( const MKL_INT* m, const MKL_INT* n, const double* d,
                        double* x, const MKL_INT* ldx );
void __stdcall DLASCL2_( const MKL_INT* m, const MKL_INT* n, const double* d,
                         double* x, const MKL_INT* ldx );
void __stdcall dlascl2( const MKL_INT* m, const MKL_INT* n, const double* d,
                        double* x, const MKL_INT* ldx );
void __stdcall dlascl2_( const MKL_INT* m, const MKL_INT* n, const double* d,
                         double* x, const MKL_INT* ldx );

void __stdcall DLA_GBAMV( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const MKL_INT* kl,
                          const MKL_INT* ku, const double* alpha,
                          const double* ab, const MKL_INT* ldab,
                          const double* x, const MKL_INT* incx,
                          const double* beta, double* y, const MKL_INT* incy );
void __stdcall DLA_GBAMV_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const MKL_INT* kl,
                           const MKL_INT* ku, const double* alpha,
                           const double* ab, const MKL_INT* ldab,
                           const double* x, const MKL_INT* incx,
                           const double* beta, double* y, const MKL_INT* incy );
void __stdcall dla_gbamv( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const MKL_INT* kl,
                          const MKL_INT* ku, const double* alpha,
                          const double* ab, const MKL_INT* ldab,
                          const double* x, const MKL_INT* incx,
                          const double* beta, double* y, const MKL_INT* incy );
void __stdcall dla_gbamv_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const MKL_INT* kl,
                           const MKL_INT* ku, const double* alpha,
                           const double* ab, const MKL_INT* ldab,
                           const double* x, const MKL_INT* incx,
                           const double* beta, double* y, const MKL_INT* incy );

double __stdcall DLA_GBRCOND( const char* trans, int trans_len,
                              const MKL_INT* n, const MKL_INT* kl,
                              const MKL_INT* ku, const double* ab,
                              const MKL_INT* ldab, const double* afb,
                              const MKL_INT* ldafb, const MKL_INT* ipiv,
                              const MKL_INT* cmode, const double* c,
                              MKL_INT* info, double* work, MKL_INT* iwork );
double __stdcall DLA_GBRCOND_( const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const double* ab,
                               const MKL_INT* ldab, const double* afb,
                               const MKL_INT* ldafb, const MKL_INT* ipiv,
                               const MKL_INT* cmode, const double* c,
                               MKL_INT* info, double* work, MKL_INT* iwork );
double __stdcall dla_gbrcond( const char* trans, int trans_len,
                              const MKL_INT* n, const MKL_INT* kl,
                              const MKL_INT* ku, const double* ab,
                              const MKL_INT* ldab, const double* afb,
                              const MKL_INT* ldafb, const MKL_INT* ipiv,
                              const MKL_INT* cmode, const double* c,
                              MKL_INT* info, double* work, MKL_INT* iwork );
double __stdcall dla_gbrcond_( const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const double* ab,
                               const MKL_INT* ldab, const double* afb,
                               const MKL_INT* ldafb, const MKL_INT* ipiv,
                               const MKL_INT* cmode, const double* c,
                               MKL_INT* info, double* work, MKL_INT* iwork );

void __stdcall DLA_GBRFSX_EXTENDED( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* kl,
                                    const MKL_INT* ku, const MKL_INT* nrhs,
                                    const double* ab, const MKL_INT* ldab,
                                    const double* afb, const MKL_INT* ldafb,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const double* b, const MKL_INT* ldb,
                                    double* y, const MKL_INT* ldy,
                                    double* berr_out, const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp, double* res,
                                    double* ayb, double* dy, double* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall DLA_GBRFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* kl,
                                     const MKL_INT* ku, const MKL_INT* nrhs,
                                     const double* ab, const MKL_INT* ldab,
                                     const double* afb, const MKL_INT* ldafb,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const double* b, const MKL_INT* ldb,
                                     double* y, const MKL_INT* ldy,
                                     double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp, double* res,
                                     double* ayb, double* dy, double* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall dla_gbrfsx_extended( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* kl,
                                    const MKL_INT* ku, const MKL_INT* nrhs,
                                    const double* ab, const MKL_INT* ldab,
                                    const double* afb, const MKL_INT* ldafb,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const double* b, const MKL_INT* ldb,
                                    double* y, const MKL_INT* ldy,
                                    double* berr_out, const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp, double* res,
                                    double* ayb, double* dy, double* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall dla_gbrfsx_extended_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* kl,
                                     const MKL_INT* ku, const MKL_INT* nrhs,
                                     const double* ab, const MKL_INT* ldab,
                                     const double* afb, const MKL_INT* ldafb,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const double* b, const MKL_INT* ldb,
                                     double* y, const MKL_INT* ldy,
                                     double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp, double* res,
                                     double* ayb, double* dy, double* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

double __stdcall DLA_GBRPVGRW( const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const MKL_INT* ncols,
                               const double* ab, const MKL_INT* ldab,
                               const double* afb, const MKL_INT* ldafb );
double __stdcall DLA_GBRPVGRW_( const MKL_INT* n, const MKL_INT* kl,
                                const MKL_INT* ku, const MKL_INT* ncols,
                                const double* ab, const MKL_INT* ldab,
                                const double* afb, const MKL_INT* ldafb );
double __stdcall dla_gbrpvgrw( const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const MKL_INT* ncols,
                               const double* ab, const MKL_INT* ldab,
                               const double* afb, const MKL_INT* ldafb );
double __stdcall dla_gbrpvgrw_( const MKL_INT* n, const MKL_INT* kl,
                                const MKL_INT* ku, const MKL_INT* ncols,
                                const double* ab, const MKL_INT* ldab,
                                const double* afb, const MKL_INT* ldafb );

void __stdcall DLA_GEAMV( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const double* alpha,
                          const double* a, const MKL_INT* lda,
                          const double* x, const MKL_INT* incx,
                          const double* beta, double* y, const MKL_INT* incy );
void __stdcall DLA_GEAMV_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const double* alpha,
                           const double* a, const MKL_INT* lda,
                           const double* x, const MKL_INT* incx,
                           const double* beta, double* y, const MKL_INT* incy );
void __stdcall dla_geamv( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const double* alpha,
                          const double* a, const MKL_INT* lda,
                          const double* x, const MKL_INT* incx,
                          const double* beta, double* y, const MKL_INT* incy );
void __stdcall dla_geamv_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const double* alpha,
                           const double* a, const MKL_INT* lda,
                           const double* x, const MKL_INT* incx,
                           const double* beta, double* y, const MKL_INT* incy );

double __stdcall DLA_GERCOND( const char* trans, int trans_len,
                              const MKL_INT* n, const double* a,
                              const MKL_INT* lda, const double* af,
                              const MKL_INT* ldaf, const MKL_INT* ipiv,
                              const MKL_INT* cmode, const double* c,
                              MKL_INT* info, double* work, MKL_INT* iwork );
double __stdcall DLA_GERCOND_( const char* trans, int trans_len,
                               const MKL_INT* n, const double* a,
                               const MKL_INT* lda, const double* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const MKL_INT* cmode, const double* c,
                               MKL_INT* info, double* work, MKL_INT* iwork );
double __stdcall dla_gercond( const char* trans, int trans_len,
                              const MKL_INT* n, const double* a,
                              const MKL_INT* lda, const double* af,
                              const MKL_INT* ldaf, const MKL_INT* ipiv,
                              const MKL_INT* cmode, const double* c,
                              MKL_INT* info, double* work, MKL_INT* iwork );
double __stdcall dla_gercond_( const char* trans, int trans_len,
                               const MKL_INT* n, const double* a,
                               const MKL_INT* lda, const double* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const MKL_INT* cmode, const double* c,
                               MKL_INT* info, double* work, MKL_INT* iwork );

void __stdcall DLA_GERFSX_EXTENDED( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const double* a, const MKL_INT* lda,
                                    const double* af, const MKL_INT* ldaf,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const double* b, const MKL_INT* ldb,
                                    double* y, const MKL_INT* ldy,
                                    double* berr_out, const MKL_INT* n_norms,
                                    double* errs_n, double* errs_c,
                                    double* res, double* ayb, double* dy,
                                    double* y_tail, const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall DLA_GERFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const double* a, const MKL_INT* lda,
                                     const double* af, const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const double* b, const MKL_INT* ldb,
                                     double* y, const MKL_INT* ldy,
                                     double* berr_out,
                                     const MKL_INT* n_norms, double* errs_n,
                                     double* errs_c, double* res, double* ayb,
                                     double* dy, double* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall dla_gerfsx_extended( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const double* a, const MKL_INT* lda,
                                    const double* af, const MKL_INT* ldaf,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const double* b, const MKL_INT* ldb,
                                    double* y, const MKL_INT* ldy,
                                    double* berr_out, const MKL_INT* n_norms,
                                    double* errs_n, double* errs_c,
                                    double* res, double* ayb, double* dy,
                                    double* y_tail, const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall dla_gerfsx_extended_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const double* a, const MKL_INT* lda,
                                     const double* af, const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const double* b, const MKL_INT* ldb,
                                     double* y, const MKL_INT* ldy,
                                     double* berr_out,
                                     const MKL_INT* n_norms, double* errs_n,
                                     double* errs_c, double* res, double* ayb,
                                     double* dy, double* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

double __stdcall DLA_GERPVGRW( const MKL_INT* n, const MKL_INT* ncols,
                               const double* a, const MKL_INT* lda,
                               const double* af, const MKL_INT* ldaf );
double __stdcall DLA_GERPVGRW_( const MKL_INT* n, const MKL_INT* ncols,
                                const double* a, const MKL_INT* lda,
                                const double* af, const MKL_INT* ldaf );
double __stdcall dla_gerpvgrw( const MKL_INT* n, const MKL_INT* ncols,
                               const double* a, const MKL_INT* lda,
                               const double* af, const MKL_INT* ldaf );
double __stdcall dla_gerpvgrw_( const MKL_INT* n, const MKL_INT* ncols,
                                const double* a, const MKL_INT* lda,
                                const double* af, const MKL_INT* ldaf );

void __stdcall DLA_LIN_BERR( const MKL_INT* n, const MKL_INT* nz,
                             const MKL_INT* nrhs, const double* res,
                             const double* ayb, double* berr );
void __stdcall DLA_LIN_BERR_( const MKL_INT* n, const MKL_INT* nz,
                              const MKL_INT* nrhs, const double* res,
                              const double* ayb, double* berr );
void __stdcall dla_lin_berr( const MKL_INT* n, const MKL_INT* nz,
                             const MKL_INT* nrhs, const double* res,
                             const double* ayb, double* berr );
void __stdcall dla_lin_berr_( const MKL_INT* n, const MKL_INT* nz,
                              const MKL_INT* nrhs, const double* res,
                              const double* ayb, double* berr );

double __stdcall DLA_PORCOND( const char* uplo, int uplo_len,
                              const MKL_INT* n, const double* a,
                              const MKL_INT* lda, const double* af,
                              const MKL_INT* ldaf, const MKL_INT* cmode,
                              const double* c, MKL_INT* info, double* work,
                              MKL_INT* iwork );
double __stdcall DLA_PORCOND_( const char* uplo, int uplo_len,
                               const MKL_INT* n, const double* a,
                               const MKL_INT* lda, const double* af,
                               const MKL_INT* ldaf, const MKL_INT* cmode,
                               const double* c, MKL_INT* info, double* work,
                               MKL_INT* iwork );
double __stdcall dla_porcond( const char* uplo, int uplo_len,
                              const MKL_INT* n, const double* a,
                              const MKL_INT* lda, const double* af,
                              const MKL_INT* ldaf, const MKL_INT* cmode,
                              const double* c, MKL_INT* info, double* work,
                              MKL_INT* iwork );
double __stdcall dla_porcond_( const char* uplo, int uplo_len,
                               const MKL_INT* n, const double* a,
                               const MKL_INT* lda, const double* af,
                               const MKL_INT* ldaf, const MKL_INT* cmode,
                               const double* c, MKL_INT* info, double* work,
                               MKL_INT* iwork );

void __stdcall DLA_PORFSX_EXTENDED( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const double* a, const MKL_INT* lda,
                                    const double* af, const MKL_INT* ldaf,
                                    const MKL_INT* colequ, const double* c,
                                    const double* b, const MKL_INT* ldb,
                                    double* y, const MKL_INT* ldy,
                                    double* berr_out, const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp, double* res,
                                    double* ayb, double* dy, double* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall DLA_PORFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const double* a, const MKL_INT* lda,
                                     const double* af, const MKL_INT* ldaf,
                                     const MKL_INT* colequ, const double* c,
                                     const double* b, const MKL_INT* ldb,
                                     double* y, const MKL_INT* ldy,
                                     double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp, double* res,
                                     double* ayb, double* dy, double* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall dla_porfsx_extended( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const double* a, const MKL_INT* lda,
                                    const double* af, const MKL_INT* ldaf,
                                    const MKL_INT* colequ, const double* c,
                                    const double* b, const MKL_INT* ldb,
                                    double* y, const MKL_INT* ldy,
                                    double* berr_out, const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp, double* res,
                                    double* ayb, double* dy, double* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall dla_porfsx_extended_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const double* a, const MKL_INT* lda,
                                     const double* af, const MKL_INT* ldaf,
                                     const MKL_INT* colequ, const double* c,
                                     const double* b, const MKL_INT* ldb,
                                     double* y, const MKL_INT* ldy,
                                     double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp, double* res,
                                     double* ayb, double* dy, double* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

double __stdcall DLA_PORPVGRW( const char* uplo, int uplo_len,
                               const MKL_INT* ncols, const double* a,
                               const MKL_INT* lda, const double* af,
                               const MKL_INT* ldaf, double* work );
double __stdcall DLA_PORPVGRW_( const char* uplo, int uplo_len,
                                const MKL_INT* ncols, const double* a,
                                const MKL_INT* lda, const double* af,
                                const MKL_INT* ldaf, double* work );
double __stdcall dla_porpvgrw( const char* uplo, int uplo_len,
                               const MKL_INT* ncols, const double* a,
                               const MKL_INT* lda, const double* af,
                               const MKL_INT* ldaf, double* work );
double __stdcall dla_porpvgrw_( const char* uplo, int uplo_len,
                                const MKL_INT* ncols, const double* a,
                                const MKL_INT* lda, const double* af,
                                const MKL_INT* ldaf, double* work );

void __stdcall DLA_SYAMV( const MKL_INT* uplo, const MKL_INT* n,
                          const double* alpha, const double* a,
                          const MKL_INT* lda, const double* x,
                          const MKL_INT* incx, const double* beta, double* y,
                          const MKL_INT* incy );
void __stdcall DLA_SYAMV_( const MKL_INT* uplo, const MKL_INT* n,
                           const double* alpha, const double* a,
                           const MKL_INT* lda, const double* x,
                           const MKL_INT* incx, const double* beta, double* y,
                           const MKL_INT* incy );
void __stdcall dla_syamv( const MKL_INT* uplo, const MKL_INT* n,
                          const double* alpha, const double* a,
                          const MKL_INT* lda, const double* x,
                          const MKL_INT* incx, const double* beta, double* y,
                          const MKL_INT* incy );
void __stdcall dla_syamv_( const MKL_INT* uplo, const MKL_INT* n,
                           const double* alpha, const double* a,
                           const MKL_INT* lda, const double* x,
                           const MKL_INT* incx, const double* beta, double* y,
                           const MKL_INT* incy );

double __stdcall DLA_SYRCOND( const char* uplo, int uplo_len,
                              const MKL_INT* n, const double* a,
                              const MKL_INT* lda, const double* af,
                              const MKL_INT* ldaf, const MKL_INT* ipiv,
                              const MKL_INT* cmode, const double* c,
                              MKL_INT* info, double* work, MKL_INT* iwork );
double __stdcall DLA_SYRCOND_( const char* uplo, int uplo_len,
                               const MKL_INT* n, const double* a,
                               const MKL_INT* lda, const double* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const MKL_INT* cmode, const double* c,
                               MKL_INT* info, double* work, MKL_INT* iwork );
double __stdcall dla_syrcond( const char* uplo, int uplo_len,
                              const MKL_INT* n, const double* a,
                              const MKL_INT* lda, const double* af,
                              const MKL_INT* ldaf, const MKL_INT* ipiv,
                              const MKL_INT* cmode, const double* c,
                              MKL_INT* info, double* work, MKL_INT* iwork );
double __stdcall dla_syrcond_( const char* uplo, int uplo_len,
                               const MKL_INT* n, const double* a,
                               const MKL_INT* lda, const double* af,
                               const MKL_INT* ldaf, const MKL_INT* ipiv,
                               const MKL_INT* cmode, const double* c,
                               MKL_INT* info, double* work, MKL_INT* iwork );

void __stdcall DLA_SYRFSX_EXTENDED( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const double* a, const MKL_INT* lda,
                                    const double* af, const MKL_INT* ldaf,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const double* b, const MKL_INT* ldb,
                                    double* y, const MKL_INT* ldy,
                                    double* berr_out, const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp, double* res,
                                    double* ayb, double* dy, double* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall DLA_SYRFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const double* a, const MKL_INT* lda,
                                     const double* af, const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const double* b, const MKL_INT* ldb,
                                     double* y, const MKL_INT* ldy,
                                     double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp, double* res,
                                     double* ayb, double* dy, double* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall dla_syrfsx_extended( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const double* a, const MKL_INT* lda,
                                    const double* af, const MKL_INT* ldaf,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const double* b, const MKL_INT* ldb,
                                    double* y, const MKL_INT* ldy,
                                    double* berr_out, const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp, double* res,
                                    double* ayb, double* dy, double* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall dla_syrfsx_extended_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const double* a, const MKL_INT* lda,
                                     const double* af, const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const double* b, const MKL_INT* ldb,
                                     double* y, const MKL_INT* ldy,
                                     double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp, double* res,
                                     double* ayb, double* dy, double* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

double __stdcall DLA_SYRPVGRW( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* info,
                               const double* a, const MKL_INT* lda,
                               const double* af, const MKL_INT* ldaf,
                               const MKL_INT* ipiv, double* work );
double __stdcall DLA_SYRPVGRW_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* info,
                                const double* a, const MKL_INT* lda,
                                const double* af, const MKL_INT* ldaf,
                                const MKL_INT* ipiv, double* work );
double __stdcall dla_syrpvgrw( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* info,
                               const double* a, const MKL_INT* lda,
                               const double* af, const MKL_INT* ldaf,
                               const MKL_INT* ipiv, double* work );
double __stdcall dla_syrpvgrw_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* info,
                                const double* a, const MKL_INT* lda,
                                const double* af, const MKL_INT* ldaf,
                                const MKL_INT* ipiv, double* work );

void __stdcall DLA_WWADDW( const MKL_INT* n, double* x, double* y,
                           const double* w );
void __stdcall DLA_WWADDW_( const MKL_INT* n, double* x, double* y,
                            const double* w );
void __stdcall dla_wwaddw( const MKL_INT* n, double* x, double* y,
                           const double* w );
void __stdcall dla_wwaddw_( const MKL_INT* n, double* x, double* y,
                            const double* w );

void __stdcall DTPRFB( const char* side, int side_len, const char* trans,
                       int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const double* v, const MKL_INT* ldv, const double* t,
                       const MKL_INT* ldt, double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb, double* work,
                       const MKL_INT* ldwork );
void __stdcall DTPRFB_( const char* side, int side_len, const char* trans,
                        int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const double* v, const MKL_INT* ldv, const double* t,
                        const MKL_INT* ldt, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, double* work,
                        const MKL_INT* ldwork );
void __stdcall dtprfb( const char* side, int side_len, const char* trans,
                       int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const double* v, const MKL_INT* ldv, const double* t,
                       const MKL_INT* ldt, double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb, double* work,
                       const MKL_INT* ldwork );
void __stdcall dtprfb_( const char* side, int side_len, const char* trans,
                        int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const double* v, const MKL_INT* ldv, const double* t,
                        const MKL_INT* ldt, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, double* work,
                        const MKL_INT* ldwork );

void __stdcall SGEQRT2( const MKL_INT* m, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall SGEQRT2_( const MKL_INT* m, const MKL_INT* n, float* a,
                         const MKL_INT* lda, float* t, const MKL_INT* ldt,
                         MKL_INT* info );
void __stdcall sgeqrt2( const MKL_INT* m, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* t, const MKL_INT* ldt,
                        MKL_INT* info );
void __stdcall sgeqrt2_( const MKL_INT* m, const MKL_INT* n, float* a,
                         const MKL_INT* lda, float* t, const MKL_INT* ldt,
                         MKL_INT* info );

void __stdcall SLARSCL2( const MKL_INT* m, const MKL_INT* n, const float* d,
                         float* x, const MKL_INT* ldx );
void __stdcall SLARSCL2_( const MKL_INT* m, const MKL_INT* n, const float* d,
                          float* x, const MKL_INT* ldx );
void __stdcall slarscl2( const MKL_INT* m, const MKL_INT* n, const float* d,
                         float* x, const MKL_INT* ldx );
void __stdcall slarscl2_( const MKL_INT* m, const MKL_INT* n, const float* d,
                          float* x, const MKL_INT* ldx );

void __stdcall SLASCL2( const MKL_INT* m, const MKL_INT* n, const float* d,
                        float* x, const MKL_INT* ldx );
void __stdcall SLASCL2_( const MKL_INT* m, const MKL_INT* n, const float* d,
                         float* x, const MKL_INT* ldx );
void __stdcall slascl2( const MKL_INT* m, const MKL_INT* n, const float* d,
                        float* x, const MKL_INT* ldx );
void __stdcall slascl2_( const MKL_INT* m, const MKL_INT* n, const float* d,
                         float* x, const MKL_INT* ldx );

void __stdcall SLA_GBAMV( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const MKL_INT* kl,
                          const MKL_INT* ku, const float* alpha,
                          const float* ab, const MKL_INT* ldab,
                          const float* x, const MKL_INT* incx,
                          const float* beta, float* y, const MKL_INT* incy );
void __stdcall SLA_GBAMV_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const MKL_INT* kl,
                           const MKL_INT* ku, const float* alpha,
                           const float* ab, const MKL_INT* ldab,
                           const float* x, const MKL_INT* incx,
                           const float* beta, float* y, const MKL_INT* incy );
void __stdcall sla_gbamv( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const MKL_INT* kl,
                          const MKL_INT* ku, const float* alpha,
                          const float* ab, const MKL_INT* ldab,
                          const float* x, const MKL_INT* incx,
                          const float* beta, float* y, const MKL_INT* incy );
void __stdcall sla_gbamv_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const MKL_INT* kl,
                           const MKL_INT* ku, const float* alpha,
                           const float* ab, const MKL_INT* ldab,
                           const float* x, const MKL_INT* incx,
                           const float* beta, float* y, const MKL_INT* incy );

float __stdcall SLA_GBRCOND( const char* trans, int trans_len,
                             const MKL_INT* n, const MKL_INT* kl,
                             const MKL_INT* ku, const float* ab,
                             const MKL_INT* ldab, const float* afb,
                             const MKL_INT* ldafb, const MKL_INT* ipiv,
                             const MKL_INT* cmode, const float* c,
                             MKL_INT* info, float* work, MKL_INT* iwork );
float __stdcall SLA_GBRCOND_( const char* trans, int trans_len,
                              const MKL_INT* n, const MKL_INT* kl,
                              const MKL_INT* ku, const float* ab,
                              const MKL_INT* ldab, const float* afb,
                              const MKL_INT* ldafb, const MKL_INT* ipiv,
                              const MKL_INT* cmode, const float* c,
                              MKL_INT* info, float* work, MKL_INT* iwork );
float __stdcall sla_gbrcond( const char* trans, int trans_len,
                             const MKL_INT* n, const MKL_INT* kl,
                             const MKL_INT* ku, const float* ab,
                             const MKL_INT* ldab, const float* afb,
                             const MKL_INT* ldafb, const MKL_INT* ipiv,
                             const MKL_INT* cmode, const float* c,
                             MKL_INT* info, float* work, MKL_INT* iwork );
float __stdcall sla_gbrcond_( const char* trans, int trans_len,
                              const MKL_INT* n, const MKL_INT* kl,
                              const MKL_INT* ku, const float* ab,
                              const MKL_INT* ldab, const float* afb,
                              const MKL_INT* ldafb, const MKL_INT* ipiv,
                              const MKL_INT* cmode, const float* c,
                              MKL_INT* info, float* work, MKL_INT* iwork );

void __stdcall SLA_GBRFSX_EXTENDED( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* kl,
                                    const MKL_INT* ku, const MKL_INT* nrhs,
                                    const float* ab, const MKL_INT* ldab,
                                    const float* afb, const MKL_INT* ldafb,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const float* b, const MKL_INT* ldb,
                                    float* y, const MKL_INT* ldy,
                                    float* berr_out, const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, float* res,
                                    float* ayb, float* dy, float* y_tail,
                                    const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall SLA_GBRFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* kl,
                                     const MKL_INT* ku, const MKL_INT* nrhs,
                                     const float* ab, const MKL_INT* ldab,
                                     const float* afb, const MKL_INT* ldafb,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const float* b, const MKL_INT* ldb,
                                     float* y, const MKL_INT* ldy,
                                     float* berr_out, const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, float* res,
                                     float* ayb, float* dy, float* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall sla_gbrfsx_extended( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* kl,
                                    const MKL_INT* ku, const MKL_INT* nrhs,
                                    const float* ab, const MKL_INT* ldab,
                                    const float* afb, const MKL_INT* ldafb,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const float* b, const MKL_INT* ldb,
                                    float* y, const MKL_INT* ldy,
                                    float* berr_out, const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, float* res,
                                    float* ayb, float* dy, float* y_tail,
                                    const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall sla_gbrfsx_extended_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* kl,
                                     const MKL_INT* ku, const MKL_INT* nrhs,
                                     const float* ab, const MKL_INT* ldab,
                                     const float* afb, const MKL_INT* ldafb,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const float* b, const MKL_INT* ldb,
                                     float* y, const MKL_INT* ldy,
                                     float* berr_out, const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, float* res,
                                     float* ayb, float* dy, float* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

float __stdcall SLA_GBRPVGRW( const MKL_INT* n, const MKL_INT* kl,
                              const MKL_INT* ku, const MKL_INT* ncols,
                              const float* ab, const MKL_INT* ldab,
                              const float* afb, const MKL_INT* ldafb );
float __stdcall SLA_GBRPVGRW_( const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const MKL_INT* ncols,
                               const float* ab, const MKL_INT* ldab,
                               const float* afb, const MKL_INT* ldafb );
float __stdcall sla_gbrpvgrw( const MKL_INT* n, const MKL_INT* kl,
                              const MKL_INT* ku, const MKL_INT* ncols,
                              const float* ab, const MKL_INT* ldab,
                              const float* afb, const MKL_INT* ldafb );
float __stdcall sla_gbrpvgrw_( const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const MKL_INT* ncols,
                               const float* ab, const MKL_INT* ldab,
                               const float* afb, const MKL_INT* ldafb );

void __stdcall SLA_GEAMV( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const float* alpha,
                          const float* a, const MKL_INT* lda, const float* x,
                          const MKL_INT* incx, const float* beta, float* y,
                          const MKL_INT* incy );
void __stdcall SLA_GEAMV_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const float* alpha,
                           const float* a, const MKL_INT* lda, const float* x,
                           const MKL_INT* incx, const float* beta, float* y,
                           const MKL_INT* incy );
void __stdcall sla_geamv( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const float* alpha,
                          const float* a, const MKL_INT* lda, const float* x,
                          const MKL_INT* incx, const float* beta, float* y,
                          const MKL_INT* incy );
void __stdcall sla_geamv_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const float* alpha,
                           const float* a, const MKL_INT* lda, const float* x,
                           const MKL_INT* incx, const float* beta, float* y,
                           const MKL_INT* incy );

float __stdcall SLA_GERCOND( const char* trans, int trans_len,
                             const MKL_INT* n, const float* a,
                             const MKL_INT* lda, const float* af,
                             const MKL_INT* ldaf, const MKL_INT* ipiv,
                             const MKL_INT* cmode, const float* c,
                             MKL_INT* info, float* work, MKL_INT* iwork );
float __stdcall SLA_GERCOND_( const char* trans, int trans_len,
                              const MKL_INT* n, const float* a,
                              const MKL_INT* lda, const float* af,
                              const MKL_INT* ldaf, const MKL_INT* ipiv,
                              const MKL_INT* cmode, const float* c,
                              MKL_INT* info, float* work, MKL_INT* iwork );
float __stdcall sla_gercond( const char* trans, int trans_len,
                             const MKL_INT* n, const float* a,
                             const MKL_INT* lda, const float* af,
                             const MKL_INT* ldaf, const MKL_INT* ipiv,
                             const MKL_INT* cmode, const float* c,
                             MKL_INT* info, float* work, MKL_INT* iwork );
float __stdcall sla_gercond_( const char* trans, int trans_len,
                              const MKL_INT* n, const float* a,
                              const MKL_INT* lda, const float* af,
                              const MKL_INT* ldaf, const MKL_INT* ipiv,
                              const MKL_INT* cmode, const float* c,
                              MKL_INT* info, float* work, MKL_INT* iwork );

void __stdcall SLA_GERFSX_EXTENDED( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const float* a, const MKL_INT* lda,
                                    const float* af, const MKL_INT* ldaf,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const float* b, const MKL_INT* ldb,
                                    float* y, const MKL_INT* ldy,
                                    float* berr_out, const MKL_INT* n_norms,
                                    float* errs_n, float* errs_c, float* res,
                                    float* ayb, float* dy, float* y_tail,
                                    const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall SLA_GERFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const float* a, const MKL_INT* lda,
                                     const float* af, const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const float* b, const MKL_INT* ldb,
                                     float* y, const MKL_INT* ldy,
                                     float* berr_out, const MKL_INT* n_norms,
                                     float* errs_n, float* errs_c, float* res,
                                     float* ayb, float* dy, float* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall sla_gerfsx_extended( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const float* a, const MKL_INT* lda,
                                    const float* af, const MKL_INT* ldaf,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const float* b, const MKL_INT* ldb,
                                    float* y, const MKL_INT* ldy,
                                    float* berr_out, const MKL_INT* n_norms,
                                    float* errs_n, float* errs_c, float* res,
                                    float* ayb, float* dy, float* y_tail,
                                    const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall sla_gerfsx_extended_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const float* a, const MKL_INT* lda,
                                     const float* af, const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const float* b, const MKL_INT* ldb,
                                     float* y, const MKL_INT* ldy,
                                     float* berr_out, const MKL_INT* n_norms,
                                     float* errs_n, float* errs_c, float* res,
                                     float* ayb, float* dy, float* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

float __stdcall SLA_GERPVGRW( const MKL_INT* n, const MKL_INT* ncols,
                              const float* a, const MKL_INT* lda,
                              const float* af, const MKL_INT* ldaf );
float __stdcall SLA_GERPVGRW_( const MKL_INT* n, const MKL_INT* ncols,
                               const float* a, const MKL_INT* lda,
                               const float* af, const MKL_INT* ldaf );
float __stdcall sla_gerpvgrw( const MKL_INT* n, const MKL_INT* ncols,
                              const float* a, const MKL_INT* lda,
                              const float* af, const MKL_INT* ldaf );
float __stdcall sla_gerpvgrw_( const MKL_INT* n, const MKL_INT* ncols,
                               const float* a, const MKL_INT* lda,
                               const float* af, const MKL_INT* ldaf );

void __stdcall SLA_LIN_BERR( const MKL_INT* n, const MKL_INT* nz,
                             const MKL_INT* nrhs, const float* res,
                             const float* ayb, float* berr );
void __stdcall SLA_LIN_BERR_( const MKL_INT* n, const MKL_INT* nz,
                              const MKL_INT* nrhs, const float* res,
                              const float* ayb, float* berr );
void __stdcall sla_lin_berr( const MKL_INT* n, const MKL_INT* nz,
                             const MKL_INT* nrhs, const float* res,
                             const float* ayb, float* berr );
void __stdcall sla_lin_berr_( const MKL_INT* n, const MKL_INT* nz,
                              const MKL_INT* nrhs, const float* res,
                              const float* ayb, float* berr );

float __stdcall SLA_PORCOND( const char* uplo, int uplo_len, const MKL_INT* n,
                             const float* a, const MKL_INT* lda,
                             const float* af, const MKL_INT* ldaf,
                             const MKL_INT* cmode, const float* c,
                             MKL_INT* info, float* work, MKL_INT* iwork );
float __stdcall SLA_PORCOND_( const char* uplo, int uplo_len,
                              const MKL_INT* n, const float* a,
                              const MKL_INT* lda, const float* af,
                              const MKL_INT* ldaf, const MKL_INT* cmode,
                              const float* c, MKL_INT* info, float* work,
                              MKL_INT* iwork );
float __stdcall sla_porcond( const char* uplo, int uplo_len, const MKL_INT* n,
                             const float* a, const MKL_INT* lda,
                             const float* af, const MKL_INT* ldaf,
                             const MKL_INT* cmode, const float* c,
                             MKL_INT* info, float* work, MKL_INT* iwork );
float __stdcall sla_porcond_( const char* uplo, int uplo_len,
                              const MKL_INT* n, const float* a,
                              const MKL_INT* lda, const float* af,
                              const MKL_INT* ldaf, const MKL_INT* cmode,
                              const float* c, MKL_INT* info, float* work,
                              MKL_INT* iwork );

void __stdcall SLA_PORFSX_EXTENDED( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const float* a, const MKL_INT* lda,
                                    const float* af, const MKL_INT* ldaf,
                                    const MKL_INT* colequ, const float* c,
                                    const float* b, const MKL_INT* ldb,
                                    float* y, const MKL_INT* ldy,
                                    float* berr_out, const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, float* res,
                                    float* ayb, float* dy, float* y_tail,
                                    const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall SLA_PORFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const float* a, const MKL_INT* lda,
                                     const float* af, const MKL_INT* ldaf,
                                     const MKL_INT* colequ, const float* c,
                                     const float* b, const MKL_INT* ldb,
                                     float* y, const MKL_INT* ldy,
                                     float* berr_out, const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, float* res,
                                     float* ayb, float* dy, float* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall sla_porfsx_extended( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const float* a, const MKL_INT* lda,
                                    const float* af, const MKL_INT* ldaf,
                                    const MKL_INT* colequ, const float* c,
                                    const float* b, const MKL_INT* ldb,
                                    float* y, const MKL_INT* ldy,
                                    float* berr_out, const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, float* res,
                                    float* ayb, float* dy, float* y_tail,
                                    const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall sla_porfsx_extended_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const float* a, const MKL_INT* lda,
                                     const float* af, const MKL_INT* ldaf,
                                     const MKL_INT* colequ, const float* c,
                                     const float* b, const MKL_INT* ldb,
                                     float* y, const MKL_INT* ldy,
                                     float* berr_out, const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, float* res,
                                     float* ayb, float* dy, float* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

float __stdcall SLA_PORPVGRW( const char* uplo, int uplo_len,
                              const MKL_INT* ncols, const float* a,
                              const MKL_INT* lda, const float* af,
                              const MKL_INT* ldaf, float* work );
float __stdcall SLA_PORPVGRW_( const char* uplo, int uplo_len,
                               const MKL_INT* ncols, const float* a,
                               const MKL_INT* lda, const float* af,
                               const MKL_INT* ldaf, float* work );
float __stdcall sla_porpvgrw( const char* uplo, int uplo_len,
                              const MKL_INT* ncols, const float* a,
                              const MKL_INT* lda, const float* af,
                              const MKL_INT* ldaf, float* work );
float __stdcall sla_porpvgrw_( const char* uplo, int uplo_len,
                               const MKL_INT* ncols, const float* a,
                               const MKL_INT* lda, const float* af,
                               const MKL_INT* ldaf, float* work );

void __stdcall SLA_SYAMV( const MKL_INT* uplo, const MKL_INT* n,
                          const float* alpha, const float* a,
                          const MKL_INT* lda, const float* x,
                          const MKL_INT* incx, const float* beta, float* y,
                          const MKL_INT* incy );
void __stdcall SLA_SYAMV_( const MKL_INT* uplo, const MKL_INT* n,
                           const float* alpha, const float* a,
                           const MKL_INT* lda, const float* x,
                           const MKL_INT* incx, const float* beta, float* y,
                           const MKL_INT* incy );
void __stdcall sla_syamv( const MKL_INT* uplo, const MKL_INT* n,
                          const float* alpha, const float* a,
                          const MKL_INT* lda, const float* x,
                          const MKL_INT* incx, const float* beta, float* y,
                          const MKL_INT* incy );
void __stdcall sla_syamv_( const MKL_INT* uplo, const MKL_INT* n,
                           const float* alpha, const float* a,
                           const MKL_INT* lda, const float* x,
                           const MKL_INT* incx, const float* beta, float* y,
                           const MKL_INT* incy );

float __stdcall SLA_SYRCOND( const char* uplo, int uplo_len, const MKL_INT* n,
                             const float* a, const MKL_INT* lda,
                             const float* af, const MKL_INT* ldaf,
                             const MKL_INT* ipiv, const MKL_INT* cmode,
                             const float* c, MKL_INT* info, float* work,
                             MKL_INT* iwork );
float __stdcall SLA_SYRCOND_( const char* uplo, int uplo_len,
                              const MKL_INT* n, const float* a,
                              const MKL_INT* lda, const float* af,
                              const MKL_INT* ldaf, const MKL_INT* ipiv,
                              const MKL_INT* cmode, const float* c,
                              MKL_INT* info, float* work, MKL_INT* iwork );
float __stdcall sla_syrcond( const char* uplo, int uplo_len, const MKL_INT* n,
                             const float* a, const MKL_INT* lda,
                             const float* af, const MKL_INT* ldaf,
                             const MKL_INT* ipiv, const MKL_INT* cmode,
                             const float* c, MKL_INT* info, float* work,
                             MKL_INT* iwork );
float __stdcall sla_syrcond_( const char* uplo, int uplo_len,
                              const MKL_INT* n, const float* a,
                              const MKL_INT* lda, const float* af,
                              const MKL_INT* ldaf, const MKL_INT* ipiv,
                              const MKL_INT* cmode, const float* c,
                              MKL_INT* info, float* work, MKL_INT* iwork );

void __stdcall SLA_SYRFSX_EXTENDED( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const float* a, const MKL_INT* lda,
                                    const float* af, const MKL_INT* ldaf,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const float* b, const MKL_INT* ldb,
                                    float* y, const MKL_INT* ldy,
                                    float* berr_out, const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, float* res,
                                    float* ayb, float* dy, float* y_tail,
                                    const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall SLA_SYRFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const float* a, const MKL_INT* lda,
                                     const float* af, const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const float* b, const MKL_INT* ldb,
                                     float* y, const MKL_INT* ldy,
                                     float* berr_out, const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, float* res,
                                     float* ayb, float* dy, float* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall sla_syrfsx_extended( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const float* a, const MKL_INT* lda,
                                    const float* af, const MKL_INT* ldaf,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const float* c,
                                    const float* b, const MKL_INT* ldb,
                                    float* y, const MKL_INT* ldy,
                                    float* berr_out, const MKL_INT* n_norms,
                                    float* err_bnds_norm,
                                    float* err_bnds_comp, float* res,
                                    float* ayb, float* dy, float* y_tail,
                                    const float* rcond,
                                    const MKL_INT* ithresh,
                                    const float* rthresh, const float* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall sla_syrfsx_extended_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const float* a, const MKL_INT* lda,
                                     const float* af, const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const float* c,
                                     const float* b, const MKL_INT* ldb,
                                     float* y, const MKL_INT* ldy,
                                     float* berr_out, const MKL_INT* n_norms,
                                     float* err_bnds_norm,
                                     float* err_bnds_comp, float* res,
                                     float* ayb, float* dy, float* y_tail,
                                     const float* rcond,
                                     const MKL_INT* ithresh,
                                     const float* rthresh,
                                     const float* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

float __stdcall SLA_SYRPVGRW( const char* uplo, int uplo_len,
                              const MKL_INT* n, const MKL_INT* info,
                              const float* a, const MKL_INT* lda,
                              const float* af, const MKL_INT* ldaf,
                              const MKL_INT* ipiv, float* work );
float __stdcall SLA_SYRPVGRW_( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* info,
                               const float* a, const MKL_INT* lda,
                               const float* af, const MKL_INT* ldaf,
                               const MKL_INT* ipiv, float* work );
float __stdcall sla_syrpvgrw( const char* uplo, int uplo_len,
                              const MKL_INT* n, const MKL_INT* info,
                              const float* a, const MKL_INT* lda,
                              const float* af, const MKL_INT* ldaf,
                              const MKL_INT* ipiv, float* work );
float __stdcall sla_syrpvgrw_( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* info,
                               const float* a, const MKL_INT* lda,
                               const float* af, const MKL_INT* ldaf,
                               const MKL_INT* ipiv, float* work );

void __stdcall SLA_WWADDW( const MKL_INT* n, float* x, float* y,
                           const float* w );
void __stdcall SLA_WWADDW_( const MKL_INT* n, float* x, float* y,
                            const float* w );
void __stdcall sla_wwaddw( const MKL_INT* n, float* x, float* y,
                           const float* w );
void __stdcall sla_wwaddw_( const MKL_INT* n, float* x, float* y,
                            const float* w );

void __stdcall STPRFB( const char* side, int side_len, const char* trans,
                       int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const float* v, const MKL_INT* ldv, const float* t,
                       const MKL_INT* ldt, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, float* work,
                       const MKL_INT* ldwork );
void __stdcall STPRFB_( const char* side, int side_len, const char* trans,
                        int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const float* v, const MKL_INT* ldv, const float* t,
                        const MKL_INT* ldt, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, float* work,
                        const MKL_INT* ldwork );
void __stdcall stprfb( const char* side, int side_len, const char* trans,
                       int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const float* v, const MKL_INT* ldv, const float* t,
                       const MKL_INT* ldt, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, float* work,
                       const MKL_INT* ldwork );
void __stdcall stprfb_( const char* side, int side_len, const char* trans,
                        int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const float* v, const MKL_INT* ldv, const float* t,
                        const MKL_INT* ldt, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, float* work,
                        const MKL_INT* ldwork );

void __stdcall ZGEQRT2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall ZGEQRT2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_INT* info );
void __stdcall zgeqrt2( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* t,
                        const MKL_INT* ldt, MKL_INT* info );
void __stdcall zgeqrt2_( const MKL_INT* m, const MKL_INT* n, MKL_Complex16* a,
                         const MKL_INT* lda, MKL_Complex16* t,
                         const MKL_INT* ldt, MKL_INT* info );

void __stdcall ZHESWAPR( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall ZHESWAPR_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall zheswapr( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_INT* i1, const MKL_INT* i2 );
void __stdcall zheswapr_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_INT* i1, const MKL_INT* i2 );

void __stdcall ZHETRI2( const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ZHETRI2_( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_INT* ipiv, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetri2( const char* uplo, int uplo_len, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_INT* ipiv, MKL_Complex16* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall zhetri2_( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_INT* ipiv, MKL_Complex16* work,
                         const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZHETRI2X( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_INT* ipiv, MKL_Complex16* work,
                         const MKL_INT* nb, MKL_INT* info );
void __stdcall ZHETRI2X_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_INT* ipiv, MKL_Complex16* work,
                          const MKL_INT* nb, MKL_INT* info );
void __stdcall zhetri2x( const char* uplo, int uplo_len, const MKL_INT* n,
                         MKL_Complex16* a, const MKL_INT* lda,
                         const MKL_INT* ipiv, MKL_Complex16* work,
                         const MKL_INT* nb, MKL_INT* info );
void __stdcall zhetri2x_( const char* uplo, int uplo_len, const MKL_INT* n,
                          MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_INT* ipiv, MKL_Complex16* work,
                          const MKL_INT* nb, MKL_INT* info );

void __stdcall ZLARSCL2( const MKL_INT* m, const MKL_INT* n, const double* d,
                         MKL_Complex16* x, const MKL_INT* ldx );
void __stdcall ZLARSCL2_( const MKL_INT* m, const MKL_INT* n, const double* d,
                          MKL_Complex16* x, const MKL_INT* ldx );
void __stdcall zlarscl2( const MKL_INT* m, const MKL_INT* n, const double* d,
                         MKL_Complex16* x, const MKL_INT* ldx );
void __stdcall zlarscl2_( const MKL_INT* m, const MKL_INT* n, const double* d,
                          MKL_Complex16* x, const MKL_INT* ldx );

void __stdcall ZLASCL2( const MKL_INT* m, const MKL_INT* n, const double* d,
                        MKL_Complex16* x, const MKL_INT* ldx );
void __stdcall ZLASCL2_( const MKL_INT* m, const MKL_INT* n, const double* d,
                         MKL_Complex16* x, const MKL_INT* ldx );
void __stdcall zlascl2( const MKL_INT* m, const MKL_INT* n, const double* d,
                        MKL_Complex16* x, const MKL_INT* ldx );
void __stdcall zlascl2_( const MKL_INT* m, const MKL_INT* n, const double* d,
                         MKL_Complex16* x, const MKL_INT* ldx );

void __stdcall ZLA_GBAMV( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const MKL_INT* kl,
                          const MKL_INT* ku, const double* alpha,
                          const MKL_Complex16* ab, const MKL_INT* ldab,
                          const MKL_Complex16* x, const MKL_INT* incx,
                          const double* beta, double* y, const MKL_INT* incy );
void __stdcall ZLA_GBAMV_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const MKL_INT* kl,
                           const MKL_INT* ku, const double* alpha,
                           const MKL_Complex16* ab, const MKL_INT* ldab,
                           const MKL_Complex16* x, const MKL_INT* incx,
                           const double* beta, double* y, const MKL_INT* incy );
void __stdcall zla_gbamv( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const MKL_INT* kl,
                          const MKL_INT* ku, const double* alpha,
                          const MKL_Complex16* ab, const MKL_INT* ldab,
                          const MKL_Complex16* x, const MKL_INT* incx,
                          const double* beta, double* y, const MKL_INT* incy );
void __stdcall zla_gbamv_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const MKL_INT* kl,
                           const MKL_INT* ku, const double* alpha,
                           const MKL_Complex16* ab, const MKL_INT* ldab,
                           const MKL_Complex16* x, const MKL_INT* incx,
                           const double* beta, double* y, const MKL_INT* incy );

double __stdcall ZLA_GBRCOND_C( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_INT* kl,
                                const MKL_INT* ku, const MKL_Complex16* ab,
                                const MKL_INT* ldab,
                                const MKL_Complex16* afb,
                                const MKL_INT* ldafb, const MKL_INT* ipiv,
                                const double* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex16* work,
                                double* rwork );
double __stdcall ZLA_GBRCOND_C_( const char* trans, int trans_len,
                                 const MKL_INT* n, const MKL_INT* kl,
                                 const MKL_INT* ku, const MKL_Complex16* ab,
                                 const MKL_INT* ldab,
                                 const MKL_Complex16* afb,
                                 const MKL_INT* ldafb, const MKL_INT* ipiv,
                                 const double* c, const MKL_INT* capply,
                                 MKL_INT* info, MKL_Complex16* work,
                                 double* rwork );
double __stdcall zla_gbrcond_c( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_INT* kl,
                                const MKL_INT* ku, const MKL_Complex16* ab,
                                const MKL_INT* ldab,
                                const MKL_Complex16* afb,
                                const MKL_INT* ldafb, const MKL_INT* ipiv,
                                const double* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex16* work,
                                double* rwork );
double __stdcall zla_gbrcond_c_( const char* trans, int trans_len,
                                 const MKL_INT* n, const MKL_INT* kl,
                                 const MKL_INT* ku, const MKL_Complex16* ab,
                                 const MKL_INT* ldab,
                                 const MKL_Complex16* afb,
                                 const MKL_INT* ldafb, const MKL_INT* ipiv,
                                 const double* c, const MKL_INT* capply,
                                 MKL_INT* info, MKL_Complex16* work,
                                 double* rwork );

double __stdcall ZLA_GBRCOND_X( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_INT* kl,
                                const MKL_INT* ku, const MKL_Complex16* ab,
                                const MKL_INT* ldab,
                                const MKL_Complex16* afb,
                                const MKL_INT* ldafb, const MKL_INT* ipiv,
                                const MKL_Complex16* x, MKL_INT* info,
                                MKL_Complex16* work, double* rwork );
double __stdcall ZLA_GBRCOND_X_( const char* trans, int trans_len,
                                 const MKL_INT* n, const MKL_INT* kl,
                                 const MKL_INT* ku, const MKL_Complex16* ab,
                                 const MKL_INT* ldab,
                                 const MKL_Complex16* afb,
                                 const MKL_INT* ldafb, const MKL_INT* ipiv,
                                 const MKL_Complex16* x, MKL_INT* info,
                                 MKL_Complex16* work, double* rwork );
double __stdcall zla_gbrcond_x( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_INT* kl,
                                const MKL_INT* ku, const MKL_Complex16* ab,
                                const MKL_INT* ldab,
                                const MKL_Complex16* afb,
                                const MKL_INT* ldafb, const MKL_INT* ipiv,
                                const MKL_Complex16* x, MKL_INT* info,
                                MKL_Complex16* work, double* rwork );
double __stdcall zla_gbrcond_x_( const char* trans, int trans_len,
                                 const MKL_INT* n, const MKL_INT* kl,
                                 const MKL_INT* ku, const MKL_Complex16* ab,
                                 const MKL_INT* ldab,
                                 const MKL_Complex16* afb,
                                 const MKL_INT* ldafb, const MKL_INT* ipiv,
                                 const MKL_Complex16* x, MKL_INT* info,
                                 MKL_Complex16* work, double* rwork );

void __stdcall ZLA_GBRFSX_EXTENDED( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* kl,
                                    const MKL_INT* ku, const MKL_INT* nrhs,
                                    const MKL_Complex16* ab,
                                    const MKL_INT* ldab,
                                    const MKL_Complex16* afb,
                                    const MKL_INT* ldafb,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const MKL_Complex16* b,
                                    const MKL_INT* ldb, MKL_Complex16* y,
                                    const MKL_INT* ldy, double* berr_out,
                                    const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp,
                                    MKL_Complex16* res, double* ayb,
                                    MKL_Complex16* dy, MKL_Complex16* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall ZLA_GBRFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* kl,
                                     const MKL_INT* ku, const MKL_INT* nrhs,
                                     const MKL_Complex16* ab,
                                     const MKL_INT* ldab,
                                     const MKL_Complex16* afb,
                                     const MKL_INT* ldafb,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const MKL_Complex16* b,
                                     const MKL_INT* ldb, MKL_Complex16* y,
                                     const MKL_INT* ldy, double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp,
                                     MKL_Complex16* res, double* ayb,
                                     MKL_Complex16* dy,
                                     MKL_Complex16* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall zla_gbrfsx_extended( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* kl,
                                    const MKL_INT* ku, const MKL_INT* nrhs,
                                    const MKL_Complex16* ab,
                                    const MKL_INT* ldab,
                                    const MKL_Complex16* afb,
                                    const MKL_INT* ldafb,
                                    const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const MKL_Complex16* b,
                                    const MKL_INT* ldb, MKL_Complex16* y,
                                    const MKL_INT* ldy, double* berr_out,
                                    const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp,
                                    MKL_Complex16* res, double* ayb,
                                    MKL_Complex16* dy, MKL_Complex16* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall zla_gbrfsx_extended_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* kl,
                                     const MKL_INT* ku, const MKL_INT* nrhs,
                                     const MKL_Complex16* ab,
                                     const MKL_INT* ldab,
                                     const MKL_Complex16* afb,
                                     const MKL_INT* ldafb,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const MKL_Complex16* b,
                                     const MKL_INT* ldb, MKL_Complex16* y,
                                     const MKL_INT* ldy, double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp,
                                     MKL_Complex16* res, double* ayb,
                                     MKL_Complex16* dy,
                                     MKL_Complex16* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

double __stdcall ZLA_GBRPVGRW( const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const MKL_INT* ncols,
                               const MKL_Complex16* ab, const MKL_INT* ldab,
                               const MKL_Complex16* afb,
                               const MKL_INT* ldafb );
double __stdcall ZLA_GBRPVGRW_( const MKL_INT* n, const MKL_INT* kl,
                                const MKL_INT* ku, const MKL_INT* ncols,
                                const MKL_Complex16* ab, const MKL_INT* ldab,
                                const MKL_Complex16* afb,
                                const MKL_INT* ldafb );
double __stdcall zla_gbrpvgrw( const MKL_INT* n, const MKL_INT* kl,
                               const MKL_INT* ku, const MKL_INT* ncols,
                               const MKL_Complex16* ab, const MKL_INT* ldab,
                               const MKL_Complex16* afb,
                               const MKL_INT* ldafb );
double __stdcall zla_gbrpvgrw_( const MKL_INT* n, const MKL_INT* kl,
                                const MKL_INT* ku, const MKL_INT* ncols,
                                const MKL_Complex16* ab, const MKL_INT* ldab,
                                const MKL_Complex16* afb,
                                const MKL_INT* ldafb );

void __stdcall ZLA_GEAMV( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const double* alpha,
                          const MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* x, const MKL_INT* incx,
                          const double* beta, double* y, const MKL_INT* incy );
void __stdcall ZLA_GEAMV_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const double* alpha,
                           const MKL_Complex16* a, const MKL_INT* lda,
                           const MKL_Complex16* x, const MKL_INT* incx,
                           const double* beta, double* y, const MKL_INT* incy );
void __stdcall zla_geamv( const MKL_INT* trans, const MKL_INT* m,
                          const MKL_INT* n, const double* alpha,
                          const MKL_Complex16* a, const MKL_INT* lda,
                          const MKL_Complex16* x, const MKL_INT* incx,
                          const double* beta, double* y, const MKL_INT* incy );
void __stdcall zla_geamv_( const MKL_INT* trans, const MKL_INT* m,
                           const MKL_INT* n, const double* alpha,
                           const MKL_Complex16* a, const MKL_INT* lda,
                           const MKL_Complex16* x, const MKL_INT* incx,
                           const double* beta, double* y, const MKL_INT* incy );

double __stdcall ZLA_GERCOND_C( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const double* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex16* work,
                                double* rwork );
double __stdcall ZLA_GERCOND_C_( const char* trans, int trans_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_INT* ipiv,
                                 const double* c, const MKL_INT* capply,
                                 MKL_INT* info, MKL_Complex16* work,
                                 double* rwork );
double __stdcall zla_gercond_c( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const double* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex16* work,
                                double* rwork );
double __stdcall zla_gercond_c_( const char* trans, int trans_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_INT* ipiv,
                                 const double* c, const MKL_INT* capply,
                                 MKL_INT* info, MKL_Complex16* work,
                                 double* rwork );

double __stdcall ZLA_GERCOND_X( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const MKL_Complex16* x, MKL_INT* info,
                                MKL_Complex16* work, double* rwork );
double __stdcall ZLA_GERCOND_X_( const char* trans, int trans_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_INT* ipiv,
                                 const MKL_Complex16* x, MKL_INT* info,
                                 MKL_Complex16* work, double* rwork );
double __stdcall zla_gercond_x( const char* trans, int trans_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const MKL_Complex16* x, MKL_INT* info,
                                MKL_Complex16* work, double* rwork );
double __stdcall zla_gercond_x_( const char* trans, int trans_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_INT* ipiv,
                                 const MKL_Complex16* x, MKL_INT* info,
                                 MKL_Complex16* work, double* rwork );

void __stdcall ZLA_GERFSX_EXTENDED( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex16* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex16* af,
                                    const MKL_INT* ldaf, const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const MKL_Complex16* b,
                                    const MKL_INT* ldb, MKL_Complex16* y,
                                    const MKL_INT* ldy, double* berr_out,
                                    const MKL_INT* n_norms, double* errs_n,
                                    double* errs_c, MKL_Complex16* res,
                                    double* ayb, MKL_Complex16* dy,
                                    MKL_Complex16* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall ZLA_GERFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex16* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex16* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const MKL_Complex16* b,
                                     const MKL_INT* ldb, MKL_Complex16* y,
                                     const MKL_INT* ldy, double* berr_out,
                                     const MKL_INT* n_norms, double* errs_n,
                                     double* errs_c, MKL_Complex16* res,
                                     double* ayb, MKL_Complex16* dy,
                                     MKL_Complex16* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall zla_gerfsx_extended( const MKL_INT* prec_type,
                                    const MKL_INT* trans_type,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex16* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex16* af,
                                    const MKL_INT* ldaf, const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const MKL_Complex16* b,
                                    const MKL_INT* ldb, MKL_Complex16* y,
                                    const MKL_INT* ldy, double* berr_out,
                                    const MKL_INT* n_norms, double* errs_n,
                                    double* errs_c, MKL_Complex16* res,
                                    double* ayb, MKL_Complex16* dy,
                                    MKL_Complex16* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall zla_gerfsx_extended_( const MKL_INT* prec_type,
                                     const MKL_INT* trans_type,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex16* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex16* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const MKL_Complex16* b,
                                     const MKL_INT* ldb, MKL_Complex16* y,
                                     const MKL_INT* ldy, double* berr_out,
                                     const MKL_INT* n_norms, double* errs_n,
                                     double* errs_c, MKL_Complex16* res,
                                     double* ayb, MKL_Complex16* dy,
                                     MKL_Complex16* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

double __stdcall ZLA_GERPVGRW( const MKL_INT* n, const MKL_INT* ncols,
                               const MKL_Complex16* a, const MKL_INT* lda,
                               const MKL_Complex16* af, const MKL_INT* ldaf );
double __stdcall ZLA_GERPVGRW_( const MKL_INT* n, const MKL_INT* ncols,
                                const MKL_Complex16* a, const MKL_INT* lda,
                                const MKL_Complex16* af, const MKL_INT* ldaf );
double __stdcall zla_gerpvgrw( const MKL_INT* n, const MKL_INT* ncols,
                               const MKL_Complex16* a, const MKL_INT* lda,
                               const MKL_Complex16* af, const MKL_INT* ldaf );
double __stdcall zla_gerpvgrw_( const MKL_INT* n, const MKL_INT* ncols,
                                const MKL_Complex16* a, const MKL_INT* lda,
                                const MKL_Complex16* af, const MKL_INT* ldaf );

void __stdcall ZLA_HEAMV( const MKL_INT* uplo, const MKL_INT* n,
                          const double* alpha, const MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_Complex16* x,
                          const MKL_INT* incx, const double* beta, double* y,
                          const MKL_INT* incy );
void __stdcall ZLA_HEAMV_( const MKL_INT* uplo, const MKL_INT* n,
                           const double* alpha, const MKL_Complex16* a,
                           const MKL_INT* lda, const MKL_Complex16* x,
                           const MKL_INT* incx, const double* beta, double* y,
                           const MKL_INT* incy );
void __stdcall zla_heamv( const MKL_INT* uplo, const MKL_INT* n,
                          const double* alpha, const MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_Complex16* x,
                          const MKL_INT* incx, const double* beta, double* y,
                          const MKL_INT* incy );
void __stdcall zla_heamv_( const MKL_INT* uplo, const MKL_INT* n,
                           const double* alpha, const MKL_Complex16* a,
                           const MKL_INT* lda, const MKL_Complex16* x,
                           const MKL_INT* incx, const double* beta, double* y,
                           const MKL_INT* incy );

double __stdcall ZLA_HERCOND_C( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const double* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex16* work,
                                double* rwork );
double __stdcall ZLA_HERCOND_C_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_INT* ipiv,
                                 const double* c, const MKL_INT* capply,
                                 MKL_INT* info, MKL_Complex16* work,
                                 double* rwork );
double __stdcall zla_hercond_c( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const double* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex16* work,
                                double* rwork );
double __stdcall zla_hercond_c_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_INT* ipiv,
                                 const double* c, const MKL_INT* capply,
                                 MKL_INT* info, MKL_Complex16* work,
                                 double* rwork );

double __stdcall ZLA_HERCOND_X( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const MKL_Complex16* x, MKL_INT* info,
                                MKL_Complex16* work, double* rwork );
double __stdcall ZLA_HERCOND_X_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_INT* ipiv,
                                 const MKL_Complex16* x, MKL_INT* info,
                                 MKL_Complex16* work, double* rwork );
double __stdcall zla_hercond_x( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const MKL_Complex16* x, MKL_INT* info,
                                MKL_Complex16* work, double* rwork );
double __stdcall zla_hercond_x_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_INT* ipiv,
                                 const MKL_Complex16* x, MKL_INT* info,
                                 MKL_Complex16* work, double* rwork );

void __stdcall ZLA_HERFSX_EXTENDED( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex16* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex16* af,
                                    const MKL_INT* ldaf, const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const MKL_Complex16* b,
                                    const MKL_INT* ldb, MKL_Complex16* y,
                                    const MKL_INT* ldy, double* berr_out,
                                    const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp,
                                    MKL_Complex16* res, double* ayb,
                                    MKL_Complex16* dy, MKL_Complex16* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall ZLA_HERFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex16* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex16* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const MKL_Complex16* b,
                                     const MKL_INT* ldb, MKL_Complex16* y,
                                     const MKL_INT* ldy, double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp,
                                     MKL_Complex16* res, double* ayb,
                                     MKL_Complex16* dy,
                                     MKL_Complex16* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall zla_herfsx_extended( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex16* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex16* af,
                                    const MKL_INT* ldaf, const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const MKL_Complex16* b,
                                    const MKL_INT* ldb, MKL_Complex16* y,
                                    const MKL_INT* ldy, double* berr_out,
                                    const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp,
                                    MKL_Complex16* res, double* ayb,
                                    MKL_Complex16* dy, MKL_Complex16* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall zla_herfsx_extended_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex16* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex16* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const MKL_Complex16* b,
                                     const MKL_INT* ldb, MKL_Complex16* y,
                                     const MKL_INT* ldy, double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp,
                                     MKL_Complex16* res, double* ayb,
                                     MKL_Complex16* dy,
                                     MKL_Complex16* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

double __stdcall ZLA_HERPVGRW( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* info,
                               const MKL_Complex16* a, const MKL_INT* lda,
                               const MKL_Complex16* af, const MKL_INT* ldaf,
                               const MKL_INT* ipiv, double* work );
double __stdcall ZLA_HERPVGRW_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* info,
                                const MKL_Complex16* a, const MKL_INT* lda,
                                const MKL_Complex16* af, const MKL_INT* ldaf,
                                const MKL_INT* ipiv, double* work );
double __stdcall zla_herpvgrw( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* info,
                               const MKL_Complex16* a, const MKL_INT* lda,
                               const MKL_Complex16* af, const MKL_INT* ldaf,
                               const MKL_INT* ipiv, double* work );
double __stdcall zla_herpvgrw_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* info,
                                const MKL_Complex16* a, const MKL_INT* lda,
                                const MKL_Complex16* af, const MKL_INT* ldaf,
                                const MKL_INT* ipiv, double* work );

void __stdcall ZLA_LIN_BERR( const MKL_INT* n, const MKL_INT* nz,
                             const MKL_INT* nrhs, const MKL_Complex16* res,
                             const double* ayb, double* berr );
void __stdcall ZLA_LIN_BERR_( const MKL_INT* n, const MKL_INT* nz,
                              const MKL_INT* nrhs, const MKL_Complex16* res,
                              const double* ayb, double* berr );
void __stdcall zla_lin_berr( const MKL_INT* n, const MKL_INT* nz,
                             const MKL_INT* nrhs, const MKL_Complex16* res,
                             const double* ayb, double* berr );
void __stdcall zla_lin_berr_( const MKL_INT* n, const MKL_INT* nz,
                              const MKL_INT* nrhs, const MKL_Complex16* res,
                              const double* ayb, double* berr );

double __stdcall ZLA_PORCOND_C( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const double* c,
                                const MKL_INT* capply, MKL_INT* info,
                                MKL_Complex16* work, double* rwork );
double __stdcall ZLA_PORCOND_C_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const double* c,
                                 const MKL_INT* capply, MKL_INT* info,
                                 MKL_Complex16* work, double* rwork );
double __stdcall zla_porcond_c( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const double* c,
                                const MKL_INT* capply, MKL_INT* info,
                                MKL_Complex16* work, double* rwork );
double __stdcall zla_porcond_c_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const double* c,
                                 const MKL_INT* capply, MKL_INT* info,
                                 MKL_Complex16* work, double* rwork );

double __stdcall ZLA_PORCOND_X( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_Complex16* x,
                                MKL_INT* info, MKL_Complex16* work,
                                double* rwork );
double __stdcall ZLA_PORCOND_X_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_Complex16* x,
                                 MKL_INT* info, MKL_Complex16* work,
                                 double* rwork );
double __stdcall zla_porcond_x( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_Complex16* x,
                                MKL_INT* info, MKL_Complex16* work,
                                double* rwork );
double __stdcall zla_porcond_x_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_Complex16* x,
                                 MKL_INT* info, MKL_Complex16* work,
                                 double* rwork );

void __stdcall ZLA_PORFSX_EXTENDED( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex16* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex16* af,
                                    const MKL_INT* ldaf,
                                    const MKL_INT* colequ, const double* c,
                                    const MKL_Complex16* b,
                                    const MKL_INT* ldb, MKL_Complex16* y,
                                    const MKL_INT* ldy, double* berr_out,
                                    const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp,
                                    MKL_Complex16* res, double* ayb,
                                    MKL_Complex16* dy, MKL_Complex16* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall ZLA_PORFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex16* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex16* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* colequ, const double* c,
                                     const MKL_Complex16* b,
                                     const MKL_INT* ldb, MKL_Complex16* y,
                                     const MKL_INT* ldy, double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp,
                                     MKL_Complex16* res, double* ayb,
                                     MKL_Complex16* dy,
                                     MKL_Complex16* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall zla_porfsx_extended( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex16* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex16* af,
                                    const MKL_INT* ldaf,
                                    const MKL_INT* colequ, const double* c,
                                    const MKL_Complex16* b,
                                    const MKL_INT* ldb, MKL_Complex16* y,
                                    const MKL_INT* ldy, double* berr_out,
                                    const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp,
                                    MKL_Complex16* res, double* ayb,
                                    MKL_Complex16* dy, MKL_Complex16* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall zla_porfsx_extended_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex16* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex16* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* colequ, const double* c,
                                     const MKL_Complex16* b,
                                     const MKL_INT* ldb, MKL_Complex16* y,
                                     const MKL_INT* ldy, double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp,
                                     MKL_Complex16* res, double* ayb,
                                     MKL_Complex16* dy,
                                     MKL_Complex16* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

double __stdcall ZLA_PORPVGRW( const char* uplo, int uplo_len,
                               const MKL_INT* ncols, const MKL_Complex16* a,
                               const MKL_INT* lda, const MKL_Complex16* af,
                               const MKL_INT* ldaf, double* work );
double __stdcall ZLA_PORPVGRW_( const char* uplo, int uplo_len,
                                const MKL_INT* ncols, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, double* work );
double __stdcall zla_porpvgrw( const char* uplo, int uplo_len,
                               const MKL_INT* ncols, const MKL_Complex16* a,
                               const MKL_INT* lda, const MKL_Complex16* af,
                               const MKL_INT* ldaf, double* work );
double __stdcall zla_porpvgrw_( const char* uplo, int uplo_len,
                                const MKL_INT* ncols, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, double* work );

void __stdcall ZLA_SYAMV( const MKL_INT* uplo, const MKL_INT* n,
                          const double* alpha, const MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_Complex16* x,
                          const MKL_INT* incx, const double* beta, double* y,
                          const MKL_INT* incy );
void __stdcall ZLA_SYAMV_( const MKL_INT* uplo, const MKL_INT* n,
                           const double* alpha, const MKL_Complex16* a,
                           const MKL_INT* lda, const MKL_Complex16* x,
                           const MKL_INT* incx, const double* beta, double* y,
                           const MKL_INT* incy );
void __stdcall zla_syamv( const MKL_INT* uplo, const MKL_INT* n,
                          const double* alpha, const MKL_Complex16* a,
                          const MKL_INT* lda, const MKL_Complex16* x,
                          const MKL_INT* incx, const double* beta, double* y,
                          const MKL_INT* incy );
void __stdcall zla_syamv_( const MKL_INT* uplo, const MKL_INT* n,
                           const double* alpha, const MKL_Complex16* a,
                           const MKL_INT* lda, const MKL_Complex16* x,
                           const MKL_INT* incx, const double* beta, double* y,
                           const MKL_INT* incy );

double __stdcall ZLA_SYRCOND_C( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const double* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex16* work,
                                double* rwork );
double __stdcall ZLA_SYRCOND_C_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_INT* ipiv,
                                 const double* c, const MKL_INT* capply,
                                 MKL_INT* info, MKL_Complex16* work,
                                 double* rwork );
double __stdcall zla_syrcond_c( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const double* c, const MKL_INT* capply,
                                MKL_INT* info, MKL_Complex16* work,
                                double* rwork );
double __stdcall zla_syrcond_c_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_INT* ipiv,
                                 const double* c, const MKL_INT* capply,
                                 MKL_INT* info, MKL_Complex16* work,
                                 double* rwork );

double __stdcall ZLA_SYRCOND_X( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const MKL_Complex16* x, MKL_INT* info,
                                MKL_Complex16* work, double* rwork );
double __stdcall ZLA_SYRCOND_X_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_INT* ipiv,
                                 const MKL_Complex16* x, MKL_INT* info,
                                 MKL_Complex16* work, double* rwork );
double __stdcall zla_syrcond_x( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_Complex16* a,
                                const MKL_INT* lda, const MKL_Complex16* af,
                                const MKL_INT* ldaf, const MKL_INT* ipiv,
                                const MKL_Complex16* x, MKL_INT* info,
                                MKL_Complex16* work, double* rwork );
double __stdcall zla_syrcond_x_( const char* uplo, int uplo_len,
                                 const MKL_INT* n, const MKL_Complex16* a,
                                 const MKL_INT* lda, const MKL_Complex16* af,
                                 const MKL_INT* ldaf, const MKL_INT* ipiv,
                                 const MKL_Complex16* x, MKL_INT* info,
                                 MKL_Complex16* work, double* rwork );

void __stdcall ZLA_SYRFSX_EXTENDED( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex16* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex16* af,
                                    const MKL_INT* ldaf, const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const MKL_Complex16* b,
                                    const MKL_INT* ldb, MKL_Complex16* y,
                                    const MKL_INT* ldy, double* berr_out,
                                    const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp,
                                    MKL_Complex16* res, double* ayb,
                                    MKL_Complex16* dy, MKL_Complex16* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall ZLA_SYRFSX_EXTENDED_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex16* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex16* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const MKL_Complex16* b,
                                     const MKL_INT* ldb, MKL_Complex16* y,
                                     const MKL_INT* ldy, double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp,
                                     MKL_Complex16* res, double* ayb,
                                     MKL_Complex16* dy,
                                     MKL_Complex16* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );
void __stdcall zla_syrfsx_extended( const MKL_INT* prec_type,
                                    const char* uplo, int uplo_len,
                                    const MKL_INT* n, const MKL_INT* nrhs,
                                    const MKL_Complex16* a,
                                    const MKL_INT* lda,
                                    const MKL_Complex16* af,
                                    const MKL_INT* ldaf, const MKL_INT* ipiv,
                                    const MKL_INT* colequ, const double* c,
                                    const MKL_Complex16* b,
                                    const MKL_INT* ldb, MKL_Complex16* y,
                                    const MKL_INT* ldy, double* berr_out,
                                    const MKL_INT* n_norms,
                                    double* err_bnds_norm,
                                    double* err_bnds_comp,
                                    MKL_Complex16* res, double* ayb,
                                    MKL_Complex16* dy, MKL_Complex16* y_tail,
                                    const double* rcond,
                                    const MKL_INT* ithresh,
                                    const double* rthresh,
                                    const double* dz_ub,
                                    const MKL_INT* ignore_cwise,
                                    MKL_INT* info );
void __stdcall zla_syrfsx_extended_( const MKL_INT* prec_type,
                                     const char* uplo, int uplo_len,
                                     const MKL_INT* n, const MKL_INT* nrhs,
                                     const MKL_Complex16* a,
                                     const MKL_INT* lda,
                                     const MKL_Complex16* af,
                                     const MKL_INT* ldaf,
                                     const MKL_INT* ipiv,
                                     const MKL_INT* colequ, const double* c,
                                     const MKL_Complex16* b,
                                     const MKL_INT* ldb, MKL_Complex16* y,
                                     const MKL_INT* ldy, double* berr_out,
                                     const MKL_INT* n_norms,
                                     double* err_bnds_norm,
                                     double* err_bnds_comp,
                                     MKL_Complex16* res, double* ayb,
                                     MKL_Complex16* dy,
                                     MKL_Complex16* y_tail,
                                     const double* rcond,
                                     const MKL_INT* ithresh,
                                     const double* rthresh,
                                     const double* dz_ub,
                                     const MKL_INT* ignore_cwise,
                                     MKL_INT* info );

double __stdcall ZLA_SYRPVGRW( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* info,
                               const MKL_Complex16* a, const MKL_INT* lda,
                               const MKL_Complex16* af, const MKL_INT* ldaf,
                               const MKL_INT* ipiv, double* work );
double __stdcall ZLA_SYRPVGRW_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* info,
                                const MKL_Complex16* a, const MKL_INT* lda,
                                const MKL_Complex16* af, const MKL_INT* ldaf,
                                const MKL_INT* ipiv, double* work );
double __stdcall zla_syrpvgrw( const char* uplo, int uplo_len,
                               const MKL_INT* n, const MKL_INT* info,
                               const MKL_Complex16* a, const MKL_INT* lda,
                               const MKL_Complex16* af, const MKL_INT* ldaf,
                               const MKL_INT* ipiv, double* work );
double __stdcall zla_syrpvgrw_( const char* uplo, int uplo_len,
                                const MKL_INT* n, const MKL_INT* info,
                                const MKL_Complex16* a, const MKL_INT* lda,
                                const MKL_Complex16* af, const MKL_INT* ldaf,
                                const MKL_INT* ipiv, double* work );

void __stdcall ZLA_WWADDW( const MKL_INT* n, MKL_Complex16* x,
                           MKL_Complex16* y, const MKL_Complex16* w );
void __stdcall ZLA_WWADDW_( const MKL_INT* n, MKL_Complex16* x,
                            MKL_Complex16* y, const MKL_Complex16* w );
void __stdcall zla_wwaddw( const MKL_INT* n, MKL_Complex16* x,
                           MKL_Complex16* y, const MKL_Complex16* w );
void __stdcall zla_wwaddw_( const MKL_INT* n, MKL_Complex16* x,
                            MKL_Complex16* y, const MKL_Complex16* w );

void __stdcall ZTPRFB( const char* side, int side_len, const char* trans,
                       int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const MKL_Complex16* v, const MKL_INT* ldv,
                       const MKL_Complex16* t, const MKL_INT* ldt,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* work,
                       const MKL_INT* ldwork );
void __stdcall ZTPRFB_( const char* side, int side_len, const char* trans,
                        int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* work, const MKL_INT* ldwork );
void __stdcall ztprfb( const char* side, int side_len, const char* trans,
                       int trans_len, const char* direct, int direct_len,
                       const char* storev, int storev_len, const MKL_INT* m,
                       const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                       const MKL_Complex16* v, const MKL_INT* ldv,
                       const MKL_Complex16* t, const MKL_INT* ldt,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* work,
                       const MKL_INT* ldwork );
void __stdcall ztprfb_( const char* side, int side_len, const char* trans,
                        int trans_len, const char* direct, int direct_len,
                        const char* storev, int storev_len, const MKL_INT* m,
                        const MKL_INT* n, const MKL_INT* k, const MKL_INT* l,
                        const MKL_Complex16* v, const MKL_INT* ldv,
                        const MKL_Complex16* t, const MKL_INT* ldt,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_Complex16* work, const MKL_INT* ldwork );


/* oneMKL specific routines */

/* Tridiagonalization using Successive Bandwidth Reduction */

void __stdcall CHERDB( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex8* a, const MKL_INT* lda, float* d,
                       float* e, MKL_Complex8* tau, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall CHERDB_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, MKL_Complex8* a, const MKL_INT* lda, float* d,
                        float* e, MKL_Complex8* tau, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cherdb( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex8* a, const MKL_INT* lda, float* d,
                       float* e, MKL_Complex8* tau, MKL_Complex8* z, const MKL_INT* ldz,
                       MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall cherdb_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, MKL_Complex8* a, const MKL_INT* lda, float* d,
                        float* e, MKL_Complex8* tau, MKL_Complex8* z, const MKL_INT* ldz,
                        MKL_Complex8* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall DSYRDB( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, double* a, const MKL_INT* lda, double* d,
                       double* e, double* tau, double* z, const MKL_INT* ldz,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall DSYRDB_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, double* a, const MKL_INT* lda, double* d,
                        double* e, double* tau, double* z, const MKL_INT* ldz,
                        double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsyrdb( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, double* a, const MKL_INT* lda, double* d,
                       double* e, double* tau, double* z, const MKL_INT* ldz,
                       double* work, const MKL_INT* lwork, MKL_INT* info );
void __stdcall dsyrdb_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, double* a, const MKL_INT* lda, double* d,
                        double* e, double* tau, double* z, const MKL_INT* ldz,
                        double* work, const MKL_INT* lwork, MKL_INT* info );

void __stdcall SSYRDB( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, float* a, const MKL_INT* lda, float* d,
                       float* e, float* tau, float* z, const MKL_INT* ldz, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall SSYRDB_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, float* a, const MKL_INT* lda, float* d,
                        float* e, float* tau, float* z, const MKL_INT* ldz, float* work,
                        const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssyrdb( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, float* a, const MKL_INT* lda, float* d,
                       float* e, float* tau, float* z, const MKL_INT* ldz, float* work,
                       const MKL_INT* lwork, MKL_INT* info );
void __stdcall ssyrdb_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, float* a, const MKL_INT* lda, float* d,
                        float* e, float* tau, float* z, const MKL_INT* ldz, float* work,
                        const MKL_INT* lwork, MKL_INT* info );

void __stdcall ZHERDB( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex16* a, const MKL_INT* lda,
                       double* d, double* e, MKL_Complex16* tau, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall ZHERDB_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, MKL_Complex16* a, const MKL_INT* lda,
                        double* d, double* e, MKL_Complex16* tau, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );
void __stdcall zherdb( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                       const MKL_INT* kd, MKL_Complex16* a, const MKL_INT* lda,
                       double* d, double* e, MKL_Complex16* tau, MKL_Complex16* z,
                       const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                       MKL_INT* info );
void __stdcall zherdb_( const char* jobz, int jobz_len, const char* uplo, int uplo_len, const MKL_INT* n,
                        const MKL_INT* kd, MKL_Complex16* a, const MKL_INT* lda,
                        double* d, double* e, MKL_Complex16* tau, MKL_Complex16* z,
                        const MKL_INT* ldz, MKL_Complex16* work, const MKL_INT* lwork,
                        MKL_INT* info );

/* Tridiagonal diagonally-dominant linear equations solver
the BABE __stdcall algorithm(Burning At Both Ends);*/

void __stdcall CDTSVB( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* dl,
                       MKL_Complex8* d, const MKL_Complex8* du, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall CDTSVB_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* dl,
                        MKL_Complex8* d, const MKL_Complex8* du, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall cdtsvb( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* dl,
                       MKL_Complex8* d, const MKL_Complex8* du, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall cdtsvb_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex8* dl,
                        MKL_Complex8* d, const MKL_Complex8* du, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall CDTTRFB( const MKL_INT* n, MKL_Complex8* dl, MKL_Complex8* d,
                        const MKL_Complex8* du, MKL_INT* info );
void __stdcall CDTTRFB_( const MKL_INT* n, MKL_Complex8* dl, MKL_Complex8* d,
                         const MKL_Complex8* du, MKL_INT* info );
void __stdcall cdttrfb( const MKL_INT* n, MKL_Complex8* dl, MKL_Complex8* d,
                        const MKL_Complex8* du, MKL_INT* info );
void __stdcall cdttrfb_( const MKL_INT* n, MKL_Complex8* dl, MKL_Complex8* d,
                         const MKL_Complex8* du, MKL_INT* info );

void __stdcall CDTTRSB( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* dl, const MKL_Complex8* d,
                        const MKL_Complex8* du, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall CDTTRSB_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                         const MKL_Complex8* dl, const MKL_Complex8* d,
                         const MKL_Complex8* du, MKL_Complex8* b, const MKL_INT* ldb,
                         MKL_INT* info );
void __stdcall cdttrsb( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex8* dl, const MKL_Complex8* d,
                        const MKL_Complex8* du, MKL_Complex8* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall cdttrsb_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                         const MKL_Complex8* dl, const MKL_Complex8* d,
                         const MKL_Complex8* du, MKL_Complex8* b, const MKL_INT* ldb,
                         MKL_INT* info );

void __stdcall DDTSVB( const MKL_INT* n, const MKL_INT* nrhs, double* dl, double* d,
                       const double* du, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall DDTSVB_( const MKL_INT* n, const MKL_INT* nrhs, double* dl, double* d,
                        const double* du, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ddtsvb( const MKL_INT* n, const MKL_INT* nrhs, double* dl, double* d,
                       const double* du, double* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall ddtsvb_( const MKL_INT* n, const MKL_INT* nrhs, double* dl, double* d,
                        const double* du, double* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall DDTTRFB( const MKL_INT* n, double* dl, double* d, const double* du,
                        MKL_INT* info );
void __stdcall DDTTRFB_( const MKL_INT* n, double* dl, double* d, const double* du,
                         MKL_INT* info );
void __stdcall ddttrfb( const MKL_INT* n, double* dl, double* d, const double* du,
                        MKL_INT* info );
void __stdcall ddttrfb_( const MKL_INT* n, double* dl, double* d, const double* du,
                         MKL_INT* info );

void __stdcall DDTTRSB( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* dl, const double* d, const double* du, double* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall DDTTRSB_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                         const double* dl, const double* d, const double* du, double* b,
                         const MKL_INT* ldb, MKL_INT* info );
void __stdcall ddttrsb( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const double* dl, const double* d, const double* du, double* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall ddttrsb_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                         const double* dl, const double* d, const double* du, double* b,
                         const MKL_INT* ldb, MKL_INT* info );

void __stdcall SDTSVB( const MKL_INT* n, const MKL_INT* nrhs, float* dl, float* d,
                       const float* du, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall SDTSVB_( const MKL_INT* n, const MKL_INT* nrhs, float* dl, float* d,
                        const float* du, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sdtsvb( const MKL_INT* n, const MKL_INT* nrhs, float* dl, float* d,
                       const float* du, float* b, const MKL_INT* ldb, MKL_INT* info );
void __stdcall sdtsvb_( const MKL_INT* n, const MKL_INT* nrhs, float* dl, float* d,
                        const float* du, float* b, const MKL_INT* ldb, MKL_INT* info );

void __stdcall SDTTRFB( const MKL_INT* n, float* dl, float* d, const float* du,
                        MKL_INT* info );
void __stdcall SDTTRFB_( const MKL_INT* n, float* dl, float* d, const float* du,
                         MKL_INT* info );
void __stdcall sdttrfb( const MKL_INT* n, float* dl, float* d, const float* du,
                        MKL_INT* info );
void __stdcall sdttrfb_( const MKL_INT* n, float* dl, float* d, const float* du,
                         MKL_INT* info );

void __stdcall SDTTRSB( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* dl, const float* d, const float* du, float* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall SDTTRSB_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                         const float* dl, const float* d, const float* du, float* b,
                         const MKL_INT* ldb, MKL_INT* info );
void __stdcall sdttrsb( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const float* dl, const float* d, const float* du, float* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall sdttrsb_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                         const float* dl, const float* d, const float* du, float* b,
                         const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZDTSVB( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* dl,
                       MKL_Complex16* d, const MKL_Complex16* du, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall ZDTSVB_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* dl,
                        MKL_Complex16* d, const MKL_Complex16* du, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );
void __stdcall zdtsvb( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* dl,
                       MKL_Complex16* d, const MKL_Complex16* du, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_INT* info );
void __stdcall zdtsvb_( const MKL_INT* n, const MKL_INT* nrhs, MKL_Complex16* dl,
                        MKL_Complex16* d, const MKL_Complex16* du, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_INT* info );

void __stdcall ZDTTRFB( const MKL_INT* n, MKL_Complex16* dl, MKL_Complex16* d,
                        const MKL_Complex16* du, MKL_INT* info );
void __stdcall ZDTTRFB_( const MKL_INT* n, MKL_Complex16* dl, MKL_Complex16* d,
                         const MKL_Complex16* du, MKL_INT* info );
void __stdcall zdttrfb( const MKL_INT* n, MKL_Complex16* dl, MKL_Complex16* d,
                        const MKL_Complex16* du, MKL_INT* info );
void __stdcall zdttrfb_( const MKL_INT* n, MKL_Complex16* dl, MKL_Complex16* d,
                         const MKL_Complex16* du, MKL_INT* info );

void __stdcall ZDTTRSB( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* dl, const MKL_Complex16* d,
                        const MKL_Complex16* du, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall ZDTTRSB_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                         const MKL_Complex16* dl, const MKL_Complex16* d,
                         const MKL_Complex16* du, MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_INT* info );
void __stdcall zdttrsb( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                        const MKL_Complex16* dl, const MKL_Complex16* d,
                        const MKL_Complex16* du, MKL_Complex16* b, const MKL_INT* ldb,
                        MKL_INT* info );
void __stdcall zdttrsb_( const char* trans, int trans_len, const MKL_INT* n, const MKL_INT* nrhs,
                         const MKL_Complex16* dl, const MKL_Complex16* d,
                         const MKL_Complex16* du, MKL_Complex16* b, const MKL_INT* ldb,
                         MKL_INT* info );

/* Converters for standard packed format */

void __stdcall MKL_CTPPACK( const char* uplo, int uplo_len, const char* trans,
                            int trans_len, const MKL_INT* n, MKL_Complex8* ap,
                            const MKL_INT* i, const MKL_INT* j,
                            const MKL_INT* rows, const MKL_INT* cols,
                            const MKL_Complex8* a, const MKL_INT* lda,
                            MKL_INT* info );
void __stdcall MKL_CTPPACK_( const char* uplo, int uplo_len, const char* trans,
                             int trans_len, const MKL_INT* n, MKL_Complex8* ap,
                             const MKL_INT* i, const MKL_INT* j,
                             const MKL_INT* rows, const MKL_INT* cols,
                             const MKL_Complex8* a, const MKL_INT* lda,
                             MKL_INT* info );
void __stdcall mkl_ctppack( const char* uplo, int uplo_len, const char* trans,
                            int trans_len, const MKL_INT* n, MKL_Complex8* ap,
                            const MKL_INT* i, const MKL_INT* j,
                            const MKL_INT* rows, const MKL_INT* cols,
                            const MKL_Complex8* a, const MKL_INT* lda,
                            MKL_INT* info );
void __stdcall mkl_ctppack_( const char* uplo, int uplo_len, const char* trans,
                             int trans_len, const MKL_INT* n, MKL_Complex8* ap,
                             const MKL_INT* i, const MKL_INT* j,
                             const MKL_INT* rows, const MKL_INT* cols,
                             const MKL_Complex8* a, const MKL_INT* lda,
                             MKL_INT* info );

void __stdcall MKL_DTPPACK( const char* uplo, int uplo_len, const char* trans,
                            int trans_len, const MKL_INT* n, double* ap,
                            const MKL_INT* i, const MKL_INT* j,
                            const MKL_INT* rows, const MKL_INT* cols,
                            const double* a, const MKL_INT* lda,
                            MKL_INT* info );
void __stdcall MKL_DTPPACK_( const char* uplo, int uplo_len, const char* trans,
                             int trans_len, const MKL_INT* n, double* ap,
                             const MKL_INT* i, const MKL_INT* j,
                             const MKL_INT* rows, const MKL_INT* cols,
                             const double* a, const MKL_INT* lda,
                             MKL_INT* info );
void __stdcall mkl_dtppack( const char* uplo, int uplo_len, const char* trans,
                            int trans_len, const MKL_INT* n, double* ap,
                            const MKL_INT* i, const MKL_INT* j,
                            const MKL_INT* rows, const MKL_INT* cols,
                            const double* a, const MKL_INT* lda,
                            MKL_INT* info );
void __stdcall mkl_dtppack_( const char* uplo, int uplo_len, const char* trans,
                             int trans_len, const MKL_INT* n, double* ap,
                             const MKL_INT* i, const MKL_INT* j,
                             const MKL_INT* rows, const MKL_INT* cols,
                             const double* a, const MKL_INT* lda,
                             MKL_INT* info );

void __stdcall MKL_STPPACK( const char* uplo, int uplo_len, const char* trans,
                            int trans_len, const MKL_INT* n, float* ap,
                            const MKL_INT* i, const MKL_INT* j,
                            const MKL_INT* rows, const MKL_INT* cols,
                            const float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall MKL_STPPACK_( const char* uplo, int uplo_len, const char* trans,
                             int trans_len, const MKL_INT* n, float* ap,
                             const MKL_INT* i, const MKL_INT* j,
                             const MKL_INT* rows, const MKL_INT* cols,
                             const float* a, const MKL_INT* lda,
                             MKL_INT* info );
void __stdcall mkl_stppack( const char* uplo, int uplo_len, const char* trans,
                            int trans_len, const MKL_INT* n, float* ap,
                            const MKL_INT* i, const MKL_INT* j,
                            const MKL_INT* rows, const MKL_INT* cols,
                            const float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_stppack_( const char* uplo, int uplo_len, const char* trans,
                             int trans_len, const MKL_INT* n, float* ap,
                             const MKL_INT* i, const MKL_INT* j,
                             const MKL_INT* rows, const MKL_INT* cols,
                             const float* a, const MKL_INT* lda,
                             MKL_INT* info );

void __stdcall MKL_ZTPPACK( const char* uplo, int uplo_len, const char* trans,
                            int trans_len, const MKL_INT* n, MKL_Complex16* ap,
                            const MKL_INT* i, const MKL_INT* j,
                            const MKL_INT* rows, const MKL_INT* cols,
                            const MKL_Complex16* a, const MKL_INT* lda,
                            MKL_INT* info );
void __stdcall MKL_ZTPPACK_( const char* uplo, int uplo_len, const char* trans,
                             int trans_len, const MKL_INT* n,
                             MKL_Complex16* ap, const MKL_INT* i,
                             const MKL_INT* j, const MKL_INT* rows,
                             const MKL_INT* cols, const MKL_Complex16* a,
                             const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_ztppack( const char* uplo, int uplo_len, const char* trans,
                            int trans_len, const MKL_INT* n, MKL_Complex16* ap,
                            const MKL_INT* i, const MKL_INT* j,
                            const MKL_INT* rows, const MKL_INT* cols,
                            const MKL_Complex16* a, const MKL_INT* lda,
                            MKL_INT* info );
void __stdcall mkl_ztppack_( const char* uplo, int uplo_len, const char* trans,
                             int trans_len, const MKL_INT* n,
                             MKL_Complex16* ap, const MKL_INT* i,
                             const MKL_INT* j, const MKL_INT* rows,
                             const MKL_INT* cols, const MKL_Complex16* a,
                             const MKL_INT* lda, MKL_INT* info );

void __stdcall MKL_CTPUNPACK( const char* uplo, int uplo_len,
                              const char* trans, int trans_len,
                              const MKL_INT* n, const MKL_Complex8* ap,
                              const MKL_INT* i, const MKL_INT* j,
                              const MKL_INT* rows, const MKL_INT* cols,
                              MKL_Complex8* a, const MKL_INT* lda,
                              MKL_INT* info );
void __stdcall MKL_CTPUNPACK_( const char* uplo, int uplo_len,
                               const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_Complex8* ap,
                               const MKL_INT* i, const MKL_INT* j,
                               const MKL_INT* rows, const MKL_INT* cols,
                               MKL_Complex8* a, const MKL_INT* lda,
                               MKL_INT* info );
void __stdcall mkl_ctpunpack( const char* uplo, int uplo_len,
                              const char* trans, int trans_len,
                              const MKL_INT* n, const MKL_Complex8* ap,
                              const MKL_INT* i, const MKL_INT* j,
                              const MKL_INT* rows, const MKL_INT* cols,
                              MKL_Complex8* a, const MKL_INT* lda,
                              MKL_INT* info );
void __stdcall mkl_ctpunpack_( const char* uplo, int uplo_len,
                               const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_Complex8* ap,
                               const MKL_INT* i, const MKL_INT* j,
                               const MKL_INT* rows, const MKL_INT* cols,
                               MKL_Complex8* a, const MKL_INT* lda,
                               MKL_INT* info );

void __stdcall MKL_DTPUNPACK( const char* uplo, int uplo_len,
                              const char* trans, int trans_len,
                              const MKL_INT* n, const double* ap,
                              const MKL_INT* i, const MKL_INT* j,
                              const MKL_INT* rows, const MKL_INT* cols,
                              double* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall MKL_DTPUNPACK_( const char* uplo, int uplo_len,
                               const char* trans, int trans_len,
                               const MKL_INT* n, const double* ap,
                               const MKL_INT* i, const MKL_INT* j,
                               const MKL_INT* rows, const MKL_INT* cols,
                               double* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_dtpunpack( const char* uplo, int uplo_len,
                              const char* trans, int trans_len,
                              const MKL_INT* n, const double* ap,
                              const MKL_INT* i, const MKL_INT* j,
                              const MKL_INT* rows, const MKL_INT* cols,
                              double* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_dtpunpack_( const char* uplo, int uplo_len,
                               const char* trans, int trans_len,
                               const MKL_INT* n, const double* ap,
                               const MKL_INT* i, const MKL_INT* j,
                               const MKL_INT* rows, const MKL_INT* cols,
                               double* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall MKL_STPUNPACK( const char* uplo, int uplo_len,
                              const char* trans, int trans_len,
                              const MKL_INT* n, const float* ap,
                              const MKL_INT* i, const MKL_INT* j,
                              const MKL_INT* rows, const MKL_INT* cols,
                              float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall MKL_STPUNPACK_( const char* uplo, int uplo_len,
                               const char* trans, int trans_len,
                               const MKL_INT* n, const float* ap,
                               const MKL_INT* i, const MKL_INT* j,
                               const MKL_INT* rows, const MKL_INT* cols,
                               float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_stpunpack( const char* uplo, int uplo_len,
                              const char* trans, int trans_len,
                              const MKL_INT* n, const float* ap,
                              const MKL_INT* i, const MKL_INT* j,
                              const MKL_INT* rows, const MKL_INT* cols,
                              float* a, const MKL_INT* lda, MKL_INT* info );
void __stdcall mkl_stpunpack_( const char* uplo, int uplo_len,
                               const char* trans, int trans_len,
                               const MKL_INT* n, const float* ap,
                               const MKL_INT* i, const MKL_INT* j,
                               const MKL_INT* rows, const MKL_INT* cols,
                               float* a, const MKL_INT* lda, MKL_INT* info );

void __stdcall MKL_ZTPUNPACK( const char* uplo, int uplo_len,
                              const char* trans, int trans_len,
                              const MKL_INT* n, const MKL_Complex16* ap,
                              const MKL_INT* i, const MKL_INT* j,
                              const MKL_INT* rows, const MKL_INT* cols,
                              MKL_Complex16* a, const MKL_INT* lda,
                              MKL_INT* info );
void __stdcall MKL_ZTPUNPACK_( const char* uplo, int uplo_len,
                               const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_Complex16* ap,
                               const MKL_INT* i, const MKL_INT* j,
                               const MKL_INT* rows, const MKL_INT* cols,
                               MKL_Complex16* a, const MKL_INT* lda,
                               MKL_INT* info );
void __stdcall mkl_ztpunpack( const char* uplo, int uplo_len,
                              const char* trans, int trans_len,
                              const MKL_INT* n, const MKL_Complex16* ap,
                              const MKL_INT* i, const MKL_INT* j,
                              const MKL_INT* rows, const MKL_INT* cols,
                              MKL_Complex16* a, const MKL_INT* lda,
                              MKL_INT* info );
void __stdcall mkl_ztpunpack_( const char* uplo, int uplo_len,
                               const char* trans, int trans_len,
                               const MKL_INT* n, const MKL_Complex16* ap,
                               const MKL_INT* i, const MKL_INT* j,
                               const MKL_INT* rows, const MKL_INT* cols,
                               MKL_Complex16* a, const MKL_INT* lda,
                               MKL_INT* info );

/* LAPACK MATGEN routines */
void __stdcall DLATM1( const MKL_INT* mode, const double* cond,
                       const MKL_INT* irsign, const MKL_INT* idist,
                       MKL_INT* iseed, double* d, const MKL_INT* n,
                       MKL_INT* info );
void __stdcall DLATM1_( const MKL_INT* mode, const double* cond,
                        const MKL_INT* irsign, const MKL_INT* idist,
                        MKL_INT* iseed, double* d, const MKL_INT* n,
                        MKL_INT* info );
void __stdcall dlatm1( const MKL_INT* mode, const double* cond,
                       const MKL_INT* irsign, const MKL_INT* idist,
                       MKL_INT* iseed, double* d, const MKL_INT* n,
                       MKL_INT* info );
void __stdcall dlatm1_( const MKL_INT* mode, const double* cond,
                        const MKL_INT* irsign, const MKL_INT* idist,
                        MKL_INT* iseed, double* d, const MKL_INT* n,
                        MKL_INT* info );

void __stdcall SLATM1( const MKL_INT* mode, const float* cond,
                       const MKL_INT* irsign, const MKL_INT* idist,
                       MKL_INT* iseed, float* d, const MKL_INT* n,
                       MKL_INT* info );
void __stdcall SLATM1_( const MKL_INT* mode, const float* cond,
                        const MKL_INT* irsign, const MKL_INT* idist,
                        MKL_INT* iseed, float* d, const MKL_INT* n,
                        MKL_INT* info );
void __stdcall slatm1( const MKL_INT* mode, const float* cond,
                       const MKL_INT* irsign, const MKL_INT* idist,
                       MKL_INT* iseed, float* d, const MKL_INT* n,
                       MKL_INT* info );
void __stdcall slatm1_( const MKL_INT* mode, const float* cond,
                        const MKL_INT* irsign, const MKL_INT* idist,
                        MKL_INT* iseed, float* d, const MKL_INT* n,
                        MKL_INT* info );

void __stdcall CLATM1( const MKL_INT* mode, const float* cond,
                       const MKL_INT* irsign, const MKL_INT* idist,
                       MKL_INT* iseed, MKL_Complex8* d, const MKL_INT* n,
                       MKL_INT* info );
void __stdcall CLATM1_( const MKL_INT* mode, const float* cond,
                        const MKL_INT* irsign, const MKL_INT* idist,
                        MKL_INT* iseed, MKL_Complex8* d, const MKL_INT* n,
                        MKL_INT* info );
void __stdcall clatm1( const MKL_INT* mode, const float* cond,
                       const MKL_INT* irsign, const MKL_INT* idist,
                       MKL_INT* iseed, MKL_Complex8* d, const MKL_INT* n,
                       MKL_INT* info );
void __stdcall clatm1_( const MKL_INT* mode, const float* cond,
                        const MKL_INT* irsign, const MKL_INT* idist,
                        MKL_INT* iseed, MKL_Complex8* d, const MKL_INT* n,
                        MKL_INT* info );

void __stdcall ZLATM1( const MKL_INT* mode, const double* cond,
                       const MKL_INT* irsign, const MKL_INT* idist,
                       MKL_INT* iseed, MKL_Complex16* d, const MKL_INT* n,
                       MKL_INT* info );
void __stdcall ZLATM1_( const MKL_INT* mode, const double* cond,
                        const MKL_INT* irsign, const MKL_INT* idist,
                        MKL_INT* iseed, MKL_Complex16* d, const MKL_INT* n,
                        MKL_INT* info );
void __stdcall zlatm1( const MKL_INT* mode, const double* cond,
                       const MKL_INT* irsign, const MKL_INT* idist,
                       MKL_INT* iseed, MKL_Complex16* d, const MKL_INT* n,
                       MKL_INT* info );
void __stdcall zlatm1_( const MKL_INT* mode, const double* cond,
                        const MKL_INT* irsign, const MKL_INT* idist,
                        MKL_INT* iseed, MKL_Complex16* d, const MKL_INT* n,
                        MKL_INT* info );

double __stdcall DLATM2( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                         const MKL_INT* j, const MKL_INT* kl,
                         const MKL_INT* ku, const MKL_INT* idist,
                         MKL_INT* iseed, const double* d,
                         const MKL_INT* igrade, const double* dl,
                         const double* dr, const MKL_INT* ipvtng,
                         MKL_INT* iwork, const double* sparse );
double __stdcall DLATM2_( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                          const MKL_INT* j, const MKL_INT* kl,
                          const MKL_INT* ku, const MKL_INT* idist,
                          MKL_INT* iseed, const double* d,
                          const MKL_INT* igrade, const double* dl,
                          const double* dr, const MKL_INT* ipvtng,
                          MKL_INT* iwork, const double* sparse );
double __stdcall dlatm2( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                         const MKL_INT* j, const MKL_INT* kl,
                         const MKL_INT* ku, const MKL_INT* idist,
                         MKL_INT* iseed, const double* d,
                         const MKL_INT* igrade, const double* dl,
                         const double* dr, const MKL_INT* ipvtng,
                         MKL_INT* iwork, const double* sparse );
double __stdcall dlatm2_( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                          const MKL_INT* j, const MKL_INT* kl,
                          const MKL_INT* ku, const MKL_INT* idist,
                          MKL_INT* iseed, const double* d,
                          const MKL_INT* igrade, const double* dl,
                          const double* dr, const MKL_INT* ipvtng,
                          MKL_INT* iwork, const double* sparse );

float __stdcall SLATM2( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                        const MKL_INT* j, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* idist,
                        MKL_INT* iseed, const float* d,
                        const MKL_INT* igrade, const float* dl,
                        const float* dr, const MKL_INT* ipvtng,
                        MKL_INT* iwork, const float* sparse );
float __stdcall SLATM2_( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                         const MKL_INT* j, const MKL_INT* kl,
                         const MKL_INT* ku, const MKL_INT* idist,
                         MKL_INT* iseed, const float* d,
                         const MKL_INT* igrade, const float* dl,
                         const float* dr, const MKL_INT* ipvtng,
                         MKL_INT* iwork, const float* sparse );
float __stdcall slatm2( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                        const MKL_INT* j, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* idist,
                        MKL_INT* iseed, const float* d,
                        const MKL_INT* igrade, const float* dl,
                        const float* dr, const MKL_INT* ipvtng,
                        MKL_INT* iwork, const float* sparse );
float __stdcall slatm2_( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                         const MKL_INT* j, const MKL_INT* kl,
                         const MKL_INT* ku, const MKL_INT* idist,
                         MKL_INT* iseed, const float* d,
                         const MKL_INT* igrade, const float* dl,
                         const float* dr, const MKL_INT* ipvtng,
                         MKL_INT* iwork, const float* sparse );

void __stdcall CLATM2( MKL_Complex8* retval, const MKL_INT* m,
                       const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const MKL_INT* idist, MKL_INT* iseed,
                       const MKL_Complex8* d, const MKL_INT* igrade,
                       const MKL_Complex8* dl, const MKL_Complex8* dr,
                       const MKL_INT* ipvtng, MKL_INT* iwork,
                       const float* sparse );
void __stdcall CLATM2_( MKL_Complex8* retval, const MKL_INT* m,
                        const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const MKL_INT* idist, MKL_INT* iseed,
                        const MKL_Complex8* d, const MKL_INT* igrade,
                        const MKL_Complex8* dl, const MKL_Complex8* dr,
                        const MKL_INT* ipvtng, MKL_INT* iwork,
                        const float* sparse );
void __stdcall clatm2( MKL_Complex8* retval, const MKL_INT* m,
                       const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const MKL_INT* idist, MKL_INT* iseed,
                       const MKL_Complex8* d, const MKL_INT* igrade,
                       const MKL_Complex8* dl, const MKL_Complex8* dr,
                       const MKL_INT* ipvtng, MKL_INT* iwork,
                       const float* sparse );
void __stdcall clatm2_( MKL_Complex8* retval, const MKL_INT* m,
                        const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const MKL_INT* idist, MKL_INT* iseed,
                        const MKL_Complex8* d, const MKL_INT* igrade,
                        const MKL_Complex8* dl, const MKL_Complex8* dr,
                        const MKL_INT* ipvtng, MKL_INT* iwork,
                        const float* sparse );

void __stdcall ZLATM2( MKL_Complex16* retval, const MKL_INT* m,
                       const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const MKL_INT* idist, MKL_INT* iseed,
                       const MKL_Complex16* d, const MKL_INT* igrade,
                       const MKL_Complex16* dl, const MKL_Complex16* dr,
                       const MKL_INT* ipvtng, MKL_INT* iwork,
                       const double* sparse );
void __stdcall ZLATM2_( MKL_Complex16* retval, const MKL_INT* m,
                        const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const MKL_INT* idist, MKL_INT* iseed,
                        const MKL_Complex16* d, const MKL_INT* igrade,
                        const MKL_Complex16* dl, const MKL_Complex16* dr,
                        const MKL_INT* ipvtng, MKL_INT* iwork,
                        const double* sparse );
void __stdcall zlatm2( MKL_Complex16* retval, const MKL_INT* m,
                       const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const MKL_INT* idist, MKL_INT* iseed,
                       const MKL_Complex16* d, const MKL_INT* igrade,
                       const MKL_Complex16* dl, const MKL_Complex16* dr,
                       const MKL_INT* ipvtng, MKL_INT* iwork,
                       const double* sparse );
void __stdcall zlatm2_( MKL_Complex16* retval, const MKL_INT* m,
                        const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const MKL_INT* idist, MKL_INT* iseed,
                        const MKL_Complex16* d, const MKL_INT* igrade,
                        const MKL_Complex16* dl, const MKL_Complex16* dr,
                        const MKL_INT* ipvtng, MKL_INT* iwork,
                        const double* sparse );

double __stdcall DLATM3( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                         const MKL_INT* j, MKL_INT* isub, MKL_INT* jsub,
                         const MKL_INT* kl, const MKL_INT* ku,
                         const MKL_INT* idist, MKL_INT* iseed,
                         const double* d, const MKL_INT* igrade,
                         const double* dl, const double* dr,
                         const MKL_INT* ipvtng, const MKL_INT* iwork,
                         const double* sparse );
double __stdcall DLATM3_( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                          const MKL_INT* j, MKL_INT* isub, MKL_INT* jsub,
                          const MKL_INT* kl, const MKL_INT* ku,
                          const MKL_INT* idist, MKL_INT* iseed,
                          const double* d, const MKL_INT* igrade,
                          const double* dl, const double* dr,
                          const MKL_INT* ipvtng, const MKL_INT* iwork,
                          const double* sparse );
double __stdcall dlatm3( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                         const MKL_INT* j, MKL_INT* isub, MKL_INT* jsub,
                         const MKL_INT* kl, const MKL_INT* ku,
                         const MKL_INT* idist, MKL_INT* iseed,
                         const double* d, const MKL_INT* igrade,
                         const double* dl, const double* dr,
                         const MKL_INT* ipvtng, const MKL_INT* iwork,
                         const double* sparse );
double __stdcall dlatm3_( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                          const MKL_INT* j, MKL_INT* isub, MKL_INT* jsub,
                          const MKL_INT* kl, const MKL_INT* ku,
                          const MKL_INT* idist, MKL_INT* iseed,
                          const double* d, const MKL_INT* igrade,
                          const double* dl, const double* dr,
                          const MKL_INT* ipvtng, const MKL_INT* iwork,
                          const double* sparse );

float __stdcall SLATM3( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                        const MKL_INT* j, MKL_INT* isub, MKL_INT* jsub,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const MKL_INT* idist, MKL_INT* iseed, const float* d,
                        const MKL_INT* igrade, const float* dl,
                        const float* dr, const MKL_INT* ipvtng,
                        const MKL_INT* iwork, const float* sparse );
float __stdcall SLATM3_( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                         const MKL_INT* j, MKL_INT* isub, MKL_INT* jsub,
                         const MKL_INT* kl, const MKL_INT* ku,
                         const MKL_INT* idist, MKL_INT* iseed,
                         const float* d, const MKL_INT* igrade,
                         const float* dl, const float* dr,
                         const MKL_INT* ipvtng, const MKL_INT* iwork,
                         const float* sparse );
float __stdcall slatm3( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                        const MKL_INT* j, MKL_INT* isub, MKL_INT* jsub,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const MKL_INT* idist, MKL_INT* iseed, const float* d,
                        const MKL_INT* igrade, const float* dl,
                        const float* dr, const MKL_INT* ipvtng,
                        const MKL_INT* iwork, const float* sparse );
float __stdcall slatm3_( const MKL_INT* m, const MKL_INT* n, MKL_INT* ii,
                         const MKL_INT* j, MKL_INT* isub, MKL_INT* jsub,
                         const MKL_INT* kl, const MKL_INT* ku,
                         const MKL_INT* idist, MKL_INT* iseed,
                         const float* d, const MKL_INT* igrade,
                         const float* dl, const float* dr,
                         const MKL_INT* ipvtng, const MKL_INT* iwork,
                         const float* sparse );

void __stdcall CLATM3( MKL_Complex8* retval, const MKL_INT* m,
                       const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                       MKL_INT* isub, MKL_INT* jsub, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* idist,
                       MKL_INT* iseed, const MKL_Complex8* d,
                       const MKL_INT* igrade, const MKL_Complex8* dl,
                       const MKL_Complex8* dr, const MKL_INT* ipvtng,
                       const MKL_INT* iwork, const float* sparse );
void __stdcall CLATM3_( MKL_Complex8* retval, const MKL_INT* m,
                        const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                        MKL_INT* isub, MKL_INT* jsub, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* idist,
                        MKL_INT* iseed, const MKL_Complex8* d,
                        const MKL_INT* igrade, const MKL_Complex8* dl,
                        const MKL_Complex8* dr, const MKL_INT* ipvtng,
                        const MKL_INT* iwork, const float* sparse );
void __stdcall clatm3( MKL_Complex8* retval, const MKL_INT* m,
                       const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                       MKL_INT* isub, MKL_INT* jsub, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* idist,
                       MKL_INT* iseed, const MKL_Complex8* d,
                       const MKL_INT* igrade, const MKL_Complex8* dl,
                       const MKL_Complex8* dr, const MKL_INT* ipvtng,
                       const MKL_INT* iwork, const float* sparse );
void __stdcall clatm3_( MKL_Complex8* retval, const MKL_INT* m,
                        const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                        MKL_INT* isub, MKL_INT* jsub, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* idist,
                        MKL_INT* iseed, const MKL_Complex8* d,
                        const MKL_INT* igrade, const MKL_Complex8* dl,
                        const MKL_Complex8* dr, const MKL_INT* ipvtng,
                        const MKL_INT* iwork, const float* sparse );

void __stdcall ZLATM3( MKL_Complex16* retval, const MKL_INT* m,
                       const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                       MKL_INT* isub, MKL_INT* jsub, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* idist,
                       MKL_INT* iseed, const MKL_Complex16* d,
                       const MKL_INT* igrade, const MKL_Complex16* dl,
                       const MKL_Complex16* dr, const MKL_INT* ipvtng,
                       const MKL_INT* iwork, const double* sparse );
void __stdcall ZLATM3_( MKL_Complex16* retval, const MKL_INT* m,
                        const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                        MKL_INT* isub, MKL_INT* jsub, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* idist,
                        MKL_INT* iseed, const MKL_Complex16* d,
                        const MKL_INT* igrade, const MKL_Complex16* dl,
                        const MKL_Complex16* dr, const MKL_INT* ipvtng,
                        const MKL_INT* iwork, const double* sparse );
void __stdcall zlatm3( MKL_Complex16* retval, const MKL_INT* m,
                       const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                       MKL_INT* isub, MKL_INT* jsub, const MKL_INT* kl,
                       const MKL_INT* ku, const MKL_INT* idist,
                       MKL_INT* iseed, const MKL_Complex16* d,
                       const MKL_INT* igrade, const MKL_Complex16* dl,
                       const MKL_Complex16* dr, const MKL_INT* ipvtng,
                       const MKL_INT* iwork, const double* sparse );
void __stdcall zlatm3_( MKL_Complex16* retval, const MKL_INT* m,
                        const MKL_INT* n, MKL_INT* ii, const MKL_INT* j,
                        MKL_INT* isub, MKL_INT* jsub, const MKL_INT* kl,
                        const MKL_INT* ku, const MKL_INT* idist,
                        MKL_INT* iseed, const MKL_Complex16* d,
                        const MKL_INT* igrade, const MKL_Complex16* dl,
                        const MKL_Complex16* dr, const MKL_INT* ipvtng,
                        const MKL_INT* iwork, const double* sparse );

void __stdcall DLATM5( const MKL_INT* prtype, const MKL_INT* m,
                       const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb, double* c,
                       const MKL_INT* ldc, double* d, const MKL_INT* ldd,
                       double* e, const MKL_INT* lde, double* f,
                       const MKL_INT* ldf, double* r, const MKL_INT* ldr,
                       double* l, const MKL_INT* ldl, const double* alpha,
                       const MKL_INT* qblcka, const MKL_INT* qblckb );
void __stdcall DLATM5_( const MKL_INT* prtype, const MKL_INT* m,
                        const MKL_INT* n, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, double* c,
                        const MKL_INT* ldc, double* d, const MKL_INT* ldd,
                        double* e, const MKL_INT* lde, double* f,
                        const MKL_INT* ldf, double* r, const MKL_INT* ldr,
                        double* l, const MKL_INT* ldl, const double* alpha,
                        const MKL_INT* qblcka, const MKL_INT* qblckb );
void __stdcall dlatm5( const MKL_INT* prtype, const MKL_INT* m,
                       const MKL_INT* n, double* a, const MKL_INT* lda,
                       double* b, const MKL_INT* ldb, double* c,
                       const MKL_INT* ldc, double* d, const MKL_INT* ldd,
                       double* e, const MKL_INT* lde, double* f,
                       const MKL_INT* ldf, double* r, const MKL_INT* ldr,
                       double* l, const MKL_INT* ldl, const double* alpha,
                       const MKL_INT* qblcka, const MKL_INT* qblckb );
void __stdcall dlatm5_( const MKL_INT* prtype, const MKL_INT* m,
                        const MKL_INT* n, double* a, const MKL_INT* lda,
                        double* b, const MKL_INT* ldb, double* c,
                        const MKL_INT* ldc, double* d, const MKL_INT* ldd,
                        double* e, const MKL_INT* lde, double* f,
                        const MKL_INT* ldf, double* r, const MKL_INT* ldr,
                        double* l, const MKL_INT* ldl, const double* alpha,
                        const MKL_INT* qblcka, const MKL_INT* qblckb );

void __stdcall SLATM5( const MKL_INT* prtype, const MKL_INT* m,
                       const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, float* c,
                       const MKL_INT* ldc, float* d, const MKL_INT* ldd,
                       float* e, const MKL_INT* lde, float* f,
                       const MKL_INT* ldf, float* r, const MKL_INT* ldr,
                       float* l, const MKL_INT* ldl, const float* alpha,
                       const MKL_INT* qblcka, const MKL_INT* qblckb );
void __stdcall SLATM5_( const MKL_INT* prtype, const MKL_INT* m,
                        const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, float* c,
                        const MKL_INT* ldc, float* d, const MKL_INT* ldd,
                        float* e, const MKL_INT* lde, float* f,
                        const MKL_INT* ldf, float* r, const MKL_INT* ldr,
                        float* l, const MKL_INT* ldl, const float* alpha,
                        const MKL_INT* qblcka, const MKL_INT* qblckb );
void __stdcall slatm5( const MKL_INT* prtype, const MKL_INT* m,
                       const MKL_INT* n, float* a, const MKL_INT* lda,
                       float* b, const MKL_INT* ldb, float* c,
                       const MKL_INT* ldc, float* d, const MKL_INT* ldd,
                       float* e, const MKL_INT* lde, float* f,
                       const MKL_INT* ldf, float* r, const MKL_INT* ldr,
                       float* l, const MKL_INT* ldl, const float* alpha,
                       const MKL_INT* qblcka, const MKL_INT* qblckb );
void __stdcall slatm5_( const MKL_INT* prtype, const MKL_INT* m,
                        const MKL_INT* n, float* a, const MKL_INT* lda,
                        float* b, const MKL_INT* ldb, float* c,
                        const MKL_INT* ldc, float* d, const MKL_INT* ldd,
                        float* e, const MKL_INT* lde, float* f,
                        const MKL_INT* ldf, float* r, const MKL_INT* ldr,
                        float* l, const MKL_INT* ldl, const float* alpha,
                        const MKL_INT* qblcka, const MKL_INT* qblckb );

void __stdcall CLATM5( const MKL_INT* prtype, const MKL_INT* m,
                       const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* d,
                       const MKL_INT* ldd, MKL_Complex8* e,
                       const MKL_INT* lde, MKL_Complex8* f,
                       const MKL_INT* ldf, MKL_Complex8* r,
                       const MKL_INT* ldr, MKL_Complex8* l,
                       const MKL_INT* ldl, const float* alpha,
                       const MKL_INT* qblcka, const MKL_INT* qblckb );
void __stdcall CLATM5_( const MKL_INT* prtype, const MKL_INT* m,
                        const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* d,
                        const MKL_INT* ldd, MKL_Complex8* e,
                        const MKL_INT* lde, MKL_Complex8* f,
                        const MKL_INT* ldf, MKL_Complex8* r,
                        const MKL_INT* ldr, MKL_Complex8* l,
                        const MKL_INT* ldl, const float* alpha,
                        const MKL_INT* qblcka, const MKL_INT* qblckb );
void __stdcall clatm5( const MKL_INT* prtype, const MKL_INT* m,
                       const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* b,
                       const MKL_INT* ldb, MKL_Complex8* c,
                       const MKL_INT* ldc, MKL_Complex8* d,
                       const MKL_INT* ldd, MKL_Complex8* e,
                       const MKL_INT* lde, MKL_Complex8* f,
                       const MKL_INT* ldf, MKL_Complex8* r,
                       const MKL_INT* ldr, MKL_Complex8* l,
                       const MKL_INT* ldl, const float* alpha,
                       const MKL_INT* qblcka, const MKL_INT* qblckb );
void __stdcall clatm5_( const MKL_INT* prtype, const MKL_INT* m,
                        const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* b,
                        const MKL_INT* ldb, MKL_Complex8* c,
                        const MKL_INT* ldc, MKL_Complex8* d,
                        const MKL_INT* ldd, MKL_Complex8* e,
                        const MKL_INT* lde, MKL_Complex8* f,
                        const MKL_INT* ldf, MKL_Complex8* r,
                        const MKL_INT* ldr, MKL_Complex8* l,
                        const MKL_INT* ldl, const float* alpha,
                        const MKL_INT* qblcka, const MKL_INT* qblckb );

void __stdcall ZLATM5( const MKL_INT* prtype, const MKL_INT* m,
                       const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* d,
                       const MKL_INT* ldd, MKL_Complex16* e,
                       const MKL_INT* lde, MKL_Complex16* f,
                       const MKL_INT* ldf, MKL_Complex16* r,
                       const MKL_INT* ldr, MKL_Complex16* l,
                       const MKL_INT* ldl, const double* alpha,
                       const MKL_INT* qblcka, const MKL_INT* qblckb );
void __stdcall ZLATM5_( const MKL_INT* prtype, const MKL_INT* m,
                        const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* d,
                        const MKL_INT* ldd, MKL_Complex16* e,
                        const MKL_INT* lde, MKL_Complex16* f,
                        const MKL_INT* ldf, MKL_Complex16* r,
                        const MKL_INT* ldr, MKL_Complex16* l,
                        const MKL_INT* ldl, const double* alpha,
                        const MKL_INT* qblcka, const MKL_INT* qblckb );
void __stdcall zlatm5( const MKL_INT* prtype, const MKL_INT* m,
                       const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* b,
                       const MKL_INT* ldb, MKL_Complex16* c,
                       const MKL_INT* ldc, MKL_Complex16* d,
                       const MKL_INT* ldd, MKL_Complex16* e,
                       const MKL_INT* lde, MKL_Complex16* f,
                       const MKL_INT* ldf, MKL_Complex16* r,
                       const MKL_INT* ldr, MKL_Complex16* l,
                       const MKL_INT* ldl, const double* alpha,
                       const MKL_INT* qblcka, const MKL_INT* qblckb );
void __stdcall zlatm5_( const MKL_INT* prtype, const MKL_INT* m,
                        const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* b,
                        const MKL_INT* ldb, MKL_Complex16* c,
                        const MKL_INT* ldc, MKL_Complex16* d,
                        const MKL_INT* ldd, MKL_Complex16* e,
                        const MKL_INT* lde, MKL_Complex16* f,
                        const MKL_INT* ldf, MKL_Complex16* r,
                        const MKL_INT* ldr, MKL_Complex16* l,
                        const MKL_INT* ldl, const double* alpha,
                        const MKL_INT* qblcka, const MKL_INT* qblckb );

void __stdcall DLATM6( const MKL_INT* type, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, double* x,
                       const MKL_INT* ldx, double* y, const MKL_INT* ldy,
                       const double* alpha, const double* beta,
                       const double* wx, const double* wy, double* s,
                       double* dif );
void __stdcall DLATM6_( const MKL_INT* type, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* b, double* x,
                        const MKL_INT* ldx, double* y, const MKL_INT* ldy,
                        const double* alpha, const double* beta,
                        const double* wx, const double* wy, double* s,
                        double* dif );
void __stdcall dlatm6( const MKL_INT* type, const MKL_INT* n, double* a,
                       const MKL_INT* lda, double* b, double* x,
                       const MKL_INT* ldx, double* y, const MKL_INT* ldy,
                       const double* alpha, const double* beta,
                       const double* wx, const double* wy, double* s,
                       double* dif );
void __stdcall dlatm6_( const MKL_INT* type, const MKL_INT* n, double* a,
                        const MKL_INT* lda, double* b, double* x,
                        const MKL_INT* ldx, double* y, const MKL_INT* ldy,
                        const double* alpha, const double* beta,
                        const double* wx, const double* wy, double* s,
                        double* dif );

void __stdcall SLATM6( const MKL_INT* type, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* b, float* x,
                       const MKL_INT* ldx, float* y, const MKL_INT* ldy,
                       const float* alpha, const float* beta, const float* wx,
                       const float* wy, float* s, float* dif );
void __stdcall SLATM6_( const MKL_INT* type, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* b, float* x,
                        const MKL_INT* ldx, float* y, const MKL_INT* ldy,
                        const float* alpha, const float* beta, const float* wx,
                        const float* wy, float* s, float* dif );
void __stdcall slatm6( const MKL_INT* type, const MKL_INT* n, float* a,
                       const MKL_INT* lda, float* b, float* x,
                       const MKL_INT* ldx, float* y, const MKL_INT* ldy,
                       const float* alpha, const float* beta, const float* wx,
                       const float* wy, float* s, float* dif );
void __stdcall slatm6_( const MKL_INT* type, const MKL_INT* n, float* a,
                        const MKL_INT* lda, float* b, float* x,
                        const MKL_INT* ldx, float* y, const MKL_INT* ldy,
                        const float* alpha, const float* beta, const float* wx,
                        const float* wy, float* s, float* dif );

void __stdcall CLATM6( const MKL_INT* type, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       MKL_Complex8* x, const MKL_INT* ldx, MKL_Complex8* y,
                       const MKL_INT* ldy, const MKL_Complex8* alpha,
                       const MKL_Complex8* beta, const MKL_Complex8* wx,
                       const MKL_Complex8* wy, float* s, float* dif );
void __stdcall CLATM6_( const MKL_INT* type, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* b, MKL_Complex8* x,
                        const MKL_INT* ldx, MKL_Complex8* y,
                        const MKL_INT* ldy, const MKL_Complex8* alpha,
                        const MKL_Complex8* beta, const MKL_Complex8* wx,
                        const MKL_Complex8* wy, float* s, float* dif );
void __stdcall clatm6( const MKL_INT* type, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_Complex8* b,
                       MKL_Complex8* x, const MKL_INT* ldx, MKL_Complex8* y,
                       const MKL_INT* ldy, const MKL_Complex8* alpha,
                       const MKL_Complex8* beta, const MKL_Complex8* wx,
                       const MKL_Complex8* wy, float* s, float* dif );
void __stdcall clatm6_( const MKL_INT* type, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* b, MKL_Complex8* x,
                        const MKL_INT* ldx, MKL_Complex8* y,
                        const MKL_INT* ldy, const MKL_Complex8* alpha,
                        const MKL_Complex8* beta, const MKL_Complex8* wx,
                        const MKL_Complex8* wy, float* s, float* dif );

void __stdcall ZLATM6( const MKL_INT* type, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, MKL_Complex16* x,
                       const MKL_INT* ldx, MKL_Complex16* y,
                       const MKL_INT* ldy, const MKL_Complex16* alpha,
                       const MKL_Complex16* beta, const MKL_Complex16* wx,
                       const MKL_Complex16* wy, double* s, double* dif );
void __stdcall ZLATM6_( const MKL_INT* type, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, MKL_Complex16* x,
                        const MKL_INT* ldx, MKL_Complex16* y,
                        const MKL_INT* ldy, const MKL_Complex16* alpha,
                        const MKL_Complex16* beta, const MKL_Complex16* wx,
                        const MKL_Complex16* wy, double* s, double* dif );
void __stdcall zlatm6( const MKL_INT* type, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* b, MKL_Complex16* x,
                       const MKL_INT* ldx, MKL_Complex16* y,
                       const MKL_INT* ldy, const MKL_Complex16* alpha,
                       const MKL_Complex16* beta, const MKL_Complex16* wx,
                       const MKL_Complex16* wy, double* s, double* dif );
void __stdcall zlatm6_( const MKL_INT* type, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* b, MKL_Complex16* x,
                        const MKL_INT* ldx, MKL_Complex16* y,
                        const MKL_INT* ldy, const MKL_Complex16* alpha,
                        const MKL_Complex16* beta, const MKL_Complex16* wx,
                        const MKL_Complex16* wy, double* s, double* dif );

void __stdcall DLATME( const MKL_INT* n, const char* dist, int dist_len,
                       MKL_INT* iseed, double* d, const MKL_INT* mode,
                       const double* cond, const double* dmax, const char* ei,
                       int ei_len, const char* rsign, int rsign_len,
                       const char* upper, int upper_len, const char* sim,
                       int sim_len, double* ds, const MKL_INT* modes,
                       const double* conds, const MKL_INT* kl,
                       const MKL_INT* ku, const double* anorm, double* a,
                       const MKL_INT* lda, double* work, MKL_INT* info );
void __stdcall DLATME_( const MKL_INT* n, const char* dist, int dist_len,
                        MKL_INT* iseed, double* d, const MKL_INT* mode,
                        const double* cond, const double* dmax, const char* ei,
                        int ei_len, const char* rsign, int rsign_len,
                        const char* upper, int upper_len, const char* sim,
                        int sim_len, double* ds, const MKL_INT* modes,
                        const double* conds, const MKL_INT* kl,
                        const MKL_INT* ku, const double* anorm, double* a,
                        const MKL_INT* lda, double* work, MKL_INT* info );
void __stdcall dlatme( const MKL_INT* n, const char* dist, int dist_len,
                       MKL_INT* iseed, double* d, const MKL_INT* mode,
                       const double* cond, const double* dmax, const char* ei,
                       int ei_len, const char* rsign, int rsign_len,
                       const char* upper, int upper_len, const char* sim,
                       int sim_len, double* ds, const MKL_INT* modes,
                       const double* conds, const MKL_INT* kl,
                       const MKL_INT* ku, const double* anorm, double* a,
                       const MKL_INT* lda, double* work, MKL_INT* info );
void __stdcall dlatme_( const MKL_INT* n, const char* dist, int dist_len,
                        MKL_INT* iseed, double* d, const MKL_INT* mode,
                        const double* cond, const double* dmax, const char* ei,
                        int ei_len, const char* rsign, int rsign_len,
                        const char* upper, int upper_len, const char* sim,
                        int sim_len, double* ds, const MKL_INT* modes,
                        const double* conds, const MKL_INT* kl,
                        const MKL_INT* ku, const double* anorm, double* a,
                        const MKL_INT* lda, double* work, MKL_INT* info );

void __stdcall SLATME( const MKL_INT* n, const char* dist, int dist_len,
                       MKL_INT* iseed, float* d, const MKL_INT* mode,
                       const float* cond, const float* dmax, const char* ei,
                       int ei_len, const char* rsign, int rsign_len,
                       const char* upper, int upper_len, const char* sim,
                       int sim_len, float* ds, const MKL_INT* modes,
                       const float* conds, const MKL_INT* kl,
                       const MKL_INT* ku, const float* anorm, float* a,
                       const MKL_INT* lda, float* work, MKL_INT* info );
void __stdcall SLATME_( const MKL_INT* n, const char* dist, int dist_len,
                        MKL_INT* iseed, float* d, const MKL_INT* mode,
                        const float* cond, const float* dmax, const char* ei,
                        int ei_len, const char* rsign, int rsign_len,
                        const char* upper, int upper_len, const char* sim,
                        int sim_len, float* ds, const MKL_INT* modes,
                        const float* conds, const MKL_INT* kl,
                        const MKL_INT* ku, const float* anorm, float* a,
                        const MKL_INT* lda, float* work, MKL_INT* info );
void __stdcall slatme( const MKL_INT* n, const char* dist, int dist_len,
                       MKL_INT* iseed, float* d, const MKL_INT* mode,
                       const float* cond, const float* dmax, const char* ei,
                       int ei_len, const char* rsign, int rsign_len,
                       const char* upper, int upper_len, const char* sim,
                       int sim_len, float* ds, const MKL_INT* modes,
                       const float* conds, const MKL_INT* kl,
                       const MKL_INT* ku, const float* anorm, float* a,
                       const MKL_INT* lda, float* work, MKL_INT* info );
void __stdcall slatme_( const MKL_INT* n, const char* dist, int dist_len,
                        MKL_INT* iseed, float* d, const MKL_INT* mode,
                        const float* cond, const float* dmax, const char* ei,
                        int ei_len, const char* rsign, int rsign_len,
                        const char* upper, int upper_len, const char* sim,
                        int sim_len, float* ds, const MKL_INT* modes,
                        const float* conds, const MKL_INT* kl,
                        const MKL_INT* ku, const float* anorm, float* a,
                        const MKL_INT* lda, float* work, MKL_INT* info );

void __stdcall CLATME( const MKL_INT* n, const char* dist, int dist_len,
                       MKL_INT* iseed, MKL_Complex8* d, const MKL_INT* mode,
                       const float* cond, const MKL_Complex8* dmax,
                       const char* rsign, int rsign_len, const char* upper,
                       int upper_len, const char* sim, int sim_len, float* ds,
                       const MKL_INT* modes, const float* conds,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const float* anorm, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall CLATME_( const MKL_INT* n, const char* dist, int dist_len,
                        MKL_INT* iseed, MKL_Complex8* d,
                        const MKL_INT* mode, const float* cond,
                        const MKL_Complex8* dmax, const char* rsign,
                        int rsign_len, const char* upper, int upper_len,
                        const char* sim, int sim_len, float* ds,
                        const MKL_INT* modes, const float* conds,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const float* anorm, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* work,
                        MKL_INT* info );
void __stdcall clatme( const MKL_INT* n, const char* dist, int dist_len,
                       MKL_INT* iseed, MKL_Complex8* d, const MKL_INT* mode,
                       const float* cond, const MKL_Complex8* dmax,
                       const char* rsign, int rsign_len, const char* upper,
                       int upper_len, const char* sim, int sim_len, float* ds,
                       const MKL_INT* modes, const float* conds,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const float* anorm, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall clatme_( const MKL_INT* n, const char* dist, int dist_len,
                        MKL_INT* iseed, MKL_Complex8* d,
                        const MKL_INT* mode, const float* cond,
                        const MKL_Complex8* dmax, const char* rsign,
                        int rsign_len, const char* upper, int upper_len,
                        const char* sim, int sim_len, float* ds,
                        const MKL_INT* modes, const float* conds,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const float* anorm, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* work,
                        MKL_INT* info );

void __stdcall ZLATME( const MKL_INT* n, const char* dist, int dist_len,
                       MKL_INT* iseed, MKL_Complex16* d,
                       const MKL_INT* mode, const double* cond,
                       const MKL_Complex16* dmax, const char* rsign,
                       int rsign_len, const char* upper, int upper_len,
                       const char* sim, int sim_len, double* ds,
                       const MKL_INT* modes, const double* conds,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const double* anorm, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall ZLATME_( const MKL_INT* n, const char* dist, int dist_len,
                        MKL_INT* iseed, MKL_Complex16* d,
                        const MKL_INT* mode, const double* cond,
                        const MKL_Complex16* dmax, const char* rsign,
                        int rsign_len, const char* upper, int upper_len,
                        const char* sim, int sim_len, double* ds,
                        const MKL_INT* modes, const double* conds,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const double* anorm, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall zlatme( const MKL_INT* n, const char* dist, int dist_len,
                       MKL_INT* iseed, MKL_Complex16* d,
                       const MKL_INT* mode, const double* cond,
                       const MKL_Complex16* dmax, const char* rsign,
                       int rsign_len, const char* upper, int upper_len,
                       const char* sim, int sim_len, double* ds,
                       const MKL_INT* modes, const double* conds,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const double* anorm, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall zlatme_( const MKL_INT* n, const char* dist, int dist_len,
                        MKL_INT* iseed, MKL_Complex16* d,
                        const MKL_INT* mode, const double* cond,
                        const MKL_Complex16* dmax, const char* rsign,
                        int rsign_len, const char* upper, int upper_len,
                        const char* sim, int sim_len, double* ds,
                        const MKL_INT* modes, const double* conds,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const double* anorm, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* work,
                        MKL_INT* info );

void __stdcall DLATMR( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, double* d, const MKL_INT* mode,
                       const double* cond, const double* dmax,
                       const char* rsign, int rsign_len, const char* grade,
                       int grade_len, double* dl, const MKL_INT* model,
                       const double* condl, double* dr, const MKL_INT* moder,
                       const double* condr, const char* pivtng, int pivtng_len,
                       const MKL_INT* ipivot, const MKL_INT* kl,
                       const MKL_INT* ku, const double* sparse,
                       const double* anorm, const char* pack, int pack_len,
                       double* a, const MKL_INT* lda, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall DLATMR_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, double* d, const MKL_INT* mode,
                        const double* cond, const double* dmax,
                        const char* rsign, int rsign_len, const char* grade,
                        int grade_len, double* dl, const MKL_INT* model,
                        const double* condl, double* dr, const MKL_INT* moder,
                        const double* condr, const char* pivtng,
                        int pivtng_len, const MKL_INT* ipivot,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const double* sparse, const double* anorm,
                        const char* pack, int pack_len, double* a,
                        const MKL_INT* lda, MKL_INT* iwork, MKL_INT* info );
void __stdcall dlatmr( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, double* d, const MKL_INT* mode,
                       const double* cond, const double* dmax,
                       const char* rsign, int rsign_len, const char* grade,
                       int grade_len, double* dl, const MKL_INT* model,
                       const double* condl, double* dr, const MKL_INT* moder,
                       const double* condr, const char* pivtng, int pivtng_len,
                       const MKL_INT* ipivot, const MKL_INT* kl,
                       const MKL_INT* ku, const double* sparse,
                       const double* anorm, const char* pack, int pack_len,
                       double* a, const MKL_INT* lda, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall dlatmr_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, double* d, const MKL_INT* mode,
                        const double* cond, const double* dmax,
                        const char* rsign, int rsign_len, const char* grade,
                        int grade_len, double* dl, const MKL_INT* model,
                        const double* condl, double* dr, const MKL_INT* moder,
                        const double* condr, const char* pivtng,
                        int pivtng_len, const MKL_INT* ipivot,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const double* sparse, const double* anorm,
                        const char* pack, int pack_len, double* a,
                        const MKL_INT* lda, MKL_INT* iwork, MKL_INT* info );

void __stdcall SLATMR( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, const float* d, const MKL_INT* mode,
                       const float* cond, const float* dmax, const char* rsign,
                       int rsign_len, const char* grade, int grade_len,
                       float* dl, const MKL_INT* model, const float* condl,
                       float* dr, const MKL_INT* moder, const float* condr,
                       const char* pivtng, int pivtng_len,
                       const MKL_INT* ipivot, const MKL_INT* kl,
                       const MKL_INT* ku, const float* sparse,
                       const float* anorm, const char* pack, int pack_len,
                       float* a, const MKL_INT* lda, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall SLATMR_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, const float* d, const MKL_INT* mode,
                        const float* cond, const float* dmax,
                        const char* rsign, int rsign_len, const char* grade,
                        int grade_len, float* dl, const MKL_INT* model,
                        const float* condl, float* dr, const MKL_INT* moder,
                        const float* condr, const char* pivtng, int pivtng_len,
                        const MKL_INT* ipivot, const MKL_INT* kl,
                        const MKL_INT* ku, const float* sparse,
                        const float* anorm, const char* pack, int pack_len,
                        float* a, const MKL_INT* lda, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall slatmr( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, const float* d, const MKL_INT* mode,
                       const float* cond, const float* dmax, const char* rsign,
                       int rsign_len, const char* grade, int grade_len,
                       float* dl, const MKL_INT* model, const float* condl,
                       float* dr, const MKL_INT* moder, const float* condr,
                       const char* pivtng, int pivtng_len,
                       const MKL_INT* ipivot, const MKL_INT* kl,
                       const MKL_INT* ku, const float* sparse,
                       const float* anorm, const char* pack, int pack_len,
                       float* a, const MKL_INT* lda, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall slatmr_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, const float* d, const MKL_INT* mode,
                        const float* cond, const float* dmax,
                        const char* rsign, int rsign_len, const char* grade,
                        int grade_len, float* dl, const MKL_INT* model,
                        const float* condl, float* dr, const MKL_INT* moder,
                        const float* condr, const char* pivtng, int pivtng_len,
                        const MKL_INT* ipivot, const MKL_INT* kl,
                        const MKL_INT* ku, const float* sparse,
                        const float* anorm, const char* pack, int pack_len,
                        float* a, const MKL_INT* lda, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall CLATMR( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, MKL_Complex8* d, const MKL_INT* mode,
                       const float* cond, const MKL_Complex8* dmax,
                       const char* rsign, int rsign_len, const char* grade,
                       int grade_len, MKL_Complex8* dl, const MKL_INT* model,
                       const float* condl, MKL_Complex8* dr,
                       const MKL_INT* moder, const float* condr,
                       const char* pivtng, int pivtng_len,
                       const MKL_INT* ipivot, const MKL_INT* kl,
                       const MKL_INT* ku, const float* sparse,
                       const float* anorm, const char* pack, int pack_len,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall CLATMR_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, MKL_Complex8* d, const MKL_INT* mode,
                        const float* cond, const MKL_Complex8* dmax,
                        const char* rsign, int rsign_len, const char* grade,
                        int grade_len, MKL_Complex8* dl,
                        const MKL_INT* model, const float* condl,
                        MKL_Complex8* dr, const MKL_INT* moder,
                        const float* condr, const char* pivtng, int pivtng_len,
                        const MKL_INT* ipivot, const MKL_INT* kl,
                        const MKL_INT* ku, const float* sparse,
                        const float* anorm, const char* pack, int pack_len,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iwork,
                        MKL_INT* info );
void __stdcall clatmr( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, MKL_Complex8* d, const MKL_INT* mode,
                       const float* cond, const MKL_Complex8* dmax,
                       const char* rsign, int rsign_len, const char* grade,
                       int grade_len, MKL_Complex8* dl, const MKL_INT* model,
                       const float* condl, MKL_Complex8* dr,
                       const MKL_INT* moder, const float* condr,
                       const char* pivtng, int pivtng_len,
                       const MKL_INT* ipivot, const MKL_INT* kl,
                       const MKL_INT* ku, const float* sparse,
                       const float* anorm, const char* pack, int pack_len,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall clatmr_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, MKL_Complex8* d, const MKL_INT* mode,
                        const float* cond, const MKL_Complex8* dmax,
                        const char* rsign, int rsign_len, const char* grade,
                        int grade_len, MKL_Complex8* dl,
                        const MKL_INT* model, const float* condl,
                        MKL_Complex8* dr, const MKL_INT* moder,
                        const float* condr, const char* pivtng, int pivtng_len,
                        const MKL_INT* ipivot, const MKL_INT* kl,
                        const MKL_INT* ku, const float* sparse,
                        const float* anorm, const char* pack, int pack_len,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iwork,
                        MKL_INT* info );

void __stdcall ZLATMR( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, MKL_Complex16* d, const MKL_INT* mode,
                       const double* cond, const MKL_Complex16* dmax,
                       const char* rsign, int rsign_len, const char* grade,
                       int grade_len, MKL_Complex16* dl,
                       const MKL_INT* model, const double* condl,
                       MKL_Complex16* dr, const MKL_INT* moder,
                       const double* condr, const char* pivtng, int pivtng_len,
                       const MKL_INT* ipivot, const MKL_INT* kl,
                       const MKL_INT* ku, const double* sparse,
                       const double* anorm, const char* pack, int pack_len,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall ZLATMR_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, MKL_Complex16* d, const MKL_INT* mode,
                        const double* cond, const MKL_Complex16* dmax,
                        const char* rsign, int rsign_len, const char* grade,
                        int grade_len, MKL_Complex16* dl,
                        const MKL_INT* model, const double* condl,
                        MKL_Complex16* dr, const MKL_INT* moder,
                        const double* condr, const char* pivtng,
                        int pivtng_len, const MKL_INT* ipivot,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const double* sparse, const double* anorm,
                        const char* pack, int pack_len, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* iwork, MKL_INT* info );
void __stdcall zlatmr( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, MKL_Complex16* d, const MKL_INT* mode,
                       const double* cond, const MKL_Complex16* dmax,
                       const char* rsign, int rsign_len, const char* grade,
                       int grade_len, MKL_Complex16* dl,
                       const MKL_INT* model, const double* condl,
                       MKL_Complex16* dr, const MKL_INT* moder,
                       const double* condr, const char* pivtng, int pivtng_len,
                       const MKL_INT* ipivot, const MKL_INT* kl,
                       const MKL_INT* ku, const double* sparse,
                       const double* anorm, const char* pack, int pack_len,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iwork,
                       MKL_INT* info );
void __stdcall zlatmr_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, MKL_Complex16* d, const MKL_INT* mode,
                        const double* cond, const MKL_Complex16* dmax,
                        const char* rsign, int rsign_len, const char* grade,
                        int grade_len, MKL_Complex16* dl,
                        const MKL_INT* model, const double* condl,
                        MKL_Complex16* dr, const MKL_INT* moder,
                        const double* condr, const char* pivtng,
                        int pivtng_len, const MKL_INT* ipivot,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const double* sparse, const double* anorm,
                        const char* pack, int pack_len, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* iwork, MKL_INT* info );

void __stdcall DLATMS( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, double* d, const MKL_INT* mode,
                       const double* cond, const double* dmax,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const char* pack, int pack_len, double* a,
                       const MKL_INT* lda, double* work, MKL_INT* info );
void __stdcall DLATMS_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, double* d, const MKL_INT* mode,
                        const double* cond, const double* dmax,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const char* pack, int pack_len, double* a,
                        const MKL_INT* lda, double* work, MKL_INT* info );
void __stdcall dlatms( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, double* d, const MKL_INT* mode,
                       const double* cond, const double* dmax,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const char* pack, int pack_len, double* a,
                       const MKL_INT* lda, double* work, MKL_INT* info );
void __stdcall dlatms_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, double* d, const MKL_INT* mode,
                        const double* cond, const double* dmax,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const char* pack, int pack_len, double* a,
                        const MKL_INT* lda, double* work, MKL_INT* info );

void __stdcall SLATMS( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, float* d, const MKL_INT* mode,
                       const float* cond, const float* dmax,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const char* pack, int pack_len, float* a,
                       const MKL_INT* lda, float* work, MKL_INT* info );
void __stdcall SLATMS_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, float* d, const MKL_INT* mode,
                        const float* cond, const float* dmax,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const char* pack, int pack_len, float* a,
                        const MKL_INT* lda, float* work, MKL_INT* info );
void __stdcall slatms( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, float* d, const MKL_INT* mode,
                       const float* cond, const float* dmax,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const char* pack, int pack_len, float* a,
                       const MKL_INT* lda, float* work, MKL_INT* info );
void __stdcall slatms_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, float* d, const MKL_INT* mode,
                        const float* cond, const float* dmax,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const char* pack, int pack_len, float* a,
                        const MKL_INT* lda, float* work, MKL_INT* info );

void __stdcall CLATMS( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, float* d, const MKL_INT* mode,
                       const float* cond, const float* dmax,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const char* pack, int pack_len, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall CLATMS_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, float* d, const MKL_INT* mode,
                        const float* cond, const float* dmax,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const char* pack, int pack_len, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* work,
                        MKL_INT* info );
void __stdcall clatms( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, float* d, const MKL_INT* mode,
                       const float* cond, const float* dmax,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const char* pack, int pack_len, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_Complex8* work,
                       MKL_INT* info );
void __stdcall clatms_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, float* d, const MKL_INT* mode,
                        const float* cond, const float* dmax,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const char* pack, int pack_len, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_Complex8* work,
                        MKL_INT* info );

void __stdcall ZLATMS( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, double* d, const MKL_INT* mode,
                       const double* cond, const double* dmax,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const char* pack, int pack_len, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall ZLATMS_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, double* d, const MKL_INT* mode,
                        const double* cond, const double* dmax,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const char* pack, int pack_len, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* work,
                        MKL_INT* info );
void __stdcall zlatms( const MKL_INT* m, const MKL_INT* n, const char* dist,
                       int dist_len, MKL_INT* iseed, const char* sym,
                       int sym_len, double* d, const MKL_INT* mode,
                       const double* cond, const double* dmax,
                       const MKL_INT* kl, const MKL_INT* ku,
                       const char* pack, int pack_len, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_Complex16* work,
                       MKL_INT* info );
void __stdcall zlatms_( const MKL_INT* m, const MKL_INT* n, const char* dist,
                        int dist_len, MKL_INT* iseed, const char* sym,
                        int sym_len, double* d, const MKL_INT* mode,
                        const double* cond, const double* dmax,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const char* pack, int pack_len, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_Complex16* work,
                        MKL_INT* info );

void __stdcall DLAKF2( const MKL_INT* m, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const double* b, const double* d,
                       const double* e, double* z, const MKL_INT* ldz );
void __stdcall DLAKF2_( const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const double* b, const double* d,
                        const double* e, double* z, const MKL_INT* ldz );
void __stdcall dlakf2( const MKL_INT* m, const MKL_INT* n, const double* a,
                       const MKL_INT* lda, const double* b, const double* d,
                       const double* e, double* z, const MKL_INT* ldz );
void __stdcall dlakf2_( const MKL_INT* m, const MKL_INT* n, const double* a,
                        const MKL_INT* lda, const double* b, const double* d,
                        const double* e, double* z, const MKL_INT* ldz );

void __stdcall SLAKF2( const MKL_INT* m, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const float* b, const float* d,
                       const float* e, float* z, const MKL_INT* ldz );
void __stdcall SLAKF2_( const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const float* b, const float* d,
                        const float* e, float* z, const MKL_INT* ldz );
void __stdcall slakf2( const MKL_INT* m, const MKL_INT* n, const float* a,
                       const MKL_INT* lda, const float* b, const float* d,
                       const float* e, float* z, const MKL_INT* ldz );
void __stdcall slakf2_( const MKL_INT* m, const MKL_INT* n, const float* a,
                        const MKL_INT* lda, const float* b, const float* d,
                        const float* e, float* z, const MKL_INT* ldz );

void __stdcall CLAKF2( const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* b, const MKL_Complex8* d,
                       const MKL_Complex8* e, MKL_Complex8* z,
                       const MKL_INT* ldz );
void __stdcall CLAKF2_( const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* b, const MKL_Complex8* d,
                        const MKL_Complex8* e, MKL_Complex8* z,
                        const MKL_INT* ldz );
void __stdcall clakf2( const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex8* a, const MKL_INT* lda,
                       const MKL_Complex8* b, const MKL_Complex8* d,
                       const MKL_Complex8* e, MKL_Complex8* z,
                       const MKL_INT* ldz );
void __stdcall clakf2_( const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex8* a, const MKL_INT* lda,
                        const MKL_Complex8* b, const MKL_Complex8* d,
                        const MKL_Complex8* e, MKL_Complex8* z,
                        const MKL_INT* ldz );

void __stdcall ZLAKF2( const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* b, const MKL_Complex16* d,
                       const MKL_Complex16* e, MKL_Complex16* z,
                       const MKL_INT* ldz );
void __stdcall ZLAKF2_( const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* b, const MKL_Complex16* d,
                        const MKL_Complex16* e, MKL_Complex16* z,
                        const MKL_INT* ldz );
void __stdcall zlakf2( const MKL_INT* m, const MKL_INT* n,
                       const MKL_Complex16* a, const MKL_INT* lda,
                       const MKL_Complex16* b, const MKL_Complex16* d,
                       const MKL_Complex16* e, MKL_Complex16* z,
                       const MKL_INT* ldz );
void __stdcall zlakf2_( const MKL_INT* m, const MKL_INT* n,
                        const MKL_Complex16* a, const MKL_INT* lda,
                        const MKL_Complex16* b, const MKL_Complex16* d,
                        const MKL_Complex16* e, MKL_Complex16* z,
                        const MKL_INT* ldz );

void __stdcall DLARGE( const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* iseed, double* work, MKL_INT* info );
void __stdcall DLARGE_( const MKL_INT* n, double* a, const MKL_INT* lda,
                        MKL_INT* iseed, double* work, MKL_INT* info );
void __stdcall dlarge( const MKL_INT* n, double* a, const MKL_INT* lda,
                       MKL_INT* iseed, double* work, MKL_INT* info );
void __stdcall dlarge_( const MKL_INT* n, double* a, const MKL_INT* lda,
                        MKL_INT* iseed, double* work, MKL_INT* info );

void __stdcall SLARGE( const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* iseed, float* work, MKL_INT* info );
void __stdcall SLARGE_( const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* iseed, float* work, MKL_INT* info );
void __stdcall slarge( const MKL_INT* n, float* a, const MKL_INT* lda,
                       MKL_INT* iseed, float* work, MKL_INT* info );
void __stdcall slarge_( const MKL_INT* n, float* a, const MKL_INT* lda,
                        MKL_INT* iseed, float* work, MKL_INT* info );

void __stdcall CLARGE( const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CLARGE_( const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall clarge( const MKL_INT* n, MKL_Complex8* a,
                       const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall clarge_( const MKL_INT* n, MKL_Complex8* a,
                        const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall ZLARGE( const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZLARGE_( const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zlarge( const MKL_INT* n, MKL_Complex16* a,
                       const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zlarge_( const MKL_INT* n, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex16* work, MKL_INT* info );

double __stdcall DLARND( const MKL_INT* idist, MKL_INT* iseed );
double __stdcall DLARND_( const MKL_INT* idist, MKL_INT* iseed );
double __stdcall dlarnd( const MKL_INT* idist, MKL_INT* iseed );
double __stdcall dlarnd_( const MKL_INT* idist, MKL_INT* iseed );

float __stdcall SLARND( const MKL_INT* idist, MKL_INT* iseed );
float __stdcall SLARND_( const MKL_INT* idist, MKL_INT* iseed );
float __stdcall slarnd( const MKL_INT* idist, MKL_INT* iseed );
float __stdcall slarnd_( const MKL_INT* idist, MKL_INT* iseed );

void __stdcall CLARND( MKL_Complex8* retval, const MKL_INT* idist,
                       MKL_INT* iseed );
void __stdcall CLARND_( MKL_Complex8* retval, const MKL_INT* idist,
                        MKL_INT* iseed );
void __stdcall clarnd( MKL_Complex8* retval, const MKL_INT* idist,
                       MKL_INT* iseed );
void __stdcall clarnd_( MKL_Complex8* retval, const MKL_INT* idist,
                        MKL_INT* iseed );

void __stdcall ZLARND( MKL_Complex16* retval, const MKL_INT* idist,
                       MKL_INT* iseed );
void __stdcall ZLARND_( MKL_Complex16* retval, const MKL_INT* idist,
                        MKL_INT* iseed );
void __stdcall zlarnd( MKL_Complex16* retval, const MKL_INT* idist,
                       MKL_INT* iseed );
void __stdcall zlarnd_( MKL_Complex16* retval, const MKL_INT* idist,
                        MKL_INT* iseed );

void __stdcall DLAROR( const char* side, int side_len, const char* init,
                       int init_len, const MKL_INT* m, const MKL_INT* n,
                       double* a, const MKL_INT* lda, MKL_INT* iseed,
                       double* x, MKL_INT* info );
void __stdcall DLAROR_( const char* side, int side_len, const char* init,
                        int init_len, const MKL_INT* m, const MKL_INT* n,
                        double* a, const MKL_INT* lda, MKL_INT* iseed,
                        double* x, MKL_INT* info );
void __stdcall dlaror( const char* side, int side_len, const char* init,
                       int init_len, const MKL_INT* m, const MKL_INT* n,
                       double* a, const MKL_INT* lda, MKL_INT* iseed,
                       double* x, MKL_INT* info );
void __stdcall dlaror_( const char* side, int side_len, const char* init,
                        int init_len, const MKL_INT* m, const MKL_INT* n,
                        double* a, const MKL_INT* lda, MKL_INT* iseed,
                        double* x, MKL_INT* info );

void __stdcall SLAROR( const char* side, int side_len, const char* init,
                       int init_len, const MKL_INT* m, const MKL_INT* n,
                       float* a, const MKL_INT* lda, MKL_INT* iseed,
                       float* x, MKL_INT* info );
void __stdcall SLAROR_( const char* side, int side_len, const char* init,
                        int init_len, const MKL_INT* m, const MKL_INT* n,
                        float* a, const MKL_INT* lda, MKL_INT* iseed,
                        float* x, MKL_INT* info );
void __stdcall slaror( const char* side, int side_len, const char* init,
                       int init_len, const MKL_INT* m, const MKL_INT* n,
                       float* a, const MKL_INT* lda, MKL_INT* iseed,
                       float* x, MKL_INT* info );
void __stdcall slaror_( const char* side, int side_len, const char* init,
                        int init_len, const MKL_INT* m, const MKL_INT* n,
                        float* a, const MKL_INT* lda, MKL_INT* iseed,
                        float* x, MKL_INT* info );

void __stdcall CLAROR( const char* side, int side_len, const char* init,
                       int init_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex8* x, MKL_INT* info );
void __stdcall CLAROR_( const char* side, int side_len, const char* init,
                        int init_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex8* x, MKL_INT* info );
void __stdcall claror( const char* side, int side_len, const char* init,
                       int init_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex8* x, MKL_INT* info );
void __stdcall claror_( const char* side, int side_len, const char* init,
                        int init_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex8* x, MKL_INT* info );

void __stdcall ZLAROR( const char* side, int side_len, const char* init,
                       int init_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex16* x, MKL_INT* info );
void __stdcall ZLAROR_( const char* side, int side_len, const char* init,
                        int init_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* iseed, MKL_Complex16* x, MKL_INT* info );
void __stdcall zlaror( const char* side, int side_len, const char* init,
                       int init_len, const MKL_INT* m, const MKL_INT* n,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex16* x, MKL_INT* info );
void __stdcall zlaror_( const char* side, int side_len, const char* init,
                        int init_len, const MKL_INT* m, const MKL_INT* n,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_INT* iseed, MKL_Complex16* x, MKL_INT* info );

void __stdcall DLAROT( const MKL_INT* lrows, const MKL_INT* lleft,
                       const MKL_INT* lright, const MKL_INT* nl,
                       const double* c, const double* s, double* a,
                       const MKL_INT* lda, double* xleft, double* xright );
void __stdcall DLAROT_( const MKL_INT* lrows, const MKL_INT* lleft,
                        const MKL_INT* lright, const MKL_INT* nl,
                        const double* c, const double* s, double* a,
                        const MKL_INT* lda, double* xleft, double* xright );
void __stdcall dlarot( const MKL_INT* lrows, const MKL_INT* lleft,
                       const MKL_INT* lright, const MKL_INT* nl,
                       const double* c, const double* s, double* a,
                       const MKL_INT* lda, double* xleft, double* xright );
void __stdcall dlarot_( const MKL_INT* lrows, const MKL_INT* lleft,
                        const MKL_INT* lright, const MKL_INT* nl,
                        const double* c, const double* s, double* a,
                        const MKL_INT* lda, double* xleft, double* xright );

void __stdcall SLAROT( const MKL_INT* lrows, const MKL_INT* lleft,
                       const MKL_INT* lright, const MKL_INT* nl,
                       const float* c, const float* s, float* a,
                       const MKL_INT* lda, float* xleft, float* xright );
void __stdcall SLAROT_( const MKL_INT* lrows, const MKL_INT* lleft,
                        const MKL_INT* lright, const MKL_INT* nl,
                        const float* c, const float* s, float* a,
                        const MKL_INT* lda, float* xleft, float* xright );
void __stdcall slarot( const MKL_INT* lrows, const MKL_INT* lleft,
                       const MKL_INT* lright, const MKL_INT* nl,
                       const float* c, const float* s, float* a,
                       const MKL_INT* lda, float* xleft, float* xright );
void __stdcall slarot_( const MKL_INT* lrows, const MKL_INT* lleft,
                        const MKL_INT* lright, const MKL_INT* nl,
                        const float* c, const float* s, float* a,
                        const MKL_INT* lda, float* xleft, float* xright );

void __stdcall CLAROT( const MKL_INT* lrows, const MKL_INT* lleft,
                       MKL_INT* lright, const MKL_INT* nl,
                       const MKL_Complex8* c, const MKL_Complex8* s,
                       MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* xleft, MKL_Complex8* xright );
void __stdcall CLAROT_( const MKL_INT* lrows, const MKL_INT* lleft,
                        MKL_INT* lright, const MKL_INT* nl,
                        const MKL_Complex8* c, const MKL_Complex8* s,
                        MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* xleft, MKL_Complex8* xright );
void __stdcall clarot( const MKL_INT* lrows, const MKL_INT* lleft,
                       MKL_INT* lright, const MKL_INT* nl,
                       const MKL_Complex8* c, const MKL_Complex8* s,
                       MKL_Complex8* a, const MKL_INT* lda,
                       MKL_Complex8* xleft, MKL_Complex8* xright );
void __stdcall clarot_( const MKL_INT* lrows, const MKL_INT* lleft,
                        MKL_INT* lright, const MKL_INT* nl,
                        const MKL_Complex8* c, const MKL_Complex8* s,
                        MKL_Complex8* a, const MKL_INT* lda,
                        MKL_Complex8* xleft, MKL_Complex8* xright );

void __stdcall ZLAROT( const MKL_INT* lrows, const MKL_INT* lleft,
                       const MKL_INT* lright, const MKL_INT* nl,
                       const MKL_Complex16* c, const MKL_Complex16* s,
                       MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* xleft, MKL_Complex16* xright );
void __stdcall ZLAROT_( const MKL_INT* lrows, const MKL_INT* lleft,
                        const MKL_INT* lright, const MKL_INT* nl,
                        const MKL_Complex16* c, const MKL_Complex16* s,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* xleft, MKL_Complex16* xright );
void __stdcall zlarot( const MKL_INT* lrows, const MKL_INT* lleft,
                       const MKL_INT* lright, const MKL_INT* nl,
                       const MKL_Complex16* c, const MKL_Complex16* s,
                       MKL_Complex16* a, const MKL_INT* lda,
                       MKL_Complex16* xleft, MKL_Complex16* xright );
void __stdcall zlarot_( const MKL_INT* lrows, const MKL_INT* lleft,
                        const MKL_INT* lright, const MKL_INT* nl,
                        const MKL_Complex16* c, const MKL_Complex16* s,
                        MKL_Complex16* a, const MKL_INT* lda,
                        MKL_Complex16* xleft, MKL_Complex16* xright );

double __stdcall DLARAN( MKL_INT* iseed );
double __stdcall DLARAN_( MKL_INT* iseed );
double __stdcall dlaran( MKL_INT* iseed );
double __stdcall dlaran_( MKL_INT* iseed );

float __stdcall SLARAN( MKL_INT* iseed );
float __stdcall SLARAN_( MKL_INT* iseed );
float __stdcall slaran( MKL_INT* iseed );
float __stdcall slaran_( MKL_INT* iseed );

void __stdcall DLAGGE( const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const double* d,
                       double* a, const MKL_INT* lda, MKL_INT* iseed,
                       double* work, MKL_INT* info );
void __stdcall DLAGGE_( const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const double* d, double* a, const MKL_INT* lda,
                        MKL_INT* iseed, double* work, MKL_INT* info );
void __stdcall dlagge( const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const double* d,
                       double* a, const MKL_INT* lda, MKL_INT* iseed,
                       double* work, MKL_INT* info );
void __stdcall dlagge_( const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const double* d, double* a, const MKL_INT* lda,
                        MKL_INT* iseed, double* work, MKL_INT* info );

void __stdcall SLAGGE( const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const float* d,
                       float* a, const MKL_INT* lda, MKL_INT* iseed,
                       float* work, MKL_INT* info );
void __stdcall SLAGGE_( const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const float* d,
                        float* a, const MKL_INT* lda, MKL_INT* iseed,
                        float* work, MKL_INT* info );
void __stdcall slagge( const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const float* d,
                       float* a, const MKL_INT* lda, MKL_INT* iseed,
                       float* work, MKL_INT* info );
void __stdcall slagge_( const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const float* d,
                        float* a, const MKL_INT* lda, MKL_INT* iseed,
                        float* work, MKL_INT* info );

void __stdcall CLAGGE( const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const float* d,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CLAGGE_( const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const float* d,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall clagge( const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const float* d,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall clagge_( const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku, const float* d,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall ZLAGGE( const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const double* d,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZLAGGE_( const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const double* d, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zlagge( const MKL_INT* m, const MKL_INT* n,
                       const MKL_INT* kl, const MKL_INT* ku, const double* d,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zlagge_( const MKL_INT* m, const MKL_INT* n,
                        const MKL_INT* kl, const MKL_INT* ku,
                        const double* d, MKL_Complex16* a,
                        const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex16* work, MKL_INT* info );

void __stdcall CLAGSY( const MKL_INT* n, const MKL_INT* k, const float* d,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CLAGSY_( const MKL_INT* n, const MKL_INT* k, const float* d,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall clagsy( const MKL_INT* n, const MKL_INT* k, const float* d,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall clagsy_( const MKL_INT* n, const MKL_INT* k, const float* d,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex8* work, MKL_INT* info );

void __stdcall DLAGSY( const MKL_INT* n, const MKL_INT* k, const double* d,
                       double* a, const MKL_INT* lda, MKL_INT* iseed, double* work,
                       MKL_INT* info );
void __stdcall DLAGSY_( const MKL_INT* n, const MKL_INT* k, const double* d,
                        double* a, const MKL_INT* lda, MKL_INT* iseed, double* work,
                        MKL_INT* info );
void __stdcall dlagsy( const MKL_INT* n, const MKL_INT* k, const double* d,
                       double* a, const MKL_INT* lda, MKL_INT* iseed, double* work,
                       MKL_INT* info );
void __stdcall dlagsy_( const MKL_INT* n, const MKL_INT* k, const double* d,
                        double* a, const MKL_INT* lda, MKL_INT* iseed, double* work,
                        MKL_INT* info );

void __stdcall SLAGSY( const MKL_INT* n, const MKL_INT* k, const float* d,
                       float* a, const MKL_INT* lda, MKL_INT* iseed, float* work,
                       MKL_INT* info );
void __stdcall SLAGSY_( const MKL_INT* n, const MKL_INT* k, const float* d,
                       float* a, const MKL_INT* lda, MKL_INT* iseed, float* work,
                       MKL_INT* info );
void __stdcall slagsy( const MKL_INT* n, const MKL_INT* k, const float* d,
                       float* a, const MKL_INT* lda, MKL_INT* iseed, float* work,
                       MKL_INT* info );
void __stdcall slagsy_( const MKL_INT* n, const MKL_INT* k, const float* d,
                       float* a, const MKL_INT* lda, MKL_INT* iseed, float* work,
                       MKL_INT* info );

void __stdcall ZLAGSY( const MKL_INT* n, const MKL_INT* k, const double* d,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZLAGSY_( const MKL_INT* n, const MKL_INT* k, const double* d,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zlagsy( const MKL_INT* n, const MKL_INT* k, const double* d,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zlagsy_( const MKL_INT* n, const MKL_INT* k, const double* d,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex16* work, MKL_INT* info );

void __stdcall CLAGHE( const MKL_INT* n, const MKL_INT* k, const float* d,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall CLAGHE_( const MKL_INT* n, const MKL_INT* k, const float* d,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex8* work, MKL_INT* info );
void __stdcall claghe( const MKL_INT* n, const MKL_INT* k, const float* d,
                       MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex8* work, MKL_INT* info );
void __stdcall claghe_( const MKL_INT* n, const MKL_INT* k, const float* d,
                        MKL_Complex8* a, const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex8* work, MKL_INT* info );

void __stdcall ZLAGHE( const MKL_INT* n, const MKL_INT* k, const double* d,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall ZLAGHE_( const MKL_INT* n, const MKL_INT* k, const double* d,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex16* work, MKL_INT* info );
void __stdcall zlaghe( const MKL_INT* n, const MKL_INT* k, const double* d,
                       MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iseed,
                       MKL_Complex16* work, MKL_INT* info );
void __stdcall zlaghe_( const MKL_INT* n, const MKL_INT* k, const double* d,
                        MKL_Complex16* a, const MKL_INT* lda, MKL_INT* iseed,
                        MKL_Complex16* work, MKL_INT* info );

/* oneMKL extensions */

void __stdcall MKL_CSPFFRT2(  MKL_Complex8 *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              MKL_Complex8 *work, MKL_Complex8 *work2 );
void __stdcall mkl_cspffrt2(  MKL_Complex8 *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              MKL_Complex8 *work, MKL_Complex8 *work2 );
void __stdcall mkl_cspffrt2_( MKL_Complex8 *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              MKL_Complex8 *work, MKL_Complex8 *work2 );
void __stdcall MKL_CSPFFRTX(  MKL_Complex8 *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              MKL_Complex8 *work, MKL_Complex8 *work2 );
void __stdcall mkl_cspffrtx(  MKL_Complex8 *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              MKL_Complex8 *work, MKL_Complex8 *work2 );
void __stdcall mkl_cspffrtx_( MKL_Complex8 *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              MKL_Complex8 *work, MKL_Complex8 *work2 );
void __stdcall MKL_DSPFFRT2(  double *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              double *work, double *work2 );
void __stdcall mkl_dspffrt2(  double *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              double *work, double *work2 );
void __stdcall mkl_dspffrt2_( double *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              double *work, double *work2 );
void __stdcall MKL_DSPFFRTX(  double *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              double *work, double *work2 );
void __stdcall mkl_dspffrtx(  double *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              double *work, double *work2 );
void __stdcall mkl_dspffrtx_( double *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              double *work, double *work2 );
void __stdcall MKL_SSPFFRT2(  float *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              float *work, float *work2 );
void __stdcall mkl_sspffrt2(  float *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              float *work, float *work2 );
void __stdcall mkl_sspffrt2_( float *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              float *work, float *work2 );
void __stdcall MKL_SSPFFRTX(  float *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              float *work, float *work2 );
void __stdcall mkl_sspffrtx(  float *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              float *work, float *work2 );
void __stdcall mkl_sspffrtx_( float *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              float *work, float *work2 );
void __stdcall MKL_ZSPFFRT2(  MKL_Complex16 *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              MKL_Complex16 *work, MKL_Complex16 *work2 );
void __stdcall mkl_zspffrt2(  MKL_Complex16 *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              MKL_Complex16 *work, MKL_Complex16 *work2 );
void __stdcall mkl_zspffrt2_( MKL_Complex16 *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              MKL_Complex16 *work, MKL_Complex16 *work2 );
void __stdcall MKL_ZSPFFRTX(  MKL_Complex16 *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              MKL_Complex16 *work, MKL_Complex16 *work2 );
void __stdcall mkl_zspffrtx(  MKL_Complex16 *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              MKL_Complex16 *work, MKL_Complex16 *work2 );
void __stdcall mkl_zspffrtx_( MKL_Complex16 *ap, const MKL_INT *n, const MKL_INT *ncolm,
                              MKL_Complex16 *work, MKL_Complex16 *work2 );

/* oneMKL Progress routine */

#ifndef _MKL_PROGRESS_H_
#define _MKL_PROGRESS_H_
int __stdcall MKL_PROGRESS( int* thread, int* step, char* stage, int lstage );
int __stdcall MKL_PROGRESS_( int* thread, int* step, char* stage, int lstage );
int __stdcall mkl_progress( int* thread, int* step, char* stage, int lstage );
int __stdcall mkl_progress_( int* thread, int* step, char* stage, int lstage );
#endif /* _MKL_PROGRESS_H_ */

#endif /* MKL_STDCALL */

#ifdef __cplusplus
}
#endif /* __cplusplus */

#endif /* _MKL_LAPACK_STDCALL_H_ */
