      return 0;
 
  }
+
+
+int main(int argc, char *argv[]) {
+  // lucaGiantTest(argc, argv);
+  testAddToMpf();
+}

void bitsToAddTwoLong(unsigned long long &a, unsigned long long &b, const unsigned long long c, 
		      const int bitToAdd, const int bitsToCopy) {
  unsigned long long mask1, mask2;
  int ;
  mask1 = ((1LL << ()) - 1);
  mask2 = ((1LL << ()) - 1) << ();
  a = ((mask2 & c) >> );
  b = ((mask1 & c) << bitToAdd);
}

// TO BE WRITTEN
void addRemainder_InPlace(mpf_class &a, const long long remainder, const int limbGMPToAdd) {
  if (limbGMPToAdd) {
  }
  if ( ) {
    a.get_mpf_t()->_mp_d[limbGMPToAdd] += remainder; 
  } else {
    a.get_mpf_t()->_mp_d[limbGMPToAdd] += remainder; 
    addRemainder_InPlace(a, 1, limbGMPToAdd + 1);
  }
}

// TO BE WRITTEN

  cout << x << endl;
  addToMpf(x.get_mpf_t(), a, 62);
  cout << x << endl;
}
 
int lucaGiantTest(int argc, char *argv[]) {
