diff --git a/base/algkey.f b/base/algkey.f
index 54836bd136720033c01953f7b4c32cc9a5712310..80839aa7348c132420d73747033e76e0d28fe032 100644
--- a/base/algkey.f
+++ b/base/algkey.f
@@ -19,7 +19,7 @@ C     CTAB1 - 8 = THE TABLES THAT CONTAIN THE KEYWORDS.
 C     IOPT1 - 8 = THE TABLES THAT CONTAIN THE OPCODES.
 C
       INTEGER IRC,NUM,LEN,N1,I,N2,N3,N4,N5,N6,N7,N8
-      PARAMETER (N1=1,N2=8,N3=26,N4=21,N5=22,N6=41,N7=29,N8=34)
+      PARAMETER (N1=1,N2=8,N3=26,N4=21,N5=22,N6=41,N7=31,N8=34)
       CHARACTER CTOK*20,CTAB1(N1)*1,CTAB2(N2)*2,CTAB3(N3)*3,CTAB4(N4)*4,
      >          CTAB5(N5)*5,CTAB6(N6)*6,CTAB7(N7)*7,CTAB8(N8)*8
       INTEGER IOPT1(N1),IOPT2(N2),IOPT3(N3),IOPT4(N4),IOPT5(N5),
@@ -78,6 +78,7 @@ C   115  BSDIMAX
 C   116  BSDI
 C   117  BRDEN
 C   118  BRDEN2
+C   119  BHTWTBA
 C
 C   126  HABTYPE
 C   127  SLOPE
@@ -125,6 +126,7 @@ C   215  ARDEN
 C   216  ADBHWTBA
 C   217  ARDEN2
 C   218  ASDI2
+C   219  AHTWTBA
 C
 C GROUP 3 VARIABLES, THOSE KNOWN AFTER CYCLE 1.
 C
@@ -298,11 +300,11 @@ C
      >            'BSDIMAX','ASDIMAX','BSCLASS','ASCLASS','BSTRDBH',
      >            'ASTRDBH','MINSOIL','BCANCOV','ACANCOV','POTFLEN',
      >            'PCTCOST','PROPSTK','SALVVOL','POINTID','STRSTAT',
-     >            'TREEBIO'/,
+     >            'TREEBIO','BHTWTBA','AHTWTBA'/,
      >     IOPT7 /401,404,405,10400,126,131,7008,7004,10500,
      >            10600,133,406,7009,115,213,416,417,418,
      >            419,421,424,425,11900,436,144,12300,12400,12500,
-     >            12900/
+     >            12900,119,219/
 C
       DATA CTAB8 /'NUMTREES',
      >            'AVBTCUFT','AVBMCUFT','MSPERIOD','CENDYEAR',
diff --git a/base/fvs.f b/base/fvs.f
index 6ed5553572e8fa32d7ca21eb68c0356090ace710..cdcccbeac01c8eb793f88ff61790a3eea372ac90 100644
--- a/base/fvs.f
+++ b/base/fvs.f
@@ -50,15 +50,10 @@ C
 !DEC$ ATTRIBUTES DLLEXPORT, C, DECORATE, ALIAS : "FVS" :: FVS
 !DEC$ ATTRIBUTES REFERENCE :: IRTNCD
 
-Cx      INTEGER I,IA,N,K,NTODO,ITODO,IACTK,IDAT,NP                  !Remove these
       INTEGER I,IA,N,K
       REAL STAGEA,STAGEB
       LOGICAL DEBUG,LCVGO
       INTEGER IBA
-Cx      CHARACTER*150 SYSCMD                                        !Remove these
-Cx      INTEGER MYACT(1)                                            !Remove these
-Cx      REAL PRM(1)                                                 !Remove these
-Cx      DATA MYACT/100/                                             !Remove these
       INTEGER IRSTRTCD,ISTOPDONE,IRTNCD,ISTOPRES,lenCl
 C
 C     ******************     EXECUTION BEGINS     ******************
@@ -83,6 +78,7 @@ C     FIND THE RESTART, AND BRANCH AS REQUIRED
 
       call fvsRestart (IRSTRTCD)
       call fvsGetRtnCode(IRTNCD)
+
       IF (DEBUG) WRITE(JOSTND,*) "In FVS, IRSTRTCD=",IRSTRTCD,
      >                           " IRTNCD=",IRTNCD
       if (IRTNCD.ne.0) return
@@ -164,12 +160,6 @@ C
 C     CALCULATE TREES/ACRE ( = LOAD PROB )
 C
       CALL NOTRE
-      CALL fvsStopPoint (7,ISTOPRES)
-      IF (ISTOPRES.NE.0) RETURN
-      CALL fvsGetRtnCode(IRTNCD)
-      IF (IRTNCD.NE.0) RETURN 
-C     BRANCH HERE IF RESTARTING FROM STOPCODE 7
-   19 CONTINUE
 C
 C     WESTERN ROOT DISEASE MODEL VER. 3.0 INITIALIZATION
 C
@@ -190,6 +180,15 @@ C     THE CYCLE-1 OPTIONS.
 C
       CALL OPCSET(ICYC)
 C
+C     PROCESS STOPPOINT 7
+      
+      CALL fvsStopPoint (7,ISTOPRES)
+      IF (ISTOPRES.NE.0) RETURN
+      CALL fvsGetRtnCode(IRTNCD)
+      IF (IRTNCD.NE.0) RETURN 
+C     BRANCH HERE IF RESTARTING FROM STOPCODE 7
+   19 CONTINUE
+C
 C     CALIBRATE GROWTH FUNCTIONS AND FILL GAPS
 C     SDICLS IS CALLED HERE SO CROWNS WILL DUB CORRECTLY IN VARIANTS
 C     USING THE WEIBULL DISTRIBUTION
diff --git a/base/grincr.f b/base/grincr.f
index 593492013e2fcb80e73fce0bd3cb6846f8c3958f..a2c266f66cf141630eae5177f5f0fe3061abed49 100644
--- a/base/grincr.f
+++ b/base/grincr.f
@@ -78,7 +78,7 @@ C
       CALL fvsGetRestartCode (ISTOPRES)
       IF (DEBUG) WRITE (JOSTND,5) ICYC,ISTOPRES,NPLT
     5 FORMAT (/' IN GRINCR, ICYC=',I3,'; ISTOPRES=',I3,'; NPLT=',A)
-      GOTO (1,16,17,71,72), ISTOPRES+1
+      GOTO (1,16,17,71,72,1), ISTOPRES+1
 
 C     STOP HAS NOT OCCURED
 
diff --git a/base/tregro.f b/base/tregro.f
index 8d795f79df47c54741fea9547657a5fc3a687279..e2dad76d1e8f094786c54db65e92b9bf8dc89ec9 100644
--- a/base/tregro.f
+++ b/base/tregro.f
@@ -36,7 +36,7 @@ C-----------
       CALL fvsGetRestartCode (ISTOPRES)
       IF (DEBUG) WRITE(JOSTND,2) ICYC,ISTOPRES
     2 FORMAT (' IN TREGRO, ICYC=',I3,' ISTOPRES=',I3)
-      IF (ISTOPRES.GE.5) GOTO 10
+      IF (ISTOPRES.GE.5 .and. .not. ISTOPRES.EQ.7) GOTO 10
 C-----------
 C  CALL GRINCR TO COMPUTE INCREMENTS AND SEE IF BUG MODELS ARE ACTIVE.
 C-----------
diff --git a/bin/FVSon_sourceList.txt b/bin/FVSon_sourceList.txt
index 074bccbee19859f48eccc67bcd0ff10004a5a171..42e99ab84d6ff461e595abd9ccd535aa3d34ab6a 100644
--- a/bin/FVSon_sourceList.txt
+++ b/bin/FVSon_sourceList.txt
@@ -554,7 +554,6 @@
 ../volume/regndftdata.inc
 ../volume/wdbkwtdata.inc
 
-../vvolume/fvsvol.f
 ../vvolume/twigbf.f
 ../vvolume/twigcf.f
 
diff --git a/canada/bc/initre.f b/canada/bc/initre.f
index 1604c90ca4dc64167f4baef4612a92f7478603e6..637f61d250dd82d3b989c2b0db391c7d5f30bf3b 100644
--- a/canada/bc/initre.f
+++ b/canada/bc/initre.f
@@ -1184,6 +1184,11 @@ C
       ENDIF
       PRMS(1)=EFF
       IF (LNOTBK(2)) PRMS(1)=ARRAY(2)
+      IF (PRMS(1).LT.0.) THEN
+        CALL KEYDMP (JOSTND,IRECNT,KEYWRD,ARRAY,KARD)
+        CALL ERRGRO (.TRUE.,4)
+        GOTO 10
+      ENDIF
       IF (LNOTBK(3)) THEN
          PRMS(2)=ARRAY(3)
          I=2
diff --git a/common/INCLUDESVN.F77 b/common/INCLUDESVN.F77
index 36574b8d4852b9c67a6e4dd997b6a7702bbf9573..6c322f7ef3874f93f1a5de57e70d18dfab043931 100644
--- a/common/INCLUDESVN.F77
+++ b/common/INCLUDESVN.F77
@@ -3,6 +3,6 @@ C----------
 C COMMON 
 C----------
 C
-      DATA SVN/"FS2023.1"/
+      DATA SVN/"FS2023.2"/
 C
 C-----END SEGMENT
\ No newline at end of file
diff --git a/fire/base/fmcfir.f b/fire/base/fmcfir.f
index 8a012b3acd1a3943fbe9780c07196db5e4e6633c..c940498ef6fec46b88f73167eec071b884804827 100644
--- a/fire/base/fmcfir.f
+++ b/fire/base/fmcfir.f
@@ -51,6 +51,28 @@ C     VARIABLE DECLARATIONS.
       LOGICAL DEBUG
       INTEGER I,J
       REAL    WMULT,SAVWND,FLAME,BYRAM,RINIT1,CFB
+C
+C     INITIALIZE VARAIBLES THAT ARE NOT PASSED AS PARAMETERS.
+C
+      I      = 0
+      J      = 0
+      IRTNCD = 0
+      OLDND  = 0
+      OLDNL  = 0
+      B      = 0.0
+      BOUNDL = 0.0
+      BOUNDU = 0.0
+      BYRAM  = 0.0
+      CFB    = 0.0
+      DIFF   = 0.0
+      HPA2   = 0.0
+      HPA3   = 0.0
+      INIT1  = 0.0
+      FLAME  = 0.0
+      OLDEPT = 0.0
+      RACT   = 0.0
+      RINIT1 = 0.0
+      SAVWND = 0.0
 
       CALL DBCHK (DEBUG,'FMCFIR',6,ICYC)
       IF (DEBUG) WRITE(JOSTND,7) ICYC,FMOIS,CBD
