diff --git a/src/main/java/gov/usgs/earthquake/nshmp/gmm/NgaEast.java b/src/main/java/gov/usgs/earthquake/nshmp/gmm/NgaEast.java
index 4fd40b2b6fa78d4b2fc6017e68019b8625effd43..9c0ef56c916f7469343faa74ad12f1344900ec7e 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/gmm/NgaEast.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/gmm/NgaEast.java
@@ -389,12 +389,28 @@ public abstract class NgaEast implements GroundMotionModel {
 
   public static void main(String[] args) {
     GmmInput in1 = GmmInput.builder().withDefaults().build();
-    GmmInput in2 = GmmInput.builder().withDefaults().zSed(10).build();
-    GroundMotionModel gmm = Gmm.NGA_EAST_2023.instance(Imt.SA1P0);
-    GroundMotion gm1 = GroundMotions.combine(gmm.calc(in1));
-    GroundMotion gm2 = GroundMotions.combine(gmm.calc(in2));
-    System.out.println(gm1);
-    System.out.println(gm2);
+    // GmmInput in2 = GmmInput.builder().withDefaults().zSed(10).build();
+
+    Imt imt = Imt.PGA;
+
+    GroundMotionModel gmm18 = Gmm.NGA_EAST_SEEDS_2018.instance(imt);
+    GroundMotionModel gmm23 = Gmm.NGA_EAST_SEEDS_2023.instance(imt);
+
+    LogicTree<GroundMotion> gmm18lt = gmm18.calc(in1);
+    LogicTree<GroundMotion> gmm23lt = gmm23.calc(in1);
+    System.out.println(gmm18lt);
+    System.out.println(gmm23lt);
+
+    GroundMotion gm18 = GroundMotions.combine(gmm18lt);
+    GroundMotion gm23 = GroundMotions.combine(gmm23lt);
+
+    System.out.println(gm18);
+    System.out.println(gm23);
+
+    // GroundMotion gm1 = GroundMotions.combine(gmm.calc(in1));
+    // GroundMotion gm2 = GroundMotions.combine(gmm.calc(in2));
+    // System.out.println(gm1);
+    // System.out.println(gm2);
   }
 
   /*
@@ -591,8 +607,8 @@ public abstract class NgaEast implements GroundMotionModel {
         double μPga;
 
         if (seed == Gmm.NGA_EAST_SEED_SP16) {
-          μ = sp16.calcMeanRock(in.Mw, in.rRup);
-          μPga = sp16pga.calcMeanRock(in.Mw, in.rRup);
+          μ = sp16.calcMeanRock(in.Mw, in.rJB);
+          μPga = exp(sp16pga.calcMeanRock(in.Mw, in.rJB));
         } else if (imt == Imt.PGV && noPgvSeeds.contains(seed)) {
           // note rock input; TODO this doesn't really work as the PGV
           // is conditioned on vs30 so site should already be applied
@@ -1026,7 +1042,7 @@ public abstract class NgaEast implements GroundMotionModel {
 
       double fNonlin = 0.0;
       if (vs30 < c.vc) {
-        double f2 = c.f4 * (exp(c.f5 * (min(vs30, vRefNl) - 360.0)) -
+        double f2 = calcF4() * (exp(c.f5 * (min(vs30, vRefNl) - 360.0)) -
             exp(c.f5 * (vRefNl - 360.0)));
         fNonlin = f2 * rkRefTerm;
       }