diff --git a/src/gov/usgs/earthquake/nshmp/gmm/AtkinsonBoore_2006.java b/src/gov/usgs/earthquake/nshmp/gmm/AtkinsonBoore_2006.java
index 21033c3313ee303a3b00b7c3155616174485bd4f..dfc62469fddc50d35c882a87cf06a951eb892094 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/AtkinsonBoore_2006.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/AtkinsonBoore_2006.java
@@ -5,9 +5,9 @@ import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.MW;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.RRUP;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.VS30;
 import static gov.usgs.earthquake.nshmp.gmm.GmmUtils.BASE_10_TO_E;
+import static gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass.SOFT_ROCK;
 import static gov.usgs.earthquake.nshmp.gmm.Imt.PGA;
 import static gov.usgs.earthquake.nshmp.gmm.MagConverter.NONE;
-import static gov.usgs.earthquake.nshmp.gmm.SiteClass.SOFT_ROCK;
 import static java.lang.Math.log;
 import static java.lang.Math.log10;
 import static java.lang.Math.max;
@@ -18,6 +18,7 @@ import com.google.common.collect.Range;
 import java.util.Map;
 
 import gov.usgs.earthquake.nshmp.gmm.GmmInput.Constraints;
+import gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass;
 
 /**
  * Abstract implementation of the ground motion model for stable continental
@@ -144,7 +145,7 @@ public abstract class AtkinsonBoore_2006 implements GroundMotionModel, ConvertsM
   public final ScalarGroundMotion calc(final GmmInput in) {
 
     // this call will only allow vs30 = 760 | 2000
-    SiteClass siteClass = GmmUtils.ceusSiteClass(in.vs30);
+    CeusSiteClass siteClass = GmmUtils.ceusSiteClass(in.vs30);
     Coefficients coeffs = siteClass == SOFT_ROCK ? coeffsBC : coeffsA;
     Coefficients coeffsPGA = siteClass == SOFT_ROCK ? coeffsBC_PGA : coeffsA_PGA;
 
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/AtkinsonMacias_2009.java b/src/gov/usgs/earthquake/nshmp/gmm/AtkinsonMacias_2009.java
index cfec610ff83318bf054c466e38c3765339060c25..51056410bc493331cb6fdbd0e0fb718f96f2d4aa 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/AtkinsonMacias_2009.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/AtkinsonMacias_2009.java
@@ -1,5 +1,6 @@
 package gov.usgs.earthquake.nshmp.gmm;
 
+import static gov.usgs.earthquake.nshmp.gmm.CampbellBozorgnia_2014.basinResponseTerm;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.MW;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.RRUP;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.VS30;
@@ -39,15 +40,16 @@ import gov.usgs.earthquake.nshmp.gmm.GmmInput.Constraints;
  *
  * @author Peter Powers
  * @see Gmm#AM_09_INTER
+ * @see Gmm#AM_09_BASIN_INTERFACE
  */