diff --git a/sn/sitsetNC.f b/sn/sitsetNC.f
deleted file mode 100644
index c92364136bd995e9aef32489f744c24d73bf49fa..0000000000000000000000000000000000000000
--- a/sn/sitsetNC.f
+++ /dev/null
@@ -1,789 +0,0 @@
-      SUBROUTINE SITSET
-      IMPLICIT NONE
-C----------
-C SN $Id$
-C----------
-C  THIS SUBROUTINE LOADS THE SITEAR ARRAY WITH A SITE INDEX FOR EACH
-C  SPECIES WHICH WAS NOT ASSIGNED A SITE INDEX BY KEYWORD. LOGIC
-C  DEVELOPED BY DONNELLY, FMSC. WRITES FIA SPECIES CODE/FVS SPECIES
-C  CODE TRANSLATION TABLE
-C  THIS SUBROUTINE FOLLOWS SE-TWIGS SUBROUTINES BLOCK1, CONV1, AND
-C  CONV2.
-C----------
-COMMONS
-C
-C
-      INCLUDE 'PRGPRM.F77'
-C
-C
-      INCLUDE 'COEFFS.F77'
-C
-C
-      INCLUDE 'CONTRL.F77'
-C
-C
-      INCLUDE 'PLOT.F77'
-C
-C
-      INCLUDE 'VARCOM.F77'
-C
-C
-      INCLUDE 'VOLSTD.F77'
-C
-C
-      INCLUDE 'SNCOM.F77'
-C
-C
-COMMONS
-C
-C
-      INTEGER IFIASP, ERRFLAG
-      INTEGER I,IMAPSP,IGRP,IMGSP,IXTMP
-      INTEGER IREGN,IFORST,INTDIST,ISPC,J
-      REAL RSISP,A,B,C,D,XTMP
-      CHARACTER FORST*2,DIST*2,PROD*2,VAR*2,VOLEQ*10
-      LOGICAL DEBUG
-      REAL SIMAX(MAXSP), SIMIN(MAXSP), SDICON(MAXSP)
-      INTEGER ISNSIS(43),ISNGRP(43),MAPSI(MAXSP), MGSISP(9)
-      REAL MGRSI(9), MGSI, MGSPIX, MGSION
-C----------
-C  LOAD SDI MAXIMUM VALUES 
-C----------
-      DATA SDICON /
-     &  655., 354., 412., 499., 490., 385., 490., 332., 398., 398., 
-     &  310., 529., 480., 499., 692., 623., 518., 371., 344., 421., 
-     &  590., 371., 371., 400., 350., 375., 276., 492., 420., 422., 
-     &  257., 147., 364., 414., 408., 423., 414., 338., 492., 430., 
-     &  155., 283., 283., 430., 478., 492., 415., 492., 492., 492., 
-     &  422., 277., 726., 430., 704., 304., 164., 492., 499., 648., 
-     &  520., 384., 361., 315., 342., 405., 326., 387., 384., 326., 
-     &  417., 336., 365., 417., 414., 342., 311., 370., 410., 343., 
-     &  447., 492., 526., 282., 263., 282., 227., 354., 492., 421./
-C----------
-C  THIS ARRAY CONTAINS OFFICIAL SITE SPECIES USED IN FIA DATA AND
-C  IS CONTAINED IN THE SN SPECIES LIST
-C----------
-      DATA ISNSIS/
-     &   5,   6,  11,  17,  64,  35,  47,  75,  78,  15,
-     &  16,  44,  59,  76,  45,   8,  12,  13,   2,   1,
-     &   3,   7,   4,  14,  34,  61,  65,  87,  74,  10,
-     &  20,  22,  24,  25,  33,  60,  62,  63,  66,  69,
-     &  71,  73,  83/
-C----------
-C  THIS ARRAY CONTAINS A MAP FROM THE OFFICIAL SITE SPECIES TO AN
-C  INDEX GROUP.
-C----------
-      DATA ISNGRP/
-     &   1,   1,   1,   1,   2,   2,   2,   2,   2,   3,
-     &   3,   3,   3,   3,   3,   4,   4,   4,   5,   5,
-     &   5,   5,   5,   5,   6,   6,   6,   6,   7,   8,
-     &   9,   9,   9,   9,   9,   9,   9,   9,   9,   9,
-     &   9,   9,   9/
-C----------
-C  THIS ARRAY CONTAINS A MAP TO ESTIMATE INDIVIDUAL SITE INDICIES.
-C----------
-      DATA MAPSI/
-     &   5,   5,   5,   5,   1,   1,   5,   4,   9,   8,
-     &   1,   4,   4,   5,   3,   3,   1,   9,   9,   9,
-     &   9,   9,   9,   9,   9,   9,   9,   9,   9,   9,
-     &   9,   9,   9,   6,   2,   9,   9,   9,   9,   9,
-     &   9,   9,   9,   3,   3,   9,   2,   9,   9,   9,
-     &   9,   9,   9,   9,   9,   9,   9,   9,   3,   9,
-     &   6,   9,   9,   2,   6,   9,   9,   9,   9,   9,
-     &   9,   9,   9,   7,   2,   3,   9,   2,   9,   9,
-     &   9,   9,   9,   9,   9,   9,   6,   5,   9,   9/
-C----------
-C  ARRAY TO IDENTIFY THE "MASTER GROUP" SPECIES WHICH HAVE PUBLISHED
-C  REFERENCES TO ALLOW DIRECT TRANSFORMATION OF SITE INDEX BETWEEN
-C  SPECIES (DOOLITTLE 1958).  SITE INDEX COMPARISONS...SOUTHERN
-C  APPALACHIANS, SOIL SCIENCE OF AMERICA PROC. 22(5):455-458;
-C  USDA FS(R8) 1992.  SILVICULTURAL...PRESCRIPTION FIELD BOOK, P.19)
-C----------
-C--MASTER GROUP NO.1   2   3   4   5   6   7   8   9
-      DATA MGSISP /5, 64, 45, 12, 14, 65, 74, 10, 63/
-C----------
-C  ARRAYS CONTAINING MAX AND MIN SITE INDEX BY SPECIES AND
-C  MODIFIED FOR USE IN HEIGHT GROWTH SITE INDEX SCALING.
-C  THIS PROCESS IS ESPECIALLY IMPORTANT FOR THE SHORTER TREE SPECIES.
-C----------
-      DATA SIMIN/
-     &  15,   15,   15,   35,   35,   35,   45,   45,   35,   25,
-     &  35,   40,   40,   35,   30,   30,   35,   35,   35,   35,
-     &  30,   35,   25,   35,   35,   15,   25,   30,   15,   15,
-     &  15,   15,   35,   35,   35,   35,   35,   25,   15,   15,
-     &  35,   35,   35,   30,   30,   35,   25,   35,   15,   35,
-     &  15,   15,   30,   35,   35,   15,   15,   15,   30,   40,
-     &  30,   35,   25,   25,   25,   30,   25,   25,   35,   25,
-     &  35,   35,   30,   25,   25,   15,   25,   25,   30,   25,
-     &  15,   15,   35,   35,   35,   35,   35,   15,   15,   15/
-C
-      DATA SIMAX/
-     & 100,   70,   80,  100,  105,  105,   90,  125,   70,   95,
-     & 105,  135,  125,   95,  120,  120,   90,   70,   70,   85,
-     & 105,  100,   90,   85,   70,   40,   85,   90,   90,   40,
-     &  45,   70,   85,  105,   95,   85,  105,  120,   50,   65,
-     &  70,   85,   85,  125,  135,  125,  115,  125,   75,  125,
-     &  40,   55,  105,  105,   95,   40,   70,   60,  120,  125,
-     &  90,  105,  115,  115,  115,  125,   65,   65,   95,   65,
-     &  95,   75,  115,  115,  115,  125,   85,  115,   65,   95,
-     & 110,   80,   90,   90,   90,   90,   90,   55,   55,   55/
-C-----------
-C  SEE IF WE NEED TO DO SOME DEBUG.
-C-----------
-      CALL DBCHK (DEBUG,'SITSET',6,ICYC)
-C----------
-C  SET DEFAULT SITE INDEX.
-C  IF SITE INDEX SPECIES IS BLANK, USE WHITE OAK.  IF NOT BLANK, CHECK
-C  TO SEE IF IT IS A RECOGNIZED SN SITE SPECIES.  IF NOT, SET TO WHITE OAK.
-C  FVS SEQUENCE No. 63 AND SITE INDEX OF 70
-C----------
-      IF(ISISP .LE. 0) ISISP=63
-      DO 100 I=1,43
-        IF(ISISP .EQ. ISNSIS(I))THEN
-          IMAPSP=I
-          GO TO 101
-        ENDIF
-  100 CONTINUE
-      ISISP=63
-      IMAPSP=38
-  101 CONTINUE
-      IF(SITEAR(ISISP) .LE. 0.0) SITEAR(ISISP)=70.
-C----------
-C  BOUND INPUT SITE INDEX HERE
-C  (VALUES FROM DONNELLY, 02/2000)
-C----------
-      IF (SITEAR(ISISP) .LE. SIMIN(ISISP)) THEN
-        SITEAR(ISISP) = SIMIN(ISISP)
-        WRITE (JOSTND,110) JSP(ISISP), SITEAR(ISISP)
-      ENDIF
-      IF (SITEAR(ISISP) .GE. SIMAX(ISISP)) THEN
-        SITEAR(ISISP) = SIMAX(ISISP)
-        WRITE (JOSTND,110) JSP(ISISP), SITEAR(ISISP)
-      ENDIF
-  110 FORMAT('***** WARNING - THE SITE SPECIES (',A4,') SITE INDEX VALU
-     1E WAS OUTSIDE OF THE ALLOWABLE RANGE, THE VALUE USED WAS ',F5.1)
-C----------
-C  COMPUTE RELATIVE SITE INDEX FOR SITE SPECIES
-C----------
-      RSISP = (SITEAR(ISISP)-SIMIN(ISISP))/(SIMAX(ISISP)-SIMIN(ISISP))
-C----------
-C  FOR MASTER GROUP SPECIES, FIND INDEX EQUATION COEFFICIENTS FOR
-C  X-AXIS VALUE CORRESPONDING TO SITE SPECIES SI.  FIRST, FIND
-C  MASTER GROUP NUMBER OF SITE INDEX SPECIES.  THEN, DETERMINE
-C  COEFFICIENTS TO BE USED IN EQUATION TO COMPUTE TRANSFORMATION
-C  INDEX.
-C----------
-      IGRP=ISNGRP(IMAPSP)
-      IF(IGRP .EQ. 1) THEN
-        IF (PCOM(1:1) .EQ. 'M') THEN
-C----------
-C   MOUNTAIN
-C----------
-          A = -7.1837
-          B =  0.1633
-        ELSE
-C----------
-C   OTHER
-C----------
-          A = -10.0
-          B =  0.2
-        ENDIF
-      ELSEIF (IGRP.EQ.2) THEN
-        IF (PCOM(1:1) .EQ. 'M') THEN
-          A = -8.6809
-          B =  0.1702
-        ELSE
-          A = -12.0
-          B =  0.2
-          IF(ISISP .EQ. 78) THEN
-            A = -16.0
-            B = 0.2667
-          ENDIF
-        ENDIF
-      ELSEIF (IGRP.EQ.3) THEN
-        A = -4.0
-        B =  0.1
-      ELSEIF (IGRP.EQ.4) THEN
-        A = -9.4118
-        B =  0.1569
-      ELSEIF (IGRP.EQ.5) THEN
-        A = -9.3913
-        B =  0.1739
-      ELSEIF (IGRP.EQ.6) THEN
-        A = -10.0
-        B =  0.2
-      ELSEIF (IGRP .EQ. 7) THEN
-        A = -8.6809
-        B =  0.1702
-      ELSEIF (IGRP.EQ.8) THEN
-        A = -7.1837
-        B =  0.1633
-      ELSEIF (IGRP.EQ.9) THEN
-        IF (PCOM(1:1) .EQ. 'M') THEN
-          A = -8.7442
-          B =  0.186
-        ELSE
-          A = -10.0
-          B =  0.2
-        ENDIF
-      ENDIF
-C----------
-C  USING A, B COEFFS FROM ABOVE, COMPUTE SITE TRANSFORM INDEX:
-C  FIRST, FIND MASTER GROUP SPECIES FROM MASTER GROUP SITE INDEX ARRAY,
-C         GIVEN THE GROUP NUMBER OF THE ACTUAL SITE INDEX SPECIES
-C  SECOND, COMPUTE MASTER GROUP SPECIES OWN SITE INDEX
-C  THIRD, GIVEN MASTER GROUP SPECIES OWN SITE INDEX, COMPUTE MASTER
-C         GROUP SITE SPECIES TRANSFORM INDEX
-C----------
-      IMGSP  = MGSISP(IGRP)
-      MGSION = RSISP * ( SIMAX(IMGSP) - SIMIN(IMGSP) ) + SIMIN(IMGSP)
-      MGSPIX = A + B*MGSION
-C----------
-C    FIRST, FIND THE COEFFICIENTS NEEDED TO ESTIMATE THE SITE INDEX FOR
-C    EACH OF THE MASTER GROUP SPECIES.  THEN, USING THE COEFFS C AND D,
-C    COMPUTE THE SITE INDEX FOR EACH MASTER GROUP SPECIES (MGSI).
-C    THEN, COMPUTE THE RELATIVE SITE INDEX FOR EACH MASTER GROUP
-C    SPECIES (MGRSI) BASED ON ITS SITE INDEX POSITION IN ITS RANGE
-C    FROM ITS SIMIN TO ITS SIMAX.
-C----------
-      DO 130 I=1, 9
-        IF (I.EQ.1) THEN
-          IF (PCOM(1:1) .EQ. 'M') THEN
-            C = 44.
-            D = 6.13
-          ELSE
-            C = 50.
-            D = 5.
-          ENDIF
-        ELSEIF (I.EQ.2) THEN
-          IF (PCOM(1:1) .EQ. 'M') THEN
-            C = 51.
-            D = 5.88
-          ELSE
-            C = 60.
-            D = 5.
-            IF(ISISP .EQ. 78) THEN
-              C = 60.
-              D = 3.75
-            ENDIF
-          ENDIF
-        ELSEIF (I.EQ.3) THEN
-          C = 40.
-          D = 10.
-        ELSEIF (I.EQ.4) THEN
-          C = 60.
-          D = 6.38
-        ELSEIF (I.EQ.5) THEN
-          C = 54.
-          D = 5.75
-        ELSEIF (I.EQ.6) THEN
-          C = 50.
-          D = 5.
-        ELSEIF (I.EQ.7) THEN
-          C = 51.
-          D = 5.88
-        ELSEIF (I .EQ. 8) THEN
-          C = 44.
-          D = 6.13
-        ELSEIF( I .EQ. 9.) THEN
-          IF (PCOM(1:1) .EQ. 'M') THEN
-            C = 47.
-            D = 5.38
-          ELSE
-            C = 50.
-            D = 5.
-          ENDIF
-        ENDIF
-        MGSI = C + D * MGSPIX
-        MGRSI(I) = ( MGSI - SIMIN(MGSISP(I))) /
-     &             ( SIMAX(MGSISP(I)) - SIMIN(MGSISP(I)))
-  130 CONTINUE
-C----------
-C    GIVEN THE TRANSFORMED RELATIVE SITE INDEX VALUES FOR EACH OF THE
-C    MASTER GROUP SPECIES, COMPUTE AN ESTIMATED SITE INDEX VALUE FOR
-C    EACH SPECIES POSSIBLE IN THE VARIANT.  EACH SPECIES IS
-C    ASSOCIATED WITH ONE OF THE MASTER GROUP SPECIES.  THE RELATIVE
-C    SITE INDEX THEN SCALES THE POTENTIAL RANGE OF SITE INDEX VALUES
-C    USED IN THE HEIGHT GROWTH EQUATION (CARMEAN, NC-128) ASSIGNED
-C    TO EACH SPECIES.  ALSO, EACH SITE INDEX VALUE IS CHECKED TO BE
-C    SURE IT IS WITHIN MIN AND MAX BOUNDS.
-C----------
-      DO 150 I = 1, MAXSP
-        IF ( SITEAR(I) .EQ. 0. ) THEN
-          SITEAR(I) = MGRSI(MAPSI(I))*(SIMAX(I) - SIMIN(I)) + SIMIN(I)
-          IF (DEBUG) WRITE(JOSTND,*)'I, SITEAR= ',I,'  ',SITEAR(I)
-          IF (SITEAR(I) .LE. SIMIN(I)) THEN
-            IF(DEBUG) WRITE(JOSTND,155) JSP(I), SITEAR(I),SIMIN(I)
-            SITEAR(I) = SIMIN(I)
-          ENDIF
-          IF (SITEAR(I) .GE. SIMAX(I)) THEN
-            IF(DEBUG) WRITE(JOSTND,155) JSP(I), SITEAR(I),SIMAX(I)
-            SITEAR(I) = SIMAX(I)
-          ENDIF
-        ENDIF
-  155   FORMAT('*** WARNING - THE SITE SPECIES (',A4,f5.1,')SITE INDEX
-     1 WAS OUTSIDE OF THE ALLOWABLE RANGE, THE VALUE USED WAS ',F5.1)
-  150 CONTINUE
-C----------
-C  END OF SITE DUBBING LOGIC
-C----------                                              
-C  SET SDIDEF VALUES IF NOT SET BY KEYWORD.            
-C----------
-      DO 15 I=1,MAXSP                                   
-      IF(SDIDEF(I) .LE. 0.) THEN
-        IF(BAMAX .GT. 0.)THEN
-          SDIDEF(I)=BAMAX/(0.5454154*(PMSDIU/100.))
-        ELSE
-          SDIDEF(I) = SDICON(I)
-        ENDIF
-      ENDIF
-   15 CONTINUE
-C  START DIGESTION OF FOREST TYPE VARIABLE
-C----------
-      IF(IFORTP .GT. 999) THEN
-C----------
-C  THE LAST 3 CHARACTERS INDICATE THE FOREST TYPE AND THE FIRST
-C  CHARACTER INDICATE THAT THE USER SETS THE FOREST TYPE TO BE
-C  CONSTANT FOR ALL CYCLES.  THE FIELD 3 INPUT IS DECODED
-C  AND LFLAGV IS SET TO TRUE TO INDICATE CONSTANT FOREST TYPE
-C----------
-        XTMP= FLOAT(IFORTP)
-        XTMP= XTMP/1000. + 0.00001
-        IXTMP= INT(XTMP)
-        IFORTP= INT((XTMP-REAL(IXTMP))*1000.)
-        LFLAGV= .TRUE.
-      ENDIF
-C----------
-C  LOAD VOLUME DEFAULT MERCH. SPECS.
-C----------
-      IF(ISEFOR.NE.0)THEN
-        IREGN = KODFOR/10000
-        IFORST=KODFOR/100-IREGN*100
-        WRITE(FORST,'(I2)')IFORST
-        IF(IFORST.LT.10)FORST(1:1)='0'
-        INTDIST = KODFOR - (KODFOR/100)*100
-        WRITE(DIST,'(I2)')INTDIST
-        IF(INTDIST.LT.10)DIST(1:1)='0'
-      ELSE
-        IF(KODFOR .GT. 1000)THEN
-          IFORST = KODFOR/100-900
-        ELSE
-          IFORST = KODFOR-900
-        ENDIF
-        DIST=' '
-        IREGN=9
-        VOLEQ(1:7)='900CLKE'
-        WRITE(FORST,'(I2)')IFORST
-        IF(IFORST.LT.10)FORST(1:1)='0'
-      ENDIF
-C
-      DO ISPC=1,MAXSP
-      IF(IREGN.EQ.8)THEN
-        IF(DBHMIN(ISPC).LE.0.)THEN                 !SET **DBHMIN** DEFAULT
-          IF((ISPC.LE.17).OR.(ISPC.EQ.88))THEN   !SOFTWOODS
-            IF(IFOR.EQ.11)THEN
-              IF((KODIST.EQ.3).OR.(KODIST.EQ.10))THEN
-                DBHMIN(ISPC)=5.6
-              ELSE 
-                DBHMIN(ISPC)=8.0
-              ENDIF
-            ELSE  
-              IF((ISPC.EQ.7).OR.(ISPC.EQ.13))THEN
-                DBHMIN(ISPC)=6.
-              ELSE
-                DBHMIN(ISPC)=4.
-              ENDIF
-            ENDIF
-          ELSE                                   !HARDWOODS
-            IF(IFOR.EQ.11)THEN
-              IF((KODIST.EQ.3).OR.(KODIST.EQ.10))THEN
-                DBHMIN(ISPC)=6.
-              ELSE
-                DBHMIN(ISPC)=8.
-              ENDIF
-            ELSE  
-              IF((ISPC.EQ.39).OR.(ISPC.EQ.43).OR.(ISPC.EQ.44).OR.
-     &           (ISPC.EQ.52).OR.(ISPC.EQ.53).OR.(ISPC.EQ.55).OR.
-     &           (ISPC.EQ.63))THEN
-                DBHMIN(ISPC)=6.
-              ELSE
-                DBHMIN(ISPC)=4.
-              ENDIF
-            ENDIF
-          ENDIF
-        ENDIF
-        IF(TOPD(ISPC).LE.0.)THEN              !SET **TOPD** DEFAULT
-          IF(IFOR.EQ.11)THEN
-            TOPD(ISPC)=3.5
-          ELSE
-            TOPD(ISPC)=4.
-          ENDIF
-        ENDIF
-        IF(BFMIND(ISPC).LE.0.)THEN                 !SET **BFMIND** DEFAULT
-          IF((ISPC.LE.17).OR.(ISPC.EQ.88))THEN   !SOFTWOODS
-            SELECT CASE(IFOR)
-            CASE(10)
-              IF(ISPC.EQ.2)THEN
-                BFMIND(ISPC)=9.
-              ELSE
-                BFMIND(ISPC)=10.
-              ENDIF
-            CASE(11)
-              IF((KODIST.EQ.3).OR.(KODIST.EQ.10))THEN
-                BFMIND(ISPC)=11.0
-              ELSEIF((ISPC.EQ.2).OR.(ISPC.EQ.12).OR. ! SYP, SPRUCE, FIR GROUP
-     &               (ISPC.EQ.15).OR.(ISPC.EQ.16).OR.(ISPC.EQ.17))THEN
-                BFMIND(ISPC)=12.
-              ELSE
-                BFMIND(ISPC)=10.
-              ENDIF
-            CASE DEFAULT
-              BFMIND(ISPC)=10.
-            END SELECT
-          ELSE                                   !HARDWOODS
-            IF(IFOR.EQ.11)THEN
-              IF((KODIST.EQ.3).OR.(KODIST.EQ.10))THEN
-                BFMIND(ISPC)=13.
-              ELSE
-                BFMIND(ISPC)=15.
-              ENDIF
-            ELSE
-              BFMIND(ISPC)=12.
-            ENDIF
-          ENDIF
-        ENDIF
-        IF(BFTOPD(ISPC).LE.0.)THEN                 !SET **BFTOPD** DEFAULT
-          IF((ISPC.LE.17).OR.(JSP(ISPC)(1:2).EQ.'OS'))THEN
-            IF(IFOR.EQ.11)THEN
-              IF((KODIST.EQ.3).OR.(KODIST.EQ.10))THEN
-                BFTOPD(ISPC)=6.3
-              ELSEIF((ISPC.EQ.2).OR.(ISPC.EQ.12).OR. ! SYP, SPRUCE, FIR GROUP
-     &               (ISPC.EQ.15).OR.(ISPC.EQ.16).OR.(ISPC.EQ.17))THEN
-                BFTOPD(ISPC)=9.
-              ELSE
-                BFTOPD(ISPC)=6.3
-              ENDIF
-            ELSE
-              BFTOPD(ISPC)=7.
-            ENDIF
-          ELSE                                       !HARDWOODS
-            IF(IFOR.EQ.11)THEN
-              IF((KODIST.EQ.3).OR.(KODIST.EQ.10))THEN
-                BFTOPD(ISPC)=8.
-              ELSE
-                BFTOPD(ISPC)=11.
-              ENDIF
-            ELSE
-              BFTOPD(ISPC)=9.
-            ENDIF
-          ENDIF
-        ENDIF
-      ELSE                                     !REGION 9
-        IF(DBHMIN(ISPC).LE.0.)THEN          !SET **DBHMIN** DEFAULT
-          IF((ISPC.LE.17).OR.(ISPC.EQ.88))THEN !SOFTWOODS
-            DBHMIN(ISPC)=5.
-          ELSE                              !HARDWOODS
-            SELECT CASE(IFOR)
-            CASE(5)
-              DBHMIN(ISPC)=5.
-            CASE DEFAULT
-              DBHMIN(ISPC)=6.
-            END SELECT
-          ENDIF
-        ENDIF
-        IF(TOPD(ISPC).LE.0.)THEN            !SET **TOPD** DEFAULT
-          IF(ISPC.LE.17)THEN                 !SOFTWOODS
-            TOPD(ISPC)=4.
-          ELSE                              !HARDWOODS
-            SELECT CASE (IFOR)
-            CASE(8)
-              TOPD(ISPC)=5.
-            CASE DEFAULT
-              TOPD(ISPC)=4.
-            END SELECT
-          ENDIF
-        ENDIF
-        IF(BFMIND(ISPC).LE.0.)THEN           !SET **BFMIND** DEFAULT
-          IF(ISPC.LE.17)THEN                 !SOFTWOODS
-            SELECT CASE(IFOR)
-            CASE(5)
-              BFMIND(ISPC)=9.
-              IF(ISPC.EQ.2)BFMIND(ISPC)=6.
-            CASE DEFAULT
-              BFMIND(ISPC)=9.
-            END SELECT
-          ELSE                              !HARDWOODS
-            SELECT CASE(IFOR)
-            CASE(5)
-              BFMIND(ISPC)=9.
-            CASE DEFAULT
-              BFMIND(ISPC)=11.
-            END SELECT
-          ENDIF
-        ENDIF
-        IF(BFTOPD(ISPC).LE.0.)THEN          !SET **BFTOPD** DEFAULT
-          IF(ISPC.LE.17)THEN                 !SOFTWOOD
-            SELECT CASE(IFOR)
-            CASE(5)
-              BFTOPD(ISPC)=7.6
-              IF(ISPC.EQ.2)BFTOPD(ISPC)=5.
-            CASE DEFAULT
-              BFTOPD(ISPC)=7.6
-            END SELECT
-          ELSE                              !HARDWOODS
-            SELECT CASE(IFOR)
-            CASE(5)
-              BFTOPD(ISPC)=7.6
-            CASE DEFAULT
-              BFTOPD(ISPC)=9.6
-            END SELECT
-          ENDIF
-        ENDIF
-      ENDIF
-      ENDDO
-C----------
-C  LOAD VOLUME EQUATION ARRAYS FOR ALL SPECIES
-C----------
-      PROD='  '
-      VAR='SN'
-C
-      DO ISPC=1,MAXSP
-      READ(FIAJSP(ISPC),'(I4)')IFIASP
-      IF(((METHC(ISPC).EQ.6).OR.(METHC(ISPC).EQ.9)).AND.
-     &     (VEQNNC(ISPC).EQ.'          '))THEN
-
-        PROD='02'
-        CALL VOLEQDEF(VAR,IREGN,FORST,DIST,IFIASP,PROD,VOLEQ,ERRFLAG)
-        VEQNNC(ISPC)=VOLEQ
-
-      IF(DEBUG)WRITE(16,*)'VAR,IREGN,FORST,DIST,IFIASP,PROD,VOLEQ,',
-     & 'ERRFLAG= ',VAR,IREGN,FORST,DIST,IFIASP,PROD,VOLEQ,ERRFLAG
-      ENDIF
-      IF(((METHB(ISPC).EQ.6).OR.(METHB(ISPC).EQ.9)).AND.
-     &     (VEQNNB(ISPC).EQ.'          '))THEN
-        PROD='01'
-        CALL VOLEQDEF(VAR,IREGN,FORST,DIST,IFIASP,PROD,VOLEQ,ERRFLAG)
-        VEQNNB(ISPC)=VOLEQ
-      ENDIF
-      ENDDO
-C----------
-C  HT-DBH COEFFICIENTS
-C----------
-      HT1(1)=  4.5084
-      HT1(2)=  4.0374
-      HT1(3)=  4.5084
-      HT1(4)=  4.2899
-      HT1(5)=  4.6271
-      HT1(6)=  4.6561
-      HT1(7)=  4.7258
-      HT1(8)=  4.5991
-      HT1(9)=  4.2139
-      HT1(10)= 4.3898
-      HT1(11)= 4.5457
-      HT1(12)= 4.6090
-      HT1(13)= 4.6897
-      HT1(14)= 4.4718
-      HT1(15)= 4.6171
-      HT1(16)= 4.4603
-      HT1(17)= 4.5084
-      HT1(18)= 4.3164
-      HT1(19)= 4.2378
-      HT1(20)= 4.3379
-      HT1(21)= 4.5991
-      HT1(22)= 4.4834
-      HT1(23)= 4.5697
-      HT1(24)= 4.4388
-      HT1(25)= 4.4522
-      HT1(26)= 3.8550
-      HT1(27)= 4.5128
-      HT1(28)= 4.9396
-      HT1(29)= 4.4207
-      HT1(30)= 3.7512
-      HT1(31)= 3.7301
-      HT1(32)= 4.4091
-      HT1(33)= 4.4772
-      HT1(34)= 4.4819
-      HT1(35)= 4.5959
-      HT1(36)= 4.6155
-      HT1(37)= 4.6155
-      HT1(38)= 4.3734
-      HT1(39)= 4.4009
-      HT1(40)= 4.4931
-      HT1(41)= 4.0151
-      HT1(42)= 4.5018
-      HT1(43)= 4.5018
-      HT1(44)= 4.5920
-      HT1(45)= 4.6892
-      HT1(46)= 4.4004
-      HT1(47)= 4.6067
-      HT1(48)= 4.4004
-      HT1(49)= 4.3609
-      HT1(50)= 4.4004
-      HT1(51)= 3.9678
-      HT1(52)= 3.9613
-      HT1(53)= 4.4330
-      HT1(54)= 4.3802
-      HT1(55)= 4.4334
-      HT1(56)= 4.0322
-      HT1(57)= 4.1352
-      HT1(58)= 4.0965
-      HT1(59)= 4.6355
-      HT1(60)= 4.9396
-      HT1(61)= 4.9396
-      HT1(62)= 4.3286
-      HT1(63)= 4.5463
-      HT1(64)= 4.5225
-      HT1(65)= 4.5142
-      HT1(66)= 4.7342
-      HT1(67)= 3.9365
-      HT1(68)= 4.4375
-      HT1(69)= 4.5710
-      HT1(70)= 3.9191
-      HT1(71)= 4.6135
-      HT1(72)= 4.3420
-      HT1(73)= 4.5577
-      HT1(74)= 4.4618
-      HT1(75)= 4.5202
-      HT1(76)= 4.6106
-      HT1(77)= 4.2496
-      HT1(78)= 4.4747
-      HT1(79)= 4.2959
-      HT1(80)= 4.4299
-      HT1(81)= 4.4911
-      HT1(82)= 4.3383
-      HT1(83)= 4.5820
-      HT1(84)= 4.3744
-      HT1(85)= 4.5992
-      HT1(86)= 4.6008
-      HT1(87)= 4.6238
-      HT1(88)= 4.3898
-      HT1(89)= 3.9392
-      HT1(90)= 3.9089
-C
-      HT2(1)=  -6.0116
-      HT2(2)=  -4.2964
-      HT2(3)=  -6.0116
-      HT2(4)=  -4.1019
-      HT2(5)=  -6.4095
-      HT2(6)=  -6.2258
-      HT2(7)=  -6.7703
-      HT2(8)=  -5.9111
-      HT2(9)=  -4.5419
-      HT2(10)= -5.7183
-      HT2(11)= -6.8000
-      HT2(12)= -6.1896
-      HT2(13)= -6.8801
-      HT2(14)= -5.0078
-      HT2(15)= -6.2684
-      HT2(16)= -5.0577
-      HT2(17)= -6.0116
-      HT2(18)= -4.0582
-      HT2(19)= -4.1080
-      HT2(20)= -3.8214
-      HT2(21)= -6.6706
-      HT2(22)= -4.5431
-      HT2(23)= -5.7172
-      HT2(24)= -4.0872
-      HT2(25)= -4.5758
-      HT2(26)= -2.6623
-      HT2(27)= -4.9918
-      HT2(28)= -8.1838
-      HT2(29)= -5.1435
-      HT2(30)= -2.5539
-      HT2(31)= -2.7758
-      HT2(32)= -4.8464
-      HT2(33)= -4.7206
-      HT2(34)= -4.5314
-      HT2(35)= -6.4497
-      HT2(36)= -6.2945
-      HT2(37)= -6.2945
-      HT2(38)= -5.3135
-      HT2(39)= -5.0560
-      HT2(40)= -4.6501
-      HT2(41)= -4.3314
-      HT2(42)= -5.6123
-      HT2(43)= -5.6123
-      HT2(44)= -5.1719
-      HT2(45)= -4.9605
-      HT2(46)= -4.7519
-      HT2(47)= -5.2030
-      HT2(48)= -4.7519
-      HT2(49)= -4.1423
-      HT2(50)= -4.7519
-      HT2(51)= -3.2510
-      HT2(52)= -3.1993
-      HT2(53)= -4.5383
-      HT2(54)= -4.7903
-      HT2(55)= -4.5709
-      HT2(56)= -3.0833
-      HT2(57)= -3.7450
-      HT2(58)= -3.9250
-      HT2(59)= -5.2776
-      HT2(60)= -8.1838
-      HT2(61)= -8.1838
-      HT2(62)= -4.0922
-      HT2(63)= -5.2287
-      HT2(64)= -4.9401
-      HT2(65)= -5.2205
-      HT2(66)= -6.2674
-      HT2(67)= -4.4599
-      HT2(68)= -4.6654
-      HT2(69)= -6.0922
-      HT2(70)= -4.3503
-      HT2(71)= -5.7613
-      HT2(72)= -5.1193
-      HT2(73)= -4.9595
-      HT2(74)= -4.8786
-      HT2(75)= -4.8896
-      HT2(76)= -5.4380
-      HT2(77)= -4.8061
-      HT2(78)= -4.8698
-      HT2(79)= -5.3332
-      HT2(80)= -4.9920
-      HT2(81)= -5.7928
-      HT2(82)= -4.5018
-      HT2(83)= -5.0903
-      HT2(84)= -4.5257
-      HT2(85)= -7.7428
-      HT2(86)= -7.2732
-      HT2(87)= -7.4847
-      HT2(88)= -5.7183
-      HT2(89)= -3.4279
-      HT2(90)= -3.0149
-C----------
-C  LOAD FORT BRAGG HT-DBH CONSTANTS
-C----------
-      IF(IFOR .EQ. 20)THEN
-        ITYPE=176
-        PCOM='232BQ'
-        HT1(5) = 4.705
-        HT2(5) = -7.904
-        HT1(6) = 4.787
-        HT2(6) = -8.015
-        HT1(8) = 4.562
-        HT2(8) = -7.314
-        HT1(11) = 4.806
-        HT2(11) = -9.573
-        HT1(13) = 4.79
-        HT2(13) = -8.5
-        WRITE(JOSTND,310)
-  310   FORMAT(/,T12,'ECOLOGICAL UNIT CODE CHANGED TO 232BQ FOR ',
-     &  'FURTHER PROCESSING OF FORT BRAGG LOCATION.')
-      ENDIF
-C----------
-C  IF FIA CODES WERE IN INPUT DATA, WRITE TRANSLATION TABLE
-C---------
-      IF(LFIA) THEN
-        CALL FIAHEAD(JOSTND)
-        WRITE(JOSTND,311) (NSP(I,1)(1:2),FIAJSP(I),I=1,MAXSP)
- 311    FORMAT ((T12,8(A3,'=',A6,:,'; '),A,'=',A6))
-      ENDIF
-C----------
-C  WRITE VOLUME EQUATION NUMBER TABLE
-C----------
-      CALL VOLEQHEAD(JOSTND)
-      WRITE(JOSTND,230)(NSP(J,1)(1:2),VEQNNC(J),VEQNNB(J),J=1,MAXSP)
- 230  FORMAT(4(2X,A2,4X,A10,1X,A10,1X))
-C
-      RETURN
-      END
diff --git a/tests/APIviaR/Rapi.R b/tests/APIviaR/Rapi.R
index 7938e1bd7b521ee415081e35cd58c2c6f3bc7e6e..9717237db394604458cdf675bd4ded07986b49d8 100644
--- a/tests/APIviaR/Rapi.R
+++ b/tests/APIviaR/Rapi.R
@@ -21,10 +21,10 @@ fvsGetSpeciesCodes()
 # list supported activity codes
 fvsAddActivity()
 
+
 ## first run
 fvsSetCmdLine("--keywordfile=base.key")
 
-fvsRun(7,0)
 fvsRun(2,2030)
 fvsGetStandIDs()
 
@@ -36,9 +36,13 @@ fvsGetEventMonitorVariables(c("myaba","another"))
 # get and output tree attributes
 fvsGetTreeAttrs(treeAttrs)
 
+fvsSetSpeciesAttrs(list(baimult=rep(1.1,fvsGetDims()["maxspecies"]),
+                        mortmult=rep(.9,fvsGetDims()["maxspecies"])))
+
 # get and set some species attributes
-spAttrs = fvsGetSpeciesAttrs(c("spsdi","spccf","spsiteindx"))
+spAttrs = fvsGetSpeciesAttrs(c("baimult","spsdi","spccf","spsiteindx"))
 spAttrs
+
 rtn = fvsSetSpeciesAttrs(spAttrs)
 cat ("rtn = ",rtn,"\n")
 
@@ -68,10 +72,10 @@ fvsRun(2,1993)
 addtrees <- fvsGetTreeAttrs(treeAttrs) 
 addtrees <- subset(addtrees,dbh<2)[,c("dbh","species","ht","cratio","plot","tpa")]
 
-# these trees will be added to the run at 2013
+cat ("these trees will be added to the run at 2013\n")
 addtrees
 
-# add a yearloss and thindbh for 1993
+# add a yardloss and thindbh for 1993
 fvsAddActivity(1993,"base_yardloss",c(0.50, 0.70, 0.50))
 fvsAddActivity(1993,"base_thindbh",c(0.00,12.00,1.00,0.00,0.00))
 
@@ -82,7 +86,13 @@ fvsRun(6,2013)
 fvsAddTrees(addtrees)
 fvsGetTreeAttrs(treeAttrs)
 
-# continue the run
+# continyue the run until 2033, stoppoint 2, then simulate a harvest of 50% OF species 3
+fvsRun(2,2033)
+curTrees <- fvsGetTreeAttrs(c("species"))
+cut = ifelse(curTrees$species == 3, .5, 0)
+fvsCutNow(cut)
+
+## continue the run
 fvsRun(0,0)
 
 #get and output summary statistics
@@ -108,5 +118,15 @@ rtn = fvsInteractRun(
         BeforeEstab= 'testInteract("BeforeEstab")', 
         SimEnd     = 'testInteract("SimEnd     ")')
 
+## test stop point 7
+fvsSetCmdLine("--keywordfile=base.key")
+fvsRun()
+sp7no=fvsGetSummary()
+fvsSetCmdLine("--keywordfile=base.key")
+fvsRun(7,0)
+fvsRun()
+sp7yes=fvsGetSummary()
+good=identical(sp7no,sp7yes)
+cat("stop point 7 test result=",good," (should be TRUE)\n")
 
 
diff --git a/tests/APIviaR/Rapi.out.save b/tests/APIviaR/Rapi.out.save
index a8fa2b944fa688e468badda2c5c07fa567691102..681639dadb85072734410eda3d46025044daf08a 100644
--- a/tests/APIviaR/Rapi.out.save
+++ b/tests/APIviaR/Rapi.out.save
@@ -93,10 +93,10 @@ FIRE_FIRECALC FIRE_FMODLIST FIRE_DWDVLOUT FIRE_DWDCVOUT FIRE_FUELSOFT
  ECON_PRETEND ECON_SEVSTART  ECON_SPECCST  ECON_SPECRVN ECON_STRTECON 
          2605          2606          2607          2608          2609 
 > 
+> 
 > ## first run
 > fvsSetCmdLine("--keywordfile=base.key")
 > 
-> fvsRun(7,0)
 > fvsRun(2,2030)
 > fvsGetStandIDs()
 $standid
@@ -115,7 +115,7 @@ $caseID
 > # get and output some event monitor vars
 > fvsGetEventMonitorVariables(c("year","atpa","aba","mybba","myaba"))
      year      atpa       aba     mybba     myaba 
-2030.0000  304.4408  141.0889  168.7893        NA 
+2030.0000  307.2265  172.4059  193.3801        NA 
 > fvsSetEventMonitorVariables(c("myaba"=100,"another"=40))
   myaba another 
     100      40 
@@ -125,90 +125,94 @@ $caseID
 > 
 > # get and output tree attributes
 > fvsGetTreeAttrs(treeAttrs)
-   id species        mort        tpa       dbh        dg        ht       htg
-1   2       3 10.29142189 20.4682312  1.678765 0.5866715  16.65636  4.604872
-2   1       7  0.27842575  1.6952267 15.281013 0.7665377  91.15569  5.572211
-3   3       5  0.59748030 12.7302189 16.855713 2.2833567  60.32154  9.761889
-4   4       2  1.37338877  5.0652695 11.012908 0.5496902 101.78405  7.568492
-5   6       2  1.33261085  5.0999622 11.277776 0.5611172  90.30397  7.877872
-6   7      10  1.06424570 12.8430958 12.993237 1.0930848  79.98120 11.461862
-7   8       2  1.00618315  5.1955986 12.592658 0.6805229  26.56939  7.339866
-8   9       7  0.74133623  3.4611406 13.053571 0.6513138  78.45146  5.644176
-9  10       3  2.51961565 21.2285614  9.044286 0.8614073  56.49363  9.150453
-10 11      10  0.46931779  6.3893256 14.554098 1.2434406 104.32206 10.502921
-11 12       3  2.19425249 20.2144814  6.494591 1.1192942  43.74465  8.999683
-12 13       3  2.34797287 21.3213196  7.367777 1.0106540  48.13527  9.255739
-13 15      10  6.24889994 18.3654690  3.915861 1.3710003  23.96049  6.892507
-14 16       4  1.03240430 18.6644363 13.506378 2.0913668  61.09373 11.758255
-15 17       3  0.22147359  3.2999592 16.254520 1.3114643  92.25987  8.026136
-16 18       4  0.70238388 13.9762793 15.525357 2.3892155  75.00743 12.183318
-17 19       3  0.05823968  0.8660454 19.121544 1.1642838  90.77489  7.120629
-18 21       7  0.66698068  2.9526844 12.509987 0.6474876  78.58387  5.688611
-19 22       3  0.16091673  2.6922588 17.254103 1.4688196  83.46574  8.360339
-20 23       7  1.07763290  4.5791121 11.868750 0.6292896  78.16882  5.707335
-21 24       4  0.09215502  1.8837103 19.708401 2.1484137  99.95087 10.734131
-22 25       3  0.28781253  4.3731151 16.666887 1.3094826  87.33125  8.041270
-23 26      10  2.54132724 17.8161030  7.545887 0.8644714  64.19512 13.010925
-24 27       8  3.97675920 15.3325596  1.777608 0.7810817  14.43044  4.016884
-25 28       8  0.97798365 16.0743351 11.666499 1.3415613  54.24817  7.967665
-26 29       8  1.95124960 21.8180885  8.892857 0.7949734  52.72723  7.302122
-27 30       4  0.59156483 11.6742659 15.900087 2.2676849  65.83318 11.940054
-      crwdth cratio age plot    tcuft     mcuft     bdft plotsize mgmtcd
-1   5.812934     55  40    2  0.10000  0.000000   0.0000        0      2
-2  14.127638     29  40    2 53.50000 49.299999 270.0000        0      1
-3  25.903976     78  40    3 43.60001 39.500000 190.0000        0      1
-4  11.968929     19  40    3 25.50000 24.000000 130.0000        0      1
-5  12.109860     20  40    4 21.47563 20.369787 100.5915        0      2
-6  14.592689     41  40    4 29.60000 26.700001 140.0000        0      1
-7  12.245586     29  40    4  8.30000  6.000000  10.0000        0      1
-8  11.688579     21  40    4 34.20000 31.299999 170.0000        0      1
-9  11.607659     22  40    5  9.70000  8.599999  50.0000        0      1
-10 15.369819     41  40    5 48.30000 46.200001 260.0000        0      1
-11 12.252167     53  40    1  4.00000  0.000000   0.0000        0      2
-12 12.007977     38  40    1  5.60000  3.900000  20.0000        0      2
-13  7.873136     65  40    1  1.00000  0.000000   0.0000        0      3
-14 19.165800     66  40    1 23.80000 18.799999  90.0000        0      1
-15 17.957514     32  40    6 47.80000 42.299999 220.0000        0      1
-16 21.748480     76  40    6 38.80000 33.200001 170.0000        0      1
-17 19.097799     30  40    6 63.60000 59.100002 330.0000        0      1
-18 11.198975     20  40    8 31.80000 28.200001 140.0000        0      2
-19 19.492014     40  40    8 42.24366 38.055603 198.9270        0      2
-20 10.991472     21  40    8 28.70000 25.000000 130.0000        0      1
-21 24.194674     61  40    9 84.90000 74.900002 410.0000        0      1
-22 17.938925     31  40    9 47.40000 42.599998 230.0000        0      1
-23 10.376421     43  40   10  8.30000  6.800000  40.0000        0      2
-24  5.240022     65  40   10  0.20000  0.000000   0.0000        0      2
-25 13.614552     60  40   10 17.00000 14.100000  60.0000        0      1
-26  9.443884     21  40   10 10.10000  8.500000  40.0000        0      1
-27 20.606344     64  40   11 34.40000 30.200003 140.0000        0      1
+   id species      mort       tpa       dbh        dg        ht       htg
+1   2       3 5.9764795 11.703694  2.106737 0.4840353  19.31215  3.582005
+2   1       7 0.7015545  3.096018 14.819185 0.6226397  96.43296  5.118442
+3   3       5 0.9053202 14.429884 15.579575 1.8464403  68.93443  9.155409
+4   4       2 1.7551249  4.842361 10.855013 0.4708748 109.41888  6.930491
+5   6       2 1.7070651  4.814987 10.999720 0.4773073  98.38235  7.277725
+6   7      10 2.0188510 13.007945 10.952437 0.6981430  95.31825 10.164910
+7   8       2 1.4854553  5.040408 11.845120 0.5236015  34.39922  7.264559
+8   9       7 1.1431966  3.764103 12.371732 0.5262651  83.89598  5.238081
+9  10       3 3.4912140 17.712557  7.978105 0.6522441  57.41324  7.909767
+10 11      10 0.7851101  8.212758 14.027614 0.9264679 117.49553  8.883680
+11 12       3 3.1449480 16.517807  5.719432 0.8473253  41.39857  7.105887
+12 13       3 3.2801156 17.503468  6.423943 0.8108368  45.91443  7.558331
+13 15      10 5.9291925 17.425850  4.091025 0.4857495  29.02637  6.737612
+14 16       4 1.4670962 21.045235 14.144825 1.9049301  71.04697 11.335133
+15 17       3 0.4795011  5.759114 16.415119 1.1805582 100.72453  7.424264
+16 18       4 1.0276721 16.299068 16.221830 2.2305317  85.56437 11.623179
+17 19       3 0.2983986  3.596692 18.712023 1.0776949  99.11540  6.777545
+18 21       7 1.0989718  3.739047 12.503526 0.5282278  83.93179  5.231350
+19 22       3 0.4182620  5.470648 17.646286 1.2897835  92.05586  7.667734
+20 23       7 1.4380805  4.451651 11.388887 0.5319605  83.84326  5.362871
+21 24       4 0.3189368  5.191728 20.908792 2.0174351 110.28760  9.948197
+22 25       3 0.5493898  6.473873 15.777290 1.1849594  97.53134  7.675017
+23 26      10 3.8563030 16.678608  7.294916 0.6442704  67.67924 10.789137
+24 27       8 1.8950896  9.589748  2.479595 0.7722368  17.39054  3.465405
+25 28       8 1.3673648 17.241978 11.411366 1.1381159  61.82631  7.598182
+26 29       8 2.2778049 20.732975  8.370291 0.6709471  55.15468  6.729373
+27 30       4 0.8784083 13.912024 16.462238 2.0897293  76.85712 11.487197
+      crwdth cratio age plot     tcuft    mcuft     bdft plotsize mgmtcd
+1   6.577499     55  40    2   0.20000  0.00000   0.0000        0      2
+2  12.835247     23  40    2  53.80000 48.80000 270.0000        0      1
+3  25.181452     72  40    3  40.70000 35.60000 190.0000        0      1
+4  11.663081     17  40    3  26.80000 24.80000 140.0000        0      1
+5  11.626649     17  40    4  21.11336 19.53453 111.1721        0      2
+6  12.463078     36  40    4  25.30000 23.60000 120.0000        0      1
+7  11.557233     23  40    4   8.60000  6.70000  30.0000        0      1
+8  10.519159     17  40    4  33.40000 30.50000 160.0000        0      1
+9  10.156955     17  40    5   7.80000  6.50000  40.0000        0      1
+10 14.609336     38  40    5  50.80000 46.70000 270.0000        0      1
+11 11.424382     53  40    1   3.00000  0.00000   0.0000        0      2
+12 11.383348     41  40    1   4.20000  0.00000   0.0000        0      2
+13  7.940616     64  40    1   1.20000  0.00000   0.0000        0      3
+14 19.808756     61  40    1  30.90000 26.70000 130.0000        0      1
+15 17.664047     29  40    6  52.90000 49.20000 280.0000        0      1
+16 22.548592     73  40    6  49.80000 44.00000 230.0000        0      1
+17 18.644283     28  40    6  66.80000 60.20000 330.0000        0      1
+18 10.591420     17  40    8  34.10000 30.50000 160.0000        0      2
+19 19.419891     37  40    8  46.01444 40.61188 220.6279        0      2
+20  9.969191     17  40    8  28.70000 26.40000 150.0000        0      1
+21 25.095003     59  40    9 107.10000 96.89999 560.0000        0      1
+22 17.106232     28  40    9  47.60000 43.40000 230.0000        0      1
+23  9.953178     40  40   10   8.20000  6.40000  40.0000        0      2
+24  6.204528     65  40   10   0.30000  0.00000   0.0000        0      2
+25 13.271747     54  40   10  18.70000 15.90000  70.0000        0      1
+26  8.891997     18  40   10   9.50000  7.70000  40.0000        0      1
+27 21.283850     60  40   11  44.20000 38.30000 190.0000        0      1
+> 
+> fvsSetSpeciesAttrs(list(baimult=rep(1.1,fvsGetDims()["maxspecies"]),
++                         mortmult=rep(.9,fvsGetDims()["maxspecies"])))
 > 
 > # get and set some species attributes
-> spAttrs = fvsGetSpeciesAttrs(c("spsdi","spccf","spsiteindx"))
+> spAttrs = fvsGetSpeciesAttrs(c("baimult","spsdi","spccf","spsiteindx"))
 > spAttrs
-      spsdi    spccf spsiteindx
-1  841.2368  0.00000    0.00000
-2  841.2368 10.00603    0.00000
-3  841.2368 42.67542    0.00000
-4  841.2368 62.87671    0.00000
-5  841.2368 18.12446    0.00000
-6  841.2368  0.00000    0.00000
-7  841.2368 10.60415    0.00000
-8  841.2368 17.35216    0.00000
-9  841.2368  0.00000    0.00000
-10 841.2368 21.71263    0.00000
-11 841.2368  0.00000    0.00000
-12 841.2368  0.00000    0.00000
-13 841.2368  0.00000   28.33386
-14 841.2368  0.00000    0.00000
-15 841.2368  0.00000   16.00000
-16 841.2368  0.00000   13.00000
-17 841.2368  0.00000   28.33386
-18 841.2368  0.00000   60.00000
-19 841.2368  0.00000   98.00000
-20 841.2368  0.00000   60.00000
-21 841.2368  0.00000   60.00000
-22 841.2368  0.00000   98.00000
-23 841.2368  0.00000    0.00000
+   baimult    spsdi     spccf spsiteindx
+1      1.1 841.2368  0.000000    0.00000
+2      1.1 841.2368  9.027432    0.00000
+3      1.1 841.2368 48.435181    0.00000
+4      1.1 841.2368 85.434265    0.00000
+5      1.1 841.2368 17.980297    0.00000
+6      1.1 841.2368  0.000000    0.00000
+7      1.1 841.2368 12.298176    0.00000
+8      1.1 841.2368 16.629766    0.00000
+9      1.1 841.2368  0.000000    0.00000
+10     1.1 841.2368 20.217075    0.00000
+11     1.1 841.2368  0.000000    0.00000
+12     1.1 841.2368  0.000000    0.00000
+13     1.1 841.2368  0.000000   28.33386
+14     1.1 841.2368  0.000000    0.00000
+15     1.1 841.2368  0.000000   16.00000
+16     1.1 841.2368  0.000000   13.00000
+17     1.1 841.2368  0.000000   28.33386
+18     1.1 841.2368  0.000000   60.00000
+19     1.1 841.2368  0.000000   98.00000
+20     1.1 841.2368  0.000000   60.00000
+21     1.1 841.2368  0.000000   60.00000
+22     1.1 841.2368  0.000000   98.00000
+23     1.1 841.2368  0.000000    0.00000
+> 
 > rtn = fvsSetSpeciesAttrs(spAttrs)
 > cat ("rtn = ",rtn,"\n")
 rtn =  0 
@@ -229,28 +233,28 @@ rtn =  0
 > # get and output summary statistics
 > fvsGetSummary() #year 2060 and 2070 should be equal
    Year Age Tpa TCuFt MCuFt  BdFt RTpa RTCuFt RMCuFt RBdFt ATBA ATCCF ATTopHt
-1  1990  60 536  1592  1015  5238    0      0      0     0   76    91       0
-2  2000  70 471  1422   957  4755    0      0      0     0   78    89      51
-3  2010  80 368  2316  1751  8502    0      0      0     0  108   118      62
-4  2020  90 304  3461  2778 13774    0      0      0     0  141   145      64
-5  2030 100 264  4648  3977 20191    0      0      0     0  169   167      73
-6  2040 110 228  5806  5090 26773    0      0      0     0  190   181      80
-7  2050 120 195  6876  6090 32755    0      0      0     0  204   192      91
-8  2060 130 167  7885  7098 39707    0      0      0     0  215   199     100
-9  2070 140 167  7885  7098 39707    0      0      0     0  215   199     100
-10 2080 150 138  8680  7925 46424    0      0      0     0  219   199     107
-11 2090 160 119  9579  8748 52847    0      0      0     0  226   202     115
+1  1990  60 536  1592  1015  5238    0      0      0     0   77    91      63
+2  2000  70 431  2580  1989 10253    0      0      0     0  111   127      74
+3  2010  80 358  3770  3001 15127    0      0      0     0  144   155      80
+4  2020  90 307  5019  4245 21368    0      0      0     0  172   177      84
+5  2030 100 262  6216  5385 28665    0      0      0     0  193   191      90
+6  2040 110 225  7557  6680 36638    0      0      0     0  214   205      98
+7  2050 120 194  8855  8011 45354    0      0      0     0  231   216     107
+8  2060 130 167 10058  9200 54130    0      0      0     0  244   223     114
+9  2070 140 167 10058  9200 54130    0      0      0     0  244   223     114
+10 2080 150 139 10978 10180 61885    0      0      0     0  250   225     119
+11 2090 160 121 11999 11098 69313    0      0      0     0  258   230     125
    PrdLen Acc Mort SampWt ForTyp SizeCls StkCls
-1      10  38   55     11    201       2      3
-2      10 102   13     11    201       2      3
-3      10 132   17     11    201       1      3
-4      10 149   31     11    201       1      2
-5      10 162   46     11    201       1      2
-6      10 169   62     11    267       1      2
-7      10 173   72     11    267       1      2
+1      10 111   12     11    201       2      3
+2      10 140   21     11    201       1      3
+3      10 162   37     11    201       1      2
+4      10 173   53     11    201       1      2
+5      10 197   63     11    267       1      2
+6      10 204   74     11    267       1      2
+7      10 206   86     11    267       1      2
 8      10   0    0     11    267       1      2
-9      10 172   93     11    267       1      2
-10     10 172   82     11    267       1      2
+9      10 202  110     11    267       1      2
+10     10 200   98     11    267       1      2
 11      0   0    0     11    267       1      2
 > 
 > # run the next stand in the set, no stoping. 
@@ -263,7 +267,8 @@ rtn =  0
 > addtrees <- fvsGetTreeAttrs(treeAttrs) 
 > addtrees <- subset(addtrees,dbh<2)[,c("dbh","species","ht","cratio","plot","tpa")]
 > 
-> # these trees will be added to the run at 2013
+> cat ("these trees will be added to the run at 2013\n")
+these trees will be added to the run at 2013
 > addtrees
    dbh species ht cratio plot      tpa
 1  0.1       3  2     55    2 90.00001
@@ -272,7 +277,7 @@ rtn =  0
 13 0.1      10  3     65    1 90.00001
 24 0.1       8  2     65   10 30.00000
 > 
-> # add a yearloss and thindbh for 1993
+> # add a yardloss and thindbh for 1993
 > fvsAddActivity(1993,"base_yardloss",c(0.50, 0.70, 0.50))
 > fvsAddActivity(1993,"base_thindbh",c(0.00,12.00,1.00,0.00,0.00))
 > 
@@ -297,10 +302,16 @@ rtn =  0
 5  0.500000     65   5    1     0     0    0        0      2
 6  1.187158     65   5   10     0     0    0        0      2
 > 
-> # continue the run
+> # continyue the run until 2033, stoppoint 2, then simulate a harvest of 50% OF species 3
+> fvsRun(2,2033)
+> curTrees <- fvsGetTreeAttrs(c("species"))
+> cut = ifelse(curTrees$species == 3, .5, 0)
+> fvsCutNow(cut)
+> 
+> ## continue the run
 > fvsRun(0,0)
 
-                  IE FVS VARIANT -- RV:20220311  
+                  IE FVS VARIANT -- RV:20230106  
 
 
         STAND = S248112                     MANAGEMENT CODE = NONE
@@ -313,19 +324,19 @@ rtn =  0
      TREES         TOP      TOTAL TREES TOTAL MERCH         TOP      PER YR
 YEAR /ACRE  BA SDI  HT  QMD CU FT /ACRE CU FT BD FT  BA SDI  HT  QMD ACC MOR
 ---- ----- --- --- --- ---- ----- ----- ----- ----- --- --- --- ---- --- ---
-1990   536  76   0   0  0.0  1592     0     0     0  76   0   0  0.0  38  55
-2000   471  78 180  51  5.5  1422     0     0     0  78 180  51  5.5 102  13
-2010   368 108 225  62  7.4  2316     0     0     0 108 225  62  7.4 132  17
-2020   304 141 267  64  9.2  3461     0     0     0 141 267  64  9.2 149  31
-2030   264 169 300  73 10.8  4648     0     0     0 169 300  73 10.8 162  46
-2040   228 190 320  80 12.4  5806     0     0     0 190 320  80 12.4 169  62
-2050   195 204 329  91 13.9  6876     0     0     0 204 329  91 13.9 173  72
-2060   167 215 333 100 15.4  7885     0     0     0 215 333 100 15.4   0   0
-2070   167 215 333 100 15.4  7885     0     0     0 215 333 100 15.4 172  93
-2080   138 219 325 107 17.1  8680     0     0     0 219 325 107 17.1 172  82
-2090   119 226 324 115 18.6  9579     0     0     0 226 324 115 18.6   0   0
+1990   536  77 184  63  5.1  1592     0     0     0  77 184  63  5.1 111  12
+2000   431 111 236  74  6.9  2580     0     0     0 111 236  74  6.9 140  21
+2010   358 144 281  80  8.6  3770     0     0     0 144 281  80  8.6 162  37
+2020   307 172 314  84 10.1  5019     0     0     0 172 314  84 10.1 173  53
+2030   262 193 334  90 11.6  6216     0     0     0 193 334  90 11.6 197  63
+2040   225 214 352  98 13.2  7557     0     0     0 214 352  98 13.2 204  74
+2050   194 231 364 107 14.8  8855     0     0     0 231 364 107 14.8 206  86
+2060   167 244 369 114 16.4 10058     0     0     0 244 369 114 16.4   0   0
+2070   167 244 369 114 16.4 10058     0     0     0 244 369 114 16.4 202 110
+2080   139 250 361 119 18.2 10978     0     0     0 250 361 119 18.2 200  98
+2090   121 258 361 125 19.8 11999     0     0     0 258 361 125 19.8   0   0
 
-                  IE FVS VARIANT -- RV:20220311  
+                  IE FVS VARIANT -- RV:20230106  
 
 
         STAND = S248112                     MANAGEMENT CODE = NONE
@@ -350,7 +361,7 @@ YEAR /ACRE  BA SDI  HT  QMD CU FT /ACRE CU FT BD FT  BA SDI  HT  QMD ACC MOR
 2080   114 241 338 126 19.7 11058     0     0     0 241 338 126 19.7 181  99
 2090    99 246 335 133 21.3 11880     0     0     0 246 335 133 21.3   0   0
 
-                  IE FVS VARIANT -- RV:20220311  
+                  IE FVS VARIANT -- RV:20230106  
 
 
         STAND = S248112                     MANAGEMENT CODE = NONE
@@ -367,9 +378,9 @@ YEAR /ACRE  BA SDI  HT  QMD CU FT /ACRE CU FT BD FT  BA SDI  HT  QMD ACC MOR
 2000     4   5   7  77 14.6   130     0     0     0   5   7  77 14.6   5   0
 2010     4   6   9  85 16.3   172     0     0     0   6   9  85 16.3   5   1
 2020   249   7  24  21  2.3   216     0     0     0   7  24  21  2.3  30   0
-2030   233  26  64  44  4.5   514     0     0     0  26  64  44  4.5  96   1
-2040   218  59 125  64  7.1  1469     0     0     0  59 125  64  7.1 158   4
-2050   212  99 188  78  9.3  3011     0     0     0  99 188  78  9.3 186  14
+2030   233  26  64  44  4.5   514    65   204   700  17  44  37  4.3  82   0
+2040   158  44  92  64  7.1  1131     0     0     0  44  92  64  7.1 150   2
+2050   155  78 146  83  9.6  2610     0     0     0  78 146  83  9.6 174   9
 > 
 > #get and output summary statistics
 > fvsGetSummary()
@@ -378,25 +389,25 @@ YEAR /ACRE  BA SDI  HT  QMD CU FT /ACRE CU FT BD FT  BA SDI  HT  QMD ACC MOR
 2  2000  70   4   130   116   562    0      0      0     0    5     5      77
 3  2010  80   4   172   151   782    0      0      0     0    6     5      85
 4  2020  90 249   216   197  1060    0      0      0     0    7     8      21
-5  2030 100 233   514   247  1400    0      0      0     0   26    30      44
-6  2040 110 218  1469  1110  7048    0      0      0     0   59    65      64
-7  2050 120 212  3011  2420 12446    0      0      0     0   99   104      78
-8  2060 130 203  4730  4344 22552    0      0      0     0  137   135      88
-9  2070 140 190  6395  5832 31023    0      0      0     0  170   160      96
-10 2080 150 176  7904  7021 38959    0      0      0     0  195   173     104
-11 2090 160 161  9230  8554 47889    0      0      0     0  214   182     111
+5  2030 100 233   514   247  1400   65    204    124   700   17    19      37
+6  2040 110 158  1131   917  5293    0      0      0     0   44    46      64
+7  2050 120 155  2610  2209 12334    0      0      0     0   78    79      83
+8  2060 130 150  4267  3768 21201    0      0      0     0  112   103      94
+9  2070 140 143  6009  5622 31104    0      0      0     0  144   125     105
+10 2080 150 134  7649  7018 39512    0      0      0     0  170   141     114
+11 2090 160 125  9143  8624 50051    0      0      0     0  192   152     122
    PrdLen Acc Mort SampWt ForTyp SizeCls StkCls
 1      10   4    0     11    201       2      3
 2      10   5    0     11    999       5      5
 3      10   5    1     11    999       5      5
 4      10  30    0     11    999       5      5
-5      10  96    1     11    201       3      4
-6      10 158    4     11    201       2      4
-7      10 186   14     11    201       1      3
-8      10 196   30     11    201       1      2
-9      10 199   48     11    201       1      2
-10     10 197   65     11    201       1      2
-11      0   0    0     11    201       1      2
+5      10  82    0     11    201       3      4
+6      10 150    2     11    221       2      4
+7      10 174    9     11    221       1      3
+8      10 195   21     11    221       1      3
+9      10 200   36     11    221       1      2
+10     10 201   52     11    221       1      2
+11      0   0    0     11    221       1      2
 > 
 > # continue the run for the next stand.
 > fvsRun()
@@ -496,12 +507,12 @@ msg= BeforeEM2    ids= S248112  NONE   year= 2010
 msg= AfterEM2     ids= S248112  NONE   year= 2010 
 msg= BeforeAdd    ids= S248112  NONE   year= 2010 
 msg= BeforeEstab  ids= S248112  NONE   year= 2010 
-2060   203 137 241  88 11.1  4730     0     0     0 137 241  88 11.1 196  30
-2070   190 170 282  96 12.8  6395     0     0     0 170 282  96 12.8 199  48
-2080   176 195 310 104 14.3  7904     0     0     0 195 310 104 14.3 197  65
-2090   161 214 329 111 15.6  9230     0     0     0 214 329 111 15.6   0   0
+2060   150 112 194  94 11.7  4267     0     0     0 112 194  94 11.7 195  21
+2070   143 144 234 105 13.6  6009     0     0     0 144 234 105 13.6 200  36
+2080   134 170 265 114 15.3  7649     0     0     0 170 265 114 15.3 201  52
+2090   125 192 287 122 16.8  9143     0     0     0 192 287 122 16.8   0   0
 
-                  IE FVS VARIANT -- RV:20220311  
+                  IE FVS VARIANT -- RV:20230106  
 
 
         STAND = S248112                     MANAGEMENT CODE = NONE
@@ -526,7 +537,7 @@ YEAR /ACRE  BA SDI  HT  QMD CU FT /ACRE CU FT BD FT  BA SDI  HT  QMD ACC MOR
 2080   114 241 338 126 19.7 11058     0     0     0 241 338 126 19.7 181  99
 2090    99 246 335 133 21.3 11880     0     0     0 246 335 133 21.3   0   0
 
-                  IE FVS VARIANT -- RV:20220311  
+                  IE FVS VARIANT -- RV:20230106  
 
 
         STAND = S248112                     MANAGEMENT CODE = NONE
@@ -551,7 +562,7 @@ YEAR /ACRE  BA SDI  HT  QMD CU FT /ACRE CU FT BD FT  BA SDI  HT  QMD ACC MOR
 2080   116 240 339 125 19.5 11212     0     0     0 240 339 125 19.5 180 101
 2090   101 244 334 131 21.1 12010     0     0     0 244 334 131 21.1   0   0
 
-                  IE FVS VARIANT -- RV:20220311  
+                  IE FVS VARIANT -- RV:20230106  
 
 
         STAND = S248112                     MANAGEMENT CODE = NONE
@@ -611,6 +622,17 @@ msg= BeforeAdd    ids= S248112  NONE   year= 2080
 msg= BeforeEstab  ids= S248112  NONE   year= 2080 
 msg= SimEnd       ids= S248112  NONE   year= 2080 
 > 
+> ## test stop point 7
+> fvsSetCmdLine("--keywordfile=base.key")
+> fvsRun()
+> sp7no=fvsGetSummary()
+> fvsSetCmdLine("--keywordfile=base.key")
+> fvsRun(7,0)
+> fvsRun()
+> sp7yes=fvsGetSummary()
+> good=identical(sp7no,sp7yes)
+> cat("stop point 7 test result=",good," (should be TRUE)\n")
+stop point 7 test result= TRUE  (should be TRUE)
 > 
 > 
 > 
@@ -622,3 +644,53 @@ msg= SimEnd       ids= S248112  NONE   year= 2080
 2070   131 236 342 120 18.1 10213     0     0     0 236 342 120 18.1 181  97
 2080   114 241 338 126 19.7 11058     0     0     0 241 338 126 19.7 181  99
 2090    99 246 335 133 21.3 11880     0     0     0 246 335 133 21.3   0   0
+
+                  IE FVS VARIANT -- RV:20230106  
+
+
+        STAND = S248112                     MANAGEMENT CODE = NONE
+
+
+               SUMMARY STATISTICS (BASED ON TOTAL STAND AREA)
+----------------------------------------------------------------------------
+       START OF SIMULATION PERIOD    REMOVALS/ACRE    AFTER TREATMENT GROWTH
+     ---------------------------- ----------------- ---------------- CU FT
+     TREES         TOP      TOTAL TREES TOTAL MERCH         TOP      PER YR
+YEAR /ACRE  BA SDI  HT  QMD CU FT /ACRE CU FT BD FT  BA SDI  HT  QMD ACC MOR
+---- ----- --- --- --- ---- ----- ----- ----- ----- --- --- --- ---- --- ---
+1990   536  77 184  63  5.1  1592     0     0     0  77 184  63  5.1 111  12
+2000   431 111 236  74  6.9  2580     0     0     0 111 236  74  6.9 140  21
+2010   358 144 281  80  8.6  3770     0     0     0 144 281  80  8.6 162  37
+2020   307 172 314  84 10.1  5019     0     0     0 172 314  84 10.1 173  53
+2030   262 193 334  90 11.6  6216     0     0     0 193 334  90 11.6 182  68
+2040   221 209 344  97 13.2  7351     0     0     0 209 344  97 13.2 186  80
+2050   187 220 347 106 14.7  8418     0     0     0 220 347 106 14.7 188  88
+2060   159 229 346 113 16.3  9422     0     0     0 229 346 113 16.3 187  94
+2070   135 235 343 119 17.9 10352     0     0     0 235 343 119 17.9 184  98
+2080   116 240 339 125 19.5 11212     0     0     0 240 339 125 19.5 180 101
+2090   101 244 334 131 21.1 12010     0     0     0 244 334 131 21.1   0   0
+
+                  IE FVS VARIANT -- RV:20230106  
+
+
+        STAND = S248112                     MANAGEMENT CODE = NONE
+
+
+               SUMMARY STATISTICS (BASED ON TOTAL STAND AREA)
+----------------------------------------------------------------------------
+       START OF SIMULATION PERIOD    REMOVALS/ACRE    AFTER TREATMENT GROWTH
+     ---------------------------- ----------------- ---------------- CU FT
+     TREES         TOP      TOTAL TREES TOTAL MERCH         TOP      PER YR
+YEAR /ACRE  BA SDI  HT  QMD CU FT /ACRE CU FT BD FT  BA SDI  HT  QMD ACC MOR
+---- ----- --- --- --- ---- ----- ----- ----- ----- --- --- --- ---- --- ---
+1990   536  77 184  63  5.1  1592     0     0     0  77 184  63  5.1 111  12
+2000   431 111 236  74  6.9  2580     0     0     0 111 236  74  6.9 140  21
+2010   358 144 281  80  8.6  3770     0     0     0 144 281  80  8.6 162  37
+2020   307 172 314  84 10.1  5019     0     0     0 172 314  84 10.1 173  53
+2030   262 193 334  90 11.6  6216     0     0     0 193 334  90 11.6 182  68
+2040   221 209 344  97 13.2  7351     0     0     0 209 344  97 13.2 186  80
+2050   187 220 347 106 14.7  8418     0     0     0 220 347 106 14.7 188  88
+2060   159 229 346 113 16.3  9422     0     0     0 229 346 113 16.3 187  94
+2070   135 235 343 119 17.9 10352     0     0     0 235 343 119 17.9 184  98
+2080   116 240 339 125 19.5 11212     0     0     0 240 339 125 19.5 180 101
+2090   101 244 334 131 21.1 12010     0     0     0 244 334 131 21.1   0   0
diff --git a/tests/FVSie/iet01.key b/tests/FVSie/iet01.key
index 7a641b9afabab44ddf24c1426f26e19877d4554a..946e4257ea659f967bb0203f483afabdf91d18f9 100644
--- a/tests/FVSie/iet01.key
+++ b/tests/FVSie/iet01.key
@@ -121,6 +121,8 @@ MistPrt           1.
 MisTable          0.       ALL
 End
 THINPRSC      1990.0     0.999
+* this thinpres should cause an error
+THINPRSC      1990.0     -1
 SPECPREF      2020.0       2.0     999.0
 SPECPREF      2020.0       7.0    9999.0
 THINBTA       2020.0     157.0
diff --git a/vbase/evtstv.f b/vbase/evtstv.f
index e7bacbe9901c3061ceb4ec4baac903fc6db645ae..54763dd943c7a62237342121ca4f17c5e27639bc 100644
--- a/vbase/evtstv.f
+++ b/vbase/evtstv.f
@@ -86,6 +86,7 @@ C     115 BSDIMAX   BEFORE THIN SDI MAX
 C     116 BSDI      BEFORE CUT STAND DENSITY INDEX.
 C     117 BRDEN     BEFORE CUT RELATIVE DENSITY (CURTIS)
 C     118 BRDEN2    BEFORE CUT RELATIVE DENSITY (SILVAH)
+C     119 BHTWTBA   BEFORE THIN HEIGHT WEIGHTED BY BA
 C
 C     126 HABTYPE   STAND HABITAT TYPE AS USED BY THE MODEL.
 C     127 SLOPE     STAND SLOPE CODE (RECODED FROM INPUT).
@@ -135,6 +136,7 @@ C     215 ARDEN     AFTER THIN RELATIVE DENSITY (CURTIS)
 C     216 ADBHWTBA  AFTER CUT AVERAGE DBH OF OVERSTORY TREES (FOR INFORMS)
 C     217 ARDEN2    AFTER THIN RELATIVE DENSITY (SILVAH)
 C     218 ASDI2     ZEIDE SUMMATION AFTER THIN STAND DENSITY INDEX
+c     219 AHTWTBA   AFTER THIN HEIGHT WEIGHTED BY BA
 C
 C     GROUP 3, THOSE KNOWN AFTER CYCLE 1.
 C
@@ -245,6 +247,7 @@ C
       DO 6 I=1,MAXSP
       BCCFSP(I)=RELDSP(I)
     6 CONTINUE
+      TSTV1(19)=0 !initialize so debug output is consistent. 
       IF (ICYC.LE.1) THEN
          TSTV1(27)=ISLOP
          TSTV1(28)=IASPEC
@@ -395,6 +398,14 @@ C----------
    60 CONTINUE
       TSTV1(47)=0.
       IF(BA.GT.0.0 .AND. GROSPC.GT.0.0) TSTV1(47)=(TADWBA/BA)
+C      Add logic for BHTWTBA
+      TADWBA=0.
+      DO I=1,ITRN
+        TADWBA = TADWBA + HT(I)*(DBH(I)**2)*0.0054542*PROB(I)
+      END DO
+      TSTV1(19)=0
+      IF(BA.GT.0.0 .AND. GROSPC.GT.0.0) TSTV1(19)=(TADWBA/BA)
+
 C----------
 C
 C     IF PAST CYCLE 1, SET GROUP 3 VARIABLES, THOSE KNOWN IN PHASE 1,
@@ -477,6 +488,13 @@ C
       IF(BA.GT.0.0 .AND. GROSPC.GT.0.0)TSTV2(16)=(TADWBA/BA)
       CALL RDCLS2(0,0.,999.,1,CRD,0)
       TSTV2(17)=CRD/GROSPC
+C     Add logic for AHTWTBA here
+      TADWBA = 0.
+      DO I=1,ITRN
+        TADWBA = TADWBA + HT(I)*(DBH(I)**2)*0.0054542*PROB(I)
+      END DO
+      TSTV2(19)=0
+      IF(BA.GT.0.0 .AND. GROSPC .GT. 0.0)TSTV2(19)=(TADWBA/BA)
 C
 C     LOAD GROUP 5 VARIABLES.
 C
diff --git a/vbase/initre.f b/vbase/initre.f
index 450c47dd775dab1d955dec642d2c43c47c24e872..f075f12ec0f4f6d80c8479f5c5f586b6c6d1b929 100644
--- a/vbase/initre.f
+++ b/vbase/initre.f
@@ -399,7 +399,7 @@ C
      >    '; HABITAT TYPE=',I3,
      >    '; AGE=',I5,'; ASPECT AZIMUTH IN DEGREES= ',F4.0,
      >    '; SLOPE= ' ,F4.0,'%'/
-     >    T12,'ELEVATION(10''S FEET)=',F5.1,';  REFERENCE CODE= ',A4)
+     >    T12,'ELEVATION(100''S FEET)=',F5.1,';  REFERENCE CODE= ',A4)
 C
         CASE ('SN')
           WRITE(JOSTND,135) KODFOR,PCOM,
