// No special checks for safe Convert
 static TypeTo safeConvert( const Amesos2::PMKL::_DOUBLE_COMPLEX_t t )
 {
   typedef typename TypeTo::value_type value_type;
   value_type ret_r = Teuchos::as<value_type>( t.r );
   value_type ret_i = Teuchos::as<value_type>( t.i );
   return ( TypeTo( ret_r, ret_i ) );
 }
 // No special checks for safe Convert
 static TypeTo safeConvert( const SLUD::Z::doublecomplex t )
   {
     typedef typename TypeTo::value_type value_type;
     value_type ret_r = Teuchos::as<value_type>( t.r );
     value_type ret_i = Teuchos::as<value_type>( t.i );
     return ( TypeTo( ret_r, ret_i ) );
   }
 static TypeTo safeConvert( const Amesos2::PMKL::_MKL_Complex8 t )
 {                           // adapt conversion as necessary
   typedef typename TypeTo::value_type value_type;
   value_type ret_r = Teuchos::as<value_type>( t.real );
   value_type ret_i = Teuchos::as<value_type>( t.imag );
   return ( TypeTo( ret_r, ret_i ) );
 }