/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version 1.3.31
 * 
 * This file is not intended to be easily readable and contains a number of 
 * coding conventions designed to improve portability and efficiency. Do not make
 * changes to this file unless you know what you are doing--modify the SWIG 
 * interface file instead. 
 * ----------------------------------------------------------------------------- */


#ifdef __cplusplus
template<class T> class SwigValueWrapper {
    T *tt;
public:
    SwigValueWrapper() : tt(0) { }
    SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
    SwigValueWrapper(const T& t) : tt(new T(t)) { }
    ~SwigValueWrapper() { delete tt; } 
    SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
    operator T&() const { return *tt; }
    T *operator&() { return tt; }
private:
    SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
};
#endif

/* -----------------------------------------------------------------------------
 *  This section contains generic SWIG labels for method/variable
 *  declarations/attributes, and other compiler dependent labels.
 * ----------------------------------------------------------------------------- */

/* template workaround for compilers that cannot correctly implement the C++ standard */
#ifndef SWIGTEMPLATEDISAMBIGUATOR
# if defined(__SUNPRO_CC)
#   if (__SUNPRO_CC <= 0x560)
#     define SWIGTEMPLATEDISAMBIGUATOR template
#   else
#     define SWIGTEMPLATEDISAMBIGUATOR 
#   endif
# else
#   define SWIGTEMPLATEDISAMBIGUATOR 
# endif
#endif

/* inline attribute */
#ifndef SWIGINLINE
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
#   define SWIGINLINE inline
# else
#   define SWIGINLINE
# endif
#endif

/* attribute recognised by some compilers to avoid 'unused' warnings */
#ifndef SWIGUNUSED
# if defined(__GNUC__)
#   if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
#     define SWIGUNUSED __attribute__ ((__unused__)) 
#   else
#     define SWIGUNUSED
#   endif
# elif defined(__ICC)
#   define SWIGUNUSED __attribute__ ((__unused__)) 
# else
#   define SWIGUNUSED 
# endif
#endif

#ifndef SWIGUNUSEDPARM
# ifdef __cplusplus
#   define SWIGUNUSEDPARM(p)
# else
#   define SWIGUNUSEDPARM(p) p SWIGUNUSED 
# endif
#endif

/* internal SWIG method */
#ifndef SWIGINTERN
# define SWIGINTERN static SWIGUNUSED
#endif

/* internal inline SWIG method */
#ifndef SWIGINTERNINLINE
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
#endif

/* exporting methods */
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
#  ifndef GCC_HASCLASSVISIBILITY
#    define GCC_HASCLASSVISIBILITY
#  endif
#endif

#ifndef SWIGEXPORT
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
#   if defined(STATIC_LINKED)
#     define SWIGEXPORT
#   else
#     define SWIGEXPORT __declspec(dllexport)
#   endif
# else
#   if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
#     define SWIGEXPORT __attribute__ ((visibility("default")))
#   else
#     define SWIGEXPORT
#   endif
# endif
#endif

/* calling conventions for Windows */
#ifndef SWIGSTDCALL
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
#   define SWIGSTDCALL __stdcall
# else
#   define SWIGSTDCALL
# endif 
#endif

/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
# define _CRT_SECURE_NO_DEPRECATE
#endif


/* Fix for jlong on some versions of gcc on Windows */
#if defined(__GNUC__) && !defined(__INTELC__)
  typedef long long __int64;
#endif

/* Fix for jlong on 64-bit x86 Solaris */
#if defined(__x86_64)
# ifdef _LP64
#   undef _LP64
# endif
#endif

#include <jni.h>
#include <stdlib.h>
#include <string.h>


/* Support for throwing Java exceptions */
typedef enum {
  SWIG_JavaOutOfMemoryError = 1, 
  SWIG_JavaIOException, 
  SWIG_JavaRuntimeException, 
  SWIG_JavaIndexOutOfBoundsException,
  SWIG_JavaArithmeticException,
  SWIG_JavaIllegalArgumentException,
  SWIG_JavaNullPointerException,
  SWIG_JavaDirectorPureVirtual,
  SWIG_JavaUnknownError
} SWIG_JavaExceptionCodes;

typedef struct {
  SWIG_JavaExceptionCodes code;
  const char *java_exception;
} SWIG_JavaExceptions_t;


static void SWIGUNUSED SWIG_JavaThrowException(JNIEnv *jenv, SWIG_JavaExceptionCodes code, const char *msg) {
  jclass excep;
  static const SWIG_JavaExceptions_t java_exceptions[] = {
    { SWIG_JavaOutOfMemoryError, "java/lang/OutOfMemoryError" },
    { SWIG_JavaIOException, "java/io/IOException" },
    { SWIG_JavaRuntimeException, "java/lang/RuntimeException" },
    { SWIG_JavaIndexOutOfBoundsException, "java/lang/IndexOutOfBoundsException" },
    { SWIG_JavaArithmeticException, "java/lang/ArithmeticException" },
    { SWIG_JavaIllegalArgumentException, "java/lang/IllegalArgumentException" },
    { SWIG_JavaNullPointerException, "java/lang/NullPointerException" },
    { SWIG_JavaDirectorPureVirtual, "java/lang/RuntimeException" },
    { SWIG_JavaUnknownError,  "java/lang/UnknownError" },
    { (SWIG_JavaExceptionCodes)0,  "java/lang/UnknownError" } };
  const SWIG_JavaExceptions_t *except_ptr = java_exceptions;

  while (except_ptr->code != code && except_ptr->code)
    except_ptr++;

  jenv->ExceptionClear();
  excep = jenv->FindClass(except_ptr->java_exception);
  if (excep)
    jenv->ThrowNew(excep, msg);
}


/* Contract support */

#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_JavaThrowException(jenv, SWIG_JavaIllegalArgumentException, msg); return nullreturn; } else


#include "giac.h"


#include <stdexcept>


#include <vector>
#include <stdexcept>


#include <string>

SWIGINTERN std::vector<int >::const_reference std_vector_Sl_int_Sg__get(std::vector<int > *self,int i){
                int size = int(self->size());
                if (i>=0 && i<size)
                    return (*self)[i];
                else
                    throw std::out_of_range("vector index out of range");
            }
SWIGINTERN void std_vector_Sl_int_Sg__set(std::vector<int > *self,int i,std::vector<int >::value_type const &x){
                int size = int(self->size());
                if (i>=0 && i<size)
                    (*self)[i] = x;
                else
                    throw std::out_of_range("vector index out of range");
            }
SWIGINTERN std::vector<double >::const_reference std_vector_Sl_double_Sg__get(std::vector<double > *self,int i){
                int size = int(self->size());
                if (i>=0 && i<size)
                    return (*self)[i];
                else
                    throw std::out_of_range("vector index out of range");
            }
SWIGINTERN void std_vector_Sl_double_Sg__set(std::vector<double > *self,int i,std::vector<double >::value_type const &x){
                int size = int(self->size());
                if (i>=0 && i<size)
                    (*self)[i] = x;
                else
                    throw std::out_of_range("vector index out of range");
            }
SWIGINTERN std::vector<giac::gen >::const_reference std_vector_Sl_giac_gen_Sg__get(std::vector<giac::gen > *self,int i){
                int size = int(self->size());
                if (i>=0 && i<size)
                    return (*self)[i];
                else
                    throw std::out_of_range("vector index out of range");
            }
SWIGINTERN void std_vector_Sl_giac_gen_Sg__set(std::vector<giac::gen > *self,int i,std::vector<giac::gen >::value_type const &x){
                int size = int(self->size());
                if (i>=0 && i<size)
                    (*self)[i] = x;
                else
                    throw std::out_of_range("vector index out of range");
            }
SWIGINTERN std::vector<std::string >::const_reference std_vector_Sl_std_string_Sg__get(std::vector<std::string > *self,int i){
                int size = int(self->size());
                if (i>=0 && i<size)
                    return (*self)[i];
                else
                    throw std::out_of_range("vector index out of range");
            }
SWIGINTERN void std_vector_Sl_std_string_Sg__set(std::vector<std::string > *self,int i,std::vector<std::string >::value_type const &x){
                int size = int(self->size());
                if (i>=0 && i<size)
                    (*self)[i] = x;
                else
                    throw std::out_of_range("vector index out of range");
            }