@@ -869,7 +869,7 @@ C
      >    '; HABITAT TYPE=',I3,
      >    '; AGE=',I5,'; ASPECT AZIMUTH IN DEGREES= ',F4.0,
      >    '; SLOPE= ',F4.0,'%'/
-     >    T12,'ELEVATION(10''S FEET)=',F5.1,'; REFERENCE CODE= ',A4)
+     >    T12,'ELEVATION(100''S FEET)=',F5.1,'; REFERENCE CODE= ',A4)
 C
         CASE ('SN')
           IF(LKECHO)WRITE(JOSTND,2413) KEYWRD,KODFOR,PCOM,
@@ -1112,6 +1112,11 @@ C
       ENDIF
       PRMS(1)=EFF
       IF (LNOTBK(2)) PRMS(1)=ARRAY(2)
+      IF (PRMS(1).LT.0.) THEN
+        CALL KEYDMP (JOSTND,IRECNT,KEYWRD,ARRAY,KARD)
+        CALL ERRGRO (.TRUE.,4)
+        GOTO 10
+      ENDIF
       IF (LNOTBK(3)) THEN
          PRMS(2)=ARRAY(3)
          I=2
diff --git a/vbase/revise.f b/vbase/revise.f
index 083b7db9e5ea2a60c26c4377bdb15a6e0db95cea..027f8591b0e88019ae79e31c62cc79500c5cc289 100644
--- a/vbase/revise.f
+++ b/vbase/revise.f
@@ -18,117 +18,140 @@ C----------
 C SOUTHEAST ALASKA / COASTAL BRITISH COLUMBIA
 C----------
         CASE('AK')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C BLUE MOUNTAINS
 C----------
         CASE('BM')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C INLAND CALIFORNIA / SOUTHERN CASCADES
 C----------
         CASE('CA')
