#define EXP             
/*  definition of type and intrinsic functions */
#define DCOMPLEX        integer
#define DREAL           integer
#define SQROOT          
#define REALPART
#define CONJUG

/*  definition of own types */
#define XSP_MATRIX      ISP_MATRIX
#define XSPMAT          ispmat
#define ACCESSDATA_XSP  accessdata_isp
#define NEW_XSP         new_isp
#define DEL_XSP         del_isp
#define XSP_DATA        isp_data
#define XSP_HANDLE      isp_handle
#define XSP_LINKNODE    isp_linknode
#define XINS_INIT       iins_init
#define XSP_INIT        isp_init
#define XSP_FIRST       isp_first
#define XSP_LAST        isp_last
#define X_MATRIX        i_matrix
#define XMATRIX         imatrix
#define X_MATRIX_start  i_matrix_start
#define X_ELEMENT_start i_element_start
#define X_INELEMENT     i_inelement
#define X_ELEMENT       i_element 
#define XPMATRIX        ipmatrix
#define XTYPES          itypes

/* definition of the constants */
#define ZZERO           0
#define ZONE            1
#define ZEROREAL        0
#define ONEREAL         1

/*  definition of own routines */
#define XLMBV_BCO       ilmbv_bco
#define XLMBV_BDI       ilmbv_bdi
#define XLMBV_BSC       ilmbv_bsc
#define XLMBV_BSR       ilmbv_bsr
#define XLMBV_COO       ilmbv_coo
#define XLMBV_CSC       ilmbv_csc
#define XLMBV_CSR       ilmbv_csr
#define XLMBV_DIA       ilmbv_dia
#define XLMBV_VBR       ilmbv_vbr
#define XLSBV_BCO       ilsbv_bco
#define XLSBV_BDI       ilsbv_bdi
#define XLSBV_BSC       ilsbv_bsc
#define XLSBV_BSR       ilsbv_bsr
#define XLSBV_COO       ilsbv_coo
#define XLSBV_CSC       ilsbv_csc
#define XLSBV_CSR       ilsbv_csr
#define XLSBV_DIA       ilsbv_dia
#define XLSBV_VBR       ilsbv_vbr
#define XRMBV_BCO       irmbv_bco
#define XRMBV_BDI       irmbv_bdi
#define XRMBV_BSC       irmbv_bsc
#define XRMBV_BSR       irmbv_bsr
#define XRMBV_COO       irmbv_coo
#define XRMBV_CSC       irmbv_csc
#define XRMBV_CSR       irmbv_csr
#define XRMBV_DIA       irmbv_dia
#define XRMBV_VBR       irmbv_vbr
#define XRSBV_BCO       irsbv_bco
#define XRSBV_BDI       irsbv_bdi
#define XRSBV_BSC       irsbv_bsc
#define XRSBV_BSR       irsbv_bsr
#define XRSBV_COO       irsbv_coo
#define XRSBV_CSC       irsbv_csc
#define XRSBV_CSR       irsbv_csr
#define XRSBV_DIA       irsbv_dia
#define XRSBV_VBR       irsbv_vbr
#define XUSCR_BCO       iuscr_bco
#define XUSCR_BDI       iuscr_bdi
#define XUSCR_BSC       iuscr_bsc
#define XUSCR_BSR       iuscr_bsr
#define XUSCR_COO       iuscr_coo
#define XUSCR_CSC       iuscr_csc
#define XUSCR_CSR       iuscr_csr
#define XUSCR_DIA       iuscr_dia
#define XUSCR_VBR       iuscr_vbr
#define XUSMV           iusmv
#define XUSMM           iusmm
#define XUSSV           iussv
#define XUSSM           iussm
#define XBLOCK_MULT     iblock_mult_vec
#define XBLOCK_Z_MULT   iblock_Z_mult_vec
#define XBLOCK_T_MULT   iblock_T_mult_vec
#define XBLOCK_H_MULT   iblock_H_mult_vec
#define XINV_LL         iinvert_left_lower
#define XINV_T_LL       iinvert_T_left_lower
#define XINV_RU         iinvert_right_upper
#define XINV_T_RU       iinvert_T_right_upper
#define XBLOCK_R_MULT   iblock_r_mult_vec
#define XBLOCK_L_MULT   iblock_l_mult_vec
#define XINV_R_LL       iinvert_r_left_lower
#define XINV_L_LL       iinvert_l_left_lower
#define XINV_L_RU       iinvert_l_right_upper
#define XINV_R_RU       iinvert_r_right_upper
#define XUSDOT          iusdot
#define XUSAXPY         iusaxpy 
#define XUSGA           iusga
#define XUSGZ           iusgz
#define XUSSC           iussc
#define XB_UP_ORDER     ib_up_order
#define XA_ROW_COL      iA_row_col
#define XDETECT_DIAG    idetect_diag
#define XAB_ROW_COL     iAb_row_col
#define XDETECT_BDIAG   idetect_bdiag
#define XPRE_COO2DIA    ipre_usconv_coo2dia
#define XPRE_DIA2COO    ipre_usconv_dia2coo
#define XPRE_BCO2BDI    ipre_usconv_bco2bdi
#define XPRE_BDI2BCO    ipre_usconv_bdi2bco 
#define XPRE_COO2CSR    ipre_usconv_coo2csr
#define XPRE_COO2CSC    ipre_usconv_coo2csc
#define XPRE_BCO2BSR    ipre_usconv_bco2bsr
#define XPRE_BCO2BSC    ipre_usconv_bco2bsc
#define XBCO2BDI        iusconv_bco2bdi
#define XBDI2BCO        iusconv_bdi2bco 
#define XCOO2CSR        iusconv_coo2csr
#define XCOO2CSC        iusconv_coo2csc
#define XBCO2BSR        iusconv_bco2bsr
#define XBCO2BSC        iusconv_bco2bsc
#define XCOO2DIA        iusconv_coo2dia
#define XDIA2COO        iusconv_dia2coo
#define XCSR2COO        iusconv_csr2coo
#define XCSC2COO        iusconv_csc2coo
#define XBSC2BCO        iusconv_bsc2bco
#define XBSR2BCO        iusconv_bsr2bco
#define NEW_X_MATRIX    new_i_matrix
#define DELOC_X_MATRIX  dealloc_i_matrix
#define XACCESS_MATRIX  iaccess_matrix
#define NEW_X_ELEMENT   new_i_element
#define X_ELEMENT_start i_element_start
#define DELOC_X_ELEMENT dealloc_i_element
#define XACCESS_ELEMENT iaccess_element
#define X_ELEMENT_NUM   i_element_num
#define X_DEALLOC       i_dealloc
#define XINS_entry      iINS_entry
#define XINS_block      iINS_block
#define XINS_bl_entr    iINS_bl_entr
#define XINS_varblock   iINS_varblock
#define XINS_varbl_entr iINS_varbl_entr
#define XUSCR_varend    iuscr_varend
#define XUSCR_normend   iuscr_normend
#define XUSCR_blockend  iuscr_blockend
#define XUSCR_BEGIN     iuscr_begin
#define XUSCR_BLOCK_BEGIN  iuscr_block_begin
#define XUSCR_V_B_BEGIN  iuscr_variable_block_begin
#define XUSCR_INSERT_ENTRY iuscr_insert_entry
#define XUSCR_INSERT_ENTRIES iuscr_insert_entries
#define XUSCR_INSERT_COL iuscr_insert_col
#define XUSCR_INSERT_ROW iuscr_insert_row
#define XUSCR_INSERT_CLIQUE iuscr_insert_clique
#define XUSCR_INSERT_BLOCK  iuscr_insert_block
#define XUSCR_END        iuscr_end
#define  XUSGP           iusgp
#define  XUSSP           iussp
