extern static int mpz_get_si(ref mpz_t src);
extern static double mpz_get_d(ref mpz_t src);
extern static void mpz_set_si(ref mpz_t src, int value);
extern static void mpz_tdiv_q(ref mpz_t dest, ref mpz_t src, ref mpz_t src2);
extern static void mpz_add(ref mpz_t dest, ref mpz_t src, ref mpz_t src2);
extern static void mpz_mul_si(ref mpz_t dest, ref mpz_t src, int val);
extern static void mpz_init(ref mpz_t value);