-        REV = '20230106.1'
+        REV = '20230518'
+        
 C----------
 C CENTRAL IDAHO
 C----------
         CASE('CI')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C CENTRAL ROCKIES
 C----------
         CASE('CR')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C CENTRAL STATES
 C----------
         CASE('CS')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C EAST CASCADES
 C----------
         CASE('EC')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C EASTERN MONTANA
 C----------
         CASE('EM')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C INLAND EMPIRE (AKA NI23)
 C----------
         CASE('IE')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C KOOTENAI / KANIKSU / TALLY LAKE
 C----------
         CASE('KT')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C LAKE STATES
 C----------
         CASE('LS')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C KLAMATH MOUNTAINS
 C----------
         CASE('NC')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C NORTHEAST STATES
 C----------
         CASE('NE')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C SOUTHWEST OREGON ORGANON
 C----------
         CASE('OC')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C NORTHWEST OREGON ORGANON
 C----------
         CASE('OP')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C PACIFIC NORTHWEST
 C----------
         CASE('PN')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C SOUTHERN
 C----------
         CASE('SN')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C SOUTH CENTRAL OREGON / NORTHEAST CALIFORNIA
 C----------
         CASE('SO')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C TETONS
 C----------
         CASE('TT')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C UTAH
 C----------
         CASE('UT')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C WEST CASCADES
 C----------
         CASE('WC')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C WESTERN SIERRA NEVADA
 C----------
         CASE('WS')