#ifdef __cplusplus
extern "C" {
#endif

SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1vectori_1_1SWIG_10(JNIEnv *jenv, jclass jcls) {
  jlong jresult = 0 ;
  std::vector<int > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  result = (std::vector<int > *)new std::vector<int >();
  *(std::vector<int > **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1vectori_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  std::vector<int >::size_type arg1 ;
  std::vector<int > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = (std::vector<int >::size_type)jarg1; 
  result = (std::vector<int > *)new std::vector<int >(arg1);
  *(std::vector<int > **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_vectori_1size(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  std::vector<int > *arg1 = (std::vector<int > *) 0 ;
  std::vector<int >::size_type result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<int > **)&jarg1; 
  result = ((std::vector<int > const *)arg1)->size();
  jresult = (jlong)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_vectori_1capacity(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  std::vector<int > *arg1 = (std::vector<int > *) 0 ;
  std::vector<int >::size_type result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<int > **)&jarg1; 
  result = ((std::vector<int > const *)arg1)->capacity();
  jresult = (jlong)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectori_1reserve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) {
  std::vector<int > *arg1 = (std::vector<int > *) 0 ;
  std::vector<int >::size_type arg2 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<int > **)&jarg1; 
  arg2 = (std::vector<int >::size_type)jarg2; 
  (arg1)->reserve(arg2);
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_vectori_1isEmpty(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jboolean jresult = 0 ;
  std::vector<int > *arg1 = (std::vector<int > *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<int > **)&jarg1; 
  result = (bool)((std::vector<int > const *)arg1)->empty();
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectori_1clear(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  std::vector<int > *arg1 = (std::vector<int > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<int > **)&jarg1; 
  (arg1)->clear();
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectori_1add(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
  std::vector<int > *arg1 = (std::vector<int > *) 0 ;
  std::vector<int >::value_type *arg2 = 0 ;
  std::vector<int >::value_type temp2 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<int > **)&jarg1; 
  temp2 = (std::vector<int >::value_type)jarg2; 
  arg2 = &temp2; 
  (arg1)->push_back((std::vector<int >::value_type const &)*arg2);
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_vectori_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
  jint jresult = 0 ;
  std::vector<int > *arg1 = (std::vector<int > *) 0 ;
  int arg2 ;
  std::vector<int >::value_type *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<int > **)&jarg1; 
  arg2 = (int)jarg2; 
  try {
    {
      std::vector<int >::const_reference _result_ref = std_vector_Sl_int_Sg__get(arg1,arg2);
      result = (std::vector<int >::value_type *) &_result_ref;
    }
  }
  catch(std::out_of_range &_e) {
    SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, (&_e)->what());
    return 0;
  }
  
  jresult = (jint)*result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectori_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jint jarg3) {
  std::vector<int > *arg1 = (std::vector<int > *) 0 ;
  int arg2 ;
  std::vector<int >::value_type *arg3 = 0 ;
  std::vector<int >::value_type temp3 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<int > **)&jarg1; 
  arg2 = (int)jarg2; 
  temp3 = (std::vector<int >::value_type)jarg3; 
  arg3 = &temp3; 
  try {
    std_vector_Sl_int_Sg__set(arg1,arg2,(int const &)*arg3);
  }
  catch(std::out_of_range &_e) {
    SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, (&_e)->what());
    return ;
  }
  
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_delete_1vectori(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  std::vector<int > *arg1 = (std::vector<int > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(std::vector<int > **)&jarg1; 
  delete arg1;
  
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1vectord_1_1SWIG_10(JNIEnv *jenv, jclass jcls) {
  jlong jresult = 0 ;
  std::vector<double > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  result = (std::vector<double > *)new std::vector<double >();
  *(std::vector<double > **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1vectord_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  std::vector<double >::size_type arg1 ;
  std::vector<double > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = (std::vector<double >::size_type)jarg1; 
  result = (std::vector<double > *)new std::vector<double >(arg1);
  *(std::vector<double > **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_vectord_1size(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  std::vector<double > *arg1 = (std::vector<double > *) 0 ;
  std::vector<double >::size_type result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<double > **)&jarg1; 
  result = ((std::vector<double > const *)arg1)->size();
  jresult = (jlong)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_vectord_1capacity(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  std::vector<double > *arg1 = (std::vector<double > *) 0 ;
  std::vector<double >::size_type result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<double > **)&jarg1; 
  result = ((std::vector<double > const *)arg1)->capacity();
  jresult = (jlong)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectord_1reserve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) {
  std::vector<double > *arg1 = (std::vector<double > *) 0 ;
  std::vector<double >::size_type arg2 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<double > **)&jarg1; 
  arg2 = (std::vector<double >::size_type)jarg2; 
  (arg1)->reserve(arg2);
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_vectord_1isEmpty(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jboolean jresult = 0 ;
  std::vector<double > *arg1 = (std::vector<double > *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<double > **)&jarg1; 
  result = (bool)((std::vector<double > const *)arg1)->empty();
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectord_1clear(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  std::vector<double > *arg1 = (std::vector<double > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<double > **)&jarg1; 
  (arg1)->clear();
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectord_1add(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2) {
  std::vector<double > *arg1 = (std::vector<double > *) 0 ;
  std::vector<double >::value_type *arg2 = 0 ;
  std::vector<double >::value_type temp2 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<double > **)&jarg1; 
  temp2 = (std::vector<double >::value_type)jarg2; 
  arg2 = &temp2; 
  (arg1)->push_back((std::vector<double >::value_type const &)*arg2);
}


SWIGEXPORT jdouble JNICALL Java_javagiac_giacJNI_vectord_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
  jdouble jresult = 0 ;
  std::vector<double > *arg1 = (std::vector<double > *) 0 ;
  int arg2 ;
  std::vector<double >::value_type *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<double > **)&jarg1; 
  arg2 = (int)jarg2; 
  try {
    {
      std::vector<double >::const_reference _result_ref = std_vector_Sl_double_Sg__get(arg1,arg2);
      result = (std::vector<double >::value_type *) &_result_ref;
    }
  }
  catch(std::out_of_range &_e) {
    SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, (&_e)->what());
    return 0;
  }
  
  jresult = (jdouble)*result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectord_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jdouble jarg3) {
  std::vector<double > *arg1 = (std::vector<double > *) 0 ;
  int arg2 ;
  std::vector<double >::value_type *arg3 = 0 ;
  std::vector<double >::value_type temp3 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<double > **)&jarg1; 
  arg2 = (int)jarg2; 
  temp3 = (std::vector<double >::value_type)jarg3; 
  arg3 = &temp3; 
  try {
    std_vector_Sl_double_Sg__set(arg1,arg2,(double const &)*arg3);
  }
  catch(std::out_of_range &_e) {
    SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, (&_e)->what());
    return ;
  }
  
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_delete_1vectord(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  std::vector<double > *arg1 = (std::vector<double > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(std::vector<double > **)&jarg1; 
  delete arg1;
  
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1vectorg_1_1SWIG_10(JNIEnv *jenv, jclass jcls) {
  jlong jresult = 0 ;
  std::vector<giac::gen > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  result = (std::vector<giac::gen > *)new std::vector<giac::gen >();
  *(std::vector<giac::gen > **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1vectorg_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  std::vector<giac::gen >::size_type arg1 ;
  std::vector<giac::gen > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = (std::vector<giac::gen >::size_type)jarg1; 
  result = (std::vector<giac::gen > *)new std::vector<giac::gen >(arg1);
  *(std::vector<giac::gen > **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_vectorg_1size(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  std::vector<giac::gen > *arg1 = (std::vector<giac::gen > *) 0 ;
  std::vector<giac::gen >::size_type result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<giac::gen > **)&jarg1; 
  result = ((std::vector<giac::gen > const *)arg1)->size();
  jresult = (jlong)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_vectorg_1capacity(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  std::vector<giac::gen > *arg1 = (std::vector<giac::gen > *) 0 ;
  std::vector<giac::gen >::size_type result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<giac::gen > **)&jarg1; 
  result = ((std::vector<giac::gen > const *)arg1)->capacity();
  jresult = (jlong)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectorg_1reserve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) {
  std::vector<giac::gen > *arg1 = (std::vector<giac::gen > *) 0 ;
  std::vector<giac::gen >::size_type arg2 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<giac::gen > **)&jarg1; 
  arg2 = (std::vector<giac::gen >::size_type)jarg2; 
  (arg1)->reserve(arg2);
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_vectorg_1isEmpty(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jboolean jresult = 0 ;
  std::vector<giac::gen > *arg1 = (std::vector<giac::gen > *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<giac::gen > **)&jarg1; 
  result = (bool)((std::vector<giac::gen > const *)arg1)->empty();
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectorg_1clear(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  std::vector<giac::gen > *arg1 = (std::vector<giac::gen > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<giac::gen > **)&jarg1; 
  (arg1)->clear();
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectorg_1add(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  std::vector<giac::gen > *arg1 = (std::vector<giac::gen > *) 0 ;
  std::vector<giac::gen >::value_type *arg2 = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(std::vector<giac::gen > **)&jarg1; 
  arg2 = *(std::vector<giac::gen >::value_type **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "std::vector<giac::gen >::value_type const & reference is null");
    return ;
  } 
  (arg1)->push_back((std::vector<giac::gen >::value_type const &)*arg2);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_vectorg_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
  jlong jresult = 0 ;
  std::vector<giac::gen > *arg1 = (std::vector<giac::gen > *) 0 ;
  int arg2 ;
  std::vector<giac::gen >::value_type *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<giac::gen > **)&jarg1; 
  arg2 = (int)jarg2; 
  try {
    {
      std::vector<giac::gen >::const_reference _result_ref = std_vector_Sl_giac_gen_Sg__get(arg1,arg2);
      result = (std::vector<giac::gen >::value_type *) &_result_ref;
    }
  }
  catch(std::out_of_range &_e) {
    SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, (&_e)->what());
    return 0;
  }
  
  *(std::vector<giac::gen >::value_type **)&jresult = result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectorg_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  std::vector<giac::gen > *arg1 = (std::vector<giac::gen > *) 0 ;
  int arg2 ;
  std::vector<giac::gen >::value_type *arg3 = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(std::vector<giac::gen > **)&jarg1; 
  arg2 = (int)jarg2; 
  arg3 = *(std::vector<giac::gen >::value_type **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "std::vector<giac::gen >::value_type const & reference is null");
    return ;
  } 
  try {
    std_vector_Sl_giac_gen_Sg__set(arg1,arg2,(giac::gen const &)*arg3);
  }
  catch(std::out_of_range &_e) {
    SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, (&_e)->what());
    return ;
  }
  
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_delete_1vectorg(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  std::vector<giac::gen > *arg1 = (std::vector<giac::gen > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(std::vector<giac::gen > **)&jarg1; 
  delete arg1;
  
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1vectors_1_1SWIG_10(JNIEnv *jenv, jclass jcls) {
  jlong jresult = 0 ;
  std::vector<std::string > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  result = (std::vector<std::string > *)new std::vector<std::string >();
  *(std::vector<std::string > **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1vectors_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  std::vector<std::string >::size_type arg1 ;
  std::vector<std::string > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = (std::vector<std::string >::size_type)jarg1; 
  result = (std::vector<std::string > *)new std::vector<std::string >(arg1);
  *(std::vector<std::string > **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_vectors_1size(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  std::vector<std::string > *arg1 = (std::vector<std::string > *) 0 ;
  std::vector<std::string >::size_type result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<std::string > **)&jarg1; 
  result = ((std::vector<std::string > const *)arg1)->size();
  jresult = (jlong)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_vectors_1capacity(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  std::vector<std::string > *arg1 = (std::vector<std::string > *) 0 ;
  std::vector<std::string >::size_type result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<std::string > **)&jarg1; 
  result = ((std::vector<std::string > const *)arg1)->capacity();
  jresult = (jlong)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectors_1reserve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) {
  std::vector<std::string > *arg1 = (std::vector<std::string > *) 0 ;
  std::vector<std::string >::size_type arg2 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<std::string > **)&jarg1; 
  arg2 = (std::vector<std::string >::size_type)jarg2; 
  (arg1)->reserve(arg2);
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_vectors_1isEmpty(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jboolean jresult = 0 ;
  std::vector<std::string > *arg1 = (std::vector<std::string > *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<std::string > **)&jarg1; 
  result = (bool)((std::vector<std::string > const *)arg1)->empty();
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectors_1clear(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  std::vector<std::string > *arg1 = (std::vector<std::string > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<std::string > **)&jarg1; 
  (arg1)->clear();
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectors_1add(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2) {
  std::vector<std::string > *arg1 = (std::vector<std::string > *) 0 ;
  std::vector<std::string >::value_type *arg2 = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<std::string > **)&jarg1; 
  if(!jarg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return ;
  }
  const char *arg2_pstr = (const char *)jenv->GetStringUTFChars(jarg2, 0); 
  if (!arg2_pstr) return ;
  std::string arg2_str(arg2_pstr);
  arg2 = &arg2_str;
  jenv->ReleaseStringUTFChars(jarg2, arg2_pstr); 
  (arg1)->push_back((std::vector<std::string >::value_type const &)*arg2);
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_vectors_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
  jstring jresult = 0 ;
  std::vector<std::string > *arg1 = (std::vector<std::string > *) 0 ;
  int arg2 ;
  std::vector<std::string >::value_type *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<std::string > **)&jarg1; 
  arg2 = (int)jarg2; 
  try {
    {
      std::vector<std::string >::const_reference _result_ref = std_vector_Sl_std_string_Sg__get(arg1,arg2);
      result = (std::vector<std::string >::value_type *) &_result_ref;
    }
  }
  catch(std::out_of_range &_e) {
    SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, (&_e)->what());
    return 0;
  }
  
  jresult = jenv->NewStringUTF(result->c_str()); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_vectors_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jstring jarg3) {
  std::vector<std::string > *arg1 = (std::vector<std::string > *) 0 ;
  int arg2 ;
  std::vector<std::string >::value_type *arg3 = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(std::vector<std::string > **)&jarg1; 
  arg2 = (int)jarg2; 
  if(!jarg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return ;
  }
  const char *arg3_pstr = (const char *)jenv->GetStringUTFChars(jarg3, 0); 
  if (!arg3_pstr) return ;
  std::string arg3_str(arg3_pstr);
  arg3 = &arg3_str;
  jenv->ReleaseStringUTFChars(jarg3, arg3_pstr); 
  try {
    std_vector_Sl_std_string_Sg__set(arg1,arg2,(std::string const &)*arg3);
  }
  catch(std::out_of_range &_e) {
    SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, (&_e)->what());
    return ;
  }
  
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_delete_1vectors(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  std::vector<std::string > *arg1 = (std::vector<std::string > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(std::vector<std::string > **)&jarg1; 
  delete arg1;
  
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_context_1tabptr_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) {
  giac::context *arg1 = (giac::context *) 0 ;
  giac::sym_tab *arg2 = (giac::sym_tab *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  arg2 = *(giac::sym_tab **)&jarg2; 
  if (arg1) (arg1)->tabptr = arg2;
  
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_context_1tabptr_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::sym_tab *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = (giac::sym_tab *) ((arg1)->tabptr);
  *(giac::sym_tab **)&jresult = result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_context_1globalcontextptr_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  giac::context *arg1 = (giac::context *) 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::context **)&jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  if (arg1) (arg1)->globalcontextptr = arg2;
  
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_context_1globalcontextptr_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::context *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = (giac::context *) ((arg1)->globalcontextptr);
  *(giac::context **)&jresult = result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_context_1previous_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  giac::context *arg1 = (giac::context *) 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::context **)&jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  if (arg1) (arg1)->previous = arg2;
  
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_context_1previous_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::context *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = (giac::context *) ((arg1)->previous);
  *(giac::context **)&jresult = result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_context_1globalptr_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) {
  giac::context *arg1 = (giac::context *) 0 ;
  giac::global *arg2 = (giac::global *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  arg2 = *(giac::global **)&jarg2; 
  if (arg1) (arg1)->globalptr = arg2;
  
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_context_1globalptr_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::global *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = (giac::global *) ((arg1)->globalptr);
  *(giac::global **)&jresult = result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_context_1parent_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  giac::context *arg1 = (giac::context *) 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::context **)&jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  if (arg1) (arg1)->parent = (giac::context const *)arg2;
  
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_context_1parent_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::context *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = (giac::context *) ((arg1)->parent);
  *(giac::context **)&jresult = result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_context_1quoted_1global_1vars_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) {
  giac::context *arg1 = (giac::context *) 0 ;
  giac::vecteur *arg2 = (giac::vecteur *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  arg2 = *(giac::vecteur **)&jarg2; 
  if (arg1) (arg1)->quoted_global_vars = arg2;
  
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_context_1quoted_1global_1vars_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::vecteur *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = (giac::vecteur *) ((arg1)->quoted_global_vars);
  *(giac::vecteur **)&jresult = result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_context_1history_1in_1ptr_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) {
  giac::context *arg1 = (giac::context *) 0 ;
  giac::vecteur *arg2 = (giac::vecteur *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  arg2 = *(giac::vecteur **)&jarg2; 
  if (arg1) (arg1)->history_in_ptr = arg2;
  
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_context_1history_1in_1ptr_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::vecteur *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = (giac::vecteur *) ((arg1)->history_in_ptr);
  *(giac::vecteur **)&jresult = result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_context_1history_1out_1ptr_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) {
  giac::context *arg1 = (giac::context *) 0 ;
  giac::vecteur *arg2 = (giac::vecteur *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  arg2 = *(giac::vecteur **)&jarg2; 
  if (arg1) (arg1)->history_out_ptr = arg2;
  
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_context_1history_1out_1ptr_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::vecteur *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = (giac::vecteur *) ((arg1)->history_out_ptr);
  *(giac::vecteur **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1context_1_1SWIG_10(JNIEnv *jenv, jclass jcls) {
  jlong jresult = 0 ;
  giac::context *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  result = (giac::context *)new giac::context();
  *(giac::context **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1context_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = 0 ;
  giac::context *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::context const & reference is null");
    return 0;
  } 
  result = (giac::context *)new giac::context((giac::context const &)*arg1);
  *(giac::context **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1context_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jstring jarg1) {
  jlong jresult = 0 ;
  std::string *arg1 = 0 ;
  giac::context *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  if(!jarg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return 0;
  }
  const char *arg1_pstr = (const char *)jenv->GetStringUTFChars(jarg1, 0); 
  if (!arg1_pstr) return 0;
  std::string arg1_str(arg1_pstr);
  arg1 = &arg1_str;
  jenv->ReleaseStringUTFChars(jarg1, arg1_pstr); 
  result = (giac::context *)new giac::context((std::string const &)*arg1);
  *(giac::context **)&jresult = result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_delete_1context(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  giac::context *arg1 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::context **)&jarg1; 
  delete arg1;
  
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_context_1clone(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::context *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = (giac::context *)((giac::context const *)arg1)->clone();
  *(giac::context **)&jresult = result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_gen_1type_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshort jarg2) {
  giac::gen *arg1 = (giac::gen *) 0 ;
  unsigned char arg2 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (unsigned char)jarg2; 
  if (arg1) (arg1)->type = arg2;
  
}


SWIGEXPORT jshort JNICALL Java_javagiac_giacJNI_gen_1type_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jshort jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  unsigned char result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (unsigned char) ((arg1)->type);
  jresult = (jshort)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_gen_1type_1unused_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshort jarg2) {
  giac::gen *arg1 = (giac::gen *) 0 ;
  unsigned char arg2 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (unsigned char)jarg2; 
  if (arg1) (arg1)->type_unused = arg2;
  
}


SWIGEXPORT jshort JNICALL Java_javagiac_giacJNI_gen_1type_1unused_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jshort jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  unsigned char result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (unsigned char) ((arg1)->type_unused);
  jresult = (jshort)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_gen_1subtype_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jbyte jarg2) {
  giac::gen *arg1 = (giac::gen *) 0 ;
  signed char arg2 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (signed char)jarg2; 
  if (arg1) (arg1)->subtype = arg2;
  
}


SWIGEXPORT jbyte JNICALL Java_javagiac_giacJNI_gen_1subtype_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jbyte jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  signed char result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (signed char) ((arg1)->subtype);
  jresult = (jbyte)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_gen_1reserved_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
  giac::gen *arg1 = (giac::gen *) 0 ;
  unsigned short arg2 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (unsigned short)jarg2; 
  if (arg1) (arg1)->reserved = arg2;
  
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_gen_1reserved_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jint jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  unsigned short result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (unsigned short) ((arg1)->reserved);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_gen_1val_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
  giac::gen *arg1 = (giac::gen *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (int)jarg2; 
  if (arg1) (arg1)->val = arg2;
  
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_gen_1val_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jint jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (int) ((arg1)->val);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1count(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  {
    int volatile &_result_ref = ((giac::gen const *)arg1)->ref_count();
    result = (int *) &_result_ref;
  }
  *(int **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_10(JNIEnv *jenv, jclass jcls) {
  jlong jresult = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  result = (giac::gen *)new giac::gen();
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jshort jarg2) {
  jlong jresult = 0 ;
  void *arg1 = (void *) 0 ;
  short arg2 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(void **)&jarg1; 
  arg2 = (short)jarg2; 
  result = (giac::gen *)new giac::gen(arg1,arg2);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jint jarg1) {
  jlong jresult = 0 ;
  int arg1 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = (int)jarg1; 
  result = (giac::gen *)new giac::gen(arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_13(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  size_t arg1 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = (size_t)jarg1; 
  result = (giac::gen *)new giac::gen(arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_14(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  longlong arg1 ;
  giac::gen *result = 0 ;
  longlong *argp1 ;
  
  (void)jenv;
  (void)jcls;
  argp1 = *(longlong **)&jarg1; 
  if (!argp1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null longlong");
    return 0;
  }
  arg1 = *argp1; 
  result = (giac::gen *)new giac::gen(arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_15(JNIEnv *jenv, jclass jcls, jdouble jarg1) {
  jlong jresult = 0 ;
  double arg1 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = (double)jarg1; 
  result = (giac::gen *)new giac::gen(arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_16(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac_float *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac_float **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac_float const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac_float const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jdouble JNICALL Java_javagiac_giacJNI_gen_1DOUBLE_1val(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jdouble jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (double)((giac::gen const *)arg1)->DOUBLE_val();
  jresult = (jdouble)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1FLOAT_1val(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac_float result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = ((giac::gen const *)arg1)->FLOAT_val();
  *(giac_float **)&jresult = new giac_float((giac_float &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_17(JNIEnv *jenv, jclass jcls, jint jarg1, jint jarg2) {
  jlong jresult = 0 ;
  int arg1 ;
  int arg2 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = (int)jarg1; 
  arg2 = (int)jarg2; 
  result = (giac::gen *)new giac::gen(arg1,arg2);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_18(JNIEnv *jenv, jclass jcls, jdouble jarg1, jdouble jarg2) {
  jlong jresult = 0 ;
  double arg1 ;
  double arg2 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = (double)jarg1; 
  arg2 = (double)jarg2; 
  result = (giac::gen *)new giac::gen(arg1,arg2);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_19(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_110(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  std::complex<double > *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(std::complex<double > **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "std::complex<double > const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((std::complex<double > const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_111(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::gen const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_112(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::identificateur *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::identificateur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::identificateur const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::identificateur const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_113(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::ref_identificateur *arg1 = (giac::ref_identificateur *) 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::ref_identificateur **)&jarg1; 
  result = (giac::gen *)new giac::gen(arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_114(JNIEnv *jenv, jclass jcls, jlong jarg1, jshort jarg2) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  short arg2 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = (short)jarg2; 
  result = (giac::gen *)new giac::gen((giac::vecteur const &)*arg1,arg2);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_115(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::vecteur const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_116(JNIEnv *jenv, jclass jcls, jlong jarg1, jshort jarg2) {
  jlong jresult = 0 ;
  giac::ref_vecteur *arg1 = (giac::ref_vecteur *) 0 ;
  short arg2 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::ref_vecteur **)&jarg1; 
  arg2 = (short)jarg2; 
  result = (giac::gen *)new giac::gen(arg1,arg2);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_117(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::ref_vecteur *arg1 = (giac::ref_vecteur *) 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::ref_vecteur **)&jarg1; 
  result = (giac::gen *)new giac::gen(arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_118(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::symbolic *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::symbolic **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::symbolic const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::symbolic const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_119(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::ref_symbolic *arg1 = (giac::ref_symbolic *) 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::ref_symbolic **)&jarg1; 
  result = (giac::gen *)new giac::gen(arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_120(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::gen_user *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::gen_user **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen_user const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::gen_user const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_121(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::real_object *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::real_object **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::real_object const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::real_object const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_122(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::Tref_tensor<giac::gen > *arg1 = (giac::Tref_tensor<giac::gen > *) 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::Tref_tensor<giac::gen > **)&jarg1; 
  result = (giac::gen *)new giac::gen(arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_123(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::polynome *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::polynome **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::polynome const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::polynome const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_124(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::fraction *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::fraction **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::fraction const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::fraction const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_125(JNIEnv *jenv, jclass jcls, jstring jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  std::string *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  if(!jarg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return 0;
  }
  const char *arg1_pstr = (const char *)jenv->GetStringUTFChars(jarg1, 0); 
  if (!arg1_pstr) return 0;
  std::string arg1_str(arg1_pstr);
  arg1 = &arg1_str;
  jenv->ReleaseStringUTFChars(jarg1, arg1_pstr); 
  arg2 = *(giac::context **)&jarg2; 
  result = (giac::gen *)new giac::gen((std::string const &)*arg1,arg2);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_126(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  jlong jresult = 0 ;
  giac::unary_function_ptr *arg1 = 0 ;
  int arg2 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::unary_function_ptr **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::unary_function_ptr const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  result = (giac::gen *)new giac::gen((giac::unary_function_ptr const &)*arg1,arg2);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_127(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::unary_function_ptr *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::unary_function_ptr **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::unary_function_ptr const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::unary_function_ptr const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_128(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::gen_map *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::gen_map **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen_map const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::gen_map const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_129(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::eqwdata *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::eqwdata **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::eqwdata const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::eqwdata const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_130(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::grob *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::grob **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::grob const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::grob const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_new_1gen_1_1SWIG_131(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::my_mpz *arg1 = 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::my_mpz **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::my_mpz const & reference is null");
    return 0;
  } 
  result = (giac::gen *)new giac::gen((giac::my_mpz const &)*arg1);
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_delete_1gen(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  giac::gen *arg1 = (giac::gen *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::gen **)&jarg1; 
  delete arg1;
  
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1ZINTptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  mpz_t *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (mpz_t *)((giac::gen const *)arg1)->ref_ZINTptr();
  *(mpz_t **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1REALptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::real_object *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::real_object *)((giac::gen const *)arg1)->ref_REALptr();
  *(giac::real_object **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1CPLXptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::gen *)((giac::gen const *)arg1)->ref_CPLXptr();
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1IDNTptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::identificateur *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::identificateur *)((giac::gen const *)arg1)->ref_IDNTptr();
  *(giac::identificateur **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1SYMBptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::symbolic *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::symbolic *)((giac::gen const *)arg1)->ref_SYMBptr();
  *(giac::symbolic **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1MODptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::gen *)((giac::gen const *)arg1)->ref_MODptr();
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1FRACptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::Tfraction<giac::gen > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::Tfraction<giac::gen > *)((giac::gen const *)arg1)->ref_FRACptr();
  *(giac::Tfraction<giac::gen > **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1EXTptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::gen *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::gen *)((giac::gen const *)arg1)->ref_EXTptr();
  *(giac::gen **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1POLYptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::polynome *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::polynome *)((giac::gen const *)arg1)->ref_POLYptr();
  *(giac::polynome **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1VECTptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::vecteur *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::vecteur *)((giac::gen const *)arg1)->ref_VECTptr();
  *(giac::vecteur **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1SPOL1ptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::sparse_poly1 *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::sparse_poly1 *)((giac::gen const *)arg1)->ref_SPOL1ptr();
  *(giac::sparse_poly1 **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1STRNGptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  std::string *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (std::string *)((giac::gen const *)arg1)->ref_STRNGptr();
  *(std::string **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1FUNCptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::unary_function_ptr *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::unary_function_ptr *)((giac::gen const *)arg1)->ref_FUNCptr();
  *(giac::unary_function_ptr **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1USERptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::gen_user *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::gen_user *)((giac::gen const *)arg1)->ref_USERptr();
  *(giac::gen_user **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1MAPptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::gen_map *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::gen_map *)((giac::gen const *)arg1)->ref_MAPptr();
  *(giac::gen_map **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1EQWptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::eqwdata *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::eqwdata *)((giac::gen const *)arg1)->ref_EQWptr();
  *(giac::eqwdata **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1GROBptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::grob *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (giac::grob *)((giac::gen const *)arg1)->ref_GROBptr();
  *(giac::grob **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1ref_1POINTER_1val(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  void *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (void *)((giac::gen const *)arg1)->ref_POINTER_val();
  *(void **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_gen_1in_1eval(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int arg2 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (int)jarg2; 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = (bool)((giac::gen const *)arg1)->in_eval(arg2,*arg3,(giac::context const *)arg4);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1eval(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  {
    try {
      result = ((giac::gen const *)arg1)->eval(arg2,(giac::context const *)arg3); 
    } catch (std::runtime_error &e) {
      std::cout << "An exception occurred in eval: " << e.what() << "\n";
    }
  }
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_gen_1in_1evalf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int arg2 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (int)jarg2; 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = (bool)((giac::gen const *)arg1)->in_evalf(arg2,*arg3,(giac::context const *)arg4);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1evalf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = ((giac::gen const *)arg1)->evalf(arg2,(giac::context const *)arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1evalf_1double(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = ((giac::gen const *)arg1)->evalf_double(arg2,(giac::context const *)arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1evalf2double(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = ((giac::gen const *)arg1)->evalf2double(arg2,(giac::context const *)arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_gen_1to_1int(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jint jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (int)((giac::gen const *)arg1)->to_int();
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_gen_1is_1real(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  result = (bool)((giac::gen const *)arg1)->is_real(arg2);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_gen_1is_1cinteger(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (bool)((giac::gen const *)arg1)->is_cinteger();
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_gen_1is_1integer(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (bool)((giac::gen const *)arg1)->is_integer();
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_gen_1is_1constant(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (bool)((giac::gen const *)arg1)->is_constant();
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_gen_1print_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  result = ((giac::gen const *)arg1)->print(arg2);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_gen_1printcharptr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  char *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (char *)((giac::gen const *)arg1)->printcharptr();
  if(result) jresult = jenv->NewStringUTF((const char *)result);
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_gen_1sprint(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jint jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  std::string *arg2 = (std::string *) 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(std::string **)&jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = (int)((giac::gen const *)arg1)->sprint(arg2,arg3);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_gen_1print_1universal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  result = ((giac::gen const *)arg1)->print_universal(arg2);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_gen_1print_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = ((giac::gen const *)arg1)->print();
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1wprint(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  wchar_t *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  result = (wchar_t *)((giac::gen const *)arg1)->wprint(arg2);
  *(wchar_t **)&jresult = result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_gen_1modify(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
  giac::gen *arg1 = (giac::gen *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->modify(arg2);
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_gen_1dbgprint(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  giac::gen *arg1 = (giac::gen *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  ((giac::gen const *)arg1)->dbgprint();
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_gen_1uncoerce(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  giac::gen *arg1 = (giac::gen *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  (arg1)->uncoerce();
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1conj(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  result = ((giac::gen const *)arg1)->conj(arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1re(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  result = ((giac::gen const *)arg1)->re(arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1im(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  result = ((giac::gen const *)arg1)->im(arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1inverse(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  result = ((giac::gen const *)arg1)->inverse(arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1squarenorm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  result = ((giac::gen const *)arg1)->squarenorm(arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_gen_1bindigits(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jint jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (int)((giac::gen const *)arg1)->bindigits();
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1operator_1at_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = ((giac::gen const *)arg1)->operator_at(arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1operator_1at_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = ((giac::gen const *)arg1)->operator_at((giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1operator_1of(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = ((giac::gen const *)arg1)->operator ()((giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_gen_1islesscomplexthan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::gen *arg2 = 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = (bool)((giac::gen const *)arg1)->islesscomplexthan((giac::gen const &)*arg2);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_gen_1is_1approx(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (bool)((giac::gen const *)arg1)->is_approx();
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_gen_1symb_1size(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jint jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  result = (int)((giac::gen const *)arg1)->symb_size();
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1change_1subtype(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int arg2 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (int)jarg2; 
  result = (arg1)->change_subtype(arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_gen_1is_1symb_1of_1sommet(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  giac::unary_function_ptr *arg2 = 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = *(giac::unary_function_ptr **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::unary_function_ptr const & reference is null");
    return 0;
  } 
  result = (bool)((giac::gen const *)arg1)->is_symb_of_sommet((giac::unary_function_ptr const &)*arg2);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen_1makegen(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
  jlong jresult = 0 ;
  giac::gen *arg1 = (giac::gen *) 0 ;
  int arg2 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1; 
  arg2 = (int)jarg2; 
  result = ((giac::gen const *)arg1)->makegen(arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_makevecteur_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::makevecteur((giac::gen const &)*arg1);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_makevecteur_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::makevecteur((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_makevecteur_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::makevecteur((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_makevecteur_1_1SWIG_13(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::makevecteur((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_makevecteur_1_1SWIG_14(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::makevecteur((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,(giac::gen const &)*arg5);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_makevecteur_1_1SWIG_15(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_, jlong jarg6, jobject jarg6_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  giac::gen *arg6 = 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  (void)jarg6_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg6 = *(giac::gen **)&jarg6;
  if(!arg6) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::makevecteur((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,(giac::gen const &)*arg5,(giac::gen const &)*arg6);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_makevecteur_1_1SWIG_16(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_, jlong jarg6, jobject jarg6_, jlong jarg7, jobject jarg7_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  giac::gen *arg6 = 0 ;
  giac::gen *arg7 = 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  (void)jarg6_;
  (void)jarg7_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg6 = *(giac::gen **)&jarg6;
  if(!arg6) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg7 = *(giac::gen **)&jarg7;
  if(!arg7) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::makevecteur((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,(giac::gen const &)*arg5,(giac::gen const &)*arg6,(giac::gen const &)*arg7);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_makevecteur_1_1SWIG_17(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_, jlong jarg6, jobject jarg6_, jlong jarg7, jobject jarg7_, jlong jarg8, jobject jarg8_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  giac::gen *arg6 = 0 ;
  giac::gen *arg7 = 0 ;
  giac::gen *arg8 = 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  (void)jarg6_;
  (void)jarg7_;
  (void)jarg8_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg6 = *(giac::gen **)&jarg6;
  if(!arg6) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg7 = *(giac::gen **)&jarg7;
  if(!arg7) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg8 = *(giac::gen **)&jarg8;
  if(!arg8) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::makevecteur((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,(giac::gen const &)*arg5,(giac::gen const &)*arg6,(giac::gen const &)*arg7,(giac::gen const &)*arg8);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_makevecteur_1_1SWIG_18(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_, jlong jarg6, jobject jarg6_, jlong jarg7, jobject jarg7_, jlong jarg8, jobject jarg8_, jlong jarg9, jobject jarg9_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  giac::gen *arg6 = 0 ;
  giac::gen *arg7 = 0 ;
  giac::gen *arg8 = 0 ;
  giac::gen *arg9 = 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  (void)jarg6_;
  (void)jarg7_;
  (void)jarg8_;
  (void)jarg9_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg6 = *(giac::gen **)&jarg6;
  if(!arg6) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg7 = *(giac::gen **)&jarg7;
  if(!arg7) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg8 = *(giac::gen **)&jarg8;
  if(!arg8) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg9 = *(giac::gen **)&jarg9;
  if(!arg9) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::makevecteur((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,(giac::gen const &)*arg5,(giac::gen const &)*arg6,(giac::gen const &)*arg7,(giac::gen const &)*arg8,(giac::gen const &)*arg9);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1factor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_factor((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1simplify(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_simplify((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1size(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_size((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_add(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::operator +((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sub(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::operator -((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_neg(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::operator -((giac::gen const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_mul(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::operator *((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_rdiv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::rdiv((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_mod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::operator %((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_pow_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::pow((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_giac_1pow(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::giac_pow((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_iquo(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::iquo((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_irem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  result = giac::irem((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_smod_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::smod((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_smod_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_, jlong jarg3) {
  giac::vecteur *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return ;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return ;
  } 
  giac::smod((giac::vecteur const &)*arg1,(giac::gen const &)*arg2,*arg3);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_smod_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::smod((giac::vecteur const &)*arg1,(giac::gen const &)*arg2);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_inv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::inv((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_operator_1equal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = (bool)giac::operator_equal((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_equal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::equal((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_fastsign(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = (int)giac::fastsign((giac::gen const &)*arg1,arg2);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sign(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::sign((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_is_1greater(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = (bool)giac::is_greater((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_is_1strictly_1greater(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = (bool)giac::is_strictly_greater((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_is_1positive(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = (bool)giac::is_positive((giac::gen const &)*arg1,arg2);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_is_1strictly_1positive(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = (bool)giac::is_strictly_positive((giac::gen const &)*arg1,arg2);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_ck_1is_1greater(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = (bool)giac::ck_is_greater((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_ck_1is_1strictly_1greater(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = (bool)giac::ck_is_strictly_greater((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_ck_1is_1positive(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = (bool)giac::ck_is_positive((giac::gen const &)*arg1,arg2);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_ck_1is_1strictly_1positive(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = (bool)giac::ck_is_strictly_positive((giac::gen const &)*arg1,arg2);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_superieur_1strict(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::superieur_strict((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_superieur_1egal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::superieur_egal((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_inferieur_1strict(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::inferieur_strict((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_inferieur_1egal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::inferieur_egal((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_symb_1size_1less(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = (bool)giac::symb_size_less((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_min(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::min((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_max(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::max((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_factorial(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  unsigned long arg1 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  arg1 = (unsigned long)jarg1; 
  result = giac::factorial(arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_comb_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jlong jresult = 0 ;
  unsigned long arg1 ;
  unsigned long arg2 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  arg1 = (unsigned long)jarg1; 
  arg2 = (unsigned long)jarg2; 
  result = giac::comb(arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_perm(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jlong jresult = 0 ;
  unsigned long arg1 ;
  unsigned long arg2 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  arg1 = (unsigned long)jarg1; 
  arg2 = (unsigned long)jarg2; 
  result = giac::perm(arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_pow_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  unsigned long arg2 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (unsigned long)jarg2; 
  result = giac::pow((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_pow_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  result = giac::pow((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_pow_1_1SWIG_13(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jlong jresult = 0 ;
  unsigned long arg1 ;
  unsigned long arg2 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  arg1 = (unsigned long)jarg1; 
  arg2 = (unsigned long)jarg2; 
  result = giac::pow(arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gcd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::gcd((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_lcm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::lcm((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_simplify_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  result = giac::simplify(*arg1,*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_egcd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  giac::egcd((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3,*arg4,*arg5);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ichinrem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::ichinrem((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_invmod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::invmod((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_fracmod_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::fracmod((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_fracmod_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  result = (bool)giac::fracmod((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_powmod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::powmod((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_isqrt(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::isqrt((giac::gen const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_re(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::re((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_no_1context_1re(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::no_context_re((giac::gen const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_im(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::im((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_no_1context_1im(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::no_context_im((giac::gen const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_reim(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg4 = *(giac::context **)&jarg4; 
  giac::reim((giac::gen const &)*arg1,*arg2,*arg3,arg4);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_conj(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::conj((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_no_1context_1conj(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::no_context_conj((giac::gen const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sq(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::sq((giac::gen const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_abs_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::abs((giac::gen const &)*arg1,(giac::context const *)arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_abs_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::abs((giac::gen const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_linfnorm_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::linfnorm((giac::gen const &)*arg1,(giac::context const *)arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_linfnorm_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::linfnorm((giac::gen const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_arg(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::arg((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_arg_1CPLX(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::arg_CPLX((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_is_1perfect_1square(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = (int)giac::is_perfect_square((giac::gen const &)*arg1);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_is_1probab_1prime_1p(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = (int)giac::is_probab_prime_p((giac::gen const &)*arg1);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_nextprime(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::nextprime((giac::gen const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_prevprime(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::prevprime((giac::gen const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_jacobi(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = (int)giac::jacobi((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_legendre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = (int)giac::legendre((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_pascal_1next_1line(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  result = giac::pascal_next_line((giac::vecteur const &)*arg1);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_pascal_1nth_1line(JNIEnv *jenv, jclass jcls, jint jarg1) {
  jlong jresult = 0 ;
  int arg1 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  arg1 = (int)jarg1; 
  result = giac::pascal_nth_line(arg1);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_vector2vecteur(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  result = giac::vector2vecteur((giac::vecteur const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_chkmod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::chkmod((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_makemod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::makemod((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_makemodquoted(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::makemodquoted((giac::gen const &)*arg1,(giac::gen const &)*arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_symbolique2liste(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::symbolique2liste((giac::gen const &)*arg1,arg2);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_liste2symbolique(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  result = giac::liste2symbolique((giac::vecteur const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_is_1atomic(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = (bool)giac::is_atomic((giac::gen const &)*arg1);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_string2gen_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jstring jarg1, jboolean jarg2) {
  jlong jresult = 0 ;
  std::string *arg1 = 0 ;
  bool arg2 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  if(!jarg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return 0;
  }
  const char *arg1_pstr = (const char *)jenv->GetStringUTFChars(jarg1, 0); 
  if (!arg1_pstr) return 0;
  std::string arg1_str(arg1_pstr);
  arg1 = &arg1_str;
  jenv->ReleaseStringUTFChars(jarg1, arg1_pstr); 
  arg2 = jarg2 ? true : false; 
  result = giac::string2gen((std::string const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_string2gen_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jstring jarg1) {
  jlong jresult = 0 ;
  std::string *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  if(!jarg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return 0;
  }
  const char *arg1_pstr = (const char *)jenv->GetStringUTFChars(jarg1, 0); 
  if (!arg1_pstr) return 0;
  std::string arg1_str(arg1_pstr);
  arg1 = &arg1_str;
  jenv->ReleaseStringUTFChars(jarg1, arg1_pstr); 
  result = giac::string2gen((std::string const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_no_1context_1evalf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::no_context_evalf((giac::gen const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_evalf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::evalf((giac::gen const &)*arg1,arg2,(giac::context const *)arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_evalf2bcd_1nock(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::evalf2bcd_nock((giac::gen const &)*arg1,arg2,(giac::context const *)arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_evalf2bcd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::evalf2bcd((giac::gen const &)*arg1,arg2,(giac::context const *)arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_has_1evalf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jint jarg3, jlong jarg4, jobject jarg4_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  int arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg3 = (int)jarg3; 
  arg4 = *(giac::context **)&jarg4; 
  result = (bool)giac::has_evalf((giac::gen const &)*arg1,*arg2,arg3,(giac::context const *)arg4);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jdouble JNICALL Java_javagiac_giacJNI_int2double(JNIEnv *jenv, jclass jcls, jint jarg1) {
  jdouble jresult = 0 ;
  int arg1 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = (int)jarg1; 
  result = (double)giac::int2double(arg1);
  jresult = (jdouble)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_aplatir_1fois_1plus(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  result = giac::aplatir_fois_plus((giac::gen const &)*arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_collect(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::collect((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_select_1root(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::select_root((giac::vecteur const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_is_1known_1rootof(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jboolean jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = (bool)giac::is_known_rootof((giac::vecteur const &)*arg1,*arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_alg_1evalf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::alg_evalf((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_approx_1rootof(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::approx_rootof((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_common_1EXT(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::vecteur *arg3 = (giac::vecteur *) 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg3 = *(giac::vecteur **)&jarg3; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::common_EXT(*arg1,*arg2,(giac::vecteur const *)arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_common_1minimal_1POLY(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jlong jarg6, jobject jarg6_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  int *arg5 = 0 ;
  giac::context *arg6 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg6_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg5 = *(int **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "int & reference is null");
    return 0;
  } 
  arg6 = *(giac::context **)&jarg6; 
  result = giac::common_minimal_POLY((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3,*arg4,*arg5,arg6);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ext_1add(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::ext_add((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ext_1sub(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::ext_sub((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ext_1mul(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::ext_mul((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_symb_1rootof(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::symb_rootof((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_rootof(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::rootof((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sturm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::sturm((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_sturmab(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = (int)giac::sturmab((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sturmab(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sturmab((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sturm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sturm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sturmseq(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sturmseq((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_sturmsign(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = (int)giac::sturmsign((giac::gen const &)*arg1,arg2,arg3);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_find_1range(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = (int)giac::find_range((giac::gen const &)*arg1,*arg2,arg3);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_fminmax(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::fminmax((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1complexroot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_complexroot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1realroot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_realroot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1crationalroot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_crationalroot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rationalroot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rationalroot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_symb2poly_1num(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::symb2poly_num((giac::gen const &)*arg1,arg2);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_eval_1before_1diff(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::eval_before_diff((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_derive_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::identificateur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::identificateur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::identificateur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::derive((giac::gen const &)*arg1,(giac::identificateur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_derive_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::derive((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_derive_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::derive((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1derive(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_derive((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1function_1diff(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_function_diff((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1grad(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_grad((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_laplace(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::laplace((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1laplace(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_laplace((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_diffeq_1constante(JNIEnv *jenv, jclass jcls, jint jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  int arg1 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  arg1 = (int)jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::diffeq_constante(arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ilaplace(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::ilaplace((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ilaplace(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ilaplace((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1desolve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_desolve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ztrans(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::ztrans((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ztrans(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ztrans((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_invztrans(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::invztrans((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1invztrans(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_invztrans((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_integrate_1without_1lnabs(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::integrate_without_lnabs((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ezgcd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ezgcd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1modgcd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_modgcd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1heugcd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_heugcd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1psrgcd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_psrgcd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_quad(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_, jlong jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  int *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(int **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "int & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::quad(*arg1,(giac::gen const &)*arg2,(giac::vecteur const &)*arg3,arg4);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_qxa(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::qxa((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1q2a(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_q2a((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gauss(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::gauss((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1gauss(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_gauss((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_axq(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::axq((giac::vecteur const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1a2q(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_a2q((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_qxac(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::qxac((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1conique_1reduite(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_conique_reduite((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1quadrique_1reduite(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_quadrique_reduite((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_settypeerr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  giac::context *arg1 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  giac::settypeerr(arg1);
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_setsizeerr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  giac::context *arg1 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  giac::setsizeerr(arg1);
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_setdimerr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  giac::context *arg1 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  giac::setdimerr(arg1);
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_divisionby0err(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::context **)&jarg2; 
  giac::divisionby0err((giac::gen const &)*arg1,arg2);
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_cksignerr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::context **)&jarg2; 
  giac::cksignerr((giac::gen const &)*arg1,arg2);
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_invalidserieserr(JNIEnv *jenv, jclass jcls, jstring jarg1, jlong jarg2, jobject jarg2_) {
  std::string *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  if(!jarg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return ;
  }
  const char *arg1_pstr = (const char *)jenv->GetStringUTFChars(jarg1, 0); 
  if (!arg1_pstr) return ;
  std::string arg1_str(arg1_pstr);
  arg1 = &arg1_str;
  jenv->ReleaseStringUTFChars(jarg1, arg1_pstr); 
  arg2 = *(giac::context **)&jarg2; 
  giac::invalidserieserr((std::string const &)*arg1,arg2);
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_toofewargs(JNIEnv *jenv, jclass jcls, jstring jarg1, jlong jarg2, jobject jarg2_) {
  std::string *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  if(!jarg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return ;
  }
  const char *arg1_pstr = (const char *)jenv->GetStringUTFChars(jarg1, 0); 
  if (!arg1_pstr) return ;
  std::string arg1_str(arg1_pstr);
  arg1 = &arg1_str;
  jenv->ReleaseStringUTFChars(jarg1, arg1_pstr); 
  arg2 = *(giac::context **)&jarg2; 
  giac::toofewargs((std::string const &)*arg1,arg2);
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_toomanyargs(JNIEnv *jenv, jclass jcls, jstring jarg1, jlong jarg2, jobject jarg2_) {
  std::string *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  if(!jarg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return ;
  }
  const char *arg1_pstr = (const char *)jenv->GetStringUTFChars(jarg1, 0); 
  if (!arg1_pstr) return ;
  std::string arg1_str(arg1_pstr);
  arg1 = &arg1_str;
  jenv->ReleaseStringUTFChars(jarg1, arg1_pstr); 
  arg2 = *(giac::context **)&jarg2; 
  giac::toomanyargs((std::string const &)*arg1,arg2);
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_maxordererr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  giac::context *arg1 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  giac::maxordererr(arg1);
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_setstabilityerr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  giac::context *arg1 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  giac::setstabilityerr(arg1);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gentypeerr_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = giac::gentypeerr(arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_gentypeerr_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg2 = *(giac::context **)&jarg2; 
  giac::gentypeerr(*arg1,arg2);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gensizeerr_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = giac::gensizeerr(arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_gensizeerr_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg2 = *(giac::context **)&jarg2; 
  giac::gensizeerr(*arg1,arg2);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gendimerr_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = giac::gendimerr(arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_gendimerr_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg2 = *(giac::context **)&jarg2; 
  giac::gendimerr(*arg1,arg2);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gendivisionby0err(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::gendivisionby0err((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gencksignerr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::gencksignerr((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_geninvalidserieserr(JNIEnv *jenv, jclass jcls, jstring jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  std::string *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  if(!jarg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return 0;
  }
  const char *arg1_pstr = (const char *)jenv->GetStringUTFChars(jarg1, 0); 
  if (!arg1_pstr) return 0;
  std::string arg1_str(arg1_pstr);
  arg1 = &arg1_str;
  jenv->ReleaseStringUTFChars(jarg1, arg1_pstr); 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::geninvalidserieserr((std::string const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gentoofewargs(JNIEnv *jenv, jclass jcls, jstring jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  std::string *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  if(!jarg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return 0;
  }
  const char *arg1_pstr = (const char *)jenv->GetStringUTFChars(jarg1, 0); 
  if (!arg1_pstr) return 0;
  std::string arg1_str(arg1_pstr);
  arg1 = &arg1_str;
  jenv->ReleaseStringUTFChars(jarg1, arg1_pstr); 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::gentoofewargs((std::string const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gentoomanyargs(JNIEnv *jenv, jclass jcls, jstring jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  std::string *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  if(!jarg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return 0;
  }
  const char *arg1_pstr = (const char *)jenv->GetStringUTFChars(jarg1, 0); 
  if (!arg1_pstr) return 0;
  std::string arg1_str(arg1_pstr);
  arg1 = &arg1_str;
  jenv->ReleaseStringUTFChars(jarg1, arg1_pstr); 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::gentoomanyargs((std::string const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_genmaxordererr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = giac::genmaxordererr(arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_genstabilityerr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = giac::genstabilityerr(arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_print_1the_1type(JNIEnv *jenv, jclass jcls, jint jarg1, jlong jarg2, jobject jarg2_) {
  jstring jresult = 0 ;
  int arg1 ;
  giac::context *arg2 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  arg1 = (int)jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::print_the_type(arg1,arg2);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_printinner_1VECT(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::printinner_VECT((giac::vecteur const &)*arg1,arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_add_1printinner_1VECT(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  std::string *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  int arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  std::string *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg4_;
  arg1 = *(std::string **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "std::string & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = (int)jarg3; 
  arg4 = *(giac::context **)&jarg4; 
  {
    std::string &_result_ref = giac::add_printinner_VECT(*arg1,(giac::vecteur const &)*arg2,arg3,arg4);
    result = (std::string *) &_result_ref;
  }
  *(std::string **)&jresult = result; 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_begin_1VECT_1string(JNIEnv *jenv, jclass jcls, jint jarg1, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  int arg1 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  arg1 = (int)jarg1; 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::begin_VECT_string(arg1,arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_end_1VECT_1string(JNIEnv *jenv, jclass jcls, jint jarg1, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  int arg1 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  arg1 = (int)jarg1; 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::end_VECT_string(arg1,arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_print_1VECT(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::print_VECT((giac::vecteur const &)*arg1,arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_printint32(JNIEnv *jenv, jclass jcls, jint jarg1, jint jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  int arg1 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  arg1 = (int)jarg1; 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::printint32(arg1,arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_print_1FLOAT_1(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_) {
  jstring jresult = 0 ;
  giac_float *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  arg1 = *(giac_float **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac_float const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::print_FLOAT_((giac_float const &)*arg1,arg2);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_parsed_1gen_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = giac::parsed_gen(arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_parsed_1gen_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::context **)&jarg2; 
  giac::parsed_gen((giac::gen const &)*arg1,arg2);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_archive_1count(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  unsigned int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = (unsigned int)giac::archive_count((giac::gen const &)*arg1,arg2);
  jresult = (jlong)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_archive_1save(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jboolean jresult = 0 ;
  void *arg1 = (void *) 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(void **)&jarg1; 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = (bool)giac::archive_save(arg1,(giac::gen const &)*arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_archive_1restore(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  FILE *arg1 = (FILE *) 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  arg1 = *(FILE **)&jarg1; 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::archive_restore(arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ithprime(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ithprime((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ifactors(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ifactors((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1maple_1ifactors(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_maple_ifactors((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ifactors_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::ifactors((giac::gen const &)*arg1,arg2);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ifactors_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::ifactors((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_factors(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::factors((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1factors(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_factors((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1divis(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_divis((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_idivis(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::idivis((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1idivis(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_idivis((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_pfacprem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::pfacprem(*arg1,arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ifactor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::ifactor((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ifactor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ifactor((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_euler(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::euler((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1euler(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_euler((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_pa2b2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::pa2b2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pa2b2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pa2b2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1propfrac(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_propfrac((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1iabcuv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_iabcuv((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_abcuv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::abcuv((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1abcuv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_abcuv((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_simp2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::simp2((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1simp2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_simp2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1fxnd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_fxnd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_is_1meromorphic(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_, jlong jarg6, jobject jarg6_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  giac::context *arg6 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  (void)jarg6_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg6 = *(giac::context **)&jarg6; 
  result = (int)giac::is_meromorphic((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3,*arg4,*arg5,arg6);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_is_1even_1odd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = (int)giac::is_even_odd((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_residue(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::residue((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1residue(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_residue((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_intgab(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_, jlong jarg6, jobject jarg6_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  giac::context *arg6 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  (void)jarg6_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg6 = *(giac::context **)&jarg6; 
  result = (bool)giac::intgab((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,*arg5,arg6);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_singular(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::singular((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1singular(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_singular((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_complex_1subst_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::complex_subst((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,(giac::vecteur const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_complex_1subst_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::complex_subst((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_lvarxwithinv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::lvarxwithinv((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_is_1constant_1wrt(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = (bool)giac::is_constant_wrt((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_is_1linear_1wrt(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = (bool)giac::is_linear_wrt((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3,*arg4,arg5);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_is_1quadratic_1wrt(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_, jlong jarg6, jobject jarg6_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  giac::context *arg6 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  (void)jarg6_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg6 = *(giac::context **)&jarg6; 
  result = (bool)giac::is_quadratic_wrt((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3,*arg4,*arg5,arg6);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_lnabs(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::lnabs((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_surd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::surd((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1surd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_surd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_invexptoexpneg(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::invexptoexpneg((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_is_1rewritable_1as_1f_1of(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = (bool)giac::is_rewritable_as_f_of((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3,(giac::gen const &)*arg4,arg5);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_intgab_1ratfrac(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = (bool)giac::intgab_ratfrac((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3,arg4);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_integrate_1gen_1rem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::integrate_gen_rem((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_integrate_1id_1rem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::integrate_id_rem((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_linear_1integrate(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::linear_integrate((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_integrate_1id(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::identificateur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::identificateur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::identificateur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::integrate_id((giac::gen const &)*arg1,(giac::identificateur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_integrate_1gen(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::integrate_gen((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1integrate(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_integrate((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jdouble JNICALL Java_javagiac_giacJNI_rombergo(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jint jarg5, jlong jarg6, jobject jarg6_) {
  jdouble jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  int arg5 ;
  giac::context *arg6 = (giac::context *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg6_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = (int)jarg5; 
  arg6 = *(giac::context **)&jarg6; 
  result = (double)giac::rombergo((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5,arg6);
  jresult = (jdouble)result; 
  return jresult;
}


SWIGEXPORT jdouble JNICALL Java_javagiac_giacJNI_rombergt(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jint jarg5, jlong jarg6, jobject jarg6_) {
  jdouble jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  int arg5 ;
  giac::context *arg6 = (giac::context *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg6_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = (int)jarg5; 
  arg6 = *(giac::context **)&jarg6; 
  result = (double)giac::rombergt((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5,arg6);
  jresult = (jdouble)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1romberg(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_romberg((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sum_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::sum((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sum_1loop(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jint jarg3, jint jarg4, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  int arg3 ;
  int arg4 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = (int)jarg3; 
  arg4 = (int)jarg4; 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::sum_loop((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3,arg4,arg5);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sum_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::sum((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sum(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sum((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Sum(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Sum((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1bernoulli(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_bernoulli((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_seqprod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::seqprod((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1odesolve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_odesolve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_preval(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::preval((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ibpdv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ibpdv((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_fourier_1an(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_, jlong jarg6, jobject jarg6_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  giac::context *arg6 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  (void)jarg6_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg6 = *(giac::context **)&jarg6; 
  result = giac::fourier_an((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,(giac::gen const &)*arg5,arg6);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_fourier_1bn(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_, jlong jarg6, jobject jarg6_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  giac::context *arg6 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  (void)jarg6_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg6 = *(giac::context **)&jarg6; 
  result = giac::fourier_bn((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,(giac::gen const &)*arg5,arg6);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_fourier_1cn(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_, jlong jarg6, jobject jarg6_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  giac::context *arg6 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  (void)jarg6_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg6 = *(giac::context **)&jarg6; 
  result = giac::fourier_cn((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,(giac::gen const &)*arg5,arg6);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1fourier_1an(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_fourier_an((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1fourier_1bn(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_fourier_bn((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1fourier_1cn(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_fourier_cn((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1isom(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_isom((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mkisom(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mkisom((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_mkisom(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::mkisom((giac::gen const &)*arg1,arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_prod_1expand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::prod_expand((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_unlin(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::unlin(*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_convolution(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jlong jarg4, jlong jarg5, jobject jarg5_) {
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  giac::vecteur *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return ;
  } 
  arg4 = *(giac::vecteur **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return ;
  } 
  arg5 = *(giac::context **)&jarg5; 
  giac::convolution((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::vecteur const &)*arg3,*arg4,arg5);
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_lin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return ;
  } 
  arg3 = *(giac::context **)&jarg3; 
  giac::lin((giac::gen const &)*arg1,*arg2,arg3);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1lin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_lin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_lnexpand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::lnexpand((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tunlin(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tunlin(*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_tconvolution(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jlong jarg4, jlong jarg5, jobject jarg5_) {
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  giac::vecteur *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return ;
  } 
  arg4 = *(giac::vecteur **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return ;
  } 
  arg5 = *(giac::context **)&jarg5; 
  giac::tconvolution((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::vecteur const &)*arg3,*arg4,arg5);
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_tlin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return ;
  } 
  arg3 = *(giac::context **)&jarg3; 
  giac::tlin((giac::gen const &)*arg1,*arg2,arg3);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tlin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tlin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1texpand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_texpand((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_expand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::expand((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ln_1expand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::ln_expand((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_expexpand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::expexpand((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_trigexpand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::trigexpand((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1about(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_about((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1zip(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_zip((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1accumulate_1head_1tail(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_accumulate_head_tail((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1divide(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_divide((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ratnormal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ratnormal((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1inverse(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_inverse((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Inverse(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Inverse((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1igcdex(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_igcdex((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1gcdex(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_gcdex((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1revlist(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_revlist((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1restart(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_restart((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1restart_1modes(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_restart_modes((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1time(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_time((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cat((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pivot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pivot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rowspace(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rowspace((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1colspace(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_colspace((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1copy(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_copy((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1row(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_row((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1col(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_col((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1count_1sup(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_count_sup((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1count_1inf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_count_inf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1trunc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_trunc((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1evalc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_evalc((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1open(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_open((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1fopen(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_fopen((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1fprint(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_fprint((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1close(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_close((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1blockmatrix(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_blockmatrix((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1delcols(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_delcols((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1delrows(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_delrows((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1JordanBlock(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_JordanBlock((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1companion(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_companion((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1border(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_border((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pade(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pade((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1lhs(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_lhs((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rhs(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rhs((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1reverse_1rsolve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_reverse_rsolve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_fft(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::fft((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1fft(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_fft((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ifft(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ifft((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Resultant(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Resultant((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Nullspace(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Nullspace((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1assign(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_assign((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1implicitplot3d(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_implicitplot3d((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1readwav(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_readwav((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1writewav(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_writewav((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1animate(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_animate((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1animate3d(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_animate3d((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1even(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_even((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1odd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_odd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1writergb(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_writergb((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1readrgb(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_readrgb((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_product(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::polynome *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::polynome **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::polynome const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::product((giac::polynome const &)*arg1,(giac::vecteur const &)*arg2,(giac::gen const &)*arg3,*arg4,arg5);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1seqsolve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_seqsolve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rsolve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rsolve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1array(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_array((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1makemod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_makemod((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hexprint(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hexprint((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1octprint(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_octprint((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1binprint(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_binprint((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_cprint(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::cprint((giac::gen const &)*arg1,arg2);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mathml(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mathml((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1spread2mathml(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_spread2mathml((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_gen2mathml_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::gen2mathml((giac::gen const &)*arg1,arg2);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_gen2mathml_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  std::string *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(std::string **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "std::string & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::gen2mathml((giac::gen const &)*arg1,*arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_gen2svg(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::gen2svg((giac::gen const &)*arg1,arg2);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1scalar_1product(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_scalar_product((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1compare(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_compare((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1preval(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_preval((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1lagrange(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_lagrange((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1reorder(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_reorder((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1adjoint_1matrix(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_adjoint_matrix((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1equal2diff(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_equal2diff((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1equal2list(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_equal2list((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rank(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rank((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1csc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_csc((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1acsc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_acsc((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ibpu(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ibpu((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1changebase(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_changebase((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1epsilon2zero(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_epsilon2zero((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1suppress(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_suppress((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1valuation(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_valuation((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1degree(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_degree((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1lcoeff(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_lcoeff((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tcoeff(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tcoeff((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sqrfree(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sqrfree((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1truncate(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_truncate((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1canonical_1form(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_canonical_form((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1fcoeff(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_fcoeff((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1froot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_froot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1roots(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_roots((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1divpc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_divpc((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ptayl(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ptayl((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1dfc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_dfc((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1dfc2f(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_dfc2f((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1float2rational(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_float2rational((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1gramschmidt(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_gramschmidt((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pmin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pmin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1potential(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_potential((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1vpotential(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_vpotential((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1poly2symb(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_poly2symb((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1symb2poly(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_symb2poly((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1exp2trig(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_exp2trig((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1nrows(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_nrows((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ncols(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ncols((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1l2norm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_l2norm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1normalize(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_normalize((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1lgcd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_lgcd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1float(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_float((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hold(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hold((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1eigenvals(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_eigenvals((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Gcd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Gcd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Gcdex(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Gcdex((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Factor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Factor((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Rref(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Rref((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Rank(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Rank((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Det(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Det((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Quo(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Quo((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Rem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Rem((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Int(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Int((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1divisors(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_divisors((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1maxnorm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_maxnorm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1l1norm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_l1norm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1dotprod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_dotprod((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1diag(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_diag((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1input_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_input((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1textinput(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_textinput((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1primpart(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_primpart((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1content(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_content((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1coeff(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_coeff((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1chrem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_chrem((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1genpoly(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_genpoly((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1median(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_median((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1quartile1(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_quartile1((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1quartile3(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_quartile3((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1quantile(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_quantile((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1quartiles(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_quartiles((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1moustache(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_moustache((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mean(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mean((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1stdDev(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_stdDev((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1stddev(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_stddev((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1variance(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_variance((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1covariance_1correlation(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_covariance_correlation((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1covariance(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_covariance((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1correlation(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_correlation((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1interval2center(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_interval2center((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1linear_1regression(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_linear_regression((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1exponential_1regression(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_exponential_regression((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1power_1regression(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_power_regression((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_regression_1plot_1attributs(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  bool *arg3 = 0 ;
  bool *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return 0;
  } 
  arg3 = *(bool **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "bool & reference is null");
    return 0;
  } 
  arg4 = *(bool **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "bool & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::regression_plot_attributs((giac::gen const &)*arg1,*arg2,*arg3,*arg4,arg5);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1linear_1regression_1plot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_linear_regression_plot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1exponential_1regression_1plot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_exponential_regression_plot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1logarithmic_1regression_1plot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_logarithmic_regression_plot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1power_1regression_1plot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_power_regression_plot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1polynomial_1regression(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_polynomial_regression((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1polynomial_1regression_1plot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_polynomial_regression_plot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1logistic_1regression(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_logistic_regression((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1logistic_1regression_1plot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_logistic_regression_plot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1linear_1interpolate(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_linear_interpolate((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1parabolic_1interpolate(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_parabolic_interpolate((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1center2interval(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_center2interval((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1histogram(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_histogram((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cumulated_1frequencies(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cumulated_frequencies((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1classes(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_classes((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1listplot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_listplot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1scatterplot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_scatterplot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1polygonplot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_polygonplot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1polygonscatterplot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_polygonscatterplot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1diagramme_1batons(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_diagramme_batons((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1camembert(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_camembert((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_cross_1prod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::cross_prod((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1convexhull(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_convexhull((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1simplex_1reduce(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_simplex_reduce((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1spline(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_spline((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1bitand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_bitand((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1bitor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_bitor((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1bitxor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_bitxor((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hamdist(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hamdist((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plotarea(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plotarea((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1add_1language(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_add_language((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1remove_1language(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_remove_language((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1show_1language(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_show_language((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1os_1version(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_os_version((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gen2continued_1fraction(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::gen2continued_fraction((giac::gen const &)*arg1,arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_float2rational(JNIEnv *jenv, jclass jcls, jdouble jarg1, jdouble jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  double arg1 ;
  double arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  arg1 = (double)jarg1; 
  arg2 = (double)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::float2rational(arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sec(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sec((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1asec(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_asec((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1acot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_acot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1horner(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_horner((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1moyal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_moyal((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Airy_1Ai(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Airy_Ai((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Airy_1Bi(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Airy_Bi((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1randNorm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_randNorm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1randexp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_randexp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1UTPN(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_UTPN((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_UTPC(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::UTPC((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1UTPC(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_UTPC((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_UTPT(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::UTPT((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1UTPT(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_UTPT((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_UTPF(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::UTPF((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1UTPF(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_UTPF((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_binomial(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::binomial((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1binomial(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_binomial((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_binomial_1cdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::binomial_cdf((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1binomial_1cdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_binomial_cdf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_binomial_1icdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::binomial_icdf((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1binomial_1icdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_binomial_icdf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_poisson(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::poisson((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1poisson(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_poisson((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_poisson_1cdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::poisson_cdf((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1poisson_1cdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_poisson_cdf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_poisson_1icdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::poisson_icdf((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1poisson_1icdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_poisson_icdf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1normald(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_normald((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1normal_1cdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_normal_cdf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1normal_1icdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_normal_icdf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_student(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::student((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1student(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_student((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_student_1cdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::student_cdf((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1student_1cdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_student_cdf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_student_1icdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::student_icdf((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1student_1icdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_student_icdf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_chisquare(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::chisquare((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1chisquare(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_chisquare((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_chisquare_1cdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::chisquare_cdf((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1chisquare_1cdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_chisquare_cdf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_chisquare_1icdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::chisquare_icdf((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1chisquare_1icdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_chisquare_icdf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_snedecor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::snedecor((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1snedecor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_snedecor((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_snedecor_1cdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::snedecor_cdf((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1snedecor_1cdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_snedecor_cdf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_snedecor_1icdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::snedecor_icdf((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1snedecor_1icdf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_snedecor_icdf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Beta(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::Beta((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Beta(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Beta((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Bessel(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::Bessel((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1BesselI(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_BesselI((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1BesselJ(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_BesselJ((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1BesselK(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_BesselK((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1BesselY(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_BesselY((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1constants_1catalog(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_constants_catalog((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pari(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pari((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1trn(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_trn((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sizes(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sizes((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1permuorder(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_permuorder((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1randperm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_randperm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1is_1permu(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_is_permu((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1is_1cycle(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_is_cycle((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cycle2perm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cycle2perm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1p1op2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_p1op2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1c1oc2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_c1oc2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1c1op2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_c1op2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1p1oc2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_p1oc2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cycles2permu(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cycles2permu((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1permu2cycles(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_permu2cycles((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1perminv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_perminv((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cycleinv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cycleinv((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1signature(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_signature((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hilbert(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hilbert((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hadamard(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hadamard((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1syst2mat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_syst2mat((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1vandermonde(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_vandermonde((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1laplacian(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_laplacian((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hessian(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hessian((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1divergence(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_divergence((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1curl(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_curl((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1groupermu(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_groupermu((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1nextperm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_nextperm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1prevperm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_prevperm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1split(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_split((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sum_1riemann(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sum_riemann((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hermite(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hermite((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1laguerre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_laguerre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tchebyshev1(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tchebyshev1((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tchebyshev2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tchebyshev2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1legendre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_legendre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1permu2mat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_permu2mat((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_interpolyedre(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::interpolyedre((giac::vecteur const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_interdroitehyperplan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::interdroitehyperplan((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_interhyperplan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::interhyperplan((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_interhypersurfacecurve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::interhypersurfacecurve((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_inter2hypersurface(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::inter2hypersurface((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_interplansphere(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::interplansphere((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_hypersurface_1equation(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::hypersurface_equation((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plot3d(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plot3d((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hypersurface(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hypersurface((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hyperplan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hyperplan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cone(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cone((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1demi_1cone(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_demi_cone((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cylindre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cylindre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1perpendiculaire_1commune(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_perpendiculaire_commune((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1polyedre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_polyedre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1prisme(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_prisme((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1parallelepipede(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_parallelepipede((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pyramide(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pyramide((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tetraedre_1centre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tetraedre_centre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cube(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cube((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cube_1centre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cube_centre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1octaedre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_octaedre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1icosaedre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_icosaedre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1dodecaedre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_dodecaedre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1aretes(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_aretes((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1faces(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_faces((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hypersphere(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hypersphere((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sphere(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sphere((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1quadrique(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_quadrique((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1cospherique(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_cospherique((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_get_1point(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::get_point((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1point3d(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_point3d((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1point2d(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_point2d((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_mkrand2d3d(JNIEnv *jenv, jclass jcls, jint jarg1, jint jarg2, jlong jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  int arg1 ;
  int arg2 ;
  giac::gen (*arg3)(giac::gen const &,giac::context const *) = (giac::gen (*)(giac::gen const &,giac::context const *)) 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg4_;
  arg1 = (int)jarg1; 
  arg2 = (int)jarg2; 
  arg3 = *(giac::gen (**)(giac::gen const &,giac::context const *))&jarg3; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::mkrand2d3d(arg1,arg2,arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_droite_1by_1equation(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::droite_by_equation((giac::vecteur const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_point2abc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_, jlong jarg6, jobject jarg6_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  giac::context *arg6 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  (void)jarg6_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg6 = *(giac::context **)&jarg6; 
  result = (bool)giac::point2abc((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3,*arg4,*arg5,arg6);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_abs_1norm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::abs_norm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_abs_1norm2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::abs_norm2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_interpolygone(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::interpolygone((giac::vecteur const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_interdroitecercle(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::interdroitecercle((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_curveintercircle(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jboolean jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  bool arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = jarg3 ? true : false; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::curveintercircle((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3,arg4);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1avance(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_avance((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1recule(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_recule((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1position(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_position((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cap(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cap((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tourne_1droite(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tourne_droite((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tourne_1gauche(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tourne_gauche((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1leve_1crayon(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_leve_crayon((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1baisse_1crayon(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_baisse_crayon((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ecris(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ecris((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1signe(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_signe((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1saute(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_saute((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pas_1de_1cote(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pas_de_cote((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cache_1tortue(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cache_tortue((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1montre_1tortue(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_montre_tortue((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1debut_1enregistrement(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_debut_enregistrement((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1fin_1enregistrement(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_fin_enregistrement((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1repete(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_repete((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1crayon(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_crayon((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1efface(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_efface((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1vers(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_vers((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rond(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rond((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1disque(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_disque((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1disque_1centre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_disque_centre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1polygone_1rempli(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_polygone_rempli((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rectangle_1plein(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rectangle_plein((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1triangle_1plein(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_triangle_plein((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1dessine_1tortue(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_dessine_tortue((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1arc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_arc((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_plotpreprocess(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::plotpreprocess((giac::gen const &)*arg1,arg2);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_chk_1double_1interval(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jlong jarg4, jobject jarg4_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  double *arg2 = 0 ;
  double *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(double **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "double & reference is null");
    return 0;
  } 
  arg3 = *(double **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "double & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = (bool)giac::chk_double_interval((giac::gen const &)*arg1,*arg2,*arg3,arg4);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_ck_1parameter(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::context **)&jarg2; 
  giac::ck_parameter((giac::gen const &)*arg1,arg2);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1erase3d(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_erase3d((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_rewrite_1with_1t_1real(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg3 = *(giac::context **)&jarg3; 
  giac::rewrite_with_t_real(*arg1,(giac::gen const &)*arg2,arg3);
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_on(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = (bool)giac::on((giac::gen const &)*arg1,(giac::gen const &)*arg2,*arg3,arg4);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_plotcontour(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::plotcontour((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1aire(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_aire((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1perimetre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_perimetre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plotfunc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plotfunc((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1erase(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_erase((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pixon(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pixon((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pixoff(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pixoff((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1droite(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_droite((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1slope(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_slope((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1demi_1droite(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_demi_droite((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1segment(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_segment((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_symb_1segment(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jint jarg4, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  int arg4 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg4 = (int)jarg4; 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::symb_segment((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::vecteur const &)*arg3,arg4,arg5);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_symb_1pnt_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::symb_pnt_name((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_symb_1pnt_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::symb_pnt((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_pnt_1attrib(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::pnt_attrib((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_symb_1pnt_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::symb_pnt((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pnt(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pnt((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1animation(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_animation((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1point(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_point((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1affixe(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_affixe((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1abscisse(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_abscisse((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ordonnee(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ordonnee((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cote(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cote((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1coordonnees(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_coordonnees((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1coordonnees_1polaires(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_coordonnees_polaires((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1coordonnees_1rectangulaires(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_coordonnees_rectangulaires((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1point_1polaire(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_point_polaire((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cercle(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cercle((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_centre_1rayon(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jboolean jarg4, jlong jarg5, jobject jarg5_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  bool arg4 ;
  giac::context *arg5 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = jarg4 ? true : false; 
  arg5 = *(giac::context **)&jarg5; 
  result = (bool)giac::centre_rayon((giac::gen const &)*arg1,*arg2,*arg3,arg4,arg5);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1centre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_centre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rayon(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rayon((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1milieu(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_milieu((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mediatrice(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mediatrice((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_bissectrice(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::bissectrice((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1bissectrice(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_bissectrice((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1exbissectrice(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_exbissectrice((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mediane(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mediane((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1circonscrit(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_circonscrit((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1orthocentre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_orthocentre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1inscrit(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_inscrit((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1exinscrit(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_exinscrit((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1isobarycentre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_isobarycentre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1barycentre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_barycentre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_perpendiculaire(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::perpendiculaire((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1perpendiculaire(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_perpendiculaire((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1orthogonal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_orthogonal((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1parallele(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_parallele((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_distance2pp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::distance2pp((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_distance2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::distance2((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1longueur2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_longueur2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1longueur(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_longueur((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1angle(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_angle((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_scalar_1product(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::scalar_product((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_projection_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::projection((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_projection_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::projection((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_parameter2point(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::parameter2point((giac::vecteur const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_cercle2curve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::cercle2curve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_inter(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::inter((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1click(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_click((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1element(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_element((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1as_1function_1of(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_as_function_of((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1lieu(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_lieu((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1head(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_head((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tail(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tail((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sommets(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sommets((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sommets_1abca(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sommets_abca((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1symetrie(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_symetrie((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rotation(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rotation((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1projection(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_projection((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1homothetie(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_homothetie((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1coplanaire(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_coplanaire((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1aligne(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_aligne((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1cocyclique(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_cocyclique((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1parallele(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_parallele((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1perpendiculaire(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_perpendiculaire((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1element(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_element((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1inversion(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_inversion((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1similitude(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_similitude((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_translation(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::translation((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1translation(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_translation((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1curve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_curve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plotparam(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plotparam((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plotpolar(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plotpolar((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1parameq(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_parameq((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1equation(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_equation((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_equation_1homogene(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::equation_homogene((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tangent(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tangent((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ellipse(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ellipse((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hyperbole(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hyperbole((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1parabole(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_parabole((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1conique(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_conique((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1legende(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_legende((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1distanceat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_distanceat((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1distanceatraw(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_distanceatraw((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1areaatraw(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_areaatraw((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1areaat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_areaat((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1slopeatraw(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_slopeatraw((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1slopeat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_slopeat((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1perimeterat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_perimeterat((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1perimeteratraw(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_perimeteratraw((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1extract_1measure(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_extract_measure((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1angleat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_angleat((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1angleatraw(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_angleatraw((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1couleur(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_couleur((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1parameter(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_parameter((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hauteur(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hauteur((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1triangle(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_triangle((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1triangle_1rectangle(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_triangle_rectangle((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1triangle_1isocele(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_triangle_isocele((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1triangle_1equilateral(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_triangle_equilateral((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1parallelogramme(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_parallelogramme((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1isopolygone(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_isopolygone((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1carre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_carre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hexagone(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hexagone((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1quadrilatere(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_quadrilatere((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rectangle(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rectangle((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1losange(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_losange((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1polygone(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_polygone((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1polygone_1ouvert(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_polygone_ouvert((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plotfield(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plotfield((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1interactive_1plotode(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_interactive_plotode((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plotode(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plotode((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_archive_1session(JNIEnv *jenv, jclass jcls, jboolean jarg1, jstring jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  bool arg1 ;
  std::string *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  arg1 = jarg1 ? true : false; 
  if(!jarg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return 0;
  }
  const char *arg2_pstr = (const char *)jenv->GetStringUTFChars(jarg2, 0); 
  if (!arg2_pstr) return 0;
  std::string arg2_str(arg2_pstr);
  arg2 = &arg2_str;
  jenv->ReleaseStringUTFChars(jarg2, arg2_pstr); 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::archive_session(arg1,(std::string const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_unarchive_1session_1string(JNIEnv *jenv, jclass jcls, jstring jarg1, jint jarg2, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  std::string *arg1 = 0 ;
  int arg2 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  (void)jarg4_;
  if(!jarg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return 0;
  }
  const char *arg1_pstr = (const char *)jenv->GetStringUTFChars(jarg1, 0); 
  if (!arg1_pstr) return 0;
  std::string arg1_str(arg1_pstr);
  arg1 = &arg1_str;
  jenv->ReleaseStringUTFChars(jarg1, arg1_pstr); 
  arg2 = (int)jarg2; 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::unarchive_session_string((std::string const &)*arg1,arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1unarchive(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_unarchive((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1xyztrange(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_xyztrange((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1switch_1axes(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_switch_axes((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plotseq(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plotseq((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plotimplicit(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plotimplicit((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plotcontour(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plotcontour((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plotinequation(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plotinequation((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1inter_1droite(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_inter_droite((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1dot_1paper(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_dot_paper((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1grid_1paper(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_grid_paper((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1triangle_1paper(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_triangle_paper((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1line_1paper(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_line_paper((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1bitmap(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_bitmap((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Pictsize(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Pictsize((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plot_1style(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plot_style((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1DrawInv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_DrawInv((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Graph(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Graph((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1DrwCtour(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_DrwCtour((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_est_1isocele(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = (int)giac::est_isocele((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1isocele(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_isocele((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_est_1equilateral(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = (bool)giac::est_equilateral((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1equilateral(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_equilateral((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_est_1carre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = (bool)giac::est_carre((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1carre(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_carre((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_est_1losange(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = (int)giac::est_losange((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1losange(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_losange((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_est_1parallelogramme(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = (int)giac::est_parallelogramme((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1parallelogramme(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_parallelogramme((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_est_1rect(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = (int)giac::est_rect((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1rectangle(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_rectangle((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1harmonique(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_harmonique((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1div_1harmonique(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_div_harmonique((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1point_1div(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_point_div((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1birapport(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_birapport((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1conj_1harmonique(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_conj_harmonique((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1puissance(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_puissance((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1axe_1radical(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_axe_radical((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1polaire(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_polaire((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pole(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pole((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1polaire_1reciproque(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_polaire_reciproque((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1orthogonal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_orthogonal((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1conjugue(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_conjugue((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1faisceau_1cercle(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_faisceau_cercle((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1est_1faisceau_1droite(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_est_faisceau_droite((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_est_1faisceau_1droite(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = (int)giac::est_faisceau_droite((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1enveloppe(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_enveloppe((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_put_1attributs(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::put_attributs((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_est_1aligne(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = (int)giac::est_aligne((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_est_1coplanaire(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = (bool)giac::est_coplanaire((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_est_1cocyclique(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = (bool)giac::est_cocyclique((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_est_1parallele(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = (bool)giac::est_parallele((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_est_1perpendiculaire(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = (bool)giac::est_perpendiculaire((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_est_1element(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = (int)giac::est_element((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_est_1trianglerect(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = (int)giac::est_trianglerect((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_est_1orthogonal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = (bool)giac::est_orthogonal((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_est_1harmonique(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = (bool)giac::est_harmonique((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1vector(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_vector((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Ox_12d_1unit_1vector(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Ox_2d_unit_vector((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Oy_12d_1unit_1vector(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Oy_2d_unit_vector((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1frame_12d(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_frame_2d((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Ox_13d_1unit_1vector(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Ox_3d_unit_vector((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Oy_13d_1unit_1vector(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Oy_3d_unit_vector((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Oz_13d_1unit_1vector(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Oz_3d_unit_vector((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1frame_13d(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_frame_3d((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_increment_1instruction(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::context **)&jarg2; 
  giac::increment_instruction((giac::gen const &)*arg1,arg2);
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_check_1local_1assign(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::check_local_assign((giac::gen const &)*arg1,arg2);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_quote_1program(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::quote_program((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1program(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::_program((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_adjust_1sst_1at(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::context **)&jarg2; 
  giac::adjust_sst_at((giac::gen const &)*arg1,arg2);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1bloc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_bloc((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_printasfor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  char *arg2 = (char *) 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = *(giac::context **)&jarg3; 
  result = giac::printasfor((giac::gen const &)*arg1,(char const *)arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_printasifte(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  char *arg2 = (char *) 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = *(giac::context **)&jarg3; 
  result = giac::printasifte((giac::gen const &)*arg1,(char const *)arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ifte(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ifte((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1evalb(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_evalb((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1when(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_when((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1for(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_for((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1local(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_local((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1try_1catch(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_try_catch((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1check_1type(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_check_type((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1type(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_type((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1nop(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_nop((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1feuille(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_feuille((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1maple_1op(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_maple_op((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sommet(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sommet((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_subsop_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::subsop((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_subsop_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::subsop((giac::vecteur const &)*arg1,(giac::vecteur const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1maple_1subsop(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_maple_subsop((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1subsop(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_subsop((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1append(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_append((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1prepend(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_prepend((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_concat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::concat((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1concat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_concat((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1contains(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_contains((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1select(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_select((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1remove(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_remove((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1option(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_option((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1case(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_case((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rand((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_rand_1interval(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::rand_interval((giac::vecteur const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1srand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_srand((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1char(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_char((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1asc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_asc((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1map(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_map((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1apply(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_apply((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1makelist(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_makelist((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1interval(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_interval((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1comment(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_comment((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1throw(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_throw((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1union(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_union((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1intersect(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_intersect((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1inter(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_inter((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1minus(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_minus((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1dollar(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_dollar((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1makemat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_makemat((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1compose(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_compose((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1composepow(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_composepow((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1has(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_has((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1args(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_args((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1lname(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_lname((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1halt(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_halt((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1kill(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_kill((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cont(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cont((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sst(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sst((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sst_1in(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sst_in((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1debug(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_debug((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1watch(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_watch((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rmwatch(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rmwatch((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1breakpoint(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_breakpoint((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rmbreakpoint(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rmbreakpoint((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_debug_1loop(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg2 = *(giac::context **)&jarg2; 
  giac::debug_loop(*arg1,arg2);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1backquote(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_backquote((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1double_1deux_1points(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_double_deux_points((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1maple2mupad(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_maple2mupad((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1maple2xcas(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_maple2xcas((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mupad2maple(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mupad2maple((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mupad2xcas(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mupad2xcas((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pwd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pwd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1scientific_1format(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_scientific_format((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1integer_1format(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_integer_format((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_giac_1eval_1level(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::giac_eval_level((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1prog_1eval_1level(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_prog_eval_level((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1with_1sqrt(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_with_sqrt((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1xcas_1mode(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_xcas_mode((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1all_1trig_1solutions(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_all_trig_solutions((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ntl_1on(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ntl_on((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1complex_1mode(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_complex_mode((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1angle_1radian(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_angle_radian((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1epsilon(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_epsilon((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1proba_1epsilon(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_proba_epsilon((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1complex_1variables(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_complex_variables((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1approx_1mode(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_approx_mode((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1threads(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_threads((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1threads_1allowed(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_threads_allowed((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mpzclass_1allowed(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mpzclass_allowed((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cas_1setup(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cas_setup((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Digits(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Digits((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1insmod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_insmod((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1xport(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_xport((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rmmod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rmmod((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1lsmod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_lsmod((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1virgule(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_virgule((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sort(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sort((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ans(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ans((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1quest(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_quest((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1convert(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_convert((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1deuxpoints(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_deuxpoints((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_quote_1read(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::quote_read((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1read(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_read((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1write(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_write((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1save_1history(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_save_history((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1findhelp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_findhelp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1member(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_member((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tablefunc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tablefunc((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tableseq(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tableseq((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_protecteval(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::protecteval((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1unapply(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_unapply((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1makevector(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_makevector((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1matrix(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_matrix((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1makesuite(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_makesuite((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1break(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_break((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1continue(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_continue((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1label(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_label((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1goto(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_goto((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tilocal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tilocal((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_inputform_1post_1analysis(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::inputform_post_analysis((giac::vecteur const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_inputform_1pre_1analysis(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::inputform_pre_analysis((giac::gen const &)*arg1,arg2);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1inputform(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_inputform((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1choosebox(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_choosebox((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1output(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_output((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1input_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::_input((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_printastifunction(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  char *arg2 = (char *) 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = *(giac::context **)&jarg3; 
  result = giac::printastifunction((giac::gen const &)*arg1,(char const *)arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Dialog(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Dialog((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Title(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Title((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Text(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Text((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Request(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Request((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1DropDown(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_DropDown((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Popup(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Popup((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1expr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_expr((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1string(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_string((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1part(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_part((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Pause(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Pause((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Row(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Row((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Col(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Col((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pointprod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pointprod((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pointdivision(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pointdivision((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pointpow(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pointpow((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pourcent(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pourcent((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hash(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hash((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1interactive(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_interactive((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_printassuffix(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  char *arg2 = (char *) 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = *(giac::context **)&jarg3; 
  result = giac::printassuffix((giac::gen const &)*arg1,(char const *)arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ti_1semi(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ti_semi((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_widget_1size(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::widget_size((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_keyboard(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::keyboard((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_current_1sheet(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::current_sheet((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_window_1switch(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::window_switch((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_maple_1lib(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::maple_lib((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_maple_1root(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::maple_root((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_symb_1unit(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::symb_unit((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_printasDigits(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  char *arg2 = (char *) 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = *(giac::context **)&jarg3; 
  result = giac::printasDigits((giac::gen const &)*arg1,(char const *)arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_user_1operator(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::user_operator((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SetFold(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SetFold((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_simplifier(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::simplifier((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1simplifier(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_simplifier((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_mksa_1reduce(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::mksa_reduce((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_find_1or_1make_1symbol(JNIEnv *jenv, jclass jcls, jstring jarg1, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  std::string *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  if(!jarg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null std::string");
    return 0;
  }
  const char *arg1_pstr = (const char *)jenv->GetStringUTFChars(jarg1, 0); 
  if (!arg1_pstr) return 0;
  std::string arg1_str(arg1_pstr);
  arg1 = &arg1_str;
  jenv->ReleaseStringUTFChars(jarg1, arg1_pstr); 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::find_or_make_symbol((std::string const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_mksa_1convert(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::mksa_convert((giac::gen const &)*arg1,arg2);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ufactor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ufactor((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1usimplify(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_usimplify((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1piecewise(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_piecewise((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_when2piecewise(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::when2piecewise((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_when2sign(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::when2sign((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_piecewise2when(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::piecewise2when((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1geo2d(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_geo2d((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_printasinnerbloc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::printasinnerbloc((giac::gen const &)*arg1,arg2);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_symb_1local_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::symb_local((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_symb_1local_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::symb_local((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_symb_1check_1type(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::symb_check_type((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1quaternion(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_quaternion((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_risch(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::identificateur *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::identificateur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::identificateur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::risch((giac::gen const &)*arg1,(giac::identificateur const &)*arg2,*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1risch(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_risch((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_printasconstant(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  char *arg2 = (char *) 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = *(giac::context **)&jarg3; 
  result = giac::printasconstant((giac::gen const &)*arg1,(char const *)arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rpn(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rpn((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1alg(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_alg((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1PERCENT(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_PERCENT((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ROLL(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ROLL((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ROLLD(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ROLLD((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SWAP(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SWAP((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1DUP(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_DUP((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1OVER(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_OVER((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1PICK(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_PICK((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1DROP(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_DROP((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1NOP(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_NOP((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1IFTE(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_IFTE((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1RPN_1LOCAL(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_RPN_LOCAL((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1RPN_1FOR(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_RPN_FOR((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1RPN_1WHILE(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_RPN_WHILE((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1RPN_1UNTIL(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_RPN_UNTIL((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1RPN_1CASE(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_RPN_CASE((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1RCL(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_RCL((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1VARS(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_VARS((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1purge(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_purge((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rpn_1prog(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rpn_prog((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_rpn_1eval(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::rpn_eval((giac::gen const &)*arg1,*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1division(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_division((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1binary_1minus(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_binary_minus((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hp38(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hp38((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ABS(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ABS((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1MODULO(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_MODULO((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1RANDOM(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_RANDOM((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1MAXREAL(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_MAXREAL((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1MINREAL(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_MINREAL((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1EXPM1(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_EXPM1((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1LNP1(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_LNP1((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ADDROW(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ADDROW((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ADDCOL(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ADDCOL((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SCALE(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SCALE((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SCALEADD(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SCALEADD((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SWAPCOL(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SWAPCOL((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SUB(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SUB((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1RANDMAT(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_RANDMAT((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1REDIM(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_REDIM((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1REPLACE(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_REPLACE((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1EIGENVAL(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_EIGENVAL((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1EIGENVV(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_EIGENVV((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SIZE(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SIZE((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1INT(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_INT((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1HPDIFF(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_HPDIFF((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1HPINT(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_HPINT((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1HPSUM(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_HPSUM((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1TAYLOR(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_TAYLOR((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1POLYFORM(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_POLYFORM((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1IS_1LINEAR(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_IS_LINEAR((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SVD(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SVD((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SVL(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SVL((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SPECRAD(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SPECRAD((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SPECNORM(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SPECNORM((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1COND(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_COND((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SCHUR(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SCHUR((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1LQ(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_LQ((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1LU(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_LU((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1QR(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_QR((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1XPON(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_XPON((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1MANT(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_MANT((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1HMSX(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_HMSX((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1XHMS(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_XHMS((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1DEGXRAD(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_DEGXRAD((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1RADXDEG(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_RADXDEG((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1PERCENTCHANGE(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_PERCENTCHANGE((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1PERCENTTOTAL(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_PERCENTTOTAL((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ITERATE(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ITERATE((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1MAKEMAT(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_MAKEMAT((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1LSQ(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_LSQ((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1isprime(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_isprime((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1numer(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_numer((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1denom(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_denom((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1NTHROOT(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_NTHROOT((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Ans(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Ans((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1VIEWS(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_VIEWS((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_qualify(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return ;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg4 = *(giac::context **)&jarg4; 
  giac::qualify(*arg1,(giac::vecteur const &)*arg2,(giac::gen const &)*arg3,arg4);
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_seqapp_1prepare_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jlong jarg4, jobject jarg4_, jint jarg5) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  int arg5 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  arg5 = (int)jarg5; 
  result = (int)giac::seqapp_prepare((giac::gen const &)*arg1,*arg2,*arg3,arg4,arg5);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT jint JNICALL Java_javagiac_giacJNI_seqapp_1prepare_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jlong jarg4, jobject jarg4_) {
  jint jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = (int)giac::seqapp_prepare((giac::gen const &)*arg1,*arg2,*arg3,arg4);
  jresult = (jint)result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_lcmdeno(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  giac::vecteur *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return ;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg3 = *(giac::context **)&jarg3; 
  giac::lcmdeno(*arg1,*arg2,arg3);
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_series(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::series((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,(giac::gen const &)*arg4,arg5);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1series(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_series((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1revert(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_revert((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1bounded_1function(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_bounded_function((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_bounded_1function(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = giac::bounded_function(arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_limit(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_, jint jarg4, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::identificateur *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  int arg4 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::identificateur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::identificateur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = (int)jarg4; 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::limit((giac::gen const &)*arg1,(giac::identificateur const &)*arg2,(giac::gen const &)*arg3,arg4,arg5);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1limit(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_limit((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1euler_1mac_1laurin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_euler_mac_laurin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_convert_1to_1euler_1mac_1laurin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::identificateur *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::identificateur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::identificateur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = (bool)giac::convert_to_euler_mac_laurin((giac::gen const &)*arg1,(giac::identificateur const &)*arg2,*arg3,arg4);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_find_1singularities(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jint jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::identificateur *arg2 = 0 ;
  int arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::identificateur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::identificateur const & reference is null");
    return 0;
  } 
  arg3 = (int)jarg3; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::find_singularities((giac::gen const &)*arg1,(giac::identificateur const &)*arg2,arg3,arg4);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_solve_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jint jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::identificateur *arg2 = 0 ;
  int arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::identificateur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::identificateur const & reference is null");
    return 0;
  } 
  arg3 = (int)jarg3; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::solve((giac::gen const &)*arg1,(giac::identificateur const &)*arg2,arg3,arg4);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_solve_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jint jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  int arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = (int)jarg3; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::solve((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3,arg4);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_solve_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jint jarg4, jlong jarg5, jobject jarg5_) {
  giac::gen *arg1 = 0 ;
  giac::identificateur *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  int arg4 ;
  giac::context *arg5 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::identificateur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::identificateur const & reference is null");
    return ;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return ;
  } 
  arg4 = (int)jarg4; 
  arg5 = *(giac::context **)&jarg5; 
  giac::solve((giac::gen const &)*arg1,(giac::identificateur const &)*arg2,*arg3,arg4,arg5);
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_in_1solve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jint jarg4, jlong jarg5, jobject jarg5_) {
  giac::gen *arg1 = 0 ;
  giac::identificateur *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  int arg4 ;
  giac::context *arg5 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::identificateur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::identificateur const & reference is null");
    return ;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return ;
  } 
  arg4 = (int)jarg4; 
  arg5 = *(giac::context **)&jarg5; 
  giac::in_solve((giac::gen const &)*arg1,(giac::identificateur const &)*arg2,*arg3,arg4,arg5);
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_modpolyroot(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_, jlong jarg3, jboolean jarg4, jlong jarg5, jobject jarg5_) {
  jboolean jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  bool arg4 ;
  giac::context *arg5 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  (void)jarg5_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return 0;
  } 
  arg4 = jarg4 ? true : false; 
  arg5 = *(giac::context **)&jarg5; 
  result = (bool)giac::modpolyroot((giac::vecteur const &)*arg1,(giac::gen const &)*arg2,*arg3,arg4,arg5);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_solvepostprocess(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::solvepostprocess((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1solve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_solve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_in_1fsolve(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::in_fsolve(*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1fsolve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_fsolve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1linsolve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_linsolve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1newton(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_newton((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1greduce(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_greduce((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1gbasis(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_gbasis((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1in_1ideal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_in_ideal((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_solvepreprocess(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::solvepreprocess((giac::gen const &)*arg1,arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_checkanglemode(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
  jlong jresult = 0 ;
  giac::context *arg1 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  arg1 = *(giac::context **)&jarg1; 
  result = giac::checkanglemode(arg1);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_degtorad(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::degtorad((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_radtodeg(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::radtodeg((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_subst_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jboolean jarg4, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  bool arg4 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg5_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = jarg4 ? true : false; 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::subst((giac::vecteur const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4,arg5);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_subst_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jboolean jarg4, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  bool arg4 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = jarg4 ? true : false; 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::subst((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4,arg5);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_subst_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jboolean jarg4, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  bool arg4 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg4 = jarg4 ? true : false; 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::subst((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,(giac::vecteur const &)*arg3,arg4,arg5);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_quotesubst(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::quotesubst((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::gen const &)*arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_halftan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::halftan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1halftan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_halftan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_shift_1phase(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::shift_phase((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1shift_1phase(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_shift_phase((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_hyp2exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::hyp2exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hyp2exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hyp2exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sincos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::sincos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sincos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sincos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_trig2exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::trig2exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1trig2exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_trig2exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_halftan_1hyp2exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::halftan_hyp2exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1halftan_1hyp2exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_halftan_hyp2exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_rewrite_1hyper(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::rewrite_hyper((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_asin2acos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::asin2acos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1asin2acos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_asin2acos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_asin2atan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::asin2atan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1asin2atan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_asin2atan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_acos2asin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::acos2asin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1acos2asin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_acos2asin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_acos2atan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::acos2atan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1acos2atan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_acos2atan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_atan2acos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::atan2acos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1atan2acos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_atan2acos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_atan2asin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::atan2asin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1atan2asin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_atan2asin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_as_1linear_1combination(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::as_linear_combination((giac::gen const &)*arg1,*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tsimplify_1noexpln(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jint jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  int arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = (int)jarg3; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::tsimplify_noexpln((giac::gen const &)*arg1,arg2,arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tsimplify_1common(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tsimplify_common((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tsimplify(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tsimplify((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tsimplify(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tsimplify((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_simplify_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::simplify((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_trigcos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::trigcos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1trigcos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_trigcos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_trigsin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::trigsin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1trigsin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_trigsin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_trigtan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::trigtan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1trigtan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_trigtan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tan2sincos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tan2sincos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tan2sincos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tan2sincos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tan2sincos2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tan2sincos2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tan2sincos2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tan2sincos2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tan2cossin2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tan2cossin2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tan2cossin2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tan2cossin2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tcollect(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tcollect((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tcollect(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tcollect((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_lncollect(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::lncollect((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1lncollect(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_lncollect((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1powexpand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_powexpand((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_powexpand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::powexpand((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_exp2pow(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::exp2pow((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1exp2pow(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_exp2pow((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pow2exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pow2exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_pow2expln_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::pow2expln((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_simplifyfactorial(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::simplifyfactorial((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_pow2expln_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::identificateur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::identificateur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::identificateur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::pow2expln((giac::gen const &)*arg1,(giac::identificateur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gamma2factorial(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::gamma2factorial((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_gammatofactorial(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::gammatofactorial((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_factorial2gamma(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::factorial2gamma((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_factorialtogamma(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::factorialtogamma((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_factor_1xn_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::factor_xn((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_factor_1xn_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::factor_xn((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1factor_1xn(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_factor_xn((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Heavisidetosign(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::Heavisidetosign((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Heavisidetosign(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Heavisidetosign((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_expln2trig(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::expln2trig((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mult_1conjugate(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mult_conjugate((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mult_1c_1conjugate(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mult_c_conjugate((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sin2tan2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::sin2tan2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_cos2tan2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::cos2tan2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tan2tan2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tan2tan2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sinh2exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::sinh2exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_cosh2exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::cosh2exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tanh2exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tanh2exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_inv_1test_1exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::inv_test_exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sin2exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::sin2exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_cos2exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::cos2exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tan2exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tan2exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_exp2sincos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::exp2sincos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tantosincos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tantosincos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tantosincos2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tantosincos2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tantocossin2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tantocossin2((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_asintoacos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::asintoacos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_acostoasin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::acostoasin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_asintoatan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::asintoatan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_atantoasin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::atantoasin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_acostoatan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::acostoatan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_atantoacos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::atantoacos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_trigcospow(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::trigcospow((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_trigsinpow(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::trigsinpow((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_trigtanpow(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::trigtanpow((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_powtopowexpand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::powtopowexpand((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_exptopower(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::exptopower((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_asin2ln(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::asin2ln((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_acos2ln(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::acos2ln((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_atan2ln(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::atan2ln((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_guess_1program(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = (bool)giac::guess_program(*arg1,arg2);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_normal_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::normal((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_normal_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::normal((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_normalize_1sqrt(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::normalize_sqrt((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_recursive_1normal_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::recursive_normal((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1recursive_1normal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_recursive_normal((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_recursive_1normal_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::recursive_normal((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_factor_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::factor((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ratfactor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::ratfactor((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_factor_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jboolean jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  bool arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = jarg3 ? true : false; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::factor((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1collect(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_collect((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_factorcollect(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::factorcollect((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_partfrac_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jboolean jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  bool arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = jarg3 ? true : false; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::partfrac((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_partfrac_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::partfrac((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_partfrac_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jboolean jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::identificateur *arg2 = 0 ;
  bool arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::identificateur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::identificateur const & reference is null");
    return 0;
  } 
  arg3 = jarg3 ? true : false; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::partfrac((giac::gen const &)*arg1,(giac::identificateur const &)*arg2,arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_partfrac_1_1SWIG_13(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jboolean jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  bool arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = jarg3 ? true : false; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::partfrac((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1partfrac(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_partfrac((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1resultant(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_resultant((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_cklvar(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::cklvar((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ckalgvar(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::ckalgvar((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_sym2r_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jlong jarg4, jlong jarg5, jlong jarg6, jint jarg7, jlong jarg8, jobject jarg8_, jlong jarg9, jobject jarg9_, jlong jarg10, jobject jarg10_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  giac::vecteur *arg4 = 0 ;
  giac::vecteur *arg5 = 0 ;
  giac::vecteur *arg6 = 0 ;
  int arg7 ;
  giac::gen *arg8 = 0 ;
  giac::gen *arg9 = 0 ;
  giac::context *arg10 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg8_;
  (void)jarg9_;
  (void)jarg10_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg4 = *(giac::vecteur **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg5 = *(giac::vecteur **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg6 = *(giac::vecteur **)&jarg6;
  if(!arg6) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg7 = (int)jarg7; 
  arg8 = *(giac::gen **)&jarg8;
  if(!arg8) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg9 = *(giac::gen **)&jarg9;
  if(!arg9) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg10 = *(giac::context **)&jarg10; 
  result = (bool)giac::sym2r((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::vecteur const &)*arg3,(giac::vecteur const &)*arg4,(giac::vecteur const &)*arg5,(giac::vecteur const &)*arg6,arg7,*arg8,*arg9,arg10);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_sym2r_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jint jarg3, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_, jlong jarg6, jobject jarg6_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  int arg3 ;
  giac::gen *arg4 = 0 ;
  giac::gen *arg5 = 0 ;
  giac::context *arg6 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg4_;
  (void)jarg5_;
  (void)jarg6_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = (int)jarg3; 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg6 = *(giac::context **)&jarg6; 
  result = (bool)giac::sym2r((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,arg3,*arg4,*arg5,arg6);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_e2r_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::e2r((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_e2r_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::e2r((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1e2r(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_e2r((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_r2sym_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::polynome *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  arg1 = *(giac::polynome **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::polynome const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::r2sym((giac::polynome const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_r2sym_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::r2sym((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_r2e_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::r2e((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_r2e_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::r2e((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1r2e(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_r2e((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_r2sym_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::fraction *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  arg1 = *(giac::fraction **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::fraction const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::r2sym((giac::fraction const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_r2sym_1_1SWIG_13(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::factorization *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  arg1 = *(giac::factorization **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::factorization const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::r2sym((giac::factorization const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_add_1print(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  std::string *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(std::string **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "std::string & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  {
    std::string &_result_ref = giac::add_print(*arg1,(giac::gen const &)*arg2,arg3);
    result = (std::string *) &_result_ref;
  }
  *(std::string **)&jresult = result; 
  return jresult;
}


SWIGEXPORT void JNICALL Java_javagiac_giacJNI_evalfdouble2reim(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::gen *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return ;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return ;
  } 
  arg5 = *(giac::context **)&jarg5; 
  giac::evalfdouble2reim((giac::gen const &)*arg1,*arg2,*arg3,*arg4,arg5);
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_gen2tex(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::gen2tex((giac::gen const &)*arg1,arg2);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_graph2tex(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::vecteur *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::vecteur **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::graph2tex((giac::gen const &)*arg1,(giac::vecteur const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1graph2tex(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_graph2tex((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1graph3d2tex(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_graph3d2tex((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1latex(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_latex((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1seq(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_seq((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1logb(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_logb((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1getType(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_getType((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Define(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Define((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Input(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Input((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1InputStr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_InputStr((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Prompt(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Prompt((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cSolve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cSolve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cFactor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cFactor((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cpartfrac(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cpartfrac((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1nSolve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_nSolve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1zeros(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_zeros((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cZeros(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cZeros((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1getDenom(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_getDenom((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1getNum(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_getNum((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tExpand(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tExpand((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1comDenom(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_comDenom((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1randPoly(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_randPoly((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1nInt(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_nInt((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1nDeriv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_nDeriv((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1avgRC(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_avgRC((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1fMin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_fMin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1fMax(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_fMax((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1taylor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_taylor((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1arcLen(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_arcLen((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1dim(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_dim((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1format(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_format((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1inString(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_inString((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1left(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_left((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1right(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_right((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mid(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mid((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ord(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ord((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rotate(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rotate((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1shift(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_shift((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1augment(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_augment((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1semi_1augment(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_semi_augment((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cumSum(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cumSum((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1exp2list(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_exp2list((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1list2mat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_list2mat((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1deltalist(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_deltalist((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mat2list(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mat2list((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1newList(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_newList((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1polyEval(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_polyEval((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1product(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_product((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SortA(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SortA((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SortD(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SortD((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1int(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_int((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1iPart(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_iPart((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Fill(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Fill((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mRow(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mRow((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1mRowAdd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_mRowAdd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rowAdd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rowAdd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rowSwap(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rowSwap((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1newMat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_newMat((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ref(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ref((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1subMat(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_subMat((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1unitV(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_unitV((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rowNorm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rowNorm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1colNorm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_colNorm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Archive(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Archive((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Unarchiv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Unarchiv((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ClrIO(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ClrIO((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Output(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Output((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1getKey(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_getKey((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1DelFold(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_DelFold((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1DispG(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_DispG((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1DispHome(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_DispHome((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Exec(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Exec((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1NewFold(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_NewFold((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1GetFold(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_GetFold((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1StoPic(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_StoPic((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1RclPic(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_RclPic((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1RplcPic(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_RplcPic((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ClrGraph(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ClrGraph((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1PtOn(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_PtOn((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1PtOff(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_PtOff((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Line(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Line((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1LineHorz(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_LineHorz((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1LineVert(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_LineVert((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1DrawSlp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_DrawSlp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Circle(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Circle((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1PtText(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_PtText((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1NewPic(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_NewPic((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ZoomSto(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ZoomSto((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ZoomRcl(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ZoomRcl((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1deSolve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_deSolve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1LineTan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_LineTan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1CyclePic(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_CyclePic((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1RandSeed(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_RandSeed((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_exact(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::exact((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_fPart(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::fPart((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_simult(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::simult((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1unarchive_1ti(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_unarchive_ti((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sialorssinon(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sialorssinon((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pour(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pour((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_printsommetasoperator(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  char *arg2 = (char *) 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = *(giac::context **)&jarg3; 
  result = giac::printsommetasoperator((giac::gen const &)*arg1,(char const *)arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_texprintsommetasoperator(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  char *arg2 = (char *) 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = *(giac::context **)&jarg3; 
  result = giac::texprintsommetasoperator((giac::gen const &)*arg1,(char const *)arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_taylor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jint jarg4, jlong jarg5, jobject jarg5_, jlong jarg6, jobject jarg6_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::unary_function_ptr *arg3 = 0 ;
  int arg4 ;
  giac::gen *arg5 = 0 ;
  giac::context *arg6 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg5_;
  (void)jarg6_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::unary_function_ptr **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::unary_function_ptr const & reference is null");
    return 0;
  } 
  arg4 = (int)jarg4; 
  arg5 = *(giac::gen **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg6 = *(giac::context **)&jarg6; 
  result = giac::taylor((giac::gen const &)*arg1,arg2,(giac::unary_function_ptr const &)*arg3,arg4,*arg5,arg6);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_apply(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::unary_function_ptr *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::unary_function_ptr **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::unary_function_ptr const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::apply((giac::gen const &)*arg1,(giac::unary_function_ptr const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_frac_1neg_1out(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::frac_neg_out((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1constant_1one(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_constant_one((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1constant_1zero(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_constant_zero((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rm_1a_1z(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rm_a_z((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1id(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_id((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1not(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_not((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1neg(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_neg((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1inv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_inv((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ln(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::ln((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_log(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::log((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_log10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::log10((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_alog10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::alog10((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_atan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::atan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_exp(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::exp((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_gen2string(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::gen2string((giac::gen const &)*arg1,arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_print_1with_1parenthesis_1if_1required(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::print_with_parenthesis_if_required((giac::gen const &)*arg1,arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sqrt_1noabs(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::sqrt_noabs((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sqrt(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::sqrt((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sqrt_1mod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jboolean jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  bool arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = jarg3 ? true : false; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::sqrt_mod((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::sin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_cos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::cos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_asin(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::asin((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_acos(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::acos((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sinh(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::sinh((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_cosh(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::cosh((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_tanh(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::tanh((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_asinh(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::asinh((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_acosh(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::acosh((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_atanh(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::atanh((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_quote(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::quote((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_unquote(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::unquote((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sign(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sign((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_order_1size(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::order_size((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1and(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_and((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ou(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ou((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1xor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_xor((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_xor2(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::xor2((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1min(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_min((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1max(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_max((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1gcd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_gcd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1lcm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_lcm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1egcd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_egcd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1iegcd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_iegcd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1iquo(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_iquo((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1irem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_irem((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1quote_1pow(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_quote_pow((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1iquorem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_iquorem((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1smod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_smod((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rdiv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rdiv((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1is_1prime(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_is_prime((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1is_1pseudoprime(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_is_pseudoprime((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_nextprime1(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::nextprime1((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_prevprime1(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::prevprime1((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1jacobi_1symbol(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_jacobi_symbol((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1legendre_1symbol(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_legendre_symbol((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1floor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_floor((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ceil(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ceil((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ceil2floor(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::ceil2floor((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1round(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_round((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1print(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_print((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ichinrem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ichinrem((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_double_1is_1int(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::double_is_int((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1fracmod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_fracmod((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1factorial(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_factorial((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1perm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_perm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_comb_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::comb((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1comb(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_comb((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1chinrem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_chinrem((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1abs(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_abs((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cyclotomic(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cyclotomic((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1calc_1mode(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_calc_mode((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1quorem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_quorem((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1quo(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_quo((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rem((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sto_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::sto((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_sto_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jboolean jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  bool arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = jarg3 ? true : false; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::sto((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_is_1assumed_1integer(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = (bool)giac::is_assumed_integer((giac::gen const &)*arg1,arg2);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_giac_1assume(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::giac_assume((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_giac_1additionally(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::giac_additionally((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_doubleassume_1and(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_, jint jarg3, jboolean jarg4, jlong jarg5, jobject jarg5_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  int arg3 ;
  bool arg4 ;
  giac::context *arg5 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  (void)jarg5_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = (int)jarg3; 
  arg4 = jarg4 ? true : false; 
  arg5 = *(giac::context **)&jarg5; 
  result = giac::doubleassume_and((giac::vecteur const &)*arg1,(giac::gen const &)*arg2,arg3,arg4,arg5);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1equal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_equal((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1same(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_same((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1inferieur_1strict(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_inferieur_strict((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1inferieur_1egal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_inferieur_egal((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1superieur_1strict(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_superieur_strict((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1superieur_1egal(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_superieur_egal((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1different(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_different((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_check_1symb_1of(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::check_symb_of((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1of(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_of((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1at(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_at((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1table(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_table((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1plus(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_plus((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1prod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_prod((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_cprintaspow(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  char *arg2 = (char *) 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = *(giac::context **)&jarg3; 
  result = giac::cprintaspow((giac::gen const &)*arg1,(char const *)arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pow(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pow((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1powmod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_powmod((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1eval(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  {
    try {
      result = giac::_eval((giac::gen const &)*arg1,arg2); 
    } catch (std::runtime_error &e) {
      std::cout << "An exception occurred in _eval: " << e.what() << "\n";
    }
  }
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1evalf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_evalf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1subst(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_subst((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1subs(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_subs((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1maple_1subs(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_maple_subs((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ampersand_1times(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ampersand_times((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1version(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_version((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Gamma(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::Gamma((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Gamma(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Gamma((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_lngamma(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::lngamma((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Psi_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::Psi((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Psi_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::Psi((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Psi(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Psi((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Zeta_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::Zeta((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Zeta(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Zeta((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1erf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_erf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_erf(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::erf((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1erfc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_erfc((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_erfc(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::erfc((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Ci(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Ci((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Si(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Si((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Ei(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Ei((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Heaviside(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Heaviside((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Dirac(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Dirac((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1multistring(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_multistring((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1normalmod(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_normalmod((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_alternate_1series(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jint jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  int arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = (int)jarg3; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::alternate_series((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Eta_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::Eta((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Eta_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::Eta((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Zeta_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::Zeta((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Eta(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Eta((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1erfs(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_erfs((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SiCi_1f(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SiCi_f((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1SiCi_1g(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_SiCi_g((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Ci0(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Ci0((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Ei_1f(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Ei_f((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Ei_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::Ei((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Ei_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::Ei((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1Ei0(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_Ei0((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Ci_1replace0(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::Ci_replace0((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_Ei_1replace0(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::Ei_replace0((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_printassubs(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  char *arg2 = (char *) 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = *(giac::context **)&jarg3; 
  result = giac::printassubs((giac::gen const &)*arg1,(char const *)arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_printasmaple_1subs(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  char *arg2 = (char *) 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = *(giac::context **)&jarg3; 
  result = giac::printasmaple_subs((giac::gen const &)*arg1,(char const *)arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
  return jresult;
}


SWIGEXPORT jstring JNICALL Java_javagiac_giacJNI_printassto(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_) {
  jstring jresult = 0 ;
  giac::gen *arg1 = 0 ;
  char *arg2 = (char *) 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  std::string result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = *(giac::context **)&jarg3; 
  result = giac::printassto((giac::gen const &)*arg1,(char const *)arg2,arg3);
  jresult = jenv->NewStringUTF((&result)->c_str()); 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1proot(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_proot((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pcoeff(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pcoeff((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1peval(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_peval((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_spread_1convert(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jint jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int arg2 ;
  int arg3 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = (int)jarg3; 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::spread_convert((giac::gen const &)*arg1,arg2,arg3,arg4);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_iscell(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jlong jarg4, jobject jarg4_) {
  jboolean jresult = 0 ;
  giac::gen *arg1 = 0 ;
  int *arg2 = 0 ;
  int *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(int **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "int & reference is null");
    return 0;
  } 
  arg3 = *(int **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "int & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = (bool)giac::iscell((giac::gen const &)*arg1,*arg2,*arg3,arg4);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_matrice_1insert(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2, jint jarg3, jint jarg4, jint jarg5, jlong jarg6, jobject jarg6_, jlong jarg7, jobject jarg7_) {
  jlong jresult = 0 ;
  giac::matrice *arg1 = 0 ;
  int arg2 ;
  int arg3 ;
  int arg4 ;
  int arg5 ;
  giac::gen *arg6 = 0 ;
  giac::context *arg7 = (giac::context *) 0 ;
  giac::matrice result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg6_;
  (void)jarg7_;
  arg1 = *(giac::matrice **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::matrice const & reference is null");
    return 0;
  } 
  arg2 = (int)jarg2; 
  arg3 = (int)jarg3; 
  arg4 = (int)jarg4; 
  arg5 = (int)jarg5; 
  arg6 = *(giac::gen **)&jarg6;
  if(!arg6) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg7 = *(giac::context **)&jarg7; 
  result = giac::matrice_insert((giac::matrice const &)*arg1,arg2,arg3,arg4,arg5,(giac::gen const &)*arg6,arg7);
  *(giac::matrice **)&jresult = new giac::matrice((giac::matrice &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_cross(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::cross((giac::gen const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1tran(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_tran((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_ckmtrace(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::ckmtrace((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_mrref(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jobject jarg4_, jlong jarg5, jobject jarg5_) {
  jboolean jresult = 0 ;
  giac::matrice *arg1 = 0 ;
  giac::matrice *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  giac::gen *arg4 = 0 ;
  giac::context *arg5 = (giac::context *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg4_;
  (void)jarg5_;
  arg1 = *(giac::matrice **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::matrice const & reference is null");
    return 0;
  } 
  arg2 = *(giac::matrice **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::matrice & reference is null");
    return 0;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return 0;
  } 
  arg4 = *(giac::gen **)&jarg4;
  if(!arg4) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen & reference is null");
    return 0;
  } 
  arg5 = *(giac::context **)&jarg5; 
  result = (bool)giac::mrref((giac::matrice const &)*arg1,*arg2,*arg3,*arg4,arg5);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rref(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rref((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1idn(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_idn((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_vranm(JNIEnv *jenv, jclass jcls, jint jarg1, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  int arg1 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::vecteur result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = (int)jarg1; 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::vranm(arg1,(giac::gen const &)*arg2,arg3);
  *(giac::vecteur **)&jresult = new giac::vecteur((giac::vecteur &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_mranm(JNIEnv *jenv, jclass jcls, jint jarg1, jint jarg2, jlong jarg3, jobject jarg3_, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  int arg1 ;
  int arg2 ;
  giac::gen *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::matrice result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg3_;
  (void)jarg4_;
  arg1 = (int)jarg1; 
  arg2 = (int)jarg2; 
  arg3 = *(giac::gen **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::mranm(arg1,arg2,(giac::gen const &)*arg3,arg4);
  *(giac::matrice **)&jresult = new giac::matrice((giac::matrice &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ranm(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ranm((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1randvector(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_randvector((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1padic_1linsolve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_padic_linsolve((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_mdet(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::matrice *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  arg1 = *(giac::matrice **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::matrice const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::mdet((giac::matrice const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1det(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_det((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1sylvester(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_sylvester((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1hessenberg(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_hessenberg((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pcar_1hessenberg(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pcar_hessenberg((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1pcar(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_pcar((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jboolean JNICALL Java_javagiac_giacJNI_egv(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jobject jarg4_, jboolean jarg5, jboolean jarg6, jboolean jarg7) {
  jboolean jresult = 0 ;
  giac::matrice *arg1 = 0 ;
  giac::matrice *arg2 = 0 ;
  giac::vecteur *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  bool arg5 ;
  bool arg6 ;
  bool arg7 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg4_;
  arg1 = *(giac::matrice **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::matrice const & reference is null");
    return 0;
  } 
  arg2 = *(giac::matrice **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::matrice & reference is null");
    return 0;
  } 
  arg3 = *(giac::vecteur **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  arg5 = jarg5 ? true : false; 
  arg6 = jarg6 ? true : false; 
  arg7 = jarg7 ? true : false; 
  result = (bool)giac::egv((giac::matrice const &)*arg1,*arg2,*arg3,arg4,arg5,arg6,arg7);
  jresult = (jboolean)result; 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1egv(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_egv((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1svd(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_svd((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1egvl(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_egvl((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1jordan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_jordan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_jordan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  bool arg2 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg3_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = jarg2 ? true : false; 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::jordan((giac::gen const &)*arg1,arg2,arg3);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rat_1jordan(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rat_jordan((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1rat_1jordan_1block(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_rat_jordan_block((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_diagonal_1apply(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::matrice *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::matrice result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::matrice **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::matrice const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::diagonal_apply((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::matrice const &)*arg3,arg4);
  *(giac::matrice **)&jresult = new giac::matrice((giac::matrice &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_analytic_1apply(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3, jlong jarg4, jobject jarg4_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::matrice *arg3 = 0 ;
  giac::context *arg4 = (giac::context *) 0 ;
  giac::matrice result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  (void)jarg4_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::matrice **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::matrice const & reference is null");
    return 0;
  } 
  arg4 = *(giac::context **)&jarg4; 
  result = giac::analytic_apply((giac::gen const &)*arg1,(giac::gen const &)*arg2,(giac::matrice const &)*arg3,arg4);
  *(giac::matrice **)&jresult = new giac::matrice((giac::matrice &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_matpow(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_, jlong jarg3, jobject jarg3_) {
  jlong jresult = 0 ;
  giac::matrice *arg1 = 0 ;
  giac::gen *arg2 = 0 ;
  giac::context *arg3 = (giac::context *) 0 ;
  giac::matrice result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  (void)jarg3_;
  arg1 = *(giac::matrice **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::matrice const & reference is null");
    return 0;
  } 
  arg2 = *(giac::gen **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg3 = *(giac::context **)&jarg3; 
  result = giac::matpow((giac::matrice const &)*arg1,(giac::gen const &)*arg2,arg3);
  *(giac::matrice **)&jresult = new giac::matrice((giac::matrice &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1matpow(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_matpow((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ker(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ker((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1image(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_image((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cross(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cross((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_lu(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::lu((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_qr(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::qr((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cholesky(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cholesky((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1basis(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_basis((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ibasis(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ibasis((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1cell(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_cell((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_l2norm(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::vecteur *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg2_;
  arg1 = *(giac::vecteur **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::vecteur const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::l2norm((giac::vecteur const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1lll(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_lll((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ihermite(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ihermite((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1ismith(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_ismith((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI__1csv2gen(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
  jlong jresult = 0 ;
  giac::gen *arg1 = 0 ;
  giac::context *arg2 = (giac::context *) 0 ;
  giac::gen result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg1_;
  (void)jarg2_;
  arg1 = *(giac::gen **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "giac::gen const & reference is null");
    return 0;
  } 
  arg2 = *(giac::context **)&jarg2; 
  result = giac::_csv2gen((giac::gen const &)*arg1,arg2);
  *(giac::gen **)&jresult = new giac::gen((giac::gen &)result); 
  return jresult;
}


SWIGEXPORT jlong JNICALL Java_javagiac_giacJNI_csv2gen(JNIEnv *jenv, jclass jcls, jlong jarg1, jchar jarg2, jchar jarg3, jchar jarg4, jchar jarg5, jlong jarg6, jobject jarg6_) {
  jlong jresult = 0 ;
  std::istream *arg1 = 0 ;
  char arg2 ;
  char arg3 ;
  char arg4 ;
  char arg5 ;
  giac::context *arg6 = (giac::context *) 0 ;
  giac::matrice result;
  
  (void)jenv;
  (void)jcls;
  (void)jarg6_;
  arg1 = *(std::istream **)&jarg1;
  if(!arg1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "std::istream & reference is null");
    return 0;
  } 
  arg2 = (char)jarg2; 
  arg3 = (char)jarg3; 
  arg4 = (char)jarg4; 
  arg5 = (char)jarg5; 
  arg6 = *(giac::context **)&jarg6; 
  result = giac::csv2gen(*arg1,arg2,arg3,arg4,arg5,arg6);
  *(giac::matrice **)&jresult = new giac::matrice((giac::matrice &)result); 
  return jresult;
}


#ifdef __cplusplus
}
#endif

