diff --git a/src/test/java/gov/usgs/earthquake/nshmp/mfd/MfdTests.java b/src/test/java/gov/usgs/earthquake/nshmp/mfd/MfdTests.java
index d2535dd22c5b1f1a1ec505eddefb2ad753c55e94..86a0e0a4caf69fd6e946ea01c72d0e004646671a 100644
--- a/src/test/java/gov/usgs/earthquake/nshmp/mfd/MfdTests.java
+++ b/src/test/java/gov/usgs/earthquake/nshmp/mfd/MfdTests.java
@@ -285,7 +285,7 @@ class MfdTests {
       1.4535446859752395E-4,
       1.2095189730212227E-4,
       1.0066358352203966E-4,
-      8.379883478263012E-5,
+      8.37988347826301E-5,
       6.978336683158799E-5,
       5.813972403773392E-5,
       4.8470974011098916E-5,
@@ -294,16 +294,16 @@ class MfdTests {
       2.8282200517277988E-5,
       2.3722080373146463E-5,
       1.9953542732997602E-5,
-      1.6841412644916572E-5,
-      1.4269370950942071E-5,
-      1.2134508638353739E-5,
+      1.6841412644916558E-5,
+      1.4269370950942086E-5,
+      1.213450863835374E-5,
       1.0342192289241769E-5,
       8.80177763108668E-6,
       7.4247305061395814E-6,
       6.1282556531428345E-6,
-      4.848713278025379E-6,
-      3.5668582219695318E-6,
-      2.3358516405761178E-6,
+      4.848713278025381E-6,
+      3.56685822196953E-6,
+      2.3358516405761174E-6,
       1.2823409762916184E-6,
       5.437829885686743E-7,
       1.5949675112240326E-7 };
@@ -375,7 +375,7 @@ class MfdTests {
     mfd = props.toBuilder().build();
     xy = mfd.data();
     assertArrayEquals(TAPERED_GR_M, xy.xValues().toArray());
-    assertArrayEquals(TAPERED_GR_R, xy.yValues().toArray());
+    assertArrayEquals(TAPERED_GR_R, xy.yValues().toArray(), 1e-19);
 
     grProps = new TaperedGr(grProps, 8.5);
     assertEquals(aVal, grProps.a());
diff --git a/src/test/java/gov/usgs/earthquake/nshmp/mfd/MfdsTests.java b/src/test/java/gov/usgs/earthquake/nshmp/mfd/MfdsTests.java
index 3728c833d6e0643c575c0af7e5c64111c0d08852..8fb8006a8af1a517e11e085f2ff21d1de0fd6e2c 100644
--- a/src/test/java/gov/usgs/earthquake/nshmp/mfd/MfdsTests.java
+++ b/src/test/java/gov/usgs/earthquake/nshmp/mfd/MfdsTests.java
@@ -98,11 +98,11 @@ class MfdsTests {
       0.31002212243909005,
       0.24625932524251715,
       0.1956107351042815,
-      0.1553791299085031,
+      0.15537912990850308,
       0.12342202997321594,
       0.09803760319471205,
       0.0778740362822551,
-      0.061857545770938396,
+      0.0618575457709384,
       0.04913519513660598,
       0.039029472815693286,
       0.031002212243909005,
@@ -145,8 +145,10 @@ class MfdsTests {
     Mfd mfd3 = new GutenbergRichter(5.0, 1.0, 0.1, 5.0, 7.2).toBuilder().build();
     Mfd mfd4 = new GutenbergRichter(4.0, 1.0, 0.1, 5.0, 7.5).toBuilder().build();
     XySequence actual = Mfds.combine(List.of(mfd1, mfd2, mfd3, mfd4)).data();
-    XySequence expected = XySequence.create(COMBINE_M, COMBINE_R);
-    assertEquals(expected, actual);
+    double[] actualMags = actual.xValues().toArray();
+    double[] actualRates = actual.yValues().toArray();
+    assertArrayEquals(COMBINE_M, actualMags);
+    assertArrayEquals(COMBINE_R, actualRates, 1e-16);
   }
 
   private static final double[] GR_RATE_M = {
@@ -183,7 +185,7 @@ class MfdsTests {
     assertEquals(COMBINE_MO_RATE, Mfds.momentRate(mfd));
   }
 
-  private static final double PARETO_RATE = 3.6159044829897265E-5;
+  private static final double PARETO_RATE = 3.6159044829897224E-5;
 
   @Test
   void testParetoRate() {
@@ -193,6 +195,6 @@ class MfdsTests {
     double b = 0.8;
     double β = b / 1.5;
     double actual = Mfds.paretoRate(Mt, M, β, Mcm);
-    assertEquals(PARETO_RATE, actual);
+    assertEquals(PARETO_RATE, actual, 1e-19);
   }
 }