-        REV = '20230106.1'
+        REV = '20230518'
+
 C----------
 C ANY OTHER VARIANT
 C----------
         CASE DEFAULT
-        REV = '20230106.1'
+        REV = '20230518'
+
 C
       END SELECT
 C
diff --git a/vvolume/fvsvol.f b/vvolume/fvsvol.f
index 54fc821deb73b1d61e95d6a9f757f9c1f6c08e8d..660d07abfc8e160f84657c93b45b74e164ac003f 100644
--- a/vvolume/fvsvol.f
+++ b/vvolume/fvsvol.f
@@ -37,7 +37,7 @@ C----------
       REAL FC,DBTBH,TVOL1,TVOL2,TVOL4,TVOL7,TDIBB,TDIBC
       REAL NOLOGP,NOLOGS
       REAL BOLHT(21),LOGLEN(20),TVOL(15)
-      REAL HT1PRD,HT2PRD,X1,MTOPP,MTOPS,STUMP,TOPDIAM
+      REAL HT1PRD,HT2PRD,MTOPP,MTOPS,STUMP,TOPDIAM
       REAL XTOPD,HTC1,HTC2
       REAL DRCOB,UPSHT1,UPSHT2,UPSD1,UPSD2,AVGZ1,AVGZ2
       LOGICAL TKILL,CTKFLG,BTKFLG,LCONE,DEBUG
