                                      make_tuple<T,T>(0,0),
                                      TuplePlus<Tuple>());
 
-    ASSERT_ALMOST_EQUAL(get<0>(h_result), get<0>(d_result));
-    ASSERT_ALMOST_EQUAL(get<1>(h_result), get<1>(d_result));
-  }
-};
-VariableUnitTest<TestZipIteratorReduce, ThirtyTwoBitTypes> TestZipIteratorReduceInstance;
+    ASSERT_EQUAL(get<0>(h_result), get<0>(d_result));
+    ASSERT_EQUAL(get<1>(h_result), get<1>(d_result));
+  }
+};
+VariableUnitTest<TestZipIteratorReduce, IntegralTypes> TestZipIteratorReduceInstance;
 
 
 template <typename T>

      ASSERT_EQUAL_QUIET(h2, d2);
  }
};
VariableUnitTest<TestZipIteratorStableSort, NumericTypes> TestZipIteratorStableSortInstance;


template <typename T>

      ASSERT_EQUAL_QUIET(h4, d4);
  }
};
VariableUnitTest<TestZipIteratorStableSortByKey, SignedIntegralTypes> TestZipIteratorStableSortByKeyInstance;