-public final class AtkinsonMacias_2009 implements GroundMotionModel {
+public class AtkinsonMacias_2009 implements GroundMotionModel {
 
   /*
    * TODO 0.75s interpolated period coefficients added that should be removed if
    * a viable on-the-fly interpolation algorithm is added.
    */
-
-  static final String NAME = "Atkinson & Macias (2009): Interface";
+  private static final String BASE_NAME = "Atkinson & Macias (2009)";
+  static final String NAME = BASE_NAME + ": Interface";
 
   static final Constraints CONSTRAINTS = Constraints.builder()
       .set(MW, Range.closed(5.0, 9.5))
@@ -75,20 +77,28 @@ public final class AtkinsonMacias_2009 implements GroundMotionModel {
   private final Coefficients coeffs;
   private final Coefficients coeffsPGA;
   private final BooreAtkinsonSiteAmp siteAmp;
+  private final CampbellBozorgnia_2014 cb14;
 
   AtkinsonMacias_2009(final Imt imt) {
     coeffs = new Coefficients(imt, COEFFS);
     coeffsPGA = new Coefficients(PGA, COEFFS);
     siteAmp = new BooreAtkinsonSiteAmp(imt);
+    cb14 = new CampbellBozorgnia_2014(imt);
   }
 
   @Override
   public final ScalarGroundMotion calc(final GmmInput in) {
-    double μ = calcMean(coeffs, coeffsPGA, siteAmp, in);
+    // possibly picking up basin term from CB14
+    double fBasin = basinTerm() ? basinResponseTerm(cb14.coeffs, in.vs30, in.z2p5) : 0.0;
+    double μ = calcMean(coeffs, coeffsPGA, siteAmp, in) + fBasin;
     double σ = coeffs.σ * BASE_10_TO_E;
     return DefaultScalarGroundMotion.create(μ, σ);
   }
 
+  boolean basinTerm() {
+    return false;
+  }
+
   private static final double calcMean(final Coefficients c, final Coefficients cPga,
       final BooreAtkinsonSiteAmp siteAmp, final GmmInput in) {
 
@@ -110,4 +120,16 @@ public final class AtkinsonMacias_2009 implements GroundMotionModel {
     return gnd * BASE_10_TO_E - LN_G_CM_TO_M;
   }
 
+  static final class Basin extends AtkinsonMacias_2009 {
+    static final String NAME = BASE_NAME + " Basin: Interface";
+    
+    Basin(Imt imt) {
+      super(imt);
+    }
+
+    @Override
+    boolean basinTerm() {
+      return true;
+    }
+  }
 }
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/BcHydro_2012.java b/src/gov/usgs/earthquake/nshmp/gmm/BcHydro_2012.java
index 5d96e2b6b18af52299a6a8ee0cdf0c4b21a25cf8..f20f94b595843c89318e972a70aa06aaf3e5d2e4 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/BcHydro_2012.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/BcHydro_2012.java
@@ -1,5 +1,6 @@
 package gov.usgs.earthquake.nshmp.gmm;
 
+import static gov.usgs.earthquake.nshmp.gmm.CampbellBozorgnia_2014.basinResponseTerm;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.MW;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.RRUP;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.VS30;
@@ -46,6 +47,8 @@ import gov.usgs.earthquake.nshmp.gmm.GmmInput.Constraints;
  * @author Peter Powers
  * @see Gmm#BCHYDRO_12_INTER
  * @see Gmm#BCHYDRO_12_SLAB
+ * @see Gmm#BCHYDRO_12_BASIN_INTERFACE
+ * @see Gmm#BCHYDRO_12_BASIN_SLAB
  */
 public abstract class BcHydro_2012 implements GroundMotionModel {
 
@@ -99,28 +102,36 @@ public abstract class BcHydro_2012 implements GroundMotionModel {
 
   private final Coefficients coeffs;
   private final Coefficients coeffsPGA;
+  private final CampbellBozorgnia_2014 cb14;
 
   BcHydro_2012(final Imt imt) {
     coeffs = new Coefficients(imt, COEFFS);
     coeffsPGA = new Coefficients(PGA, COEFFS);
+    cb14 = new CampbellBozorgnia_2014(imt);
   }
 
   @Override
   public final ScalarGroundMotion calc(final GmmInput in) {
 
+    // possibly picking up basin term from CB14
+    double fBasin = basinTerm() ? basinResponseTerm(cb14.coeffs, in.vs30, in.z2p5) : 0.0;
+
     // pgaRock only required to compute non-linear site response
     // when vs30 is less than period-dependent vlin cutoff
     double pgaRock = (in.vs30 < coeffs.vlin)
-        ? exp(calcMean(coeffsPGA, isSlab(), 0.0, in.Mw, in.rRup, in.zTop, 1000.0)) : 0.0;
-    double μ = calcMean(coeffs, isSlab(), pgaRock, in.Mw, in.rRup, in.zTop, in.vs30);
+        ? exp(calcMean(coeffsPGA, isSlab(), fBasin, 0.0, in.Mw, in.rRup, in.zTop, 1000.0))
+        : 0.0;
+    double μ = calcMean(coeffs, isSlab(), fBasin, pgaRock, in.Mw, in.rRup, in.zTop, in.vs30);
     return DefaultScalarGroundMotion.create(μ, SIGMA);
   }
 
   abstract boolean isSlab();
 
+  abstract boolean basinTerm();
+
   private static final double calcMean(final Coefficients c, final boolean slab,
-      final double pgaRock, final double Mw, final double rRup, final double zTop,
-      final double vs30) {
+      final double fBasin, final double pgaRock, final double Mw, final double rRup,
+      final double zTop, final double vs30) {
 
     double ΔC1 = (slab ? ΔC1_SLAB : c.ΔC1mid);
     double mCut = C1 + ΔC1;
@@ -146,7 +157,8 @@ public abstract class BcHydro_2012 implements GroundMotionModel {
         c.θ6 * rRup + (slab ? c.θ10 : 0.0) + fMag +
         fDepth +
         // fterm + no fterm for forearc sites
-        fSite;
+        fSite +
+        fBasin;
   }
 
   static final class Interface extends BcHydro_2012 {
@@ -160,6 +172,11 @@ public abstract class BcHydro_2012 implements GroundMotionModel {
     final boolean isSlab() {
       return false;
     }
+
+    @Override
+    boolean basinTerm() {
+      return false;
+    }
   }
 
   static final class Slab extends BcHydro_2012 {
@@ -173,6 +190,46 @@ public abstract class BcHydro_2012 implements GroundMotionModel {
     final boolean isSlab() {
       return true;
     }
+
+    @Override
+    boolean basinTerm() {
+      return false;
+    }
   }
 
+  static final class BasinInterface extends BcHydro_2012 {
+    static final String NAME = BcHydro_2012.NAME + " Basin: Interface";
+
+    BasinInterface(Imt imt) {
+      super(imt);
+    }
+
+    @Override
+    final boolean isSlab() {
+      return false;
+    }
+
+    @Override
+    boolean basinTerm() {
+      return true;
+    }
+  }
+
+  static final class BasinSlab extends BcHydro_2012 {
+    static final String NAME = BcHydro_2012.NAME + " Basin: Slab";
+
+    BasinSlab(Imt imt) {
+      super(imt);
+    }
+
+    @Override
+    final boolean isSlab() {
+      return true;
+    }
+
+    @Override
+    boolean basinTerm() {
+      return true;
+    }
+  }
 }
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/CampbellBozorgnia_2014.java b/src/gov/usgs/earthquake/nshmp/gmm/CampbellBozorgnia_2014.java
index 8e7f1fed31530fbf083706a37447586aba8ee268..e841b348dcfdabdeaf9fbc11463ccc87be326baf 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/CampbellBozorgnia_2014.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/CampbellBozorgnia_2014.java
@@ -133,7 +133,7 @@ public final class CampbellBozorgnia_2014 implements GroundMotionModel {
     }
   }
 
-  private final Coefficients coeffs;
+  final Coefficients coeffs;
   private final Coefficients coeffsPGA;
 
   CampbellBozorgnia_2014(final Imt imt) {
@@ -249,17 +249,7 @@ public final class CampbellBozorgnia_2014 implements GroundMotionModel {
         : (c.c11 + c.k2 * N) * log(vsk1);
 
     // Basin Response term -- Equation 20
-    // update z2p5 with CA model if not supplied -- Equation 33
-    double z2p5copy = z2p5;
-    if (Double.isNaN(z2p5)) {
-      z2p5copy = exp(7.089 - 1.144 * log(vs30));
-    }
-    double Fsed = 0.0;
-    if (z2p5copy <= 1.0) {
-      Fsed = c.c14 * (z2p5copy - 1.0);
-    } else if (z2p5copy > 3.0) {
-      Fsed = c.c16 * c.k3 * exp(-0.75) * (1.0 - exp(-0.25 * (z2p5copy - 3.0)));
-    }
+    double Fsed = basinResponseTerm(c, vs30, z2p5);
 
     // Hypocentral Depth term -- Equations 21, 22, 23
     double zHyp = in.zHyp;
@@ -282,6 +272,21 @@ public final class CampbellBozorgnia_2014 implements GroundMotionModel {
     return Fmag + Fr + Fflt + Fhw + Fsite + Fsed + Fhyp + Fdip + Fatn;
   }
 
+  // Basin Response term -- Equation 20
+  // update z2p5 with CA model if not supplied -- Equation 33
+  static final double basinResponseTerm(Coefficients c, double vs30, double z2p5) {
+    if (Double.isNaN(z2p5)) {
+      z2p5 = exp(7.089 - 1.144 * log(vs30));
+    }
+    if (z2p5 <= 1.0) {
+      return c.c14 * (z2p5 - 1.0);
+    } else if (z2p5 > 3.0) {
+      return c.c16 * c.k3 * exp(-0.75) * (1.0 - exp(-0.25 * (z2p5 - 3.0)));
+    } else {
+      return 0.0;
+    }
+  }
+
   // Aleatory uncertainty model
   private static final double calcStdDev(final Coefficients c, final Coefficients cPGA,
       final double Mw, final double vs30, final double pgaRock) {
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/Campbell_2003.java b/src/gov/usgs/earthquake/nshmp/gmm/Campbell_2003.java
index 36675b3d3d05a95ad1e675abd68738b6c44aab39..d2d12eab659137e19ec464137769c95f5b3b57e2 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/Campbell_2003.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/Campbell_2003.java
@@ -3,8 +3,8 @@ package gov.usgs.earthquake.nshmp.gmm;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.MW;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.RRUP;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.VS30;
+import static gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass.HARD_ROCK;
 import static gov.usgs.earthquake.nshmp.gmm.MagConverter.NONE;
-import static gov.usgs.earthquake.nshmp.gmm.SiteClass.HARD_ROCK;
 import static java.lang.Math.log;
 import static java.lang.Math.pow;
 import static java.lang.Math.sqrt;
@@ -14,6 +14,7 @@ import com.google.common.collect.Range;
 import java.util.Map;
 
 import gov.usgs.earthquake.nshmp.gmm.GmmInput.Constraints;
+import gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass;
 
 /**
  * Implementation of the hybrid ground motion model for stable continental
@@ -103,7 +104,7 @@ public class Campbell_2003 implements GroundMotionModel, ConvertsMag {
   public final ScalarGroundMotion calc(final GmmInput in) {
 
     double Mw = converter().convert(in.Mw);
-    SiteClass siteClass = GmmUtils.ceusSiteClass(in.vs30);
+    CeusSiteClass siteClass = GmmUtils.ceusSiteClass(in.vs30);
 
     double μ = calcMean(coeffs, Mw, in.rRup, siteClass);
     double σ = calcStdDev(coeffs, Mw);
@@ -117,7 +118,7 @@ public class Campbell_2003 implements GroundMotionModel, ConvertsMag {
   }
 
   private final double calcMean(final Coefficients c, final double Mw, final double rRup,
-      final SiteClass siteClass) {
+      final CeusSiteClass siteClass) {
 
     double gnd0 = siteClass == HARD_ROCK ? c.c1h : c.c1;
     double gndm = gnd0 + c.c2 * Mw + c.c3 * (8.5 - Mw) * (8.5 - Mw);
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/CoefficientContainer.java b/src/gov/usgs/earthquake/nshmp/gmm/CoefficientContainer.java
index bdce40e6844a8c6e8d534824419619910f1baea8..d62c6862a63dba814766d4de6393ad3f6a0132b4 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/CoefficientContainer.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/CoefficientContainer.java
@@ -3,6 +3,7 @@ package gov.usgs.earthquake.nshmp.gmm;
 import static com.google.common.base.Preconditions.checkNotNull;
 import static java.nio.charset.StandardCharsets.UTF_8;
 
+import com.google.common.base.Predicate;
 import com.google.common.collect.ArrayTable;
 import com.google.common.collect.FluentIterable;
 import com.google.common.collect.ImmutableTable;
@@ -90,7 +91,16 @@ final class CoefficientContainer {
         .skip(1);
     // build Imt-value map
     Map<Imt, Double[]> valueMap = Maps.newHashMap();
-    for (String line : Iterables.skip(lines, 1)) {
+
+    Iterable<String> imtLines = FluentIterable.from(lines)
+        .skip(1)
+        .filter(new Predicate<String>() {
+          @Override
+          public boolean apply(String s) {
+            return !s.startsWith("#");
+          }
+        });
+    for (String line : imtLines) {
       Iterable<String> entries = Parsing.split(line, Delimiter.COMMA);
       String imtStr = Iterables.get(entries, 0);
       Imt imt = Imt.parseImt(imtStr);
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/FrankelEtAl_1996.java b/src/gov/usgs/earthquake/nshmp/gmm/FrankelEtAl_1996.java
index af09a337507283ed525b7eb970dd0985079f9441..5e54bff30d87a0db4da738f8ebe9ad97d09f3068 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/FrankelEtAl_1996.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/FrankelEtAl_1996.java
@@ -4,13 +4,14 @@ import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.MW;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.RRUP;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.VS30;
 import static gov.usgs.earthquake.nshmp.gmm.GmmUtils.BASE_10_TO_E;
+import static gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass.HARD_ROCK;
+import static gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass.SOFT_ROCK;
 import static gov.usgs.earthquake.nshmp.gmm.MagConverter.NONE;
-import static gov.usgs.earthquake.nshmp.gmm.SiteClass.HARD_ROCK;
-import static gov.usgs.earthquake.nshmp.gmm.SiteClass.SOFT_ROCK;
 
 import com.google.common.collect.Range;
 
 import gov.usgs.earthquake.nshmp.gmm.GmmInput.Constraints;
+import gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass;
 import gov.usgs.earthquake.nshmp.gmm.GroundMotionTables.GroundMotionTable;
 
 /**
@@ -64,7 +65,7 @@ public class FrankelEtAl_1996 implements GroundMotionModel, ConvertsMag {
 
   @Override
   public final ScalarGroundMotion calc(GmmInput in) {
-    SiteClass siteClass = GmmUtils.ceusSiteClass(in.vs30);
+    CeusSiteClass siteClass = GmmUtils.ceusSiteClass(in.vs30);
     double Mw = converter().convert(in.Mw);
     double μ = (siteClass == SOFT_ROCK) ? bcTable.get(in.rRup, Mw) : aTable.get(in.rRup, Mw);
     μ = GmmUtils.ceusMeanClip(imt, μ * BASE_10_TO_E);
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/Gmm.java b/src/gov/usgs/earthquake/nshmp/gmm/Gmm.java
index 89ee62655034cd6efd96f99e920558f7d3a7ba9a..b7466a6ade2f4185954634b2ebd44f97be10744b 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/Gmm.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/Gmm.java
@@ -162,7 +162,7 @@ public enum Gmm {
       SadighEtAl_1997.COEFFS_BC_HI,
       SadighEtAl_1997.CONSTRAINTS),
 
-  /* Subduction Interface and Slab WUS 2008 2014, AK 2007 */
+  /* Subduction Interface and Slab WUS 2008 2014 2018, AK 2007 */
 
   /** @see AtkinsonBoore_2003 */
   AB_03_GLOB_INTER(
@@ -213,6 +213,13 @@ public enum Gmm {
       AtkinsonMacias_2009.COEFFS,
       AtkinsonMacias_2009.CONSTRAINTS),
 
+  /** @see AtkinsonMacias_2009 */
+  AM_09_BASIN_INTERFACE(
+      AtkinsonMacias_2009.Basin.class,
+      AtkinsonMacias_2009.Basin.NAME,
+      AtkinsonMacias_2009.COEFFS,
+      AtkinsonMacias_2009.CONSTRAINTS),
+
   /** @see BcHydro_2012 */
   BCHYDRO_12_INTER(
       BcHydro_2012.Interface.class,
@@ -227,6 +234,20 @@ public enum Gmm {
       BcHydro_2012.COEFFS,
       BcHydro_2012.CONSTRAINTS),
 
+  /** @see BcHydro_2012 */
+  BCHYDRO_12_BASIN_INTERFACE(
+      BcHydro_2012.BasinInterface.class,
+      BcHydro_2012.BasinInterface.NAME,
+      BcHydro_2012.COEFFS,
+      BcHydro_2012.CONSTRAINTS),
+
+  /** @see BcHydro_2012 */
+  BCHYDRO_12_BASIN_SLAB(
+      BcHydro_2012.BasinSlab.class,
+      BcHydro_2012.BasinSlab.NAME,
+      BcHydro_2012.COEFFS,
+      BcHydro_2012.CONSTRAINTS),
+
   /** @see YoungsEtAl_1997 */
   YOUNGS_97_INTER(
       YoungsEtAl_1997.Interface.class,
@@ -255,6 +276,20 @@ public enum Gmm {
       ZhaoEtAl_2006.COEFFS,
       ZhaoEtAl_2006.CONSTRAINTS),
 
+  /** @see ZhaoEtAl_2006 */
+  ZHAO_06_BASIN_INTERFACE(
+      ZhaoEtAl_2006.BasinInterface.class,
+      ZhaoEtAl_2006.BasinInterface.NAME,
+      ZhaoEtAl_2006.COEFFS,
+      ZhaoEtAl_2006.CONSTRAINTS),
+
+  /** @see ZhaoEtAl_2006 */
+  ZHAO_06_BASIN_SLAB(
+      ZhaoEtAl_2006.BasinSlab.class,
+      ZhaoEtAl_2006.BasinSlab.NAME,
+      ZhaoEtAl_2006.COEFFS,
+      ZhaoEtAl_2006.CONSTRAINTS),
+
   /*
    * Base implementations of the Gmm used in the 2008 CEUS model all work with
    * and assume magnitude = Mw. The method converter() is provided to allow
@@ -974,6 +1009,13 @@ public enum Gmm {
             BCHYDRO_12_INTER,
             ZHAO_06_INTER)),
 
+    WUS_18_INTERFACE(
+        "2018 Subduction Interface (WUS) beta",
+        ImmutableList.of(
+            AM_09_BASIN_INTERFACE,
+            BCHYDRO_12_BASIN_INTERFACE,
+            ZHAO_06_BASIN_INTERFACE)),
+    
     WUS_14_SLAB(
         "2014 Subduction Intraslab (WUS)",
         ImmutableList.of(
@@ -982,6 +1024,12 @@ public enum Gmm {
             BCHYDRO_12_SLAB,
             ZHAO_06_SLAB)),
 
+    WUS_18_SLAB(
+        "2018 Subduction Intraslab (WUS) beta",
+        ImmutableList.of(
+            BCHYDRO_12_BASIN_SLAB,
+            ZHAO_06_BASIN_SLAB)),
+
     CEUS_08_STABLE_CRUST(
         "2008 Stable Crust (CEUS)",
         ImmutableList.of(
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/GmmUtils.java b/src/gov/usgs/earthquake/nshmp/gmm/GmmUtils.java
index 9e9d73c99a51605b3c14c0fb5ea0eaa5e2056e20..e3bec7ed5527c0b8f9e03b3fb0c7d346d694e7bd 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/GmmUtils.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/GmmUtils.java
@@ -7,8 +7,6 @@ import static gov.usgs.earthquake.nshmp.gmm.FaultStyle.STRIKE_SLIP;
 import static gov.usgs.earthquake.nshmp.gmm.FaultStyle.UNKNOWN;
 import static gov.usgs.earthquake.nshmp.gmm.Imt.PGA;
 import static gov.usgs.earthquake.nshmp.gmm.Imt.SA0P02;
-import static gov.usgs.earthquake.nshmp.gmm.SiteClass.HARD_ROCK;
-import static gov.usgs.earthquake.nshmp.gmm.SiteClass.SOFT_ROCK;
 import static java.lang.Math.log;
 
 import com.google.common.collect.Iterables;
@@ -43,6 +41,11 @@ public final class GmmUtils {
    */
   static final double LN_G_CM_TO_M = log(980.0);
 
+  enum CeusSiteClass {
+    SOFT_ROCK,
+    HARD_ROCK;
+  }
+
   /**
    * Returns the NSHMP interpretation of fault type based on rake; divisions are
    * on 45° diagonals.
@@ -267,12 +270,12 @@ public final class GmmUtils {
    * @param vs30
    * @return the site class corresponding to the supplied vs30
    */
-  static SiteClass ceusSiteClass(final double vs30) {
+  static CeusSiteClass ceusSiteClass(final double vs30) {
     if (vs30 == 760.0) {
-      return SOFT_ROCK;
+      return CeusSiteClass.SOFT_ROCK;
     }
     if (vs30 == 2000.0) {
-      return HARD_ROCK;
+      return CeusSiteClass.HARD_ROCK;
     }
     throw new IllegalArgumentException("Unsupported CEUS vs30: " + vs30);
   }
@@ -286,7 +289,7 @@ public final class GmmUtils {
 
     double μ = table.get(r, m);
 
-    if (ceusSiteClass(vs30) == SOFT_ROCK) {
+    if (ceusSiteClass(vs30) == CeusSiteClass.SOFT_ROCK) {
       // NOTE this scaling is very atkinson table specific
       // we should probably be checking that period <= 0.02
       // Also, notes in fortran say gm scales with R for PGA
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/GroundMotionTables.java b/src/gov/usgs/earthquake/nshmp/gmm/GroundMotionTables.java
index a4ac8d51b01dda4d21eb4b28a1c59194dc027745..185b784d2101e1f99fcba1070993a3fb0ae0ecd7 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/GroundMotionTables.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/GroundMotionTables.java
@@ -36,6 +36,7 @@ import java.util.Set;
 import java.util.logging.Logger;
 
 import gov.usgs.earthquake.nshmp.data.Data;
+import gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass;
 import gov.usgs.earthquake.nshmp.gmm.GroundMotionTables.GroundMotionTable.Position;
 import gov.usgs.earthquake.nshmp.internal.Parsing;
 import gov.usgs.earthquake.nshmp.internal.Parsing.Delimiter;
@@ -52,8 +53,8 @@ import gov.usgs.earthquake.nshmp.internal.Parsing.Delimiter;
  */
 final class GroundMotionTables {
 
-  static GroundMotionTable getFrankel96(Imt imt, SiteClass siteClass) {
-    return siteClass == SiteClass.SOFT_ROCK ? FRANKEL_SOFT_ROCK.get(imt)
+  static GroundMotionTable getFrankel96(Imt imt, CeusSiteClass siteClass) {
+    return siteClass == CeusSiteClass.SOFT_ROCK ? FRANKEL_SOFT_ROCK.get(imt)
         : FRANKEL_HARD_ROCK.get(imt);
   }
 
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/SilvaEtAl_2002.java b/src/gov/usgs/earthquake/nshmp/gmm/SilvaEtAl_2002.java
index 9fb1d334cc7429acb5f0ddb75da90a4e835fee49..68057bd6c8c92c5c0bbdcf5ff3e6b68533c0b150 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/SilvaEtAl_2002.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/SilvaEtAl_2002.java
@@ -3,8 +3,8 @@ package gov.usgs.earthquake.nshmp.gmm;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.MW;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.RJB;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.VS30;
+import static gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass.HARD_ROCK;
 import static gov.usgs.earthquake.nshmp.gmm.MagConverter.NONE;
-import static gov.usgs.earthquake.nshmp.gmm.SiteClass.HARD_ROCK;
 import static java.lang.Math.exp;
 
 import com.google.common.collect.Range;
@@ -12,6 +12,7 @@ import com.google.common.collect.Range;
 import java.util.Map;
 
 import gov.usgs.earthquake.nshmp.gmm.GmmInput.Constraints;
+import gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass;
 
 /**
  * Implementation of the Silva et al. (2002) ground motion model for stable
@@ -90,7 +91,7 @@ public class SilvaEtAl_2002 implements GroundMotionModel, ConvertsMag {
 
   @Override
   public final ScalarGroundMotion calc(final GmmInput in) {
-    SiteClass siteClass = GmmUtils.ceusSiteClass(in.vs30);
+    CeusSiteClass siteClass = GmmUtils.ceusSiteClass(in.vs30);
     double μ = calcMean(coeffs, converter().convert(in.Mw), in.rJB, siteClass);
     return DefaultScalarGroundMotion.create(μ, coeffs.σ);
   }
@@ -101,7 +102,7 @@ public class SilvaEtAl_2002 implements GroundMotionModel, ConvertsMag {
   }
 
   private static final double calcMean(final Coefficients c, final double Mw, final double rJB,
-      final SiteClass siteClass) {
+      final CeusSiteClass siteClass) {
 
     double c1 = (siteClass == HARD_ROCK) ? c.c1hr : c.c1;
     double gnd0 = c1 + c.c2 * Mw + c.c10 * (Mw - 6.0) * (Mw - 6.0);
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/SiteClass.java b/src/gov/usgs/earthquake/nshmp/gmm/SiteClass.java
deleted file mode 100644
index 40a2236137c0d715432c5d0e142bf142f6bd0957..0000000000000000000000000000000000000000
--- a/src/gov/usgs/earthquake/nshmp/gmm/SiteClass.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package gov.usgs.earthquake.nshmp.gmm;
-
-/**
- * @author Peter Powers
- */
-enum SiteClass {
-  SOFT_ROCK,
-  HARD_ROCK;
-}
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/SomervilleEtAl_2001.java b/src/gov/usgs/earthquake/nshmp/gmm/SomervilleEtAl_2001.java
index 1c7654e7973c4ca8abcf3a0b3d5c878180b6ad6b..8e4bf70479f6bcf20900493717aee37c4f381f37 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/SomervilleEtAl_2001.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/SomervilleEtAl_2001.java
@@ -3,7 +3,7 @@ package gov.usgs.earthquake.nshmp.gmm;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.MW;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.RJB;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.VS30;
-import static gov.usgs.earthquake.nshmp.gmm.SiteClass.HARD_ROCK;
+import static gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass.HARD_ROCK;
 import static gov.usgs.earthquake.nshmp.util.Maths.hypot;
 import static java.lang.Math.log;
 
@@ -12,6 +12,7 @@ import com.google.common.collect.Range;
 import java.util.Map;
 
 import gov.usgs.earthquake.nshmp.gmm.GmmInput.Constraints;
+import gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass;
 
 /**
  * Implementation of the hard rock ground motion model for the Central and
@@ -92,7 +93,7 @@ public final class SomervilleEtAl_2001 implements GroundMotionModel {
   private static final double calcMean(final Coefficients c, final double Mw, final double rJB,
       final double vs30) {
 
-    SiteClass siteClass = GmmUtils.ceusSiteClass(vs30);
+    CeusSiteClass siteClass = GmmUtils.ceusSiteClass(vs30);
     double gnd = (siteClass == HARD_ROCK) ? c.a1h : c.a1;
     gnd += c.a2 * (Mw - 6.4) + c.a7 * (8.5 - Mw) * (8.5 - Mw);
 
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/ToroEtAl_1997.java b/src/gov/usgs/earthquake/nshmp/gmm/ToroEtAl_1997.java
index 03f87e275654aef6941d31efbc72e07fff98429c..3ed2c156d8948367f19f39aebe2c35f34d8a6c0d 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/ToroEtAl_1997.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/ToroEtAl_1997.java
@@ -3,9 +3,9 @@ package gov.usgs.earthquake.nshmp.gmm;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.MW;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.RJB;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.VS30;
+import static gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass.HARD_ROCK;
 import static gov.usgs.earthquake.nshmp.gmm.MagConverter.MB_TO_MW_ATKIN_BOORE;
 import static gov.usgs.earthquake.nshmp.gmm.MagConverter.MB_TO_MW_JOHNSTON;
-import static gov.usgs.earthquake.nshmp.gmm.SiteClass.HARD_ROCK;
 import static java.lang.Math.exp;
 import static java.lang.Math.log;
 import static java.lang.Math.sqrt;
@@ -15,6 +15,7 @@ import com.google.common.collect.Range;
 import java.util.Map;
 
 import gov.usgs.earthquake.nshmp.gmm.GmmInput.Constraints;
+import gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass;
 
 /**
  * Implementation of the Toro et al. (1997) ground motion model for stable
@@ -120,7 +121,7 @@ public abstract class ToroEtAl_1997 implements GroundMotionModel {
     double mag = in.Mw;
     double rJB = in.rJB;
 
-    SiteClass siteClass = GmmUtils.ceusSiteClass(in.vs30);
+    CeusSiteClass siteClass = GmmUtils.ceusSiteClass(in.vs30);
 
     double thsq = c.th * c.th;
 
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/ZhaoEtAl_2006.java b/src/gov/usgs/earthquake/nshmp/gmm/ZhaoEtAl_2006.java
index 976094ef8fed360f25d73a0093ab2f16bc85c946..7974351da89d7b7b553c89ca441fa10df8c6c0ed 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/ZhaoEtAl_2006.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/ZhaoEtAl_2006.java
@@ -1,9 +1,11 @@
 package gov.usgs.earthquake.nshmp.gmm;
 
+import static gov.usgs.earthquake.nshmp.gmm.CampbellBozorgnia_2014.basinResponseTerm;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.MW;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.RRUP;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.VS30;
 import static gov.usgs.earthquake.nshmp.gmm.GmmInput.Field.ZTOP;
+import static gov.usgs.earthquake.nshmp.gmm.GmmUtils.LN_G_CM_TO_M;
 import static java.lang.Math.exp;
 import static java.lang.Math.log;
 import static java.lang.Math.min;
@@ -13,8 +15,10 @@ import com.google.common.collect.Range;
 
 import java.util.Map;
 
+import gov.usgs.earthquake.nshmp.data.Interpolator;
 import gov.usgs.earthquake.nshmp.eq.Earthquakes;
 import gov.usgs.earthquake.nshmp.gmm.GmmInput.Constraints;
+import gov.usgs.earthquake.nshmp.gmm.ZhaoEtAl_2016.SiteClass;
 
 /**
  * Abstract implementation of the subduction ground motion model by Zhao et al.
@@ -50,6 +54,8 @@ import gov.usgs.earthquake.nshmp.gmm.GmmInput.Constraints;
  * @author Peter Powers
  * @see Gmm#ZHAO_06_INTER
  * @see Gmm#ZHAO_06_SLAB
+ * @see Gmm#ZHAO_06_BASIN_INTERFACE
+ * @see Gmm#ZHAO_06_BASIN_SLAB
  */
 public abstract class ZhaoEtAl_2006 implements GroundMotionModel {
 
@@ -63,18 +69,23 @@ public abstract class ZhaoEtAl_2006 implements GroundMotionModel {
       .set(VS30, Range.closed(150.0, 1000.0))
       .build();
 
+  // TODO eventually remove 0.75s coeffs in favor of interpolation
+  // between 0.7s and 0.8s
+
+  // TODO Zhao06.csv contains higher precision coefficents than
+  // supplied in publication; consider revising d, Sr, Si, Ssl
+
   static final CoefficientContainer COEFFS = new CoefficientContainer("Zhao06.csv");
 
   private static final double HC = 15.0;
   private static final double MC_S = 6.5;
   private static final double MC_I = 6.3;
-  private static final double GCOR = 6.88806;
   private static final double MAX_SLAB_DEPTH = 125.0;
   private static final double INTERFACE_DEPTH = 20.0;
 
   private static final class Coefficients {
 
-    final double a, b, c, d, e, Si, Ss, Ssl, C1, C2, C3, σ, τ, τS, Ps, Qi, Qs, Wi, Ws;
+    final double a, b, c, d, e, Si, Ss, Ssl, C1, C2, C3, C4, σ, τ, τS, Ps, Qi, Qs, Wi, Ws;
 
     // unused
     // final double Sr, tauI;
@@ -92,6 +103,7 @@ public abstract class ZhaoEtAl_2006 implements GroundMotionModel {
       C1 = coeffs.get("C1");
       C2 = coeffs.get("C2");
       C3 = coeffs.get("C3");
+      C4 = coeffs.get("C4");
       σ = coeffs.get("sigma");
       Ï„ = coeffs.get("tau");
       Ï„S = coeffs.get("tauS");
@@ -104,34 +116,39 @@ public abstract class ZhaoEtAl_2006 implements GroundMotionModel {
   }
 
   private final Coefficients coeffs;
+  private final CampbellBozorgnia_2014 cb14;
 
   ZhaoEtAl_2006(final Imt imt) {
     coeffs = new Coefficients(imt, COEFFS);
+    cb14 = new CampbellBozorgnia_2014(imt);
   }
 
   @Override
   public final ScalarGroundMotion calc(GmmInput in) {
-    double μ = calcMean(coeffs, isSlab(), in);
+    double fSite = basinTerm() ? siteTermSmooth(coeffs, in.vs30) : siteTermStep(coeffs, in.vs30);
+    // possibly pick up basin term from CB14
+    double fBasin = basinTerm() ? basinResponseTerm(cb14.coeffs, in.vs30, in.z2p5) : 0.0;
+    double μ = calcMean(coeffs, isSlab(), fSite, in) + fBasin;
     double σ = calcStdDev(coeffs, isSlab());
     return DefaultScalarGroundMotion.create(μ, σ);
   }
 
   abstract boolean isSlab();
 
-  private static final double calcMean(final Coefficients c, final boolean slab,
+  abstract boolean basinTerm();
+
+  private static final double calcMean(
+      final Coefficients c,
+      final boolean slab,
+      final double fSite,
       final GmmInput in) {
 
     double Mw = in.Mw;
     double rRup = Math.max(in.rRup, 1.0); // avoid ln(0) below
     double zTop = slab ? min(in.zTop, MAX_SLAB_DEPTH) : INTERFACE_DEPTH;
-    double vs30 = in.vs30;
-
-    double site = (vs30 >= 600.0) ? c.C1 : (vs30 >= 300.0) ? c.C2 : c.C3;
 
     double hfac = (zTop < HC) ? 0.0 : zTop - HC;
-
     double m2 = Mw - (slab ? MC_S : MC_I);
-
     double afac, xmcor;
 
     if (slab) {
@@ -143,19 +160,54 @@ public abstract class ZhaoEtAl_2006 implements GroundMotionModel {
     }
 
     double r = rRup + c.c * exp(c.d * Mw);
-    double gnd = c.a * Mw + c.b * rRup - Math.log(r) + site;
-    gnd = gnd + c.e * hfac + afac;
-    return gnd + xmcor - GCOR;
-
+    return c.a * Mw + c.b * rRup - Math.log(r) +
+        c.e * hfac + afac + fSite + xmcor -
+        LN_G_CM_TO_M;
   }
 
   private static final double calcStdDev(final Coefficients c, final boolean slab) {
-    // Frankel email may 22 2007: use sigt from table 5. Not the
-    // reduced-tau sigma associated with mag correction seen in
-    // table 6. Zhao says "truth" is somewhere in between.
+    /*
+     * Frankel email may 22 2007: use sigt from table 5. Not the reduced-tau
+     * sigma associated with mag correction seen in table 6. Zhao says "truth"
+     * is somewhere in between.
+     */
     return sqrt(c.σ * c.σ + (slab ? c.τS * c.τS : c.τ * c.τ));
   }
 
+  private static final double siteTermStep(final Coefficients c, double vs30) {
+    return (vs30 >= 600.0) ? c.C1 : (vs30 >= 300.0) ? c.C2 : c.C3;
+  }
+
+  private static final double siteTermSmooth(final Coefficients c, double vs30) {
+    Range<SiteClass> siteRange = ZhaoEtAl_2016.siteRange(vs30);
+    SiteClass lower = siteRange.upperEndpoint();
+    SiteClass upper = siteRange.lowerEndpoint();
+    if (lower == upper) {
+      return siteCoeff(c, lower);
+    }
+    double fsLower = siteCoeff(c, lower);
+    double fsUpper = siteCoeff(c, upper);
+    return Interpolator.findY(
+        lower.vs30, fsLower,
+        upper.vs30, fsUpper,
+        vs30);
+  }
+
+  private static double siteCoeff(final Coefficients c, final SiteClass siteClass) {
+    switch (siteClass) {
+      case I:
+        return c.C1;
+      case II:
+        return c.C2;
+      case III:
+        return c.C3;
+      case IV:
+        return c.C4;
+      default:
+        throw new IllegalStateException();
+    }
+  }
+
   static final class Interface extends ZhaoEtAl_2006 {
     static final String NAME = ZhaoEtAl_2006.NAME + ": Interface";
 
@@ -167,6 +219,11 @@ public abstract class ZhaoEtAl_2006 implements GroundMotionModel {
     final boolean isSlab() {
       return false;
     }
+
+    @Override
+    boolean basinTerm() {
+      return false;
+    }
   }
 
   static final class Slab extends ZhaoEtAl_2006 {
@@ -180,6 +237,46 @@ public abstract class ZhaoEtAl_2006 implements GroundMotionModel {
     final boolean isSlab() {
       return true;
     }
+
+    @Override
+    boolean basinTerm() {
+      return false;
+    }
+  }
+
+  static final class BasinInterface extends ZhaoEtAl_2006 {
+    static final String NAME = ZhaoEtAl_2006.NAME + " Basin: Interface";
+
+    BasinInterface(Imt imt) {
+      super(imt);
+    }
+
+    @Override
+    final boolean isSlab() {
+      return false;
+    }
+
+    @Override
+    boolean basinTerm() {
+      return true;
+    }
   }
 
+  static final class BasinSlab extends ZhaoEtAl_2006 {
+    static final String NAME = ZhaoEtAl_2006.NAME + " Basin: Slab";
+
+    BasinSlab(Imt imt) {
+      super(imt);
+    }
+
+    @Override
+    final boolean isSlab() {
+      return true;
+    }
+
+    @Override
+    boolean basinTerm() {
+      return true;
+    }
+  }
 }
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/ZhaoEtAl_2016.java b/src/gov/usgs/earthquake/nshmp/gmm/ZhaoEtAl_2016.java
index cd91483793ee98a48016d2eba7f0239b9617bc08..b810f4ef7b064ebf5e210c45fbfd3994cb5d26b1 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/ZhaoEtAl_2016.java
+++ b/src/gov/usgs/earthquake/nshmp/gmm/ZhaoEtAl_2016.java
@@ -129,12 +129,12 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
    * and model. The interface model has depth dependent values; zTop is ignored
    * by other implementations.
    */
-  abstract double elasticSiteAmpRatio(ZhaoSiteClass siteClass, double zTop);
+  abstract double elasticSiteAmpRatio(SiteClass siteClass, double zTop);
 
   /*
    * Model and site-class dependent nonlinear soil site smoothing factor.
    */
-  abstract double smoothingFactor(ZhaoSiteClass siteClass);
+  abstract double smoothingFactor(SiteClass siteClass);
 
   abstract double sigma();
 
@@ -148,13 +148,13 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
   }
 
   private double siteTerm(GmmInput in, double saRock) {
-    Range<ZhaoSiteClass> siteRange = siteRange(in.vs30);
+    Range<SiteClass> siteRange = siteRange(in.vs30);
     /*
      * Reverse range values here because lower site classes correspond to higher
      * Vs30 values.
      */
-    ZhaoSiteClass lower = siteRange.upperEndpoint();
-    ZhaoSiteClass upper = siteRange.lowerEndpoint();
+    SiteClass lower = siteRange.upperEndpoint();
+    SiteClass upper = siteRange.lowerEndpoint();
     if (lower == upper) {
       return siteTerm(lower, in.zTop, saRock);
     }
@@ -166,7 +166,7 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
         in.vs30);
   }
 
-  private double siteTerm(ZhaoSiteClass siteClass, double zTop, double saRock) {
+  private double siteTerm(SiteClass siteClass, double zTop, double saRock) {
     double aNmax = elasticSiteAmpRatio(siteClass, zTop);
     double aMax = siteAmp.aMax.get(siteClass);
     double sRC = siteAmp.sRc.get(siteClass);
@@ -189,7 +189,7 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
 
       /* Site amplification */
       final double AmSCI, s2, s3, s4;
-      final Map<ZhaoSiteClass, Double> fsr;
+      final Map<SiteClass, Double> fsr;
 
       /* Unused or constant: FumRV, FumNS, gum, eum, evcr, sigma, tau */
 
@@ -215,24 +215,24 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
         s4 = coeffs.get("S4");
 
         fsr = Maps.immutableEnumMap(ImmutableMap.of(
-            ZhaoSiteClass.I, coeffs.get("FsrCrI"),
-            ZhaoSiteClass.II, coeffs.get("FsrCrII"),
-            ZhaoSiteClass.III, coeffs.get("FsrCrIII"),
-            ZhaoSiteClass.IV, coeffs.get("FsrCrIV")));
+            SiteClass.I, coeffs.get("FsrCrI"),
+            SiteClass.II, coeffs.get("FsrCrII"),
+            SiteClass.III, coeffs.get("FsrCrIII"),
+            SiteClass.IV, coeffs.get("FsrCrIV")));
       }
     }
 
     private final Coefficients c;
-    private final Map<ZhaoSiteClass, Double> aNmax;
+    private final Map<SiteClass, Double> aNmax;
 
     ShallowCrust(Imt imt) {
       super(imt);
       c = new Coefficients(imt, COEFFS_CRUST);
       aNmax = Maps.immutableEnumMap(ImmutableMap.of(
-          ZhaoSiteClass.I, c.AmSCI,
-          ZhaoSiteClass.II, c.AmSCI * exp(c.s2),
-          ZhaoSiteClass.III, c.AmSCI * exp(c.s3),
-          ZhaoSiteClass.IV, c.AmSCI * exp(c.s4)));
+          SiteClass.I, c.AmSCI,
+          SiteClass.II, c.AmSCI * exp(c.s2),
+          SiteClass.III, c.AmSCI * exp(c.s3),
+          SiteClass.IV, c.AmSCI * exp(c.s4)));
     }
 
     @Override
@@ -261,12 +261,12 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
     }
 
     @Override
-    final double elasticSiteAmpRatio(final ZhaoSiteClass siteClass, double zTop) {
+    final double elasticSiteAmpRatio(final SiteClass siteClass, double zTop) {
       return aNmax.get(siteClass);
     }
 
     @Override
-    double smoothingFactor(ZhaoSiteClass siteClass) {
+    double smoothingFactor(SiteClass siteClass) {
       return c.fsr.get(siteClass);
     }
 
@@ -290,7 +290,7 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
 
       /* Site amplification */
       final double AmSCI, s2, s3, s4;
-      final Map<ZhaoSiteClass, Double> fsr;
+      final Map<SiteClass, Double> fsr;
 
       /* Unused or constant: FcrN, bcr, gcr, ecr, evcr, sigma, tau */
 
@@ -316,24 +316,24 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
         s4 = coeffs.get("S4");
 
         fsr = Maps.immutableEnumMap(ImmutableMap.of(
-            ZhaoSiteClass.I, coeffs.get("FsrUmI"),
-            ZhaoSiteClass.II, coeffs.get("FsrUmII"),
-            ZhaoSiteClass.III, coeffs.get("FsrUmIII"),
-            ZhaoSiteClass.IV, coeffs.get("FsrUmIV")));
+            SiteClass.I, coeffs.get("FsrUmI"),
+            SiteClass.II, coeffs.get("FsrUmII"),
+            SiteClass.III, coeffs.get("FsrUmIII"),
+            SiteClass.IV, coeffs.get("FsrUmIV")));
       }
     }
 
     private final Coefficients c;
-    private final Map<ZhaoSiteClass, Double> aNmax;
+    private final Map<SiteClass, Double> aNmax;
 
     UpperMantle(Imt imt) {
       super(imt);
       c = new Coefficients(imt, COEFFS_CRUST);
       aNmax = Maps.immutableEnumMap(ImmutableMap.of(
-          ZhaoSiteClass.I, c.AmSCI,
-          ZhaoSiteClass.II, c.AmSCI * exp(c.s2),
-          ZhaoSiteClass.III, c.AmSCI * exp(c.s3),
-          ZhaoSiteClass.IV, c.AmSCI * exp(c.s4)));
+          SiteClass.I, c.AmSCI,
+          SiteClass.II, c.AmSCI * exp(c.s2),
+          SiteClass.III, c.AmSCI * exp(c.s3),
+          SiteClass.IV, c.AmSCI * exp(c.s4)));
     }
 
     @Override
@@ -362,12 +362,12 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
     }
 
     @Override
-    final double elasticSiteAmpRatio(final ZhaoSiteClass siteClass, double zTop) {
+    final double elasticSiteAmpRatio(final SiteClass siteClass, double zTop) {
       return aNmax.get(siteClass);
     }
 
     @Override
-    double smoothingFactor(ZhaoSiteClass siteClass) {
+    double smoothingFactor(SiteClass siteClass) {
       return c.fsr.get(siteClass);
     }
 
@@ -395,7 +395,7 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
 
       /* Site amplification */
       final double AmSCI, s2, s3, s4, s5, s6, s7;
-      final Map<ZhaoSiteClass, Double> fsr;
+      final Map<SiteClass, Double> fsr;
 
       /* Unused or constant: c2, eV, sigma, tau */
 
@@ -424,30 +424,30 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
         s7 = coeffs.get("S7");
 
         fsr = Maps.immutableEnumMap(ImmutableMap.of(
-            ZhaoSiteClass.I, coeffs.get("FsrI"),
-            ZhaoSiteClass.II, coeffs.get("FsrII"),
-            ZhaoSiteClass.III, coeffs.get("FsrIII"),
-            ZhaoSiteClass.IV, coeffs.get("FsrIV")));
+            SiteClass.I, coeffs.get("FsrI"),
+            SiteClass.II, coeffs.get("FsrII"),
+            SiteClass.III, coeffs.get("FsrIII"),
+            SiteClass.IV, coeffs.get("FsrIV")));
       }
     }
 
     private final Coefficients c;
-    private final Map<ZhaoSiteClass, Double> aNmax_shallow;
-    private final Map<ZhaoSiteClass, Double> aNmax_deep;
+    private final Map<SiteClass, Double> aNmax_shallow;
+    private final Map<SiteClass, Double> aNmax_deep;
 
     Interface(Imt imt) {
       super(imt);
       c = new Coefficients(imt, COEFFS_INTER);
       aNmax_shallow = Maps.immutableEnumMap(ImmutableMap.of(
-          ZhaoSiteClass.I, c.AmSCI,
-          ZhaoSiteClass.II, c.AmSCI * exp(c.s2),
-          ZhaoSiteClass.III, c.AmSCI * exp(c.s3),
-          ZhaoSiteClass.IV, c.AmSCI * exp(c.s4)));
+          SiteClass.I, c.AmSCI,
+          SiteClass.II, c.AmSCI * exp(c.s2),
+          SiteClass.III, c.AmSCI * exp(c.s3),
+          SiteClass.IV, c.AmSCI * exp(c.s4)));
       aNmax_deep = Maps.immutableEnumMap(ImmutableMap.of(
-          ZhaoSiteClass.I, c.AmSCI,
-          ZhaoSiteClass.II, c.AmSCI * exp(c.s5),
-          ZhaoSiteClass.III, c.AmSCI * exp(c.s6),
-          ZhaoSiteClass.IV, c.AmSCI * exp(c.s7)));
+          SiteClass.I, c.AmSCI,
+          SiteClass.II, c.AmSCI * exp(c.s5),
+          SiteClass.III, c.AmSCI * exp(c.s6),
+          SiteClass.IV, c.AmSCI * exp(c.s7)));
     }
 
     @Override
@@ -475,12 +475,12 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
     }
 
     @Override
-    final double elasticSiteAmpRatio(final ZhaoSiteClass siteClass, double zTop) {
+    final double elasticSiteAmpRatio(final SiteClass siteClass, double zTop) {
       return (zTop > 25.0 ? aNmax_deep : aNmax_shallow).get(siteClass);
     }
 
     @Override
-    double smoothingFactor(ZhaoSiteClass siteClass) {
+    double smoothingFactor(SiteClass siteClass) {
       return c.fsr.get(siteClass);
     }
 
@@ -509,7 +509,7 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
 
       /* Site amplification */
       final double AmSCI, s2, s3, s4;
-      final Map<ZhaoSiteClass, Double> fsr;
+      final Map<SiteClass, Double> fsr;
 
       /* Unused or constant: c2, eV, sigma, tau */
 
@@ -534,24 +534,24 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
         s4 = coeffs.get("S4");
 
         fsr = Maps.immutableEnumMap(ImmutableMap.of(
-            ZhaoSiteClass.I, coeffs.get("FsrI"),
-            ZhaoSiteClass.II, coeffs.get("FsrII"),
-            ZhaoSiteClass.III, coeffs.get("FsrIII"),
-            ZhaoSiteClass.IV, coeffs.get("FsrIV")));
+            SiteClass.I, coeffs.get("FsrI"),
+            SiteClass.II, coeffs.get("FsrII"),
+            SiteClass.III, coeffs.get("FsrIII"),
+            SiteClass.IV, coeffs.get("FsrIV")));
       }
     }
 
     private final Coefficients c;
-    private final Map<ZhaoSiteClass, Double> aNmax;
+    private final Map<SiteClass, Double> aNmax;
 
     Slab(Imt imt) {
       super(imt);
       c = new Coefficients(imt, COEFFS_SLAB);
       aNmax = Maps.immutableEnumMap(ImmutableMap.of(
-          ZhaoSiteClass.I, c.AmSCI,
-          ZhaoSiteClass.II, c.AmSCI * exp(c.s2),
-          ZhaoSiteClass.III, c.AmSCI * exp(c.s3),
-          ZhaoSiteClass.IV, c.AmSCI * exp(c.s4)));
+          SiteClass.I, c.AmSCI,
+          SiteClass.II, c.AmSCI * exp(c.s2),
+          SiteClass.III, c.AmSCI * exp(c.s3),
+          SiteClass.IV, c.AmSCI * exp(c.s4)));
     }
 
     @Override
@@ -583,12 +583,12 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
     }
 
     @Override
-    final double elasticSiteAmpRatio(final ZhaoSiteClass siteClass, double zTop) {
+    final double elasticSiteAmpRatio(final SiteClass siteClass, double zTop) {
       return aNmax.get(siteClass);
     }
 
     @Override
-    double smoothingFactor(ZhaoSiteClass siteClass) {
+    double smoothingFactor(SiteClass siteClass) {
       return c.fsr.get(siteClass);
     }
 
@@ -600,23 +600,23 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
 
   static class SiteAmp {
 
-    final Map<ZhaoSiteClass, Double> aMax;
-    final Map<ZhaoSiteClass, Double> sRc;
+    final Map<SiteClass, Double> aMax;
+    final Map<SiteClass, Double> sRc;
 
     SiteAmp(Imt imt, CoefficientContainer cc) {
       Map<String, Double> coeffs = cc.get(imt);
 
       aMax = Maps.immutableEnumMap(ImmutableMap.of(
-          ZhaoSiteClass.I, coeffs.get("AmaxI"),
-          ZhaoSiteClass.II, coeffs.get("AmaxII"),
-          ZhaoSiteClass.III, coeffs.get("AmaxIII"),
-          ZhaoSiteClass.IV, coeffs.get("AmaxIV")));
+          SiteClass.I, coeffs.get("AmaxI"),
+          SiteClass.II, coeffs.get("AmaxII"),
+          SiteClass.III, coeffs.get("AmaxIII"),
+          SiteClass.IV, coeffs.get("AmaxIV")));
 
       sRc = Maps.immutableEnumMap(ImmutableMap.of(
-          ZhaoSiteClass.I, coeffs.get("SrcI"),
-          ZhaoSiteClass.II, coeffs.get("SrcII"),
-          ZhaoSiteClass.III, coeffs.get("SrcIII"),
-          ZhaoSiteClass.IV, coeffs.get("SrcIV")));
+          SiteClass.I, coeffs.get("SrcI"),
+          SiteClass.II, coeffs.get("SrcII"),
+          SiteClass.III, coeffs.get("SrcIII"),
+          SiteClass.IV, coeffs.get("SrcIV")));
     }
   }
 