@@ -173,7 +173,6 @@ C      I1=0     ! no longer in use a.o. 10/28/2022 to prevent address space poll
       I15=15    ! Dimension of VOL(x) array
       I20=20    ! second dimension of LOGVOL(,x) array, dimension of LOGLEN(x)
       I21=21    ! first dimension of LOGDIA(x,) array, dimension of BOLHT(x)
-C      X1=0.    ! no longer in use a.o. 10/28/2022 to prevent address space pollution
 
 C     Initialize independant volinit variables to prevent shared address space
       HTLOG = 0 ! Replaces I1 in position 11 of volinit call
@@ -248,8 +247,8 @@ C
      & 'CALLING VOLINIT CF ISPC,IREGN,FORST,VOLEQ = ',
      &                      ISPC,IREGN,FORST,VOLEQ
       IF(DEBUG)WRITE(JOSTND,*)
-     & '  TOPDIAM,MTOPS,STUMP,D,X1,HTTYPE,H,I1 = ',
-     &    TOPDIAM,MTOPS,STUMP,D,X1,HTTYPE,H,I1
+     & '  TOPDIAM,MTOPS,STUMP,D,DRCOB,HTTYPE,H,I1 = ',
+     &    TOPDIAM,MTOPS,STUMP,D,DRCOB,HTTYPE,H,I1
       IF(DEBUG)WRITE(JOSTND,*)'  HT1PRD,HT2PRD,IFC,DBTBH,BARK = ',
      &                           HT1PRD,HT2PRD,IFC,DBTBH,BARK
       IF(DEBUG)WRITE(JOSTND,*)'  CUTFLG,BFPFLG,CUPFLG,CDPFLG,SPFLG = ',
@@ -352,7 +351,6 @@ C       I1=0 ! no longer in use a.o. 10/28/2022 to prevent address space polluti
         I15=15
         I20=20
         I21=21
-C       X1=0. ! no longer in use a.o. 10/28/2022 to prevent address space pollution
 
 C     Initialize independant volinit variables to prevent shared address space
       HTLOG = 0 ! Replaces I1 in position 11 of volinit call
@@ -410,8 +408,8 @@ C  CONSTANTS
      & 'CALLING VOLINIT BF ISPC,IREGN,FORST,VOLEQ = ',
      &                      ISPC,IREGN,FORST,VOLEQ
       IF(DEBUG)WRITE(JOSTND,*)
-     & '  MTOPP,MTOPS,STUMP,D,X1,HTTYPE,H,I1 = ',
-     &    MTOPP,MTOPS,STUMP,D,X1,HTTYPE,H,I1
+     & '  MTOPP,MTOPS,STUMP,D,DRCOB,HTTYPE,H,I1 = ',
+     &    MTOPP,MTOPS,STUMP,D,DRCOB,HTTYPE,H,I1
       IF(DEBUG)WRITE(JOSTND,*)'  HT1PRD,HT2PRD,IFC,DBTBH,BARK = ',
      &                           HT1PRD,HT2PRD,IFC,DBTBH,BARK
       IF(DEBUG)WRITE(JOSTND,*)'  CUTFLG,BFPFLG,CUPFLG,CDPFLG,SPFLG = ',