@@ -672,21 +672,21 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
     return (t < β) ? 0.0 : sqrt(t - β);
   }
 
-  private static Range<ZhaoSiteClass> siteRange(double vs30) {
-    if (vs30 >= ZhaoSiteClass.I.vs30) {
-      return Range.singleton(ZhaoSiteClass.I);
-    } else if (vs30 >= ZhaoSiteClass.II.vs30) {
-      return Range.closedOpen(ZhaoSiteClass.I, ZhaoSiteClass.II);
-    } else if (vs30 >= ZhaoSiteClass.III.vs30) {
-      return Range.closedOpen(ZhaoSiteClass.II, ZhaoSiteClass.III);
-    } else if (vs30 >= ZhaoSiteClass.IV.vs30) {
-      return Range.closedOpen(ZhaoSiteClass.III, ZhaoSiteClass.IV);
+  static Range<SiteClass> siteRange(double vs30) {
+    if (vs30 >= SiteClass.I.vs30) {
+      return Range.singleton(SiteClass.I);
+    } else if (vs30 >= SiteClass.II.vs30) {
+      return Range.closedOpen(SiteClass.I, SiteClass.II);
+    } else if (vs30 >= SiteClass.III.vs30) {
+      return Range.closedOpen(SiteClass.II, SiteClass.III);
+    } else if (vs30 >= SiteClass.IV.vs30) {
+      return Range.closedOpen(SiteClass.III, SiteClass.IV);
     } else {
-      return Range.singleton(ZhaoSiteClass.IV);
+      return Range.singleton(SiteClass.IV);
     }
   }
 
-  static enum ZhaoSiteClass {
+  static enum SiteClass {
     I(760.0, 0.91),
     II(450.0, 1.023),
     III(250.0, 1.034),
@@ -695,7 +695,7 @@ public abstract class ZhaoEtAl_2016 implements GroundMotionModel {
     final double vs30;
     final double impedance;
 
-    private ZhaoSiteClass(double vs30, double impedance) {
+    private SiteClass(double vs30, double impedance) {
       this.vs30 = vs30;
       this.impedance = impedance;
     }
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/coeffs/AM09.csv b/src/gov/usgs/earthquake/nshmp/gmm/coeffs/AM09.csv
index cdbbfe54319568d85ee4084dab97dfb581239e75..1eb6d0584bf6f6ec636d28414b7d3a68d9178ab6 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/coeffs/AM09.csv
+++ b/src/gov/usgs/earthquake/nshmp/gmm/coeffs/AM09.csv
@@ -9,7 +9,7 @@ PGA,5.006,-1.5573,-0.00034,0.1774,0.0827,0.24
 0.75,3.764,-0.7541,-0.00164,0.2029,0.0257,0.28
 1,3.621,-0.7376,-0.00128,0.2116,0.0328,0.29
 2,3.241,-0.6741,-0.00081,0.2696,-0.0064,0.3
-2.5,3.104,-0.6585,-0.00063,0.299,-0.0074,0.3
+# 2.5,3.104,-0.6585,-0.00063,0.299,-0.0074,0.3
 3,2.978,-0.6431,-0.00057,0.3258,-0.0103,0.3
 4,2.814,-0.6108,-0.00046,0.349,-0.0299,0.3
 5,2.671,-0.5942,-0.0004,0.3822,-0.0417,0.32
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/coeffs/BCHydro12.csv b/src/gov/usgs/earthquake/nshmp/gmm/coeffs/BCHydro12.csv
index 166a5724031bf6f0df7a5716dbe5d0b7da7997e3..9f2bcd32c226f4c39ce4f2c9153c3f1eb81e7e5b 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/coeffs/BCHydro12.csv
+++ b/src/gov/usgs/earthquake/nshmp/gmm/coeffs/BCHydro12.csv
@@ -9,15 +9,15 @@ PGA,865.1,-1.186,4.2203,-1.35,-0.0012,1.0988,-1.42,3.12,0.013,0.98,-0.0135,-0.4,
 0.3,587.1,-2.518,4.7945,-1.28,-0.0027,0.8821,-1.18,2.59,0.0128,2.348,-0.0183,-0.28,1.05,-1.06,0,0.2,0.4
 0.4,503,-2.657,4.4644,-1.18,-0.0035,0.7046,-0.98,2.2,0.0127,2.427,-0.0206,-0.23,0.8,-0.78,-0.05,0.15,0.35
 0.5,456.6,-2.669,4.0181,-1.08,-0.0044,0.5799,-0.82,1.92,0.0125,2.399,-0.0231,-0.19,0.662,-0.62,-0.1,0.1,0.3
-0.6,430.3,-2.599,3.6055,-0.99,-0.005,0.5021,-0.7,1.7,0.0124,2.273,-0.0256,-0.16,0.58,-0.5,-0.12,0.08,0.28
+# 0.6,430.3,-2.599,3.6055,-0.99,-0.005,0.5021,-0.7,1.7,0.0124,2.273,-0.0256,-0.16,0.58,-0.5,-0.12,0.08,0.28
 0.75,410.5,-2.401,3.2174,-0.91,-0.0058,0.3687,-0.54,1.42,0.012,1.993,-0.0296,-0.12,0.48,-0.34,-0.15,0.05,0.25
 1,400,-1.955,2.7981,-0.85,-0.0062,0.1746,-0.34,1.1,0.0114,1.47,-0.0363,-0.07,0.33,-0.14,-0.2,0,0.2
 1.5,400,-1.025,2.0123,-0.77,-0.0064,-0.082,-0.05,0.7,0.01,0.408,-0.0493,0,0.31,0,-0.25,-0.05,0.15
 2,400,-0.299,1.4128,-0.71,-0.0064,-0.2821,0.12,0.7,0.0085,-0.401,-0.061,0,0.3,0,-0.3,-0.1,0.1
-2.5,400,0,0.9976,-0.67,-0.0064,-0.4108,0.25,0.7,0.0069,-0.723,-0.0711,0,0.3,0,-0.35,-0.15,0.05
+# 2.5,400,0,0.9976,-0.67,-0.0064,-0.4108,0.25,0.7,0.0069,-0.723,-0.0711,0,0.3,0,-0.35,-0.15,0.05
 3,400,0,0.6443,-0.64,-0.0064,-0.4466,0.3,0.7,0.0054,-0.673,-0.0798,0,0.3,0,-0.4,-0.2,0
 4,400,0,0.0657,-0.58,-0.0064,-0.4344,0.3,0.7,0.0027,-0.627,-0.0935,0,0.3,0,-0.4,-0.2,0
 5,400,0,-0.4624,-0.54,-0.0064,-0.4368,0.3,0.7,0.0005,-0.596,-0.098,0,0.3,0,-0.4,-0.2,0
-6,400,0,-0.9809,-0.5,-0.0064,-0.4586,0.3,0.7,-0.0013,-0.566,-0.098,0,0.3,0,-0.4,-0.2,0
+# 6,400,0,-0.9809,-0.5,-0.0064,-0.4586,0.3,0.7,-0.0013,-0.566,-0.098,0,0.3,0,-0.4,-0.2,0
 7.5,400,0,-1.6017,-0.46,-0.0064,-0.4433,0.3,0.7,-0.0033,-0.528,-0.098,0,0.3,0,-0.4,-0.2,0
 10,400,0,-2.2937,-0.4,-0.0064,-0.4828,0.3,0.7,-0.006,-0.504,-0.098,0,0.3,0,-0.4,-0.2,0
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/coeffs/SP16.csv b/src/gov/usgs/earthquake/nshmp/gmm/coeffs/SP16.csv
index c9185d2829115834dda5727f38b8a5b1c9473428..8fc0482b7b72839a4a7f70450a9a1d2d3fc1e2aa 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/coeffs/SP16.csv
+++ b/src/gov/usgs/earthquake/nshmp/gmm/coeffs/SP16.csv
@@ -1,25 +1,25 @@
-T,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,sigma_reg,sigma_par
-PGA,-0.3002,0.5066,-0.04526,-3.224,0.2998,-1.283,0.1045,-3.0856,0.2778,-0.0007711,3.81,-0.0554,0.978,0.663,0.1,0.288
-PGV,-2.3891,1.259,-0.07901,-0.029386,0.3034,-0.00929,-0.04605,-2.7548,0.3467,-0.0007623,-4.598,-0.41,0.876,0.611,0.194,0.373
-0.01,-0.3472,0.4838,-0.04093,-3.0832,0.2712,-0.9676,0.04983,-2.9695,0.2693,-0.0006695,-4.434,-0.056,0.982,0.664,0.132,0.281
-0.02,0.832,0.1934,-0.0206,-3.1134,0.2786,-1.133,0.05994,-3.5023,0.2901,-0.0005857,-4.412,-0.0559,0.983,0.665,0.0928,0.281
-0.03,1.185,0.1064,-0.01423,-3.1029,0.2792,-1.078,0.05239,-3.5722,0.2865,-0.000622,-4.353,-0.0577,1,0.676,0.0833,0.277
-0.04,1.246,0.08986,-0.01268,-3.0785,0.2773,-0.9743,0.0416,-3.5083,0.2769,-0.0006818,-4.303,-0.0577,1.01,0.688,0.0798,0.279
-0.05,1.1793,0.1037,-0.01321,-3.0488,0.2744,-0.8635,0.03077,-3.3986,0.2659,-0.0007439,-4.266,-0.0578,1.03,0.701,0.0776,0.272
-0.075,0.8045,0.1866,-0.01788,-2.9697,0.266,-0.6122,0.007491,-3.0852,0.2391,-0.0008801,-4.241,-0.0561,1.03,0.721,0.0738,0.252
-0.1,0.35,0.2871,-0.02381,-2.894,0.2576,-0.4123,-0.01012,-2.7947,0.2163,-0.0009848,4.201,-0.0565,1.05,0.732,0.0717,0.265
-0.15,-0.5264,0.4782,-0.03519,-2.761,0.2426,-0.01319,-0.03338,-2.3312,0.1818,-0.001125,4.239,-0.0559,1.04,0.724,0.0716,0.276
-0.2,-1.2884,0.6413,-0.04486,-2.6504,0.2301,0.04637,-0.0469,-1.9927,0.1576,-0.001209,4.325,-0.056,1.03,0.715,0.0743,0.258
-0.25,-1.9422,0.7789,-0.05295,-2.5573,0.2196,0.1631,-0.05478,-1.7399,0.1398,-0.001258,4.438,-0.0537,1.02,0.712,0.0779,0.268
-0.3,-2.5071,0.8961,-0.05976,-2.478,0.2107,0.2407,-0.05919,-1.547,0.1265,-0.001286,4.571,-0.0511,1.01,0.718,0.0815,0.0284
-0.4,-3.436,1.085,-0.07059,-2.3495,0.1961,0.3244,-0.06197,-1.2793,0.1085,-0.001304,-4.872,-0.047,0.987,0.725,0.0876,0.34
-0.5,-4.1699,1.231,-0.07878,-2.251,0.1849,0.3544,-0.06046,-1.1111,0.09757,-0.001294,-5.211,-0.0442,0.981,0.736,0.0923,0.357
-0.75,-5.4797,1.482,-0.09245,-2.0865,0.1659,0.3284,-0.04979,-0.9131,0.0857,-0.001219,-6.154,-0.0384,0.967,0.76,0.0991,0.374
-1,-6.3464,1.641,-0.1006,-1.9931,0.1546,0.253,-0.03709,-0.8641,0.08405,-0.001123,-7.174,-0.0314,0.933,0.77,0.102,0.392
-1.5,-7.4087,1.823,-0.1093,-1.9162,0.1438,0.09019,-0.01551,-0.92,0.09103,-0.0009407,-9.253,-0.0227,0.883,0.776,0.105,0.426
-2,-8.0057,1.916,-0.113,-1.9173,0.1418,-0.03828,-0.001252,-1.0327,0.1016,-0.0007926,-11.22,-0.0184,0.857,0.778,0.106,0.44
-3,-8.5793,1.985,-0.1146,-2.0184,0.1499,-0.1744,0.009393,-1.2453,0.1214,-0.0005919,14.38,-0.0189,0.859,0.777,0.107,0.58
-4,-8.8246,1.99,-0.1131,-2.1475,0.1635,-0.1844,0.003919,-1.3849,0.1357,-0.0004855,16.19,-0.016,0.83,0.766,0.107,0.589
-5,-8.9855,1.975,-0.1105,-2.2496,0.1764,-0.1043,-0.01187,-1.4511,0.1446,-0.0004439,16.71,-0.0153,0.826,0.766,0.107,0.631
-7.5,-9.3927,1.925,-0.1032,-2.3572,0.1973,0.3465,-0.07832,-1.3728,0.149,-0.0005176,14.58,-0.0143,0.815,0.762,0.113,0.721
-10,-9.735,1.879,-0.09666,-2.4139,0.2117,1.01,-0.1678,-1.0631,0.137,-0.000742,11.23,-0.017,0.822,0.752,0.14,0.739
\ No newline at end of file
+T,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,sigma_reg,sigma_par
+PGA,-0.3002,0.5066,-0.04526,-3.224,0.2998,-1.283,0.1045,-3.0856,0.2778,-0.0007711,3.81,-0.0554,0.978,0.663,0.1,0.288
+PGV,-2.3891,1.259,-0.07901,-0.029386,0.3034,-0.00929,-0.04605,-2.7548,0.3467,-0.0007623,-4.598,-0.41,0.876,0.611,0.194,0.373
+0.01,-0.3472,0.4838,-0.04093,-3.0832,0.2712,-0.9676,0.04983,-2.9695,0.2693,-0.0006695,-4.434,-0.056,0.982,0.664,0.132,0.281
+0.02,0.832,0.1934,-0.0206,-3.1134,0.2786,-1.133,0.05994,-3.5023,0.2901,-0.0005857,-4.412,-0.0559,0.983,0.665,0.0928,0.281
+0.03,1.185,0.1064,-0.01423,-3.1029,0.2792,-1.078,0.05239,-3.5722,0.2865,-0.000622,-4.353,-0.0577,1,0.676,0.0833,0.277
+0.04,1.246,0.08986,-0.01268,-3.0785,0.2773,-0.9743,0.0416,-3.5083,0.2769,-0.0006818,-4.303,-0.0577,1.01,0.688,0.0798,0.279
+0.05,1.1793,0.1037,-0.01321,-3.0488,0.2744,-0.8635,0.03077,-3.3986,0.2659,-0.0007439,-4.266,-0.0578,1.03,0.701,0.0776,0.272
+0.075,0.8045,0.1866,-0.01788,-2.9697,0.266,-0.6122,0.007491,-3.0852,0.2391,-0.0008801,-4.241,-0.0561,1.03,0.721,0.0738,0.252
+0.1,0.35,0.2871,-0.02381,-2.894,0.2576,-0.4123,-0.01012,-2.7947,0.2163,-0.0009848,4.201,-0.0565,1.05,0.732,0.0717,0.265
+0.15,-0.5264,0.4782,-0.03519,-2.761,0.2426,-0.01319,-0.03338,-2.3312,0.1818,-0.001125,4.239,-0.0559,1.04,0.724,0.0716,0.276
+0.2,-1.2884,0.6413,-0.04486,-2.6504,0.2301,0.04637,-0.0469,-1.9927,0.1576,-0.001209,4.325,-0.056,1.03,0.715,0.0743,0.258
+0.25,-1.9422,0.7789,-0.05295,-2.5573,0.2196,0.1631,-0.05478,-1.7399,0.1398,-0.001258,4.438,-0.0537,1.02,0.712,0.0779,0.268
+0.3,-2.5071,0.8961,-0.05976,-2.478,0.2107,0.2407,-0.05919,-1.547,0.1265,-0.001286,4.571,-0.0511,1.01,0.718,0.0815,0.0284
+0.4,-3.436,1.085,-0.07059,-2.3495,0.1961,0.3244,-0.06197,-1.2793,0.1085,-0.001304,-4.872,-0.047,0.987,0.725,0.0876,0.34
+0.5,-4.1699,1.231,-0.07878,-2.251,0.1849,0.3544,-0.06046,-1.1111,0.09757,-0.001294,-5.211,-0.0442,0.981,0.736,0.0923,0.357
+0.75,-5.4797,1.482,-0.09245,-2.0865,0.1659,0.3284,-0.04979,-0.9131,0.0857,-0.001219,-6.154,-0.0384,0.967,0.76,0.0991,0.374
+1,-6.3464,1.641,-0.1006,-1.9931,0.1546,0.253,-0.03709,-0.8641,0.08405,-0.001123,-7.174,-0.0314,0.933,0.77,0.102,0.392
+1.5,-7.4087,1.823,-0.1093,-1.9162,0.1438,0.09019,-0.01551,-0.92,0.09103,-0.0009407,-9.253,-0.0227,0.883,0.776,0.105,0.426
+2,-8.0057,1.916,-0.113,-1.9173,0.1418,-0.03828,-0.001252,-1.0327,0.1016,-0.0007926,-11.22,-0.0184,0.857,0.778,0.106,0.44
+3,-8.5793,1.985,-0.1146,-2.0184,0.1499,-0.1744,0.009393,-1.2453,0.1214,-0.0005919,14.38,-0.0189,0.859,0.777,0.107,0.58
+4,-8.8246,1.99,-0.1131,-2.1475,0.1635,-0.1844,0.003919,-1.3849,0.1357,-0.0004855,16.19,-0.016,0.83,0.766,0.107,0.589
+5,-8.9855,1.975,-0.1105,-2.2496,0.1764,-0.1043,-0.01187,-1.4511,0.1446,-0.0004439,16.71,-0.0153,0.826,0.766,0.107,0.631
+7.5,-9.3927,1.925,-0.1032,-2.3572,0.1973,0.3465,-0.07832,-1.3728,0.149,-0.0005176,14.58,-0.0143,0.815,0.762,0.113,0.721
+10,-9.735,1.879,-0.09666,-2.4139,0.2117,1.01,-0.1678,-1.0631,0.137,-0.000742,11.23,-0.017,0.822,0.752,0.14,0.739
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/coeffs/Wong15.csv b/src/gov/usgs/earthquake/nshmp/gmm/coeffs/Wong15.csv
index 255569775b6f2697a04f4b5f3d05a0770a3d183d..76409e9a9c9061552751538bc903a1d3f410d902 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/coeffs/Wong15.csv
+++ b/src/gov/usgs/earthquake/nshmp/gmm/coeffs/Wong15.csv
@@ -1,20 +1,20 @@
-T,C1,C2,C3,C4,C5,C6,sigma
-PGA,68.52187,-5.09631,5.80000,-12.96010,1.03629,-0.14898,0.7803
-10.0,-6.91550,1.66675,5.40000,-3.03522,0.18615,-0.15158,1.3092
-5.00,-0.08881,1.63345,5.70000,-3.56561,0.15429,-0.23807,1.1854
-3.00,9.41267,1.23611,5.90000,-4.64883,0.18193,-0.28698,1.0442
-2.00,21.84053,0.61910,6.10000,-6.22484,0.24654,-0.30737,0.9512
-1.00,32.93593,0.08357,6.10000,-7.51731,0.28394,-0.31387,0.7954
-0.75,43.47321,-0.50426,6.20000,-8.89132,0.35245,-0.30295,0.8183
-0.50,46.91267,-0.93125,6.10000,-9.36813,0.40094,0.27491,0.8188
-0.40,58.53881,-1.71001,6.20000,-10.95674,0.50386,-0.25817,0.8412
-0.30,73.99161,-2.90241,6.30000,-13.06945,0.66484,-0.23860,0.8492
-0.20,98.22293,-5.32783,6.40000,-16.41981,1.00088,-0.20822,0.8381
-0.15,108.81360,-6.61834,6.40000,-17.96824,1.18618,-0.18760,0.8290
-0.10,103.04320,-7.20814,6.20000,-17.48802,1.29736,-0.16376,0.8254
-0.05,85.62312,-6.76578,5.90000,-15.41352,1.27568,-0.13241,0.8327
-0.04,78.01486,-6.22686,5.80000,-14.39446,1.20623,-0.12877,0.8280
-0.03,69.46166,-5.48027,5.70000,-13.19430,1.10188,-0.13149,0.8194
-0.025,67.40193,-5.24299,5.70000,-12.88585,1.06672,-0.13721,0.8063
-0.02,65.29077,-4.98649,5.70000,-12.56134,1.02752,-0.14202,0.7975
-0.01,68.77858,-5.13883,5.80000,-13.00533,1.04366,-0.14918,0.7816
+T,C1,C2,C3,C4,C5,C6,sigma
+PGA,68.52187,-5.09631,5.80000,-12.96010,1.03629,-0.14898,0.7803
+10.0,-6.91550,1.66675,5.40000,-3.03522,0.18615,-0.15158,1.3092
+5.00,-0.08881,1.63345,5.70000,-3.56561,0.15429,-0.23807,1.1854
+3.00,9.41267,1.23611,5.90000,-4.64883,0.18193,-0.28698,1.0442
+2.00,21.84053,0.61910,6.10000,-6.22484,0.24654,-0.30737,0.9512
+1.00,32.93593,0.08357,6.10000,-7.51731,0.28394,-0.31387,0.7954
+0.75,43.47321,-0.50426,6.20000,-8.89132,0.35245,-0.30295,0.8183
+0.50,46.91267,-0.93125,6.10000,-9.36813,0.40094,0.27491,0.8188
+0.40,58.53881,-1.71001,6.20000,-10.95674,0.50386,-0.25817,0.8412
+0.30,73.99161,-2.90241,6.30000,-13.06945,0.66484,-0.23860,0.8492
+0.20,98.22293,-5.32783,6.40000,-16.41981,1.00088,-0.20822,0.8381
+0.15,108.81360,-6.61834,6.40000,-17.96824,1.18618,-0.18760,0.8290
+0.10,103.04320,-7.20814,6.20000,-17.48802,1.29736,-0.16376,0.8254
+0.05,85.62312,-6.76578,5.90000,-15.41352,1.27568,-0.13241,0.8327
+0.04,78.01486,-6.22686,5.80000,-14.39446,1.20623,-0.12877,0.8280
+0.03,69.46166,-5.48027,5.70000,-13.19430,1.10188,-0.13149,0.8194
+0.025,67.40193,-5.24299,5.70000,-12.88585,1.06672,-0.13721,0.8063
+0.02,65.29077,-4.98649,5.70000,-12.56134,1.02752,-0.14202,0.7975
+0.01,68.77858,-5.13883,5.80000,-13.00533,1.04366,-0.14918,0.7816
diff --git a/src/gov/usgs/earthquake/nshmp/gmm/coeffs/Zhao06.csv b/src/gov/usgs/earthquake/nshmp/gmm/coeffs/Zhao06.csv
index 4a655b18a010595a75d9f428e3543e0b67dd28d4..5a0caf40caa3a8fae84e216085daafc7863017b9 100644
--- a/src/gov/usgs/earthquake/nshmp/gmm/coeffs/Zhao06.csv
+++ b/src/gov/usgs/earthquake/nshmp/gmm/coeffs/Zhao06.csv
@@ -1,23 +1,23 @@
-T,a,b,c,d,e,Sr,Si,Ss,Ssl,C1,C2,C3,sigma,tau,tauI,tauS,Ps,Qi,Qs,Wi,Ws
-PGA,1.101,-0.00564,0.0055,1.0797,0.01412,0.2509,0,2.607,-0.5284,1.1111,1.344,1.3548,0.6039,0.3976,0.308,0.321,0.1392,0,0.1584,0,-0.0529
-0.05,1.076,-0.00671,0.0075,1.0598,0.01463,0.2513,0,2.764,-0.5507,1.6845,1.793,1.7474,0.6399,0.4437,0.343,0.378,0.1636,0,0.1932,0,-0.0841
-0.1,1.118,-0.00787,0.009,1.0827,0.01423,0.2403,0,2.156,-0.4201,2.0609,2.1346,2.0311,0.6936,0.4903,0.403,0.42,0.169,0,0.2057,0,-0.0877
-0.15,1.134,-0.00722,0.01,1.0529,0.01509,0.2506,0,2.161,-0.4315,1.9165,2.168,2.0518,0.7017,0.4603,0.367,0.372,0.1669,-0.0138,0.1984,0.0286,-0.0773
-0.2,1.147,-0.00659,0.012,1.0136,0.01462,0.2601,0,1.901,-0.3715,1.6688,2.0854,2.0007,0.6917,0.4233,0.328,0.324,0.1631,-0.0256,0.1856,0.0352,-0.0644
-0.25,1.149,-0.0059,0.014,0.96638,0.01459,0.269,0,1.814,-0.3601,1.4683,1.9416,1.9407,0.6823,0.3908,0.289,0.294,0.1588,-0.0348,0.1714,0.0403,-0.0515
-0.3,1.163,-0.0052,0.015,0.93427,0.01458,0.259,0,2.181,-0.4505,1.172,1.6829,1.8083,0.6696,0.379,0.28,0.284,0.1544,-0.0423,0.1573,0.0445,-0.0395
-0.4,1.2,-0.00422,0.01,0.9588,0.01257,0.2479,-0.0412,2.432,-0.5061,0.6548,1.1271,1.4825,0.6589,0.3897,0.271,0.278,0.146,-0.0541,0.1309,0.0511,-0.0183
-0.5,1.25,-0.00338,0.006,1.0078,0.01114,0.247,-0.0528,2.629,-0.5538,0.0713,0.5149,0.9339,0.653,0.389,0.277,0.272,0.1381,-0.0632,0.1078,0.0562,-0.0008
-0.6,1.293,-0.00282,0.003,1.0877,0.01019,0.2326,-0.1034,2.702,-0.5746,-0.4288,-0.0027,0.3936,0.6527,0.4014,0.296,0.285,0.1307,-0.0707,0.0878,0.0604,0.0136
-0.7,1.336,-0.00258,0.0025,1.0838,0.00979,0.22,-0.146,2.654,-0.5721,-0.8656,-0.4493,-0.1109,0.6516,0.4079,0.313,0.29,0.1239,-0.0771,0.0705,0.0639,0.0254
-0.75,1.361,-0.0025,0.0024,1.0826,0.00956,0.295,-0.1538,2.55,-0.5563,-1.0993,-0.6926,-0.3719,0.6483,0.4147,0.323,0.296,0.1207,-0.0799,0.0628,0.0655,0.0305
-0.8,1.386,-0.00242,0.0022,1.0885,0.00944,0.2321,-0.1638,2.48,-0.5397,-1.325,-0.9284,-0.62,0.6467,0.4183,0.329,0.299,0.1176,-0.0825,0.0556,0.067,0.0352
-0.9,1.433,-0.00232,0.002,1.1092,0.00972,0.2196,-0.2062,2.332,-0.5216,-1.7322,-1.349,-1.0665,0.6525,0.4106,0.324,0.289,0.1116,-0.0874,0.0426,0.0697,0.0432
-1,1.479,-0.0022,0.002,1.1147,0.01005,0.2107,-0.2393,2.233,-0.5094,-2.1522,-1.7757,-1.5228,0.657,0.4101,0.328,0.286,0.106,-0.0917,0.0314,0.0721,0.0498
-1.25,1.551,-0.00207,0.002,1.083,0.01003,0.251,-0.2557,2.029,-0.4692,-2.9226,-2.5422,-2.3272,0.6601,0.4021,0.339,0.277,0.0933,-0.1009,0.0093,0.0772,0.0612
-1.5,1.621,-0.00224,0.002,1.0912,0.00928,0.2483,-0.3065,1.589,-0.3787,-3.5476,-3.1689,-2.9789,0.664,0.4076,0.352,0.282,0.0821,-0.1083,-0.0062,0.0814,0.0674
-2,1.694,-0.00201,0.0025,1.0549,0.00833,0.2631,-0.3214,0.966,-0.2484,-4.4102,-4.0387,-3.8714,0.6694,0.4138,0.36,0.3,0.0628,-0.1202,-0.0235,0.088,0.0692
-2.5,1.748,-0.00187,0.0028,1.0519,0.00776,0.262,-0.3366,0.789,-0.2215,-5.0492,-4.6979,-4.4963,0.6706,0.4108,0.356,0.292,0.0465,-0.1293,-0.0287,0.0931,0.0622
-3,1.759,-0.00147,0.0032,1.0245,0.00644,0.3066,-0.3306,1.037,-0.2625,-5.4307,-5.089,-4.8932,0.6671,0.3961,0.338,0.274,0.0322,-0.1368,-0.0261,0.0972,0.0496
-4,1.826,-0.00195,0.004,1.0436,0.0059,0.3529,-0.3898,0.561,-0.1689,-6.1813,-5.8821,-5.6981,0.6468,0.3821,0.307,0.281,0.0083,-0.1486,-0.0065,0.1038,0.015
-5,1.825,-0.00237,0.005,1.0652,0.0051,0.2485,-0.4978,0.225,-0.1201,-6.3471,-6.0512,-5.8733,0.6431,0.3766,0.272,0.296,-0.0117,-0.1578,0.0246,0.109,-0.0268
+T,a,b,c,d,e,Sr,Si,Ss,Ssl,C1,C2,C3,C4,sigma,tau,tauI,tauS,Ps,Qi,Qs,Wi,Ws
+PGA,1.101,-0.00564,0.0055,1.080,0.01412,0.251,0.000,2.607,-0.528,1.111,1.344,1.355,1.420,0.604,0.398,0.308,0.321,0.1392,0.0000,0.1584,0.0000,-0.0529
+0.05,1.076,-0.00671,0.0075,1.060,0.01463,0.251,0.000,2.764,-0.551,1.684,1.793,1.747,1.814,0.640,0.444,0.343,0.378,0.1636,0.0000,0.1932,0.0000,-0.0841
+0.10,1.118,-0.00787,0.0090,1.083,0.01423,0.240,0.000,2.156,-0.420,2.061,2.135,2.031,2.082,0.694,0.490,0.403,0.420,0.1690,0.0000,0.2057,0.0000,-0.0877
+0.15,1.134,-0.00722,0.0100,1.053,0.01509,0.251,0.000,2.161,-0.431,1.916,2.168,2.052,2.113,0.702,0.460,0.367,0.372,0.1669,-0.0138,0.1984,0.0286,-0.0773
+0.20,1.147,-0.00659,0.0120,1.014,0.01462,0.260,0.000,1.901,-0.372,1.669,2.085,2.001,2.030,0.692,0.423,0.328,0.324,0.1631,-0.0256,0.1856,0.0352,-0.0644
+0.25,1.149,-0.00590,0.0140,0.966,0.01459,0.269,0.000,1.814,-0.360,1.468,1.942,1.941,1.937,0.682,0.391,0.289,0.294,0.1588,-0.0348,0.1714,0.0403,-0.0515
+0.30,1.163,-0.00520,0.0150,0.934,0.01458,0.259,0.000,2.181,-0.450,1.172,1.683,1.808,1.770,0.670,0.379,0.280,0.284,0.1544,-0.0423,0.1573,0.0445,-0.0395
+0.40,1.200,-0.00422,0.0100,0.959,0.01257,0.248,-0.041,2.432,-0.506,0.655,1.127,1.482,1.397,0.659,0.390,0.271,0.278,0.1460,-0.0541,0.1309,0.0511,-0.0183
+0.50,1.250,-0.00338,0.0060,1.008,0.01114,0.247,-0.053,2.629,-0.554,0.071,0.515,0.934,0.955,0.653,0.389,0.277,0.272,0.1381,-0.0632,0.1078,0.0562,-0.0008
+# 0.60,1.293,-0.00282,0.0030,1.088,0.01019,0.233,-0.103,2.702,-0.575,-0.429,-0.003,0.394,0.559,0.653,0.401,0.296,0.285,0.1307,-0.0707,0.0878,0.0604,0.0136
+# 0.70,1.336,-0.00258,0.0025,1.084,0.00979,0.220,-0.146,2.654,-0.572,-0.866,-0.449,-0.111,0.188,0.652,0.408,0.313,0.290,0.1239,-0.0771,0.0705,0.0639,0.0254
+0.75,1.361,-0.00250,0.0024,1.083,0.00956,0.295,-0.154,2.550,-0.556,-1.099,-0.693,-0.372,-0.034,0.648,0.415,0.323,0.296,0.1207,-0.0799,0.0628,0.0655,0.0305
+# 0.80,1.386,-0.00242,0.0022,1.088,0.00944,0.232,-0.164,2.480,-0.540,-1.325,-0.928,-0.620,-0.246,0.647,0.418,0.329,0.299,0.1176,-0.0825,0.0556,0.0670,0.0352
+# 0.90,1.433,-0.00232,0.0020,1.109,0.00972,0.220,-0.206,2.332,-0.522,-1.732,-1.349,-1.066,-0.643,0.653,0.411,0.324,0.289,0.1116,-0.0874,0.0426,0.0697,0.0432
+1.00,1.479,-0.00220,0.0020,1.115,0.01005,0.211,-0.239,2.233,-0.509,-2.152,-1.776,-1.523,-1.084,0.657,0.410,0.328,0.286,0.1060,-0.0917,0.0314,0.0721,0.0498
+# 1.25,1.551,-0.00207,0.0020,1.083,0.01003,0.251,-0.256,2.029,-0.469,-2.923,-2.542,-2.327,-1.936,0.660,0.402,0.339,0.277,0.0933,-0.1009,0.0093,0.0772,0.0612
+1.50,1.621,-0.00224,0.0020,1.091,0.00928,0.248,-0.307,1.589,-0.379,-3.548,-3.169,-2.979,-2.661,0.664,0.408,0.352,0.282,0.0821,-0.1083,-0.0062,0.0814,0.0674
+2.00,1.694,-0.00201,0.0025,1.055,0.00833,0.263,-0.321,0.966,-0.248,-4.410,-4.039,-3.871,-3.640,0.669,0.414,0.360,0.300,0.0628,-0.1202,-0.0235,0.0880,0.0692
+# 2.50,1.748,-0.00187,0.0028,1.052,0.00776,0.262,-0.337,0.789,-0.221,-5.049,-4.698,-4.496,-4.341,0.671,0.411,0.356,0.292,0.0465,-0.1293,-0.0287,0.0931,0.0622
+3.00,1.759,-0.00147,0.0032,1.025,0.00644,0.307,-0.331,1.037,-0.263,-5.431,-5.089,-4.893,-4.758,0.667,0.396,0.338,0.274,0.0322,-0.1368,-0.0261,0.0972,0.0496
+4.00,1.826,-0.00195,0.0040,1.044,0.00590,0.353,-0.390,0.561,-0.169,-6.181,-5.882,-5.698,-5.588,0.647,0.382,0.307,0.281,0.0083,-0.1486,-0.0065,0.1038,0.0150
+5.00,1.825,-0.00237,0.0050,1.065,0.00510,0.248,-0.498,0.225,-0.120,-6.347,-6.051,-5.873,-5.798,0.643,0.377,0.272,0.296,-0.0117,-0.1578,0.0246,0.1090,-0.0268
diff --git a/test/gov/usgs/earthquake/nshmp/gmm/GmmTest.java b/test/gov/usgs/earthquake/nshmp/gmm/GmmTest.java
index 0b32b72cfa0b171ee0e973aeb4777acf20c1c170..368dcbc37c4db4a44498b5bce25d91508e732a16 100644
--- a/test/gov/usgs/earthquake/nshmp/gmm/GmmTest.java
+++ b/test/gov/usgs/earthquake/nshmp/gmm/GmmTest.java
@@ -9,7 +9,6 @@ import com.google.common.base.Function;
 import com.google.common.base.StandardSystemProperty;
 import com.google.common.collect.FluentIterable;
 import com.google.common.collect.Lists;
-import com.google.common.io.Files;
 import com.google.common.io.Resources;
 import com.google.common.primitives.Doubles;
 
@@ -17,6 +16,10 @@ import java.io.File;
 import java.io.IOException;
 import java.net.URL;
 import java.nio.charset.StandardCharsets;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
@@ -60,11 +63,14 @@ public class GmmTest {
   }
 
   /* Use to generate Gmm result file */
-  static void generateResults(Set<Gmm> gmms, Set<Imt> imts, String inputsFileName,
+  static void generateResults(
+      Set<Gmm> gmms, 
+      Set<Imt> imts, 
+      String inputsFileName,
       String resultsFileName) throws IOException {
+    
     List<GmmInput> inputs = loadInputs(inputsFileName);
-    File out = new File("tmp/Gmm-tests/" + resultsFileName);
-    Files.write("", out, StandardCharsets.UTF_8);
+    List<String> lines = new ArrayList<>();
     for (Gmm gmm : gmms) {
       for (Imt imt : imts) {
         GroundMotionModel gmModel = gmm.instance(imt);
@@ -76,12 +82,13 @@ public class GmmTest {
               Lists.newArrayList(modelIndex++ + "-" + id,
                   String.format("%.6f", Math.exp(sgm.mean())),
                   String.format("%.6f", sgm.sigma())),
-              Delimiter.COMMA) +
-              StandardSystemProperty.LINE_SEPARATOR.value();
-          Files.append(result, out, StandardCharsets.UTF_8);
+              Delimiter.COMMA);
+          lines.add(result);
         }
       }
     }
+    Path out = Paths.get("tmp/Gmm-tests/", resultsFileName);
+    Files.write(out, lines, StandardCharsets.UTF_8);
   }
 
   static List<Object[]> loadResults(String resource) throws IOException {
diff --git a/test/gov/usgs/earthquake/nshmp/gmm/GroundMotionTableTests.java b/test/gov/usgs/earthquake/nshmp/gmm/GroundMotionTableTests.java
index 1fc6c094c0a33b78aa4745779ddba2f15d83f106..5bcab6e9120542c773204a14c793b547f446703e 100644
--- a/test/gov/usgs/earthquake/nshmp/gmm/GroundMotionTableTests.java
+++ b/test/gov/usgs/earthquake/nshmp/gmm/GroundMotionTableTests.java
@@ -6,7 +6,7 @@ import org.junit.Test;
 
 import gov.usgs.earthquake.nshmp.gmm.GroundMotionTables;
 import gov.usgs.earthquake.nshmp.gmm.Imt;
-import gov.usgs.earthquake.nshmp.gmm.SiteClass;
+import gov.usgs.earthquake.nshmp.gmm.GmmUtils.CeusSiteClass;
 import gov.usgs.earthquake.nshmp.gmm.GroundMotionTables.GroundMotionTable;
 
 @SuppressWarnings("javadoc")
@@ -23,7 +23,7 @@ public class GroundMotionTableTests {
    */
   @Test
   public void testGroundMotionTable() {
-    GroundMotionTable gmt = GroundMotionTables.getFrankel96(Imt.PGA, SiteClass.SOFT_ROCK);
+    GroundMotionTable gmt = GroundMotionTables.getFrankel96(Imt.PGA, CeusSiteClass.SOFT_ROCK);
     double testVal;
 
     // extrema
diff --git a/test/gov/usgs/earthquake/nshmp/gmm/data/INTERFACE_results.csv b/test/gov/usgs/earthquake/nshmp/gmm/data/INTERFACE_results.csv
index 8b2a614f94fb307b35cfc5c85dd54141f40ee925..3590b7e077c28392322cc2d2ae8aebac3eeceb21 100644
--- a/test/gov/usgs/earthquake/nshmp/gmm/data/INTERFACE_results.csv
+++ b/test/gov/usgs/earthquake/nshmp/gmm/data/INTERFACE_results.csv
@@ -738,151 +738,151 @@
 34-YOUNGS_97_INTER-SA3P0,0.013496,0.900000
 35-YOUNGS_97_INTER-SA3P0,0.007682,0.900000
 36-YOUNGS_97_INTER-SA3P0,0.006016,0.900000
-0-ZHAO_06_INTER-PGA,0.340279,0.723036
-1-ZHAO_06_INTER-PGA,0.278454,0.723036
-2-ZHAO_06_INTER-PGA,0.169150,0.723036
-3-ZHAO_06_INTER-PGA,0.180697,0.723036
-4-ZHAO_06_INTER-PGA,0.043586,0.723036
-5-ZHAO_06_INTER-PGA,0.022300,0.723036
-6-ZHAO_06_INTER-PGA,0.000201,0.723036
-7-ZHAO_06_INTER-PGA,0.469961,0.723036
-8-ZHAO_06_INTER-PGA,0.414405,0.723036
-9-ZHAO_06_INTER-PGA,0.332094,0.723036
-10-ZHAO_06_INTER-PGA,0.258492,0.723036
-11-ZHAO_06_INTER-PGA,0.071410,0.723036
-12-ZHAO_06_INTER-PGA,0.037721,0.723036
-13-ZHAO_06_INTER-PGA,0.008403,0.723036
-14-ZHAO_06_INTER-PGA,0.000344,0.723036
-15-ZHAO_06_INTER-PGA,0.580639,0.723036
-16-ZHAO_06_INTER-PGA,0.512328,0.723036
-17-ZHAO_06_INTER-PGA,0.456394,0.723036
-18-ZHAO_06_INTER-PGA,0.352962,0.723036
-19-ZHAO_06_INTER-PGA,0.110592,0.723036
-20-ZHAO_06_INTER-PGA,0.060405,0.723036
-21-ZHAO_06_INTER-PGA,0.013977,0.723036
-22-ZHAO_06_INTER-PGA,0.000586,0.723036
-23-ZHAO_06_INTER-PGA,0.664226,0.723036
-24-ZHAO_06_INTER-PGA,0.623769,0.723036
-25-ZHAO_06_INTER-PGA,0.586691,0.723036
-26-ZHAO_06_INTER-PGA,0.506430,0.723036
-27-ZHAO_06_INTER-PGA,0.221976,0.723036
-28-ZHAO_06_INTER-PGA,0.133886,0.723036
-29-ZHAO_06_INTER-PGA,0.035314,0.723036
-30-ZHAO_06_INTER-PGA,0.001629,0.723036
-31-ZHAO_06_INTER-PGA,0.091116,0.723036
-32-ZHAO_06_INTER-PGA,0.091116,0.723036
-33-ZHAO_06_INTER-PGA,0.090137,0.723036
-34-ZHAO_06_INTER-PGA,0.090137,0.723036
-35-ZHAO_06_INTER-PGA,0.071410,0.723036
-36-ZHAO_06_INTER-PGA,0.071410,0.723036
-0-ZHAO_06_INTER-SA0P2,0.699063,0.810945
-1-ZHAO_06_INTER-SA0P2,0.585228,0.810945
-2-ZHAO_06_INTER-SA0P2,0.368800,0.810945
-3-ZHAO_06_INTER-SA0P2,0.392627,0.810945
-4-ZHAO_06_INTER-SA0P2,0.095116,0.810945
-5-ZHAO_06_INTER-SA0P2,0.047022,0.810945
-6-ZHAO_06_INTER-SA0P2,0.000254,0.810945
-7-ZHAO_06_INTER-SA0P2,0.937439,0.810945
-8-ZHAO_06_INTER-SA0P2,0.840369,0.810945
-9-ZHAO_06_INTER-SA0P2,0.689652,0.810945
-10-ZHAO_06_INTER-SA0P2,0.547479,0.810945
-11-ZHAO_06_INTER-SA0P2,0.153377,0.810945
-12-ZHAO_06_INTER-SA0P2,0.078669,0.810945
-13-ZHAO_06_INTER-SA0P2,0.015503,0.810945
-14-ZHAO_06_INTER-SA0P2,0.000433,0.810945
-15-ZHAO_06_INTER-SA0P2,1.133625,0.810945
-16-ZHAO_06_INTER-SA0P2,1.015595,0.810945
-17-ZHAO_06_INTER-SA0P2,0.915743,0.810945
-18-ZHAO_06_INTER-SA0P2,0.723136,0.810945
-19-ZHAO_06_INTER-SA0P2,0.230230,0.810945
-20-ZHAO_06_INTER-SA0P2,0.122519,0.810945
-21-ZHAO_06_INTER-SA0P2,0.025217,0.810945
-22-ZHAO_06_INTER-SA0P2,0.000725,0.810945
-23-ZHAO_06_INTER-SA0P2,1.262592,0.810945
-24-ZHAO_06_INTER-SA0P2,1.188718,0.810945
-25-ZHAO_06_INTER-SA0P2,1.120414,0.810945
-26-ZHAO_06_INTER-SA0P2,0.970619,0.810945
-27-ZHAO_06_INTER-SA0P2,0.420845,0.810945
-28-ZHAO_06_INTER-SA0P2,0.247333,0.810945
-29-ZHAO_06_INTER-SA0P2,0.058398,0.810945
-30-ZHAO_06_INTER-SA0P2,0.001864,0.810945
-31-ZHAO_06_INTER-SA0P2,0.213749,0.810945
-32-ZHAO_06_INTER-SA0P2,0.213749,0.810945
-33-ZHAO_06_INTER-SA0P2,0.232642,0.810945
-34-ZHAO_06_INTER-SA0P2,0.232642,0.810945
-35-ZHAO_06_INTER-SA0P2,0.153377,0.810945
-36-ZHAO_06_INTER-SA0P2,0.153377,0.810945
-0-ZHAO_06_INTER-SA1P0,0.207589,0.774488
-1-ZHAO_06_INTER-SA1P0,0.162210,0.774488
-2-ZHAO_06_INTER-SA1P0,0.093387,0.774488
-3-ZHAO_06_INTER-SA1P0,0.100074,0.774488
-4-ZHAO_06_INTER-SA1P0,0.026982,0.774488
-5-ZHAO_06_INTER-SA1P0,0.016032,0.774488
-6-ZHAO_06_INTER-SA1P0,0.000961,0.774488
-7-ZHAO_06_INTER-SA1P0,0.360381,0.774488
-8-ZHAO_06_INTER-SA1P0,0.303065,0.774488
-9-ZHAO_06_INTER-SA1P0,0.228848,0.774488
-10-ZHAO_06_INTER-SA1P0,0.171235,0.774488
-11-ZHAO_06_INTER-SA1P0,0.050524,0.774488
-12-ZHAO_06_INTER-SA1P0,0.030571,0.774488
-13-ZHAO_06_INTER-SA1P0,0.010983,0.774488
-14-ZHAO_06_INTER-SA1P0,0.001836,0.774488
-15-ZHAO_06_INTER-SA1P0,0.525012,0.774488
-16-ZHAO_06_INTER-SA1P0,0.436893,0.774488
-17-ZHAO_06_INTER-SA1P0,0.373176,0.774488
-18-ZHAO_06_INTER-SA1P0,0.271270,0.774488
-19-ZHAO_06_INTER-SA1P0,0.087033,0.774488
-20-ZHAO_06_INTER-SA1P0,0.053731,0.774488
-21-ZHAO_06_INTER-SA1P0,0.019717,0.774488
-22-ZHAO_06_INTER-SA1P0,0.003337,0.774488
-23-ZHAO_06_INTER-SA1P0,0.625336,0.774488
-24-ZHAO_06_INTER-SA1P0,0.575182,0.774488
-25-ZHAO_06_INTER-SA1P0,0.531813,0.774488
-26-ZHAO_06_INTER-SA1P0,0.445385,0.774488
-27-ZHAO_06_INTER-SA1P0,0.197569,0.774488
-28-ZHAO_06_INTER-SA1P0,0.131268,0.774488
-29-ZHAO_06_INTER-SA1P0,0.052469,0.774488
-30-ZHAO_06_INTER-SA1P0,0.009381,0.774488
-31-ZHAO_06_INTER-SA1P0,0.094808,0.774488
-32-ZHAO_06_INTER-SA1P0,0.094808,0.774488
-33-ZHAO_06_INTER-SA1P0,0.073623,0.774488
-34-ZHAO_06_INTER-SA1P0,0.073623,0.774488
-35-ZHAO_06_INTER-SA1P0,0.050524,0.774488
-36-ZHAO_06_INTER-SA1P0,0.050524,0.774488
-0-ZHAO_06_INTER-SA3P0,0.052891,0.775834
-1-ZHAO_06_INTER-SA3P0,0.041003,0.775834
-2-ZHAO_06_INTER-SA3P0,0.023447,0.775834
-3-ZHAO_06_INTER-SA3P0,0.025129,0.775834
-4-ZHAO_06_INTER-SA3P0,0.006989,0.775834
-5-ZHAO_06_INTER-SA3P0,0.004293,0.775834
-6-ZHAO_06_INTER-SA3P0,0.000386,0.775834
-7-ZHAO_06_INTER-SA3P0,0.106340,0.775834
-8-ZHAO_06_INTER-SA3P0,0.088181,0.775834
-9-ZHAO_06_INTER-SA3P0,0.065512,0.775834
-10-ZHAO_06_INTER-SA3P0,0.048535,0.775834
-11-ZHAO_06_INTER-SA3P0,0.014538,0.775834
-12-ZHAO_06_INTER-SA3P0,0.009062,0.775834
-13-ZHAO_06_INTER-SA3P0,0.003607,0.775834
-14-ZHAO_06_INTER-SA3P0,0.000813,0.775834
-15-ZHAO_06_INTER-SA3P0,0.179015,0.775834
-16-ZHAO_06_INTER-SA3P0,0.145015,0.775834
-17-ZHAO_06_INTER-SA3P0,0.121643,0.775834
-18-ZHAO_06_INTER-SA3P0,0.086202,0.775834
-19-ZHAO_06_INTER-SA3P0,0.027414,0.775834
-20-ZHAO_06_INTER-SA3P0,0.017350,0.775834
-21-ZHAO_06_INTER-SA3P0,0.007016,0.775834
-22-ZHAO_06_INTER-SA3P0,0.001596,0.775834
-23-ZHAO_06_INTER-SA3P0,0.261532,0.775834
-24-ZHAO_06_INTER-SA3P0,0.235428,0.775834
-25-ZHAO_06_INTER-SA3P0,0.213839,0.775834
-26-ZHAO_06_INTER-SA3P0,0.173309,0.775834
-27-ZHAO_06_INTER-SA3P0,0.072423,0.775834
-28-ZHAO_06_INTER-SA3P0,0.048470,0.775834
-29-ZHAO_06_INTER-SA3P0,0.020864,0.775834
-30-ZHAO_06_INTER-SA3P0,0.004933,0.775834
-31-ZHAO_06_INTER-SA3P0,0.024885,0.775834
-32-ZHAO_06_INTER-SA3P0,0.024885,0.775834
-33-ZHAO_06_INTER-SA3P0,0.020460,0.775834
-34-ZHAO_06_INTER-SA3P0,0.020460,0.775834
-35-ZHAO_06_INTER-SA3P0,0.014538,0.775834
-36-ZHAO_06_INTER-SA3P0,0.014538,0.775834
+0-ZHAO_06_INTER-PGA,0.340051,0.723339
+1-ZHAO_06_INTER-PGA,0.278316,0.723339
+2-ZHAO_06_INTER-PGA,0.169120,0.723339
+3-ZHAO_06_INTER-PGA,0.180658,0.723339
+4-ZHAO_06_INTER-PGA,0.043594,0.723339
+5-ZHAO_06_INTER-PGA,0.022306,0.723339
+6-ZHAO_06_INTER-PGA,0.000201,0.723339
+7-ZHAO_06_INTER-PGA,0.469420,0.723339
+8-ZHAO_06_INTER-PGA,0.413994,0.723339
+9-ZHAO_06_INTER-PGA,0.331844,0.723339
+10-ZHAO_06_INTER-PGA,0.258353,0.723339
+11-ZHAO_06_INTER-PGA,0.071412,0.723339
+12-ZHAO_06_INTER-PGA,0.037726,0.723339
+13-ZHAO_06_INTER-PGA,0.008405,0.723339
+14-ZHAO_06_INTER-PGA,0.000344,0.723339
+15-ZHAO_06_INTER-PGA,0.579709,0.723339
+16-ZHAO_06_INTER-PGA,0.511607,0.723339
+17-ZHAO_06_INTER-PGA,0.455825,0.723339
+18-ZHAO_06_INTER-PGA,0.352628,0.723339
+19-ZHAO_06_INTER-PGA,0.110569,0.723339
+20-ZHAO_06_INTER-PGA,0.060403,0.723339
+21-ZHAO_06_INTER-PGA,0.013979,0.723339
+22-ZHAO_06_INTER-PGA,0.000587,0.723339
+23-ZHAO_06_INTER-PGA,0.662816,0.723339
+24-ZHAO_06_INTER-PGA,0.622507,0.723339
+25-ZHAO_06_INTER-PGA,0.585558,0.723339
+26-ZHAO_06_INTER-PGA,0.505554,0.723339
+27-ZHAO_06_INTER-PGA,0.221765,0.723339
+28-ZHAO_06_INTER-PGA,0.133796,0.723339
+29-ZHAO_06_INTER-PGA,0.035305,0.723339
+30-ZHAO_06_INTER-PGA,0.001629,0.723339
+31-ZHAO_06_INTER-PGA,0.091146,0.723339
+32-ZHAO_06_INTER-PGA,0.091146,0.723339
+33-ZHAO_06_INTER-PGA,0.090149,0.723339
+34-ZHAO_06_INTER-PGA,0.090149,0.723339
+35-ZHAO_06_INTER-PGA,0.071412,0.723339
+36-ZHAO_06_INTER-PGA,0.071412,0.723339
+0-ZHAO_06_INTER-SA0P2,0.698400,0.811044
+1-ZHAO_06_INTER-SA0P2,0.584808,0.811044
+2-ZHAO_06_INTER-SA0P2,0.368701,0.811044
+3-ZHAO_06_INTER-SA0P2,0.392501,0.811044
+4-ZHAO_06_INTER-SA0P2,0.095147,0.811044
+5-ZHAO_06_INTER-SA0P2,0.047043,0.811044
+6-ZHAO_06_INTER-SA0P2,0.000254,0.811044
+7-ZHAO_06_INTER-SA0P2,0.935993,0.811044
+8-ZHAO_06_INTER-SA0P2,0.839234,0.811044
+9-ZHAO_06_INTER-SA0P2,0.688928,0.811044
+10-ZHAO_06_INTER-SA0P2,0.547060,0.811044
+11-ZHAO_06_INTER-SA0P2,0.153389,0.811044
+12-ZHAO_06_INTER-SA0P2,0.078690,0.811044
+13-ZHAO_06_INTER-SA0P2,0.015510,0.811044
+14-ZHAO_06_INTER-SA0P2,0.000434,0.811044
+15-ZHAO_06_INTER-SA0P2,1.131275,0.811044
+16-ZHAO_06_INTER-SA0P2,1.013716,0.811044
+17-ZHAO_06_INTER-SA0P2,0.914222,0.811044
+18-ZHAO_06_INTER-SA0P2,0.722203,0.811044
+19-ZHAO_06_INTER-SA0P2,0.230166,0.811044
+20-ZHAO_06_INTER-SA0P2,0.122518,0.811044
+21-ZHAO_06_INTER-SA0P2,0.025225,0.811044
+22-ZHAO_06_INTER-SA0P2,0.000725,0.811044
+23-ZHAO_06_INTER-SA0P2,1.259179,0.811044
+24-ZHAO_06_INTER-SA0P2,1.185640,0.811044
+25-ZHAO_06_INTER-SA0P2,1.117632,0.811044
+26-ZHAO_06_INTER-SA0P2,0.968439,0.811044
+27-ZHAO_06_INTER-SA0P2,0.420310,0.811044
+28-ZHAO_06_INTER-SA0P2,0.247113,0.811044
+29-ZHAO_06_INTER-SA0P2,0.058380,0.811044
+30-ZHAO_06_INTER-SA0P2,0.001864,0.811044
+31-ZHAO_06_INTER-SA0P2,0.213786,0.811044
+32-ZHAO_06_INTER-SA0P2,0.213786,0.811044
+33-ZHAO_06_INTER-SA0P2,0.232520,0.811044
+34-ZHAO_06_INTER-SA0P2,0.232520,0.811044
+35-ZHAO_06_INTER-SA0P2,0.153389,0.811044
+36-ZHAO_06_INTER-SA0P2,0.153389,0.811044
+0-ZHAO_06_INTER-SA1P0,0.207655,0.774435
+1-ZHAO_06_INTER-SA1P0,0.162286,0.774435
+2-ZHAO_06_INTER-SA1P0,0.093451,0.774435
+3-ZHAO_06_INTER-SA1P0,0.100140,0.774435
+4-ZHAO_06_INTER-SA1P0,0.027006,0.774435
+5-ZHAO_06_INTER-SA1P0,0.016047,0.774435
+6-ZHAO_06_INTER-SA1P0,0.000962,0.774435
+7-ZHAO_06_INTER-SA1P0,0.360325,0.774435
+8-ZHAO_06_INTER-SA1P0,0.303072,0.774435
+9-ZHAO_06_INTER-SA1P0,0.228906,0.774435
+10-ZHAO_06_INTER-SA1P0,0.171309,0.774435
+11-ZHAO_06_INTER-SA1P0,0.050566,0.774435
+12-ZHAO_06_INTER-SA1P0,0.030598,0.774435
+13-ZHAO_06_INTER-SA1P0,0.010993,0.774435
+14-ZHAO_06_INTER-SA1P0,0.001837,0.774435
+15-ZHAO_06_INTER-SA1P0,0.524642,0.774435
+16-ZHAO_06_INTER-SA1P0,0.436705,0.774435
+17-ZHAO_06_INTER-SA1P0,0.373089,0.774435
+18-ZHAO_06_INTER-SA1P0,0.271293,0.774435
+19-ZHAO_06_INTER-SA1P0,0.087091,0.774435
+20-ZHAO_06_INTER-SA1P0,0.053772,0.774435
+21-ZHAO_06_INTER-SA1P0,0.019734,0.774435
+22-ZHAO_06_INTER-SA1P0,0.003340,0.774435
+23-ZHAO_06_INTER-SA1P0,0.624474,0.774435
+24-ZHAO_06_INTER-SA1P0,0.574488,0.774435
+25-ZHAO_06_INTER-SA1P0,0.531251,0.774435
+26-ZHAO_06_INTER-SA1P0,0.445046,0.774435
+27-ZHAO_06_INTER-SA1P0,0.197589,0.774435
+28-ZHAO_06_INTER-SA1P0,0.131312,0.774435
+29-ZHAO_06_INTER-SA1P0,0.052503,0.774435
+30-ZHAO_06_INTER-SA1P0,0.009389,0.774435
+31-ZHAO_06_INTER-SA1P0,0.094848,0.774435
+32-ZHAO_06_INTER-SA1P0,0.094848,0.774435
+33-ZHAO_06_INTER-SA1P0,0.073646,0.774435
+34-ZHAO_06_INTER-SA1P0,0.073646,0.774435
+35-ZHAO_06_INTER-SA1P0,0.050566,0.774435
+36-ZHAO_06_INTER-SA1P0,0.050566,0.774435
+0-ZHAO_06_INTER-SA3P0,0.052827,0.775696
+1-ZHAO_06_INTER-SA3P0,0.040962,0.775696
+2-ZHAO_06_INTER-SA3P0,0.023432,0.775696
+3-ZHAO_06_INTER-SA3P0,0.025111,0.775696
+4-ZHAO_06_INTER-SA3P0,0.006987,0.775696
+5-ZHAO_06_INTER-SA3P0,0.004292,0.775696
+6-ZHAO_06_INTER-SA3P0,0.000386,0.775696
+7-ZHAO_06_INTER-SA3P0,0.106134,0.775696
+8-ZHAO_06_INTER-SA3P0,0.088036,0.775696
+9-ZHAO_06_INTER-SA3P0,0.065428,0.775696
+10-ZHAO_06_INTER-SA3P0,0.048486,0.775696
+11-ZHAO_06_INTER-SA3P0,0.014531,0.775696
+12-ZHAO_06_INTER-SA3P0,0.009058,0.775696
+13-ZHAO_06_INTER-SA3P0,0.003606,0.775696
+14-ZHAO_06_INTER-SA3P0,0.000813,0.775696
+15-ZHAO_06_INTER-SA3P0,0.178508,0.775696
+16-ZHAO_06_INTER-SA3P0,0.144676,0.775696
+17-ZHAO_06_INTER-SA3P0,0.121399,0.775696
+18-ZHAO_06_INTER-SA3P0,0.086073,0.775696
+19-ZHAO_06_INTER-SA3P0,0.027396,0.775696
+20-ZHAO_06_INTER-SA3P0,0.017341,0.775696
+21-ZHAO_06_INTER-SA3P0,0.007014,0.775696
+22-ZHAO_06_INTER-SA3P0,0.001596,0.775696
+23-ZHAO_06_INTER-SA3P0,0.260490,0.775696
+24-ZHAO_06_INTER-SA3P0,0.234574,0.775696
+25-ZHAO_06_INTER-SA3P0,0.213127,0.775696
+26-ZHAO_06_INTER-SA3P0,0.172828,0.775696
+27-ZHAO_06_INTER-SA3P0,0.072323,0.775696
+28-ZHAO_06_INTER-SA3P0,0.048419,0.775696
+29-ZHAO_06_INTER-SA3P0,0.020850,0.775696
+30-ZHAO_06_INTER-SA3P0,0.004931,0.775696
+31-ZHAO_06_INTER-SA3P0,0.024886,0.775696
+32-ZHAO_06_INTER-SA3P0,0.024886,0.775696
+33-ZHAO_06_INTER-SA3P0,0.020457,0.775696
+34-ZHAO_06_INTER-SA3P0,0.020457,0.775696
+35-ZHAO_06_INTER-SA3P0,0.014531,0.775696
+36-ZHAO_06_INTER-SA3P0,0.014531,0.775696
diff --git a/test/gov/usgs/earthquake/nshmp/gmm/data/SLAB_results.csv b/test/gov/usgs/earthquake/nshmp/gmm/data/SLAB_results.csv
index f72ce6fe6730af57d9fc33da30fbc7687020f6d6..9e8a55b20d1f0543a8e64dbc3fa399f1835133e2 100644
--- a/test/gov/usgs/earthquake/nshmp/gmm/data/SLAB_results.csv
+++ b/test/gov/usgs/earthquake/nshmp/gmm/data/SLAB_results.csv
@@ -1798,303 +1798,303 @@
 72-YOUNGS_97_SLAB-SA3P0,0.032571,0.950000
 73-YOUNGS_97_SLAB-SA3P0,0.037829,0.950000
 74-YOUNGS_97_SLAB-SA3P0,0.021806,0.950000
-0-ZHAO_06_SLAB-PGA,0.087964,0.683912
-1-ZHAO_06_SLAB-PGA,0.076879,0.683912
-2-ZHAO_06_SLAB-PGA,0.051195,0.683912
-3-ZHAO_06_SLAB-PGA,0.035052,0.683912
-4-ZHAO_06_SLAB-PGA,0.129505,0.683912
-5-ZHAO_06_SLAB-PGA,0.113486,0.683912
-6-ZHAO_06_SLAB-PGA,0.076088,0.683912
-7-ZHAO_06_SLAB-PGA,0.052354,0.683912
-8-ZHAO_06_SLAB-PGA,0.212844,0.683912
-9-ZHAO_06_SLAB-PGA,0.186424,0.683912
-10-ZHAO_06_SLAB-PGA,0.124851,0.683912
-11-ZHAO_06_SLAB-PGA,0.089632,0.683912
-12-ZHAO_06_SLAB-PGA,0.016891,0.683912
-13-ZHAO_06_SLAB-PGA,0.345713,0.683912
-14-ZHAO_06_SLAB-PGA,0.304812,0.683912
-15-ZHAO_06_SLAB-PGA,0.207711,0.683912
-16-ZHAO_06_SLAB-PGA,0.150870,0.683912
-17-ZHAO_06_SLAB-PGA,0.029419,0.683912
-18-ZHAO_06_SLAB-PGA,0.606369,0.683912
-19-ZHAO_06_SLAB-PGA,0.507319,0.683912
-20-ZHAO_06_SLAB-PGA,0.479808,0.683912
-21-ZHAO_06_SLAB-PGA,0.338210,0.683912
-22-ZHAO_06_SLAB-PGA,0.053768,0.683912
-23-ZHAO_06_SLAB-PGA,0.023078,0.683912
-24-ZHAO_06_SLAB-PGA,0.000090,0.683912
-25-ZHAO_06_SLAB-PGA,1.010144,0.683912
-26-ZHAO_06_SLAB-PGA,0.859548,0.683912
-27-ZHAO_06_SLAB-PGA,0.707392,0.683912
-28-ZHAO_06_SLAB-PGA,0.593016,0.683912
-29-ZHAO_06_SLAB-PGA,0.112364,0.683912
-30-ZHAO_06_SLAB-PGA,0.048345,0.683912
-31-ZHAO_06_SLAB-PGA,0.007172,0.683912
-32-ZHAO_06_SLAB-PGA,0.000184,0.683912
-33-ZHAO_06_SLAB-PGA,1.719734,0.683912
-34-ZHAO_06_SLAB-PGA,1.489770,0.683912
-35-ZHAO_06_SLAB-PGA,1.251606,0.683912
-36-ZHAO_06_SLAB-PGA,1.067941,0.683912
-37-ZHAO_06_SLAB-PGA,0.227635,0.683912
-38-ZHAO_06_SLAB-PGA,0.101170,0.683912
-39-ZHAO_06_SLAB-PGA,0.015593,0.683912
-40-ZHAO_06_SLAB-PGA,0.000410,0.683912
-41-ZHAO_06_SLAB-PGA,0.334211,0.683912
-42-ZHAO_06_SLAB-PGA,0.487767,0.683912
-43-ZHAO_06_SLAB-PGA,0.465632,0.683912
-44-ZHAO_06_SLAB-PGA,0.961402,0.683912
-45-ZHAO_06_SLAB-PGA,0.939997,0.683912
-46-ZHAO_06_SLAB-PGA,2.102633,0.683912
-47-ZHAO_06_SLAB-PGA,1.944482,0.683912
-48-ZHAO_06_SLAB-PGA,2.075941,0.683912
-49-ZHAO_06_SLAB-PGA,3.996010,0.683912
-50-ZHAO_06_SLAB-PGA,9.140735,0.683912
-51-ZHAO_06_SLAB-PGA,5.799182,0.683912
-52-ZHAO_06_SLAB-PGA,1.445747,0.683912
-53-ZHAO_06_SLAB-PGA,0.366166,0.683912
-54-ZHAO_06_SLAB-PGA,2.040581,0.683912
-55-ZHAO_06_SLAB-PGA,1.966068,0.683912
-56-ZHAO_06_SLAB-PGA,1.230648,0.683912
-57-ZHAO_06_SLAB-PGA,0.391002,0.683912
-58-ZHAO_06_SLAB-PGA,1.401463,0.683912
-59-ZHAO_06_SLAB-PGA,1.030853,0.683912
-60-ZHAO_06_SLAB-PGA,1.057644,0.683912
-61-ZHAO_06_SLAB-PGA,0.858953,0.683912
-62-ZHAO_06_SLAB-PGA,0.804232,0.683912
-63-ZHAO_06_SLAB-PGA,0.700368,0.683912
-64-ZHAO_06_SLAB-PGA,3.605518,0.683912
-65-ZHAO_06_SLAB-PGA,3.605518,0.683912
-66-ZHAO_06_SLAB-PGA,3.566788,0.683912
-67-ZHAO_06_SLAB-PGA,3.566788,0.683912
-68-ZHAO_06_SLAB-PGA,2.825726,0.683912
-69-ZHAO_06_SLAB-PGA,2.825726,0.683912
-70-ZHAO_06_SLAB-PGA,2.825726,0.683912
-71-ZHAO_06_SLAB-PGA,2.825726,0.683912
-72-ZHAO_06_SLAB-PGA,3.605518,0.683912
-73-ZHAO_06_SLAB-PGA,2.825726,0.683912
-74-ZHAO_06_SLAB-PGA,2.825726,0.683912
-0-ZHAO_06_SLAB-SA0P2,0.151181,0.763823
-1-ZHAO_06_SLAB-SA0P2,0.133899,0.763823
-2-ZHAO_06_SLAB-SA0P2,0.092574,0.763823
-3-ZHAO_06_SLAB-SA0P2,0.065402,0.763823
-4-ZHAO_06_SLAB-SA0P2,0.219697,0.763823
-5-ZHAO_06_SLAB-SA0P2,0.195280,0.763823
-6-ZHAO_06_SLAB-SA0P2,0.136268,0.763823
-7-ZHAO_06_SLAB-SA0P2,0.096933,0.763823
-8-ZHAO_06_SLAB-SA0P2,0.356320,0.763823
-9-ZHAO_06_SLAB-SA0P2,0.317191,0.763823
-10-ZHAO_06_SLAB-SA0P2,0.222239,0.763823
-11-ZHAO_06_SLAB-SA0P2,0.164917,0.763823
-12-ZHAO_06_SLAB-SA0P2,0.034771,0.763823
-13-ZHAO_06_SLAB-SA0P2,0.580993,0.763823
-14-ZHAO_06_SLAB-SA0P2,0.521214,0.763823
-15-ZHAO_06_SLAB-SA0P2,0.372814,0.763823
-16-ZHAO_06_SLAB-SA0P2,0.280617,0.763823
-17-ZHAO_06_SLAB-SA0P2,0.061771,0.763823
-18-ZHAO_06_SLAB-SA0P2,1.024066,0.763823
-19-ZHAO_06_SLAB-SA0P2,0.880929,0.763823
-20-ZHAO_06_SLAB-SA0P2,0.840134,0.763823
-21-ZHAO_06_SLAB-SA0P2,0.621709,0.763823
-22-ZHAO_06_SLAB-SA0P2,0.116310,0.763823
-23-ZHAO_06_SLAB-SA0P2,0.051419,0.763823
-24-ZHAO_06_SLAB-SA0P2,0.000155,0.763823
-25-ZHAO_06_SLAB-SA0P2,1.759381,0.763823
-26-ZHAO_06_SLAB-SA0P2,1.538923,0.763823
-27-ZHAO_06_SLAB-SA0P2,1.306636,0.763823
-28-ZHAO_06_SLAB-SA0P2,1.124588,0.763823
-29-ZHAO_06_SLAB-SA0P2,0.251831,0.763823
-30-ZHAO_06_SLAB-SA0P2,0.112364,0.763823
-31-ZHAO_06_SLAB-SA0P2,0.016520,0.763823
-32-ZHAO_06_SLAB-SA0P2,0.000333,0.763823
-33-ZHAO_06_SLAB-SA0P2,3.159157,0.763823
-34-ZHAO_06_SLAB-SA0P2,2.809001,0.763823
-35-ZHAO_06_SLAB-SA0P2,2.431406,0.763823
-36-ZHAO_06_SLAB-SA0P2,2.128141,0.763823
-37-ZHAO_06_SLAB-SA0P2,0.537359,0.763823
-38-ZHAO_06_SLAB-SA0P2,0.248495,0.763823
-39-ZHAO_06_SLAB-SA0P2,0.038171,0.763823
-40-ZHAO_06_SLAB-SA0P2,0.000792,0.763823
-41-ZHAO_06_SLAB-SA0P2,0.514910,0.763823
-42-ZHAO_06_SLAB-SA0P2,0.679405,0.763823
-43-ZHAO_06_SLAB-SA0P2,0.652788,0.763823
-44-ZHAO_06_SLAB-SA0P2,1.220322,0.763823
-45-ZHAO_06_SLAB-SA0P2,1.198148,0.763823
-46-ZHAO_06_SLAB-SA0P2,2.523161,0.763823
-47-ZHAO_06_SLAB-SA0P2,2.376304,0.763823
-48-ZHAO_06_SLAB-SA0P2,3.136422,0.763823
-49-ZHAO_06_SLAB-SA0P2,5.168485,0.763823
-50-ZHAO_06_SLAB-SA0P2,8.179583,0.763823
-51-ZHAO_06_SLAB-SA0P2,5.899837,0.763823
-52-ZHAO_06_SLAB-SA0P2,2.071908,0.763823
-53-ZHAO_06_SLAB-SA0P2,0.664475,0.763823
-54-ZHAO_06_SLAB-SA0P2,2.792005,0.763823
-55-ZHAO_06_SLAB-SA0P2,2.712433,0.763823
-56-ZHAO_06_SLAB-SA0P2,1.871886,0.763823
-57-ZHAO_06_SLAB-SA0P2,0.716909,0.763823
-58-ZHAO_06_SLAB-SA0P2,2.105274,0.763823
-59-ZHAO_06_SLAB-SA0P2,1.641737,0.763823
-60-ZHAO_06_SLAB-SA0P2,1.697201,0.763823
-61-ZHAO_06_SLAB-SA0P2,1.429156,0.763823
-62-ZHAO_06_SLAB-SA0P2,1.371878,0.763823
-63-ZHAO_06_SLAB-SA0P2,1.220905,0.763823
-64-ZHAO_06_SLAB-SA0P2,4.859025,0.763823
-65-ZHAO_06_SLAB-SA0P2,4.859025,0.763823
-66-ZHAO_06_SLAB-SA0P2,5.288517,0.763823
-67-ZHAO_06_SLAB-SA0P2,5.288517,0.763823
-68-ZHAO_06_SLAB-SA0P2,3.486638,0.763823
-69-ZHAO_06_SLAB-SA0P2,3.486638,0.763823
-70-ZHAO_06_SLAB-SA0P2,3.486638,0.763823
-71-ZHAO_06_SLAB-SA0P2,3.486638,0.763823
-72-ZHAO_06_SLAB-SA0P2,4.859025,0.763823
-73-ZHAO_06_SLAB-SA0P2,3.486638,0.763823
-74-ZHAO_06_SLAB-SA0P2,3.486638,0.763823
-0-ZHAO_06_SLAB-SA1P0,0.015354,0.716551
-1-ZHAO_06_SLAB-SA1P0,0.013503,0.716551
-2-ZHAO_06_SLAB-SA1P0,0.009202,0.716551
-3-ZHAO_06_SLAB-SA1P0,0.006477,0.716551
-4-ZHAO_06_SLAB-SA1P0,0.032075,0.716551
-5-ZHAO_06_SLAB-SA1P0,0.028244,0.716551
-6-ZHAO_06_SLAB-SA1P0,0.019311,0.716551
-7-ZHAO_06_SLAB-SA1P0,0.013624,0.716551
-8-ZHAO_06_SLAB-SA1P0,0.071167,0.716551
-9-ZHAO_06_SLAB-SA1P0,0.062488,0.716551
-10-ZHAO_06_SLAB-SA1P0,0.042416,0.716551
-11-ZHAO_06_SLAB-SA1P0,0.030998,0.716551
-12-ZHAO_06_SLAB-SA1P0,0.007029,0.716551
-13-ZHAO_06_SLAB-SA1P0,0.148439,0.716551
-14-ZHAO_06_SLAB-SA1P0,0.130831,0.716551
-15-ZHAO_06_SLAB-SA1P0,0.089667,0.716551
-16-ZHAO_06_SLAB-SA1P0,0.065943,0.716551
-17-ZHAO_06_SLAB-SA1P0,0.015217,0.716551
-18-ZHAO_06_SLAB-SA1P0,0.321598,0.716551
-19-ZHAO_06_SLAB-SA1P0,0.267485,0.716551
-20-ZHAO_06_SLAB-SA1P0,0.252660,0.716551
-21-ZHAO_06_SLAB-SA1P0,0.177774,0.716551
-22-ZHAO_06_SLAB-SA1P0,0.032838,0.716551
-23-ZHAO_06_SLAB-SA1P0,0.016409,0.716551
-24-ZHAO_06_SLAB-SA1P0,0.000441,0.716551
-25-ZHAO_06_SLAB-SA1P0,0.631038,0.716551
-26-ZHAO_06_SLAB-SA1P0,0.531681,0.716551
-27-ZHAO_06_SLAB-SA1P0,0.433897,0.716551
-28-ZHAO_06_SLAB-SA1P0,0.362174,0.716551
-29-ZHAO_06_SLAB-SA1P0,0.076079,0.716551
-30-ZHAO_06_SLAB-SA1P0,0.037696,0.716551
-31-ZHAO_06_SLAB-SA1P0,0.009207,0.716551
-32-ZHAO_06_SLAB-SA1P0,0.000982,0.716551
-33-ZHAO_06_SLAB-SA1P0,1.192373,0.716551
-34-ZHAO_06_SLAB-SA1P0,1.021345,0.716551
-35-ZHAO_06_SLAB-SA1P0,0.848722,0.716551
-36-ZHAO_06_SLAB-SA1P0,0.718966,0.716551
-37-ZHAO_06_SLAB-SA1P0,0.164258,0.716551
-38-ZHAO_06_SLAB-SA1P0,0.082989,0.716551
-39-ZHAO_06_SLAB-SA1P0,0.020706,0.716551
-40-ZHAO_06_SLAB-SA1P0,0.002235,0.716551
-41-ZHAO_06_SLAB-SA1P0,0.013442,0.716551
-42-ZHAO_06_SLAB-SA1P0,0.054311,0.716551
-43-ZHAO_06_SLAB-SA1P0,0.051822,0.716551
-44-ZHAO_06_SLAB-SA1P0,0.245039,0.716551
-45-ZHAO_06_SLAB-SA1P0,0.239211,0.716551
-46-ZHAO_06_SLAB-SA1P0,1.041793,0.716551
-47-ZHAO_06_SLAB-SA1P0,0.952060,0.716551
-48-ZHAO_06_SLAB-SA1P0,1.397053,0.716551
-49-ZHAO_06_SLAB-SA1P0,2.961330,0.716551
-50-ZHAO_06_SLAB-SA1P0,6.891378,0.716551
-51-ZHAO_06_SLAB-SA1P0,4.130090,0.716551
-52-ZHAO_06_SLAB-SA1P0,0.827499,0.716551
-53-ZHAO_06_SLAB-SA1P0,0.193151,0.716551
-54-ZHAO_06_SLAB-SA1P0,1.165679,0.716551
-55-ZHAO_06_SLAB-SA1P0,1.117275,0.716551
-56-ZHAO_06_SLAB-SA1P0,0.661589,0.716551
-57-ZHAO_06_SLAB-SA1P0,0.199680,0.716551
-58-ZHAO_06_SLAB-SA1P0,0.746760,0.716551
-59-ZHAO_06_SLAB-SA1P0,0.534331,0.716551
-60-ZHAO_06_SLAB-SA1P0,0.538136,0.716551
-61-ZHAO_06_SLAB-SA1P0,0.431348,0.716551
-62-ZHAO_06_SLAB-SA1P0,0.393193,0.716551
-63-ZHAO_06_SLAB-SA1P0,0.340769,0.716551
-64-ZHAO_06_SLAB-SA1P0,3.329466,0.716551
-65-ZHAO_06_SLAB-SA1P0,3.329466,0.716551
-66-ZHAO_06_SLAB-SA1P0,2.585482,0.716551
-67-ZHAO_06_SLAB-SA1P0,2.585482,0.716551
-68-ZHAO_06_SLAB-SA1P0,1.774310,0.716551
-69-ZHAO_06_SLAB-SA1P0,1.774310,0.716551
-70-ZHAO_06_SLAB-SA1P0,1.774310,0.716551
-71-ZHAO_06_SLAB-SA1P0,1.774310,0.716551
-72-ZHAO_06_SLAB-SA1P0,3.329466,0.716551
-73-ZHAO_06_SLAB-SA1P0,1.774310,0.716551
-74-ZHAO_06_SLAB-SA1P0,1.774310,0.716551
-0-ZHAO_06_SLAB-SA3P0,0.001491,0.721178
-1-ZHAO_06_SLAB-SA3P0,0.001341,0.721178
-2-ZHAO_06_SLAB-SA3P0,0.000976,0.721178
-3-ZHAO_06_SLAB-SA3P0,0.000730,0.721178
-4-ZHAO_06_SLAB-SA3P0,0.003716,0.721178
-5-ZHAO_06_SLAB-SA3P0,0.003345,0.721178
-6-ZHAO_06_SLAB-SA3P0,0.002443,0.721178
-7-ZHAO_06_SLAB-SA3P0,0.001832,0.721178
-8-ZHAO_06_SLAB-SA3P0,0.009502,0.721178
-9-ZHAO_06_SLAB-SA3P0,0.008534,0.721178
-10-ZHAO_06_SLAB-SA3P0,0.006196,0.721178
-11-ZHAO_06_SLAB-SA3P0,0.004783,0.721178
-12-ZHAO_06_SLAB-SA3P0,0.001416,0.721178
-13-ZHAO_06_SLAB-SA3P0,0.022464,0.721178
-14-ZHAO_06_SLAB-SA3P0,0.020240,0.721178
-15-ZHAO_06_SLAB-SA3P0,0.014817,0.721178
-16-ZHAO_06_SLAB-SA3P0,0.011499,0.721178
-17-ZHAO_06_SLAB-SA3P0,0.003453,0.721178
-18-ZHAO_06_SLAB-SA3P0,0.053585,0.721178
-19-ZHAO_06_SLAB-SA3P0,0.046025,0.721178
-20-ZHAO_06_SLAB-SA3P0,0.043909,0.721178
-21-ZHAO_06_SLAB-SA3P0,0.032848,0.721178
-22-ZHAO_06_SLAB-SA3P0,0.008207,0.721178
-23-ZHAO_06_SLAB-SA3P0,0.004676,0.721178
-24-ZHAO_06_SLAB-SA3P0,0.000279,0.721178
-25-ZHAO_06_SLAB-SA3P0,0.115102,0.721178
-26-ZHAO_06_SLAB-SA3P0,0.099924,0.721178
-27-ZHAO_06_SLAB-SA3P0,0.084482,0.721178
-28-ZHAO_06_SLAB-SA3P0,0.072766,0.721178
-29-ZHAO_06_SLAB-SA3P0,0.020167,0.721178
-30-ZHAO_06_SLAB-SA3P0,0.011401,0.721178
-31-ZHAO_06_SLAB-SA3P0,0.003705,0.721178
-32-ZHAO_06_SLAB-SA3P0,0.000664,0.721178
-33-ZHAO_06_SLAB-SA3P0,0.233893,0.721178
-34-ZHAO_06_SLAB-SA3P0,0.205897,0.721178
-35-ZHAO_06_SLAB-SA3P0,0.176719,0.721178
-36-ZHAO_06_SLAB-SA3P0,0.154071,0.721178
-37-ZHAO_06_SLAB-SA3P0,0.045632,0.721178
-38-ZHAO_06_SLAB-SA3P0,0.026183,0.721178
-39-ZHAO_06_SLAB-SA3P0,0.008645,0.721178
-40-ZHAO_06_SLAB-SA3P0,0.001563,0.721178
-41-ZHAO_06_SLAB-SA3P0,0.000462,0.721178
-42-ZHAO_06_SLAB-SA3P0,0.003056,0.721178
-43-ZHAO_06_SLAB-SA3P0,0.002939,0.721178
-44-ZHAO_06_SLAB-SA3P0,0.019918,0.721178
-45-ZHAO_06_SLAB-SA3P0,0.019528,0.721178
-46-ZHAO_06_SLAB-SA3P0,0.111051,0.721178
-47-ZHAO_06_SLAB-SA3P0,0.103256,0.721178
-48-ZHAO_06_SLAB-SA3P0,0.220872,0.721178
-49-ZHAO_06_SLAB-SA3P0,0.401658,0.721178
-50-ZHAO_06_SLAB-SA3P0,0.593983,0.721178
-51-ZHAO_06_SLAB-SA3P0,0.414250,0.721178
-52-ZHAO_06_SLAB-SA3P0,0.116794,0.721178
-53-ZHAO_06_SLAB-SA3P0,0.035242,0.721178
-54-ZHAO_06_SLAB-SA3P0,0.152270,0.721178
-55-ZHAO_06_SLAB-SA3P0,0.147111,0.721178
-56-ZHAO_06_SLAB-SA3P0,0.095837,0.721178
-57-ZHAO_06_SLAB-SA3P0,0.035688,0.721178
-58-ZHAO_06_SLAB-SA3P0,0.105091,0.721178
-59-ZHAO_06_SLAB-SA3P0,0.079807,0.721178
-60-ZHAO_06_SLAB-SA3P0,0.079687,0.721178
-61-ZHAO_06_SLAB-SA3P0,0.066403,0.721178
-62-ZHAO_06_SLAB-SA3P0,0.060951,0.721178
-63-ZHAO_06_SLAB-SA3P0,0.054160,0.721178
-64-ZHAO_06_SLAB-SA3P0,0.369745,0.721178
-65-ZHAO_06_SLAB-SA3P0,0.369745,0.721178
-66-ZHAO_06_SLAB-SA3P0,0.303996,0.721178
-67-ZHAO_06_SLAB-SA3P0,0.303996,0.721178
-68-ZHAO_06_SLAB-SA3P0,0.216008,0.721178
-69-ZHAO_06_SLAB-SA3P0,0.216008,0.721178
-70-ZHAO_06_SLAB-SA3P0,0.216008,0.721178
-71-ZHAO_06_SLAB-SA3P0,0.216008,0.721178
-72-ZHAO_06_SLAB-SA3P0,0.369745,0.721178
-73-ZHAO_06_SLAB-SA3P0,0.216008,0.721178
-74-ZHAO_06_SLAB-SA3P0,0.216008,0.721178
+0-ZHAO_06_SLAB-PGA,0.088104,0.684001
+1-ZHAO_06_SLAB-PGA,0.077004,0.684001
+2-ZHAO_06_SLAB-PGA,0.051285,0.684001
+3-ZHAO_06_SLAB-PGA,0.035116,0.684001
+4-ZHAO_06_SLAB-PGA,0.129703,0.684001
+5-ZHAO_06_SLAB-PGA,0.113664,0.684001
+6-ZHAO_06_SLAB-PGA,0.076217,0.684001
+7-ZHAO_06_SLAB-PGA,0.052449,0.684001
+8-ZHAO_06_SLAB-PGA,0.213141,0.684001
+9-ZHAO_06_SLAB-PGA,0.186693,0.684001
+10-ZHAO_06_SLAB-PGA,0.125050,0.684001
+11-ZHAO_06_SLAB-PGA,0.089785,0.684001
+12-ZHAO_06_SLAB-PGA,0.016928,0.684001
+13-ZHAO_06_SLAB-PGA,0.346134,0.684001
+14-ZHAO_06_SLAB-PGA,0.305202,0.684001
+15-ZHAO_06_SLAB-PGA,0.208014,0.684001
+16-ZHAO_06_SLAB-PGA,0.151110,0.684001
+17-ZHAO_06_SLAB-PGA,0.029481,0.684001
+18-ZHAO_06_SLAB-PGA,0.606929,0.684001
+19-ZHAO_06_SLAB-PGA,0.507846,0.684001
+20-ZHAO_06_SLAB-PGA,0.480323,0.684001
+21-ZHAO_06_SLAB-PGA,0.338641,0.684001
+22-ZHAO_06_SLAB-PGA,0.053877,0.684001
+23-ZHAO_06_SLAB-PGA,0.023130,0.684001
+24-ZHAO_06_SLAB-PGA,0.000091,0.684001
+25-ZHAO_06_SLAB-PGA,1.010734,0.684001
+26-ZHAO_06_SLAB-PGA,0.860159,0.684001
+27-ZHAO_06_SLAB-PGA,0.707998,0.684001
+28-ZHAO_06_SLAB-PGA,0.593598,0.684001
+29-ZHAO_06_SLAB-PGA,0.112571,0.684001
+30-ZHAO_06_SLAB-PGA,0.048447,0.684001
+31-ZHAO_06_SLAB-PGA,0.007190,0.684001
+32-ZHAO_06_SLAB-PGA,0.000185,0.684001
+33-ZHAO_06_SLAB-PGA,1.720067,0.684001
+34-ZHAO_06_SLAB-PGA,1.490254,0.684001
+35-ZHAO_06_SLAB-PGA,1.252205,0.684001
+36-ZHAO_06_SLAB-PGA,1.068594,0.684001
+37-ZHAO_06_SLAB-PGA,0.227999,0.684001
+38-ZHAO_06_SLAB-PGA,0.101366,0.684001
+39-ZHAO_06_SLAB-PGA,0.015631,0.684001
+40-ZHAO_06_SLAB-PGA,0.000412,0.684001
+41-ZHAO_06_SLAB-PGA,0.334578,0.684001
+42-ZHAO_06_SLAB-PGA,0.488254,0.684001
+43-ZHAO_06_SLAB-PGA,0.466105,0.684001
+44-ZHAO_06_SLAB-PGA,0.962038,0.684001
+45-ZHAO_06_SLAB-PGA,0.940631,0.684001
+46-ZHAO_06_SLAB-PGA,2.102583,0.684001
+47-ZHAO_06_SLAB-PGA,1.944567,0.684001
+48-ZHAO_06_SLAB-PGA,2.075819,0.684001
+49-ZHAO_06_SLAB-PGA,3.993167,0.684001
+50-ZHAO_06_SLAB-PGA,9.126936,0.684001
+51-ZHAO_06_SLAB-PGA,5.792918,0.684001
+52-ZHAO_06_SLAB-PGA,1.446109,0.684001
+53-ZHAO_06_SLAB-PGA,0.366614,0.684001
+54-ZHAO_06_SLAB-PGA,2.040672,0.684001
+55-ZHAO_06_SLAB-PGA,1.966223,0.684001
+56-ZHAO_06_SLAB-PGA,1.231237,0.684001
+57-ZHAO_06_SLAB-PGA,0.391490,0.684001
+58-ZHAO_06_SLAB-PGA,1.402051,0.684001
+59-ZHAO_06_SLAB-PGA,1.031532,0.684001
+60-ZHAO_06_SLAB-PGA,1.058366,0.684001
+61-ZHAO_06_SLAB-PGA,0.859667,0.684001
+62-ZHAO_06_SLAB-PGA,0.804975,0.684001
+63-ZHAO_06_SLAB-PGA,0.701077,0.684001
+64-ZHAO_06_SLAB-PGA,3.605314,0.684001
+65-ZHAO_06_SLAB-PGA,3.605314,0.684001
+66-ZHAO_06_SLAB-PGA,3.565873,0.684001
+67-ZHAO_06_SLAB-PGA,3.565873,0.684001
+68-ZHAO_06_SLAB-PGA,2.824719,0.684001
+69-ZHAO_06_SLAB-PGA,2.824719,0.684001
+70-ZHAO_06_SLAB-PGA,2.824719,0.684001
+71-ZHAO_06_SLAB-PGA,2.824719,0.684001
+72-ZHAO_06_SLAB-PGA,3.605314,0.684001
+73-ZHAO_06_SLAB-PGA,2.824719,0.684001
+74-ZHAO_06_SLAB-PGA,2.824719,0.684001
+0-ZHAO_06_SLAB-SA0P2,0.151028,0.764094
+1-ZHAO_06_SLAB-SA0P2,0.133759,0.764094
+2-ZHAO_06_SLAB-SA0P2,0.092468,0.764094
+3-ZHAO_06_SLAB-SA0P2,0.065322,0.764094
+4-ZHAO_06_SLAB-SA0P2,0.219450,0.764094
+5-ZHAO_06_SLAB-SA0P2,0.195056,0.764094
+6-ZHAO_06_SLAB-SA0P2,0.136101,0.764094
+7-ZHAO_06_SLAB-SA0P2,0.096807,0.764094
+8-ZHAO_06_SLAB-SA0P2,0.355856,0.764094
+9-ZHAO_06_SLAB-SA0P2,0.316775,0.764094
+10-ZHAO_06_SLAB-SA0P2,0.221938,0.764094
+11-ZHAO_06_SLAB-SA0P2,0.164686,0.764094
+12-ZHAO_06_SLAB-SA0P2,0.034712,0.764094
+13-ZHAO_06_SLAB-SA0P2,0.580077,0.764094
+14-ZHAO_06_SLAB-SA0P2,0.520393,0.764094
+15-ZHAO_06_SLAB-SA0P2,0.372225,0.764094
+16-ZHAO_06_SLAB-SA0P2,0.280170,0.764094
+17-ZHAO_06_SLAB-SA0P2,0.061660,0.764094
+18-ZHAO_06_SLAB-SA0P2,1.022063,0.764094
+19-ZHAO_06_SLAB-SA0P2,0.879225,0.764094
+20-ZHAO_06_SLAB-SA0P2,0.838515,0.764094
+21-ZHAO_06_SLAB-SA0P2,0.620530,0.764094
+22-ZHAO_06_SLAB-SA0P2,0.116085,0.764094
+23-ZHAO_06_SLAB-SA0P2,0.051315,0.764094
+24-ZHAO_06_SLAB-SA0P2,0.000154,0.764094
+25-ZHAO_06_SLAB-SA0P2,1.755134,0.764094
+26-ZHAO_06_SLAB-SA0P2,1.535260,0.764094
+27-ZHAO_06_SLAB-SA0P2,1.303575,0.764094
+28-ZHAO_06_SLAB-SA0P2,1.121990,0.764094
+29-ZHAO_06_SLAB-SA0P2,0.251284,0.764094
+30-ZHAO_06_SLAB-SA0P2,0.112117,0.764094
+31-ZHAO_06_SLAB-SA0P2,0.016482,0.764094
+32-ZHAO_06_SLAB-SA0P2,0.000332,0.764094
+33-ZHAO_06_SLAB-SA0P2,3.149970,0.764094
+34-ZHAO_06_SLAB-SA0P2,2.800921,0.764094
+35-ZHAO_06_SLAB-SA0P2,2.424511,0.764094
+36-ZHAO_06_SLAB-SA0P2,2.122186,0.764094
+37-ZHAO_06_SLAB-SA0P2,0.536005,0.764094
+38-ZHAO_06_SLAB-SA0P2,0.247881,0.764094
+39-ZHAO_06_SLAB-SA0P2,0.038075,0.764094
+40-ZHAO_06_SLAB-SA0P2,0.000789,0.764094
+41-ZHAO_06_SLAB-SA0P2,0.514759,0.764094
+42-ZHAO_06_SLAB-SA0P2,0.679075,0.764094
+43-ZHAO_06_SLAB-SA0P2,0.652465,0.764094
+44-ZHAO_06_SLAB-SA0P2,1.219165,0.764094
+45-ZHAO_06_SLAB-SA0P2,1.197012,0.764094
+46-ZHAO_06_SLAB-SA0P2,2.518748,0.764094
+47-ZHAO_06_SLAB-SA0P2,2.372168,0.764094
+48-ZHAO_06_SLAB-SA0P2,3.128421,0.764094
+49-ZHAO_06_SLAB-SA0P2,5.155161,0.764094
+50-ZHAO_06_SLAB-SA0P2,8.163960,0.764094
+51-ZHAO_06_SLAB-SA0P2,5.887462,0.764094
+52-ZHAO_06_SLAB-SA0P2,2.067560,0.764094
+53-ZHAO_06_SLAB-SA0P2,0.663210,0.764094
+54-ZHAO_06_SLAB-SA0P2,2.786046,0.764094
+55-ZHAO_06_SLAB-SA0P2,2.706659,0.764094
+56-ZHAO_06_SLAB-SA0P2,1.868045,0.764094
+57-ZHAO_06_SLAB-SA0P2,0.715547,0.764094
+58-ZHAO_06_SLAB-SA0P2,2.100927,0.764094
+59-ZHAO_06_SLAB-SA0P2,1.638433,0.764094
+60-ZHAO_06_SLAB-SA0P2,1.693794,0.764094
+61-ZHAO_06_SLAB-SA0P2,1.426333,0.764094
+62-ZHAO_06_SLAB-SA0P2,1.369195,0.764094
+63-ZHAO_06_SLAB-SA0P2,1.218538,0.764094
+64-ZHAO_06_SLAB-SA0P2,4.848937,0.764094
+65-ZHAO_06_SLAB-SA0P2,4.848937,0.764094
+66-ZHAO_06_SLAB-SA0P2,5.273844,0.764094
+67-ZHAO_06_SLAB-SA0P2,5.273844,0.764094
+68-ZHAO_06_SLAB-SA0P2,3.479051,0.764094
+69-ZHAO_06_SLAB-SA0P2,3.479051,0.764094
+70-ZHAO_06_SLAB-SA0P2,3.479051,0.764094
+71-ZHAO_06_SLAB-SA0P2,3.479051,0.764094
+72-ZHAO_06_SLAB-SA0P2,4.848937,0.764094
+73-ZHAO_06_SLAB-SA0P2,3.479051,0.764094
+74-ZHAO_06_SLAB-SA0P2,3.479051,0.764094
+0-ZHAO_06_SLAB-SA1P0,0.015384,0.716551
+1-ZHAO_06_SLAB-SA1P0,0.013530,0.716551
+2-ZHAO_06_SLAB-SA1P0,0.009221,0.716551
+3-ZHAO_06_SLAB-SA1P0,0.006491,0.716551
+4-ZHAO_06_SLAB-SA1P0,0.032136,0.716551
+5-ZHAO_06_SLAB-SA1P0,0.028299,0.716551
+6-ZHAO_06_SLAB-SA1P0,0.019351,0.716551
+7-ZHAO_06_SLAB-SA1P0,0.013654,0.716551
+8-ZHAO_06_SLAB-SA1P0,0.071297,0.716551
+9-ZHAO_06_SLAB-SA1P0,0.062605,0.716551
+10-ZHAO_06_SLAB-SA1P0,0.042501,0.716551
+11-ZHAO_06_SLAB-SA1P0,0.031063,0.716551
+12-ZHAO_06_SLAB-SA1P0,0.007047,0.716551
+13-ZHAO_06_SLAB-SA1P0,0.148695,0.716551
+14-ZHAO_06_SLAB-SA1P0,0.131063,0.716551
+15-ZHAO_06_SLAB-SA1P0,0.089839,0.716551
+16-ZHAO_06_SLAB-SA1P0,0.066077,0.716551
+17-ZHAO_06_SLAB-SA1P0,0.015255,0.716551
+18-ZHAO_06_SLAB-SA1P0,0.322089,0.716551
+19-ZHAO_06_SLAB-SA1P0,0.267919,0.716551
+20-ZHAO_06_SLAB-SA1P0,0.253078,0.716551
+21-ZHAO_06_SLAB-SA1P0,0.178097,0.716551
+22-ZHAO_06_SLAB-SA1P0,0.032917,0.716551
+23-ZHAO_06_SLAB-SA1P0,0.016452,0.716551
+24-ZHAO_06_SLAB-SA1P0,0.000442,0.716551
+25-ZHAO_06_SLAB-SA1P0,0.631842,0.716551
+26-ZHAO_06_SLAB-SA1P0,0.532419,0.716551
+27-ZHAO_06_SLAB-SA1P0,0.434554,0.716551
+28-ZHAO_06_SLAB-SA1P0,0.362761,0.716551
+29-ZHAO_06_SLAB-SA1P0,0.076256,0.716551
+30-ZHAO_06_SLAB-SA1P0,0.037792,0.716551
+31-ZHAO_06_SLAB-SA1P0,0.009233,0.716551
+32-ZHAO_06_SLAB-SA1P0,0.000985,0.716551
+33-ZHAO_06_SLAB-SA1P0,1.193480,0.716551
+34-ZHAO_06_SLAB-SA1P0,1.022426,0.716551
+35-ZHAO_06_SLAB-SA1P0,0.849746,0.716551
+36-ZHAO_06_SLAB-SA1P0,0.719922,0.716551
+37-ZHAO_06_SLAB-SA1P0,0.164615,0.716551
+38-ZHAO_06_SLAB-SA1P0,0.083192,0.716551
+39-ZHAO_06_SLAB-SA1P0,0.020765,0.716551
+40-ZHAO_06_SLAB-SA1P0,0.002242,0.716551
+41-ZHAO_06_SLAB-SA1P0,0.013461,0.716551
+42-ZHAO_06_SLAB-SA1P0,0.054385,0.716551
+43-ZHAO_06_SLAB-SA1P0,0.051894,0.716551
+44-ZHAO_06_SLAB-SA1P0,0.245327,0.716551
+45-ZHAO_06_SLAB-SA1P0,0.239494,0.716551
+46-ZHAO_06_SLAB-SA1P0,1.042471,0.716551
+47-ZHAO_06_SLAB-SA1P0,0.952741,0.716551
+48-ZHAO_06_SLAB-SA1P0,1.397970,0.716551
+49-ZHAO_06_SLAB-SA1P0,2.961125,0.716551
+50-ZHAO_06_SLAB-SA1P0,6.884237,0.716551
+51-ZHAO_06_SLAB-SA1P0,4.127998,0.716551
+52-ZHAO_06_SLAB-SA1P0,0.828275,0.716551
+53-ZHAO_06_SLAB-SA1P0,0.193494,0.716551
+54-ZHAO_06_SLAB-SA1P0,1.166543,0.716551
+55-ZHAO_06_SLAB-SA1P0,1.118140,0.716551
+56-ZHAO_06_SLAB-SA1P0,0.662347,0.716551
+57-ZHAO_06_SLAB-SA1P0,0.200038,0.716551
+58-ZHAO_06_SLAB-SA1P0,0.747576,0.716551
+59-ZHAO_06_SLAB-SA1P0,0.535029,0.716551
+60-ZHAO_06_SLAB-SA1P0,0.538849,0.716551
+61-ZHAO_06_SLAB-SA1P0,0.431974,0.716551
+62-ZHAO_06_SLAB-SA1P0,0.393794,0.716551
+63-ZHAO_06_SLAB-SA1P0,0.341315,0.716551
+64-ZHAO_06_SLAB-SA1P0,3.329233,0.716551
+65-ZHAO_06_SLAB-SA1P0,3.329233,0.716551
+66-ZHAO_06_SLAB-SA1P0,2.585043,0.716551
+67-ZHAO_06_SLAB-SA1P0,2.585043,0.716551
+68-ZHAO_06_SLAB-SA1P0,1.774896,0.716551
+69-ZHAO_06_SLAB-SA1P0,1.774896,0.716551
+70-ZHAO_06_SLAB-SA1P0,1.774896,0.716551
+71-ZHAO_06_SLAB-SA1P0,1.774896,0.716551
+72-ZHAO_06_SLAB-SA1P0,3.329233,0.716551
+73-ZHAO_06_SLAB-SA1P0,1.774896,0.716551
+74-ZHAO_06_SLAB-SA1P0,1.774896,0.716551
+0-ZHAO_06_SLAB-SA3P0,0.001489,0.721086
+1-ZHAO_06_SLAB-SA3P0,0.001339,0.721086
+2-ZHAO_06_SLAB-SA3P0,0.000975,0.721086
+3-ZHAO_06_SLAB-SA3P0,0.000729,0.721086
+4-ZHAO_06_SLAB-SA3P0,0.003711,0.721086
+5-ZHAO_06_SLAB-SA3P0,0.003340,0.721086
+6-ZHAO_06_SLAB-SA3P0,0.002439,0.721086
+7-ZHAO_06_SLAB-SA3P0,0.001828,0.721086
+8-ZHAO_06_SLAB-SA3P0,0.009488,0.721086
+9-ZHAO_06_SLAB-SA3P0,0.008521,0.721086
+10-ZHAO_06_SLAB-SA3P0,0.006186,0.721086
+11-ZHAO_06_SLAB-SA3P0,0.004775,0.721086
+12-ZHAO_06_SLAB-SA3P0,0.001413,0.721086
+13-ZHAO_06_SLAB-SA3P0,0.022427,0.721086
+14-ZHAO_06_SLAB-SA3P0,0.020206,0.721086
+15-ZHAO_06_SLAB-SA3P0,0.014791,0.721086
+16-ZHAO_06_SLAB-SA3P0,0.011478,0.721086
+17-ZHAO_06_SLAB-SA3P0,0.003446,0.721086
+18-ZHAO_06_SLAB-SA3P0,0.053484,0.721086
+19-ZHAO_06_SLAB-SA3P0,0.045938,0.721086
+20-ZHAO_06_SLAB-SA3P0,0.043825,0.721086
+21-ZHAO_06_SLAB-SA3P0,0.032785,0.721086
+22-ZHAO_06_SLAB-SA3P0,0.008189,0.721086
+23-ZHAO_06_SLAB-SA3P0,0.004665,0.721086
+24-ZHAO_06_SLAB-SA3P0,0.000278,0.721086
+25-ZHAO_06_SLAB-SA3P0,0.114844,0.721086
+26-ZHAO_06_SLAB-SA3P0,0.099702,0.721086
+27-ZHAO_06_SLAB-SA3P0,0.084295,0.721086
+28-ZHAO_06_SLAB-SA3P0,0.072606,0.721086
+29-ZHAO_06_SLAB-SA3P0,0.020120,0.721086
+30-ZHAO_06_SLAB-SA3P0,0.011374,0.721086
+31-ZHAO_06_SLAB-SA3P0,0.003695,0.721086
+32-ZHAO_06_SLAB-SA3P0,0.000662,0.721086
+33-ZHAO_06_SLAB-SA3P0,0.233253,0.721086
+34-ZHAO_06_SLAB-SA3P0,0.205345,0.721086
+35-ZHAO_06_SLAB-SA3P0,0.176255,0.721086
+36-ZHAO_06_SLAB-SA3P0,0.153672,0.721086
+37-ZHAO_06_SLAB-SA3P0,0.045518,0.721086
+38-ZHAO_06_SLAB-SA3P0,0.026116,0.721086
+39-ZHAO_06_SLAB-SA3P0,0.008621,0.721086
+40-ZHAO_06_SLAB-SA3P0,0.001558,0.721086
+41-ZHAO_06_SLAB-SA3P0,0.000462,0.721086
+42-ZHAO_06_SLAB-SA3P0,0.003053,0.721086
+43-ZHAO_06_SLAB-SA3P0,0.002937,0.721086
+44-ZHAO_06_SLAB-SA3P0,0.019897,0.721086
+45-ZHAO_06_SLAB-SA3P0,0.019508,0.721086
+46-ZHAO_06_SLAB-SA3P0,0.110865,0.721086
+47-ZHAO_06_SLAB-SA3P0,0.103085,0.721086
+48-ZHAO_06_SLAB-SA3P0,0.220330,0.721086
+49-ZHAO_06_SLAB-SA3P0,0.400543,0.721086
+50-ZHAO_06_SLAB-SA3P0,0.592431,0.721086
+51-ZHAO_06_SLAB-SA3P0,0.413214,0.721086
+52-ZHAO_06_SLAB-SA3P0,0.116564,0.721086
+53-ZHAO_06_SLAB-SA3P0,0.035174,0.721086
+54-ZHAO_06_SLAB-SA3P0,0.151960,0.721086
+55-ZHAO_06_SLAB-SA3P0,0.146814,0.721086
+56-ZHAO_06_SLAB-SA3P0,0.095652,0.721086
+57-ZHAO_06_SLAB-SA3P0,0.035620,0.721086
+58-ZHAO_06_SLAB-SA3P0,0.104888,0.721086
+59-ZHAO_06_SLAB-SA3P0,0.079655,0.721086
+60-ZHAO_06_SLAB-SA3P0,0.079535,0.721086
+61-ZHAO_06_SLAB-SA3P0,0.066278,0.721086
+62-ZHAO_06_SLAB-SA3P0,0.060836,0.721086
+63-ZHAO_06_SLAB-SA3P0,0.054058,0.721086
+64-ZHAO_06_SLAB-SA3P0,0.369123,0.721086
+65-ZHAO_06_SLAB-SA3P0,0.369123,0.721086
+66-ZHAO_06_SLAB-SA3P0,0.303424,0.721086
+67-ZHAO_06_SLAB-SA3P0,0.303424,0.721086
+68-ZHAO_06_SLAB-SA3P0,0.215537,0.721086
+69-ZHAO_06_SLAB-SA3P0,0.215537,0.721086
+70-ZHAO_06_SLAB-SA3P0,0.215537,0.721086
+71-ZHAO_06_SLAB-SA3P0,0.215537,0.721086
+72-ZHAO_06_SLAB-SA3P0,0.369123,0.721086
+73-ZHAO_06_SLAB-SA3P0,0.215537,0.721086
+74-ZHAO_06_SLAB-SA3P0,0.215537,0.721086