diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 2c3635fbe62de3869cf2c40b00756cd950e87b1e..3a617b0a7e6f3c3cd0ceb5e2b01c85af8eab2931 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -3,11 +3,21 @@ image: gitlab.ssec.wisc.edu:5555/cphillips/netcdf_hdf_docker
 build:
   stage: build
   script:
-    - build_ci.sh
+    - bash build_ci.sh |& tee build.log
+  artifacts:
+    paths:
+      - build.log
+      - clavrx_bin/clavrxorb
+
 
 
 # run tests using the binary built before
 test:
   stage: test
   script:
-    - ./runmytests.sh
+    - yum install -y python3 python3-pip
+    - pip3 install pyyaml pytest
+    - bash test.sh |& tee test.log
+  artifacts:
+    paths:
+      - test.log
diff --git a/CHANGES.md b/CHANGES.md
new file mode 100644
index 0000000000000000000000000000000000000000..c4981187daa23392265f276f5ff506f4af02b807
--- /dev/null
+++ b/CHANGES.md
@@ -0,0 +1,28 @@
+# Changelog
+All notable changes to this project will be documented in this file
+
+## [Unreleased]
+
+## [v1.0.0]
+
+- UMD surface emission option fixed
+- Shadow mask disabled
+- Greatly increased processing speed
+- Added support for GOES-18
+- Added RTTOV support for GOES-8
+- Set up continuous integration (CI)
+- ECM2 bug fixes: stddev precision and bin fix
+- Catch SIGINT / SIGTERM and clean-up tmpdirs before exiting
+- Better repeatibility (initialize memory)
+- Added ISCCP-NG L1g support
+- GEO subsets are cropped to latitude and longitude
+- Improved time (changes solar geometry and reflectance)
+- Updated cloud type algorithm for "Mixed" type
+- Changes to ACHA quality flag
+- Clip ACHA beta between 1 and 2
+- Uncertainty in tau added to ACHA estimation
+- Updated cloud phase / type post-ECM2 filtering
+- Misc bug fixes
+- Added support for FY3D
+
+
diff --git a/README.md b/README.md
index 8259c4079a5ec45d6598b0418dd4de5b0f9d7851..d8789e11305ad30ee839ddde9ae4ef617882b4fb 100644
--- a/README.md
+++ b/README.md
@@ -22,3 +22,11 @@
     file_list_example: an example file list file needed by clavrxorb
 
 
+## Testing
+
+Requres py.test
+
+`test.sh` simply runs `py.test` in the `test/` directory.
+
+Sample output from select tests are saved for each release at `/ships19/cloud/archive/clavrx_test_data/version_granules`
+
diff --git a/acha/acha_clavrx_bridge_module.f90 b/acha/acha_clavrx_bridge_module.f90
index aae8609aae9bd17c295360c435931c1e866ec67d..53b3ac694aa5e999f386ada1b5511d7f376a97b3 100644
--- a/acha/acha_clavrx_bridge_module.f90
+++ b/acha/acha_clavrx_bridge_module.f90
@@ -143,20 +143,20 @@ module ACHA_CLAVRX_BRIDGE
    !--- Call to Geometrical Shadow Algorithm
    !-----------------------------------------------------------------------
   
-   call CLOUD_SHADOW_RETR (  &
-           ACHA%Zc &
-         , Geo%Solaz &
-         , Geo%Solzen &
-         , Nav%Lat &
-         , Nav%Lon &
-         , Nav%Lat_Pc &
-         , Nav%Lon_Pc &
-         , CLDMASK%Shadow_Mask ) 
+   !call CLOUD_SHADOW_RETR (  &
+   !        ACHA%Zc &
+   !      , Geo%Solaz &
+   !      , Geo%Solzen &
+   !      , Nav%Lat &
+   !      , Nav%Lon &
+   !      , Nav%Lat_Pc &
+   !      , Nav%Lon_Pc &
+   !      , CLDMASK%Shadow_Mask ) 
  
-   !---- copy shadow result into cloud mask test bits
-   where (CLDMASK%Shadow_Mask == 1 .and. CLDMASK%Cld_Mask == 0 )  
-           CLDMASK%Cld_Test_Vector_Packed ( 2 , :, : )  = ibset (CLDMASK%Cld_Test_Vector_Packed ( 2 , :, : )  , 6 )
-   end where
+   !!---- copy shadow result into cloud mask test bits
+   !where (CLDMASK%Shadow_Mask == 1 .and. CLDMASK%Cld_Mask == 0 )  
+   !        CLDMASK%Cld_Test_Vector_Packed ( 2 , :, : )  = ibset (CLDMASK%Cld_Test_Vector_Packed ( 2 , :, : )  , 6 )
+   !end where
 
    !-----------------------------------------------------------------------
    !--- Null pointers after algorithm is finished
diff --git a/acha/acha_module.f90 b/acha/acha_module.f90
index 48daa5740902ecfb2d4bbffbbeb4f1e17fa7494b..dbe146e8fe4731321915f185f9731b636ce3f425 100644
--- a/acha/acha_module.f90
+++ b/acha/acha_module.f90
@@ -139,7 +139,6 @@ module AWG_CLOUD_HEIGHT
 
   real, private, PARAMETER:: MISSING_VALUE_REAL4 = -999.0
   integer(kind=int1), private, PARAMETER:: MISSING_VALUE_integer1 = -128_int1
-  !integer(kind=int1), private, PARAMETER:: MISSING_VALUE_integer1 = -128
   integer(kind=int4), private, PARAMETER:: MISSING_VALUE_integer4 = -999
   type(ACHA_SYMBOL_STRUCT), private :: Symbol
 
@@ -200,29 +199,6 @@ module AWG_CLOUD_HEIGHT
   -5.2, -5.4, -5.4, -5.5, -5.6, -6.8, -7.8, &
   -4.6, -4.9, -4.9, -5.0, -5.1, -6.2, -7.1/), (/nts,ntcs/))
 
-!----- old 5/2016
-!  real, private, dimension(nts,ntcs), parameter:: ocean_lapse_rate_table = reshape ((/ &
-!                          -7.3, -7.2, -7.3, -7.4, -7.4, -6.8, -6.2, &
-!                          -7.4, -7.3, -7.3, -7.4, -7.4, -7.0, -6.3, &
-!                          -7.5, -7.3, -7.3, -7.5, -7.6, -7.1, -6.5, &
-!                          -7.2, -7.1, -7.3, -7.5, -7.6, -7.2, -6.6, &
-!                          -6.9, -6.8, -7.1, -7.4, -7.5, -7.3, -7.0, &
-!                          -6.6, -6.6, -6.8, -7.0, -7.3, -7.4, -7.4, &
-!                          -6.7, -6.4, -6.4, -6.6, -7.0, -7.3, -7.6, &
-!                          -6.2, -5.8, -5.6, -5.8, -6.3, -6.8, -7.3, &
-!                          -5.8, -5.3, -5.0, -5.2, -5.9, -6.3, -6.8/), (/nts,ntcs/))
-!
-!  real, private, dimension(nts,ntcs), parameter:: land_lapse_rate_table = reshape ((/ &
-!                           -5.2, -5.8, -6.2, -6.2, -6.4, -7.0, -7.7, &
-!                           -5.3, -5.8, -6.2, -6.3, -6.4, -7.1, -7.7, &
-!                           -5.2, -5.7, -6.0, -6.1, -6.4, -7.1, -7.7, &
-!                           -5.0, -5.4, -5.8, -5.9, -6.2, -6.9, -7.7, &
-!                           -5.0, -5.2, -5.5, -5.5, -5.8, -6.8, -7.8, &
-!                           -4.9, -5.0, -5.2, -4.9, -5.2, -6.2, -7.6, &
-!                           -4.7, -4.7, -4.8, -4.5, -4.8, -6.0, -7.5, &
-!                           -3.9, -4.0, -4.2, -3.9, -3.9, -5.3, -7.3, &
-!                           -3.3, -3.4, -3.7, -3.6, -3.5, -5.0, -7.3/), (/nts,ntcs/))
-
   contains 
 
 !------------------------------------------------------------------------------
@@ -526,6 +502,7 @@ module AWG_CLOUD_HEIGHT
 
   !--- allocate array for cirrus temperature
   allocate(Fail_Flag(Input%Number_of_Elements,Input%Number_of_Lines))
+  Fail_Flag(:,:) = Symbol%YES
   allocate(Converged_Flag(Input%Number_of_Elements,Input%Number_of_Lines))
   allocate(Temperature_Cirrus(Input%Number_of_Elements,Input%Number_of_Lines))
 
@@ -1010,9 +987,6 @@ module AWG_CLOUD_HEIGHT
     cycle 
   endif
 
-! if (Pass_Idx == Pass_Idx_Max) then
-!    Diag%Array_1(Elem_Idx,Line_Idx) = Tc_Ap
-! endif
   !------------------------------------------------------------------------
   ! modify Tc_Ap and Tc_Uncer for LRC, CIRRUS and SOUNDER options
   !------------------------------------------------------------------------
@@ -1021,13 +995,6 @@ module AWG_CLOUD_HEIGHT
                   Elem_Idx,Line_Idx,Dump_Diag, Lun_Iter_Dump,Temperature_Cirrus, &
                   Tc_Ap,Tc_Ap_Uncer)
 
-! if (Pass_Idx == Pass_Idx_Max) then
-!    Diag%Array_2(Elem_Idx,Line_Idx) = Temperature_Cirrus(Elem_Idx,Line_Idx)
-!    if (ilrc > 0 .and. jlrc > 0) then
-!       Diag%Array_3(Elem_Idx,Line_Idx) = Output%Tc(ilrc,jlrc)
-!    endif
-! endif
-
   !------------------------------------------------------------------------
   !  lower cloud (surface) a prior values
   !------------------------------------------------------------------------
@@ -1203,10 +1170,8 @@ if (FULL_RETRIEVAL) then
 
  else
 
-     !---
      x_Ap_Simple = x_Ap(1:3)
      Sa_Simple = Sa(1:3,1:3)
-     !Sa_Inv_Simple = Sa_Inv(1:3,1:3)  !????
      Singular_Flag =  INVERT_MATRIX(Sa_Simple, Sa_Inv_Simple, Num_Param_Simple)
      if (Singular_Flag == 1) print *, "Cloud Height warning ==> Singular Sa Simple in ACHA", Sa(1,1),Sa(2,2),Sa(3,3)
 
@@ -1292,9 +1257,6 @@ if (FULL_RETRIEVAL) then
   call SAVE_X_2_OUTPUT(Elem_Idx,Line_Idx,Symbol,Cloud_Type,Fail_Flag(Elem_Idx,Line_Idx), &
                   x,x_ap,Sa,Sx,AKM,Meta_Data_Flags,Output)
 
-  !--- null profile pointers each time 
-  call NULL_PIX_POINTERS(Input, ACHA_RTM_NWP)
-
   !--- set output packed quality flags
   call SET_OUTPUT_PACKED_QF(Output,Elem_Idx,Line_Idx)
 
@@ -1420,8 +1382,6 @@ subroutine COMPUTE_APRIORI_BASED_ON_TYPE( &
   !--- calipso values (not multiplier on uncer values)
   call COMPUTE_CIRRUS_APRIORI(Ttropo, Latitude, Tc_Ap_Cirrus, Tc_Ap_Uncer_Cirrus)
 
-  !Tc_Ap_Uncer_Cirrus = Tc_Ap_Uncer_Cirrus_Default
-
   !--- initialize with the opaque cloud temperature
   Tc_Ap_Opaque = T110um
 
@@ -1611,10 +1571,6 @@ subroutine COMPUTE_APRIORI_BASED_ON_PHASE_ETROPO( &
     Tc_Ap_Uncer = Emiss_Weight2*Tc_Ap_Uncer_Opaque + &
                   (1.0-Emiss_Weight2)*Tc_Ap_Uncer_Cirrus
 
-    ! ignore weighting
-    !Tc_Ap = Tc_Ap_Cirrus
-    !Tc_Ap_Uncer = Tc_Ap_Uncer_Cirrus
-
     !---- for very thick clouds, we want to ignore the LRC to 
     !---  to maintain spatial structure like overshooting columns
     if (Emiss_110um_Tropo > 0.95 .and. Tc_Opaque /= MISSING_VALUE_REAL4) then
@@ -2316,71 +2272,45 @@ subroutine NULL_PIX_POINTERS(Input, ACHA_RTM_NWP)
 
    ACHA_RTM_NWP%Z_Prof => NULL() 
 
-   if (Input%Chan_On_038um == Symbol%YES) then
      ACHA_RTM_NWP%Atm_Rad_Prof_038um =>  NULL()
      ACHA_RTM_NWP%Atm_Trans_Prof_038um =>  NULL()
      ACHA_RTM_NWP%Black_Body_Rad_Prof_038um => NULL()
-   endif
-   if (Input%Chan_On_062um == Symbol%YES) then
      ACHA_RTM_NWP%Atm_Rad_Prof_062um =>  NULL()
      ACHA_RTM_NWP%Atm_Trans_Prof_062um =>  NULL()
      ACHA_RTM_NWP%Black_Body_Rad_Prof_062um => NULL()
-   endif
-   if (Input%Chan_On_067um == Symbol%YES) then
      ACHA_RTM_NWP%Atm_Rad_Prof_067um =>  NULL()
      ACHA_RTM_NWP%Atm_Trans_Prof_067um =>  NULL()
      ACHA_RTM_NWP%Black_Body_Rad_Prof_067um => NULL()
-   endif
-   if (Input%Chan_On_073um == Symbol%YES) then
      ACHA_RTM_NWP%Atm_Rad_Prof_073um =>  NULL()
      ACHA_RTM_NWP%Atm_Trans_Prof_073um =>  NULL()
      ACHA_RTM_NWP%Black_Body_Rad_Prof_073um => NULL()
-   endif
-   if (Input%Chan_On_085um == Symbol%YES) then
      ACHA_RTM_NWP%Atm_Rad_Prof_085um =>  NULL()
      ACHA_RTM_NWP%Atm_Trans_Prof_085um =>  NULL()
      ACHA_RTM_NWP%Black_Body_Rad_Prof_085um => NULL()
-   endif
-   if (Input%Chan_On_097um == Symbol%YES) then
      ACHA_RTM_NWP%Atm_Rad_Prof_097um =>  NULL()
      ACHA_RTM_NWP%Atm_Trans_Prof_097um =>  NULL()
      ACHA_RTM_NWP%Black_Body_Rad_Prof_097um => NULL()
-   endif
-   if (Input%Chan_On_104um == Symbol%YES) then
       ACHA_RTM_NWP%Atm_Rad_Prof_104um => NULL()
       ACHA_RTM_NWP%Atm_Trans_Prof_104um => NULL()
       ACHA_RTM_NWP%Black_Body_Rad_Prof_104um => NULL()
-   endif
-   if (Input%Chan_On_110um == Symbol%YES) then
       ACHA_RTM_NWP%Atm_Rad_Prof_110um => NULL()
       ACHA_RTM_NWP%Atm_Trans_Prof_110um => NULL()
       ACHA_RTM_NWP%Black_Body_Rad_Prof_110um => NULL()
-   endif
-   if (Input%Chan_On_120um == Symbol%YES) then
       ACHA_RTM_NWP%Atm_Rad_Prof_120um => NULL()
       ACHA_RTM_NWP%Atm_Trans_Prof_120um => NULL()
       ACHA_RTM_NWP%Black_Body_Rad_Prof_120um => NULL()
-   endif
-   if (Input%Chan_On_133um == Symbol%YES) then
       ACHA_RTM_NWP%Atm_Rad_Prof_133um => NULL()
       ACHA_RTM_NWP%Atm_Trans_Prof_133um => NULL()
       ACHA_RTM_NWP%Black_Body_Rad_Prof_133um => NULL()
-   endif
-   if (Input%Chan_On_136um == Symbol%YES) then
       ACHA_RTM_NWP%Atm_Rad_Prof_136um => NULL()
       ACHA_RTM_NWP%Atm_Trans_Prof_136um => NULL()
       ACHA_RTM_NWP%Black_Body_Rad_Prof_136um => NULL()
-   endif
-   if (Input%Chan_On_139um == Symbol%YES) then
       ACHA_RTM_NWP%Atm_Rad_Prof_139um => NULL()
       ACHA_RTM_NWP%Atm_Trans_Prof_139um => NULL()
       ACHA_RTM_NWP%Black_Body_Rad_Prof_139um => NULL()
-   endif
-   if (Input%Chan_On_142um == Symbol%YES) then
       ACHA_RTM_NWP%Atm_Rad_Prof_142um => NULL()
       ACHA_RTM_NWP%Atm_Trans_Prof_142um => NULL()
       ACHA_RTM_NWP%Black_Body_Rad_Prof_142um => NULL()
-   endif
  
 end subroutine NULL_PIX_POINTERS
 !====================================================================
@@ -2388,7 +2318,7 @@ end subroutine NULL_PIX_POINTERS
 !====================================================================
 subroutine SET_ACHA_VERSION(Acha_Version)
    character(len=*):: Acha_Version
-   Acha_Version = "$Id: acha_module.f90 4105 2021-03-12 13:56:43Z heidinger $"
+   Acha_Version = "v1.0"
 end subroutine SET_ACHA_VERSION
 !====================================================================
 ! 
@@ -2448,31 +2378,6 @@ subroutine COMPUTE_TEMPERATURE_CIRRUS(Cld_Type, &
    allocate(Mask1(Num_Elements,Num_Lines))
    allocate(Mask2(Num_Elements,Num_Lines))
 
-!  !---- make source mask
-!  Mask1 = 0_int1
-!  where( (Cld_Type == Symbol%CIRRUS_TYPE .or. &
-!          Cld_Type == Symbol%OPAQUE_ICE_TYPE .or.  &
-!          Cld_Type == Symbol%OVERSHOOTING_TYPE .or.  &
-!          Cld_Type == Symbol%OVERLAP_TYPE .or.  &
-!          Temperature_Cloud < 250.0) .and. &
-!          Temperature_Cloud /= Missing .and. &
-!          Cld_Type /= MISSING_VALUE_integer1 .and. &
-!          Emissivity_Cloud >= Emissivity_Thresh)
-!     Mask1 = 1_int1
-!  end where
-
-!  !---- make target mask
-!  Mask2 = 0_int1
-!  where( (Cld_Type == Symbol%CIRRUS_TYPE .or. &
-!          Cld_Type == Symbol%OVERLAP_TYPE .or. &
-!          Temperature_Cloud < 250.0) .and. &
-!          Temperature_Cloud /= Missing .and. &
-!          Cld_Type /= MISSING_VALUE_integer1 .and. &
-!          Emissivity_Cloud < Emissivity_Thresh)
-!     Mask2 = 1_int1
-!  end where
-
-   !--- andy change 10/2020
    !---- make source mask
    Mask1 = 0_int1
    where( (Cld_Type == Symbol%CIRRUS_TYPE .or. &
@@ -2481,14 +2386,16 @@ subroutine COMPUTE_TEMPERATURE_CIRRUS(Cld_Type, &
            Cld_Type == Symbol%OVERLAP_TYPE) .and. &
            Temperature_Cloud < 250.0 .and. &
            Temperature_Cloud /= Missing .and. &
+           Lat /= Missing .and. Lon /= Missing .and. &
            Emissivity_Cloud >= Emissivity_Thresh)
       Mask1 = 1_int1
    end where
 
    !---- make target mask
    Mask2 = 0_int1
-   where( Cld_Type == Symbol%CIRRUS_TYPE .or. &
-          Cld_Type == Symbol%OVERLAP_TYPE) 
+   where((Cld_Type == Symbol%CIRRUS_TYPE .or. &
+          Cld_Type == Symbol%OVERLAP_TYPE) .and. &
+          Lat /= Missing .and. Lon /= Missing)
       Mask2 = 1_int1
    end where
 
@@ -2588,6 +2495,7 @@ subroutine COMPUTE_TEMPERATURE_CIRRUS_LRC(Cld_Type, &
            Jlrc > 0 .and. &
            Temperature_Cloud < 250.0 .and. &
            Temperature_Cloud /= Missing .and. &
+           Lat /= Missing .and. Lon /= Missing .and. &
            (Emissivity_Cloud >= 0.8 .or. &
            Ec_LRC >= Emissivity_Thresh))
       Mask1 = 1_int1
@@ -2595,8 +2503,9 @@ subroutine COMPUTE_TEMPERATURE_CIRRUS_LRC(Cld_Type, &
 
    !---- make target mask
    Mask2 = 0_int1
-   where( Cld_Type == Symbol%CIRRUS_TYPE .or. &
-          Cld_Type == Symbol%OVERLAP_TYPE) 
+   where((Cld_Type == Symbol%CIRRUS_TYPE .or. &
+          Cld_Type == Symbol%OVERLAP_TYPE) .and. &
+          Lat /= Missing .and. Lon /= Missing) 
       Mask2 = 1_int1
    end where
 
@@ -2663,13 +2572,11 @@ subroutine COMPUTE_LOWER_CLOUD_TEMPERATURE(Cld_Type, &
    !---- make output mask
    allocate(Mask2(Num_Elements,Num_Lines))
    Mask2 = 0_int1
-!  where(Cld_Type == Symbol%OVERLAP_TYPE)
-!         Mask2 = 1_int1
-!  end where
 
-   where(Cld_Type == Symbol%CIRRUS_TYPE .or. &
+   where((Cld_Type == Symbol%CIRRUS_TYPE .or. &
          Cld_Type == Symbol%OPAQUE_ICE_TYPE .or.  &
-         Cld_Type == Symbol%OVERLAP_TYPE)
+         Cld_Type == Symbol%OVERLAP_TYPE) .and. &
+         Lat /= Missing .and. Lon /= Missing)
           Mask2 = 1_int1
    end where
 
@@ -2689,6 +2596,7 @@ subroutine COMPUTE_LOWER_CLOUD_TEMPERATURE(Cld_Type, &
    Mask1 = 0_int1
    where( (Cld_Type == Symbol%FOG_TYPE .or. &
               Cld_Type == Symbol%WATER_TYPE) .and.  &
+              Lat /= Missing .and. Lon /= Missing .and. &
               Cloud_Temperature /= Missing)
              Mask1 = 1_int1
    end where
@@ -3339,7 +3247,6 @@ subroutine QUALITY_CONTROL_OUTPUT(Tc, Pc, Zc, Ec, Beta, Surface_Elevation, Surfa
   if (Zc /= MISSING_VALUE_REAL4) then
      Zc_Floor_Temp = ZC_FLOOR
       if (Surface_Elevation >= 0.0) then
-!     if (Surface_Elevation /= MISSING_VALUE_REAL4) then
         Zc_Floor_Temp = Surface_Elevation + Zc_Roundoff_Offset
      endif
      if (Zc < Zc_Floor_Temp .or. Zc > ZC_CEILING) then
@@ -3887,7 +3794,6 @@ subroutine MODIFY_TC_AP(Input,Output,Symbol,Pass_Idx,Pass_Idx_Max,USE_LRC_FLAG,i
                 (Output%Ec(ilrc,jlrc) <= 1.0)) then
              !-- use lrc value but weight uncertainty
              Tc_Ap = Output%Tc(ilrc,jlrc)
-             !Tc_Ap_Uncer = 5.0 + (1.0-Output%Ec(ilrc,jlrc))*Tc_Ap_Uncer
            endif
        endif
 
diff --git a/acha/acha_num_mod.f90 b/acha/acha_num_mod.f90
index b5d05ba35be2699007db879a183a79a586f87197..557cd254398b71bd33802fb864140f20a383773e 100644
--- a/acha/acha_num_mod.f90
+++ b/acha/acha_num_mod.f90
@@ -921,6 +921,8 @@ subroutine KD_TREE_INTERP_2pred(Mask_In,Mask_Out,pred_var1,pred_var2,Num_Element
 
         ! perform tree search for each query index
         do i = 1,n_query
+           !!! fix because index sometimes gets = 0 or above limit Denis B. 2022-05-18 !!!
+           !if (ind_query(i) .le. 0 .or. ind_query(i) .gt. 2750000) cycle 
            query_vec(1) = predictor_1(ind_query(i))
            query_vec(2) = predictor_2(ind_query(i))
 
diff --git a/acha/acha_rtm_mod.f90 b/acha/acha_rtm_mod.f90
index 4ae0963d7aaaa996f991bce70684a0081179c4d9..2137440562bda116d740fe903c1dd3e4cd9f265a 100644
--- a/acha/acha_rtm_mod.f90
+++ b/acha/acha_rtm_mod.f90
@@ -1368,19 +1368,19 @@ subroutine  COMPUTE_CLEAR_SKY_TERMS(Acha_Mode_Flag, Zc, Zs, Ts, Hght_Prof,  &
   integer, intent(in):: Chan_Idx_038um, Chan_Idx_062um, Chan_Idx_067um, Chan_Idx_073um, &
                         Chan_Idx_085um, Chan_Idx_097um, Chan_Idx_104um, Chan_Idx_110um, Chan_Idx_120um, &
                         Chan_Idx_133um, Chan_Idx_136um, Chan_Idx_139um, Chan_Idx_142um
-  real, intent(in), dimension(:):: Atm_Rad_Prof_038um, Atm_Trans_Prof_038um
-  real, intent(in), dimension(:):: Atm_Rad_Prof_062um, Atm_Trans_Prof_062um
-  real, intent(in), dimension(:):: Atm_Rad_Prof_067um, Atm_Trans_Prof_067um
-  real, intent(in), dimension(:):: Atm_Rad_Prof_073um, Atm_Trans_Prof_073um
-  real, intent(in), dimension(:):: Atm_Rad_Prof_085um, Atm_Trans_Prof_085um
-  real, intent(in), dimension(:):: Atm_Rad_Prof_097um, Atm_Trans_Prof_097um
-  real, intent(in), dimension(:):: Atm_Rad_Prof_104um, Atm_Trans_Prof_104um
-  real, intent(in), dimension(:):: Atm_Rad_Prof_110um, Atm_Trans_Prof_110um
-  real, intent(in), dimension(:):: Atm_Rad_Prof_120um, Atm_Trans_Prof_120um
-  real, intent(in), dimension(:):: Atm_Rad_Prof_133um, Atm_Trans_Prof_133um
-  real, intent(in), dimension(:):: Atm_Rad_Prof_136um, Atm_Trans_Prof_136um
-  real, intent(in), dimension(:):: Atm_Rad_Prof_139um, Atm_Trans_Prof_139um
-  real, intent(in), dimension(:):: Atm_Rad_Prof_142um, Atm_Trans_Prof_142um
+  real, intent(in), pointer, dimension(:):: Atm_Rad_Prof_038um, Atm_Trans_Prof_038um
+  real, intent(in), pointer, dimension(:):: Atm_Rad_Prof_062um, Atm_Trans_Prof_062um
+  real, intent(in), pointer, dimension(:):: Atm_Rad_Prof_067um, Atm_Trans_Prof_067um
+  real, intent(in), pointer, dimension(:):: Atm_Rad_Prof_073um, Atm_Trans_Prof_073um
+  real, intent(in), pointer, dimension(:):: Atm_Rad_Prof_085um, Atm_Trans_Prof_085um
+  real, intent(in), pointer, dimension(:):: Atm_Rad_Prof_097um, Atm_Trans_Prof_097um
+  real, intent(in), pointer, dimension(:):: Atm_Rad_Prof_104um, Atm_Trans_Prof_104um
+  real, intent(in), pointer, dimension(:):: Atm_Rad_Prof_110um, Atm_Trans_Prof_110um
+  real, intent(in), pointer, dimension(:):: Atm_Rad_Prof_120um, Atm_Trans_Prof_120um
+  real, intent(in), pointer, dimension(:):: Atm_Rad_Prof_133um, Atm_Trans_Prof_133um
+  real, intent(in), pointer, dimension(:):: Atm_Rad_Prof_136um, Atm_Trans_Prof_136um
+  real, intent(in), pointer, dimension(:):: Atm_Rad_Prof_139um, Atm_Trans_Prof_139um
+  real, intent(in), pointer, dimension(:):: Atm_Rad_Prof_142um, Atm_Trans_Prof_142um
   real, intent(in):: Emiss_Sfc_038um, Emiss_Sfc_062um, Emiss_Sfc_067um, &
                      Emiss_Sfc_073um, Emiss_Sfc_085um, Emiss_Sfc_097um, Emiss_Sfc_104um, &
                      Emiss_Sfc_110um, Emiss_Sfc_120um, Emiss_Sfc_133um, &
diff --git a/acha/acha_shadow_module.f90 b/acha/acha_shadow_module.f90
index 3189d53ca8c0be9cc41c05c73142468fe82202a7..2866afa2f13b834ad7213e38200e278a7c7bd575 100644
--- a/acha/acha_shadow_module.f90
+++ b/acha/acha_shadow_module.f90
@@ -98,8 +98,6 @@ subroutine CLOUD_SHADOW_RETR (  &
 
                Delta_Lon = -1.0 * sin(Solar_Azi(i,j) * DTOR ) * Distance_km(i,j) * Lon_Spacing_Per_m(i,j)
                Delta_Lat = -1.0 * cos(Solar_Azi(i,j) * DTOR ) * Distance_km(i,j) * Lat_Spacing_Per_m
-               ! Cloud_Shadow  = 0
-             !  print*,'delta_lon,delta_lat: ',delta_lon,delta_lat, Distance_km(i,j), cloud_height(i,j)
                call SHADOW_IND ( Lat_Pc(i,j) + Delta_Lat, Lon_Pc(i,j) + Delta_Lon, Lat, Lon, i, j, Cloud_Shadow) 
               
             end do
@@ -162,19 +160,8 @@ subroutine CLOUD_SHADOW_RETR (  &
       diff_Lat = Lat1 - Lat(i,j)
       diff_Lon = lon1 - Lon(i,j) 
       
-     ! print*,  delta_Lat_ii
-    !  print*,          delta_lon_ii
-    !  print*,         delta_Lat_jj
-   !   print*,          delta_lon_jj
-      
-      
-   !   print*,     Lat(i,j) , Lat(i-1,j)
-!print*,           Lon(i,j) , Lon(i-1,j)
-!print*,           Lat(i,j) , Lat(i,j-1)
-!print*,           Lon(i,j) , Lon(i,j-1)
        if (  Lat(i,j) .eq. Lat(i-1,j) .and.  Lat(i,j) .eq. Lat(i,j-1) ) return
       if (  Lon(i,j) .eq. Lon(i-1,j) .and.  Lon(i,j) .eq. Lon(i,j-1) ) return
-    !  print*,lat(i-1:i+1,j-1:j+1)
       
       !     use of these equations:
       ! diff_Lon = ii * delta_lon_ii + jj * delta_lon_jj
@@ -191,16 +178,6 @@ subroutine CLOUD_SHADOW_RETR (  &
       long_idx   = maxval (ABS([ii,jj]))
       short_idx  = minval (ABS([ii,jj]))
       
-     !print* , ABS([ii,jj])
-      
-     ! print*,'SHORT IDX: ',short_idx,(short_idx .lt. 1)
-     ! print*,'LONG IDX: ',long_idx , (long_idx .LT. 1)
-      
-      
-     ! print*, diff_Lat,diff_lon, delta_lon_jj,delta_lon_ii, delta_Lat_jj,delta_Lat_ii
-    !  print *,'ii jj: ',ii,jj
-     
-      
       if ((long_idx .LT. 0) .or. (short_idx .lt. 0)) then
          print*,'REACHED'
          if ( .not. already_bad_message) then
diff --git a/acha/include/acha_parameters.inc b/acha/include/acha_parameters.inc
index 1db9ed8c842337158319afd1cd48e2c345856ff0..0697f632da7d590558a13180539b52a1691da67c 100644
--- a/acha/include/acha_parameters.inc
+++ b/acha/include/acha_parameters.inc
@@ -53,19 +53,6 @@
  logical, private, parameter :: CONSTRAIN_ICE_PROB= .false.     !whether or not to allow acha to modify ice_prob_ap
  logical, private, parameter :: BINARY_ICE_PROB= .false.        !whether to use 0/1 ice_prob_ap
 
- !---- GOES-R BASELINE-ish
- !logical, private, parameter:: FULL_RETRIEVAL = .false.
- !logical, private, parameter:: USE_LINEAR_IN_OPD_EMISSION = .false.
- !integer(kind=int4), parameter, private:: MULTI_LAYER_LOGIC_Flag = 0
- !logical, private, parameter :: USE_CIRRUS_FLAG = .false. 
- !logical, private, parameter :: USE_LAPSE_RATE_FLAG = .true.  
- !logical, private, parameter :: USE_LOWER_INTERP_FLAG = .true.  
- !logical, private, parameter :: USE_LRC_FLAG = .true.
- !integer, parameter, private:: Cloud_Type_Forced = -1 ! -1 = not used, 0-10 use this type
- !logical, private, parameter :: USE_SOUNDER_VALUES = .false.
- !integer, private, parameter :: USE_TYPE_FLAG = 0
- !real, private, parameter:: ICE_EXTINCTION_TUNING_FACTOR = 1.0
-
  !------------------------------------------------------------
  ! ACHA parameters
  !------------------------------------------------------------
@@ -169,8 +156,6 @@ real(kind=real4), parameter, private:: Tc_Ap_Uncer_Cirrus_Default = 30.0  !!
  real(kind=real4), parameter, private:: Tau_Ap_Overlap_Type = 0.9 !2.0           !apriori estimate of tau for multilayer cloud type
 
  !--- specify calibration  errors
-!--> real(kind=real4), parameter, private:: T110um_120um_Cal_Uncer = 1.0  !BASELINE V5
-!--> real(kind=real4), parameter, private:: T110um_133um_Cal_Uncer = 2.0 !BASELINE V5
  real(kind=real4), parameter, private:: T110um_Cal_Uncer = 1.0
  real(kind=real4), parameter, private:: T110um_038um_Cal_Uncer = 1.0
  real(kind=real4), parameter, private:: T110um_062um_Cal_Uncer = 1.0
@@ -204,18 +189,6 @@ real(kind=real4), parameter, private:: Tc_Ap_Uncer_Cirrus_Default = 30.0  !!
  !---- computed in 10 deg lat bands.  First bin is -90 to -80
  integer, parameter, private:: num_lat_cirrus_ap = 18
 
-!--- old
-!real(kind=real4), dimension(num_lat_cirrus_ap), private, parameter:: &
-!   TC_CIRRUS_MEAN_LAT_VECTOR = (/  &
-!     17.1184, 16.8644, 14.4241, 15.7231, 14.6659, 17.5565, &
-!     27.6142, 17.9770, 13.5127, 16.2466, 22.4699, 24.6992, &
-!     18.7324, 18.3266, 15.2087, 14.8122, 18.0353, 19.9059/)
-!real(kind=real4), dimension(num_lat_cirrus_ap), private, parameter:: &
-!   TC_CIRRUS_STDDEV_LAT_VECTOR = (/  &
-!     9.58205, 10.7957, 9.96308, 9.75967, 9.11487, 11.3290, &
-!     18.0040, 16.2742, 14.0061, 15.0945, 13.7971, 14.6018, &
-!     15.5322, 14.5822, 11.3727, 9.90263, 11.5416, 11.9146/)
-
 !--- akh 10/2020
  real(kind=real4), dimension(num_lat_cirrus_ap), private, parameter:: &
     TC_CIRRUS_MEAN_LAT_VECTOR = (/  &
diff --git a/build/Makefile.local b/build/Makefile.local
index 6bda5cce79019e10fe2f3867df3fee4ec92e7d16..d7309db8eee31c2068423633063b93b2d0353af4 100644
--- a/build/Makefile.local
+++ b/build/Makefile.local
@@ -6,7 +6,7 @@
 # Include all required macros on the following lines:
 
 
-ifeq ($(ARCH),$(filter $(ARCH), gfortran gfortran-strict gfortran-debug gfortran-debug-andy))
+ifeq ($(ARCH),$(filter $(ARCH), gfortran gfortran-strict gfortran-debug gfortran-debug-andy gfortran10))
 export CX_DATA_IO=/fjord/jgs/patmosx/Ancil_Data/clavrx_ancil_data/libs/cx_sds_io/Release_gfortran/
 export DNCOMP=/fjord/jgs/patmosx/Ancil_Data/clavrx_ancil_data/libs/cx_dncomp/Release_gfortran/
 export HDF4_PATH = ${SSEC_HDF4_LIB}/../
diff --git a/build/arch/gfortran b/build/arch/gfortran
index 6045654ec13f3fab40bd0f33d0e2bdb98a1401f6..b6fcd8a6e6923439318b57f9325bee0c67e0f9af 100644
--- a/build/arch/gfortran
+++ b/build/arch/gfortran
@@ -1,8 +1,19 @@
 fc=gfortran
 FC77=gfortran
 
-fflags = -O2  -ffast-math -funroll-loops -fno-range-check -ffree-line-length-200
-fflags_pfast = -O2  -ffast-math -funroll-loops -ffixed-form -fno-automatic
+fflags = -O2  -ffast-math -funroll-loops -fno-range-check -ffree-line-length-200 
+fflags_pfast = -O2  -ffast-math -funroll-loops -ffixed-form -fno-automatic 
+GF_VERSION := $(shell gfortran -dumpversion)
+GF_VERSION_MAJ = $(firstword $(subst ., ,$(GF_VERSION)))
+VERSION := 9
+
+ifeq ($(shell test $(GF_VERSION_MAJ) -gt $(VERSION); echo $$?),0)
+fflags += -fallow-argument-mismatch -fallow-invalid-boz
+fflags_pfast += -fallow-invalid-boz
+endif
+
+
+
 fflags_sasrab_f77 = -O2  -ffast-math -funroll-loops -ffixed-form -fno-automatic
 fflags_sasrab_f90 = -O2  -ffast-math -funroll-loops -fno-automatic
 ldflags = -O2 
diff --git a/build/arch/gfortran10 b/build/arch/gfortran10
new file mode 100644
index 0000000000000000000000000000000000000000..9ede8738bb9efa283ed7fe3f9ddf9e103933effa
--- /dev/null
+++ b/build/arch/gfortran10
@@ -0,0 +1,37 @@
+fc=gfortran
+FC77=gfortran
+
+fflags = -O2  -ffast-math -funroll-loops -fno-range-check -ffree-line-length-200 -fallow-argument-mismatch -fallow-invalid-boz
+fflags_pfast = -O2  -ffast-math -funroll-loops -ffixed-form -fno-automatic -fallow-invalid-boz
+fflags_sasrab_f77 = -O2  -ffast-math -funroll-loops -ffixed-form -fno-automatic
+fflags_sasrab_f90 = -O2  -ffast-math -funroll-loops -fno-automatic
+ldflags = -O2 
+cpp = -cpp
+cppflags = 
+beconv = -fconvert=big-endian
+hdflibs = -L$(HDF4_PATH)/lib/  -I$(HDF4_PATH)/include/ -lmfhdf -ldf -ljpeg -lz
+hdfincs = -I$(HDF4_PATH)/include/
+netcdflibs = -L${NETCDF_PATH}/lib/ -I${NETCDF_PATH}/include/ -lnetcdf -lnetcdff
+hdf5libs = -I$(HDF5_PATH)/include/ -L$(HDF5_PATH)/lib/
+hdf5links = -lhdf5_fortran -lhdf5 -lz
+
+HOST=$(shell hostname)
+ifeq ($(HOST),orchid-submit.ssec.wisc.edu)
+hdflibs += -lsz -ltirpc
+endif
+
+ifeq ($(HOST),incus.ssec.wisc.edu)
+hdflibs += -lsz -ltirpc
+endif
+
+ifeq ($(HOST),vor.ssec.wisc.edu)
+hdflibs += -lsz -ltirpc
+endif
+
+ifeq ($(HOST),tiki.ssec.wisc.edu)
+hdflibs += -lsz -ltirpc
+endif
+
+ifeq ($(HOST),solar2.ssec.wisc.edu)
+hdflibs += -lsz -ltirpc
+endif
diff --git a/build_ci.sh b/build_ci.sh
new file mode 100755
index 0000000000000000000000000000000000000000..0d01abb92db523650734af76b13e48a6cec83591
--- /dev/null
+++ b/build_ci.sh
@@ -0,0 +1,23 @@
+#!/bin/bash
+export PATH=/usr/local/gcc-8.3.0/bin/:$PATH
+export LD_LIBRARY_PATH=/usr/local/gcc-8.3.0/lib64/
+export SSEC_HDF4_LIB=/root/hdf4/lib/
+export SSEC_HDF5_LIB=/root/hdf5/lib/
+export SSEC_NETCDF4_DIR=/root/netcdf
+export SSEC_NETCDF4_LIB=/root/netcdf/lib
+export SSEC_NETCDF4_INC=/root/netcdf/include
+#export LIBHIM_PATH=/host/out/himawari
+#export RTTOV_PATH=/root/rttov/
+export FC=gfortran
+export FFLAGS=-g
+export fflags=-g
+
+export ARCH=gfortran
+#./configure -LIBHIM_GCC=$LIBHIM_PATH --rttov_path=/host/out/rttov
+./configure
+cd main_src
+export FFLAGS=-g
+export fflags=-g
+make all_plus
+#bash /host/relink.sh
+#cp /root/clavrx_trunk/clavrx_bin/clavrxorb /host/out/
diff --git a/clavrx_options_example b/clavrx_options_example
index 108e8b0fca17a20bdab3fc5e734fc8bf889446d9..c651f10c5889fc865dedbf5ea5af70b63bb7e2dc 100644
--- a/clavrx_options_example
+++ b/clavrx_options_example
@@ -22,7 +22,7 @@ default !E1 ALG ACHA (off, default or select combinations like 110_120_133)
 1   !E2 OUT output compression flag (0=no,1=gzip)
 2   !E2 MASK read auxilary cloud mask 1b (0 = don't read, 1 = read from 1b and use, 2 = read and save as aux, 3 = read modawg/mvcm, but compute ecm2 type/phase)
 default
-1   !E3 SFC seebor emiss option (0=UMD, 1=RTTOV 2=SEEBOR (3=CRTM not yet installed)) 
+1   !E3 SFC seebor emiss option (0=UMD, 1=RTTOV 2=SEEBOR) 
 1   !E3 SFC sea emiss flag (0=no, 1=yes) 
 0   !E3 SFC read hires sfc type flag (0=no-8km, 1 = yes-1km) 
 1   !E3 SFC read land mask flag (0=no, 1=yes) (goge2_0ll.hdf)
diff --git a/cloud_base/cloud_base_module.f90 b/cloud_base/cloud_base_module.f90
index b7f9ad3e2b189d475fb8b12bef4207308a16f369..37356a389e9bf51db181605ee54ee9c0a7ef0836 100644
--- a/cloud_base/cloud_base_module.f90
+++ b/cloud_base/cloud_base_module.f90
@@ -1,511 +1,512 @@
-! $Id: cloud_base_module.f90 4062 2021-01-12 04:02:19Z yli $
-module CLOUD_BASE
-!---------------------------------------------------------------------
-! This module houses the routines associated with...
-!
-! Author: 
-!
-! Reference:
-!
-!----------------------------------------------------------------------
-  use CLOUD_BASE_SERVICES
-  
-  implicit none
-
-  public:: CLOUD_BASE_ALGORITHM
-
-  private:: INTERPOLATE_PROFILE_LOCAL
-  private:: NULL_PIX_POINTERS 
-  private:: KNOWING_Z_COMPUTE_T_P 
-
-  !--- include the non-system specific variables
-  include 'cloud_base_parameters.inc'
-
-  !--- interpoLated profiles
-  real, private, dimension(Num_Levels_RTM_Prof) :: Temp_Prof_RTM
-  real, private, dimension(Num_Levels_RTM_Prof) :: Press_Prof_RTM
-  real, private, dimension(Num_Levels_RTM_Prof) :: Hght_Prof_RTM
-  integer, private:: Sfc_Level_RTM
-  integer, private:: Tropo_Level_RTM
-
-  real, private, PARAMETER:: MISSING_VALUE_REAL = -999.0
-  integer, private, PARAMETER:: MISSING_VALUE_INTEGER = -999
-
-  contains 
-
-!------------------------------------------------------------------------------
-! Cloud BaseE Height Algorithm 
-!
-! Author: Andrew Heidinger, NOAA
-!
-! Assumptions
-!
-! Limitations
-!
-! NOTE.  This algorithm use the same input and output structures as 
-!        the AWG_CLOUD_HEIGHT_ALGORITHM.
-!        Do not overwrite elements of the Output structure expect those
-!        generated here.
-!
-!      Output%Tau
-!      Output%Ec
-!      Output%Reff
-!      Output%Zc_Base
-!      Output%Pc_Base
-!ynoh (cira/csu) for ccl mode 3
-!      Output%Pc_Lower_Base
-!
-!----------------------------------------------------------------------
-! modification history
-!
-!------------------------------------------------------------------------------
-  subroutine CLOUD_BASE_ALGORITHM(Input, Symbol, Output, Diag)
-
-  !===============================================================================
-  !  Argument Declaration
-  !==============================================================================
-
-  type(symbol_acha), intent(inout) :: Symbol
-  type(acha_input_struct), intent(inout) :: Input
-  type(acha_output_struct), intent(inout) :: Output
-  type(acha_diag_struct), intent(inout), optional :: Diag
-  integer, save:: Diag_Warning_Flag = 0
-
-
-  !===============================================================================
-  !  Pixel level RTM structure
-  !===============================================================================
- 
-  type(acha_rtm_nwp_struct) :: RTM_NWP
-
-  !===============================================================================
-  !  Local Variable Declaration
-  !===============================================================================
-
-  integer:: Elem_Idx
-  integer:: Line_Idx
-  real:: Inwp_Weight
-  real:: Jnwp_Weight
-
-  integer:: Cloud_Type
-
-  !--- scalar local variables
-  real (kind=real4):: Cloud_Extinction
-  real (kind=real4):: Cloud_Geometrical_Thickness
-  real (kind=real4):: Cloud_Geometrical_Thickness_Top_Offset
-  real (kind=real4):: Cloud_Geometrical_Thickness_eff
-  real (kind=real4):: Zc_Top_Max
-  real (kind=real4):: Zc_Base_Min
-  real (kind=real4):: R4_Dummy
-
-  integer (kind=int4):: Itemp
-  integer (kind=int4):: Ilev
-
-!-----------------------------------------------------------------------
-! BEGIN EXECUTABLE CODE
-!-----------------------------------------------------------------------
-
-   !-------------------------------------------------------------------------
-   ! Initialization
-   !-------------------------------------------------------------------------
-   Output%Zc_Base = MISSING_VALUE_REAL
-   Output%Pc_Base = MISSING_VALUE_REAL
-
-!ynoh (cira/csu) for ccl mode 3
-   Output%Pc_Lower_Base = MISSING_VALUE_REAL  
-
-   !--- initialize diagnostic output
-   if (present(Diag) .and. Diag_Warning_Flag == 0) then
-      print *, "CLAVR-x / Cloud Base ===>  Diagnostic Output Turned On"
-      Diag_Warning_Flag = 1
-   endif
-   if (present(Diag)) Diag%Array_1 = Missing_Value_Real4
-   if (present(Diag)) Diag%Array_2 = Missing_Value_Real4
-   if (present(Diag)) Diag%Array_3 = Missing_Value_Real4
-
-   !--------------------------------------------------------------------------
-   ! loop over pixels in scanlines
-   !--------------------------------------------------------------------------
-   Line_loop: do Line_Idx = Line_Idx_min,Input%Number_of_Lines + Line_Idx_min - 1
-
-    Element_Loop:   do Elem_Idx = 1, Input%Number_of_Elements
-
-     if (Input%Invalid_Data_Mask(Elem_Idx,Line_Idx) == symbol%YES) cycle
-     if ((Input%Elem_Idx_Nwp(Elem_Idx,Line_Idx) <= 0) .or. &
-         (Input%Line_Idx_Nwp(Elem_Idx,Line_Idx) <= 0)) then
-         cycle
-    endif
-
-    !---- null profile pointers each time - WCS3
-    call NULL_PIX_POINTERS(Input, RTM_NWP)
-
-    !--- for convenience, save nwp indices to local variables
-    Inwp_Weight = Input%Longitude_Interp_Weight_NWP(Elem_Idx,Line_Idx)
-    Jnwp_Weight = Input%Latitude_Interp_Weight_NWP(Elem_Idx,Line_Idx)
-    Cloud_Type = Input%Cloud_Type(Elem_Idx,Line_Idx)
-
-    !-----------------------------------------------------------------------
-    ! include code to setup local profiles correctly 
-    !-----------------------------------------------------------------------
-    
-    !Call Services module
-    call FETCH_PIXEL_RTM_NWP(Input, Symbol, &
-                             Elem_Idx,Line_Idx, RTM_NWP)
-    
-    Sfc_Level_RTM = RTM_NWP%Sfc_Level
-    Tropo_Level_RTM = RTM_NWP%Tropo_Level
-    
-    Press_Prof_RTM =  RTM_NWP%P_Prof
-
-    !do smoothing routines here - WCS3
-    if (RTM_NWP%Smooth_Nwp_Fields_Flag_Temp == symbol%YES) then
-
-       !--- height profile       
-       Hght_Prof_RTM = INTERPOLATE_PROFILE_LOCAL( RTM_NWP%Z_Prof, &
-                                            RTM_NWP%Z_Prof_1, &
-                                            RTM_NWP%Z_Prof_2, &
-                                            RTM_NWP%Z_Prof_3, &
-                                            Inwp_Weight,Jnwp_Weight)
-
-      !--- temperature profile
-      Temp_Prof_RTM = INTERPOLATE_PROFILE_LOCAL( RTM_NWP%T_Prof, &
-                                           RTM_NWP%T_Prof_1, &
-                                           RTM_NWP%T_Prof_2, &
-                                           RTM_NWP%T_Prof_3, &
-                                           Inwp_Weight,Jnwp_Weight)
-
-    
-    else
-
-       Hght_Prof_RTM = RTM_NWP%Z_Prof
-       Temp_Prof_RTM = RTM_NWP%T_Prof
-    
-    endif
-
-    !-----------------------------------------------------------------------------
-    !--- Cloud Base and Top
-    !---
-    !--- Note 1. Extinction values are in km^(-1)
-    !--- Note 2. All heights and thickness are converted to meters
-    !-----------------------------------------------------------------------------
-    if (Input%Zc(Elem_Idx,Line_Idx) /= MISSING_VALUE_REAL .and. &
-        Input%Tau(Elem_Idx,Line_Idx) /= MISSING_VALUE_REAL) then
-
-       Cloud_Extinction = WATER_EXTINCTION
-
-       if (Cloud_Type == symbol%OPAQUE_ICE_TYPE .or. &
-           Cloud_Type == symbol%OVERSHOOTING_TYPE) then
-           Itemp = int(Input%Tc(Elem_Idx,Line_Idx))
-           select case (Itemp)
-            case (:199)    ; Cloud_Extinction = ICE_EXTINCTION1
-            case (200:219) ; Cloud_Extinction = ICE_EXTINCTION2
-            case (220:239) ; Cloud_Extinction = ICE_EXTINCTION3
-            case (240:259) ; Cloud_Extinction = ICE_EXTINCTION4
-            case (260:)    ; Cloud_Extinction = ICE_EXTINCTION5
-           end select
-       endif
-
-       if (Cloud_Type == symbol%CIRRUS_TYPE .or. &
-           Cloud_Type == symbol%OVERLAP_TYPE) then
-           Itemp = int(Input%Tc(Elem_Idx,Line_Idx))
-           select case (Itemp)
-            case (:199)    ; Cloud_Extinction = CIRRUS_EXTINCTION1
-            case (200:219) ; Cloud_Extinction = CIRRUS_EXTINCTION2
-            case (220:239) ; Cloud_Extinction = CIRRUS_EXTINCTION3
-            case (240:259) ; Cloud_Extinction = CIRRUS_EXTINCTION4
-            case (260:)    ; Cloud_Extinction = CIRRUS_EXTINCTION5
-          end select
-       endif
-
-       Cloud_Geometrical_Thickness = Input%Tau(Elem_Idx,Line_Idx) / Cloud_Extinction   !(km)
-       Cloud_Geometrical_Thickness = Cloud_Geometrical_Thickness * 1000.0 !(m)
-
-       Output%Geo_Thickness(Elem_Idx,Line_Idx) = Cloud_Geometrical_Thickness
-
-       if (Input%Tau(Elem_Idx,Line_Idx) < 2.0) then 
-          Cloud_Geometrical_Thickness_Top_Offset = Cloud_Geometrical_Thickness/2.0    !(m)
-       else
-          Cloud_Geometrical_Thickness_Top_Offset = 1000.0 / Cloud_Extinction !(m)
-       endif
-
-       Zc_Top_Max = Hght_Prof_RTM(Tropo_Level_RTM)
-       Zc_Base_Min = Hght_Prof_RTM(Sfc_Level_RTM)
-
-!-------------
-!  Compute cloud base
-!  Updated CldBaseQF (by ynoh, cira/csu, 24 July 2018) 
-!         CldBaseQF = 0 (Valid CBH from the statistical method by CIRA) 
-!                     1 (Invalid due to invalid upstream input or clear)
-!                     2 (Out of range, CBH lower than terrain)
-!                     3 (Out of range,  CBH < 0 km or CBH > 20 km )
-!                     4 (Invalid CBH > CTH)
-!                     5 (Valid CBH from the extinction method)
-!                     6 (Valid CBH from CWP_NWP for deep convection)
-!  Start with Qf  = 1 (Invalid due to invalid upstream input or clear)
-
-       Output%Zc_Base_Qf(Elem_Idx,Line_Idx) = 1   
-
-!     if (Cloud_Type == symbol%CIRRUS_TYPE .and. Input%Tau(Elem_Idx,Line_Idx) < 1.0) then
-!
-       Output%Zc_Base(Elem_Idx,Line_Idx) = min(Input%Zc(Elem_Idx,Line_Idx), &
-                                           max(Zc_Base_Min,  &
-                                           Input%Zc(Elem_Idx,Line_Idx) - Cloud_Geometrical_Thickness))
-       Output%Zc_Base_Qf(Elem_Idx,Line_Idx) = 5
-       if (Input%Zc(Elem_Idx,Line_Idx) - Cloud_Geometrical_Thickness < Zc_Base_Min)  Output%Zc_Base_Qf(Elem_Idx,Line_Idx) = 2
-       if (Input%Zc(Elem_Idx,Line_Idx) - Cloud_Geometrical_Thickness >= Input%Zc(Elem_Idx,Line_Idx)) then
-           Output%Zc_Base_Qf(Elem_Idx,Line_Idx) = 4
-           Output%Zc_Base(Elem_Idx,Line_Idx) = MISSING_VALUE_REAL
-       endif
-!     else
-
-!-------------
-       if (Input%Tau(Elem_Idx,Line_Idx) > 1.0 .and. (Input%CWP(Elem_Idx,Line_Idx)  > 0 .or. Input%CWP_nwp(Elem_Idx,Line_Idx) > 0)) then
-         call CIRA_base_hgt(Input%Zc(Elem_Idx,Line_Idx),Input%CWP(Elem_Idx,Line_Idx), Input%CWP_NWP(Elem_Idx,Line_Idx) ,&
-              Input%LCL(Elem_Idx,Line_Idx),Input%CCL(Elem_Idx,Line_Idx),Input%Surface_Elevation(Elem_Idx,Line_Idx), &
-              Cloud_Geometrical_Thickness_eff,Output%Zc_Base(Elem_Idx,Line_Idx),Output%Zc_Base_Qf(Elem_Idx,Line_Idx))
-       endif
-!-------------
-
-!     endif 
-
-       ! compute Pc_Base from Zc_Base
-       call KNOWING_Z_COMPUTE_T_P(Output%Pc_Base(Elem_Idx,Line_Idx),Output%Tc_Base(Elem_Idx,Line_Idx),Output%Zc_Base(Elem_Idx,Line_Idx),Ilev)
-
-!ynoh (cira/csu) for ccl mode 3
-       call KNOWING_Z_COMPUTE_T_P(Output%Pc_Lower_Base(Elem_Idx,Line_Idx),R4_Dummy, &
-            max(Input%Surface_Elevation(Elem_Idx,Line_Idx),min(Output%Zc_Base(Elem_Idx,Line_Idx),(Input%LCL(Elem_Idx,Line_Idx)+Input%CCL(Elem_Idx,Line_Idx))*0.5)),Ilev)
-
-!(
-
- endif
-
-
- !---- null profile pointers each time  - REALLY?
- CALL NULL_PIX_POINTERS(Input, RTM_NWP)
-
- end do Element_Loop
-
-end do Line_Loop
-
-!Diag%Array_1 = Output%Pc_Base
-!Diag%Array_2 = Output%Zc_Base
-
-end subroutine CLOUD_BASE_ALGORITHM
-
-!----------------------------------------------------------------------------
-! Function INTERPOLATE_PROFILE_LOCAL
-!
-! general interpoLation routine for profiles
-!
-! input:
-! lonx - longitude weighting factor
-! Latx = Latitude weighting factor
-! z1 = data(ilon, iLat)
-! z2 = data(ilonx,iLat)
-! z3 = data(ilon,iLatx)
-! z4 = data(ilonx,iLatx)
-!
-! output:
-! z = interpoLated profile
-!
-!
-!---------------------------------------------------------------------------
- function INTERPOLATE_PROFILE_LOCAL(z1,z2,z3,z4,lonx,Latx) result(z)
-
-  real, dimension(:), intent(in):: z1
-  real, dimension(:), intent(in):: z2
-  real, dimension(:), intent(in):: z3
-  real, dimension(:), intent(in):: z4
-  real, intent(in):: lonx
-  real, intent(in):: Latx
-  real, dimension(size(z1)):: z
-
-  !--- linear inteprpoLation scheme
-  z =  (1.0-lonx) * ((1.0-Latx) * z1 + (Latx)* z3) + &
-           (lonx) * ((1.0-Latx) * z2 + (Latx)* z4)
-
- end function INTERPOLATE_PROFILE_LOCAL
-
-
-!------------------------------------------------------------------------------
-! Null Pixel Level Pointers 
-!------------------------------------------------------------------------------
-subroutine NULL_PIX_POINTERS(Input, RTM_NWP)
-
-   type(acha_input_struct), intent(inout) :: Input
-   type(acha_rtm_nwp_struct), intent(inout) :: RTM_NWP
-
-   RTM_NWP%T_Prof => null()
-   RTM_NWP%T_Prof_1 => null() 
-   RTM_NWP%T_Prof_2 => null() 
-   RTM_NWP%T_Prof_3 => null()
-
-   RTM_NWP%Z_Prof => null() 
-   RTM_NWP%Z_Prof_1 => null() 
-   RTM_NWP%Z_Prof_2 => null() 
-   RTM_NWP%Z_Prof_3 => null() 
-
-   if (Input%Chan_On_67um == sym%YES) then
-     RTM_NWP%Atm_Rad_Prof_67um =>  null()
-     RTM_NWP%Atm_Trans_Prof_67um =>  null()
-     RTM_NWP%Black_Body_Rad_Prof_67um => null()
-   endif
-   if (Input%Chan_On_85um == sym%YES) then
-     RTM_NWP%Atm_Rad_Prof_85um =>  null()
-     RTM_NWP%Atm_Trans_Prof_85um =>  null()
-   endif
-   if (Input%Chan_On_11um == sym%YES) then
-     RTM_NWP%Atm_Rad_Prof_11um => null()
-     RTM_NWP%Atm_Trans_Prof_11um => null()
-     RTM_NWP%Black_Body_Rad_Prof_11um => null()
-   endif
-   if (Input%Chan_On_12um == sym%YES) then
-     RTM_NWP%Atm_Rad_Prof_12um => null()
-     RTM_NWP%Atm_Trans_Prof_12um => null()
-   endif
-   if (Input%Chan_On_133um == sym%YES) then
-     RTM_NWP%Atm_Rad_Prof_133um => null()
-     RTM_NWP%Atm_Trans_Prof_133um => null()
-   endif
- 
-end subroutine NULL_PIX_POINTERS
-
-!-----------------------------------------------------------------
-! InterpoLate within profiles knowing Z to determine T and P
-!-----------------------------------------------------------------
-   subroutine KNOWING_Z_COMPUTE_T_P(P,T,Z,Ilev)
-
-     real, intent(in):: Z
-     real, intent(out):: T
-     real, intent(out):: P
-     integer, intent(out):: Ilev
-     real:: dp
-     real:: dt
-     real:: dz
-
-     !--- interpoLate pressure profile
-     call LOCATE(Hght_Prof_RTM,Num_Levels_RTM_Prof,Z,Ilev)
-     Ilev = max(1,min(Num_Levels_RTM_Prof-1,Ilev))
-
-     dp = Press_Prof_RTM(Ilev+1) - Press_Prof_RTM(Ilev)
-     dt = Temp_Prof_RTM(Ilev+1) - Temp_Prof_RTM(Ilev)
-     dz = Hght_Prof_RTM(Ilev+1) - Hght_Prof_RTM(Ilev)
-
-     !--- perform interpoLation
-     if (dz /= 0.0) then
-           T = Temp_Prof_RTM(Ilev) + dt/dz * (Z - Hght_Prof_RTM(Ilev))
-           P = Press_Prof_RTM(Ilev) + dp/dz * (Z - Hght_Prof_RTM(Ilev))
-     else
-           T = Temp_Prof_RTM(Ilev)
-           P = Press_Prof_RTM(Ilev)
-     endif
-
-   end subroutine KNOWING_Z_COMPUTE_T_P
-
-!-----------------------------------------------------------------
-! CIRA's base code, interpret from IDL codes 
-!-----------------------------------------------------------------
-!ynoh (cira/csu)
-subroutine CIRA_base_hgt(Zc,Cwp,Cwp_nwp,LCL,CCL,Surf_Elev,Cloud_Geometrical_Thickness,Zc_base,cbh_qf)
-
-  real(kind=real4), intent(in) :: Zc,Cwp,Cwp_nwp,LCL,CCL,Surf_Elev
-
-  real(kind=real4), intent(out) :: Cloud_Geometrical_Thickness,Zc_base
-  integer(kind=int1),intent(out) :: cbh_qf
-
-! local variables
-  real(kind=real4) :: Zc_local, Cwp_local,Cwp_nwp_local
-  integer :: ibin
-  integer :: ibin_max
-  integer :: icwp
-  real :: zdelta
-  real :: slope
-  real :: yint
-  integer, parameter :: nbin = 9, npara = 6, ncwp = 2
-  real,dimension(nbin,npara,ncwp) :: regr_coeff
-  real,parameter :: mincbh = 0.0, maxcbh = 20.0*1000
-
-!                      min cth       ;slope         y-int          r2      n    median CWP
-  regr_coeff(1,:,1) = [0.00000,      2.25812,     0.405590,    0.0236532, 5921., 0.0710000]
-  regr_coeff(1,:,2) = [0.00000,     0.997031,     0.516989,    0.0900793, 5881., 0.0710000]
-  regr_coeff(2,:,1) = [2.00000,      6.10980,     0.664818,    0.0664282, 3624., 0.114000]
-  regr_coeff(2,:,2) = [2.00000,     0.913021,      1.35698,    0.0735795, 3621., 0.114000]
-  regr_coeff(3,:,1) = [4.00000,      11.5574,      1.22527,    0.0519277, 2340., 0.110000]
-  regr_coeff(3,:,2) = [4.00000,      1.37922,      2.58661,    0.0695758, 2329., 0.110000]
-  regr_coeff(4,:,1) = [6.00000,      14.5382,      1.70570,    0.0568334, 2535., 0.123000]
-  regr_coeff(4,:,2) = [6.00000,      1.68711,      3.62280,    0.0501604, 2511., 0.123000]
-  regr_coeff(5,:,1) = [8.00000,      9.09855,      2.14247,    0.0218789, 3588., 0.131000]
-  regr_coeff(5,:,2) = [8.00000,      2.45953,      3.86957,    0.0727178, 3579., 0.131000]
-  regr_coeff(6,:,1) = [10.0000,      13.5772,      1.86554,    0.0497041, 4249., 0.127000]
-  regr_coeff(6,:,2) = [10.0000,      4.83087,      3.53141,     0.160008, 4218., 0.127000]
-  regr_coeff(7,:,1) = [12.0000,      16.0793,      1.64965,    0.0695903, 3154., 0.115000]
-  regr_coeff(7,:,2) = [12.0000,      5.05173,      3.98610,     0.180965, 3121., 0.115000]
-  regr_coeff(8,:,1) = [14.0000,      14.6030,      2.00010,    0.0429476, 2744., 0.116000]
-  regr_coeff(8,:,2) = [14.0000,      6.06439,      4.03301,     0.239837, 2717., 0.116000]
-  regr_coeff(9,:,1) = [16.0000,      9.26580,      2.29640,    0.0113376, 1455., 0.0990000]
-  regr_coeff(9,:,2) = [16.0000,      6.60431,      3.26442,     0.227116, 1449., 0.0990000]
-
-! start retrieval
-       Zc_local = Zc/1000.
-       CWP_local = CWP/1000.
-       Cwp_nwp_local = Cwp_nwp/1000.
-
-! force large cwp to cap at 1.2 kg/m2
-       if (Zc_local > 20.0)    Zc_local = 20.0
-       if (CWP_local > 1.2)    CWP_local = 1.2
-       if (Cwp_nwp_local > 1.2) Cwp_nwp_local = 1.2
-       if (Cwp_local < 0 .and. Cwp_nwp_local > 0) Cwp_local = Cwp_nwp_local
-
-       zdelta = 2.0
-       ibin = floor(Zc_local)/floor(zdelta)+1
-       ibin_max = 9
-
-       if (Zc_local > 18.0 .or. ibin > ibin_max)    ibin = ibin_max
-
-       icwp = 1
-       if (CWP_local > regr_coeff(ibin,6,1))  icwp = 2
-
-       slope = regr_coeff(ibin,2,icwp)
-       yint = regr_coeff(ibin,3,icwp)
-       Cloud_Geometrical_Thickness = slope*CWP_local+yint
-       Cloud_Geometrical_Thickness = Cloud_Geometrical_Thickness*1000.
-
-       Zc_Base = Zc_local*1000-Cloud_Geometrical_Thickness
-
-  cbh_qf = 0 
-!--------
-!ynoh (cira/csu)
-! An adjustment for large cwp greater than 1.0 kg/m2 (no cloud type involved)            
-! updated for a smooth transition (20170109)
-! updated for (LCL+CCL)*0.5 (20171227)
-    if ( (LCL+CCL)*0.5 > Surf_Elev .and. (LCL+CCL)*0.5 < Zc_Base ) then
-       if ( Cwp_local >= 1.2 ) Zc_Base = (LCL+CCL)*0.5
-       if ( Cwp_local >= 1.0 .and. Cwp_local < 1.2 ) &
-            Zc_Base = Zc_Base + ((LCL+CCL)*0.5-Zc_Base)*((Cwp_local-1.0)/(1.2-1.0) )
-            cbh_qf = 6 
-    endif
-!--------
-
-! apply quality flag
-       if (Zc_Base < Surf_Elev) then
-           Zc_Base = Surf_Elev
-           cbh_qf = 2
-       endif
-
-       if (Zc_Base < mincbh .or. Zc_Base > maxcbh) then
-           Zc_Base = MISSING_VALUE_REAL
-           cbh_qf = 3
-       endif
-
-       if (Zc_Base >= Zc_local*1000) then
-           Zc_Base = MISSING_VALUE_REAL
-           cbh_qf = 4
-       endif
-
-end subroutine CIRA_base_hgt
-
-!----------------------------------------------------------------------
-! End of Module
-!----------------------------------------------------------------------
-
-end module CLOUD_BASE
+! $Id: cloud_base_module.f90 4062 2021-01-12 04:02:19Z yli $
+module CLOUD_BASE
+!---------------------------------------------------------------------
+! This module houses the routines associated with...
+!
+! Author: 
+!
+! Reference:
+!
+!----------------------------------------------------------------------
+  use CLOUD_BASE_SERVICES
+  
+  implicit none
+
+  public:: CLOUD_BASE_ALGORITHM
+
+  private:: INTERPOLATE_PROFILE_LOCAL
+  private:: NULL_PIX_POINTERS 
+  private:: KNOWING_Z_COMPUTE_T_P 
+
+  !--- include the non-system specific variables
+  include 'cloud_base_parameters.inc'
+
+  !--- interpoLated profiles
+  real, private, dimension(Num_Levels_RTM_Prof) :: Temp_Prof_RTM
+  real, private, dimension(Num_Levels_RTM_Prof) :: Press_Prof_RTM
+  real, private, dimension(Num_Levels_RTM_Prof) :: Hght_Prof_RTM
+  integer, private:: Sfc_Level_RTM
+  integer, private:: Tropo_Level_RTM
+
+  real, private, PARAMETER:: MISSING_VALUE_REAL = -999.0
+  integer, private, PARAMETER:: MISSING_VALUE_INTEGER = -999
+
+  contains 
+
+!------------------------------------------------------------------------------
+! Cloud BaseE Height Algorithm 
+!
+! Author: Andrew Heidinger, NOAA
+!
+! Assumptions
+!
+! Limitations
+!
+! NOTE.  This algorithm use the same input and output structures as 
+!        the AWG_CLOUD_HEIGHT_ALGORITHM.
+!        Do not overwrite elements of the Output structure expect those
+!        generated here.
+!
+!      Output%Tau
+!      Output%Ec
+!      Output%Reff
+!      Output%Zc_Base
+!      Output%Pc_Base
+!ynoh (cira/csu) for ccl mode 3
+!      Output%Pc_Lower_Base
+!
+!----------------------------------------------------------------------
+! modification history
+!
+!------------------------------------------------------------------------------
+  subroutine CLOUD_BASE_ALGORITHM(Input, Symbol, Output, Diag)
+
+  !===============================================================================
+  !  Argument Declaration
+  !==============================================================================
+
+  type(symbol_acha), intent(inout) :: Symbol
+  type(acha_input_struct), intent(inout) :: Input
+  type(acha_output_struct), intent(inout) :: Output
+  type(acha_diag_struct), intent(inout), optional :: Diag
+  integer, save:: Diag_Warning_Flag = 0
+
+
+  !===============================================================================
+  !  Pixel level RTM structure
+  !===============================================================================
+ 
+  type(acha_rtm_nwp_struct) :: RTM_NWP
+
+  !===============================================================================
+  !  Local Variable Declaration
+  !===============================================================================
+
+  integer:: Elem_Idx
+  integer:: Line_Idx
+  real:: Inwp_Weight
+  real:: Jnwp_Weight
+
+  integer:: Cloud_Type
+
+  !--- scalar local variables
+  real (kind=real4):: Cloud_Extinction
+  real (kind=real4):: Cloud_Geometrical_Thickness
+  real (kind=real4):: Cloud_Geometrical_Thickness_Top_Offset
+  real (kind=real4):: Cloud_Geometrical_Thickness_eff
+  real (kind=real4):: Zc_Top_Max
+  real (kind=real4):: Zc_Base_Min
+  real (kind=real4):: R4_Dummy
+
+  integer (kind=int4):: Itemp
+  integer (kind=int4):: Ilev
+
+!-----------------------------------------------------------------------
+! BEGIN EXECUTABLE CODE
+!-----------------------------------------------------------------------
+
+   !-------------------------------------------------------------------------
+   ! Initialization
+   !-------------------------------------------------------------------------
+   Output%Zc_Base = MISSING_VALUE_REAL
+   Output%Pc_Base = MISSING_VALUE_REAL
+
+!ynoh (cira/csu) for ccl mode 3
+   Output%Pc_Lower_Base = MISSING_VALUE_REAL  
+
+   !--- initialize diagnostic output
+   if (present(Diag) .and. Diag_Warning_Flag == 0) then
+      print *, "CLAVR-x / Cloud Base ===>  Diagnostic Output Turned On"
+      Diag_Warning_Flag = 1
+   endif
+   if (present(Diag)) Diag%Array_1 = Missing_Value_Real4
+   if (present(Diag)) Diag%Array_2 = Missing_Value_Real4
+   if (present(Diag)) Diag%Array_3 = Missing_Value_Real4
+
+   !--------------------------------------------------------------------------
+   ! loop over pixels in scanlines
+   !--------------------------------------------------------------------------
+   Line_loop: do Line_Idx = Line_Idx_min,Input%Number_of_Lines + Line_Idx_min - 1
+
+    Element_Loop:   do Elem_Idx = 1, Input%Number_of_Elements
+
+     if (Input%Invalid_Data_Mask(Elem_Idx,Line_Idx) == symbol%YES) cycle
+     if ((Input%Elem_Idx_Nwp(Elem_Idx,Line_Idx) <= 0) .or. &
+         (Input%Line_Idx_Nwp(Elem_Idx,Line_Idx) <= 0)) then
+         cycle
+    endif
+
+    !---- null profile pointers each time - WCS3
+    call NULL_PIX_POINTERS(Input, RTM_NWP)
+
+    !--- for convenience, save nwp indices to local variables
+    Inwp_Weight = Input%Longitude_Interp_Weight_NWP(Elem_Idx,Line_Idx)
+    Jnwp_Weight = Input%Latitude_Interp_Weight_NWP(Elem_Idx,Line_Idx)
+    Cloud_Type = Input%Cloud_Type(Elem_Idx,Line_Idx)
+
+    !-----------------------------------------------------------------------
+    ! include code to setup local profiles correctly 
+    !-----------------------------------------------------------------------
+    
+    !Call Services module
+    call FETCH_PIXEL_RTM_NWP(Input, Symbol, &
+                             Elem_Idx,Line_Idx, RTM_NWP)
+    
+    Sfc_Level_RTM = RTM_NWP%Sfc_Level
+    Tropo_Level_RTM = RTM_NWP%Tropo_Level
+    
+    Press_Prof_RTM =  RTM_NWP%P_Prof
+
+    !do smoothing routines here - WCS3
+    if (RTM_NWP%Smooth_Nwp_Fields_Flag_Temp == symbol%YES) then
+
+       !--- height profile       
+       Hght_Prof_RTM = INTERPOLATE_PROFILE_LOCAL( RTM_NWP%Z_Prof, &
+                                            RTM_NWP%Z_Prof_1, &
+                                            RTM_NWP%Z_Prof_2, &
+                                            RTM_NWP%Z_Prof_3, &
+                                            Inwp_Weight,Jnwp_Weight)
+
+      !--- temperature profile
+      Temp_Prof_RTM = INTERPOLATE_PROFILE_LOCAL( RTM_NWP%T_Prof, &
+                                           RTM_NWP%T_Prof_1, &
+                                           RTM_NWP%T_Prof_2, &
+                                           RTM_NWP%T_Prof_3, &
+                                           Inwp_Weight,Jnwp_Weight)
+
+    
+    else
+
+       Hght_Prof_RTM = RTM_NWP%Z_Prof
+       Temp_Prof_RTM = RTM_NWP%T_Prof
+    
+    endif
+
+    !-----------------------------------------------------------------------------
+    !--- Cloud Base and Top
+    !---
+    !--- Note 1. Extinction values are in km^(-1)
+    !--- Note 2. All heights and thickness are converted to meters
+    !-----------------------------------------------------------------------------
+    if (Input%Zc(Elem_Idx,Line_Idx) /= MISSING_VALUE_REAL .and. &
+        Input%Tau(Elem_Idx,Line_Idx) /= MISSING_VALUE_REAL) then
+
+       Cloud_Extinction = WATER_EXTINCTION
+
+       if (Cloud_Type == symbol%OPAQUE_ICE_TYPE .or. &
+           Cloud_Type == symbol%OVERSHOOTING_TYPE) then
+           Itemp = int(Input%Tc(Elem_Idx,Line_Idx))
+           select case (Itemp)
+            case (:199)    ; Cloud_Extinction = ICE_EXTINCTION1
+            case (200:219) ; Cloud_Extinction = ICE_EXTINCTION2
+            case (220:239) ; Cloud_Extinction = ICE_EXTINCTION3
+            case (240:259) ; Cloud_Extinction = ICE_EXTINCTION4
+            case (260:)    ; Cloud_Extinction = ICE_EXTINCTION5
+           end select
+       endif
+
+       if (Cloud_Type == symbol%CIRRUS_TYPE .or. &
+           Cloud_Type == symbol%OVERLAP_TYPE) then
+           Itemp = int(Input%Tc(Elem_Idx,Line_Idx))
+           select case (Itemp)
+            case (:199)    ; Cloud_Extinction = CIRRUS_EXTINCTION1
+            case (200:219) ; Cloud_Extinction = CIRRUS_EXTINCTION2
+            case (220:239) ; Cloud_Extinction = CIRRUS_EXTINCTION3
+            case (240:259) ; Cloud_Extinction = CIRRUS_EXTINCTION4
+            case (260:)    ; Cloud_Extinction = CIRRUS_EXTINCTION5
+          end select
+       endif
+
+       Cloud_Geometrical_Thickness = Input%Tau(Elem_Idx,Line_Idx) / Cloud_Extinction   !(km)
+       Cloud_Geometrical_Thickness = Cloud_Geometrical_Thickness * 1000.0 !(m)
+
+       Output%Geo_Thickness(Elem_Idx,Line_Idx) = Cloud_Geometrical_Thickness
+
+       if (Input%Tau(Elem_Idx,Line_Idx) < 2.0) then 
+          Cloud_Geometrical_Thickness_Top_Offset = Cloud_Geometrical_Thickness/2.0    !(m)
+       else
+          Cloud_Geometrical_Thickness_Top_Offset = 1000.0 / Cloud_Extinction !(m)
+       endif
+
+       Zc_Top_Max = Hght_Prof_RTM(Tropo_Level_RTM)
+       Zc_Base_Min = Hght_Prof_RTM(Sfc_Level_RTM)
+
+!-------------
+!  Compute cloud base
+!  Updated CldBaseQF (by ynoh, cira/csu, 24 July 2018) 
+!         CldBaseQF = 0 (Valid CBH from the statistical method by CIRA) 
+!                     1 (Invalid due to invalid upstream input or clear)
+!                     2 (Out of range, CBH lower than terrain)
+!                     3 (Out of range,  CBH < 0 km or CBH > 20 km )
+!                     4 (Invalid CBH > CTH)
+!                     5 (Valid CBH from the extinction method)
+!                     6 (Valid CBH from CWP_NWP for deep convection)
+!  Start with Qf  = 1 (Invalid due to invalid upstream input or clear)
+
+       Output%Zc_Base_Qf(Elem_Idx,Line_Idx) = 1   
+
+!     if (Cloud_Type == symbol%CIRRUS_TYPE .and. Input%Tau(Elem_Idx,Line_Idx) < 1.0) then
+!
+       Output%Zc_Base(Elem_Idx,Line_Idx) = min(Input%Zc(Elem_Idx,Line_Idx), &
+                                           max(Zc_Base_Min,  &
+                                           Input%Zc(Elem_Idx,Line_Idx) - Cloud_Geometrical_Thickness))
+       Output%Zc_Base_Qf(Elem_Idx,Line_Idx) = 5
+       if (Input%Zc(Elem_Idx,Line_Idx) - Cloud_Geometrical_Thickness < Zc_Base_Min)  Output%Zc_Base_Qf(Elem_Idx,Line_Idx) = 2
+       if (Input%Zc(Elem_Idx,Line_Idx) - Cloud_Geometrical_Thickness >= Input%Zc(Elem_Idx,Line_Idx)) then
+           Output%Zc_Base_Qf(Elem_Idx,Line_Idx) = 4
+           Output%Zc_Base(Elem_Idx,Line_Idx) = MISSING_VALUE_REAL
+       endif
+!     else
+
+!-------------
+       if (Input%Tau(Elem_Idx,Line_Idx) > 1.0 .and. (Input%CWP(Elem_Idx,Line_Idx)  > 0 .or. Input%CWP_nwp(Elem_Idx,Line_Idx) > 0)) then
+         call CIRA_base_hgt(Input%Zc(Elem_Idx,Line_Idx),Input%CWP(Elem_Idx,Line_Idx), Input%CWP_NWP(Elem_Idx,Line_Idx) ,&
+              Input%LCL(Elem_Idx,Line_Idx),Input%CCL(Elem_Idx,Line_Idx),Input%Surface_Elevation(Elem_Idx,Line_Idx), &
+              Cloud_Geometrical_Thickness_eff,Output%Zc_Base(Elem_Idx,Line_Idx),Output%Zc_Base_Qf(Elem_Idx,Line_Idx))
+       endif
+!-------------
+
+!     endif 
+
+       ! compute Pc_Base from Zc_Base
+       call KNOWING_Z_COMPUTE_T_P(Output%Pc_Base(Elem_Idx,Line_Idx),Output%Tc_Base(Elem_Idx,Line_Idx),Output%Zc_Base(Elem_Idx,Line_Idx),Ilev)
+
+!ynoh (cira/csu) for ccl mode 3
+       call KNOWING_Z_COMPUTE_T_P(Output%Pc_Lower_Base(Elem_Idx,Line_Idx),R4_Dummy, &
+            max(Input%Surface_Elevation(Elem_Idx,Line_Idx),min(Output%Zc_Base(Elem_Idx,Line_Idx),(Input%LCL(Elem_Idx,Line_Idx)+Input%CCL(Elem_Idx,Line_Idx))*0.5)),Ilev)
+
+!(
+
+ endif
+
+
+ !---- null profile pointers each time  - REALLY?
+ CALL NULL_PIX_POINTERS(Input, RTM_NWP)
+
+ end do Element_Loop
+
+end do Line_Loop
+
+!Diag%Array_1 = Output%Pc_Base
+!Diag%Array_2 = Output%Zc_Base
+
+end subroutine CLOUD_BASE_ALGORITHM
+
+!----------------------------------------------------------------------------
+! Function INTERPOLATE_PROFILE_LOCAL
+!
+! general interpoLation routine for profiles
+!
+! input:
+! lonx - longitude weighting factor
+! Latx = Latitude weighting factor
+! z1 = data(ilon, iLat)
+! z2 = data(ilonx,iLat)
+! z3 = data(ilon,iLatx)
+! z4 = data(ilonx,iLatx)
+!
+! output:
+! z = interpoLated profile
+!
+!
+!---------------------------------------------------------------------------
+ function INTERPOLATE_PROFILE_LOCAL(z1,z2,z3,z4,lonx,Latx) result(z)
+
+  real, dimension(:), intent(in):: z1
+  real, dimension(:), intent(in):: z2
+  real, dimension(:), intent(in):: z3
+  real, dimension(:), intent(in):: z4
+  real, intent(in):: lonx
+  real, intent(in):: Latx
+  real, dimension(size(z1)):: z
+
+  !--- linear inteprpoLation scheme
+  z =  (1.0-lonx) * ((1.0-Latx) * z1 + (Latx)* z3) + &
+           (lonx) * ((1.0-Latx) * z2 + (Latx)* z4)
+
+ end function INTERPOLATE_PROFILE_LOCAL
+
+
+!------------------------------------------------------------------------------
+! Null Pixel Level Pointers 
+!------------------------------------------------------------------------------
+subroutine NULL_PIX_POINTERS(Input, RTM_NWP)
+
+   type(acha_input_struct), intent(inout) :: Input
+   type(acha_rtm_nwp_struct), intent(inout) :: RTM_NWP
+
+   RTM_NWP%T_Prof => null()
+   RTM_NWP%T_Prof_1 => null() 
+   RTM_NWP%T_Prof_2 => null() 
+   RTM_NWP%T_Prof_3 => null()
+
+   RTM_NWP%Z_Prof => null() 
+   RTM_NWP%Z_Prof_1 => null() 
+   RTM_NWP%Z_Prof_2 => null() 
+   RTM_NWP%Z_Prof_3 => null() 
+
+   if (Input%Chan_On_67um == sym%YES) then
+     RTM_NWP%Atm_Rad_Prof_67um =>  null()
+     RTM_NWP%Atm_Trans_Prof_67um =>  null()
+     RTM_NWP%Black_Body_Rad_Prof_67um => null()
+   endif
+   if (Input%Chan_On_85um == sym%YES) then
+     RTM_NWP%Atm_Rad_Prof_85um =>  null()
+     RTM_NWP%Atm_Trans_Prof_85um =>  null()
+   endif
+   if (Input%Chan_On_11um == sym%YES) then
+     RTM_NWP%Atm_Rad_Prof_11um => null()
+     RTM_NWP%Atm_Trans_Prof_11um => null()
+     RTM_NWP%Black_Body_Rad_Prof_11um => null()
+   endif
+   if (Input%Chan_On_12um == sym%YES) then
+     RTM_NWP%Atm_Rad_Prof_12um => null()
+     RTM_NWP%Atm_Trans_Prof_12um => null()
+   endif
+   if (Input%Chan_On_133um == sym%YES) then
+     RTM_NWP%Atm_Rad_Prof_133um => null()
+     RTM_NWP%Atm_Trans_Prof_133um => null()
+   endif
+ 
+end subroutine NULL_PIX_POINTERS
+
+!-----------------------------------------------------------------
+! InterpoLate within profiles knowing Z to determine T and P
+!-----------------------------------------------------------------
+   subroutine KNOWING_Z_COMPUTE_T_P(P,T,Z,Ilev)
+
+     real, intent(in):: Z
+     real, intent(out):: T
+     real, intent(out):: P
+     integer, intent(out):: Ilev
+     real:: dp
+     real:: dt
+     real:: dz
+
+     !--- interpoLate pressure profile
+     call LOCATE(Hght_Prof_RTM,Num_Levels_RTM_Prof,Z,Ilev)
+     Ilev = max(1,min(Num_Levels_RTM_Prof-1,Ilev))
+
+     dp = Press_Prof_RTM(Ilev+1) - Press_Prof_RTM(Ilev)
+     dt = Temp_Prof_RTM(Ilev+1) - Temp_Prof_RTM(Ilev)
+     dz = Hght_Prof_RTM(Ilev+1) - Hght_Prof_RTM(Ilev)
+
+     !--- perform interpoLation
+     if (dz /= 0.0) then
+           T = Temp_Prof_RTM(Ilev) + dt/dz * (Z - Hght_Prof_RTM(Ilev))
+           P = Press_Prof_RTM(Ilev) + dp/dz * (Z - Hght_Prof_RTM(Ilev))
+     else
+           T = Temp_Prof_RTM(Ilev)
+           P = Press_Prof_RTM(Ilev)
+     endif
+
+   end subroutine KNOWING_Z_COMPUTE_T_P
+
+!-----------------------------------------------------------------
+! CIRA's base code, interpret from IDL codes 
+!-----------------------------------------------------------------
+!ynoh (cira/csu)
+subroutine CIRA_base_hgt(Zc,Cwp,Cwp_nwp,LCL,CCL,Surf_Elev,Cloud_Geometrical_Thickness,Zc_base,cbh_qf)
+
+  real(kind=real4), intent(in) :: Zc,Cwp,Cwp_nwp,LCL,CCL,Surf_Elev
+
+  real(kind=real4), intent(out) :: Cloud_Geometrical_Thickness,Zc_base
+  integer(kind=int1),intent(out) :: cbh_qf
+
+! local variables
+  real(kind=real4) :: Zc_local, Cwp_local,Cwp_nwp_local
+  integer :: ibin
+  integer :: ibin_max
+  integer :: icwp
+  real :: zdelta
+  real :: slope
+  real :: yint
+  integer, parameter :: nbin = 9, npara = 6, ncwp = 2
+  real,dimension(nbin,npara,ncwp) :: regr_coeff
+  real,parameter :: mincbh = 0.0, maxcbh = 20.0*1000
+
+!                      min cth       ;slope         y-int          r2      n    median CWP
+  regr_coeff(1,:,1) = [0.00000,      2.25812,     0.405590,    0.0236532, 5921., 0.0710000]
+  regr_coeff(1,:,2) = [0.00000,     0.997031,     0.516989,    0.0900793, 5881., 0.0710000]
+  regr_coeff(2,:,1) = [2.00000,      6.10980,     0.664818,    0.0664282, 3624., 0.114000]
+  regr_coeff(2,:,2) = [2.00000,     0.913021,      1.35698,    0.0735795, 3621., 0.114000]
+  regr_coeff(3,:,1) = [4.00000,      11.5574,      1.22527,    0.0519277, 2340., 0.110000]
+  regr_coeff(3,:,2) = [4.00000,      1.37922,      2.58661,    0.0695758, 2329., 0.110000]
+  regr_coeff(4,:,1) = [6.00000,      14.5382,      1.70570,    0.0568334, 2535., 0.123000]
+  regr_coeff(4,:,2) = [6.00000,      1.68711,      3.62280,    0.0501604, 2511., 0.123000]
+  regr_coeff(5,:,1) = [8.00000,      9.09855,      2.14247,    0.0218789, 3588., 0.131000]
+  regr_coeff(5,:,2) = [8.00000,      2.45953,      3.86957,    0.0727178, 3579., 0.131000]
+  regr_coeff(6,:,1) = [10.0000,      13.5772,      1.86554,    0.0497041, 4249., 0.127000]
+  regr_coeff(6,:,2) = [10.0000,      4.83087,      3.53141,     0.160008, 4218., 0.127000]
+  regr_coeff(7,:,1) = [12.0000,      16.0793,      1.64965,    0.0695903, 3154., 0.115000]
+  regr_coeff(7,:,2) = [12.0000,      5.05173,      3.98610,     0.180965, 3121., 0.115000]
+  regr_coeff(8,:,1) = [14.0000,      14.6030,      2.00010,    0.0429476, 2744., 0.116000]
+  regr_coeff(8,:,2) = [14.0000,      6.06439,      4.03301,     0.239837, 2717., 0.116000]
+  regr_coeff(9,:,1) = [16.0000,      9.26580,      2.29640,    0.0113376, 1455., 0.0990000]
+  regr_coeff(9,:,2) = [16.0000,      6.60431,      3.26442,     0.227116, 1449., 0.0990000]
+
+! start retrieval
+       Zc_local = Zc/1000.
+       CWP_local = CWP/1000.
+       Cwp_nwp_local = Cwp_nwp/1000.
+
+! force large cwp to cap at 1.2 kg/m2
+       if (Zc_local > 20.0)    Zc_local = 20.0
+       if (CWP_local > 1.2)    CWP_local = 1.2
+       if (Cwp_nwp_local > 1.2) Cwp_nwp_local = 1.2
+       if (Cwp_local < 0 .and. Cwp_nwp_local > 0) Cwp_local = Cwp_nwp_local
+
+       zdelta = 2.0
+       ibin = floor(Zc_local)/floor(zdelta)+1
+       ibin_max = 9
+
+       if (Zc_local > 18.0 .or. ibin > ibin_max)    ibin = ibin_max
+       if (ibin < 1) ibin = 1
+
+       icwp = 1
+       if (CWP_local > regr_coeff(ibin,6,1))  icwp = 2
+
+       slope = regr_coeff(ibin,2,icwp)
+       yint = regr_coeff(ibin,3,icwp)
+       Cloud_Geometrical_Thickness = slope*CWP_local+yint
+       Cloud_Geometrical_Thickness = Cloud_Geometrical_Thickness*1000.
+
+       Zc_Base = Zc_local*1000-Cloud_Geometrical_Thickness
+
+  cbh_qf = 0 
+!--------
+!ynoh (cira/csu)
+! An adjustment for large cwp greater than 1.0 kg/m2 (no cloud type involved)            
+! updated for a smooth transition (20170109)
+! updated for (LCL+CCL)*0.5 (20171227)
+    if ( (LCL+CCL)*0.5 > Surf_Elev .and. (LCL+CCL)*0.5 < Zc_Base ) then
+       if ( Cwp_local >= 1.2 ) Zc_Base = (LCL+CCL)*0.5
+       if ( Cwp_local >= 1.0 .and. Cwp_local < 1.2 ) &
+            Zc_Base = Zc_Base + ((LCL+CCL)*0.5-Zc_Base)*((Cwp_local-1.0)/(1.2-1.0) )
+            cbh_qf = 6 
+    endif
+!--------
+
+! apply quality flag
+       if (Zc_Base < Surf_Elev) then
+           Zc_Base = Surf_Elev
+           cbh_qf = 2
+       endif
+
+       if (Zc_Base < mincbh .or. Zc_Base > maxcbh) then
+           Zc_Base = MISSING_VALUE_REAL
+           cbh_qf = 3
+       endif
+
+       if (Zc_Base >= Zc_local*1000) then
+           Zc_Base = MISSING_VALUE_REAL
+           cbh_qf = 4
+       endif
+
+end subroutine CIRA_base_hgt
+
+!----------------------------------------------------------------------
+! End of Module
+!----------------------------------------------------------------------
+
+end module CLOUD_BASE
diff --git a/cloud_mask/ECM2/nbm_cloud_mask_clavrx_bridge_module.f90 b/cloud_mask/ECM2/nbm_cloud_mask_clavrx_bridge_module.f90
index 0cce2b3098efb14c7d9dc1e6c05fee1e6a4a3892..ff6f6241c733a6e0715d72e5bf45c351fca4d212 100644
--- a/cloud_mask/ECM2/nbm_cloud_mask_clavrx_bridge_module.f90
+++ b/cloud_mask/ECM2/nbm_cloud_mask_clavrx_bridge_module.f90
@@ -115,7 +115,9 @@ module ECM2_CLOUD_MASK_CLAVRX_BRIDGE
    private :: BETA_11_133_OVERLAP_TEST
    private :: WATER_EDGE_FILTER
    private :: MODIS_AQUA_SBAF
+   private :: ABI_GOES16_SBAF
    private :: SBAF_QUAD
+   private :: APPLY_SBAF
 
    !--- define these structure as module wide
    type(mask_input), private :: Input   
@@ -140,6 +142,9 @@ module ECM2_CLOUD_MASK_CLAVRX_BRIDGE
    !Use_104um_Flag
    logical, private:: Use_104um_Flag
 
+   !SBAF coeffs
+    real, dimension(Nchan_Clavrx), private, save:: a, b, c
+
 contains
 
 !----------------------------------------------------------------------
@@ -245,6 +250,17 @@ contains
        call MESG( "ERROR: Catastrophic LHP Event, exiting" , level = verb_lev % DEFAULT)
        return
    endif
+
+   !---------------------------------------------------------------------
+   !  compute SBAF
+   !---------------------------------------------------------------------
+    if (index(Bayesian_Cloud_Mask_Name,"src-modis") > 0) then 
+       call MODIS_AQUA_SBAF(Sensor%WMO_Id)
+    endif
+    if (index(Bayesian_Cloud_Mask_Name,"src-abhi") > 0) then 
+      print *, "GOES16 SBAF Called"
+      call ABI_GOES16_SBAF(Sensor%WMO_Id)
+    endif
    
    !---------------------------------------------------------------------
    ! loop over pixels 
@@ -256,9 +272,9 @@ contains
          call SET_INPUT(i,j)
 
          !--- perform spectral band correction if needed
-         !if (index(Bayesian_Cloud_Mask_Name,"isccp") > 0) then 
-         !   call MODIS_AQUA_SBAF(Sensor%WMO_Id)
-         !endif
+         if (index(Bayesian_Cloud_Mask_Name,"src-") > 0) then 
+            call APPLY_SBAF()
+         endif
 
          ! --- check if pixel is valid
          if (Input%Invalid_Data_Mask == 1) cycle
@@ -1323,6 +1339,61 @@ end subroutine LHP_CHN_CHECK
 
    end subroutine COMPUTE_TYPE_FROM_PHASE
 
+   !-------------------------------------------------------------------------------
+   ! 
+   !-------------------------------------------------------------------------------
+   subroutine APPLY_SBAF()
+    !  print *, "before", Input%Ref_063um, Input%Bt_375um, Input%Bt_67um, Input%Bt_11um, Input%Bt_133um
+      if (Input%Ref_041um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(8),b(8),c(8),Input%Ref_041um)
+      if (Input%Ref_063um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(1),b(1),c(1),Input%Ref_063um)
+      if (Input%Ref_086um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(2),b(2),c(2),Input%Ref_086um)
+      if (Input%Ref_138um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(26),b(26),c(26),Input%Ref_086um)
+      if (Input%Ref_160um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(6),b(6),c(6),Input%Ref_160um)
+      if (Input%Ref_213um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(7),b(7),c(7),Input%Ref_213um)
+      if (Input%Bt_375um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(20),b(20),c(20),Input%Bt_375um)
+      !if (Input%Bt_62um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(37),b(37),c(37),Input%Bt_62um)
+      if (Input%Bt_67um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(27),b(27),c(27),Input%Bt_67um)
+      if (Input%Bt_73um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(28),b(28),c(28),Input%Bt_73um)
+      if (Input%Bt_85um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(29),b(29),c(29),Input%Bt_85um)
+      if (Input%Bt_10um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(38),b(38),c(38),Input%Bt_10um)
+      if (Input%Bt_11um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(31),b(31),c(31),Input%Bt_11um)
+      if (Input%Bt_12um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(32),b(32),c(32),Input%Bt_12um)
+      if (Input%Bt_133um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(33),b(33),c(33),Input%Bt_133um)
+     ! print *, "after", Input%Ref_063um, Input%Bt_375um, Input%Bt_67um, Input%Bt_11um, Input%Bt_133um
+   end subroutine APPLY_SBAF
+
+   !-------------------------------------------------------------------------------
+   ! use spectral band adjustments to make input refs and bt look like GOES-16 ABI
+   !-------------------------------------------------------------------------------
+   subroutine ABI_GOES16_SBAF(WMO_Id)
+      integer, intent(in):: WMO_Id
+
+      a = 0.0
+      b = 1.0
+      c = 0.0
+
+      select case(WMO_Id)
+
+         case(255) ! GOES-11
+            a(1) = -6.8063e-03; b(1) = 1.02490e+00; c(1) = -5.3926e-04
+            a(20) =  1.5405e+01 ; b(20) = 8.8843e-01 ; c(20) =  2.0221e-04   
+            a(27) = -1.8107e+02 ; b(27) = 2.4466e00 ; c(27) = -2.7885e-03    
+            a(31) =  1.5814e+01 ; b(31) = 8.6256e-01 ; c(31) = 2.7981e-04   
+            a(32) =  -3.6017e-01 ; b(32) = 1.0102e+00 ; c(32) = -4.4293e-05   
+
+         case(257) ! GOES-13
+            a(1) = -2.7527e-03; b(1) = 1.0368e+00; c(1) = -4.5434e-02
+            a(20) =  2.5828e+01 ; b(20) = 8.0108e-01 ; c(20) =  3.7754e-04   
+            a(27) = -8.3942e+01 ; b(27) = 1.6039e+00 ; c(27) = -1.0530e-03    
+            a(31) =  2.0139e+01 ; b(31) = 8.3048e-01 ; c(31) = 3.3938e-04   
+            a(33) =  -2.1292e+01 ; b(33) = 1.1238e+00 ; c(33) = -1.1957e-04   
+
+         case default
+
+      end select
+
+   end subroutine ABI_GOES16_SBAF
+
    !-------------------------------------------------------------------------------
    ! use spectral band adjustments to make input refs and bt look like MODIS Aqua
    !-------------------------------------------------------------------------------
@@ -1363,44 +1434,6 @@ end subroutine LHP_CHN_CHECK
          case default
       end select
 
-      if (Input%Ref_041um /= MISSING_VALUE_REAL4) call SBAF_QUAD(a(8),b(8),c(8),Input%Ref_041um)
-
-!     if (Input%Ref_041um /= MISSING_VALUE_REAL4) Input%Ref_041um = a_sbaf(8) + b_sbaf(8)*Input%Ref_041um
-!     if (Input%Ref_063um /= MISSING_VALUE_REAL4) Input%Ref_063um = a_sbaf(1) + b_sbaf(1)*Input%Ref_063um
-!     if (Input%Ref_086um /= MISSING_VALUE_REAL4) Input%Ref_086um = a_sbaf(2) + b_sbaf(2)*Input%Ref_086um
-!     if (Input%Ref_138um /= MISSING_VALUE_REAL4) Input%Ref_138um = a_sbaf(26) + b_sbaf(26)*Input%Ref_138um
-!     if (Input%Ref_160um /= MISSING_VALUE_REAL4) Input%Ref_160um = a_sbaf(6) + b_sbaf(6)*Input%Ref_160um
-!     if (Input%Ref_213um /= MISSING_VALUE_REAL4) Input%Ref_213um = a_sbaf(7) + b_sbaf(7)*Input%Ref_213um
-!     if (Input%Bt_375um /= MISSING_VALUE_REAL4) Input%Bt_375um = a_sbaf(20) + b_sbaf(20)*Input%Bt_375um
-!     if (Input%Bt_67um /= MISSING_VALUE_REAL4) Input%Bt_67um = a_sbaf(27) + b_sbaf(27)*Input%Bt_67um
-!     if (Input%Bt_73um /= MISSING_VALUE_REAL4) Input%Bt_73um = a_sbaf(28) + b_sbaf(28)*Input%Bt_73um
-!     if (Input%Bt_85um /= MISSING_VALUE_REAL4) Input%Bt_85um = a_sbaf(29) + b_sbaf(29)*Input%Bt_85um
-!     if (Input%Bt_10um /= MISSING_VALUE_REAL4) Input%Bt_10um = a_sbaf(38) + b_sbaf(38)*Input%Bt_10um
-!     if (Input%Bt_11um /= MISSING_VALUE_REAL4) Input%Bt_11um = a_sbaf(31) + b_sbaf(31)*Input%Bt_11um
-!     if (Input%Bt_12um /= MISSING_VALUE_REAL4) Input%Bt_12um = a_sbaf(32) + b_sbaf(32)*Input%Bt_12um
-!     if (Input%Bt_133um /= MISSING_VALUE_REAL4) Input%Bt_133um = a_sbaf(33) + b_sbaf(33)*Input%Bt_133um 
-
-! Input%Chan_On_041um = Sensor%Chan_On_Flag_Default(8)
-! Input%Chan_On_063um = Sensor%Chan_On_Flag_Default(1)
-! Input%Chan_On_086um = Sensor%Chan_On_Flag_Default(2)
-! Input%Chan_On_138um = Sensor%Chan_On_Flag_Default(26)
-! Input%Chan_On_160um = Sensor%Chan_On_Flag_Default(6)
-! Input%Chan_On_213um = Sensor%Chan_On_Flag_Default(7)
-! Input%Chan_On_375um = Sensor%Chan_On_Flag_Default(20)
-! Input%Chan_On_62um = Sensor%Chan_On_Flag_Default(37)
-! Input%Chan_On_67um = Sensor%Chan_On_Flag_Default(27)
-! Input%Chan_On_73um = Sensor%Chan_On_Flag_Default(28)
-! Input%Chan_On_85um = Sensor%Chan_On_Flag_Default(29)
-! Input%Chan_On_97um = Sensor%Chan_On_Flag_Default(30)
-! Input%Chan_On_10um = Sensor%Chan_On_Flag_Default(38)
-! Input%Chan_On_11um = Sensor%Chan_On_Flag_Default(31)
-! Input%Chan_On_12um = Sensor%Chan_On_Flag_Default(32)
-! Input%Chan_On_133um = Sensor%Chan_On_Flag_Default(33)
-! Input%Chan_On_I1_064um = Sensor%Chan_On_Flag_Default(39)
-! Input%Chan_On_I4_374um = Sensor%Chan_On_Flag_Default(42)
-! Input%Chan_On_I5_114um = Sensor%Chan_On_Flag_Default(43)
-! Input%Chan_On_DNB = Sensor%Chan_On_Flag_Default(44)
-
    end subroutine MODIS_AQUA_SBAF
 
 !-------------------------------------------------------------------------------
diff --git a/cloud_mask/ECM2/nbm_cloud_mask_lut_module.f90 b/cloud_mask/ECM2/nbm_cloud_mask_lut_module.f90
index 0492dc81531767f4fa8290c650cb6b35d18162a2..28302b2ec6e89db0060ea92be4cfac9426cf2078 100644
--- a/cloud_mask/ECM2/nbm_cloud_mask_lut_module.f90
+++ b/cloud_mask/ECM2/nbm_cloud_mask_lut_module.f90
@@ -3,7 +3,7 @@
 ! MODULE name: NBM_CLOUD_MASK_LUT_MODULE
 ! 
 ! Routines for the naive Bayesian cloud mask LUT reading
-! Version 2.0
+! Version 2.1
 !
 ! Authors: Andrew Heidinger, NOAA/NESDIS
 !          Andi Walther, CIMSS
diff --git a/cloud_mask/ECM2/nbm_cloud_mask_module.f90 b/cloud_mask/ECM2/nbm_cloud_mask_module.f90
index ba0aa8e1c45197232efa950c7669d4ddfd36f30c..489a0991601e6ad11f619a6c9ab64f92c2369489 100644
--- a/cloud_mask/ECM2/nbm_cloud_mask_module.f90
+++ b/cloud_mask/ECM2/nbm_cloud_mask_module.f90
@@ -3,7 +3,7 @@
 ! MODULE name: NBM_CLOUD_MASK
 ! 
 ! Routines for the determination of the naive Bayesian cloud mask
-! Version 2.0
+! Version 2.1
 !
 ! Authors: Andrew Heidinger, NOAA/NESDIS
 !          Andi Walther, CIMSS
@@ -66,7 +66,7 @@ MODULE ECM2_CLOUD_MASK_MODULE
  INCLUDE 'nbm_cloud_mask.inc'
 
  !--- string to control on-screen prompts
- CHARACTER(*), PARAMETER, PRIVATE :: EXE_PROMPT_CM = "Naive Bayesian Cloud Mask Version 2.0 >> "
+ CHARACTER(*), PARAMETER, PRIVATE :: EXE_PROMPT_CM = "Naive Bayesian Cloud Mask Version 2.1 >> "
 
 
  CONTAINS
@@ -78,7 +78,7 @@ MODULE ECM2_CLOUD_MASK_MODULE
 !====================================================================
  SUBROUTINE SET_ECM2_CLOUD_MASK_VERSION(Cloud_Mask_Version)
    CHARACTER(len=*), INTENT(OUT):: Cloud_Mask_Version
-   Cloud_Mask_Version = "$Id: nbm_cloud_mask_MODULE.f90 3030 2019-09-31 23:02:31Z heidinger $"
+   Cloud_Mask_Version = "v2.1"
  END SUBROUTINE SET_ECM2_CLOUD_MASK_VERSION
 
 
@@ -355,6 +355,8 @@ MODULE ECM2_CLOUD_MASK_MODULE
          SELECT CASE(trim(Dim_Name))
              CASE('tsfc')
                  Value_Dim = Input%Sfc_Temp
+             CASE('tpw')
+                 Value_Dim = Input%Path_Tpw
              CASE('dtsfcbt11')
                  Value_Dim = Input%Sfc_Temp - Input%Bt_11um
              CASE('etropo10')
@@ -365,11 +367,22 @@ MODULE ECM2_CLOUD_MASK_MODULE
                  Value_Dim = Input%Topa
              CASE('zopa')
                  Value_Dim = Input%Zopa
+             CASE('dzopasfc')
+                 Value_Dim = Input%Zopa - Input%Zsfc
              CASE('dtsfcopa')
                  Value_Dim = Input%Sfc_Temp - Input%Topa
              CASE('logzopa')
                  if (Input%Zopa > 0.0) Value_Dim = alog10(Input%Zopa)
                  if (Input%Zopa < 0.0 .and. Input%Zopa /= MISSING_VALUE_REAL4) Value_Dim = 1.0
+             CASE('logrefl065')
+                 if (Input%Ref_063um > 0.0) Value_Dim = alog10(Input%Ref_063um)
+                 if (Input%Ref_063um < 0.0 .and. Input%Ref_063um /= MISSING_VALUE_REAL4) Value_Dim = -2.0
+             CASE('logrefl138')
+                 if (Input%Ref_138um > 0.0) Value_Dim = alog10(Input%Ref_138um)
+                 if (Input%Ref_138um < 0.0 .and. Input%Ref_138um /= MISSING_VALUE_REAL4) Value_Dim = -2.0
+             CASE('logrefl160')
+                 if (Input%Ref_160um > 0.0) Value_Dim = alog10(Input%Ref_160um)
+                 if (Input%Ref_160um < 0.0 .and. Input%Ref_160um /= MISSING_VALUE_REAL4) Value_Dim = -2.0
              CASE('bt10')
                  Value_Dim = Input%Bt_10um
                  if (Input%Chan_On_10um == 0) Value_Dim = MISSING_VALUE_REAL4
@@ -727,10 +740,6 @@ IF (Input%Solzen < Lut(1)%Rut_Solzen_Thresh .and. Input%Ref_063um .ne. MISSING_V
                              Mask_Thresh%Rut_Clear_Prob_Clear_Thresh(Output%Sfc_Idx))
 ENDIF
 
-!--- apply uniformity
-!IF (Output%Cld_Mask_Bayes == symbol%CLEAR .and. (Output%TUT == 1 .or. Output%RUT == 1)) &
-!       Output%Cld_Mask_Bayes = symbol%PROB_CLEAR
-
 
 !----------------------------------------------------------------------------------
 !--- set some flags to control processing - Lets move this to a subroutine
diff --git a/configure b/configure
index d126ed6edc69822343059a7148967bbfe1894355..0700236cb8d64a36b782f3628b8d8fa69a91082f 100755
--- a/configure
+++ b/configure
@@ -154,7 +154,7 @@ open (CONFIG, '>> ',@outfile) or die "Could not open file '@outfile' $!)\n";
    `uname -a`;
    print CONFIG "# Include all required macros on the following lines:\n\n";
    
-   print CONFIG "ifeq (\$(ARCH),\$(filter \$(ARCH), gfortran gfortran-profile gfortran-strict gfortran-debug))\n";
+   print CONFIG "ifeq (\$(ARCH),\$(filter \$(ARCH), gfortran gfortran-profile gfortran-strict gfortran-debug gfortran10))\n";
    print CONFIG "export CX_DATA_IO=$opt{cx_sds_io_gcc}\n";
    print CONFIG "export DNCOMP=$opt{dncomp_gcc}\n";
    print CONFIG "export MURI=$opt{muri_gcc}\n";
diff --git a/cx_dncomp/src/dcomp_array_loop_sub.f90 b/cx_dncomp/src/dcomp_array_loop_sub.f90
index a0d4654471aead0c39a1a55717be43f6aa5d6189..321bd8ba00457c870b2a570f7658c999ff4fa069 100644
--- a/cx_dncomp/src/dcomp_array_loop_sub.f90
+++ b/cx_dncomp/src/dcomp_array_loop_sub.f90
@@ -61,6 +61,7 @@ subroutine dcomp_array_loop ( input, output , debug_mode_user)
 
    real( kind = real4 ), parameter :: OZONE_COEFF_CHN1 (3)  = [ -0.000606266 , 9.77984e-05,-1.67962e-08 ] 
    real( kind = real4 ) :: ozone_coeff (3)  
+   real( kind = real4 ) :: gas_coeff (3)  
 
    ! -- nwp variables 
    real( kind = real4 ) :: ozone_dobson
@@ -164,6 +165,7 @@ subroutine dcomp_array_loop ( input, output , debug_mode_user)
          CHN_NIR_DEFAULT = 20
          obs_array = obs_array .and. input % chn(20) % rad >=0.
       case default
+         CHN_NIR_DEFAULT = 0
    end select
 	
 	
@@ -238,6 +240,10 @@ subroutine dcomp_array_loop ( input, output , debug_mode_user)
             if ( .not. input % is_channel_on (chn_idx)) cycle  loop_chn
             ozone_coeff(:) = 0.
             if (chn_idx == 1) ozone_coeff = OZONE_COEFF_CHN1
+            gas_coeff(:) = 0.
+            if (input % gas_coeff(chn_idx) % is_set) then
+                gas_coeff = input % gas_coeff ( chn_idx) % d
+            endif
             
             call trans_atm_above_cloud ( &
                input % tpw_ac (elem_idx,line_idx) &
@@ -245,7 +251,7 @@ subroutine dcomp_array_loop ( input, output , debug_mode_user)
                , input % press_sfc  (elem_idx,line_idx) &
                , cld_press &
                , air_mass_array(elem_idx,line_idx) &
-               , input % gas_coeff ( chn_idx) % d , ozone_coeff, 0.044 &
+               , gas_coeff, ozone_coeff, 0.044 &
                , trans_total(chn_idx) &
                , trans_unc_total(chn_idx) &
                )
diff --git a/cx_dncomp/src/dcomp_lut_mod.f90 b/cx_dncomp/src/dcomp_lut_mod.f90
index 09776fccb95ccd5ebf4ccb124407abfca1b15dd2..d78c6e1310bf292bb887e967fc32e22de23d82e5 100644
--- a/cx_dncomp/src/dcomp_lut_mod.f90
+++ b/cx_dncomp/src/dcomp_lut_mod.f90
@@ -1,13 +1,13 @@
 ! $Id: dcomp_lut_mod.f90 189 2018-03-09 18:49:39Z awalther $
 !
-! HISTORY: 06/05/2014: change of filename 
+! HISTORY: 06/05/2014: change of filename
 !
 module dcomp_lut_mod
-   
+
    use dcomp_math_tools_mod, only:&
       dcomp_interpolation_weight &
       , interpolate_2d
-      
+
    use file_tools, only: &
       file_test
    use dcomp_lut_sds_mod, only: &
@@ -16,18 +16,18 @@ module dcomp_lut_mod
       , read_hdf_dcomp_dims
 
    implicit none
- 
+
    private
-   
+
    integer, parameter :: NUM_PHASE = 2
    integer, parameter :: NUM_CHN = 45
-   
+
    integer , parameter :: NUM_SOL = 45
    integer , parameter :: NUM_SAT = 45
    integer , parameter :: NUM_AZI = 45
    integer , parameter :: NUM_COD = 29
    integer , parameter :: NUM_REF = 9
-   
+
    type lut_data_type
       logical :: is_set
       logical :: has_sol = .false.
@@ -40,19 +40,19 @@ module dcomp_lut_mod
       real, allocatable :: cld_refl( : , : , : , : , : )
       real, allocatable :: cld_ems ( : , : , : )
       real, allocatable :: cld_trn_ems ( : , : , : )
-      
+
    contains
       procedure :: read_hdf => lut_data__read_hdf
       procedure :: alloc => lut_data__alloc
       procedure :: dealloc => lut_data__dealloc
-      
+
    end type lut_data_type
-   
+
    type lut_chn_type
       logical :: is_set
       type ( lut_data_type ) , allocatable  :: phase(:)
    end type lut_chn_type
-   
+
    type lut_dim_type
       logical :: is_set
       real, allocatable  :: sat_zen ( : )
@@ -66,9 +66,9 @@ module dcomp_lut_mod
       integer :: n_cod
       integer :: n_cps
 
-       
+
    end type lut_dim_type
-   
+
    type , public :: lut_type
       logical :: is_set
       type ( lut_chn_type ) , allocatable :: channel (:)
@@ -76,7 +76,7 @@ module dcomp_lut_mod
       character ( len = 1020) :: lut_path
       character ( len = 20 ) :: sensor = 'not_set'
       integer :: pos_sat, pos_sol, pos_azi
-      
+
    contains
       procedure :: initialize => lut__initialize
       procedure :: set_angles => lut__set_angles
@@ -87,15 +87,15 @@ module dcomp_lut_mod
       procedure , private :: set_filename => lut__set_filename
       procedure :: clear_lut_memory => lut__clear_lut_memory
       procedure :: populate_all_at_once => lut__populate_all_at_once
-      
+
    end type lut_type
-   
+
    ! - only one channel can be stored
    type ( lut_type ) , public ,save , target :: lut_obj
-   
-   
+
+
    type , public :: lut_output
-   
+
       real :: refl
       real :: trn_sol
       real :: trn_sat
@@ -103,7 +103,7 @@ module dcomp_lut_mod
       real :: alb
       real :: ems
       real :: trn_ems
-      
+
       real :: dRefl_dcps      , dRefl_dcod
       real :: dtrans_sol_dcps , dtrans_sol_dcod
       real :: dTrans_sat_dcod , dTrans_sat_dcps
@@ -111,22 +111,22 @@ module dcomp_lut_mod
       real :: dalb_dcod   , dalb_dcps
       real :: dEms_dcps      , dEms_dcod
       real :: dtrnEms_dcps      , dtrnEms_dcod
-   
-   
+
+
    end type lut_output
-   
 
-   
+
+
    real, save :: sat_m
    real, save :: sol_m
    real, save :: azi_m
-      
+
 contains
 
    ! ------------------------------------------------------------
    !  This is to populate the tables outside dcomp if wished.
    ! ------------------------------------------------------------
-   
+
    subroutine lut__populate_all_at_once (self , sensor , ancil_path)
       implicit none
       class ( lut_type ) , target :: self
@@ -134,27 +134,27 @@ contains
       character ( len = * ) , intent(in) :: ancil_path
       integer :: idx_chn, idx_phase
       type (lut_data_type), pointer :: data_loc => null()
-      
-     
+
+
       call self % initialize ( trim(sensor), trim(ancil_path))
-       
+
       do idx_chn = 1 , NUM_CHN
          do idx_phase = 1, 2
 
             data_loc => self % channel ( idx_chn ) % phase ( idx_phase)
             if ( .not. data_loc % is_set ) then
-               
+
                call data_loc % read_hdf
                data_loc % is_set  = .true.
             end if
          end do
       end do
-      
+
       self % sensor = trim(sensor)
-     
+
    end subroutine lut__populate_all_at_once
-   
-   
+
+
    ! ----------------------------------------------------------------
    !
    ! ----------------------------------------------------------------
@@ -163,16 +163,15 @@ contains
       character ( len = 3 ) , dimension(30) :: chan_string ='no'
       logical , dimension ( NUM_CHN ) :: has_ems_table = .false.
       logical , dimension ( NUM_CHN ) :: has_sol_table = .false.
-      
+
       integer :: i_chn , i_phase
       character ( len = 3 ) , dimension(2)   :: phase_string = [ 'wat',  'ice' ]
       integer :: n_channels = 45
       character ( len =1020) :: sensor_identifier
-      
+
       ! mapping sensor channel emis yes/no
-      
+
       sensor_identifier = trim ( self % sensor )
-     !print*,'==> ', self % sensor
       sensor_block: select case ( trim(self % sensor))
          case ('Meteosat-8','Meteosat-9','Meteosat-10','Meteosat-11') sensor_block
             has_sol_table(1) = .true.
@@ -184,7 +183,7 @@ contains
             chan_string(2) = '2'
             chan_string(6) = '3'
             chan_string(20) = '4'
-      
+
          case ('TIROS-N','NOAA-05','NOAA-06','NOAA-07','NOAA-08','NOAA-09', 'NOAA-10','NOAA-11', &
             'NOAA-12', 'NOAA-14')  sensor_block
             has_sol_table(1) = .true.
@@ -192,7 +191,7 @@ contains
             has_ems_table(20) = .true.
             chan_string(1) = '1'
             chan_string(20) = '3b'
-        
+
          case ('NOAA-15','NOAA-16', 'NOAA-17','NOAA-18','NOAA-19','METOP-A','METOP-B','METOP-C')  sensor_block
             has_sol_table(1) = .true.
             has_sol_table(6) = .true.
@@ -201,7 +200,7 @@ contains
             chan_string(1) = '1'
             chan_string(6) = '3a'
             chan_string(20) = '3b'
-      
+
          case ('GOES-08','GOES-09','GOES-10', 'GOES-11' , 'GOES-12' , 'GOES-13',  'GOES-14', &
             'GOES-15','COMS-1'  )   sensor_block
             has_sol_table(1) = .true.
@@ -209,7 +208,7 @@ contains
             has_ems_table(20) = .true.
             chan_string(1) = '1'
             chan_string(20) = '2'
-      
+
          case ('MODIS-AQUA', 'MODIS-TERRA')    sensor_block
             has_sol_table(1) = .true.
             has_sol_table(2) = .false.
@@ -217,15 +216,13 @@ contains
             has_sol_table(20) = .true.
             has_ems_table(20) = .true.
             chan_string(1) = '1'
-            !chan_string(2) = '2'
             chan_string(5) = '5'
             chan_string(6) = '6'
             chan_string(7) = '7'
             chan_string(20) = '20'
-            !--->sensor_identifier = trim(self % lut_path) //'MODIS'
             sensor_identifier = 'MODIS'
-         
-         case('GOES-16','GOES-17')  sensor_block
+
+         case('GOES-16','GOES-17','GOES-18')  sensor_block
             has_sol_table(1) = .true.
             has_sol_table(6) = .true.
             has_sol_table(7) = .true.
@@ -235,7 +232,7 @@ contains
             chan_string(6) = '5'
             chan_string(7) = '6'
             chan_string(20) = '7'
-         
+
          case('ABI') sensor_block
             has_sol_table(1) = .true.
             has_sol_table(6) = .true.
@@ -244,7 +241,7 @@ contains
             chan_string(1) = '2'
             chan_string(6) = '5'
             chan_string(20) = '7'
-      
+
          case('AHI') sensor_block
             has_sol_table(1) = .true.
             has_sol_table(6) = .true.
@@ -255,8 +252,8 @@ contains
             chan_string(6) = '5'
             chan_string(7) = '6'
             chan_string(20) = '7'
-         
-            
+
+
          case ('AATSR')   sensor_block
             has_sol_table(1) = .true.
             has_sol_table(6) = .true.
@@ -265,10 +262,10 @@ contains
             chan_string(1) = '1'
             chan_string(6) = '6'
             chan_string(20) = '20'
-            
-            
-        
-             
+
+
+
+
          case ('VIIRS','NOAA-20')   sensor_block
             has_sol_table(1) = .true.
             has_sol_table(5) = .true.
@@ -281,7 +278,7 @@ contains
             chan_string(6) = '10'
             chan_string(7) = '11'
             chan_string(20) ='12'
-         
+
          case ('MTSAT-1R')   sensor_block
             has_sol_table(1) = .true.
             has_sol_table(20) = .true.
@@ -289,7 +286,7 @@ contains
             chan_string(1) = '1'
             chan_string(20) = '5'
          case ('FY4A') sensor_block
-           
+
             has_sol_table(1) = .true.
             has_sol_table(5) = .false.
             has_sol_table(6) = .true.
@@ -302,14 +299,13 @@ contains
             chan_string(7) = '6'
             chan_string(20) ='7'
 
-                   
+
          case ('MTSAT-2')   sensor_block
             has_sol_table(1) = .true.
             has_sol_table(20) = .true.
             has_ems_table(20) = .true.
             chan_string(1) = '1'
             chan_string(20) = '5'
-            !--> sensor_identifier = trim(self % lut_path) //'MTSAT'
             sensor_identifier = 'MTSAT'
 
          case ('FY3D') sensor_block
@@ -322,7 +318,7 @@ contains
             chan_string(6) = '6'
             chan_string(7) = '7'
             chan_string(20) = '20'
-            
+
           case ('METIMAGE') sensor_block
             has_sol_table(1) = .true. !0.64um
             has_sol_table(6) = .true. !1.6um
@@ -332,9 +328,9 @@ contains
             chan_string(1) = '03'
             chan_string(6) = '10'
             chan_string(7) = '11'
-            chan_string(20) = '12'   
+            chan_string(20) = '12'
             sensor_identifier = 'eps'
-            
+
           case ('Met_Image') sensor_block
             has_sol_table(1) = .true. !0.64um
             has_sol_table(6) = .true. !1.6um
@@ -344,50 +340,50 @@ contains
             chan_string(1) = '03'
             chan_string(6) = '10'
             chan_string(7) = '11'
-            chan_string(20) = '12'   
+            chan_string(20) = '12'
             sensor_identifier = 'eps'
 
          case default
             print*,' Sensor is ', trim(self%sensor)
             stop 'add sensor in dcomp_lut_mod.f90 routine populate...'
-  
+
       end select sensor_block
 
       sensor_identifier = trim(self % lut_path) &
-         & // trim(sensor_identifier) 
-      
-      
+         & // trim(sensor_identifier)
+
+
       loop_channel : do i_chn = 1 , n_channels
          if ( .not. has_sol_table ( i_chn ) )  cycle
          loop_phase: do i_phase = 1 , 2
-  
-           
+
+
             self%channel(i_chn)%phase(i_phase)%file = trim(sensor_identifier) &
-                       
+
                & // '_ch'//trim ( chan_string ( i_chn ) ) &
                & //'_ref_lut_'//phase_string(i_phase)//'_cld.hdf'
-                   
-                  
+
+
             if ( has_ems_table(i_chn) ) then
-               
+
                self%channel(i_chn)%phase(i_phase)%file_ems = trim(sensor_identifier) &
-                     
+
                   & // '_ch'//trim ( chan_string ( i_chn ) ) &
                   & //'_ems_lut_'//phase_string(i_phase)//'_cld.hdf'
                self % channel(i_chn) % phase(i_phase) % has_ems = .true.
             end if
-            
-         
+
+
             self % channel(i_chn) % phase(i_phase) % has_sol = .true.
-                    
+
          end do loop_phase
       end do loop_channel
-      
-   
-   
+
+
+
    end subroutine lut__set_filename
-   
-   
+
+
    ! ----------------------------------------------------------------
    !
    ! ----------------------------------------------------------------
@@ -397,38 +393,38 @@ contains
       character ( len = * ) , intent(in), optional :: ancil_path
       character ( len =20) :: host
       integer :: i_chn
-      
+
       ! - check if sensor is already initialized
       if ( self % sensor == sensor ) then
          return
       end if
-      
+
       call getenv("HOST",host)
-     
+
 
       ! - some lut paths
       self % lut_path = '/Users/awalther/DATA/Ancil_Data/clavrx_ancil_data/static/luts/cld/'
       if ( host(1:4) == 'saga' ) self % lut_path = '/data/Ancil_Data/clavrx_ancil_data/static/luts/cld/'
       if ( present(ancil_path)) self % lut_path = trim(ancil_path)
       self % sensor = trim(sensor)
-      
+
       if (.not. allocated (self % channel ) ) allocate ( self % channel (NUM_CHN))
-      
+
       do i_chn = 1 , NUM_CHN
          if (.not. allocated (self % channel (i_chn) % phase ) ) allocate ( self % channel (i_chn) % phase (NUM_PHASE) )
-      
+
       end do
-      
+
       ! - set filenames
       call self % set_filename
-     
+
       ! - clear memory for new sensor
       call self % clear_lut_memory
-      
+
       call self % init_dims( )
-      
+
    end subroutine lut__initialize
-   
+
    ! ----------------------------------------------------------------
    !
    ! ----------------------------------------------------------------
@@ -438,11 +434,11 @@ contains
       real , intent(in) , optional :: sat
       real , intent(in) , optional :: sol
       real , intent(in) , optional :: azi
-      
+
       if ( present(sat) ) sat_m = sat
       if ( present(sol) ) sol_m = sol
       if ( present(azi) ) azi_m = azi
-      
+
       ! - compute pos and weights
 
       call dcomp_interpolation_weight(self%dims%n_sat_zen , sat , self%dims%sat_zen &
@@ -454,9 +450,9 @@ contains
       call dcomp_interpolation_weight(self%dims%n_rel_azi , azi , self%dims%rel_azi &
          &, near_index = self % pos_azi  )
 
-   
+
    end subroutine lut__set_angles
-   
+
    ! --------------------------------------------------------------------------
    !
    !   clears memory of LUT_data object
@@ -466,20 +462,20 @@ contains
       class ( lut_type ) , target :: self
       integer :: idx_phase , idx_chn
       type (lut_data_type), pointer :: data_loc => null()
-   
-   
+
+
       do idx_phase =1, NUM_PHASE
          do idx_chn =1, NUM_CHN
             data_loc => self % channel ( idx_chn ) % phase ( idx_phase)
             call data_loc % dealloc()
-         
+
          end do
       end do
-   
-   
-   
+
+
+
    end subroutine lut__clear_lut_memory
-   
+
    !  --------------------------------------------------------------------------
    !   PURPOSE : return data from LUT
    !   input: channel, phase, cod (log10 ), cps(log10)
@@ -494,20 +490,20 @@ contains
    !  -------------------------------------------------------------------------
    subroutine lut__get_data ( self, idx_chn , idx_phase , cod_log10, cps_log10 &
       & , out )
-                              
+
       class ( lut_type ) , target :: self
       integer , intent(in) :: idx_chn
       integer , intent(in) :: idx_phase
       real, intent(in) :: cod_log10
       real, intent(in) :: cps_log10
-      
+
       type ( lut_output ) :: out
-      
+
       integer :: pos_cod,pos_cps
       real :: wgt_cod, wgt_cps
       real , save :: cod_log10_saved
-      
-      
+
+
       real :: rfl_cld_2x2 (2,2)
       real :: trn_sol_cld_2x2 (2,2)
       real :: trn_sat_cld_2x2 (2,2)
@@ -516,9 +512,9 @@ contains
       real :: trn_ems_cld_2x2 ( 2,2)
       real :: alb_cld_2x2 ( 2,2)
       real :: ref_diff , cod_diff
-      
+
       type (lut_data_type), pointer :: data_loc => null()
-      
+
       out % ems = -999.
 
       data_loc => self % channel ( idx_chn ) % phase ( idx_phase)
@@ -555,16 +551,16 @@ contains
          & , out % dsph_alb_dcod   , out % dSph_alb_dcps)
       call interpolate_2d ( alb_cld_2x2  , wgt_cps , wgt_cod , ref_diff , cod_diff , out % alb &
          & , out % dalb_dcod   , out % dalb_dcps)
-         
+
       if ( data_loc % has_ems ) then
          ems_cld_2x2 = data_loc%cld_ems (pos_cps:pos_cps+1,pos_cod:pos_cod+1,self%pos_sat)
          call interpolate_2d ( ems_cld_2x2, wgt_cps , wgt_cod , ref_diff , cod_diff &
             , out % ems, out % dEms_dcps , out % dEms_dcod )
-         
+
          trn_ems_cld_2x2 = data_loc%cld_trn_ems (pos_cps:pos_cps+1,pos_cod:pos_cod+1,self%pos_sat)
          call interpolate_2d ( trn_ems_cld_2x2, wgt_cps , wgt_cod , ref_diff , cod_diff &
             , out % trn_ems, out % dtrnEms_dcps, out % dtrnEms_dcod )
-         
+
       end if
 
       cod_log10_saved = cod_log10
@@ -576,35 +572,35 @@ contains
       class ( lut_type ) , target :: self
       integer , intent(in) :: idx_chn
       integer , intent(in) :: idx_phase
-      
+
       real, intent(out) :: rfl(9)
       real, intent(out) :: ems(9)
-      
+
       type (lut_data_type), pointer :: data_loc => null()
-      
+
       data_loc => self % channel ( idx_chn ) % phase ( idx_phase)
-      
-      
+
+
       rfl = data_loc%cld_refl( :,29,self%pos_sol,self%pos_sat,self%pos_azi)
-      
+
       if ( data_loc % has_ems ) then
          ems = data_loc%cld_ems (:,29,self%pos_sat)
       end if
-   
-   
+
+
    end subroutine lut_data__thick_cloud_rfl
-      
+
    ! ----------------------------------------------------------------
    !
    ! ----------------------------------------------------------------
    subroutine lut_data__read_hdf ( self )
-      
+
       class ( lut_data_type ) :: self
-         
+
       if ( self % has_sol .or. self % has_ems ) then
          call self % alloc
       end if
-      
+
       if ( self % has_sol ) then
          if ( .not. file_test ( self % file )) then
             print*, 'file not here :   ', self % file
@@ -617,7 +613,7 @@ contains
             , self % cld_sph_alb &
             , self % cld_refl )
       end if
-        
+
       if ( self % has_ems ) then
          if ( .not. file_test ( self % file_ems )) then
             print*, 'file ems not available channel ',  self % file_ems
@@ -628,23 +624,23 @@ contains
             , self % cld_ems &        ! - output
             , self % cld_trn_ems)
       end if
-     
+
    end subroutine lut_data__read_hdf
-   
+
    ! ----------------------------------------------------------------
    !
    ! ----------------------------------------------------------------
    subroutine lut__init_dims( self)
       class ( lut_type ) :: self
       character ( len = 1020 )  :: hdf_file
-      
+
       hdf_file = trim(self % channel ( 1) % phase (1 ) % file)
-    
+
       if ( .not. file_test(hdf_file) ) then
          print*,'lut file not existing!  ---- ==> ', trim(hdf_file)
          stop 'lut file not existing! ==> '
       end if
-      
+
 
       ! this should be read from file, but this is also possible
       self %  dims% n_sat_zen = 45
@@ -652,7 +648,7 @@ contains
       self %  dims% n_rel_azi = 45
       self %  dims% n_cod = 29
       self %  dims% n_cps = 9
-      
+
 
 
       call read_hdf_dcomp_dims ( hdf_file &
@@ -661,18 +657,18 @@ contains
          , self %  dims% rel_azi &
          , self %  dims% cod &
          , self %  dims% cps )
-      
 
-            
+
+
    end subroutine lut__init_dims
-   
+
 
    !    ----------------------------------------------------------------
    !
    ! ----------------------------------------------------------------
    subroutine lut_data__alloc ( self)
       class ( lut_data_type ) :: self
-      
+
       allocate ( self % cld_alb (9,29,45))
       allocate ( self % cld_trn (9,29,45))
       allocate ( self % cld_sph_alb (9,29))
@@ -680,25 +676,25 @@ contains
       allocate ( self % cld_ems (9,29,45))
       allocate ( self % cld_trn_ems (9,29,45))
    end subroutine lut_data__alloc
-   
+
    ! ----------------------------------------------------------------
    !
    ! ----------------------------------------------------------------
    subroutine lut_data__dealloc ( self)
       class ( lut_data_type ) :: self
-      
+
       if ( allocated (self % cld_alb) ) deallocate ( self % cld_alb )
       if ( allocated (self % cld_trn) ) deallocate ( self % cld_trn )
       if ( allocated (self % cld_sph_alb) ) deallocate ( self % cld_sph_alb )
       if ( allocated (self % cld_refl) ) deallocate ( self % cld_refl )
       if ( allocated (self % cld_ems) ) deallocate ( self % cld_ems )
       if ( allocated (self % cld_trn_ems) ) deallocate ( self % cld_trn_ems )
-      
+
       self % is_set = .false.
-      
+
    end subroutine lut_data__dealloc
 
-   
+
    ! ----------------------------------------------------------------
    !
    ! ----------------------------------------------------------------
@@ -708,13 +704,13 @@ contains
       real , intent(out) , optional :: sol
       real , intent(out) , optional :: azi
       character(10), intent(out), optional :: sensor
-      
+
       if ( present(sensor)) sensor = trim(self % sensor)
       if ( present(sat) ) sat = self % dims % sat_zen ( self % pos_sat )
       if ( present(sol) ) sol = self % dims % sat_zen ( self % pos_sol )
       if ( present(azi) ) azi = self % dims % sat_zen ( self % pos_azi )
-   
+
    end subroutine lut__getProperty
-   
+
 
 end module  dcomp_lut_mod
diff --git a/cx_dncomp/src/dcomp_retrieval_mod.f90 b/cx_dncomp/src/dcomp_retrieval_mod.f90
index c5c748a6fae87d3326dbb8a73284ed7a077bed82..210956203f90cc6e7b7eae9eea0c4a49a89537f2 100644
--- a/cx_dncomp/src/dcomp_retrieval_mod.f90
+++ b/cx_dncomp/src/dcomp_retrieval_mod.f90
@@ -169,8 +169,6 @@ contains
         sfc_albedo(1) = alb_sfc(1)    ! White sky
         sfc_albedo(2) = alb_sfc(2)
         
-        ! - sfc_albedo(1) = alb_sfc(3)    ! DS
-      
         debug_mode = 4
         if ( present ( debug_in )) debug_mode = debug_in
        
diff --git a/cx_dncomp/src/dcomp_science_tools_mod.f90 b/cx_dncomp/src/dcomp_science_tools_mod.f90
index 6ccf69f483924e93793b9c605a79ca868d5458d7..e95feb70825e57808e5df43f247019e80e9bb009 100644
--- a/cx_dncomp/src/dcomp_science_tools_mod.f90
+++ b/cx_dncomp/src/dcomp_science_tools_mod.f90
@@ -12,17 +12,17 @@ contains
       implicit none
       character (len =  * )  :: sensor
       real, intent ( in ) :: sol_zen
-  
+
       real :: sun_earth_distance
       real, parameter :: PI = 3.14159265
       real, parameter :: DTOR = PI / 180.
       real :: rad_to_refl
       real :: solar, ew , solar_rad_20
       integer :: start_day
-    
+
       start_day = 100 !dd
 
-   
+
       !- these are all sensor specifiv values and van be removed an computed in dcomp box!
       sun_earth_distance = 1.0 - 0.016729 * cos ( 0.9856 * ( start_day - 4.0) * DTOR )
 
@@ -113,7 +113,7 @@ contains
             ew = 253.16404
           case('METOP-C')
             solar = 3.9731433
-            ew = 253.16404   
+            ew = 253.16404
          case ('Meteosat-8')
             solar = 5.3444818
             ew = 365.59826
@@ -131,7 +131,10 @@ contains
             ew = 116.413
          case('GOES-17') !  faked from goes-16 AW 28 Aug 2018
             solar = 1.709
-            ew = 116.413   
+            ew = 116.413
+        case('GOES-18') !  faked from goes-16 AW 16 Aug 2022
+             solar = 1.709
+             ew = 116.413
          case('COMS-1')
             solar = 4.8461549
             ew = 306.29122
@@ -146,16 +149,16 @@ contains
            ew = 305.69
          case('METIMAGE')
            solar = 2.03
-           ew = 128.72 
+           ew = 128.72
          case('Met_Image')
            solar = 2.03
-           ew = 128.72 
+           ew = 128.72
          case default
-      
+
             stop 'missing sensor calibration; add in get_rad_refl_factor.f90'
       end select
-   
-   
+
+
       solar_rad_20 =  1000.* solar / ew
       rad_to_refl    = PI / cos (sol_zen * DTOR )/ solar_rad_20 / sun_earth_distance ** 2
 
@@ -167,20 +170,20 @@ contains
       real, intent ( in) :: tmp
       character (len =  * ) :: sensor
       !real, intent ( out), optional :: db_dt
-   
-   
-   
+
+
+
       character(len = 20 ) ,save :: sensor_saved
       real :: rad
-  
+
       real :: db_dt_tmp
       integer, parameter:: nplanck = 161
       real, dimension(nplanck), save :: B20
-      real, parameter :: T_planck_min = 180.0  
+      real, parameter :: T_planck_min = 180.0
       real, parameter :: delta_T_planck = 1.0
       real, dimension(nplanck) , save :: T_planck
       integer :: l , i
-      
+
       real :: nu_20 , a1_20 , a2_20
       real , parameter :: c1 = 1.191062e-5
       real , parameter :: c2 = 1.4387863
@@ -188,7 +191,7 @@ contains
       real :: c2_times_nu_20
 
       if ( sensor /= sensor_saved ) then
-   
+
          select case ( sensor )
             case ('GOES-08')
                nu_20 = 2559.8724
@@ -329,7 +332,11 @@ contains
             case ('GOES-17') ! faked initially from GOES-16 on 28 Aug 2018 AW
                nu_20 = 2570.97
                a1_20 = -0.45401969
-               a2_20 = 1.0004997   
+               a2_20 = 1.0004997
+             case ('GOES-18') ! faked initially from GOES-16 on 16 Aug 2022 AW
+                nu_20 = 2570.97
+                a1_20 = -0.45401969
+                a2_20 = 1.0004997
             case('COMS-1')
                nu_20 = 2675.0265
                a1_20 = -2.2829416
@@ -349,32 +356,32 @@ contains
             case('METIMAGE')
                nu_20 = 2667.55436180
                a1_20 = -1.52502606
-               a2_20 = 1.00389872      
+               a2_20 = 1.00389872
              case default
                print*,'missing sensor calibration for sensor ', sensor
-      
+
                stop ' stop; add to get_planck_radiance_39um'
          end select
-    
+
          c1_times_nu_20__3 =  c1 * nu_20 ** 3
          c2_times_nu_20 = c2 * nu_20
-   
+
          do i = 1 , nplanck
             t_planck(i) = T_planck_min + ( i - 1 ) * delta_T_planck
             B20(i) = c1_times_nu_20__3  / ( exp ( ( c2_times_nu_20 ) / &
                (( T_planck(i) - a1_20 ) / a2_20 ) ) - 1.0)
          end do
-      
+
          sensor_saved = sensor
-         
+
       end if
 
       l = NINT(( tmp - T_planck_min ) / delta_T_planck)
       l = max (1, min ( nplanck - 1 , l ) )
       dB_dT_tmp = (B20(l+1)-B20(l))/(T_planck(l+1)-T_planck(l))
       rad = B20(l) + (tmp - T_planck(l)) * (dB_dT_tmp)
-  
-  
+
+
    end function get_planck_radiance_39um
 
 
diff --git a/cx_dncomp/src/dncomp_trans_atmos_mod.f90 b/cx_dncomp/src/dncomp_trans_atmos_mod.f90
index c1d09708fa637ae42a4e4fa219e81e8ac308521e..a7bb38576485d007d65bb75edb2c067ef700851e 100644
--- a/cx_dncomp/src/dncomp_trans_atmos_mod.f90
+++ b/cx_dncomp/src/dncomp_trans_atmos_mod.f90
@@ -40,9 +40,9 @@ contains
       real, intent(in) :: press_sfc
       real, intent(in) :: press_cld
       real, intent(in) :: air_mass
-      real :: gas_coeff_inp(3)
-      real :: ozone_coeff_inp(3)
-      real :: rayleigh_coeff_inp
+      real, intent(in) :: gas_coeff_inp(3)
+      real, intent(in) :: ozone_coeff_inp(3)
+      real, intent(in) :: rayleigh_coeff_inp
    
       real, intent(out) :: trans
       real, intent(out) :: trans_uncert
@@ -84,9 +84,9 @@ contains
       real, intent(in) :: press_sfc(:,:)
       real, intent(in) :: press_cld(:,:)
       real, intent(in) :: air_mass(:,:)
-      real :: gas_coeff_inp(3)
-      real :: ozone_coeff_inp(3)
-      real :: rayleigh_coeff_inp
+      real, intent(in) :: gas_coeff_inp(3)
+      real, intent(in) :: ozone_coeff_inp(3)
+      real, intent(in) :: rayleigh_coeff_inp
    
       real, intent(out) :: trans(:,:)
       real, intent(out) :: trans_uncert(:,:)
@@ -126,9 +126,9 @@ contains
       real, intent(in) :: press_sfc(:)
       real, intent(in) :: press_cld(:)
       real, intent(in) :: air_mass(:)
-      real :: gas_coeff_inp(3)
-      real :: ozone_coeff_inp(3)
-      real :: rayleigh_coeff_inp
+      real, intent(in) :: gas_coeff_inp(3)
+      real, intent(in) :: ozone_coeff_inp(3)
+      real, intent(in) :: rayleigh_coeff_inp
    
       real, intent(out) :: trans(:)
       real, intent(out) :: trans_uncert(:)
@@ -149,9 +149,9 @@ contains
    !
    !
    subroutine set_coeffs ( gas_coeff_inp, ozone_coeff_inp, rayleigh_coeff_inp)
-      real :: gas_coeff_inp(3)
-      real :: ozone_coeff_inp(3)
-      real :: rayleigh_coeff_inp
+      real, intent(in) :: gas_coeff_inp(3)
+      real, intent(in) :: ozone_coeff_inp(3)
+      real, intent(in) :: rayleigh_coeff_inp
    
       gas_coeff = gas_coeff_inp
       ozone_coeff = ozone_coeff_inp
diff --git a/cx_dncomp/src/sensorname_from_wmoid.f90 b/cx_dncomp/src/sensorname_from_wmoid.f90
index 9e4a633bba440f4e9173694f50b4a899b2cee460..45ec184d89dd2f330b23c8280764a3d51bb3bde2 100644
--- a/cx_dncomp/src/sensorname_from_wmoid.f90
+++ b/cx_dncomp/src/sensorname_from_wmoid.f90
@@ -12,25 +12,25 @@ function sensorname_from_wmoid (id) result(sensor_name)
       case(4)
          sensor_name = 'METOP-A'
       case(5)
-         sensor_name = 'METOP-C'   
+         sensor_name = 'METOP-C'
       case(55)
-         sensor_name = 'Meteosat-8' 
+         sensor_name = 'Meteosat-8'
       case(56)
-         sensor_name = 'Meteosat-9' 
+         sensor_name = 'Meteosat-9'
       case(57)
-         sensor_name = 'Meteosat-10' 
+         sensor_name = 'Meteosat-10'
       case(70)
-         sensor_name = 'Meteosat-11' 
+         sensor_name = 'Meteosat-11'
       case(171)
          sensor_name = 'MTSAT-1R'
       case (172)
          sensor_name = 'MTSAT-2'
       case (173)
-         sensor_name = 'AHI'  
+         sensor_name = 'AHI'
       case (174)
-         sensor_name = 'AHI'        
+         sensor_name = 'AHI'
       case (200:204)
-         write(sensor_name, "('NOAA-',i2.2)") id - 192 
+         write(sensor_name, "('NOAA-',i2.2)") id - 192
       case (205:209)
          write(sensor_name, "('NOAA-',i2.2)") id - 191
       case(223)
@@ -38,7 +38,7 @@ function sensorname_from_wmoid (id) result(sensor_name)
       case(224)
          sensor_name = 'VIIRS'
       case(225)
-         sensor_name = 'NOAA-20'   
+         sensor_name = 'NOAA-20'
       case(252)
          sensor_name = 'GOES-08'
       case(253)
@@ -56,34 +56,36 @@ function sensorname_from_wmoid (id) result(sensor_name)
       case(259)
          sensor_name = 'GOES-15'
       case(384)
-          sensor_name = 'METIMAGE'   
+          sensor_name = 'METIMAGE'
       case(523)
          sensor_name = 'FY3D'
       case(530)
          sensor_name = 'FY4A'
       case(270)
-         sensor_name = 'GOES-16' 
+         sensor_name = 'GOES-16'
       case(271)
-         sensor_name = 'GOES-17' 
+         sensor_name = 'GOES-17'
+      case(272)
+          sensor_name = 'GOES-18'
       case(705)
-         sensor_name = 'NOAA-05'   
+         sensor_name = 'NOAA-05'
       case(706)
-         sensor_name = 'NOAA-06'   
+         sensor_name = 'NOAA-06'
       case(707)
          sensor_name = 'NOAA-07'
       case(708)
-         sensor_name = 'TIROS-N'   
+         sensor_name = 'TIROS-N'
       case(783)
          sensor_name = 'MODIS-TERRA'
       case(784)
          sensor_name = 'MODIS-AQUA'
       case(810)
-         sensor_name = 'COMS-1'   
+         sensor_name = 'COMS-1'
       case default
-         print*,'sensor wmo id: ', id 
+         print*,'sensor wmo id: ', id
          stop 'please inform  andi.walther@ssec.wisc.edu wmo id: '
    end select
-   
-   
+
+
 
 end function sensorname_from_wmoid
diff --git a/cx_sds_io/Release_gfortran/makefile b/cx_sds_io/Release_gfortran/makefile
index ae03375753e2a72e03f738e980c30070a10fb51d..f17c8186e0bde265510bf1fed3a61fe0932cee7a 100644
--- a/cx_sds_io/Release_gfortran/makefile
+++ b/cx_sds_io/Release_gfortran/makefile
@@ -6,6 +6,21 @@
 
 RM := rm -rf
 
+GF_VERSION := $(shell gfortran -dumpversion)
+VERSION := 9.
+fflags1= -O2
+
+GF_VERSION_MAJ = $(firstword $(subst ., ,$(GF_VERSION)))
+
+
+ifeq ($(shell test $(GF_VERSION_MAJ) -gt 9; echo $$?),0)
+fflags1 += -fallow-argument-mismatch 
+endif
+
+#ifeq ($(VERSION),$(firstword $(sort $(GF_VERSION) $(VERSION))))
+#fflags1 += -fallow-argument-mismatch 
+#endif
+
 # All of the sources participating in the build are defined here
 -include sources.mk
 -include src/subdir.mk
@@ -35,14 +50,22 @@ endif
 
 # Add inputs and outputs from these tool invocations to the build variables 
 
+
+
+
+
 # All Target
 all: cx_sds_io
 
+
+
+
 # Tool invocations
 cx_sds_io: $(OBJS) $(USER_OBJS)
+	
 	@echo 'Building target: $@'
 	@echo 'Invoking: MacOS X Fortran Linker'
-	gfortran -g -O0 -L"${HDF5_PATH}/lib/" -L"${HDF4_PATH}/lib" -L"${NETCDF_PATH}/lib/" -o "cx_sds_io" $(OBJS) $(USER_OBJS) $(LIBS)
+	gfortran $(fflags1) -L"${HDF5_PATH}/lib/" -L"${HDF4_PATH}/lib" -L"${NETCDF_PATH}/lib/" -o "cx_sds_io" $(OBJS) $(USER_OBJS) $(LIBS)
 	@echo 'Finished building target: $@'
 	@echo ' '
 	$(MAKE) --no-print-directory post-build
diff --git a/cx_sds_io/Release_gfortran/src/subdir.mk b/cx_sds_io/Release_gfortran/src/subdir.mk
index 8ba428a61071a6ed27e95e37c4bd240ad673f786..1371986b2accaa62768b1c41a2e8ac64ef6fc6a8 100644
--- a/cx_sds_io/Release_gfortran/src/subdir.mk
+++ b/cx_sds_io/Release_gfortran/src/subdir.mk
@@ -29,11 +29,13 @@ OBJS += \
 # Each subdirectory must supply rules for building sources it contributes
 src/%.o: ../src/%.f90
 	@echo 'Building file: $<'
+	@echo $(sort $(GF_VERSION) $(VERSION))  
 	@echo 'Invoking: GNU Fortran Compiler'
-	gfortran -I"${HDF4_PATH}/include" -I"${HDF5_PATH}/include/" -I"${NETCDF_PATH}//include/" -O2  -c -o "$@" "$<"
+	gfortran $(fflags1) -I"${HDF4_PATH}/include" -I"${HDF5_PATH}/include/" -I"${NETCDF_PATH}//include/" -O2  -c -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
+
 src/cx_h5_read_mod.o: ../src/cx_h5_read_mod.f90 src/cx_sds_type_definitions_mod.o src/readh5dataset.o
 
 src/cx_hdf_read_mod.o: ../src/cx_hdf_read_mod.f90 src/cx_sds_type_definitions_mod.o
diff --git a/docs/release/RELEASE.md b/docs/release/RELEASE.md
new file mode 100644
index 0000000000000000000000000000000000000000..d9ed8b69b13b13493a43fef2cdd65694632080c2
--- /dev/null
+++ b/docs/release/RELEASE.md
@@ -0,0 +1,22 @@
+
+Release v1.0.0
+==================
+
+Checklist
+----------
+
+- remove commented and unreachable code
+- remove redundant files
+- grep all TODO
+- disable incomplete features
+- review -Wall compile warnings
+- debug compile and run full testing suite
+- update code version in version.inc and acha module
+- check module documentation
+- code formatting
+- Update README, CHANGES.md
+- make release summary commit
+- rebase and reword/fixup commit messages
+
+
+
diff --git a/docs/release/annotated_log.txt b/docs/release/annotated_log.txt
new file mode 100644
index 0000000000000000000000000000000000000000..ca0c3c81fd0caa89d6e2258ce0d271160e6a05d8
--- /dev/null
+++ b/docs/release/annotated_log.txt
@@ -0,0 +1,4505 @@
+commit 31d6cd903b1ecddf34f055f0b67628828f9a8479
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Wed Aug 17 19:35:59 2022 +0000
+
+    Change g16 conus test to daytime
+
+                     No 31d6cd9 data for comparison
+commit 106e4ced78888cb2bc1a48ada42b0eb88f75131b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Aug 15 18:14:24 2022 +0000
+
+    Put cld_cwp_nwp back in level2
+
+                     Missing parent test data, using ancestor e7124ae
+           ==================== nwp ====================
+                             cld_cwp_nwp differs in "test_g16_conus_day"
+
+           Compared: 106e4ce e7124ae
+
+commit 5b3967c7b0bfc087ef2b0aa929bdf3edbd89fd9a
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Aug 15 18:07:00 2022 +0000
+
+    Add more changes to changelog
+
+                     No 5b3967c data for comparison
+commit b3285a45ab9e1dedbab4501074384630b5ee8b13
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Aug 8 15:46:20 2022 +0000
+
+    More annotations
+
+                     No b3285a4 data for comparison
+commit e7b4119566a7d36ebbca563d32c08f3c1e79ec11
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Aug 8 15:26:53 2022 +0000
+
+    Add annotated commit log in release docs
+
+                     No e7b4119 data for comparison
+commit bf0cc18bf2aa0fb3cbfda02b660e57a929f161b8
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri Aug 5 20:57:54 2022 +0000
+
+    Completely remove top-down opaque cloud height
+
+                     No bf0cc18 data for comparison
+commit 997b94e07aae30cca0eb5f2df40869488bd12d48
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Wed Aug 10 17:49:54 2022 -0500
+
+    removed unused module linking
+
+                     No 997b94e data for comparison
+commit be36772d034d836707daef45c33ccc48ade00579
+Author: Mike Foster <mfoster@incus.ssec.wisc.edu>
+Date:   Fri Feb 11 20:45:36 2022 +0000
+
+    Remove VZA correction since bug has been fixed
+
+                     No be36772 data for comparison
+commit e7124aee81f52b1b32f9178be063de751cdce5f8
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri Aug 5 15:26:46 2022 +0000
+
+    Remove unused code
+
+commit fde7f4a4358e4741d78467e1fc45d2f92ea550ca
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri Jul 29 18:17:03 2022 +0000
+
+    Add gdb to testing modes
+
+commit 6d64b525ee152f426342f5196925cefd3f14fa26
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri Jul 29 15:07:21 2022 +0000
+
+    Fix missing values in refl_sfc_white_sky_
+
+commit 16c64767c62953495a6a533daa0cad005b81822b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri Jul 29 14:43:24 2022 +0000
+
+    Initialize array
+
+commit 29aab4a569d09243261693be5e7b05fa8a8aeb3c
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Jul 28 21:55:51 2022 +0000
+
+    Fix data type in refl_sfc_white_sky_
+
+commit 7ea6dd24ac3f0514af7f72f6ebcc651155521ff6
+Merge: 8badfec 8cd04c6
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Jul 28 20:03:34 2022 +0000
+
+    Merge branch 'master' into develop
+
+          NOTE: merge with master branch, which diverged from develop in Feb 2022.
+           The extra commits in master had no effect on output
+           These are all the changes that have happened in develop since then
+
+           ==================== l1b ====================
+                         cld_temp_opaque differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+                                ndvi_sfc differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                       cld_height_opaque differs in "test_g16_conus_day"
+                        cld_press_opaque differs in "test_g16_conus_day"
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== rtm ====================
+              refl_0_65um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_65um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_0_86um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_86um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_1_60um_nom_atmos_corr differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+     cld_press_lower_acha missing from 8cd04c6/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+               refl_1_60um_nom_clear_sky differs in "test_g16_conus_day"
+
+           Compared: 7ea6dd2 8cd04c6
+
+commit 8badfec98d70e068d2ec309b375766063433bc1a
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri Jul 15 17:56:49 2022 +0000
+
+    Test updates
+
+commit 18d757fb69c32ee0bd869b30d254d3ee20142b8e
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Jun 30 18:31:19 2022 +0000
+
+    Add perf and valgrind testing modes
+
+commit aef67a184c008e65afa829d031267c009b62014e
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Tue Jun 14 14:04:26 2022 +0000
+
+    Update testing documentation and add archive script
+
+commit 35d97430ef7ac06e93e8be9ae022edff3473a703
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Wed Jun 8 18:55:48 2022 +0000
+
+    Initialize pointers
+
+commit dec29253c3cbacc818962130cf11d02543138d2f
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon May 23 16:32:00 2022 +0000
+
+    Remove commented code and fix some formatting
+
+commit 8863992108c07ffff7588bf78ea2b8e5958d222b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon May 23 15:38:33 2022 +0000
+
+    Fix more uninitialized memory reads
+
+            NOTE: cloud_type_acha changes because of uninitialized memory. Fixed in 8863992 (this commit)
+
+           ==================== acha ====================
+                         cloud_type_acha differs in "test_g16_conus_day"
+
+           Compared: 8863992 ae2cb9f
+
+commit ae2cb9fa308e2ef9880c17dbbc58275fd6604662
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Tue May 17 21:37:24 2022 +0000
+
+    Update changelog
+
+commit fd9d4ab6a931c1995ab46662105818dd30cd6784
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Tue May 17 21:23:46 2022 +0000
+
+    Update version numbers
+
+commit e3660702cabc0f45c1e82732a7f90e5308a54dcd
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 20:46:36 2022 +0000
+
+    fix cloud transmission long_name in level 2
+
+commit 1d58aa5c0e94cd184f00a26a8b11f1c9a6736ca6
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 19:56:09 2022 +0000
+
+    Remove commented code
+
+commit 39e1606f49f918cf4d57cc170f89ad81b118ebd0
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 19:55:16 2022 +0000
+
+    Stop using uninitialized data in cloud_height_routines
+
+commit 61708bdfde67e2d3db52f160231efb3e21cdf89c
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 19:34:29 2022 +0000
+
+    Always initialize pointers in acha_module
+
+commit 7b10e0e035ae3429c78c638ca3f0f535a14099a9
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 19:28:40 2022 +0000
+
+    Stop using uninitialized data within dncomp
+
+commit 17cc15a0dfcd99e6c62d2827ae2bde095ae9b748
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 16:30:01 2022 +0000
+
+    Fix implicit usage of uninitialized data due to function signature in acha_rtm_mod.f90
+
+commit 45690af03ba017d0baa842c6c2fc5c2b41151b54
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 14:01:10 2022 +0000
+
+    If-statement uses uninitialized memory in sensor_mod
+
+commit 14a9dfc2f45dabf61326d7f3c44c57ce99b0cdbc
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu May 12 18:15:28 2022 +0000
+
+    Move docs
+
+commit 02db9ccb07e861f526d5c40d52b28d4b0e84f736
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu May 12 15:18:26 2022 +0000
+
+    Partially remove commented code
+
+commit f3774db2fad2476471b96579216a9feba7169b59
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu May 12 14:51:27 2022 +0000
+
+    Add release checklist
+
+commit ea9266079e408077241e0b9c7c8320471425e3e3
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Jul 28 02:25:16 2022 +0000
+
+    bug fix identified by Coda
+
+            NOTE: opaque cloud temp also changed back to bottom-up (was top-down since bca2d98)
+            AMV applications prefer top-down
+
+           ==================== l1b ====================
+                         cld_temp_opaque differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+                                ndvi_sfc differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                       cld_height_opaque differs in "test_g16_conus_day"
+                        cld_press_opaque differs in "test_g16_conus_day"
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== rtm ====================
+              refl_0_65um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_65um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_0_86um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_86um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_1_60um_nom_atmos_corr differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+               refl_1_60um_nom_clear_sky differs in "test_g16_conus_day"
+
+           Compared: ea92660 307f005
+
+commit 307f0050fa2204690e249f317cdfec8b91b54cf1
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 20:37:42 2022 +0200
+
+    change for higher gfortrans
+
+commit aeb85dc01df9488e3568bb704b8a0fa7936cd4f4
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 18:19:43 2022 +0200
+
+    change for higher gfortrans
+
+commit eee559d921815768f92a7a20a61872d21413439b
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 17:40:11 2022 +0200
+
+    change for higher gfortrans
+
+                     Missing parent test data, using ancestor 52c305f
+commit 4925f01070cb69e8acc818a28dd4e3d63c0dec3e
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 17:22:12 2022 +0200
+
+    change for higher gfortrans
+
+                     No 4925f01 data for comparison
+commit a9c283370869712620138e1079fd91ac2d76ec22
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 17:13:08 2022 +0200
+
+    int instead of old style long
+
+                     No a9c2833 data for comparison
+commit 2ab73ab9068248b2928796e5aa7a5b7fb75be536
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 17:12:24 2022 +0200
+
+    change for higher gfortrans
+
+                     No 2ab73ab data for comparison
+commit 68736a7fe03a36eec224d3fc4114895d848529e0
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 17:11:27 2022 +0200
+
+    change for higher gfortrans
+
+                     No 68736a7 data for comparison
+commit 52c305fb0005a4bab76d6d47d3db9913a915334d
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 16:26:08 2022 +0200
+
+    add gfortran10
+
+commit 71034c612e59bff00a4761d3933c81398cbc1e1a
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jun 29 19:03:40 2022 +0200
+
+    add gfortran versions above gcc10
+
+                     Missing parent test data, using ancestor 25aed62
+commit b84c558a11d9bca0e9cf9a063d2f75d2a554e8e1
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jun 29 19:00:46 2022 +0200
+
+    add gfortran versions above gcc10
+
+                     No b84c558 data for comparison
+commit c18823407711514350a3893b5f0058cdcebc2e75
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jun 29 17:33:24 2022 +0200
+
+    add keywords for newer compilers
+
+                     No c188234 data for comparison
+commit 25aed6296fa3f65ae6be255073415ed2a40b2372
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jun 24 15:18:51 2022 +0200
+
+    UMD fix
+
+        NOTE: Before, land emissivity was missing if sfc_emiss_option==0 (UMD)
+              This commit fixes that (bug predates git repo), so surface emissivity is no longer missing
+              The change in surface emissivity affects many products. 
+              refl_sfc_white_sky_0_65um_nom differs in Himawari-8 AHI and GOES-16, and GOES-17 ABI
+              This is due to uninitialzed data outside cropped region, these vars are garbage until 6d64b52 anyway.
+
+           ==================== l1b ====================
+
+           ==================== geo ====================
+                              glint_mask differs in multiple tests
+
+           ==================== ancil ====================
+           refl_sfc_white_sky_0_65um_nom differs in multiple tests
+           refl_sfc_white_sky_0_86um_nom differs in multiple tests
+           refl_sfc_white_sky_1_60um_nom differs in multiple tests
+           refl_sfc_white_sky_2_10um_nom differs in multiple tests
+                  ndvi_sfc_white_sky_nwp differs in multiple tests
+
+           ==================== nwp ====================
+
+           ==================== rtm ====================
+               temp_11_0um_nom_clear_sky differs in multiple tests
+               temp_12_0um_nom_clear_sky differs in multiple tests
+               temp_3_75um_nom_clear_sky differs in multiple tests
+                temp_8_5um_nom_clear_sky differs in multiple tests
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in multiple tests
+              cloud_fraction_uncertainty differs in multiple tests
+                              cloud_mask differs in multiple tests
+                       cloud_mask_binary differs in multiple tests
+          cloud_mask_test_packed_results differs in multiple tests
+                             cloud_phase differs in multiple tests
+                       cloud_probability differs in multiple tests
+           cloud_probability_uncertainty differs in multiple tests
+                              cloud_type differs in multiple tests
+                  conv_cloud_probability differs in multiple tests
+                   ice_cloud_probability differs in multiple tests
+                              smoke_mask differs in multiple tests
+                 water_cloud_probability differs in multiple tests
+
+           ==================== acha ====================
+                               acha_info differs in multiple tests
+                     acha_inversion_flag differs in multiple tests
+                            acha_quality differs in multiple tests
+                       cld_altitude_acha differs in multiple tests
+                           cld_beta_acha differs in multiple tests
+                          cld_emiss_acha differs in multiple tests
+                    cld_emiss_acha_uncer differs in multiple tests
+                         cld_height_acha differs in multiple tests
+                    cld_height_base_acha differs in multiple tests
+                     cld_height_eff_acha differs in multiple tests
+                   cld_height_uncer_acha differs in multiple tests
+                            cld_opd_acha differs in multiple tests
+                      cld_opd_uncer_acha differs in multiple tests
+                          cld_press_acha differs in multiple tests
+                      cld_press_eff_acha differs in multiple tests
+                    cld_press_uncer_acha differs in multiple tests
+                           cld_reff_acha differs in multiple tests
+                           cld_temp_acha differs in multiple tests
+                       cld_temp_eff_acha differs in multiple tests
+                     cld_temp_lower_acha differs in multiple tests
+                     cld_temp_prior_acha differs in multiple tests
+                     cld_temp_uncer_acha differs in multiple tests
+                         cloud_type_acha differs in multiple tests
+                               cost_acha differs in multiple tests
+                           goodness_acha differs in multiple tests
+                           ice_prob_acha differs in multiple tests
+                     ice_prob_uncer_acha differs in multiple tests
+                             latitude_pc differs in multiple tests
+                            longitude_pc differs in multiple tests
+               lower_cld_temp_prior_acha differs in multiple tests
+                   supercooled_prob_acha differs in multiple tests
+            wind_direction_cloud_top_nwp differs in multiple tests
+                wind_speed_cloud_top_nwp differs in multiple tests
+
+           ==================== acba ====================
+                       cld_base_altitude differs in multiple tests
+                           cld_geo_thick differs in multiple tests
+                         cld_height_base differs in multiple tests
+                           cld_temp_base differs in multiple tests
+                 lower_cld_base_altitude differs in multiple tests
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in multiple tests
+                           cld_cwp_dcomp differs in multiple tests
+                           cld_opd_dcomp differs in multiple tests
+                         cld_opd_dcomp_3 differs in multiple tests
+                       cld_opd_dcomp_unc differs in multiple tests
+                          cld_reff_dcomp differs in multiple tests
+                        cld_reff_dcomp_3 differs in multiple tests
+                      cld_reff_dcomp_fit differs in multiple tests
+                      cld_reff_dcomp_unc differs in multiple tests
+                 cloud_albedo_0_65um_nom differs in multiple tests
+           cloud_transmission_0_65um_nom differs in multiple tests
+                              dcomp_info differs in multiple tests
+                           dcomp_quality differs in multiple tests
+                              hcld_dcomp differs in multiple tests
+                        insolation_dcomp differs in multiple tests
+                insolation_diffuse_dcomp differs in multiple tests
+                               iwc_dcomp differs in multiple tests
+                               lwc_dcomp differs in multiple tests
+                               rain_rate differs in multiple tests
+              refl_0_65um_nom_asym_dcomp differs in multiple tests
+
+           ==================== sst ====================
+
+           ==================== ccl ====================
+                                   ccl_1 differs in multiple tests
+                                   ccl_2 differs in multiple tests
+                                   ccl_3 differs in multiple tests
+                                   ccl_4 differs in multiple tests
+                                   ccl_5 differs in multiple tests
+                          ccl_layer_flag differs in multiple tests
+                              conv_ccl_1 differs in multiple tests
+                              conv_ccl_2 differs in multiple tests
+                              conv_ccl_3 differs in multiple tests
+                              conv_ccl_4 differs in multiple tests
+                              conv_ccl_5 differs in multiple tests
+                     conv_ccl_layer_flag differs in multiple tests
+                     conv_cloud_fraction differs in multiple tests
+                       supercooled_ccl_2 differs in multiple tests
+                       supercooled_ccl_3 differs in multiple tests
+                       supercooled_ccl_4 differs in multiple tests
+                       supercooled_ccl_5 differs in multiple tests
+              supercooled_ccl_layer_flag differs in multiple tests
+              supercooled_cloud_fraction differs in multiple tests
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in multiple tests
+               beta_11um_12um_tropopause differs in multiple tests
+               beta_11um_85um_tropopause differs in multiple tests
+                      cld_emiss_splitwin differs in multiple tests
+                      cld_press_splitwin differs in multiple tests
+                          cloud_phase_ir differs in multiple tests
+                 cloud_phase_uncertainty differs in multiple tests
+                           cloud_type_ir differs in multiple tests
+                    csbt_mask_11_0um_nom differs in multiple tests
+                    csbt_mask_12_0um_nom differs in multiple tests
+                     csbt_mask_8_5um_nom differs in multiple tests
+                  emiss_3_75um_nom_clear differs in multiple tests
+                    emiss_sfc_11_0um_nom differs in multiple tests
+                    emiss_sfc_3_75um_nom differs in multiple tests
+                     emiss_sfc_8_5um_nom differs in multiple tests
+                  emiss_tropo_11_0um_nom differs in multiple tests
+                  emiss_tropo_12_0um_nom differs in multiple tests
+                  emiss_tropo_3_75um_nom differs in multiple tests
+                   emiss_tropo_8_5um_nom differs in multiple tests
+               refl_3_75um_nom_clear_sky differs in multiple tests
+           surface_temperature_retrieved differs in multiple tests
+
+
+
+commit 1ffce1d4f13098e6fa69a5454dee7c77ffda1907
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Jun 20 15:22:57 2022 +0000
+
+    isnan doesn't work if you compile with -ffast-math
+    so disable finite-only math flag in modules that use isnan
+
+commit 4ad19e289ca1e2d3677794c04a5f7b68224da76b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Jun 2 15:57:14 2022 +0000
+
+    cleanup tmpdirs when no l1b
+
+commit 59bb6c92f4a44b76e767891a04d48762d3f6a811
+Author: Yue Li <yli@selene.ssec.wisc.edu>
+Date:   Wed Jun 1 19:55:59 2022 +0000
+
+    add filter to KDtree input due to unexpected AHI cloud type when lat/lon are missing
+
+commit bb47ed8d7a368406785643cc61d4995869d0034c
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Thu May 19 15:33:14 2022 +0000
+
+    a fix to make sure kd-tree calculation is not out of bounds
+
+commit eabc6ce1b604fa275abc7ada0f6a0e0fb39ddf49
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Mon May 16 21:32:45 2022 +0000
+
+    added mvcm to goes16/17
+
+commit 9f9ee77c56bc6cd2d522c789385e94f80978d1a5
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Tue May 10 21:10:18 2022 +0000
+
+    Fix bug in DCOMP insolation
+
+commit 6ed8e6686b7a4e55d7547d7ac76fe2bc92762545
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed May 4 13:32:19 2022 +0000
+
+    sbaf work
+
+commit b3aa0419acadfce2957dcda28694183bcb57d55c
+Merge: a252649 b57e59b
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed May 4 13:30:44 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+commit a252649d8b93cfcd047b624475e09b419f977eed
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed May 4 13:28:20 2022 +0000
+
+    moded for isccp
+
+commit b57e59be123107e50eaa9b844e4f5daca436bbb6
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed May 4 14:38:24 2022 +0200
+
+    signal handling
+
+                     Missing parent test data, using ancestor 9d9c547
+commit 8a15928354c49eb20eb6750b0658040e18c80a8b
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed May 4 14:13:09 2022 +0200
+
+    changed signal SIUGTERM from 12 to 15 which seemed to work on all machines
+
+                     No 8a15928 data for comparison
+commit 8cd04c6586e1e7288fa5731b9a15246c0bd8197e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Apr 18 17:04:20 2022 +0000
+
+    Revert "excluded high res files from normal VIIRS resolution to avoid stops"
+    
+    this was done in master by accident
+    
+    This reverts commit 1003948593921790a88517aaed7bba015858c8e0.
+
+commit 1003948593921790a88517aaed7bba015858c8e0
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Apr 18 16:49:26 2022 +0000
+
+    excluded high res files from normal VIIRS resolution to avoid stops
+
+commit 9d9c547c12bc03c01a71fd96aba7060b9f4e6ff2
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Apr 14 20:42:39 2022 +0000
+
+    Make test work with old python
+
+commit 0fc95167ef4ab2f8b7f11b323ba1d95424d1f2bd
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Apr 14 19:54:34 2022 +0000
+
+    Add test for the SIGNAL bugfix
+
+commit b801989be2c812a7d7427c1bd07b7fafd4821c9b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Apr 14 17:57:32 2022 +0000
+
+    Handle fortran SIGNAL() return status correctly
+
+commit 71728f522fdde4b95d67ec93f0187f5141ff3572
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Apr 14 09:37:00 2022 -0500
+
+    removed confusing and wrong comment in example option line
+
+commit 10d2123e45c05157002aa78f5fd17e79d65ea4ae
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Tue Apr 5 21:38:39 2022 +0000
+
+    added mvcm read for him08
+
+commit d3a8b263247c5632e19bd4f670d8e826dc53e662
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Apr 4 21:22:24 2022 +0000
+
+    Make temp_files suffix actually unique and put the dummy files inside the temp_files
+
+commit 80b21faa61fd471ee947febe2c1aa8e0271e3b8f
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Apr 4 21:05:35 2022 +0000
+
+    Handle SIGINT and SIGTERM to clean up the temp_files_ directory before exiting
+
+commit 8b4278f0d09ae5a090d1fef75278c4dbebcacd0b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Tue Apr 5 03:33:14 2022 +0000
+
+    No new files in cwd
+
+commit 0b750f7bedc87f410f2044098e2c8c9b5e57a36c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Apr 4 19:13:59 2022 +0200
+
+    messaging
+
+commit dd89d94dd29d8b891df1d730cf77a88c7b3838da
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Apr 4 19:13:54 2022 +0200
+
+    messaging
+
+commit fc2a483b06bf6876a47dbf184f07f12e774552f9
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Apr 4 19:13:48 2022 +0200
+
+    messaging
+
+commit 4241df6ac24cfd5f754806d177025da23f6e7027
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sun Apr 3 15:02:58 2022 +0200
+
+    fixed messages
+
+commit 9e13a5ed86f0b29d11cc32297389025b1b4fa26c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sun Apr 3 15:02:40 2022 +0200
+
+    fixed messages
+
+commit b9fbd6509dd8b217ebc02d599575a292c20ed7c8
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Apr 1 01:43:43 2022 +0200
+
+    add catch for all bad-pixels segments for RTM
+
+           NOTE: cloud_type_acha changes because of uninitialized memory. Fixed in 8863992
+
+           ==================== ccl ====================
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+
+           Compared: b9fbd65 280f486
+
+commit 280f4865bb7abf9a340559aa49e83a194a575080
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Mar 30 00:52:22 2022 +0200
+
+    add older GOES to RTTOV
+
+commit c1d1a64e464a0b9532fb8115e9658c3a21720d12
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Tue Mar 29 20:04:19 2022 +0000
+
+    set obs to missing, leave only path data
+
+commit bd16ef7827044c5911b8ee24aec807420590c8b4
+Merge: 7911ca1 71ec9c6
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Mar 28 18:46:14 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+commit 7911ca1a3ec25f6466d83ea3a396b61f37d2a673
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Mar 28 18:45:54 2022 +0000
+
+    default acha settings
+
+commit 71ec9c6ec4c390a23d3ad6991256f06c6951b2f6
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Mar 28 18:44:41 2022 +0000
+
+    Add changelog
+
+commit e995d862fc0e0866081327099974c09aab7891bb
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Mar 28 18:41:20 2022 +0000
+
+    amv parameters called out
+
+commit 4183499e70f02b64b544fc69659361f8f0dd515d
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Mon Mar 21 23:32:52 2022 +0000
+
+    turned off temporary shadow
+
+           NOTE: only difference in cloud_mask_test_packed_results is "shadow_detected" bit
+
+           ==================== ecm2 ====================
+                             shadow_mask differs in "test_g16_conus_day"
+
+           Compared: 4183499 c111e02
+
+commit c111e023ad2684df3d6ce0bbd22b52d6228415c3
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Tue Mar 15 21:24:54 2022 +0000
+
+    fix for caliop matchups missing /= -999
+
+commit eb72985f6b43bb56b4815a0fa594d9c5c03ac4b3
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Mar 15 15:17:46 2022 +0000
+
+    removed commented lines
+
+commit 9004a1fae86a0391e1a172d7d38bd387016b242c
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Mar 15 15:17:26 2022 +0000
+
+    removed commented lines
+
+commit eb7526bb311efe9c0c128aa93e396640b958670e
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Mar 15 15:16:53 2022 +0000
+
+    removed commented lines
+
+commit 92f044b3586c0b4fb54e377dd25d4f413f45a860
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Mar 15 15:16:13 2022 +0000
+
+    removed commented lines
+
+           NOTE: "added cld_press_lower_acha to level2" is a more accurate commit message
+
+           ==================== acha ====================
+     cld_press_lower_acha missing from 40054b1/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           ==================== ccl ====================
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+
+           Compared: 92f044b 40054b1
+
+commit 40054b19e8c29a623da9d40803449c2c85de0770
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Mar 15 15:15:45 2022 +0000
+
+    removed commented lines
+
+commit fb704b8d59735c6eb06183f945cde25c775e6dba
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Mar 8 20:55:45 2022 +0000
+
+    added new metrics
+
+commit cb05a1f2e717cf86e5c3f0cc5c54c5301927961b
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Thu Mar 3 13:30:25 2022 +0000
+
+    All modules modified for GOES-18 support
+
+commit 5afc1589939ef7ee386e223fff75f3a28252e1f7
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Wed Feb 16 18:41:31 2022 +0000
+
+    Make clavrx fail gracefully when encountering an empty l1b
+
+commit f4c6d2c82630d90a25770138798e3ddf1cbf6774
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Tue Feb 15 16:02:22 2022 +0000
+
+    Fix segfault when running avhrr with process_cloud=off
+
+commit 213bc72b8e909f1ed7ee868b5414b80cd1a70d68
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Feb 15 10:00:13 2022 +0100
+
+    removed magic numbers
+
+commit bd6e2e080b9bc6787f02d4f6bc37ac99b31e70ff
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Feb 15 09:43:49 2022 +0100
+
+    removed useless gamma factor adjustment for solar cjhannels
+
+commit 3800185c37a87a97e39d615014b2129f281d4587
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Feb 12 11:14:09 2022 +0100
+
+    early goes rttov
+
+commit 756c9f9dc90de4a8cf23204b65e2448521060346
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Feb 10 19:25:48 2022 +0000
+
+    Add bounds check because array oob was causing segfault
+
+commit 495d7bf0869aa60f07e4292a3fc3655010f168fd
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Feb 10 19:23:47 2022 +0000
+
+    Convert file to unix line endings
+
+commit c6dc085b7acf8698007ef28b8a397c2cc47fd05d
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Feb 10 16:14:36 2022 +0000
+
+    Add AVHRR test
+
+commit 8050d8455ddc425b54685edf5b1137d1a35e881b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Feb 10 14:48:11 2022 +0000
+
+    Show clavrx logs during tests
+
+commit acf0525ac8fd51a578d93be7feca15ad4c2f21ea
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Wed Feb 2 21:18:45 2022 +0000
+
+    Add VIIRS and FUSION smoke tests
+
+commit 088c1578c77b9f25e3a84d7bb6ba200f9d0d1f3d
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Jan 31 21:52:41 2022 +0000
+
+    start setting up CI build
+
+commit 57c3d111e17b32044bdc530c51dc2c31721a91f8
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Feb 1 16:58:56 2022 +0100
+
+    reoved useless function in dcomp
+
+commit 58af54670bcf38543327f7d5c9a6f7e0dd2dd675
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Feb 1 12:37:57 2022 +0100
+
+    delete file
+
+commit 705660c8a8265b1269315a050423d1ccbe46973e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Feb 1 12:30:13 2022 +0100
+
+    removed unused variables and tools
+
+commit a268952884fc08ae32ea9fd6e1cee2df31ba4634
+Author: Coda Phillips <coda.phillips@ssec.wisc.edu>
+Date:   Mon Jan 31 17:32:28 2022 +0000
+
+    Update .gitlab-ci.yml file
+
+commit 072d2b24c2f465618d9085b548f7ca2fd096cb80
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jan 31 15:13:42 2022 +0100
+
+    level2 mod fix to avoid endless loop
+
+commit 73579c1bd955c6b9123bb57a7e5b69ef143fff75
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jan 31 13:22:38 2022 +0100
+
+    fixed hits metop
+
+commit eb702d338977e3b537f7f352b6d4d91ac5e63f11
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 26 12:59:07 2022 +0100
+
+    add some ignore files
+
+commit a5fd44df07209eb68c27f902d6f9402723ba8edf
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Tue Jan 25 23:33:45 2022 +0000
+
+    added 2 cases yyyymmdd and hhmm
+
+commit d0dfe12ebb5e7879380915444ba5c50c19a6a7b8
+Merge: 42b78c7 2c6342f
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Tue Jan 25 20:21:44 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+commit 42b78c708aa22989fcf999fde307b4295b39130c
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Tue Jan 25 20:21:05 2022 +0000
+
+    nwp_common_mod.f90 - adjust trop indexing for INDOEX processing issue
+
+commit 2c6342fba0d07bd006c2a94067f0354b04a7ee9d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jan 20 14:13:15 2022 +0100
+
+    shadow work
+
+commit 8240cc70aea2d1582e24a3b0dfc4fe663371768b
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 19 22:00:08 2022 +0000
+
+    fixed azimuth for l1g
+
+commit 44b9aa6daabed0d7c63b002be55650d12d902565
+Merge: 6538ba1 381c0b4
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 19 16:04:22 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+commit 6538ba134dcd86780003c671b6bd1e8b54f2f700
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 19 16:03:56 2022 +0000
+
+    added radiances to isccp-ng
+
+commit 381c0b41c21c83dd5205798e3309ce3d9c8d0f5c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 16:07:35 2022 +0100
+
+    SPACE in caliop
+
+commit 4df1ed4a825fe4803fd7dc01237d63e5792ae59e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 16:04:51 2022 +0100
+
+    space mask
+
+                     No ancestor data for comparison
+commit 0e4d75c577934f857ae4b2635b7f6067ff8560dd
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 15:57:52 2022 +0100
+
+    stop in space
+
+                     No 0e4d75c data for comparison
+commit b37025b32df66a5db45164bf6464115c80cea171
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 15:50:16 2022 +0100
+
+    shadow avoid endless loop
+
+                     No b37025b data for comparison
+commit 4a3d50080958c92db3ca35fb92794e3f6fe567d0
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 15:49:05 2022 +0100
+
+    removed stop
+
+                     No 4a3d500 data for comparison
+commit 1a1277f094616cd8826999f82996bf72f55c5088
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 15:51:38 2022 +0100
+
+    stop in space
+
+                     No 1a1277f data for comparison
+commit 7913e701a9f4f9bf8f2444f5cd7e07fb859bb6b7
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 15:45:33 2022 +0100
+
+    fix
+
+                     No 7913e70 data for comparison
+commit 7325bb2e87555da5deb069f2684a799eb5b830dd
+Merge: b8c04d7 f1d15e2
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 19 14:34:36 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+                     No 7325bb2 data for comparison
+commit b8c04d77749478c1b0222d1ca70df04832a208ba
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 19 14:34:33 2022 +0000
+
+    small tweaks for l1g
+
+commit 9354a51e047388ed14a18e3e195f97bb52ee330b
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 19 14:32:54 2022 +0000
+
+    small tweaks for l1g
+
+           NOTE: cld_height_acha changed because of changes to netcdf type/scale/offset
+
+           ==================== acha ====================
+                         cld_height_acha differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                              wmo_id_l1g differs in "test_g16_conus_day"
+
+           Compared: 9354a51 6567cff
+
+commit f1d15e26e3cf99155c61604bb1ebd1a05ab11a2a
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 13:56:36 2022 +0100
+
+    made space to a logical
+
+                     No f1d15e2 data for comparison
+commit 6567cffdc8d179de37e8f79b90ba5bd3fbd4e6aa
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jan 18 17:44:57 2022 +0100
+
+    some code style changes
+
+commit 1628625acdf04e428fbd28b68e2af308fabd7b89
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jan 18 16:30:35 2022 +0100
+
+    add small comment
+
+commit 7ef0d51dae23ceaf4a0560708852e76185bb99b0
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Jan 18 15:40:54 2022 +0000
+
+    added isccpnp wmo line
+
+commit 7bbb71d6aa04d1f7b4a6ac9290eb63608ccca136
+Merge: 08d0538 27a269c
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Jan 18 15:20:00 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+           ==================== misc ====================
+                              wmo_id_l1g differs in "test_g16_conus_day"
+
+           Compared: 7bbb71d 27a269c
+
+commit 08d05386eb039b58218e717fc2758bed42c05c30
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Jan 18 15:19:37 2022 +0000
+
+    mistake in isccp-ng
+
+           ==================== misc ====================
+                              wmo_id_l1g differs in "test_g16_conus_day"
+
+           Compared: 08d0538 6093ea8
+
+commit 27a269c5007a633b209e06a7be9db11114221fdc
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jan 17 18:03:02 2022 +0100
+
+    many time duplicates
+
+                     Missing parent test data, using ancestor 4e4d0a4
+commit 2015dab937732d66b5bed5c871a786c631ea61b3
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jan 17 18:02:32 2022 +0100
+
+    many time duplicates
+
+                     No 2015dab data for comparison
+commit 4e4d0a44152b047e4f55dfb5845526e5736b4ad6
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jan 17 16:04:49 2022 +0100
+
+    small time chance
+
+commit 9f5588564266f725fbcf27f152473a5afdd11da8
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 18:49:15 2022 +0100
+
+    several time things
+
+commit a003e361982c742893cb87b87931b4f3b53ddc9b
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 18:48:36 2022 +0100
+
+    several time things
+
+commit 9daf982229de21ed7cd5465cf4e45b38291f3cab
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 17:46:50 2022 +0100
+
+    some use only calls
+
+commit 1ce32f432098dbade4b82fa2d83faafddff73b5c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 17:30:12 2022 +0100
+
+    time object terms
+
+commit 4cda9e069c0d7d4b83dfbcffa78927f0697f74b3
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 16:17:12 2022 +0100
+
+    modie time obj extension
+
+                     Missing parent test data, using ancestor 4a12234
+commit 78e2ed9167d008f758095dc0ca359589626ef110
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 16:15:10 2022 +0100
+
+    modie time obj extension
+
+                     No 78e2ed9 data for comparison
+commit 4a1223438102daae126ea7d03839dd237df108e2
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 16:09:54 2022 +0100
+
+    fix
+
+                     Missing parent test data, using ancestor e1bd2a9
+commit 4e59489bfa43a0bc404dc456c7772f054b96673b
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 15:34:37 2022 +0100
+
+    start changing to time obj
+
+                     No 4e59489 data for comparison
+commit e1bd2a9a11d2a9181249cc1f13a0520b0b0af731
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 15:34:03 2022 +0100
+
+    start changing to time obj
+
+commit f3294f16cbb1ac56ab1aa5dc09350f83f03a5bc0
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 16:02:30 2022 +0100
+
+    time obj
+
+commit c14e81a7647b9fb3b1cf479421410a3231faba3d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 15:52:07 2022 +0100
+
+    enables doy/msec for time object
+
+                     Missing parent test data, using ancestor 6093ea8
+commit a11f83ca67f7af43281786d40cf9c903d271620a
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 15:47:19 2022 +0100
+
+    time obj
+
+                     No a11f83c data for comparison
+commit 6093ea847bb2343918dfd769a017d8d20662aa82
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Fri Jan 14 20:20:52 2022 +0000
+
+    fixed avhrr exclusion in do loop
+
+commit c5334e0e7af30619aa7eab6b56ee1d60be64c6b6
+Author: Yue Li <yli@selene.ssec.wisc.edu>
+Date:   Fri Jan 14 15:35:37 2022 +0000
+
+    fix sensor not found error
+
+commit c8eb9dab42f9f4d52f5b027e20bf7d4f7795717d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jan 14 13:14:49 2022 +0100
+
+    test files
+
+commit ad60ec4be0266fc059af31eeadfc4564fa2a6564
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jan 14 13:14:22 2022 +0100
+
+    hres viirs work
+
+commit 671a92b21cc521c70b525a39ebfc96e94e93cf76
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jan 14 13:13:25 2022 +0100
+
+    library cx_sds_io netcdf enables groups
+
+commit 6683f967c6ae6172bbfe51e1b12132ebe65f526c
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Jan 13 15:56:08 2022 +0000
+
+    added isccp met8 and met11 support
+
+commit 6b21b6201d8bae49fb9db23599285c8bad8be4c0
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Jan 13 04:31:06 2022 +0000
+
+    removed dead code
+
+commit 63625f7c2365f603c7790bbd76f4b58fa8249202
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Jan 13 04:13:50 2022 +0000
+
+    first draft of isccp l1g
+
+commit 48627d769813610c2d7f7f7de72de5015006dba9
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 12 16:59:30 2022 +0000
+
+    isccp-ng
+
+           NOTE: a difference in cropping introducted by this commit caused many changes
+
+           ==================== l1b ====================
+                         cld_temp_opaque differs in "test_g16_conus_day"
+                         refl_0_65um_nom differs in "test_g16_conus_day"
+                 refl_0_65um_nom_max_3x3 differs in "test_g16_conus_day"
+                 refl_0_65um_nom_max_sub differs in "test_g16_conus_day"
+                 refl_0_65um_nom_min_3x3 differs in "test_g16_conus_day"
+                 refl_0_65um_nom_min_sub differs in "test_g16_conus_day"
+              refl_0_65um_nom_stddev_3x3 differs in "test_g16_conus_day"
+                         refl_0_86um_nom differs in "test_g16_conus_day"
+                 refl_0_86um_nom_max_sub differs in "test_g16_conus_day"
+                 refl_0_86um_nom_min_sub differs in "test_g16_conus_day"
+                         refl_1_60um_nom differs in "test_g16_conus_day"
+                 refl_1_60um_nom_max_sub differs in "test_g16_conus_day"
+                 refl_1_60um_nom_min_sub differs in "test_g16_conus_day"
+                         refl_3_75um_nom differs in "test_g16_conus_day"
+                 temp_11_0um_nom_max_3x3 differs in "test_g16_conus_day"
+                 temp_11_0um_nom_min_3x3 differs in "test_g16_conus_day"
+              temp_11_0um_nom_stddev_3x3 differs in "test_g16_conus_day"
+             temp_11um_vs_67um_covar_5x5 differs in "test_g16_conus_day"
+              temp_3_75um_nom_median_5x5 differs in "test_g16_conus_day"
+              temp_3_75um_nom_stddev_3x3 differs in "test_g16_conus_day"
+
+           ==================== geo ====================
+                              glint_mask differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+                              coast_mask differs in "test_g16_conus_day"
+                              land_class differs in "test_g16_conus_day"
+                               land_mask differs in "test_g16_conus_day"
+                                ndvi_sfc differs in "test_g16_conus_day"
+                       surface_elevation differs in "test_g16_conus_day"
+               surface_elevation_max_3x3 differs in "test_g16_conus_day"
+               surface_elevation_std_3x3 differs in "test_g16_conus_day"
+            surface_elevation_stddev_3x3 differs in "test_g16_conus_day"
+                            surface_type differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                       cld_height_opaque differs in "test_g16_conus_day"
+                             cld_iwp_nwp differs in "test_g16_conus_day"
+                             cld_lwp_nwp differs in "test_g16_conus_day"
+                           cld_press_nwp differs in "test_g16_conus_day"
+                        cld_press_opaque differs in "test_g16_conus_day"
+                            cld_temp_nwp differs in "test_g16_conus_day"
+                      cloud_fraction_nwp differs in "test_g16_conus_day"
+                             div_200_nwp differs in "test_g16_conus_day"
+                             div_sfc_nwp differs in "test_g16_conus_day"
+                                   oisst differs in "test_g16_conus_day"
+                opaque_height_11_0um_nom differs in "test_g16_conus_day"
+                opaque_height_12_0um_nom differs in "test_g16_conus_day"
+                opaque_height_13_3um_nom differs in "test_g16_conus_day"
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+                 opaque_height_9_7um_nom differs in "test_g16_conus_day"
+                               rh300_nwp differs in "test_g16_conus_day"
+                              snow_class differs in "test_g16_conus_day"
+                          snow_class_nwp differs in "test_g16_conus_day"
+                 surface_temperature_nwp differs in "test_g16_conus_day"
+                                 uth_nwp differs in "test_g16_conus_day"
+
+           ==================== rtm ====================
+                                ndvi_toa differs in "test_g16_conus_day"
+              refl_0_65um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_65um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_0_86um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_86um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_1_60um_nom_atmos_corr differs in "test_g16_conus_day"
+               temp_11_0um_nom_clear_sky differs in "test_g16_conus_day"
+               temp_12_0um_nom_clear_sky differs in "test_g16_conus_day"
+               temp_13_3um_nom_clear_sky differs in "test_g16_conus_day"
+               temp_3_75um_nom_clear_sky differs in "test_g16_conus_day"
+                temp_6_7um_nom_clear_sky differs in "test_g16_conus_day"
+                temp_7_3um_nom_clear_sky differs in "test_g16_conus_day"
+                temp_9_7um_nom_clear_sky differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                     bayes_mask_sfc_type differs in "test_g16_conus_day"
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+                           cloud_mask_qf differs in "test_g16_conus_day"
+                          cloud_mask_rut differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                          cloud_mask_tut differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                              smoke_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                          bad_pixel_mask differs in "test_g16_conus_day"
+               beta_11um_12um_tropopause differs in "test_g16_conus_day"
+              beta_11um_133um_tropopause differs in "test_g16_conus_day"
+               beta_11um_67um_tropopause differs in "test_g16_conus_day"
+                        cld_emiss_co2irw differs in "test_g16_conus_day"
+                           cld_emiss_h2o differs in "test_g16_conus_day"
+                      cld_emiss_splitwin differs in "test_g16_conus_day"
+                       cld_height_co2irw differs in "test_g16_conus_day"
+                          cld_height_h2o differs in "test_g16_conus_day"
+                 cld_opd_mask_0_65um_nom differs in "test_g16_conus_day"
+                 cld_opd_mask_1_60um_nom differs in "test_g16_conus_day"
+                        cld_press_co2irw differs in "test_g16_conus_day"
+                           cld_press_h2o differs in "test_g16_conus_day"
+                      cld_press_splitwin differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+                        emiss_3_75um_nom differs in "test_g16_conus_day"
+                  emiss_3_75um_nom_clear differs in "test_g16_conus_day"
+             emiss_3_75um_nom_median_3x3 differs in "test_g16_conus_day"
+                    emiss_sfc_11_0um_nom differs in "test_g16_conus_day"
+                    emiss_sfc_3_75um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_11_0um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_12_0um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_13_3um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_3_75um_nom differs in "test_g16_conus_day"
+                   emiss_tropo_6_7um_nom differs in "test_g16_conus_day"
+                               fire_mask differs in "test_g16_conus_day"
+                       freezing_altitude differs in "test_g16_conus_day"
+            homogenous_freezing_altitude differs in "test_g16_conus_day"
+                                nddi_toa differs in "test_g16_conus_day"
+                                ndsi_toa differs in "test_g16_conus_day"
+               refl_1_60um_nom_clear_sky differs in "test_g16_conus_day"
+               refl_3_75um_nom_clear_sky differs in "test_g16_conus_day"
+                  sst_background_uni_3x3 differs in "test_g16_conus_day"
+           surface_temperature_retrieved differs in "test_g16_conus_day"
+                    trans_atm_11_0um_nom differs in "test_g16_conus_day"
+                layer_l1g missing from 41094ad/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+          sample_mode_l1g missing from 41094ad/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+               wmo_id_l1g missing from 41094ad/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           Compared: 48627d7 41094ad
+
+commit 41094ad5acc93cede078de7660d717915cf90a00
+Merge: 8e6b668 71356f8
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 12 16:12:51 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+            NOTE: this merge combines two attempts at the ECM2 bin fix. you can mostly ignore 8e6b668
+            thus these changes are mostly 071f172
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 41094ad 8e6b668
+
+commit 8e6b668a07dad0100a3e236f1ecf7f695337f0c8
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 12 15:56:23 2022 +0000
+
+    fixed spelling errors
+        
+           NOTE: the ECM2 bin calculation was also altered 
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 8e6b668 eb8cf66
+
+commit eb8cf66a803e20a7322c15bb3ec18a5e1914be15
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 12 15:53:14 2022 +0000
+
+    cx_isccp_mod.f90
+
+commit 71356f87ca91f6f9ac6b827f19ea06607548ef3f
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jan 11 14:41:01 2022 +0100
+
+    rttov hirs for early NOAAS bug fix
+
+commit fad69c3587dff0054538d60a091943316a170829
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jan 7 14:43:13 2022 +0100
+
+    add file for tesing cx_sds_io
+
+commit c2feb0b55c6f2c4437960b7d49db48ac9d460f9d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jan 7 14:30:00 2022 +0100
+
+    small thing with makefile
+
+commit ff327b71648833b77f5c2f2372caf2fac6cbc3fd
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jan 6 21:02:39 2022 +0100
+
+    memory leak
+
+commit 01154618e6afa94094e094d39dceff01f1252e65
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Jan 6 17:00:16 2022 +0000
+
+    Confirm lut bin-index change
+
+commit 071f17287832d5051936571454642b1b2d49fd92
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Tue Jan 4 23:47:36 2022 +0000
+
+    fix index to calculate correct bin
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 071f172 4affba4
+
+commit 4affba4a0bf5969d512d7352e211be417a141264
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jan 3 18:47:22 2022 +0100
+
+    add sseconds
+
+           NOTE: the change to time affected solar geometry. This cascaded through many outputs including refl.
+
+           ==================== l1b ====================
+                         cld_temp_opaque differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+                                ndvi_sfc differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                       cld_height_opaque differs in "test_g16_conus_day"
+                             cld_iwp_nwp differs in "test_g16_conus_day"
+                             cld_lwp_nwp differs in "test_g16_conus_day"
+                        cld_press_opaque differs in "test_g16_conus_day"
+                            cld_temp_nwp differs in "test_g16_conus_day"
+                      cloud_fraction_nwp differs in "test_g16_conus_day"
+                             div_200_nwp differs in "test_g16_conus_day"
+                             div_sfc_nwp differs in "test_g16_conus_day"
+                                  el_nwp differs in "test_g16_conus_day"
+                             k_index_nwp differs in "test_g16_conus_day"
+                                 lcl_nwp differs in "test_g16_conus_day"
+                                 lfc_nwp differs in "test_g16_conus_day"
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+                               rh300_nwp differs in "test_g16_conus_day"
+                          snow_class_nwp differs in "test_g16_conus_day"
+             surface_air_temperature_nwp differs in "test_g16_conus_day"
+                    surface_pressure_nwp differs in "test_g16_conus_day"
+           surface_relative_humidity_nwp differs in "test_g16_conus_day"
+                 surface_temperature_nwp differs in "test_g16_conus_day"
+                  total_column_ozone_nwp differs in "test_g16_conus_day"
+            total_precipitable_water_nwp differs in "test_g16_conus_day"
+                 tropopause_pressure_nwp differs in "test_g16_conus_day"
+              tropopause_temperature_nwp differs in "test_g16_conus_day"
+                                 uth_nwp differs in "test_g16_conus_day"
+
+           ==================== rtm ====================
+              refl_0_65um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_65um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_0_86um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_86um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_1_60um_nom_atmos_corr differs in "test_g16_conus_day"
+               temp_11_0um_nom_clear_sky differs in "test_g16_conus_day"
+               temp_12_0um_nom_clear_sky differs in "test_g16_conus_day"
+               temp_13_3um_nom_clear_sky differs in "test_g16_conus_day"
+               temp_3_75um_nom_clear_sky differs in "test_g16_conus_day"
+                temp_6_7um_nom_clear_sky differs in "test_g16_conus_day"
+                temp_7_3um_nom_clear_sky differs in "test_g16_conus_day"
+                temp_9_7um_nom_clear_sky differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                                 ccl_nwp differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+               beta_11um_12um_tropopause differs in "test_g16_conus_day"
+              beta_11um_133um_tropopause differs in "test_g16_conus_day"
+               beta_11um_67um_tropopause differs in "test_g16_conus_day"
+                        cld_emiss_co2irw differs in "test_g16_conus_day"
+                           cld_emiss_h2o differs in "test_g16_conus_day"
+                      cld_emiss_splitwin differs in "test_g16_conus_day"
+                       cld_height_co2irw differs in "test_g16_conus_day"
+                          cld_height_h2o differs in "test_g16_conus_day"
+                        cld_press_co2irw differs in "test_g16_conus_day"
+                           cld_press_h2o differs in "test_g16_conus_day"
+                      cld_press_splitwin differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+                  emiss_3_75um_nom_clear differs in "test_g16_conus_day"
+                    emiss_sfc_11_0um_nom differs in "test_g16_conus_day"
+                    emiss_sfc_3_75um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_11_0um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_12_0um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_13_3um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_3_75um_nom differs in "test_g16_conus_day"
+                   emiss_tropo_6_7um_nom differs in "test_g16_conus_day"
+                       freezing_altitude differs in "test_g16_conus_day"
+               refl_1_60um_nom_clear_sky differs in "test_g16_conus_day"
+               refl_3_75um_nom_clear_sky differs in "test_g16_conus_day"
+           surface_temperature_retrieved differs in "test_g16_conus_day"
+                    trans_atm_11_0um_nom differs in "test_g16_conus_day"
+
+           Compared: 4affba4 bd57254
+
+commit bd572549b85598075e75703cdf8b75666fc60646
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Dec 21 19:14:14 2021 +0000
+
+    july 2021 beta constraint and undetected_cloud fix
+
+commit 3d989fe0a0fcb7b0781ae941eb549a4d518f1677
+Merge: 3fa8648 b9c662b
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Dec 20 20:56:20 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+           NOTE: complex merge. 
+
+           ==================== l1b ====================
+              refl_0_65um_nom_stddev_3x3 differs in "test_g16_conus_day"
+              temp_11_0um_nom_stddev_3x3 differs in "test_g16_conus_day"
+              temp_3_75um_nom_stddev_3x3 differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+               surface_elevation_std_3x3 differs in "test_g16_conus_day"
+            surface_elevation_stddev_3x3 differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                          cloud_mask_tut differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 3d989fe 3fa8648
+
+           ==================== nwp ====================
+                             cld_cwp_nwp differs in "test_g16_conus_day"
+              cld_iwp_nwp missing from b9c662b/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+              cld_lwp_nwp missing from b9c662b/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           ==================== ecm2 ====================
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 3d989fe b9c662b
+
+commit 3fa8648e19cadb3240971a9912a44cebfdf89aca
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Dec 20 20:55:49 2021 +0000
+
+    ECM2 from NBM
+
+          NOTE: cloud_mask_test_packed_results only differs in "shadow_detected" bit
+          Change in cloud_type. Before Uncertain Water -> Mixed. Now Uncertain Supercooled -> Mixed.
+          SBAF code added.
+          ECM2 Classifiers bt11ratio, dtsfcbt11, tsfc added. 
+          I'm not sure why acha changes even when controlling for cloud type, or why shadow_mask changes.
+
+           ==================== ecm2 ====================
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 3fa8648 d376d51
+
+commit b9c662b79b0abde882e742600824991e79032cc3
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Dec 20 16:44:32 2021 +0000
+
+    Initialization during declaration implies a static variable in fortran. Make explicit
+
+commit 5280f9d63c8196bed535139e1e26717cc6c0a646
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Dec 16 22:06:14 2021 +0000
+
+    Don't add add_offset or scale_factor attributes to unscaled variables
+
+commit 8723af7ea90878c2fa6bb3944881207d05d2bdf9
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Dec 16 22:04:05 2021 +0000
+
+    Fix precision bug in 3x3 standard deviation
+
+           NOTE: opaque height changed because...? 
+
+           ==================== l1b ====================
+              refl_0_65um_nom_stddev_3x3 differs in "test_g16_conus_day"
+              temp_11_0um_nom_stddev_3x3 differs in "test_g16_conus_day"
+              temp_3_75um_nom_stddev_3x3 differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+               surface_elevation_std_3x3 differs in "test_g16_conus_day"
+            surface_elevation_stddev_3x3 differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                          cloud_mask_tut differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 8723af7 618d717
+
+commit 618d71791ac935802a7aadb29a02212e45fc08ba
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Wed Dec 15 17:24:01 2021 +0000
+
+    initialize undetected_cloud
+
+commit ba511b698754966a9db4a0e2a2c8eb6fca51513e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Dec 8 13:04:13 2021 +0100
+
+    update reader
+
+commit af1870dc7fcf2068c26fd5cd3922e528bf9ed6d5
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Dec 3 09:35:03 2021 +0100
+
+    code cleaning
+
+commit cab05db66842b5d5721737dd41f76500cb6d8097
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Dec 3 09:22:52 2021 +0100
+
+     file exist test to viirs nasa read
+
+commit d376d51f3bae2d7b42798603c53771d1326a5784
+Merge: 5ac893b b3470cd
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Sun Nov 28 03:17:30 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+           ==================== nwp ====================
+                             cld_cwp_nwp differs in "test_g16_conus_day"
+              cld_iwp_nwp missing from b3470cd/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+              cld_lwp_nwp missing from b3470cd/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           Compared: d376d51 b3470cd
+
+commit 5ac893b40f1894976793abb1d3ad93a420a93634
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Sun Nov 28 03:16:22 2021 +0000
+
+    added var to level2
+
+          NOTE: cld_cwp_nwp was made empty, without removing it from level 2
+
+           ==================== nwp ====================
+                             cld_cwp_nwp differs in "test_g16_conus_day"
+              cld_iwp_nwp missing from 73760ae/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+              cld_lwp_nwp missing from 73760ae/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           Compared: 5ac893b 73760ae
+
+commit b3470cd8cd860b62f253be38d73b842090152c8d
+Author: Denis Botambekov <dbotambekov@selene.ssec.wisc.edu>
+Date:   Wed Nov 24 17:54:24 2021 +0000
+
+    fixed running -caliop with rttov seg fault
+
+commit 91a0926b5d41a68236f94465ba3cf9ba9eda1672
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Nov 18 11:36:53 2021 +0100
+
+    viirs hres number of lines issue
+
+commit 09842c86514a0fa89f7cad399973b380c3d6c244
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Nov 18 10:44:52 2021 +0000
+
+    files with h5 are often h5 files for variables
+
+commit 73760aef8882c28c2543d5ba20e0983986f26a6c
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Nov 17 17:05:44 2021 +0000
+
+    fixed for highres
+
+commit 80ce9d56ff75aabb503debcf21815ae873209712
+Merge: 585f1c5 b8f71df
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Nov 17 16:54:02 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+commit 585f1c57b142edab01b8ab7310a9824f2a5e1bae
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Nov 17 16:53:58 2021 +0000
+
+    fixed for highres
+
+commit d1ba4f95c7738c28984c87d1276ccaecb62db6cd
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Nov 17 16:52:01 2021 +0000
+
+    added exit for skip_l1b_flag
+
+commit b8f71df345d260f9d35206cf27030acf21e88d5e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Nov 16 15:07:45 2021 +0100
+
+    small changes
+
+commit 32a6ec5240faf7dd7a7556be52a35b5060b635b1
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Nov 11 16:25:36 2021 +0100
+
+    rttov test work
+
+commit 791091ab265204830e488ee1a49349a8610fd97b
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Nov 11 16:25:21 2021 +0100
+
+    rttov test work
+
+commit a246a7a2b584d5b9b23c37579435618d345b9fba
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Nov 11 16:25:02 2021 +0100
+
+    rttov test work
+
+commit d955bd389cc11b53919e4eee916ccfe137699e0e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Nov 11 16:23:50 2021 +0100
+
+    checkd hres ABI
+
+commit 2ebeb17cc4773d09b6e675c08a347e7dde1fcddc
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Nov 4 21:43:57 2021 +0000
+
+    added wanzong mode with 062um
+
+           NOTE: acha_quality was all 0 before. Now it accurately reflects the rest of ACHA output
+
+           ==================== acha ====================
+                            acha_quality differs in "test_g16_conus_day"
+
+           Compared: 2ebeb17 b228f66
+
+commit b228f667064362feecc8e7a881447cc8a0571faf
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Nov 4 21:41:51 2021 +0000
+
+    added 062um in acha mode check
+
+commit 180ad6fc6adc3d6f7ece68563876845aaaa5a688
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Nov 2 14:01:47 2021 +0100
+
+    rttov ozone
+
+commit b08f52d05d134bae833f58cb2e9d400ff1fb3287
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Nov 1 13:20:25 2021 +0000
+
+    fixed a little issue
+
+M       acha/acha_rtm_mod.f90
+
+           NOTE: clip beta into range [1,2]
+
+           ==================== ecm2 ====================
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           Compared: b08f52d bca2d98
+
+commit bca2d98b7a384b53ed0cdb8ec8f904c2a6182790
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Oct 27 15:59:54 2021 +0000
+
+    add var to pixel common
+        
+          NOTE: this commit message doesn't look like it was for this commit
+            Looks more like a switch from bottom-up to top-down in opaque cloud height calculation
+            this gets switched back in ea92660
+            cld_temp_aux, cld_beta_prior_acha, and cld_emiss_prior_acha were also added to l2 output
+
+           ==================== l1b ====================
+                         cld_temp_opaque differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+                                ndvi_sfc differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                       cld_height_opaque differs in "test_g16_conus_day"
+                        cld_press_opaque differs in "test_g16_conus_day"
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== rtm ====================
+              refl_0_65um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_65um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_0_86um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_86um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_1_60um_nom_atmos_corr differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+      cld_beta_prior_acha missing from bca0ad9/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+     cld_emiss_prior_acha missing from bca0ad9/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+               refl_1_60um_nom_clear_sky differs in "test_g16_conus_day"
+             cld_temp_aux missing from bca0ad9/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           Compared: bca2d98 bca0ad9
+
+commit bca0ad950e57056b08419319ee06e24440f24b35
+Merge: 7b6300c f227bc2
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Oct 27 15:59:08 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+           Missing data for f227bc2
+commit 7b6300c483b3d30635ffe09af66c1d93e49c75a0
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Oct 27 15:58:16 2021 +0000
+
+    added new vars
+
+                     No ancestor data for comparison
+commit f227bc20235d9590574be48f3f4dab8734c54cfc
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 27 17:40:43 2021 +0200
+
+    code cleaning
+
+                     No f227bc2 data for comparison
+commit bad2c7838da8104ca7a69ad9f55677ab3be99700
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 27 17:40:16 2021 +0200
+
+    code cleaning
+
+                     No bad2c78 data for comparison
+commit 8a0a10b0ade54800669791c10371216bfadf3c24
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 27 17:40:02 2021 +0200
+
+    code cleaning
+
+                     No 8a0a10b data for comparison
+commit 58d97d097d9074b6142c22e545d4252bdcd331ad
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 27 17:39:16 2021 +0200
+
+    back
+
+                     No 58d97d0 data for comparison
+commit 4cebda0f6e2d9ff6bb145b8011a2e6e523f4fd47
+Merge: 0345563 07820f2
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Oct 26 20:19:02 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+                     No 4cebda0 data for comparison
+commit 03455632001376752bc9746d4e6f8c703e2a9439
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Oct 26 20:18:58 2021 +0000
+
+    added 1km
+
+                     No 0345563 data for comparison
+commit f3352a2290e37406e95a59000e077b0cc42119e6
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Oct 26 20:10:47 2021 +0000
+
+    fixed for missing
+
+commit 07820f27c26a4332421c38db2b57db6644f4721d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Oct 26 16:57:19 2021 +0200
+
+    cosmetic changes
+
+commit 8c6fd51369c49b44d8b80a69077496afd1744635
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Oct 25 18:38:42 2021 +0200
+
+    fixed rttov noaa-5
+
+commit 6447d21cbbe59ef95c12271f8ba1150442428145
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Oct 25 18:27:26 2021 +0200
+
+    fixed rttov noaa-5
+
+commit 797c7cb87ecb5a45389284e6ffb02b761183c450
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Oct 25 17:52:00 2021 +0200
+
+    fixed FY3d RTTOV
+
+commit 3b6ab49a0a4bf76915d71203d6527864d5f450fc
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Oct 18 14:17:53 2021 +0200
+
+    added sensors FY3-D and older GOES to RTTOV
+
+commit 80ced7c730f5ecddef359aef1a251a029aaa1b12
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Oct 14 15:25:05 2021 +0200
+
+    fix hres nasa viirs
+
+commit 2da2be5308610d59e1d54279d09d9fded087cbbf
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Oct 14 11:09:49 2021 +0200
+
+    add info call to level2 structures
+
+commit 7c2b96efda2a829aebb3b6f36615e249528d0103
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Oct 14 08:53:00 2021 +0200
+
+    muri back
+
+commit 635baed5ee3df6eed597f6aac10c7b7b1b7a7b15
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 13 13:54:01 2021 +0200
+
+    fixed hres
+
+commit b3057676536c2b3e3440ec8450010d6bb1d1a69d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 13 13:53:21 2021 +0200
+
+    fixed hres
+
+commit 3efe0b71bc6f6cc468721fe7d1aa3092f2b5210d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 13 10:08:52 2021 +0200
+
+    switched off VIIRS Dual LST
+
+commit 9057bb3f6e80d03b28c7a6a3eb4e0a915ad8f793
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Oct 12 17:37:45 2021 +0200
+
+    fix
+
+                     Missing parent test data, using ancestor 37bc133
+commit 69300e7df5252374477bd556951b38a52e99275a
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Oct 12 13:04:26 2021 +0200
+
+    cleaned code
+
+                     No 69300e7 data for comparison
+commit 8bb37faa9a32a4bbbd0f7ab4afe15911116bf0ef
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Oct 12 12:59:46 2021 +0200
+
+    cleaned code
+
+                     No 8bb37fa data for comparison
+commit 37bc1339eb073f701763e543e14afedf252fabfb
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Oct 7 22:47:45 2021 +0200
+
+    add dual channel lst
+
+commit ee4a78044ebd4f10a61ef442d55f9aa72e4aaf43
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Oct 7 16:59:41 2021 +0200
+
+    viirs nasa hres files for night
+
+commit f590602583bb7fd46ebfccc487ffbd99b639397f
+Merge: 42ab3ef 6a009b5
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 6 13:01:49 2021 +0000
+
+    fixing merge conflict
+
+commit 42ab3efb6d30bc4c50374709b1cc82761116b618
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 6 12:52:45 2021 +0000
+
+    add warning
+
+commit 1141d2efc54564fa536e0b2d8c8f9bcf2c906109
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 6 12:42:30 2021 +0000
+
+    add a stop
+
+commit 6a009b5c6755fe4b49847a4429663b2936c5909c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 6 13:10:33 2021 +0200
+
+    small changes
+
+commit 1a928267e78dc6fe23a174d75b50f4a972fd687d
+Merge: 78c6ee8 bc46415
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Wed Sep 22 14:06:31 2021 +0000
+
+    Merge branch 'muri' into 'develop'
+    
+    Muri
+    
+    See merge request clavrx/clavrx-dev!2
+
+commit bc46415d7161867c48d88c45990b93bb4a9a00a8
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Sep 22 12:55:43 2021 +0000
+
+     implement new muri code
+
+commit 0a8b36d11c27e1131832a80e24b217386264a621
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Sep 22 12:55:32 2021 +0000
+
+     implement new muri code
+
+commit 2824169077c3954e210d22c7c0ab8a027020d8fd
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Sep 21 16:58:54 2021 +0000
+
+    remove unused use of module
+
+                     Missing parent test data, using ancestor db24861
+commit fca71dcc77d00358b6ed2e5a4590f36bef977a38
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Sep 21 16:55:51 2021 +0000
+
+    remove unused use of module
+
+                     No fca71dc data for comparison
+commit db2486121a854a2697b3e1c8c7fcce8319b7f9a3
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Sep 20 23:53:11 2021 +0200
+
+    add check if file exists
+
+commit c373d8ddf54161e71569edaa0f782c71e124a268
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Sep 20 22:28:22 2021 +0200
+
+    bring Mins developments in
+
+commit 78c6ee831814ac80722e09b3af2a248ae0ec37ef
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sun Sep 19 13:56:36 2021 +0200
+
+    rttov adjustments
+
+commit eb77f285d017397980d79bede8327d2e2dc5ed71
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Sep 8 16:15:36 2021 +0200
+
+    fixed muri issue
+
+commit b0ad81d480a3a9c54dd775c854313fd8e5135cd0
+Merge: 9e71c6b 00aee44
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Sep 7 15:13:35 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+           ==================== misc ====================
+            cld_emiss_aux missing from 00aee44/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           Compared: b0ad81d 00aee44
+
+commit 9e71c6be456fa938fe09c3ce1d34954fb31d96de
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Sep 7 14:51:43 2021 +0000
+
+    added myd061km support
+
+                     No ancestor data for comparison
+commit 00aee4466db40f6b6aede500be7ae8ba3ef24db4
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Sep 7 14:41:21 2021 +0200
+
+    ignore file
+
+commit ae573484461266e7215a5dc50ddc4f1e0949bbd9
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Sep 2 17:33:49 2021 +0200
+
+    rttov metop fix
+
+commit d23b6a056efffcbbc21245b7b6d6e9211e0857d4
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Aug 31 20:05:25 2021 +0200
+
+    add VIIRS HRES Bow-tie
+
+commit 751ef874beb1f4a385eeb64d0606f6d5c40e7b78
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Aug 31 19:18:03 2021 +0200
+
+    add VIIRS HRES Bow-tie
+
+commit 1b1ad181df5688df653d27ed92938dacb66e18ea
+Author: dbotambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Wed Aug 25 18:56:29 2021 +0000
+
+    fixed modis channel numbering in the notes
+
+commit fe366161d6a2b8dac07682f0aef4d066c6409c86
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Thu Aug 12 20:50:47 2021 +0000
+
+    added coeff to adjust nasa viirs dnb lunar refl to noaa
+
+commit 05970ed337f6fa446c8a72f2317361e4124619f0
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Wed Aug 11 19:49:47 2021 +0000
+
+    removed stuff that forgot to delete
+
+commit aea16b339f6678cf01f01739a7cfeceb9b1729c5
+Author: dbotambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Wed Aug 11 15:48:59 2021 +0000
+
+    fixed noaa-20 dnb mapping
+
+commit a428bc3f00510eb89cb79c39908178b01a43e9f4
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Aug 2 17:00:05 2021 +0200
+
+    removed merge lines in process_clavrx
+
+                     No ancestor data for comparison
+commit f4dd28c310daa0d6f01178791f84297a5be44bb7
+Merge: 28934ed c9d632a
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Fri Jul 30 22:59:31 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+                     No f4dd28c data for comparison
+commit 28934ed45985cb9eaf636739c6d37686b36c6de6
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Fri Jul 30 22:59:01 2021 +0000
+
+    added limit on missing attr warnings
+
+commit c9d632a3e0aa537c792ce26a634728f2f1938c4f
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Fri Jul 30 21:33:04 2021 +0000
+
+    changed max limit for moon illum frac from 1 to 100
+
+                     No c9d632a data for comparison
+commit 4afad42e28ba7b33be6c811f41d719cd794eb1c6
+Merge: 1d9b698 e74419a
+Author: swanzong <stevew@orchid-submit.ssec.wisc.edu>
+Date:   Wed Jul 28 21:29:20 2021 +0000
+
+    Fixed endif bug
+
+                     No 4afad42 data for comparison
+commit 1d9b698e5f79700e5805119255b92357f5f73f81
+Author: swanzong <stevew@orchid-submit.ssec.wisc.edu>
+Date:   Wed Jul 28 21:26:56 2021 +0000
+
+    Fixed endif bug
+
+                     No ancestor data for comparison
+commit e74419ae5c841589a4177d0b4d1f09d320177068
+Merge: c5e251a 1519f2c
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:45:06 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+           Missing data for 1519f2c
+commit c5e251a522dcea445df6e35f2375fd9b5712f2f1
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:44:47 2021 +0000
+
+    simple bug
+
+                     No ancestor data for comparison
+commit 1519f2c2524a54b6d2b93d2ba4287dd7c11c70d8
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:42:40 2021 +0000
+
+    Delete ccl_parameters.inc
+
+                     No 1519f2c data for comparison
+commit 504060b66fd9fe40218b25e4852dc56ec67189e3
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:42:24 2021 +0000
+
+    Delete awg_cld_hght_include_1.inc
+
+                     No 504060b data for comparison
+commit a3a102b719b9c68412e283648192850a1c2d6d0f
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:42:18 2021 +0000
+
+    Delete acha_water_cloud_microphysical_model.inc
+
+                     No a3a102b data for comparison
+commit 8ca524233290cd41e521426d96427b2fb162b3b6
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:42:11 2021 +0000
+
+    Delete acha_parameters.inc
+
+                     No 8ca5242 data for comparison
+commit b8d7799681da7cb2c916fb0db519a995be081196
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:42:05 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_viirs_110um.inc
+
+                     No b8d7799 data for comparison
+commit 112ffe865061780ee5d8de4b18d7857ce85825cf
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:59 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_viirs_104um.inc
+
+                     No 112ffe8 data for comparison
+commit 52e892587bce33c02e4cc3a64be6769216761a43
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:54 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_noaa19.inc
+
+                     No 52e8925 data for comparison
+commit c57e76b1c4d33eaa7018104ef00aa4e922c94b44
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:48 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_modis_110um.inc
+
+                     No c57e76b data for comparison
+commit 8f8aab683def25d8118e15d0efd10c942f01feb8
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:40 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_modis_104um.inc
+
+                     No 8f8aab6 data for comparison
+commit c22b0c2fae4f6cd3a66882674f90327bded4fbaa
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:33 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_goes_110um.inc
+
+                     No c22b0c2 data for comparison
+commit f503c1ef3cfe464616f955b93017f97a03e0ecbb
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:26 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_goes_104um.inc
+
+                     No f503c1e data for comparison
+commit d9f3382d3393ed9169c90e7feb7227fa481a5a18
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:20 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_goes15.inc
+
+                     No d9f3382 data for comparison
+commit 514e77d43c8e0f2796580ac12c06ebc072b054fb
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:13 2021 +0000
+
+    Delete acha_clear_sky_covariances.inc
+
+                     No 514e77d data for comparison
+commit bb6fcb1e874616ec1a52b7f244a61e7e88faef60
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:02 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_avhrr_110um.inc
+
+                     No bb6fcb1 data for comparison
+commit 2d2ed1029f4397cfe5daf7ef2b5426233e6c64af
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:40:53 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_avhrr_104um.inc
+
+                     No 2d2ed10 data for comparison
+commit 35ead2c651700509aa057737315143fc0f1ac2bc
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:40:47 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_ahi_110um.inc
+
+                     No 35ead2c data for comparison
+commit f5df2507ad5d922323711bf4cbacb1101757d254
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:40:38 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_ahi_104um.inc
+
+                     No f5df250 data for comparison
+commit 0da0e20f335eb8b9d6ce9e2b2573ac0d1b518000
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:40:29 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_abi_110um.inc
+
+                     No 0da0e20 data for comparison
+commit ede8d1873c2634824e599d29b3fd9807ced5d618
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:39:47 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_abi_104um.inc
+
+                     No ede8d18 data for comparison
+commit 237bd852dd8e6f76ea498bf0c43b84beca5fc325
+Merge: 2191cb9 67bdc98
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:36:59 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+                     No 237bd85 data for comparison
+commit 2191cb9dcc717f8230c9f20f62b872d3de02c38d
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:36:36 2021 +0000
+
+    removed hardcoding
+
+                     No 2191cb9 data for comparison
+commit ed71d671e229804fbde21895d1f23a4d36479133
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:36:00 2021 +0000
+
+    fixed attr read and missing init
+
+                     No ed71d67 data for comparison
+commit 331c5e62eb367705d5282b2024b6f9149fae1508
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:34:54 2021 +0000
+
+    prelim dnb correction - not used
+
+                     No 331c5e6 data for comparison
+commit 427cfce93b493a7a6f9c5b26acebce889b67e592
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:34:12 2021 +0000
+
+    include path
+
+                     Missing parent test data, using ancestor 8d7bcf7
+commit 67bdc98b6cf75468846376fdfd135d2f7e90d2c6
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Wed Jul 28 16:39:57 2021 +0000
+
+    removed print and stop
+
+                     No 67bdc98 data for comparison
+commit bab532884823db9664bf338afb28a6a53ba55de2
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Jul 26 20:28:47 2021 +0000
+
+    added acha include path
+
+                     No bab5328 data for comparison
+commit 5dbfb3e508f86a4acdad383de38839a1639c44a0
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Jul 26 20:28:35 2021 +0000
+
+    added acha include path
+
+                     No 5dbfb3e data for comparison
+commit 8d7bcf7e9198e60d62048ba8791efc10b9629f0d
+Author: dbotambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Fri Jul 23 22:24:20 2021 +0000
+
+    fixed acha default for vgac
+
+commit 16541ba6427b3c6201465fd15a847d078e66d409
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jul 23 15:41:37 2021 +0200
+
+    fixed thick cloud issue nlcomp
+
+commit 5ec41becdd72f15767db63900457dbd0ac21cef7
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Jul 22 21:12:59 2021 +0000
+
+    Update Makefile
+
+                     Missing parent test data, using ancestor 1896e0e
+commit 8a3be657aeb6512ba9676905f2f0fc3594ee0c70
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Wed Jul 21 22:56:18 2021 +0000
+
+    Fix vgac reader
+
+                     No 8a3be65 data for comparison
+commit 1896e0e914d040760e5d816e9da99758feae29bc
+Author: dbotambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Tue Jul 20 16:36:55 2021 +0000
+
+    changed back nasa viirs moon illum, fixed noaa viirs moon illum, way around moon illum filter in get prob mask until new viirs lut
+
+commit 155527d2745159c8f9a3abd861c06a08f6a1196c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jul 17 17:05:52 2021 +0200
+
+    fixed nlcomp issue
+
+commit 520433ba664025b314d6429069f637b742d658e4
+Author: Denis Botambekov <dbotambekov@patmosx.ssec.wisc.edu>
+Date:   Thu Jul 15 19:53:14 2021 +0000
+
+    converted moon illumination from percent to fraction 0-1
+
+commit a0526702a7949d783d20263b5c2ac4fbb51b383f
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jul 13 15:44:46 2021 +0000
+
+    fixed a thing in readhdf5 for read2integer2d.. can be risky for memory
+
+                     Missing parent test data, using ancestor e0322b4
+commit 2b550bb47c49cd014774b062e3b95b612cbf908d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 8 12:31:28 2021 +0200
+
+    small fix for viirs hres
+
+                     No 2b550bb data for comparison
+commit 52712992c7da01053cfe09e919cbed479307d96d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 8 12:22:26 2021 +0200
+
+    moved file
+
+                     No 5271299 data for comparison
+commit 2cae212a234313d94e60424d6938e5b4bd6f12d8
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 8 12:04:54 2021 +0200
+
+    fixed last segment issue and time
+
+                     No 2cae212 data for comparison
+commit 09ed370798c7cb104254ac21471b259e312c14ce
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 8 09:40:16 2021 +0200
+
+    makefile change
+
+                     No 09ed370 data for comparison
+commit 37d506cfdc1bd79ffe4597ab3bf0bbc270eaa7fd
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jul 7 19:48:47 2021 +0200
+
+    viirs hres is ready
+
+                     No 37d506c data for comparison
+commit 60c3482bd0d1875084c08b8f3f7e90f874cd8bfa
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jul 7 18:18:08 2021 +0200
+
+    progress viirs hres
+
+                     No 60c3482 data for comparison
+commit 3a8e1346373e410d3d02063d9a27afb08656b236
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jul 7 18:17:52 2021 +0200
+
+    removed bug in hdf5
+
+                     No 3a8e134 data for comparison
+commit e94bf3a12fda410667ed77d84d5dafad507b12b8
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jul 7 14:18:41 2021 +0200
+
+    removed some comments
+
+                     No e94bf3a data for comparison
+commit eb0dabf7b07a89bd361f9a15070f44927e54f517
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jul 6 16:09:31 2021 +0200
+
+    add scan line time
+
+                     No eb0dabf data for comparison
+commit e0322b40d81370e29222f8965b03e575649e1355
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jul 6 15:11:17 2021 +0200
+
+    major progress hres
+
+                     Missing parent test data, using ancestor 5a43c52
+commit ecbdd6fe334464af2c366002e19bcde994fca6ab
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jul 5 13:03:06 2021 +0200
+
+    read geo data for hres data
+
+                     No ecbdd6f data for comparison
+commit d38d30218ce5238b5a20dfb99ce99d5b6cc6e374
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jul 5 13:02:34 2021 +0200
+
+    main_src/Compare_Float_Numbers.f90
+
+                     No d38d302 data for comparison
+commit 5eb4f95136b2c175695886655960e1cacd37ae61
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jul 5 13:02:27 2021 +0200
+
+    cx_sds_io/src/cx_h5_read_mod.f90
+
+                     No 5eb4f95 data for comparison
+commit 93ca86089375acaeeaeaee08ce26acf132ee6f0c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 1 15:34:47 2021 +0200
+
+    add viirs HRES
+
+                     No 93ca860 data for comparison
+commit b8c01b42299726487b8916ef7ac0796d6f7884db
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 1 15:34:30 2021 +0200
+
+    add viirs HRES
+
+                     No b8c01b4 data for comparison
+commit 5a43c520876d1c37c84b8c7faf28e778a1f9e1ac
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 1 15:27:31 2021 +0200
+
+    finished hdf5 read routines
+
+commit 7b1fbec14758338f09c950632560a01c034810f4
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 1 15:25:44 2021 +0200
+
+    finished hdf5 read routines
+
+commit 14fdfb8abdc63a8ec9e3ca11f5acd5bc0bf3e2b5
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jun 30 18:47:08 2021 +0200
+
+    hdf5 work
+
+commit 36826488ddd5232089d0084a427cd9afe7786027
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jun 30 18:47:01 2021 +0200
+
+    hdf5 work
+
+commit 5679b7091747ad261d4442557284bef1c95446d1
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jun 30 18:46:38 2021 +0200
+
+    cx_sds_io/src/cx_h5_read_mod.f90
+
+commit 63c9b59016a8dda228a48f38436f3a3fd5592b34
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jun 29 13:57:19 2021 +0200
+
+    hdf5 work
+
+commit aae2a144c63ba6a76c9aad582f65e632180bb4fd
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jun 29 13:57:13 2021 +0200
+
+    hdf5 work
+
+commit ad1d4d789aec5f53c426d65240ddfe80bc709b41
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jun 29 13:57:05 2021 +0200
+
+    hdf5 work
+
+commit 980759b5cc7144ef171477f75122e81662851e86
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sun Jun 27 21:46:56 2021 +0200
+
+    hdf5 issue
+
+commit 5314bcb25e4feeb447ef7d6137f39c20564d9d67
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 24 16:12:53 2021 +0200
+
+    added new files
+
+commit 6449ef414f8d0293f60071fdda1efdd78cd2b54f
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 24 15:12:40 2021 +0200
+
+    initial start iof reading viirs nasa hres
+
+commit eea099fb2dc95d4d7f8034eb93d4fc5808e1164e
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jun 23 03:28:00 2021 +0000
+
+    updated metop
+
+commit ef3225e4f1acc10bf2ed947e70740a8d7164d674
+Merge: 5dc194b fef5bfe
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Tue Jun 22 20:30:00 2021 +0000
+
+    Merge branch 'develop' of https://gitlab.ssec.wisc.edu/clavrx/clavrx-dev into develop
+
+           ==================== acha ====================
+                            cld_opd_acha differs in "test_g16_conus_day"
+       cld_opd_uncer_acha missing from 5dc194b/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+
+           Compared: ef3225e 5dc194b
+
+           Missing data for fef5bfe
+commit 5dc194b89453a1fb20fa411d7003fe6126cff46e
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Tue Jun 22 20:29:33 2021 +0000
+
+    Fixed seviri mapping
+
+commit fef5bfed9eb5a6a5d50cec76546baebe54551f2c
+Merge: 28a77e3 11be2f2
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Jun 22 18:21:53 2021 +0000
+
+    Merge branch 'develop' of https://gitlab.ssec.wisc.edu/clavrx/clavrx-dev into develop
+
+                     No fef5bfe data for comparison
+commit 28a77e3e47305c56f0f257f0aa573b1ab3b799ea
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Jun 22 18:20:48 2021 +0000
+
+    fixed time
+
+commit 11be2f2fe00b1d0d156a117eb9b1795384d0c001
+Merge: 2cff6fd a167d9d
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Mon Jun 21 17:26:29 2021 +0000
+
+    Merge branch 'develop' of https://gitlab.ssec.wisc.edu/clavrx/clavrx-dev into develop
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           Compared: 11be2f2 2cff6fd
+
+           Missing data for a167d9d
+commit 2cff6fdc0335526f11e9f317a53660b9035b71c2
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Mon Jun 21 17:24:31 2021 +0000
+
+    Modifications for OCA aux reads
+
+           ==================== misc ====================
+         cld_press_l2_aux missing from 2aee913/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+     cld_press_uncer1_aux missing from 2aee913/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+     cld_press_uncer2_aux missing from 2aee913/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+                 cost_aux missing from 2aee913/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           Compared: 2cff6fd 2aee913
+
+commit a167d9db81a4329316a1a44bb9f4ef56bbb0a103
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 17 21:14:48 2021 +0200
+
+    rttov is free of hard-coded paths
+
+                     No a167d9d data for comparison
+commit 8e319838cb30253813fb363b8160c17874401b83
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 17 19:32:53 2021 +0200
+
+    fixed stop when files from different months for RTTOV EMIS
+
+                     No 8e31983 data for comparison
+commit b3365c42060e4cb55aab4a29719872c24067b50e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 17 12:48:04 2021 +0200
+
+    add something to ignore
+
+                     No b3365c4 data for comparison
+commit 37920a1c80cd007e022a3f7665ce97c459d42407
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jun 15 11:52:10 2021 +0200
+
+    add addition al comment
+
+                     No 37920a1 data for comparison
+commit df3e179bfac5d3eb24bc15e605d0c304823a20aa
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jun 14 23:01:27 2021 +0200
+
+    exclude too high value for zenith:
+
+                     No df3e179 data for comparison
+commit ed27b6d9143255f94bcdb5738a2801df3213b393
+Merge: 8615683 312887e
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Jun 10 12:17:29 2021 +0000
+
+    Merge branch 'develop' of https://gitlab.ssec.wisc.edu/clavrx/clavrx-dev into develop
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           Compared: ed27b6d 8615683
+
+           Missing data for 312887e
+commit 86156830394801ed7aa345a0971a5a1741cf3207
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Jun 10 12:15:58 2021 +0000
+
+    added acha tau uncer
+
+           ==================== acha ====================
+                            cld_opd_acha differs in "test_g16_conus_day"
+       cld_opd_uncer_acha missing from 420bdf2/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+
+           Compared: 8615683 420bdf2
+
+commit 312887ebf7ff2f42b72e4b0435e3bd01fdf793b3
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jun 7 20:26:01 2021 +0200
+
+    added ACHA COD a-priori to DCOMP
+
+                     No 312887e data for comparison
+commit 2aee9134fddc3e4216eeb0c651f8afe3d9d9ec2d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jun 4 14:57:54 2021 +0200
+
+    fixed rttov issues with uncoupled make and noaa-20 files
+
+commit 7d4093aae18d81522661cbf6795e8400a681a377
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 3 21:19:26 2021 +0200
+
+    changed to camel clim
+
+commit 420bdf255db316cc0c38365a80878bbdb1cf9f2a
+Merge: 967eb27 f8ddab8
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jun 2 17:33:49 2021 +0000
+
+    Merge branch 'develop' of https://gitlab.ssec.wisc.edu/clavrx/clavrx-dev into develop
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 420bdf2 967eb27
+
+           Missing data for f8ddab8
+commit 967eb2785d8a83f596437cf864d08267ee55013e
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jun 2 17:32:40 2021 +0000
+
+    warm edge filter and pc_median
+
+            NOTE: only difference in cloud_mask_test_packed_results is the "shadow_mask" bit
+    
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 967eb27 203f0d9
+
+commit f8ddab8e3a04718045e7b68bb1e05aa2e8bff499
+Merge: 85e7392 5f1680e
+Author: Mike Foster <mfoster@orchid-submit.ssec.wisc.edu>
+Date:   Wed May 26 15:17:56 2021 +0000
+
+    Merge branch 'develop' of https://gitlab.ssec.wisc.edu/clavrx/clavrx-dev into develop
+
+                     No f8ddab8 data for comparison
+commit 5f1680ec8c762b3e5e4b2828bc037ff2cb741391
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed May 26 12:12:37 2021 +0200
+
+    removed unused declarations
+
+                     No 5f1680e data for comparison
+commit bc165f0ce5d65ae2e97b916d3322b0cf04a7e6d2
+Author: Denis Botambekov <dbotambekov@patmosx.ssec.wisc.edu>
+Date:   Tue May 25 20:56:18 2021 +0000
+
+    added filter for frozen lake coast to the science code
+
+                     No bc165f0 data for comparison
+commit 6f6fc0c6ba9758683dc5470c9f5f682aa9763af8
+Author: Denis Botambekov <dbotambekov@patmosx.ssec.wisc.edu>
+Date:   Tue May 25 20:18:00 2021 +0000
+
+    search pattern for vgac caliop collocation
+
+                     No 6f6fc0c data for comparison
+commit 203f0d96f3517c14e4619beb8005c914ea9a1454
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue May 25 15:37:16 2021 +0200
+
+    more tests
+
+commit f589b794a4dd906bd80227dea8f7c801494bbe64
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue May 25 15:10:04 2021 +0200
+
+    dd test for cx_sds_io
+
+commit 85e73921fb6fa822d00fd9f7c7dc926fe4091834
+Author: Mike Foster <mfoster@orchid-submit.ssec.wisc.edu>
+Date:   Mon May 24 22:33:35 2021 +0000
+
+    added function to reset replaced 3.75 bt to missing for output fields
+
+                     No 85e7392 data for comparison
+commit 6cd49e37622f4ca62c3fade7e39d7f28e00f8b6f
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Mon May 24 17:00:18 2021 +0000
+
+    fixed month for time calculation
+
+commit b1f582ab2252d7735e2e24a00440b1b827c4bf0c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sun May 23 16:38:25 2021 +0200
+
+    add some file types to ignore
+
+commit ba9bf658e4a29d0555821a5eecb039f3ee9f4c11
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon May 10 18:35:47 2021 +0000
+
+    Remove commented code
+
+commit bf82be258924316a5ee428bc7f0f8006294830ff
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 7 19:24:21 2021 +0000
+
+    Add runtime checks for rttov options when not compiled with rttov
+
+commit ce66d6c5fc714cd74b62c09cac25a73e7b73e0e6
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 7 15:05:57 2021 +0000
+
+    Move RTTOV coeffs to ancil dir
+
+commit 6b0f10cb398a472a48c35e6cd9aaa65484420a7a
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu May 6 20:56:39 2021 +0000
+
+    Switch from hdf4 seebor to netcdf seebor emissivity ancil
+
+commit 5e67c8438132d242326308d4486c98c0e66eb211
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri May 7 11:39:48 2021 +0200
+
+    make hostname universial
+
+commit 70576f0847b5ca0822372ae68e0c6416865fb1aa
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu May 6 14:52:54 2021 +0200
+
+    fixed RTTOV AVHRR/2 and AVHRR/3 issue
+
+commit 704ce65194d4148dfa895d5a63e1e2114e83b2c8
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Apr 29 19:56:37 2021 +0000
+
+    Add gitignore
+
+commit 73f77bdfb3fbc804d3f1a50799943c845b841850
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Apr 29 19:45:50 2021 +0000
+
+    Fix bug in Makefile.inc that prevents build
+
diff --git a/docs/release/version_log.txt b/docs/release/version_log.txt
new file mode 100644
index 0000000000000000000000000000000000000000..92e496944ec4f7d78d14526e07807f92a5fa4eff
--- /dev/null
+++ b/docs/release/version_log.txt
@@ -0,0 +1,4300 @@
+commit 31d6cd903b1ecddf34f055f0b67628828f9a8479
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Wed Aug 17 19:35:59 2022 +0000
+
+    Change g16 conus test to daytime
+
+                     No 31d6cd9 data for comparison
+commit 106e4ced78888cb2bc1a48ada42b0eb88f75131b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Aug 15 18:14:24 2022 +0000
+
+    Put cld_cwp_nwp back in level2
+
+                     Missing parent test data, using ancestor e7124ae
+           ==================== nwp ====================
+                             cld_cwp_nwp differs in "test_g16_conus_day"
+
+           Compared: 106e4ce e7124ae
+
+commit 5b3967c7b0bfc087ef2b0aa929bdf3edbd89fd9a
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Aug 15 18:07:00 2022 +0000
+
+    Add more changes to changelog
+
+                     No 5b3967c data for comparison
+commit b3285a45ab9e1dedbab4501074384630b5ee8b13
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Aug 8 15:46:20 2022 +0000
+
+    More annotations
+
+                     No b3285a4 data for comparison
+commit e7b4119566a7d36ebbca563d32c08f3c1e79ec11
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Aug 8 15:26:53 2022 +0000
+
+    Add annotated commit log in release docs
+
+                     No e7b4119 data for comparison
+commit bf0cc18bf2aa0fb3cbfda02b660e57a929f161b8
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri Aug 5 20:57:54 2022 +0000
+
+    Completely remove top-down opaque cloud height
+
+                     No bf0cc18 data for comparison
+commit 997b94e07aae30cca0eb5f2df40869488bd12d48
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Wed Aug 10 17:49:54 2022 -0500
+
+    removed unused module linking
+
+                     No 997b94e data for comparison
+commit be36772d034d836707daef45c33ccc48ade00579
+Author: Mike Foster <mfoster@incus.ssec.wisc.edu>
+Date:   Fri Feb 11 20:45:36 2022 +0000
+
+    Remove VZA correction since bug has been fixed
+
+                     No be36772 data for comparison
+commit e7124aee81f52b1b32f9178be063de751cdce5f8
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri Aug 5 15:26:46 2022 +0000
+
+    Remove unused code
+
+commit fde7f4a4358e4741d78467e1fc45d2f92ea550ca
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri Jul 29 18:17:03 2022 +0000
+
+    Add gdb to testing modes
+
+commit 6d64b525ee152f426342f5196925cefd3f14fa26
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri Jul 29 15:07:21 2022 +0000
+
+    Fix missing values in refl_sfc_white_sky_
+
+commit 16c64767c62953495a6a533daa0cad005b81822b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri Jul 29 14:43:24 2022 +0000
+
+    Initialize array
+
+commit 29aab4a569d09243261693be5e7b05fa8a8aeb3c
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Jul 28 21:55:51 2022 +0000
+
+    Fix data type in refl_sfc_white_sky_
+
+commit 7ea6dd24ac3f0514af7f72f6ebcc651155521ff6
+Merge: 8badfec 8cd04c6
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Jul 28 20:03:34 2022 +0000
+
+    Merge branch 'master' into develop
+
+           ==================== l1b ====================
+                         cld_temp_opaque differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+                                ndvi_sfc differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                       cld_height_opaque differs in "test_g16_conus_day"
+                        cld_press_opaque differs in "test_g16_conus_day"
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== rtm ====================
+              refl_0_65um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_65um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_0_86um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_86um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_1_60um_nom_atmos_corr differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+     cld_press_lower_acha missing from 8cd04c6/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+               refl_1_60um_nom_clear_sky differs in "test_g16_conus_day"
+
+           Compared: 7ea6dd2 8cd04c6
+
+commit 8badfec98d70e068d2ec309b375766063433bc1a
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri Jul 15 17:56:49 2022 +0000
+
+    Test updates
+
+commit 18d757fb69c32ee0bd869b30d254d3ee20142b8e
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Jun 30 18:31:19 2022 +0000
+
+    Add perf and valgrind testing modes
+
+commit aef67a184c008e65afa829d031267c009b62014e
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Tue Jun 14 14:04:26 2022 +0000
+
+    Update testing documentation and add archive script
+
+commit 35d97430ef7ac06e93e8be9ae022edff3473a703
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Wed Jun 8 18:55:48 2022 +0000
+
+    Initialize pointers
+
+commit dec29253c3cbacc818962130cf11d02543138d2f
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon May 23 16:32:00 2022 +0000
+
+    Remove commented code and fix some formatting
+
+commit 8863992108c07ffff7588bf78ea2b8e5958d222b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon May 23 15:38:33 2022 +0000
+
+    Fix more uninitialized memory reads
+
+           ==================== acha ====================
+                         cloud_type_acha differs in "test_g16_conus_day"
+
+           Compared: 8863992 ae2cb9f
+
+commit ae2cb9fa308e2ef9880c17dbbc58275fd6604662
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Tue May 17 21:37:24 2022 +0000
+
+    Update changelog
+
+commit fd9d4ab6a931c1995ab46662105818dd30cd6784
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Tue May 17 21:23:46 2022 +0000
+
+    Update version numbers
+
+commit e3660702cabc0f45c1e82732a7f90e5308a54dcd
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 20:46:36 2022 +0000
+
+    fix cloud transmission long_name in level 2
+
+commit 1d58aa5c0e94cd184f00a26a8b11f1c9a6736ca6
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 19:56:09 2022 +0000
+
+    Remove commented code
+
+commit 39e1606f49f918cf4d57cc170f89ad81b118ebd0
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 19:55:16 2022 +0000
+
+    Stop using uninitialized data in cloud_height_routines
+
+commit 61708bdfde67e2d3db52f160231efb3e21cdf89c
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 19:34:29 2022 +0000
+
+    Always initialize pointers in acha_module
+
+commit 7b10e0e035ae3429c78c638ca3f0f535a14099a9
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 19:28:40 2022 +0000
+
+    Stop using uninitialized data within dncomp
+
+commit 17cc15a0dfcd99e6c62d2827ae2bde095ae9b748
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 16:30:01 2022 +0000
+
+    Fix implicit usage of uninitialized data due to function signature in acha_rtm_mod.f90
+
+commit 45690af03ba017d0baa842c6c2fc5c2b41151b54
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 13 14:01:10 2022 +0000
+
+    If-statement uses uninitialized memory in sensor_mod
+
+commit 14a9dfc2f45dabf61326d7f3c44c57ce99b0cdbc
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu May 12 18:15:28 2022 +0000
+
+    Move docs
+
+commit 02db9ccb07e861f526d5c40d52b28d4b0e84f736
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu May 12 15:18:26 2022 +0000
+
+    Partially remove commented code
+
+commit f3774db2fad2476471b96579216a9feba7169b59
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu May 12 14:51:27 2022 +0000
+
+    Add release checklist
+
+commit ea9266079e408077241e0b9c7c8320471425e3e3
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Jul 28 02:25:16 2022 +0000
+
+    bug fix identified by Coda
+
+           ==================== l1b ====================
+                         cld_temp_opaque differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+                                ndvi_sfc differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                       cld_height_opaque differs in "test_g16_conus_day"
+                        cld_press_opaque differs in "test_g16_conus_day"
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== rtm ====================
+              refl_0_65um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_65um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_0_86um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_86um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_1_60um_nom_atmos_corr differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+               refl_1_60um_nom_clear_sky differs in "test_g16_conus_day"
+
+           Compared: ea92660 307f005
+
+commit 307f0050fa2204690e249f317cdfec8b91b54cf1
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 20:37:42 2022 +0200
+
+    change for higher gfortrans
+
+commit aeb85dc01df9488e3568bb704b8a0fa7936cd4f4
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 18:19:43 2022 +0200
+
+    change for higher gfortrans
+
+commit eee559d921815768f92a7a20a61872d21413439b
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 17:40:11 2022 +0200
+
+    change for higher gfortrans
+
+                     Missing parent test data, using ancestor 52c305f
+commit 4925f01070cb69e8acc818a28dd4e3d63c0dec3e
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 17:22:12 2022 +0200
+
+    change for higher gfortrans
+
+                     No 4925f01 data for comparison
+commit a9c283370869712620138e1079fd91ac2d76ec22
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 17:13:08 2022 +0200
+
+    int instead of old style long
+
+                     No a9c2833 data for comparison
+commit 2ab73ab9068248b2928796e5aa7a5b7fb75be536
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 17:12:24 2022 +0200
+
+    change for higher gfortrans
+
+                     No 2ab73ab data for comparison
+commit 68736a7fe03a36eec224d3fc4114895d848529e0
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 17:11:27 2022 +0200
+
+    change for higher gfortrans
+
+                     No 68736a7 data for comparison
+commit 52c305fb0005a4bab76d6d47d3db9913a915334d
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 30 16:26:08 2022 +0200
+
+    add gfortran10
+
+commit 71034c612e59bff00a4761d3933c81398cbc1e1a
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jun 29 19:03:40 2022 +0200
+
+    add gfortran versions above gcc10
+
+                     Missing parent test data, using ancestor 25aed62
+commit b84c558a11d9bca0e9cf9a063d2f75d2a554e8e1
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jun 29 19:00:46 2022 +0200
+
+    add gfortran versions above gcc10
+
+                     No b84c558 data for comparison
+commit c18823407711514350a3893b5f0058cdcebc2e75
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jun 29 17:33:24 2022 +0200
+
+    add keywords for newer compilers
+
+                     No c188234 data for comparison
+commit 25aed6296fa3f65ae6be255073415ed2a40b2372
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jun 24 15:18:51 2022 +0200
+
+    UMD fix
+
+commit 1ffce1d4f13098e6fa69a5454dee7c77ffda1907
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Jun 20 15:22:57 2022 +0000
+
+    isnan doesn't work if you compile with -ffast-math
+    so disable finite-only math flag in modules that use isnan
+
+commit 4ad19e289ca1e2d3677794c04a5f7b68224da76b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Jun 2 15:57:14 2022 +0000
+
+    cleanup tmpdirs when no l1b
+
+commit 59bb6c92f4a44b76e767891a04d48762d3f6a811
+Author: Yue Li <yli@selene.ssec.wisc.edu>
+Date:   Wed Jun 1 19:55:59 2022 +0000
+
+    add filter to KDtree input due to unexpected AHI cloud type when lat/lon are missing
+
+commit bb47ed8d7a368406785643cc61d4995869d0034c
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Thu May 19 15:33:14 2022 +0000
+
+    a fix to make sure kd-tree calculation is not out of bounds
+
+commit eabc6ce1b604fa275abc7ada0f6a0e0fb39ddf49
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Mon May 16 21:32:45 2022 +0000
+
+    added mvcm to goes16/17
+
+commit 9f9ee77c56bc6cd2d522c789385e94f80978d1a5
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Tue May 10 21:10:18 2022 +0000
+
+    Fix bug in DCOMP insolation
+
+commit 6ed8e6686b7a4e55d7547d7ac76fe2bc92762545
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed May 4 13:32:19 2022 +0000
+
+    sbaf work
+
+commit b3aa0419acadfce2957dcda28694183bcb57d55c
+Merge: a252649 b57e59b
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed May 4 13:30:44 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+commit a252649d8b93cfcd047b624475e09b419f977eed
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed May 4 13:28:20 2022 +0000
+
+    moded for isccp
+
+commit b57e59be123107e50eaa9b844e4f5daca436bbb6
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed May 4 14:38:24 2022 +0200
+
+    signal handling
+
+                     Missing parent test data, using ancestor 9d9c547
+commit 8a15928354c49eb20eb6750b0658040e18c80a8b
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed May 4 14:13:09 2022 +0200
+
+    changed signal SIUGTERM from 12 to 15 which seemed to work on all machines
+
+                     No 8a15928 data for comparison
+commit 8cd04c6586e1e7288fa5731b9a15246c0bd8197e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Apr 18 17:04:20 2022 +0000
+
+    Revert "excluded high res files from normal VIIRS resolution to avoid stops"
+    
+    this was done in master by accident
+    
+    This reverts commit 1003948593921790a88517aaed7bba015858c8e0.
+
+commit 1003948593921790a88517aaed7bba015858c8e0
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Apr 18 16:49:26 2022 +0000
+
+    excluded high res files from normal VIIRS resolution to avoid stops
+
+commit 9d9c547c12bc03c01a71fd96aba7060b9f4e6ff2
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Apr 14 20:42:39 2022 +0000
+
+    Make test work with old python
+
+commit 0fc95167ef4ab2f8b7f11b323ba1d95424d1f2bd
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Apr 14 19:54:34 2022 +0000
+
+    Add test for the SIGNAL bugfix
+
+commit b801989be2c812a7d7427c1bd07b7fafd4821c9b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Apr 14 17:57:32 2022 +0000
+
+    Handle fortran SIGNAL() return status correctly
+
+commit 71728f522fdde4b95d67ec93f0187f5141ff3572
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Thu Apr 14 09:37:00 2022 -0500
+
+    removed confusing and wrong comment in example option line
+
+commit 10d2123e45c05157002aa78f5fd17e79d65ea4ae
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Tue Apr 5 21:38:39 2022 +0000
+
+    added mvcm read for him08
+
+commit d3a8b263247c5632e19bd4f670d8e826dc53e662
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Apr 4 21:22:24 2022 +0000
+
+    Make temp_files suffix actually unique and put the dummy files inside the temp_files
+
+commit 80b21faa61fd471ee947febe2c1aa8e0271e3b8f
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Apr 4 21:05:35 2022 +0000
+
+    Handle SIGINT and SIGTERM to clean up the temp_files_ directory before exiting
+
+commit 8b4278f0d09ae5a090d1fef75278c4dbebcacd0b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Tue Apr 5 03:33:14 2022 +0000
+
+    No new files in cwd
+
+commit 0b750f7bedc87f410f2044098e2c8c9b5e57a36c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Apr 4 19:13:59 2022 +0200
+
+    messaging
+
+commit dd89d94dd29d8b891df1d730cf77a88c7b3838da
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Apr 4 19:13:54 2022 +0200
+
+    messaging
+
+commit fc2a483b06bf6876a47dbf184f07f12e774552f9
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Apr 4 19:13:48 2022 +0200
+
+    messaging
+
+commit 4241df6ac24cfd5f754806d177025da23f6e7027
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sun Apr 3 15:02:58 2022 +0200
+
+    fixed messages
+
+commit 9e13a5ed86f0b29d11cc32297389025b1b4fa26c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sun Apr 3 15:02:40 2022 +0200
+
+    fixed messages
+
+commit b9fbd6509dd8b217ebc02d599575a292c20ed7c8
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Apr 1 01:43:43 2022 +0200
+
+    add catch for all bad-pixels segments for RTM
+
+           ==================== ccl ====================
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+
+           Compared: b9fbd65 280f486
+
+commit 280f4865bb7abf9a340559aa49e83a194a575080
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Mar 30 00:52:22 2022 +0200
+
+    add older GOES to RTTOV
+
+commit c1d1a64e464a0b9532fb8115e9658c3a21720d12
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Tue Mar 29 20:04:19 2022 +0000
+
+    set obs to missing, leave only path data
+
+commit bd16ef7827044c5911b8ee24aec807420590c8b4
+Merge: 7911ca1 71ec9c6
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Mar 28 18:46:14 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+commit 7911ca1a3ec25f6466d83ea3a396b61f37d2a673
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Mar 28 18:45:54 2022 +0000
+
+    default acha settings
+
+commit 71ec9c6ec4c390a23d3ad6991256f06c6951b2f6
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Mar 28 18:44:41 2022 +0000
+
+    Add changelog
+
+commit e995d862fc0e0866081327099974c09aab7891bb
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Mar 28 18:41:20 2022 +0000
+
+    amv parameters called out
+
+commit 4183499e70f02b64b544fc69659361f8f0dd515d
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Mon Mar 21 23:32:52 2022 +0000
+
+    turned off temporary shadow
+
+           ==================== ecm2 ====================
+                             shadow_mask differs in "test_g16_conus_day"
+
+           Compared: 4183499 c111e02
+
+commit c111e023ad2684df3d6ce0bbd22b52d6228415c3
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Tue Mar 15 21:24:54 2022 +0000
+
+    fix for caliop matchups missing /= -999
+
+commit eb72985f6b43bb56b4815a0fa594d9c5c03ac4b3
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Mar 15 15:17:46 2022 +0000
+
+    removed commented lines
+
+commit 9004a1fae86a0391e1a172d7d38bd387016b242c
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Mar 15 15:17:26 2022 +0000
+
+    removed commented lines
+
+commit eb7526bb311efe9c0c128aa93e396640b958670e
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Mar 15 15:16:53 2022 +0000
+
+    removed commented lines
+
+commit 92f044b3586c0b4fb54e377dd25d4f413f45a860
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Mar 15 15:16:13 2022 +0000
+
+    removed commented lines
+
+           ==================== acha ====================
+     cld_press_lower_acha missing from 40054b1/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           ==================== ccl ====================
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+
+           Compared: 92f044b 40054b1
+
+commit 40054b19e8c29a623da9d40803449c2c85de0770
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Mar 15 15:15:45 2022 +0000
+
+    removed commented lines
+
+commit fb704b8d59735c6eb06183f945cde25c775e6dba
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Mar 8 20:55:45 2022 +0000
+
+    added new metrics
+
+commit cb05a1f2e717cf86e5c3f0cc5c54c5301927961b
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Thu Mar 3 13:30:25 2022 +0000
+
+    All modules modified for GOES-18 support
+
+commit 5afc1589939ef7ee386e223fff75f3a28252e1f7
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Wed Feb 16 18:41:31 2022 +0000
+
+    Make clavrx fail gracefully when encountering an empty l1b
+
+commit f4c6d2c82630d90a25770138798e3ddf1cbf6774
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Tue Feb 15 16:02:22 2022 +0000
+
+    Fix segfault when running avhrr with process_cloud=off
+
+commit 213bc72b8e909f1ed7ee868b5414b80cd1a70d68
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Feb 15 10:00:13 2022 +0100
+
+    removed magic numbers
+
+commit bd6e2e080b9bc6787f02d4f6bc37ac99b31e70ff
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Feb 15 09:43:49 2022 +0100
+
+    removed useless gamma factor adjustment for solar cjhannels
+
+commit 3800185c37a87a97e39d615014b2129f281d4587
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Feb 12 11:14:09 2022 +0100
+
+    early goes rttov
+
+commit 756c9f9dc90de4a8cf23204b65e2448521060346
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Feb 10 19:25:48 2022 +0000
+
+    Add bounds check because array oob was causing segfault
+
+commit 495d7bf0869aa60f07e4292a3fc3655010f168fd
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Feb 10 19:23:47 2022 +0000
+
+    Convert file to unix line endings
+
+commit c6dc085b7acf8698007ef28b8a397c2cc47fd05d
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Feb 10 16:14:36 2022 +0000
+
+    Add AVHRR test
+
+commit 8050d8455ddc425b54685edf5b1137d1a35e881b
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Feb 10 14:48:11 2022 +0000
+
+    Show clavrx logs during tests
+
+commit acf0525ac8fd51a578d93be7feca15ad4c2f21ea
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Wed Feb 2 21:18:45 2022 +0000
+
+    Add VIIRS and FUSION smoke tests
+
+commit 088c1578c77b9f25e3a84d7bb6ba200f9d0d1f3d
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Jan 31 21:52:41 2022 +0000
+
+    start setting up CI build
+
+commit 57c3d111e17b32044bdc530c51dc2c31721a91f8
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Feb 1 16:58:56 2022 +0100
+
+    reoved useless function in dcomp
+
+commit 58af54670bcf38543327f7d5c9a6f7e0dd2dd675
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Feb 1 12:37:57 2022 +0100
+
+    delete file
+
+commit 705660c8a8265b1269315a050423d1ccbe46973e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Feb 1 12:30:13 2022 +0100
+
+    removed unused variables and tools
+
+commit a268952884fc08ae32ea9fd6e1cee2df31ba4634
+Author: Coda Phillips <coda.phillips@ssec.wisc.edu>
+Date:   Mon Jan 31 17:32:28 2022 +0000
+
+    Update .gitlab-ci.yml file
+
+commit 072d2b24c2f465618d9085b548f7ca2fd096cb80
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jan 31 15:13:42 2022 +0100
+
+    level2 mod fix to avoid endless loop
+
+commit 73579c1bd955c6b9123bb57a7e5b69ef143fff75
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jan 31 13:22:38 2022 +0100
+
+    fixed hits metop
+
+commit eb702d338977e3b537f7f352b6d4d91ac5e63f11
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 26 12:59:07 2022 +0100
+
+    add some ignore files
+
+commit a5fd44df07209eb68c27f902d6f9402723ba8edf
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Tue Jan 25 23:33:45 2022 +0000
+
+    added 2 cases yyyymmdd and hhmm
+
+commit d0dfe12ebb5e7879380915444ba5c50c19a6a7b8
+Merge: 42b78c7 2c6342f
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Tue Jan 25 20:21:44 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+commit 42b78c708aa22989fcf999fde307b4295b39130c
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Tue Jan 25 20:21:05 2022 +0000
+
+    nwp_common_mod.f90 - adjust trop indexing for INDOEX processing issue
+
+commit 2c6342fba0d07bd006c2a94067f0354b04a7ee9d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jan 20 14:13:15 2022 +0100
+
+    shadow work
+
+commit 8240cc70aea2d1582e24a3b0dfc4fe663371768b
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 19 22:00:08 2022 +0000
+
+    fixed azimuth for l1g
+
+commit 44b9aa6daabed0d7c63b002be55650d12d902565
+Merge: 6538ba1 381c0b4
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 19 16:04:22 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+commit 6538ba134dcd86780003c671b6bd1e8b54f2f700
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 19 16:03:56 2022 +0000
+
+    added radiances to isccp-ng
+
+commit 381c0b41c21c83dd5205798e3309ce3d9c8d0f5c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 16:07:35 2022 +0100
+
+    SPACE in caliop
+
+commit 4df1ed4a825fe4803fd7dc01237d63e5792ae59e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 16:04:51 2022 +0100
+
+    space mask
+
+                     No ancestor data for comparison
+commit 0e4d75c577934f857ae4b2635b7f6067ff8560dd
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 15:57:52 2022 +0100
+
+    stop in space
+
+                     No 0e4d75c data for comparison
+commit b37025b32df66a5db45164bf6464115c80cea171
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 15:50:16 2022 +0100
+
+    shadow avoid endless loop
+
+                     No b37025b data for comparison
+commit 4a3d50080958c92db3ca35fb92794e3f6fe567d0
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 15:49:05 2022 +0100
+
+    removed stop
+
+                     No 4a3d500 data for comparison
+commit 1a1277f094616cd8826999f82996bf72f55c5088
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 15:51:38 2022 +0100
+
+    stop in space
+
+                     No 1a1277f data for comparison
+commit 7913e701a9f4f9bf8f2444f5cd7e07fb859bb6b7
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 15:45:33 2022 +0100
+
+    fix
+
+                     No 7913e70 data for comparison
+commit 7325bb2e87555da5deb069f2684a799eb5b830dd
+Merge: b8c04d7 f1d15e2
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 19 14:34:36 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+                     No 7325bb2 data for comparison
+commit b8c04d77749478c1b0222d1ca70df04832a208ba
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 19 14:34:33 2022 +0000
+
+    small tweaks for l1g
+
+commit 9354a51e047388ed14a18e3e195f97bb52ee330b
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 19 14:32:54 2022 +0000
+
+    small tweaks for l1g
+
+           ==================== acha ====================
+                         cld_height_acha differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                              wmo_id_l1g differs in "test_g16_conus_day"
+
+           Compared: 9354a51 6567cff
+
+commit f1d15e26e3cf99155c61604bb1ebd1a05ab11a2a
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jan 19 13:56:36 2022 +0100
+
+    made space to a logical
+
+                     No f1d15e2 data for comparison
+commit 6567cffdc8d179de37e8f79b90ba5bd3fbd4e6aa
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jan 18 17:44:57 2022 +0100
+
+    some code style changes
+
+commit 1628625acdf04e428fbd28b68e2af308fabd7b89
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jan 18 16:30:35 2022 +0100
+
+    add small comment
+
+commit 7ef0d51dae23ceaf4a0560708852e76185bb99b0
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Jan 18 15:40:54 2022 +0000
+
+    added isccpnp wmo line
+
+commit 7bbb71d6aa04d1f7b4a6ac9290eb63608ccca136
+Merge: 08d0538 27a269c
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Jan 18 15:20:00 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+           ==================== misc ====================
+                              wmo_id_l1g differs in "test_g16_conus_day"
+
+           Compared: 7bbb71d 27a269c
+
+commit 08d05386eb039b58218e717fc2758bed42c05c30
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Jan 18 15:19:37 2022 +0000
+
+    mistake in isccp-ng
+
+           ==================== misc ====================
+                              wmo_id_l1g differs in "test_g16_conus_day"
+
+           Compared: 08d0538 6093ea8
+
+commit 27a269c5007a633b209e06a7be9db11114221fdc
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jan 17 18:03:02 2022 +0100
+
+    many time duplicates
+
+                     Missing parent test data, using ancestor 4e4d0a4
+commit 2015dab937732d66b5bed5c871a786c631ea61b3
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jan 17 18:02:32 2022 +0100
+
+    many time duplicates
+
+                     No 2015dab data for comparison
+commit 4e4d0a44152b047e4f55dfb5845526e5736b4ad6
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jan 17 16:04:49 2022 +0100
+
+    small time chance
+
+commit 9f5588564266f725fbcf27f152473a5afdd11da8
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 18:49:15 2022 +0100
+
+    several time things
+
+commit a003e361982c742893cb87b87931b4f3b53ddc9b
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 18:48:36 2022 +0100
+
+    several time things
+
+commit 9daf982229de21ed7cd5465cf4e45b38291f3cab
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 17:46:50 2022 +0100
+
+    some use only calls
+
+commit 1ce32f432098dbade4b82fa2d83faafddff73b5c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 17:30:12 2022 +0100
+
+    time object terms
+
+commit 4cda9e069c0d7d4b83dfbcffa78927f0697f74b3
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 16:17:12 2022 +0100
+
+    modie time obj extension
+
+                     Missing parent test data, using ancestor 4a12234
+commit 78e2ed9167d008f758095dc0ca359589626ef110
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 16:15:10 2022 +0100
+
+    modie time obj extension
+
+                     No 78e2ed9 data for comparison
+commit 4a1223438102daae126ea7d03839dd237df108e2
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 16:09:54 2022 +0100
+
+    fix
+
+                     Missing parent test data, using ancestor e1bd2a9
+commit 4e59489bfa43a0bc404dc456c7772f054b96673b
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 15:34:37 2022 +0100
+
+    start changing to time obj
+
+                     No 4e59489 data for comparison
+commit e1bd2a9a11d2a9181249cc1f13a0520b0b0af731
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 15:34:03 2022 +0100
+
+    start changing to time obj
+
+commit f3294f16cbb1ac56ab1aa5dc09350f83f03a5bc0
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 16:02:30 2022 +0100
+
+    time obj
+
+commit c14e81a7647b9fb3b1cf479421410a3231faba3d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 15:52:07 2022 +0100
+
+    enables doy/msec for time object
+
+                     Missing parent test data, using ancestor 6093ea8
+commit a11f83ca67f7af43281786d40cf9c903d271620a
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jan 15 15:47:19 2022 +0100
+
+    time obj
+
+                     No a11f83c data for comparison
+commit 6093ea847bb2343918dfd769a017d8d20662aa82
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Fri Jan 14 20:20:52 2022 +0000
+
+    fixed avhrr exclusion in do loop
+
+commit c5334e0e7af30619aa7eab6b56ee1d60be64c6b6
+Author: Yue Li <yli@selene.ssec.wisc.edu>
+Date:   Fri Jan 14 15:35:37 2022 +0000
+
+    fix sensor not found error
+
+commit c8eb9dab42f9f4d52f5b027e20bf7d4f7795717d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jan 14 13:14:49 2022 +0100
+
+    test files
+
+commit ad60ec4be0266fc059af31eeadfc4564fa2a6564
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jan 14 13:14:22 2022 +0100
+
+    hres viirs work
+
+commit 671a92b21cc521c70b525a39ebfc96e94e93cf76
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jan 14 13:13:25 2022 +0100
+
+    library cx_sds_io netcdf enables groups
+
+commit 6683f967c6ae6172bbfe51e1b12132ebe65f526c
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Jan 13 15:56:08 2022 +0000
+
+    added isccp met8 and met11 support
+
+commit 6b21b6201d8bae49fb9db23599285c8bad8be4c0
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Jan 13 04:31:06 2022 +0000
+
+    removed dead code
+
+commit 63625f7c2365f603c7790bbd76f4b58fa8249202
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Jan 13 04:13:50 2022 +0000
+
+    first draft of isccp l1g
+
+commit 48627d769813610c2d7f7f7de72de5015006dba9
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 12 16:59:30 2022 +0000
+
+    isccp-ng
+
+           ==================== l1b ====================
+                         cld_temp_opaque differs in "test_g16_conus_day"
+                         refl_0_65um_nom differs in "test_g16_conus_day"
+                 refl_0_65um_nom_max_3x3 differs in "test_g16_conus_day"
+                 refl_0_65um_nom_max_sub differs in "test_g16_conus_day"
+                 refl_0_65um_nom_min_3x3 differs in "test_g16_conus_day"
+                 refl_0_65um_nom_min_sub differs in "test_g16_conus_day"
+              refl_0_65um_nom_stddev_3x3 differs in "test_g16_conus_day"
+                         refl_0_86um_nom differs in "test_g16_conus_day"
+                 refl_0_86um_nom_max_sub differs in "test_g16_conus_day"
+                 refl_0_86um_nom_min_sub differs in "test_g16_conus_day"
+                         refl_1_60um_nom differs in "test_g16_conus_day"
+                 refl_1_60um_nom_max_sub differs in "test_g16_conus_day"
+                 refl_1_60um_nom_min_sub differs in "test_g16_conus_day"
+                         refl_3_75um_nom differs in "test_g16_conus_day"
+                 temp_11_0um_nom_max_3x3 differs in "test_g16_conus_day"
+                 temp_11_0um_nom_min_3x3 differs in "test_g16_conus_day"
+              temp_11_0um_nom_stddev_3x3 differs in "test_g16_conus_day"
+             temp_11um_vs_67um_covar_5x5 differs in "test_g16_conus_day"
+              temp_3_75um_nom_median_5x5 differs in "test_g16_conus_day"
+              temp_3_75um_nom_stddev_3x3 differs in "test_g16_conus_day"
+
+           ==================== geo ====================
+                              glint_mask differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+                              coast_mask differs in "test_g16_conus_day"
+                              land_class differs in "test_g16_conus_day"
+                               land_mask differs in "test_g16_conus_day"
+                                ndvi_sfc differs in "test_g16_conus_day"
+                       surface_elevation differs in "test_g16_conus_day"
+               surface_elevation_max_3x3 differs in "test_g16_conus_day"
+               surface_elevation_std_3x3 differs in "test_g16_conus_day"
+            surface_elevation_stddev_3x3 differs in "test_g16_conus_day"
+                            surface_type differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                       cld_height_opaque differs in "test_g16_conus_day"
+                             cld_iwp_nwp differs in "test_g16_conus_day"
+                             cld_lwp_nwp differs in "test_g16_conus_day"
+                           cld_press_nwp differs in "test_g16_conus_day"
+                        cld_press_opaque differs in "test_g16_conus_day"
+                            cld_temp_nwp differs in "test_g16_conus_day"
+                      cloud_fraction_nwp differs in "test_g16_conus_day"
+                             div_200_nwp differs in "test_g16_conus_day"
+                             div_sfc_nwp differs in "test_g16_conus_day"
+                                   oisst differs in "test_g16_conus_day"
+                opaque_height_11_0um_nom differs in "test_g16_conus_day"
+                opaque_height_12_0um_nom differs in "test_g16_conus_day"
+                opaque_height_13_3um_nom differs in "test_g16_conus_day"
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+                 opaque_height_9_7um_nom differs in "test_g16_conus_day"
+                               rh300_nwp differs in "test_g16_conus_day"
+                              snow_class differs in "test_g16_conus_day"
+                          snow_class_nwp differs in "test_g16_conus_day"
+                 surface_temperature_nwp differs in "test_g16_conus_day"
+                                 uth_nwp differs in "test_g16_conus_day"
+
+           ==================== rtm ====================
+                                ndvi_toa differs in "test_g16_conus_day"
+              refl_0_65um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_65um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_0_86um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_86um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_1_60um_nom_atmos_corr differs in "test_g16_conus_day"
+               temp_11_0um_nom_clear_sky differs in "test_g16_conus_day"
+               temp_12_0um_nom_clear_sky differs in "test_g16_conus_day"
+               temp_13_3um_nom_clear_sky differs in "test_g16_conus_day"
+               temp_3_75um_nom_clear_sky differs in "test_g16_conus_day"
+                temp_6_7um_nom_clear_sky differs in "test_g16_conus_day"
+                temp_7_3um_nom_clear_sky differs in "test_g16_conus_day"
+                temp_9_7um_nom_clear_sky differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                     bayes_mask_sfc_type differs in "test_g16_conus_day"
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+                           cloud_mask_qf differs in "test_g16_conus_day"
+                          cloud_mask_rut differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                          cloud_mask_tut differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                              smoke_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                          bad_pixel_mask differs in "test_g16_conus_day"
+               beta_11um_12um_tropopause differs in "test_g16_conus_day"
+              beta_11um_133um_tropopause differs in "test_g16_conus_day"
+               beta_11um_67um_tropopause differs in "test_g16_conus_day"
+                        cld_emiss_co2irw differs in "test_g16_conus_day"
+                           cld_emiss_h2o differs in "test_g16_conus_day"
+                      cld_emiss_splitwin differs in "test_g16_conus_day"
+                       cld_height_co2irw differs in "test_g16_conus_day"
+                          cld_height_h2o differs in "test_g16_conus_day"
+                 cld_opd_mask_0_65um_nom differs in "test_g16_conus_day"
+                 cld_opd_mask_1_60um_nom differs in "test_g16_conus_day"
+                        cld_press_co2irw differs in "test_g16_conus_day"
+                           cld_press_h2o differs in "test_g16_conus_day"
+                      cld_press_splitwin differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+                        emiss_3_75um_nom differs in "test_g16_conus_day"
+                  emiss_3_75um_nom_clear differs in "test_g16_conus_day"
+             emiss_3_75um_nom_median_3x3 differs in "test_g16_conus_day"
+                    emiss_sfc_11_0um_nom differs in "test_g16_conus_day"
+                    emiss_sfc_3_75um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_11_0um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_12_0um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_13_3um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_3_75um_nom differs in "test_g16_conus_day"
+                   emiss_tropo_6_7um_nom differs in "test_g16_conus_day"
+                               fire_mask differs in "test_g16_conus_day"
+                       freezing_altitude differs in "test_g16_conus_day"
+            homogenous_freezing_altitude differs in "test_g16_conus_day"
+                                nddi_toa differs in "test_g16_conus_day"
+                                ndsi_toa differs in "test_g16_conus_day"
+               refl_1_60um_nom_clear_sky differs in "test_g16_conus_day"
+               refl_3_75um_nom_clear_sky differs in "test_g16_conus_day"
+                  sst_background_uni_3x3 differs in "test_g16_conus_day"
+           surface_temperature_retrieved differs in "test_g16_conus_day"
+                    trans_atm_11_0um_nom differs in "test_g16_conus_day"
+                layer_l1g missing from 41094ad/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+          sample_mode_l1g missing from 41094ad/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+               wmo_id_l1g missing from 41094ad/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           Compared: 48627d7 41094ad
+
+commit 41094ad5acc93cede078de7660d717915cf90a00
+Merge: 8e6b668 71356f8
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 12 16:12:51 2022 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 41094ad 8e6b668
+
+commit 8e6b668a07dad0100a3e236f1ecf7f695337f0c8
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 12 15:56:23 2022 +0000
+
+    fixed spelling errors
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 8e6b668 eb8cf66
+
+commit eb8cf66a803e20a7322c15bb3ec18a5e1914be15
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jan 12 15:53:14 2022 +0000
+
+    cx_isccp_mod.f90
+
+commit 71356f87ca91f6f9ac6b827f19ea06607548ef3f
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jan 11 14:41:01 2022 +0100
+
+    rttov hirs for early NOAAS bug fix
+
+commit fad69c3587dff0054538d60a091943316a170829
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jan 7 14:43:13 2022 +0100
+
+    add file for tesing cx_sds_io
+
+commit c2feb0b55c6f2c4437960b7d49db48ac9d460f9d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jan 7 14:30:00 2022 +0100
+
+    small thing with makefile
+
+commit ff327b71648833b77f5c2f2372caf2fac6cbc3fd
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jan 6 21:02:39 2022 +0100
+
+    memory leak
+
+commit 01154618e6afa94094e094d39dceff01f1252e65
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Jan 6 17:00:16 2022 +0000
+
+    Confirm lut bin-index change
+
+commit 071f17287832d5051936571454642b1b2d49fd92
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Tue Jan 4 23:47:36 2022 +0000
+
+    fix index to calculate correct bin
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 071f172 4affba4
+
+commit 4affba4a0bf5969d512d7352e211be417a141264
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jan 3 18:47:22 2022 +0100
+
+    add sseconds
+
+           ==================== l1b ====================
+                         cld_temp_opaque differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+                                ndvi_sfc differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                       cld_height_opaque differs in "test_g16_conus_day"
+                             cld_iwp_nwp differs in "test_g16_conus_day"
+                             cld_lwp_nwp differs in "test_g16_conus_day"
+                        cld_press_opaque differs in "test_g16_conus_day"
+                            cld_temp_nwp differs in "test_g16_conus_day"
+                      cloud_fraction_nwp differs in "test_g16_conus_day"
+                             div_200_nwp differs in "test_g16_conus_day"
+                             div_sfc_nwp differs in "test_g16_conus_day"
+                                  el_nwp differs in "test_g16_conus_day"
+                             k_index_nwp differs in "test_g16_conus_day"
+                                 lcl_nwp differs in "test_g16_conus_day"
+                                 lfc_nwp differs in "test_g16_conus_day"
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+                               rh300_nwp differs in "test_g16_conus_day"
+                          snow_class_nwp differs in "test_g16_conus_day"
+             surface_air_temperature_nwp differs in "test_g16_conus_day"
+                    surface_pressure_nwp differs in "test_g16_conus_day"
+           surface_relative_humidity_nwp differs in "test_g16_conus_day"
+                 surface_temperature_nwp differs in "test_g16_conus_day"
+                  total_column_ozone_nwp differs in "test_g16_conus_day"
+            total_precipitable_water_nwp differs in "test_g16_conus_day"
+                 tropopause_pressure_nwp differs in "test_g16_conus_day"
+              tropopause_temperature_nwp differs in "test_g16_conus_day"
+                                 uth_nwp differs in "test_g16_conus_day"
+
+           ==================== rtm ====================
+              refl_0_65um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_65um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_0_86um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_86um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_1_60um_nom_atmos_corr differs in "test_g16_conus_day"
+               temp_11_0um_nom_clear_sky differs in "test_g16_conus_day"
+               temp_12_0um_nom_clear_sky differs in "test_g16_conus_day"
+               temp_13_3um_nom_clear_sky differs in "test_g16_conus_day"
+               temp_3_75um_nom_clear_sky differs in "test_g16_conus_day"
+                temp_6_7um_nom_clear_sky differs in "test_g16_conus_day"
+                temp_7_3um_nom_clear_sky differs in "test_g16_conus_day"
+                temp_9_7um_nom_clear_sky differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                                 ccl_nwp differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+               beta_11um_12um_tropopause differs in "test_g16_conus_day"
+              beta_11um_133um_tropopause differs in "test_g16_conus_day"
+               beta_11um_67um_tropopause differs in "test_g16_conus_day"
+                        cld_emiss_co2irw differs in "test_g16_conus_day"
+                           cld_emiss_h2o differs in "test_g16_conus_day"
+                      cld_emiss_splitwin differs in "test_g16_conus_day"
+                       cld_height_co2irw differs in "test_g16_conus_day"
+                          cld_height_h2o differs in "test_g16_conus_day"
+                        cld_press_co2irw differs in "test_g16_conus_day"
+                           cld_press_h2o differs in "test_g16_conus_day"
+                      cld_press_splitwin differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+                  emiss_3_75um_nom_clear differs in "test_g16_conus_day"
+                    emiss_sfc_11_0um_nom differs in "test_g16_conus_day"
+                    emiss_sfc_3_75um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_11_0um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_12_0um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_13_3um_nom differs in "test_g16_conus_day"
+                  emiss_tropo_3_75um_nom differs in "test_g16_conus_day"
+                   emiss_tropo_6_7um_nom differs in "test_g16_conus_day"
+                       freezing_altitude differs in "test_g16_conus_day"
+               refl_1_60um_nom_clear_sky differs in "test_g16_conus_day"
+               refl_3_75um_nom_clear_sky differs in "test_g16_conus_day"
+           surface_temperature_retrieved differs in "test_g16_conus_day"
+                    trans_atm_11_0um_nom differs in "test_g16_conus_day"
+
+           Compared: 4affba4 bd57254
+
+commit bd572549b85598075e75703cdf8b75666fc60646
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Dec 21 19:14:14 2021 +0000
+
+    july 2021 beta constraint and undetected_cloud fix
+
+commit 3d989fe0a0fcb7b0781ae941eb549a4d518f1677
+Merge: 3fa8648 b9c662b
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Dec 20 20:56:20 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+           ==================== l1b ====================
+              refl_0_65um_nom_stddev_3x3 differs in "test_g16_conus_day"
+              temp_11_0um_nom_stddev_3x3 differs in "test_g16_conus_day"
+              temp_3_75um_nom_stddev_3x3 differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+               surface_elevation_std_3x3 differs in "test_g16_conus_day"
+            surface_elevation_stddev_3x3 differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                          cloud_mask_tut differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 3d989fe 3fa8648
+
+           ==================== nwp ====================
+                             cld_cwp_nwp differs in "test_g16_conus_day"
+              cld_iwp_nwp missing from b9c662b/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+              cld_lwp_nwp missing from b9c662b/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           ==================== ecm2 ====================
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 3d989fe b9c662b
+
+commit 3fa8648e19cadb3240971a9912a44cebfdf89aca
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Dec 20 20:55:49 2021 +0000
+
+    ECM2 from NBM
+
+           ==================== ecm2 ====================
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 3fa8648 d376d51
+
+commit b9c662b79b0abde882e742600824991e79032cc3
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon Dec 20 16:44:32 2021 +0000
+
+    Initialization during declaration implies a static variable in fortran. Make explicit
+
+commit 5280f9d63c8196bed535139e1e26717cc6c0a646
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Dec 16 22:06:14 2021 +0000
+
+    Don't add add_offset or scale_factor attributes to unscaled variables
+
+commit 8723af7ea90878c2fa6bb3944881207d05d2bdf9
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Dec 16 22:04:05 2021 +0000
+
+    Fix precision bug in 3x3 standard deviation
+
+           ==================== l1b ====================
+              refl_0_65um_nom_stddev_3x3 differs in "test_g16_conus_day"
+              temp_11_0um_nom_stddev_3x3 differs in "test_g16_conus_day"
+              temp_3_75um_nom_stddev_3x3 differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+               surface_elevation_std_3x3 differs in "test_g16_conus_day"
+            surface_elevation_stddev_3x3 differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                          cloud_mask_tut differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                            acha_quality differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 8723af7 618d717
+
+commit 618d71791ac935802a7aadb29a02212e45fc08ba
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Wed Dec 15 17:24:01 2021 +0000
+
+    initialize undetected_cloud
+
+commit ba511b698754966a9db4a0e2a2c8eb6fca51513e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Dec 8 13:04:13 2021 +0100
+
+    update reader
+
+commit af1870dc7fcf2068c26fd5cd3922e528bf9ed6d5
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Dec 3 09:35:03 2021 +0100
+
+    code cleaning
+
+commit cab05db66842b5d5721737dd41f76500cb6d8097
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Dec 3 09:22:52 2021 +0100
+
+     file exist test to viirs nasa read
+
+commit d376d51f3bae2d7b42798603c53771d1326a5784
+Merge: 5ac893b b3470cd
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Sun Nov 28 03:17:30 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+           ==================== nwp ====================
+                             cld_cwp_nwp differs in "test_g16_conus_day"
+              cld_iwp_nwp missing from b3470cd/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+              cld_lwp_nwp missing from b3470cd/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           Compared: d376d51 b3470cd
+
+commit 5ac893b40f1894976793abb1d3ad93a420a93634
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Sun Nov 28 03:16:22 2021 +0000
+
+    added var to level2
+
+           ==================== nwp ====================
+                             cld_cwp_nwp differs in "test_g16_conus_day"
+              cld_iwp_nwp missing from 73760ae/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+              cld_lwp_nwp missing from 73760ae/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           Compared: 5ac893b 73760ae
+
+commit b3470cd8cd860b62f253be38d73b842090152c8d
+Author: Denis Botambekov <dbotambekov@selene.ssec.wisc.edu>
+Date:   Wed Nov 24 17:54:24 2021 +0000
+
+    fixed running -caliop with rttov seg fault
+
+commit 91a0926b5d41a68236f94465ba3cf9ba9eda1672
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Nov 18 11:36:53 2021 +0100
+
+    viirs hres number of lines issue
+
+commit 09842c86514a0fa89f7cad399973b380c3d6c244
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Nov 18 10:44:52 2021 +0000
+
+    files with h5 are often h5 files for variables
+
+commit 73760aef8882c28c2543d5ba20e0983986f26a6c
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Nov 17 17:05:44 2021 +0000
+
+    fixed for highres
+
+commit 80ce9d56ff75aabb503debcf21815ae873209712
+Merge: 585f1c5 b8f71df
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Nov 17 16:54:02 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+commit 585f1c57b142edab01b8ab7310a9824f2a5e1bae
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Nov 17 16:53:58 2021 +0000
+
+    fixed for highres
+
+commit d1ba4f95c7738c28984c87d1276ccaecb62db6cd
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Nov 17 16:52:01 2021 +0000
+
+    added exit for skip_l1b_flag
+
+commit b8f71df345d260f9d35206cf27030acf21e88d5e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Nov 16 15:07:45 2021 +0100
+
+    small changes
+
+commit 32a6ec5240faf7dd7a7556be52a35b5060b635b1
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Nov 11 16:25:36 2021 +0100
+
+    rttov test work
+
+commit 791091ab265204830e488ee1a49349a8610fd97b
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Nov 11 16:25:21 2021 +0100
+
+    rttov test work
+
+commit a246a7a2b584d5b9b23c37579435618d345b9fba
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Nov 11 16:25:02 2021 +0100
+
+    rttov test work
+
+commit d955bd389cc11b53919e4eee916ccfe137699e0e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Nov 11 16:23:50 2021 +0100
+
+    checkd hres ABI
+
+commit 2ebeb17cc4773d09b6e675c08a347e7dde1fcddc
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Nov 4 21:43:57 2021 +0000
+
+    added wanzong mode with 062um
+
+           ==================== acha ====================
+                            acha_quality differs in "test_g16_conus_day"
+
+           Compared: 2ebeb17 b228f66
+
+commit b228f667064362feecc8e7a881447cc8a0571faf
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Nov 4 21:41:51 2021 +0000
+
+    added 062um in acha mode check
+
+commit 180ad6fc6adc3d6f7ece68563876845aaaa5a688
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Nov 2 14:01:47 2021 +0100
+
+    rttov ozone
+
+commit b08f52d05d134bae833f58cb2e9d400ff1fb3287
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Nov 1 13:20:25 2021 +0000
+
+    fixed a little issue
+
+           ==================== ecm2 ====================
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           Compared: b08f52d bca2d98
+
+commit bca2d98b7a384b53ed0cdb8ec8f904c2a6182790
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Oct 27 15:59:54 2021 +0000
+
+    add var to pixel common
+
+           ==================== l1b ====================
+                         cld_temp_opaque differs in "test_g16_conus_day"
+
+           ==================== ancil ====================
+                                ndvi_sfc differs in "test_g16_conus_day"
+
+           ==================== nwp ====================
+                       cld_height_opaque differs in "test_g16_conus_day"
+                        cld_press_opaque differs in "test_g16_conus_day"
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== rtm ====================
+              refl_0_65um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_65um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_0_86um_nom_atmos_corr differs in "test_g16_conus_day"
+               refl_0_86um_nom_clear_sky differs in "test_g16_conus_day"
+              refl_1_60um_nom_atmos_corr differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                      cld_opd_uncer_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+      cld_beta_prior_acha missing from bca0ad9/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+     cld_emiss_prior_acha missing from bca0ad9/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+               refl_1_60um_nom_clear_sky differs in "test_g16_conus_day"
+             cld_temp_aux missing from bca0ad9/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           Compared: bca2d98 bca0ad9
+
+commit bca0ad950e57056b08419319ee06e24440f24b35
+Merge: 7b6300c f227bc2
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Oct 27 15:59:08 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+           Missing data for f227bc2
+commit 7b6300c483b3d30635ffe09af66c1d93e49c75a0
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Oct 27 15:58:16 2021 +0000
+
+    added new vars
+
+                     No ancestor data for comparison
+commit f227bc20235d9590574be48f3f4dab8734c54cfc
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 27 17:40:43 2021 +0200
+
+    code cleaning
+
+                     No f227bc2 data for comparison
+commit bad2c7838da8104ca7a69ad9f55677ab3be99700
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 27 17:40:16 2021 +0200
+
+    code cleaning
+
+                     No bad2c78 data for comparison
+commit 8a0a10b0ade54800669791c10371216bfadf3c24
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 27 17:40:02 2021 +0200
+
+    code cleaning
+
+                     No 8a0a10b data for comparison
+commit 58d97d097d9074b6142c22e545d4252bdcd331ad
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 27 17:39:16 2021 +0200
+
+    back
+
+                     No 58d97d0 data for comparison
+commit 4cebda0f6e2d9ff6bb145b8011a2e6e523f4fd47
+Merge: 0345563 07820f2
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Oct 26 20:19:02 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+                     No 4cebda0 data for comparison
+commit 03455632001376752bc9746d4e6f8c703e2a9439
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Oct 26 20:18:58 2021 +0000
+
+    added 1km
+
+                     No 0345563 data for comparison
+commit f3352a2290e37406e95a59000e077b0cc42119e6
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Oct 26 20:10:47 2021 +0000
+
+    fixed for missing
+
+commit 07820f27c26a4332421c38db2b57db6644f4721d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Oct 26 16:57:19 2021 +0200
+
+    cosmetic changes
+
+commit 8c6fd51369c49b44d8b80a69077496afd1744635
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Oct 25 18:38:42 2021 +0200
+
+    fixed rttov noaa-5
+
+commit 6447d21cbbe59ef95c12271f8ba1150442428145
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Oct 25 18:27:26 2021 +0200
+
+    fixed rttov noaa-5
+
+commit 797c7cb87ecb5a45389284e6ffb02b761183c450
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Oct 25 17:52:00 2021 +0200
+
+    fixed FY3d RTTOV
+
+commit 3b6ab49a0a4bf76915d71203d6527864d5f450fc
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Oct 18 14:17:53 2021 +0200
+
+    added sensors FY3-D and older GOES to RTTOV
+
+commit 80ced7c730f5ecddef359aef1a251a029aaa1b12
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Oct 14 15:25:05 2021 +0200
+
+    fix hres nasa viirs
+
+commit 2da2be5308610d59e1d54279d09d9fded087cbbf
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Oct 14 11:09:49 2021 +0200
+
+    add info call to level2 structures
+
+commit 7c2b96efda2a829aebb3b6f36615e249528d0103
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Oct 14 08:53:00 2021 +0200
+
+    muri back
+
+commit 635baed5ee3df6eed597f6aac10c7b7b1b7a7b15
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 13 13:54:01 2021 +0200
+
+    fixed hres
+
+commit b3057676536c2b3e3440ec8450010d6bb1d1a69d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 13 13:53:21 2021 +0200
+
+    fixed hres
+
+commit 3efe0b71bc6f6cc468721fe7d1aa3092f2b5210d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 13 10:08:52 2021 +0200
+
+    switched off VIIRS Dual LST
+
+commit 9057bb3f6e80d03b28c7a6a3eb4e0a915ad8f793
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Oct 12 17:37:45 2021 +0200
+
+    fix
+
+                     Missing parent test data, using ancestor 37bc133
+commit 69300e7df5252374477bd556951b38a52e99275a
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Oct 12 13:04:26 2021 +0200
+
+    cleaned code
+
+                     No 69300e7 data for comparison
+commit 8bb37faa9a32a4bbbd0f7ab4afe15911116bf0ef
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Oct 12 12:59:46 2021 +0200
+
+    cleaned code
+
+                     No 8bb37fa data for comparison
+commit 37bc1339eb073f701763e543e14afedf252fabfb
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Oct 7 22:47:45 2021 +0200
+
+    add dual channel lst
+
+commit ee4a78044ebd4f10a61ef442d55f9aa72e4aaf43
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Oct 7 16:59:41 2021 +0200
+
+    viirs nasa hres files for night
+
+commit f590602583bb7fd46ebfccc487ffbd99b639397f
+Merge: 42ab3ef 6a009b5
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 6 13:01:49 2021 +0000
+
+    fixing merge conflict
+
+commit 42ab3efb6d30bc4c50374709b1cc82761116b618
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 6 12:52:45 2021 +0000
+
+    add warning
+
+commit 1141d2efc54564fa536e0b2d8c8f9bcf2c906109
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 6 12:42:30 2021 +0000
+
+    add a stop
+
+commit 6a009b5c6755fe4b49847a4429663b2936c5909c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Oct 6 13:10:33 2021 +0200
+
+    small changes
+
+commit 1a928267e78dc6fe23a174d75b50f4a972fd687d
+Merge: 78c6ee8 bc46415
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Wed Sep 22 14:06:31 2021 +0000
+
+    Merge branch 'muri' into 'develop'
+    
+    Muri
+    
+    See merge request clavrx/clavrx-dev!2
+
+commit bc46415d7161867c48d88c45990b93bb4a9a00a8
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Sep 22 12:55:43 2021 +0000
+
+     implement new muri code
+
+commit 0a8b36d11c27e1131832a80e24b217386264a621
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Sep 22 12:55:32 2021 +0000
+
+     implement new muri code
+
+commit 2824169077c3954e210d22c7c0ab8a027020d8fd
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Sep 21 16:58:54 2021 +0000
+
+    remove unused use of module
+
+                     Missing parent test data, using ancestor db24861
+commit fca71dcc77d00358b6ed2e5a4590f36bef977a38
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Sep 21 16:55:51 2021 +0000
+
+    remove unused use of module
+
+                     No fca71dc data for comparison
+commit db2486121a854a2697b3e1c8c7fcce8319b7f9a3
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Sep 20 23:53:11 2021 +0200
+
+    add check if file exists
+
+commit c373d8ddf54161e71569edaa0f782c71e124a268
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Sep 20 22:28:22 2021 +0200
+
+    bring Mins developments in
+
+commit 78c6ee831814ac80722e09b3af2a248ae0ec37ef
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sun Sep 19 13:56:36 2021 +0200
+
+    rttov adjustments
+
+commit eb77f285d017397980d79bede8327d2e2dc5ed71
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Sep 8 16:15:36 2021 +0200
+
+    fixed muri issue
+
+commit b0ad81d480a3a9c54dd775c854313fd8e5135cd0
+Merge: 9e71c6b 00aee44
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Sep 7 15:13:35 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+           ==================== misc ====================
+            cld_emiss_aux missing from 00aee44/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           Compared: b0ad81d 00aee44
+
+commit 9e71c6be456fa938fe09c3ce1d34954fb31d96de
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Sep 7 14:51:43 2021 +0000
+
+    added myd061km support
+
+                     No ancestor data for comparison
+commit 00aee4466db40f6b6aede500be7ae8ba3ef24db4
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Sep 7 14:41:21 2021 +0200
+
+    ignore file
+
+commit ae573484461266e7215a5dc50ddc4f1e0949bbd9
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Sep 2 17:33:49 2021 +0200
+
+    rttov metop fix
+
+commit d23b6a056efffcbbc21245b7b6d6e9211e0857d4
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Aug 31 20:05:25 2021 +0200
+
+    add VIIRS HRES Bow-tie
+
+commit 751ef874beb1f4a385eeb64d0606f6d5c40e7b78
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Aug 31 19:18:03 2021 +0200
+
+    add VIIRS HRES Bow-tie
+
+commit 1b1ad181df5688df653d27ed92938dacb66e18ea
+Author: dbotambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Wed Aug 25 18:56:29 2021 +0000
+
+    fixed modis channel numbering in the notes
+
+commit fe366161d6a2b8dac07682f0aef4d066c6409c86
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Thu Aug 12 20:50:47 2021 +0000
+
+    added coeff to adjust nasa viirs dnb lunar refl to noaa
+
+commit 05970ed337f6fa446c8a72f2317361e4124619f0
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Wed Aug 11 19:49:47 2021 +0000
+
+    removed stuff that forgot to delete
+
+commit aea16b339f6678cf01f01739a7cfeceb9b1729c5
+Author: dbotambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Wed Aug 11 15:48:59 2021 +0000
+
+    fixed noaa-20 dnb mapping
+
+commit a428bc3f00510eb89cb79c39908178b01a43e9f4
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Aug 2 17:00:05 2021 +0200
+
+    removed merge lines in process_clavrx
+
+                     No ancestor data for comparison
+commit f4dd28c310daa0d6f01178791f84297a5be44bb7
+Merge: 28934ed c9d632a
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Fri Jul 30 22:59:31 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+                     No f4dd28c data for comparison
+commit 28934ed45985cb9eaf636739c6d37686b36c6de6
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Fri Jul 30 22:59:01 2021 +0000
+
+    added limit on missing attr warnings
+
+commit c9d632a3e0aa537c792ce26a634728f2f1938c4f
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Fri Jul 30 21:33:04 2021 +0000
+
+    changed max limit for moon illum frac from 1 to 100
+
+                     No c9d632a data for comparison
+commit 4afad42e28ba7b33be6c811f41d719cd794eb1c6
+Merge: 1d9b698 e74419a
+Author: swanzong <stevew@orchid-submit.ssec.wisc.edu>
+Date:   Wed Jul 28 21:29:20 2021 +0000
+
+    Fixed endif bug
+
+                     No 4afad42 data for comparison
+commit 1d9b698e5f79700e5805119255b92357f5f73f81
+Author: swanzong <stevew@orchid-submit.ssec.wisc.edu>
+Date:   Wed Jul 28 21:26:56 2021 +0000
+
+    Fixed endif bug
+
+                     No ancestor data for comparison
+commit e74419ae5c841589a4177d0b4d1f09d320177068
+Merge: c5e251a 1519f2c
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:45:06 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+           Missing data for 1519f2c
+commit c5e251a522dcea445df6e35f2375fd9b5712f2f1
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:44:47 2021 +0000
+
+    simple bug
+
+                     No ancestor data for comparison
+commit 1519f2c2524a54b6d2b93d2ba4287dd7c11c70d8
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:42:40 2021 +0000
+
+    Delete ccl_parameters.inc
+
+                     No 1519f2c data for comparison
+commit 504060b66fd9fe40218b25e4852dc56ec67189e3
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:42:24 2021 +0000
+
+    Delete awg_cld_hght_include_1.inc
+
+                     No 504060b data for comparison
+commit a3a102b719b9c68412e283648192850a1c2d6d0f
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:42:18 2021 +0000
+
+    Delete acha_water_cloud_microphysical_model.inc
+
+                     No a3a102b data for comparison
+commit 8ca524233290cd41e521426d96427b2fb162b3b6
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:42:11 2021 +0000
+
+    Delete acha_parameters.inc
+
+                     No 8ca5242 data for comparison
+commit b8d7799681da7cb2c916fb0db519a995be081196
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:42:05 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_viirs_110um.inc
+
+                     No b8d7799 data for comparison
+commit 112ffe865061780ee5d8de4b18d7857ce85825cf
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:59 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_viirs_104um.inc
+
+                     No 112ffe8 data for comparison
+commit 52e892587bce33c02e4cc3a64be6769216761a43
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:54 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_noaa19.inc
+
+                     No 52e8925 data for comparison
+commit c57e76b1c4d33eaa7018104ef00aa4e922c94b44
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:48 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_modis_110um.inc
+
+                     No c57e76b data for comparison
+commit 8f8aab683def25d8118e15d0efd10c942f01feb8
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:40 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_modis_104um.inc
+
+                     No 8f8aab6 data for comparison
+commit c22b0c2fae4f6cd3a66882674f90327bded4fbaa
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:33 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_goes_110um.inc
+
+                     No c22b0c2 data for comparison
+commit f503c1ef3cfe464616f955b93017f97a03e0ecbb
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:26 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_goes_104um.inc
+
+                     No f503c1e data for comparison
+commit d9f3382d3393ed9169c90e7feb7227fa481a5a18
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:20 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_goes15.inc
+
+                     No d9f3382 data for comparison
+commit 514e77d43c8e0f2796580ac12c06ebc072b054fb
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:13 2021 +0000
+
+    Delete acha_clear_sky_covariances.inc
+
+                     No 514e77d data for comparison
+commit bb6fcb1e874616ec1a52b7f244a61e7e88faef60
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:41:02 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_avhrr_110um.inc
+
+                     No bb6fcb1 data for comparison
+commit 2d2ed1029f4397cfe5daf7ef2b5426233e6c64af
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:40:53 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_avhrr_104um.inc
+
+                     No 2d2ed10 data for comparison
+commit 35ead2c651700509aa057737315143fc0f1ac2bc
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:40:47 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_ahi_110um.inc
+
+                     No 35ead2c data for comparison
+commit f5df2507ad5d922323711bf4cbacb1101757d254
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:40:38 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_ahi_104um.inc
+
+                     No f5df250 data for comparison
+commit 0da0e20f335eb8b9d6ce9e2b2573ac0d1b518000
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:40:29 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_abi_110um.inc
+
+                     No 0da0e20 data for comparison
+commit ede8d1873c2634824e599d29b3fd9807ced5d618
+Author: Magnus <andrew.heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:39:47 2021 +0000
+
+    Delete acha_ice_cloud_microphysical_model_abi_104um.inc
+
+                     No ede8d18 data for comparison
+commit 237bd852dd8e6f76ea498bf0c43b84beca5fc325
+Merge: 2191cb9 67bdc98
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:36:59 2021 +0000
+
+    Merge branch 'develop' of gitlab.ssec.wisc.edu:clavrx/clavrx-dev into develop
+
+                     No 237bd85 data for comparison
+commit 2191cb9dcc717f8230c9f20f62b872d3de02c38d
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:36:36 2021 +0000
+
+    removed hardcoding
+
+                     No 2191cb9 data for comparison
+commit ed71d671e229804fbde21895d1f23a4d36479133
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:36:00 2021 +0000
+
+    fixed attr read and missing init
+
+                     No ed71d67 data for comparison
+commit 331c5e62eb367705d5282b2024b6f9149fae1508
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:34:54 2021 +0000
+
+    prelim dnb correction - not used
+
+                     No 331c5e6 data for comparison
+commit 427cfce93b493a7a6f9c5b26acebce889b67e592
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jul 28 20:34:12 2021 +0000
+
+    include path
+
+                     Missing parent test data, using ancestor 8d7bcf7
+commit 67bdc98b6cf75468846376fdfd135d2f7e90d2c6
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Wed Jul 28 16:39:57 2021 +0000
+
+    removed print and stop
+
+                     No 67bdc98 data for comparison
+commit bab532884823db9664bf338afb28a6a53ba55de2
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Jul 26 20:28:47 2021 +0000
+
+    added acha include path
+
+                     No bab5328 data for comparison
+commit 5dbfb3e508f86a4acdad383de38839a1639c44a0
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Mon Jul 26 20:28:35 2021 +0000
+
+    added acha include path
+
+                     No 5dbfb3e data for comparison
+commit 8d7bcf7e9198e60d62048ba8791efc10b9629f0d
+Author: dbotambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Fri Jul 23 22:24:20 2021 +0000
+
+    fixed acha default for vgac
+
+commit 16541ba6427b3c6201465fd15a847d078e66d409
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jul 23 15:41:37 2021 +0200
+
+    fixed thick cloud issue nlcomp
+
+commit 5ec41becdd72f15767db63900457dbd0ac21cef7
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Jul 22 21:12:59 2021 +0000
+
+    Update Makefile
+
+                     Missing parent test data, using ancestor 1896e0e
+commit 8a3be657aeb6512ba9676905f2f0fc3594ee0c70
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Wed Jul 21 22:56:18 2021 +0000
+
+    Fix vgac reader
+
+                     No 8a3be65 data for comparison
+commit 1896e0e914d040760e5d816e9da99758feae29bc
+Author: dbotambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Tue Jul 20 16:36:55 2021 +0000
+
+    changed back nasa viirs moon illum, fixed noaa viirs moon illum, way around moon illum filter in get prob mask until new viirs lut
+
+commit 155527d2745159c8f9a3abd861c06a08f6a1196c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sat Jul 17 17:05:52 2021 +0200
+
+    fixed nlcomp issue
+
+commit 520433ba664025b314d6429069f637b742d658e4
+Author: Denis Botambekov <dbotambekov@patmosx.ssec.wisc.edu>
+Date:   Thu Jul 15 19:53:14 2021 +0000
+
+    converted moon illumination from percent to fraction 0-1
+
+commit a0526702a7949d783d20263b5c2ac4fbb51b383f
+Author: Andi Walther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jul 13 15:44:46 2021 +0000
+
+    fixed a thing in readhdf5 for read2integer2d.. can be risky for memory
+
+                     Missing parent test data, using ancestor e0322b4
+commit 2b550bb47c49cd014774b062e3b95b612cbf908d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 8 12:31:28 2021 +0200
+
+    small fix for viirs hres
+
+                     No 2b550bb data for comparison
+commit 52712992c7da01053cfe09e919cbed479307d96d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 8 12:22:26 2021 +0200
+
+    moved file
+
+                     No 5271299 data for comparison
+commit 2cae212a234313d94e60424d6938e5b4bd6f12d8
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 8 12:04:54 2021 +0200
+
+    fixed last segment issue and time
+
+                     No 2cae212 data for comparison
+commit 09ed370798c7cb104254ac21471b259e312c14ce
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 8 09:40:16 2021 +0200
+
+    makefile change
+
+                     No 09ed370 data for comparison
+commit 37d506cfdc1bd79ffe4597ab3bf0bbc270eaa7fd
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jul 7 19:48:47 2021 +0200
+
+    viirs hres is ready
+
+                     No 37d506c data for comparison
+commit 60c3482bd0d1875084c08b8f3f7e90f874cd8bfa
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jul 7 18:18:08 2021 +0200
+
+    progress viirs hres
+
+                     No 60c3482 data for comparison
+commit 3a8e1346373e410d3d02063d9a27afb08656b236
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jul 7 18:17:52 2021 +0200
+
+    removed bug in hdf5
+
+                     No 3a8e134 data for comparison
+commit e94bf3a12fda410667ed77d84d5dafad507b12b8
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jul 7 14:18:41 2021 +0200
+
+    removed some comments
+
+                     No e94bf3a data for comparison
+commit eb0dabf7b07a89bd361f9a15070f44927e54f517
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jul 6 16:09:31 2021 +0200
+
+    add scan line time
+
+                     No eb0dabf data for comparison
+commit e0322b40d81370e29222f8965b03e575649e1355
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jul 6 15:11:17 2021 +0200
+
+    major progress hres
+
+                     Missing parent test data, using ancestor 5a43c52
+commit ecbdd6fe334464af2c366002e19bcde994fca6ab
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jul 5 13:03:06 2021 +0200
+
+    read geo data for hres data
+
+                     No ecbdd6f data for comparison
+commit d38d30218ce5238b5a20dfb99ce99d5b6cc6e374
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jul 5 13:02:34 2021 +0200
+
+    main_src/Compare_Float_Numbers.f90
+
+                     No d38d302 data for comparison
+commit 5eb4f95136b2c175695886655960e1cacd37ae61
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jul 5 13:02:27 2021 +0200
+
+    cx_sds_io/src/cx_h5_read_mod.f90
+
+                     No 5eb4f95 data for comparison
+commit 93ca86089375acaeeaeaee08ce26acf132ee6f0c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 1 15:34:47 2021 +0200
+
+    add viirs HRES
+
+                     No 93ca860 data for comparison
+commit b8c01b42299726487b8916ef7ac0796d6f7884db
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 1 15:34:30 2021 +0200
+
+    add viirs HRES
+
+                     No b8c01b4 data for comparison
+commit 5a43c520876d1c37c84b8c7faf28e778a1f9e1ac
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 1 15:27:31 2021 +0200
+
+    finished hdf5 read routines
+
+commit 7b1fbec14758338f09c950632560a01c034810f4
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jul 1 15:25:44 2021 +0200
+
+    finished hdf5 read routines
+
+commit 14fdfb8abdc63a8ec9e3ca11f5acd5bc0bf3e2b5
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jun 30 18:47:08 2021 +0200
+
+    hdf5 work
+
+commit 36826488ddd5232089d0084a427cd9afe7786027
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jun 30 18:47:01 2021 +0200
+
+    hdf5 work
+
+commit 5679b7091747ad261d4442557284bef1c95446d1
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed Jun 30 18:46:38 2021 +0200
+
+    cx_sds_io/src/cx_h5_read_mod.f90
+
+commit 63c9b59016a8dda228a48f38436f3a3fd5592b34
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jun 29 13:57:19 2021 +0200
+
+    hdf5 work
+
+commit aae2a144c63ba6a76c9aad582f65e632180bb4fd
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jun 29 13:57:13 2021 +0200
+
+    hdf5 work
+
+commit ad1d4d789aec5f53c426d65240ddfe80bc709b41
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jun 29 13:57:05 2021 +0200
+
+    hdf5 work
+
+commit 980759b5cc7144ef171477f75122e81662851e86
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sun Jun 27 21:46:56 2021 +0200
+
+    hdf5 issue
+
+commit 5314bcb25e4feeb447ef7d6137f39c20564d9d67
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 24 16:12:53 2021 +0200
+
+    added new files
+
+commit 6449ef414f8d0293f60071fdda1efdd78cd2b54f
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 24 15:12:40 2021 +0200
+
+    initial start iof reading viirs nasa hres
+
+commit eea099fb2dc95d4d7f8034eb93d4fc5808e1164e
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jun 23 03:28:00 2021 +0000
+
+    updated metop
+
+commit ef3225e4f1acc10bf2ed947e70740a8d7164d674
+Merge: 5dc194b fef5bfe
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Tue Jun 22 20:30:00 2021 +0000
+
+    Merge branch 'develop' of https://gitlab.ssec.wisc.edu/clavrx/clavrx-dev into develop
+
+           ==================== acha ====================
+                            cld_opd_acha differs in "test_g16_conus_day"
+       cld_opd_uncer_acha missing from 5dc194b/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+
+           Compared: ef3225e 5dc194b
+
+           Missing data for fef5bfe
+commit 5dc194b89453a1fb20fa411d7003fe6126cff46e
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Tue Jun 22 20:29:33 2021 +0000
+
+    Fixed seviri mapping
+
+commit fef5bfed9eb5a6a5d50cec76546baebe54551f2c
+Merge: 28a77e3 11be2f2
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Jun 22 18:21:53 2021 +0000
+
+    Merge branch 'develop' of https://gitlab.ssec.wisc.edu/clavrx/clavrx-dev into develop
+
+                     No fef5bfe data for comparison
+commit 28a77e3e47305c56f0f257f0aa573b1ab3b799ea
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Tue Jun 22 18:20:48 2021 +0000
+
+    fixed time
+
+commit 11be2f2fe00b1d0d156a117eb9b1795384d0c001
+Merge: 2cff6fd a167d9d
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Mon Jun 21 17:26:29 2021 +0000
+
+    Merge branch 'develop' of https://gitlab.ssec.wisc.edu/clavrx/clavrx-dev into develop
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           Compared: 11be2f2 2cff6fd
+
+           Missing data for a167d9d
+commit 2cff6fdc0335526f11e9f317a53660b9035b71c2
+Author: Steve Wanzong <steve.wanzong@ssec.wisc.edu>
+Date:   Mon Jun 21 17:24:31 2021 +0000
+
+    Modifications for OCA aux reads
+
+           ==================== misc ====================
+         cld_press_l2_aux missing from 2aee913/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+     cld_press_uncer1_aux missing from 2aee913/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+     cld_press_uncer2_aux missing from 2aee913/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+                 cost_aux missing from 2aee913/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           Compared: 2cff6fd 2aee913
+
+commit a167d9db81a4329316a1a44bb9f4ef56bbb0a103
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 17 21:14:48 2021 +0200
+
+    rttov is free of hard-coded paths
+
+                     No a167d9d data for comparison
+commit 8e319838cb30253813fb363b8160c17874401b83
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 17 19:32:53 2021 +0200
+
+    fixed stop when files from different months for RTTOV EMIS
+
+                     No 8e31983 data for comparison
+commit b3365c42060e4cb55aab4a29719872c24067b50e
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 17 12:48:04 2021 +0200
+
+    add something to ignore
+
+                     No b3365c4 data for comparison
+commit 37920a1c80cd007e022a3f7665ce97c459d42407
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue Jun 15 11:52:10 2021 +0200
+
+    add addition al comment
+
+                     No 37920a1 data for comparison
+commit df3e179bfac5d3eb24bc15e605d0c304823a20aa
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jun 14 23:01:27 2021 +0200
+
+    exclude too high value for zenith:
+
+                     No df3e179 data for comparison
+commit ed27b6d9143255f94bcdb5738a2801df3213b393
+Merge: 8615683 312887e
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Jun 10 12:17:29 2021 +0000
+
+    Merge branch 'develop' of https://gitlab.ssec.wisc.edu/clavrx/clavrx-dev into develop
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           Compared: ed27b6d 8615683
+
+           Missing data for 312887e
+commit 86156830394801ed7aa345a0971a5a1741cf3207
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Thu Jun 10 12:15:58 2021 +0000
+
+    added acha tau uncer
+
+           ==================== acha ====================
+                            cld_opd_acha differs in "test_g16_conus_day"
+       cld_opd_uncer_acha missing from 420bdf2/test_g16_conus_day/clavrx_OR_ABI-L1b-RadC-M6C01_G16_s20201232001115_SUB.level2.nc
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+
+           Compared: 8615683 420bdf2
+
+commit 312887ebf7ff2f42b72e4b0435e3bd01fdf793b3
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Mon Jun 7 20:26:01 2021 +0200
+
+    added ACHA COD a-priori to DCOMP
+
+                     No 312887e data for comparison
+commit 2aee9134fddc3e4216eeb0c651f8afe3d9d9ec2d
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri Jun 4 14:57:54 2021 +0200
+
+    fixed rttov issues with uncoupled make and noaa-20 files
+
+commit 7d4093aae18d81522661cbf6795e8400a681a377
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu Jun 3 21:19:26 2021 +0200
+
+    changed to camel clim
+
+commit 420bdf255db316cc0c38365a80878bbdb1cf9f2a
+Merge: 967eb27 f8ddab8
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jun 2 17:33:49 2021 +0000
+
+    Merge branch 'develop' of https://gitlab.ssec.wisc.edu/clavrx/clavrx-dev into develop
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+                          cloud_fraction differs in "test_g16_conus_day"
+              cloud_fraction_uncertainty differs in "test_g16_conus_day"
+                              cloud_mask differs in "test_g16_conus_day"
+                       cloud_mask_binary differs in "test_g16_conus_day"
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                       cloud_probability differs in "test_g16_conus_day"
+           cloud_probability_uncertainty differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                   ice_cloud_probability differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+                 water_cloud_probability differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                              conv_ccl_5 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                     conv_cloud_fraction differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                        adj_pix_cld_mask differs in "test_g16_conus_day"
+                 cloud_phase_uncertainty differs in "test_g16_conus_day"
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 420bdf2 967eb27
+
+           Missing data for f8ddab8
+commit 967eb2785d8a83f596437cf864d08267ee55013e
+Author: heidinger <heidinger@ssec.wisc.edu>
+Date:   Wed Jun 2 17:32:40 2021 +0000
+
+    warm edge filter and pc_median
+
+           ==================== nwp ====================
+                 opaque_height_6_7um_nom differs in "test_g16_conus_day"
+                 opaque_height_7_3um_nom differs in "test_g16_conus_day"
+
+           ==================== ecm2 ====================
+          cloud_mask_test_packed_results differs in "test_g16_conus_day"
+                             cloud_phase differs in "test_g16_conus_day"
+                              cloud_type differs in "test_g16_conus_day"
+                             shadow_mask differs in "test_g16_conus_day"
+
+           ==================== acha ====================
+                               acha_info differs in "test_g16_conus_day"
+                     acha_inversion_flag differs in "test_g16_conus_day"
+                       cld_altitude_acha differs in "test_g16_conus_day"
+                           cld_beta_acha differs in "test_g16_conus_day"
+                          cld_emiss_acha differs in "test_g16_conus_day"
+                    cld_emiss_acha_uncer differs in "test_g16_conus_day"
+                         cld_height_acha differs in "test_g16_conus_day"
+                    cld_height_base_acha differs in "test_g16_conus_day"
+                     cld_height_eff_acha differs in "test_g16_conus_day"
+                   cld_height_uncer_acha differs in "test_g16_conus_day"
+                            cld_opd_acha differs in "test_g16_conus_day"
+                          cld_press_acha differs in "test_g16_conus_day"
+                      cld_press_eff_acha differs in "test_g16_conus_day"
+                    cld_press_uncer_acha differs in "test_g16_conus_day"
+                           cld_reff_acha differs in "test_g16_conus_day"
+                           cld_temp_acha differs in "test_g16_conus_day"
+                       cld_temp_eff_acha differs in "test_g16_conus_day"
+                     cld_temp_lower_acha differs in "test_g16_conus_day"
+                     cld_temp_prior_acha differs in "test_g16_conus_day"
+                     cld_temp_uncer_acha differs in "test_g16_conus_day"
+                         cloud_type_acha differs in "test_g16_conus_day"
+                               cost_acha differs in "test_g16_conus_day"
+                           goodness_acha differs in "test_g16_conus_day"
+                           ice_prob_acha differs in "test_g16_conus_day"
+                     ice_prob_uncer_acha differs in "test_g16_conus_day"
+                             latitude_pc differs in "test_g16_conus_day"
+                            longitude_pc differs in "test_g16_conus_day"
+               lower_cld_temp_prior_acha differs in "test_g16_conus_day"
+                   supercooled_prob_acha differs in "test_g16_conus_day"
+            wind_direction_cloud_top_nwp differs in "test_g16_conus_day"
+                wind_speed_cloud_top_nwp differs in "test_g16_conus_day"
+
+           ==================== acba ====================
+                       cld_base_altitude differs in "test_g16_conus_day"
+                           cld_geo_thick differs in "test_g16_conus_day"
+                         cld_height_base differs in "test_g16_conus_day"
+                           cld_temp_base differs in "test_g16_conus_day"
+                 lower_cld_base_altitude differs in "test_g16_conus_day"
+
+           ==================== dcomp ====================
+                              cdnc_dcomp differs in "test_g16_conus_day"
+                           cld_cwp_dcomp differs in "test_g16_conus_day"
+                           cld_opd_dcomp differs in "test_g16_conus_day"
+                         cld_opd_dcomp_3 differs in "test_g16_conus_day"
+                       cld_opd_dcomp_unc differs in "test_g16_conus_day"
+                          cld_reff_dcomp differs in "test_g16_conus_day"
+                        cld_reff_dcomp_3 differs in "test_g16_conus_day"
+                      cld_reff_dcomp_fit differs in "test_g16_conus_day"
+                      cld_reff_dcomp_unc differs in "test_g16_conus_day"
+                 cloud_albedo_0_65um_nom differs in "test_g16_conus_day"
+           cloud_transmission_0_65um_nom differs in "test_g16_conus_day"
+                              dcomp_info differs in "test_g16_conus_day"
+                           dcomp_quality differs in "test_g16_conus_day"
+                              hcld_dcomp differs in "test_g16_conus_day"
+                        insolation_dcomp differs in "test_g16_conus_day"
+                insolation_diffuse_dcomp differs in "test_g16_conus_day"
+                               iwc_dcomp differs in "test_g16_conus_day"
+                               lwc_dcomp differs in "test_g16_conus_day"
+                               rain_rate differs in "test_g16_conus_day"
+              refl_0_65um_nom_asym_dcomp differs in "test_g16_conus_day"
+
+           ==================== ccl ====================
+                                   ccl_1 differs in "test_g16_conus_day"
+                                   ccl_2 differs in "test_g16_conus_day"
+                                   ccl_3 differs in "test_g16_conus_day"
+                                   ccl_4 differs in "test_g16_conus_day"
+                                   ccl_5 differs in "test_g16_conus_day"
+                          ccl_layer_flag differs in "test_g16_conus_day"
+                              conv_ccl_1 differs in "test_g16_conus_day"
+                              conv_ccl_2 differs in "test_g16_conus_day"
+                              conv_ccl_3 differs in "test_g16_conus_day"
+                              conv_ccl_4 differs in "test_g16_conus_day"
+                     conv_ccl_layer_flag differs in "test_g16_conus_day"
+                       supercooled_ccl_1 differs in "test_g16_conus_day"
+                       supercooled_ccl_2 differs in "test_g16_conus_day"
+                       supercooled_ccl_3 differs in "test_g16_conus_day"
+                       supercooled_ccl_4 differs in "test_g16_conus_day"
+                       supercooled_ccl_5 differs in "test_g16_conus_day"
+              supercooled_ccl_layer_flag differs in "test_g16_conus_day"
+              supercooled_cloud_fraction differs in "test_g16_conus_day"
+
+           ==================== misc ====================
+                    csbt_mask_11_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_12_0um_nom differs in "test_g16_conus_day"
+                    csbt_mask_13_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_6_7um_nom differs in "test_g16_conus_day"
+                     csbt_mask_7_3um_nom differs in "test_g16_conus_day"
+                     csbt_mask_9_7um_nom differs in "test_g16_conus_day"
+
+           Compared: 967eb27 203f0d9
+
+commit f8ddab8e3a04718045e7b68bb1e05aa2e8bff499
+Merge: 85e7392 5f1680e
+Author: Mike Foster <mfoster@orchid-submit.ssec.wisc.edu>
+Date:   Wed May 26 15:17:56 2021 +0000
+
+    Merge branch 'develop' of https://gitlab.ssec.wisc.edu/clavrx/clavrx-dev into develop
+
+                     No f8ddab8 data for comparison
+commit 5f1680ec8c762b3e5e4b2828bc037ff2cb741391
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Wed May 26 12:12:37 2021 +0200
+
+    removed unused declarations
+
+                     No 5f1680e data for comparison
+commit bc165f0ce5d65ae2e97b916d3322b0cf04a7e6d2
+Author: Denis Botambekov <dbotambekov@patmosx.ssec.wisc.edu>
+Date:   Tue May 25 20:56:18 2021 +0000
+
+    added filter for frozen lake coast to the science code
+
+                     No bc165f0 data for comparison
+commit 6f6fc0c6ba9758683dc5470c9f5f682aa9763af8
+Author: Denis Botambekov <dbotambekov@patmosx.ssec.wisc.edu>
+Date:   Tue May 25 20:18:00 2021 +0000
+
+    search pattern for vgac caliop collocation
+
+                     No 6f6fc0c data for comparison
+commit 203f0d96f3517c14e4619beb8005c914ea9a1454
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue May 25 15:37:16 2021 +0200
+
+    more tests
+
+commit f589b794a4dd906bd80227dea8f7c801494bbe64
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Tue May 25 15:10:04 2021 +0200
+
+    dd test for cx_sds_io
+
+commit 85e73921fb6fa822d00fd9f7c7dc926fe4091834
+Author: Mike Foster <mfoster@orchid-submit.ssec.wisc.edu>
+Date:   Mon May 24 22:33:35 2021 +0000
+
+    added function to reset replaced 3.75 bt to missing for output fields
+
+                     No 85e7392 data for comparison
+commit 6cd49e37622f4ca62c3fade7e39d7f28e00f8b6f
+Author: Denis Botambekov <denis.botambekov@ssec.wisc.edu>
+Date:   Mon May 24 17:00:18 2021 +0000
+
+    fixed month for time calculation
+
+commit b1f582ab2252d7735e2e24a00440b1b827c4bf0c
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Sun May 23 16:38:25 2021 +0200
+
+    add some file types to ignore
+
+commit ba9bf658e4a29d0555821a5eecb039f3ee9f4c11
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Mon May 10 18:35:47 2021 +0000
+
+    Remove commented code
+
+commit bf82be258924316a5ee428bc7f0f8006294830ff
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 7 19:24:21 2021 +0000
+
+    Add runtime checks for rttov options when not compiled with rttov
+
+commit ce66d6c5fc714cd74b62c09cac25a73e7b73e0e6
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Fri May 7 15:05:57 2021 +0000
+
+    Move RTTOV coeffs to ancil dir
+
+commit 6b0f10cb398a472a48c35e6cd9aaa65484420a7a
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu May 6 20:56:39 2021 +0000
+
+    Switch from hdf4 seebor to netcdf seebor emissivity ancil
+
+commit 5e67c8438132d242326308d4486c98c0e66eb211
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Fri May 7 11:39:48 2021 +0200
+
+    make hostname universial
+
+commit 70576f0847b5ca0822372ae68e0c6416865fb1aa
+Author: awalther <andi.walther@ssec.wisc.edu>
+Date:   Thu May 6 14:52:54 2021 +0200
+
+    fixed RTTOV AVHRR/2 and AVHRR/3 issue
+
+commit 704ce65194d4148dfa895d5a63e1e2114e83b2c8
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Apr 29 19:56:37 2021 +0000
+
+    Add gitignore
+
+commit 73f77bdfb3fbc804d3f1a50799943c845b841850
+Author: Coda Phillips <coda.phillips@wisc.edu>
+Date:   Thu Apr 29 19:45:50 2021 +0000
+
+    Fix bug in Makefile.inc that prevents build
+
diff --git a/main_src/Makefile b/main_src/Makefile
index 6e2aafb2003fa4e3f279c14e3a47cc226cdfe7cc..a3a79dd12bed8894c55f4ef63520c0ce41f38208 100644
--- a/main_src/Makefile
+++ b/main_src/Makefile
@@ -50,7 +50,7 @@ ARCH=gfortran
 
 
 COMP=gfortran
-ifneq ($(ARCH), $(filter $(ARCH), ifort ifort-debug ifort-profile gfortran gfortran-debug gfortran-debug-andy gfortran-strict ifort-trace gfortran-profile gfortran-cspp))
+ifneq ($(ARCH), $(filter $(ARCH), ifort ifort-debug ifort-profile gfortran gfortran-debug gfortran-debug-andy gfortran-strict ifort-trace gfortran-profile gfortran-cspp gfortran10))
 $(error ARCH $(ARCH) not a existing build in ../build/arch) 
 endif 
 ifeq ($(ARCH), $(filter $(ARCH), ifort ifort-debug ifort-profile ifort-trace))
@@ -295,7 +295,8 @@ clavrxorb_objs = process_clavrx.o \
                  cx_nwp_rtm_mod.o \
                  cx_sfc_emissivity_mod.o \
                  cx_rtm_mod.o \
-                 viirs_nasa_hres_read_mod.o
+                 viirs_nasa_hres_read_mod.o \
+	         cleanup.o
 
 #Level2b routines
 comp_asc_des_level2b_objs = comp_asc_des_level2b.o \
@@ -307,7 +308,8 @@ comp_asc_des_level2b_objs = comp_asc_des_level2b.o \
                             cx_date_time_tools_mod.o \
                             cx_real_boolean_mod.o \
                             class_time_date.o \
-                            constants_mod.o
+                            constants_mod.o \
+                            pixel_common_mod.o
 
 #Level2b subsetting routines
 drive_subset_level2b_objs = drive_subset_level2b.o \
@@ -318,7 +320,8 @@ drive_subset_level2b_objs = drive_subset_level2b.o \
                             level2b_mod.o \
                             numerical_routines_mod.o \
                             cx_real_boolean_mod.o \
-                            constants_mod.o
+                            constants_mod.o \
+                            pixel_common_mod.o
 
   CLAVRX_OBJ_FILES = $(clavrxorb_objs)
 
@@ -461,7 +464,8 @@ user_options.o: user_options.f90 constants_mod.o pixel_common_mod.o clavrx_messa
 pixel_common_mod.o: pixel_common_mod.f90 constants_mod.o class_time_date.o
 caliop_collocation_mod.o: caliop_collocation_mod.f90 pixel_common_mod.o file_tools.o clavrx_message_mod.o cx_hdf4_mod.o
 cx_spatial_metrics_mod.o: cx_spatial_metrics_mod.f90 constants_mod.o numerical_routines_mod.o pixel_common_mod.o cx_real_boolean_mod.o numerical_routines_mod.o acha_clavrx_bridge_module.o
-pixel_routines_mod.o: pixel_routines_mod.f90 constants_mod.o numerical_routines_mod.o pixel_common_mod.o nwp_common_mod.o planck_mod.o algorithm_constants_mod.o land_sfc_properties_mod.o surface_properties_mod.o calibration_constants_mod.o viewing_geometry_mod.o caliop_collocation_mod.o nbm_cloud_mask_clavrx_bridge_module.o
+pixel_routines_mod.o: pixel_routines_mod.f90 constants_mod.o numerical_routines_mod.o pixel_common_mod.o nwp_common_mod.o planck_mod.o algorithm_constants_mod.o land_sfc_properties_mod.o surface_properties_mod.o calibration_constants_mod.o viewing_geometry_mod.o caliop_collocation_mod.o nbm_cloud_mask_clavrx_bridge_module.o clavrx_message_mod.o
+	$(fc) -c $(fflags) $(cppflags) $(cpp) -fno-finite-math-only pixel_routines_mod.f90
 clavrx_olr_mod.o: clavrx_olr_mod.f90 constants_mod.o pixel_common_mod.o algorithm_constants_mod.o
 clavrx_sst_mod.o: clavrx_sst_mod.f90 constants_mod.o pixel_common_mod.o
 calibration_constants_mod.o: calibration_constants_mod.f90 constants_mod.o 
@@ -488,14 +492,14 @@ clavrx_static_nav_module.o: clavrx_static_nav_module.f90 constants_mod.o cx_date
 endif    
 
 ifdef rttov_libs
-cx_sfc_emissivity_mod.o:cx_sfc_emissivity_mod.f90  cx_rttov_sfc_emiss.o
+cx_sfc_emissivity_mod.o:cx_sfc_emissivity_mod.f90  cx_rttov_sfc_emiss.o clavrx_message_mod.o
 	$(fc) -c $(fflags) $(cppflags) $(cpp) $(fflags_clavr) -I$(RTTOV_DIR)  $(LIB_RTTOV_FLAG)  cx_sfc_emissivity_mod.f90
   
-cx_rtm_mod.o:cx_rtm_mod.f90 nwp_common_mod.o cx_rttov_bridge_mod.o
+cx_rtm_mod.o:cx_rtm_mod.f90 nwp_common_mod.o cx_rttov_bridge_mod.o clavrx_message_mod.o
 	$(fc) -c $(fflags) $(cppflags) $(cpp) -I$(RTTOV_DIR)  $(LIB_RTTOV_FLAG)  cx_rtm_mod.f90
   
 else
-cx_sfc_emissivity_mod.o:cx_sfc_emissivity_mod.f90 
+cx_sfc_emissivity_mod.o:cx_sfc_emissivity_mod.f90 clavrx_message_mod.o
 cx_rtm_mod.o:cx_rtm_mod.f90 nwp_common_mod.o 
 	$(fc) -c $(fflags) $(cppflags) $(cpp)  cx_rtm_mod.f90
   
@@ -537,11 +541,11 @@ dnb_retrievals_mod.o:dnb_retrievals_mod.f90 file_tools.o
 cloud_height_routines.o: cloud_height_routines.f90 constants_mod.o planck_mod.o rtm_common_mod.o numerical_routines_mod.o cx_science_tools_mod.o cx_real_boolean_mod.o
 clavrx_message_mod.o: clavrx_message_mod.f90 file_tools.o foul.o pixel_common_mod.o
 cx_hdf4_mod.o: version.inc cx_hdf4_mod.f90 hdf.o constants_mod.o level2_structures_mod.o cx_real_boolean_mod.o
-comp_asc_des_level2b.o: comp_asc_des_level2b.f90 constants_mod.o cx_hdf4_mod.o hdf.o level2b_mod.o level2_structures_mod.o cx_real_boolean_mod.o file_tools.o
+comp_asc_des_level2b.o: comp_asc_des_level2b.f90 constants_mod.o cx_hdf4_mod.o hdf.o level2b_mod.o level2_structures_mod.o cx_real_boolean_mod.o file_tools.o pixel_common_mod.o
 drive_subset_level2b.o: drive_subset_level2b.f90 constants_mod.o cx_hdf4_mod.o hdf.o level2b_mod.o
-file_tools.o: file_tools.f90
+file_tools.o: file_tools.f90 pixel_common_mod.o
 foul.o: foul.f90
-goes_mod.o: goes_mod.f90 pixel_common_mod.o viewing_geometry_mod.o cx_date_time_tools_mod.o avhrr_mod.o file_tools.o cx_spatial_metrics_mod.o
+goes_mod.o: goes_mod.f90 pixel_common_mod.o viewing_geometry_mod.o cx_date_time_tools_mod.o avhrr_mod.o file_tools.o cx_spatial_metrics_mod.o clavrx_message_mod.o 
 abi_mod.o: abi_mod.f90 pixel_common_mod.o goes_mod.o file_tools.o viewing_geometry_mod.o cx_real_boolean_mod.o
 Compare_Float_Numbers.o: Compare_Float_Numbers.f90 constants_mod.o
 gfs_hdf_mod.o: gfs_hdf_mod.f90 constants_mod.o  cx_science_tools_mod.o nwp_common_mod.o hdf.o clavrx_message_mod.o cx_hdf4_mod.o
@@ -583,7 +587,7 @@ sapf_read_mod.o: sapf_read_mod.f90 hdf.o constants_mod.o pixel_common_mod.o file
 	$(fc) -c $(fflags) $(cppflags) $(cpp) $(CLAVRX_ID_FLAG) $(netcdflibs) sapf_read_mod.f90
 planck_mod.o: planck_mod.f90 constants_mod.o calibration_constants_mod.o pixel_common_mod.o
 avhrr_reposition_mod.o: avhrr_reposition_mod.f90 constants_mod.o cx_date_time_tools_mod.o pixel_common_mod.o reposnx.o
-seviri_mod.o: seviri_mod.f90 pixel_common_mod.o constants_mod.o numerical_routines_mod.o goes_mod.o viewing_geometry_mod.o
+seviri_mod.o: seviri_mod.f90 pixel_common_mod.o constants_mod.o numerical_routines_mod.o goes_mod.o viewing_geometry_mod.o clavrx_message_mod.o
 oca_mod.o: oca_mod.f90 hdf.o constants_mod.o pixel_common_mod.o file_tools.o
 sfc_emiss.o: sfc_emiss.f90 constants_mod.o numerical_routines_mod.o
 	$(fc) -c $(fflags) $(cppflags) $(cpp) $(CLAVRX_ID_FLAG) $(netcdflibs)  sfc_emiss.f90
@@ -682,7 +686,8 @@ sub_routine = constants_mod.o pixel_common_mod.o pixel_routines_mod.o clavrx_sst
               seviri_mod.o mvcm_read_mod.o sapf_read_mod.o oca_mod.o mtsat_mod.o hirs_fusion_mod.o \
               simple_cod_065um_mod.o simple_cod_138um_mod.o simple_cod_lunar_mod.o simple_cod_160um_mod.o \
               coms_mod.o level2b_mod.o dcomp_rtm_module.o dcomp_derived_products_mod.o cx_date_time_tools_mod.o \
-              cx_real_boolean_mod.o cx_abi_lhp_mod.o cx_spatial_metrics_mod.o cx_atmospheric_correction_vis_mod.o cx_nwp_rtm_mod.o 
+              cx_real_boolean_mod.o cx_abi_lhp_mod.o cx_spatial_metrics_mod.o cx_atmospheric_correction_vis_mod.o cx_nwp_rtm_mod.o\
+              cx_nwp_rtm_mod.o cleanup.o
 
 ifdef rttov_libs1
   sub_routine += cx_rttov_sfc_emiss.o cx_rttov_bridge_mod.o 
@@ -771,7 +776,7 @@ geos_transform_pix.o: geos_transform_pix.c
 ################################ Misc. Targets #################################
 
 all_plus:
-ifeq ($(ARCH),$(filter $(ARCH), gfortran gfortran-strict gfortran-debug gfortran-profile ))
+ifeq ($(ARCH),$(filter $(ARCH), gfortran gfortran-strict gfortran-debug gfortran-profile gfortran10 ))
 all_plus:  dcomp_gfortran muri_gfortran all
 else
 all_plus: dcomp_ifort muri_ifort all
diff --git a/main_src/abi_mod.f90 b/main_src/abi_mod.f90
index aba214980075ae728005c5fcb7ce331963e6e933..fefe4112999656e39f09d625d22727e971468f8e 100644
--- a/main_src/abi_mod.f90
+++ b/main_src/abi_mod.f90
@@ -150,7 +150,7 @@ CONTAINS
     erstat = 0
     if (ios0 /= 0) then
       erstat = 19
-      call MESG( "ABI instrument constants open failed",level = verb_lev % ERROR)
+      call MESG( "ABI instrument constants open failed "//trim(Instr_Const_file),level = verb_lev % ERROR)
       stop 19
     end if
     read(unit=Instr_Const_lun,fmt="(a7)") sat_name
diff --git a/main_src/abi_solar_terms.inc b/main_src/abi_solar_terms.inc
index 1d127d9a39211146201c0ce2dd1c18fdcc0353b7..597ba8a52f83186952c44564f2d27508ad141507 100644
--- a/main_src/abi_solar_terms.inc
+++ b/main_src/abi_solar_terms.inc
@@ -1,99 +1,199 @@
 case(270) 
-!SRF = tigr_tpw_trans_ch1_resp_g16.dat
-Solar_Rtm%Tau_H2O_Coef( 3,:) = (/  3.6998e-06,  5.0675e-05, -3.3499e-07/)
-Solar_Rtm%Tau_Ray( 3) =  2.0100e-01
+!SRF = tigr_tpw_trans_rtcoef_goes_16_abi_srf_ch01.txt
+Solar_Rtm%Tau_H2O_Coef( 3,:) = (/  4.0976e-06,  5.1192e-05, -4.5276e-07/)
+Solar_Rtm%Tau_Ray( 3) =  2.0117e-01
 Solar_Rtm%Tau_O3( 3) =  0.0000e+00
 Solar_Rtm%Tau_CO2( 3) =  0.0000e+00
 Solar_Rtm%Tau_CH4( 3) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch2_resp_g16.dat
-Solar_Rtm%Tau_H2O_Coef( 1,:) = (/  6.2750e-05,  3.0561e-03, -8.3073e-05/)
-Solar_Rtm%Tau_Ray( 1) =  5.8569e-02
-Solar_Rtm%Tau_O3( 1) =  4.7051e-05
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_16_abi_srf_ch02.txt
+Solar_Rtm%Tau_H2O_Coef( 1,:) = (/  1.0781e-04,  3.0131e-03, -7.5446e-05/)
+Solar_Rtm%Tau_Ray( 1) =  5.8779e-02
+Solar_Rtm%Tau_O3( 1) =  4.5443e-05
 Solar_Rtm%Tau_CO2( 1) =  0.0000e+00
 Solar_Rtm%Tau_CH4( 1) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch3_resp_g16.dat
-Solar_Rtm%Tau_H2O_Coef( 2,:) = (/ -4.1299e-05,  1.5030e-03, -2.9715e-05/)
-Solar_Rtm%Tau_Ray( 2) =  1.7029e-02
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_16_abi_srf_ch03.txt
+Solar_Rtm%Tau_H2O_Coef( 2,:) = (/  4.5128e-06,  1.5223e-03, -3.2667e-05/)
+Solar_Rtm%Tau_Ray( 2) =  1.6950e-02
 Solar_Rtm%Tau_O3( 2) =  0.0000e+00
 Solar_Rtm%Tau_CO2( 2) =  0.0000e+00
 Solar_Rtm%Tau_CH4( 2) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch4_resp_g16.dat
-Solar_Rtm%Tau_H2O_Coef(26,:) = (/  1.2738e+00,  1.8398e+00, -1.0312e-01/)
-Solar_Rtm%Tau_Ray(26) =  2.5810e-03
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_16_abi_srf_ch04.txt
+Solar_Rtm%Tau_H2O_Coef(26,:) = (/  1.2994e+00,  1.8412e+00, -1.0906e-01/)
+Solar_Rtm%Tau_Ray(26) =  2.6229e-03
 Solar_Rtm%Tau_O3(26) =  0.0000e+00
-Solar_Rtm%Tau_CO2(26) =  2.6543e-05
+Solar_Rtm%Tau_CO2(26) =  4.7467e-05
 Solar_Rtm%Tau_CH4(26) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch5_resp_g16.dat
-Solar_Rtm%Tau_H2O_Coef( 6,:) = (/ -1.7666e-05,  1.0591e-03, -9.8830e-06/)
-Solar_Rtm%Tau_Ray( 6) =  1.4007e-03
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_16_abi_srf_ch05.txt
+Solar_Rtm%Tau_H2O_Coef( 6,:) = (/  2.8819e-05,  9.5829e-04,  6.5462e-06/)
+Solar_Rtm%Tau_Ray( 6) =  1.3928e-03
 Solar_Rtm%Tau_O3( 6) =  0.0000e+00
-Solar_Rtm%Tau_CO2( 6) =  2.3108e-02
+Solar_Rtm%Tau_CO2( 6) =  2.2580e-02
 Solar_Rtm%Tau_CH4( 6) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch6_resp_g16.dat
-Solar_Rtm%Tau_H2O_Coef( 7,:) = (/ -1.9361e-04,  3.0409e-03, -1.1826e-04/)
-Solar_Rtm%Tau_Ray( 7) =  3.6633e-04
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_16_abi_srf_ch06.txt
+Solar_Rtm%Tau_H2O_Coef( 7,:) = (/ -1.8007e-04,  2.9631e-03, -1.1315e-04/)
+Solar_Rtm%Tau_Ray( 7) =  3.6684e-04
 Solar_Rtm%Tau_O3( 7) =  0.0000e+00
-Solar_Rtm%Tau_CO2( 7) =  2.9395e-06
+Solar_Rtm%Tau_CO2( 7) =  3.1249e-06
 Solar_Rtm%Tau_CH4( 7) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch7_resp_g16.dat
-Solar_Rtm%Tau_H2O_Coef(20,:) = (/  3.9973e-04,  2.0678e-02, -9.5447e-04/)
-Solar_Rtm%Tau_Ray(20) =  2.1935e-05
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_16_abi_srf_ch07.txt
+Solar_Rtm%Tau_H2O_Coef(20,:) = (/  4.4318e-04,  2.3993e-02, -1.1494e-03/)
+Solar_Rtm%Tau_Ray(20) =  2.2932e-05
 Solar_Rtm%Tau_O3(20) =  0.0000e+00
-Solar_Rtm%Tau_CO2(20) =  3.3747e-03
+Solar_Rtm%Tau_CO2(20) =  3.0228e-03
 Solar_Rtm%Tau_CH4(20) =  0.0000e+00
 
 case(271) 
-!SRF = tigr_tpw_trans_ch1_resp_g17.dat
-Solar_Rtm%Tau_H2O_Coef( 3,:) = (/  3.8492e-06,  5.1239e-05, -3.9976e-07/)
-Solar_Rtm%Tau_Ray( 3) =  2.0021e-01
+!SRF = tigr_tpw_trans_rtcoef_goes_17_abi_srf_ch01.txt
+Solar_Rtm%Tau_H2O_Coef( 3,:) = (/  4.9039e-06,  4.9691e-05,  5.8542e-08/)
+Solar_Rtm%Tau_Ray( 3) =  2.0122e-01
 Solar_Rtm%Tau_O3( 3) =  0.0000e+00
 Solar_Rtm%Tau_CO2( 3) =  0.0000e+00
 Solar_Rtm%Tau_CH4( 3) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch2_resp_g17.dat
-Solar_Rtm%Tau_H2O_Coef( 1,:) = (/  7.8288e-05,  3.0282e-03, -7.4102e-05/)
-Solar_Rtm%Tau_Ray( 1) =  5.8814e-02
-Solar_Rtm%Tau_O3( 1) =  4.7445e-05
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_17_abi_srf_ch02.txt
+Solar_Rtm%Tau_H2O_Coef( 1,:) = (/  4.4817e-05,  3.1352e-03, -9.5973e-05/)
+Solar_Rtm%Tau_Ray( 1) =  5.9081e-02
+Solar_Rtm%Tau_O3( 1) =  4.7786e-05
 Solar_Rtm%Tau_CO2( 1) =  0.0000e+00
 Solar_Rtm%Tau_CH4( 1) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch3_resp_g17.dat
-Solar_Rtm%Tau_H2O_Coef( 2,:) = (/ -1.3455e-05,  1.4371e-03, -2.3229e-05/)
-Solar_Rtm%Tau_Ray( 2) =  1.6993e-02
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_17_abi_srf_ch03.txt
+Solar_Rtm%Tau_H2O_Coef( 2,:) = (/  1.1352e-05,  1.5409e-03, -3.1745e-05/)
+Solar_Rtm%Tau_Ray( 2) =  1.6952e-02
 Solar_Rtm%Tau_O3( 2) =  0.0000e+00
 Solar_Rtm%Tau_CO2( 2) =  0.0000e+00
 Solar_Rtm%Tau_CH4( 2) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch4_resp_g17.dat
-Solar_Rtm%Tau_H2O_Coef(26,:) = (/  1.3328e+00,  1.8217e+00, -1.0038e-01/)
-Solar_Rtm%Tau_Ray(26) =  2.6204e-03
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_17_abi_srf_ch04.txt
+Solar_Rtm%Tau_H2O_Coef(26,:) = (/  1.3288e+00,  1.8344e+00, -1.0356e-01/)
+Solar_Rtm%Tau_Ray(26) =  2.6365e-03
 Solar_Rtm%Tau_O3(26) =  0.0000e+00
-Solar_Rtm%Tau_CO2(26) =  4.7726e-05
+Solar_Rtm%Tau_CO2(26) =  4.7890e-05
 Solar_Rtm%Tau_CH4(26) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch5_resp_g17.dat
-Solar_Rtm%Tau_H2O_Coef( 6,:) = (/ -2.8946e-05,  1.0648e-03, -1.1633e-05/)
-Solar_Rtm%Tau_Ray( 6) =  1.4002e-03
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_17_abi_srf_ch05.txt
+Solar_Rtm%Tau_H2O_Coef( 6,:) = (/ -2.1605e-05,  1.0483e-03, -1.0218e-05/)
+Solar_Rtm%Tau_Ray( 6) =  1.3874e-03
 Solar_Rtm%Tau_O3( 6) =  0.0000e+00
-Solar_Rtm%Tau_CO2( 6) =  2.2943e-02
-
-!SRF = tigr_tpw_trans_ch6_resp_g17.dat
-Solar_Rtm%Tau_H2O_Coef( 7,:) = (/ -1.6756e-04,  3.1410e-03, -1.2049e-04/)
-Solar_Rtm%Tau_Ray( 7) =  3.6915e-04
+Solar_Rtm%Tau_CO2( 6) =  2.2793e-02
+Solar_Rtm%Tau_CH4( 6) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_17_abi_srf_ch06.txt
+Solar_Rtm%Tau_H2O_Coef( 7,:) = (/ -2.0707e-04,  3.2254e-03, -1.3040e-04/)
+Solar_Rtm%Tau_Ray( 7) =  3.6919e-04
 Solar_Rtm%Tau_O3( 7) =  0.0000e+00
-Solar_Rtm%Tau_CO2( 7) =  3.2330e-06
+Solar_Rtm%Tau_CO2( 7) =  3.1235e-06
 Solar_Rtm%Tau_CH4( 7) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_17_abi_srf_ch07.txt
+Solar_Rtm%Tau_H2O_Coef(20,:) = (/  7.4725e-04,  2.6163e-02, -1.3225e-03/)
+Solar_Rtm%Tau_Ray(20) =  2.7009e-05
+Solar_Rtm%Tau_O3(20) =  0.0000e+00
+Solar_Rtm%Tau_CO2(20) =  2.9669e-03
+Solar_Rtm%Tau_CH4(20) =  0.0000e+00
 
-!SRF = tigr_tpw_trans_ch7_resp_g17.dat
-Solar_Rtm%Tau_H2O_Coef(20,:) = (/  8.3411e-04,  2.5816e-02, -1.2675e-03/)
-Solar_Rtm%Tau_Ray(20) =  2.3326e-05
+case(272) 
+!SRF = tigr_tpw_trans_rtcoef_goes_18_abi_srf_ch01.txt
+Solar_Rtm%Tau_H2O_Coef( 3,:) = (/  4.2635e-06,  5.0733e-05, -1.3529e-07/)
+Solar_Rtm%Tau_Ray( 3) =  2.0120e-01
+Solar_Rtm%Tau_O3( 3) =  0.0000e+00
+Solar_Rtm%Tau_CO2( 3) =  0.0000e+00
+Solar_Rtm%Tau_CH4( 3) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_18_abi_srf_ch02.txt
+Solar_Rtm%Tau_H2O_Coef( 1,:) = (/  6.6423e-05,  3.0724e-03, -8.2564e-05/)
+Solar_Rtm%Tau_Ray( 1) =  5.8652e-02
+Solar_Rtm%Tau_O3( 1) =  4.6303e-05
+Solar_Rtm%Tau_CO2( 1) =  0.0000e+00
+Solar_Rtm%Tau_CH4( 1) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_18_abi_srf_ch03.txt
+Solar_Rtm%Tau_H2O_Coef( 2,:) = (/  3.0346e-06,  1.5707e-03, -3.0033e-05/)
+Solar_Rtm%Tau_Ray( 2) =  1.7086e-02
+Solar_Rtm%Tau_O3( 2) =  0.0000e+00
+Solar_Rtm%Tau_CO2( 2) =  0.0000e+00
+Solar_Rtm%Tau_CH4( 2) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_18_abi_srf_ch04.txt
+Solar_Rtm%Tau_H2O_Coef(26,:) = (/  1.2826e+00,  1.8800e+00, -1.1201e-01/)
+Solar_Rtm%Tau_Ray(26) =  2.6293e-03
+Solar_Rtm%Tau_O3(26) =  0.0000e+00
+Solar_Rtm%Tau_CO2(26) =  4.7638e-05
+Solar_Rtm%Tau_CH4(26) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_18_abi_srf_ch05.txt
+Solar_Rtm%Tau_H2O_Coef( 6,:) = (/ -2.1946e-05,  1.0642e-03, -7.0704e-06/)
+Solar_Rtm%Tau_Ray( 6) =  1.4094e-03
+Solar_Rtm%Tau_O3( 6) =  0.0000e+00
+Solar_Rtm%Tau_CO2( 6) =  2.3207e-02
+Solar_Rtm%Tau_CH4( 6) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_18_abi_srf_ch06.txt
+Solar_Rtm%Tau_H2O_Coef( 7,:) = (/ -2.0529e-04,  3.3254e-03, -1.3542e-04/)
+Solar_Rtm%Tau_Ray( 7) =  3.6788e-04
+Solar_Rtm%Tau_O3( 7) =  0.0000e+00
+Solar_Rtm%Tau_CO2( 7) =  3.0239e-06
+Solar_Rtm%Tau_CH4( 7) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_18_abi_srf_ch07.txt
+Solar_Rtm%Tau_H2O_Coef(20,:) = (/  2.5196e-04,  2.0707e-02, -9.7187e-04/)
+Solar_Rtm%Tau_Ray(20) =  2.4081e-05
 Solar_Rtm%Tau_O3(20) =  0.0000e+00
-Solar_Rtm%Tau_CO2(20) =  2.9383e-03
+Solar_Rtm%Tau_CO2(20) =  3.2571e-03
 Solar_Rtm%Tau_CH4(20) =  0.0000e+00
+
+case(273) 
+!SRF = tigr_tpw_trans_rtcoef_goes_19_abi_srf_ch01.txt
+Solar_Rtm%Tau_H2O_Coef( 3,:) = (/  4.8546e-06,  4.8301e-05,  1.5331e-07/)
+Solar_Rtm%Tau_Ray( 3) =  2.0059e-01
+Solar_Rtm%Tau_O3( 3) =  0.0000e+00
+Solar_Rtm%Tau_CO2( 3) =  0.0000e+00
+Solar_Rtm%Tau_CH4( 3) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_19_abi_srf_ch02.txt
+Solar_Rtm%Tau_H2O_Coef( 1,:) = (/  5.2577e-05,  3.0791e-03, -8.8140e-05/)
+Solar_Rtm%Tau_Ray( 1) =  5.8537e-02
+Solar_Rtm%Tau_O3( 1) =  4.6463e-05
+Solar_Rtm%Tau_CO2( 1) =  0.0000e+00
+Solar_Rtm%Tau_CH4( 1) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_19_abi_srf_ch03.txt
+Solar_Rtm%Tau_H2O_Coef( 2,:) = (/  1.8070e-05,  1.6085e-03, -3.8330e-05/)
+Solar_Rtm%Tau_Ray( 2) =  1.7001e-02
+Solar_Rtm%Tau_O3( 2) =  0.0000e+00
+Solar_Rtm%Tau_CO2( 2) =  0.0000e+00
+Solar_Rtm%Tau_CH4( 2) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_19_abi_srf_ch04.txt
+Solar_Rtm%Tau_H2O_Coef(26,:) = (/  1.2263e+00,  1.8795e+00, -1.1002e-01/)
+Solar_Rtm%Tau_Ray(26) =  2.5880e-03
+Solar_Rtm%Tau_O3(26) =  0.0000e+00
+Solar_Rtm%Tau_CO2(26) =  2.6536e-05
+Solar_Rtm%Tau_CH4(26) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_19_abi_srf_ch05.txt
+Solar_Rtm%Tau_H2O_Coef( 6,:) = (/ -6.5102e-07,  1.0285e-03, -4.0765e-06/)
+Solar_Rtm%Tau_Ray( 6) =  1.3983e-03
+Solar_Rtm%Tau_O3( 6) =  0.0000e+00
+Solar_Rtm%Tau_CO2( 6) =  2.3048e-02
 Solar_Rtm%Tau_CH4( 6) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_19_abi_srf_ch06.txt
+Solar_Rtm%Tau_H2O_Coef( 7,:) = (/ -1.5833e-04,  3.0262e-03, -1.1109e-04/)
+Solar_Rtm%Tau_Ray( 7) =  3.6557e-04
+Solar_Rtm%Tau_O3( 7) =  0.0000e+00
+Solar_Rtm%Tau_CO2( 7) =  2.9704e-06
+Solar_Rtm%Tau_CH4( 7) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_goes_19_abi_srf_ch07.txt
+Solar_Rtm%Tau_H2O_Coef(20,:) = (/  1.6102e-04,  2.1149e-02, -1.0334e-03/)
+Solar_Rtm%Tau_Ray(20) =  2.2799e-05
+Solar_Rtm%Tau_O3(20) =  0.0000e+00
+Solar_Rtm%Tau_CO2(20) =  3.3852e-03
+Solar_Rtm%Tau_CH4(20) =  0.0000e+00
diff --git a/main_src/ahi_solar_terms.inc b/main_src/ahi_solar_terms.inc
index 92ff3216be0d0fa81c0f078280e9874ee4ecf91f..cb3698c570caa3682e58d156b327f84523a04b7e 100644
--- a/main_src/ahi_solar_terms.inc
+++ b/main_src/ahi_solar_terms.inc
@@ -1,49 +1,98 @@
 case(173) 
-!SRF = tigr_tpw_trans_ch1_resp_ahi.dat
-Solar_Rtm%Tau_H2O_Coef( 3,:) = (/  4.5112e-06,  5.1395e-05, -1.9105e-07/)
-Solar_Rtm%Tau_Ray( 3) =  2.0146e-01
+!SRF = tigr_tpw_trans_rtcoef_himawari_8_ahi_srf_ch01.txt
+Solar_Rtm%Tau_H2O_Coef( 3,:) = (/  3.9164e-06,  5.2060e-05, -2.9382e-07/)
+Solar_Rtm%Tau_Ray( 3) =  2.0096e-01
 Solar_Rtm%Tau_O3( 3) =  0.0000e+00
 Solar_Rtm%Tau_CO2( 3) =  0.0000e+00
 Solar_Rtm%Tau_CH4( 3) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch2_resp_ahi.dat
-Solar_Rtm%Tau_H2O_Coef( 4,:) = (/  3.5560e-05,  6.7475e-04, -2.1035e-06/)
-Solar_Rtm%Tau_Ray( 4) =  1.4393e-01
-Solar_Rtm%Tau_O3( 4) =  3.8917e-06
+ 
+!SRF = tigr_tpw_trans_rtcoef_himawari_8_ahi_srf_ch02.txt
+Solar_Rtm%Tau_H2O_Coef( 4,:) = (/  2.5954e-05,  7.0107e-04, -8.5257e-06/)
+Solar_Rtm%Tau_Ray( 4) =  1.4516e-01
+Solar_Rtm%Tau_O3( 4) =  4.8710e-06
 Solar_Rtm%Tau_CO2( 4) =  0.0000e+00
 Solar_Rtm%Tau_CH4( 4) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch3_resp_ahi.dat
-Solar_Rtm%Tau_H2O_Coef( 1,:) = (/  8.7089e-05,  2.9454e-03, -7.7288e-05/)
-Solar_Rtm%Tau_Ray( 1) =  5.8655e-02
-Solar_Rtm%Tau_O3( 1) =  4.6808e-05
+ 
+!SRF = tigr_tpw_trans_rtcoef_himawari_8_ahi_srf_ch03.txt
+Solar_Rtm%Tau_H2O_Coef( 1,:) = (/  8.8065e-05,  2.9251e-03, -6.6689e-05/)
+Solar_Rtm%Tau_Ray( 1) =  5.9083e-02
+Solar_Rtm%Tau_O3( 1) =  4.7543e-05
 Solar_Rtm%Tau_CO2( 1) =  0.0000e+00
 Solar_Rtm%Tau_CH4( 1) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch4_resp_ahi.dat
-Solar_Rtm%Tau_H2O_Coef( 2,:) = (/  1.0741e-04,  3.6017e-03, -1.0748e-04/)
-Solar_Rtm%Tau_Ray( 2) =  1.7662e-02
+ 
+!SRF = tigr_tpw_trans_rtcoef_himawari_8_ahi_srf_ch04.txt
+Solar_Rtm%Tau_H2O_Coef( 2,:) = (/  7.1923e-05,  3.6581e-03, -1.1450e-04/)
+Solar_Rtm%Tau_Ray( 2) =  1.7664e-02
 Solar_Rtm%Tau_O3( 2) =  0.0000e+00
 Solar_Rtm%Tau_CO2( 2) =  0.0000e+00
 Solar_Rtm%Tau_CH4( 2) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch5_resp_ahi.dat
-Solar_Rtm%Tau_H2O_Coef( 6,:) = (/  4.5871e-06,  1.0012e-03,  3.0030e-06/)
-Solar_Rtm%Tau_Ray( 6) =  1.4074e-03
+ 
+!SRF = tigr_tpw_trans_rtcoef_himawari_8_ahi_srf_ch05.txt
+Solar_Rtm%Tau_H2O_Coef( 6,:) = (/ -2.5383e-06,  1.0109e-03, -3.1218e-06/)
+Solar_Rtm%Tau_Ray( 6) =  1.3871e-03
 Solar_Rtm%Tau_O3( 6) =  0.0000e+00
-Solar_Rtm%Tau_CO2( 6) =  2.2504e-02
+Solar_Rtm%Tau_CO2( 6) =  2.2322e-02
 Solar_Rtm%Tau_CH4( 6) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch6_resp_ahi.dat
-Solar_Rtm%Tau_H2O_Coef( 7,:) = (/ -1.3006e-04,  1.3990e-03, -4.6335e-05/)
-Solar_Rtm%Tau_Ray( 7) =  3.5377e-04
+ 
+!SRF = tigr_tpw_trans_rtcoef_himawari_8_ahi_srf_ch06.txt
+Solar_Rtm%Tau_H2O_Coef( 7,:) = (/ -1.3023e-04,  1.4114e-03, -4.5980e-05/)
+Solar_Rtm%Tau_Ray( 7) =  3.5438e-04
 Solar_Rtm%Tau_O3( 7) =  0.0000e+00
-Solar_Rtm%Tau_CO2( 7) =  3.3139e-06
+Solar_Rtm%Tau_CO2( 7) =  3.3471e-06
 Solar_Rtm%Tau_CH4( 7) =  0.0000e+00
-
-!SRF = tigr_tpw_trans_ch7_resp_ahi.dat
-Solar_Rtm%Tau_H2O_Coef(20,:) = (/  1.2103e-03,  2.6850e-02, -1.3311e-03/)
-Solar_Rtm%Tau_Ray(20) =  2.5785e-05
+ 
+!SRF = tigr_tpw_trans_rtcoef_himawari_8_ahi_srf_ch07.txt
+Solar_Rtm%Tau_H2O_Coef(20,:) = (/  1.2857e-03,  2.6675e-02, -1.2884e-03/)
+Solar_Rtm%Tau_Ray(20) =  2.4455e-05
 Solar_Rtm%Tau_O3(20) =  0.0000e+00
-Solar_Rtm%Tau_CO2(20) =  2.9989e-03
+Solar_Rtm%Tau_CO2(20) =  2.9857e-03
+Solar_Rtm%Tau_CH4(20) =  0.0000e+00
+case(174) 
+!SRF = tigr_tpw_trans_rtcoef_himawari_9_ahi_srf_ch01.txt
+Solar_Rtm%Tau_H2O_Coef( 3,:) = (/  5.7958e-06,  4.9444e-05,  1.8629e-07/)
+Solar_Rtm%Tau_Ray( 3) =  2.0186e-01
+Solar_Rtm%Tau_O3( 3) =  1.3824e-10
+Solar_Rtm%Tau_CO2( 3) =  0.0000e+00
+Solar_Rtm%Tau_CH4( 3) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_himawari_9_ahi_srf_ch02.txt
+Solar_Rtm%Tau_H2O_Coef( 4,:) = (/  1.6854e-05,  7.1086e-04, -8.9678e-06/)
+Solar_Rtm%Tau_Ray( 4) =  1.4473e-01
+Solar_Rtm%Tau_O3( 4) =  4.4056e-06
+Solar_Rtm%Tau_CO2( 4) =  0.0000e+00
+Solar_Rtm%Tau_CH4( 4) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_himawari_9_ahi_srf_ch03.txt
+Solar_Rtm%Tau_H2O_Coef( 1,:) = (/  7.3591e-05,  2.9281e-03, -8.3073e-05/)
+Solar_Rtm%Tau_Ray( 1) =  5.8449e-02
+Solar_Rtm%Tau_O3( 1) =  4.6652e-05
+Solar_Rtm%Tau_CO2( 1) =  0.0000e+00
+Solar_Rtm%Tau_CH4( 1) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_himawari_9_ahi_srf_ch04.txt
+Solar_Rtm%Tau_H2O_Coef( 2,:) = (/  8.0813e-05,  3.6850e-03, -1.2360e-04/)
+Solar_Rtm%Tau_Ray( 2) =  1.7617e-02
+Solar_Rtm%Tau_O3( 2) =  0.0000e+00
+Solar_Rtm%Tau_CO2( 2) =  0.0000e+00
+Solar_Rtm%Tau_CH4( 2) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_himawari_9_ahi_srf_ch05.txt
+Solar_Rtm%Tau_H2O_Coef( 6,:) = (/ -4.6404e-05,  1.1087e-03, -1.4572e-05/)
+Solar_Rtm%Tau_Ray( 6) =  1.4081e-03
+Solar_Rtm%Tau_O3( 6) =  0.0000e+00
+Solar_Rtm%Tau_CO2( 6) =  2.3149e-02
+Solar_Rtm%Tau_CH4( 6) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_himawari_9_ahi_srf_ch06.txt
+Solar_Rtm%Tau_H2O_Coef( 7,:) = (/ -1.3080e-04,  1.3853e-03, -4.3671e-05/)
+Solar_Rtm%Tau_Ray( 7) =  3.5310e-04
+Solar_Rtm%Tau_O3( 7) =  0.0000e+00
+Solar_Rtm%Tau_CO2( 7) =  3.1960e-06
+Solar_Rtm%Tau_CH4( 7) =  0.0000e+00
+ 
+!SRF = tigr_tpw_trans_rtcoef_himawari_9_ahi_srf_ch07.txt
+Solar_Rtm%Tau_H2O_Coef(20,:) = (/  4.0006e-03,  4.4322e-02, -2.4431e-03/)
+Solar_Rtm%Tau_Ray(20) =  2.8213e-05
+Solar_Rtm%Tau_O3(20) =  0.0000e+00
+Solar_Rtm%Tau_CO2(20) =  2.1382e-03
 Solar_Rtm%Tau_CH4(20) =  0.0000e+00
diff --git a/main_src/avhrr_mod.f90 b/main_src/avhrr_mod.f90
index 7ba7afc692b4aefb76b3229f6a1458c364603cea..38d8dca60373d70fb8c5c3a4cfe18aeec295ad0d 100644
--- a/main_src/avhrr_mod.f90
+++ b/main_src/avhrr_mod.f90
@@ -84,7 +84,8 @@ module AVHRR_MOD
          , cldmask &
          , Cloud_Mask_Aux_Read_Flag  &
          , num_loc &
-         , Ch1_Counts, Ch2_Counts, Ch6_Counts
+         , Ch1_Counts, Ch2_Counts, Ch6_Counts &
+         , Cld_Flag
   
   use CALIBRATION_CONSTANTS_MOD, only: &
                 sat_name &
@@ -2932,23 +2933,25 @@ subroutine UNPACK_AVHRR_HEADER_RECORD_KLM(Sc_Id_AVHRR,AVHRR_Data_Type,Start_Year
     Start_word = word_clavr_start + 8
     End_word = Start_word + Num_clavr_bytes
 
-    do iword = Start_word, End_word
-      onebyte = Buffer_AVHRR(iword)
-      Pix_Idx = 1
-      Start_Pixel = (iword - Start_word)*4 + 1
-      End_Pixel = min(Image%Number_Of_Elements, Start_Pixel+3_int2)
+    if(Cld_Flag == sym%YES) then
+        do iword = Start_word, End_word
+          onebyte = Buffer_AVHRR(iword)
+          Pix_Idx = 1
+          Start_Pixel = (iword - Start_word)*4 + 1
+          End_Pixel = min(Image%Number_Of_Elements, Start_Pixel+3_int2)
 
-      do Pix_Idx = Start_Pixel, End_Pixel
-         if (Pix_Idx > Image%Number_Of_Elements) then
-           exit
-         endif
-         i = (Pix_Idx - Start_Pixel) + 1
-         CLDMASK%Cld_Mask_Aux(Pix_Idx,Line_Idx) = ishft(ishft(onebyte,2*(i-1)),-6)
-      enddo
-    enddo
+          do Pix_Idx = Start_Pixel, End_Pixel
+             if (Pix_Idx > Image%Number_Of_Elements) then
+               exit
+             endif
+             i = (Pix_Idx - Start_Pixel) + 1
+             CLDMASK%Cld_Mask_Aux(Pix_Idx,Line_Idx) = ishft(ishft(onebyte,2*(i-1)),-6)
+          enddo
+        enddo
 
-    !--- set flag to communicate that mask was read in
-    Cloud_Mask_Aux_Read_Flag = sym%YES
+        !--- set flag to communicate that mask was read in
+        Cloud_Mask_Aux_Read_Flag = sym%YES
+    endif
 
   end subroutine UNPACK_AVHRR_DATA_RECORD_KLM
 
diff --git a/main_src/caliop_collocation_mod.f90 b/main_src/caliop_collocation_mod.f90
index 1f21b158089c714fb70cf2171e7d52b9eec7a55d..b8fa9d07d97f9cbee2ff543d05280c363438d265 100644
--- a/main_src/caliop_collocation_mod.f90
+++ b/main_src/caliop_collocation_mod.f90
@@ -29,6 +29,8 @@ module CALIOP_COLLOCATION_MOD
       , Skip_L1b_File_Flag &
       , Geo &
       , Image &
+      , Ch &
+      , Sensor &
       , Caliop_Num_Cld_Layers &
       , Caliop_Cod & 
       , Caliop_Cld_Height
@@ -36,6 +38,10 @@ module CALIOP_COLLOCATION_MOD
   use CONSTANTS_MOD, only: &
         int4 &
       , real4 &
+      , Nchan_Clavrx &
+      , SOLAR_OBS_TYPE &
+      , THERMAL_OBS_TYPE &
+      , MIXED_OBS_TYPE &
       , Sym
 
   implicit none
@@ -52,19 +58,11 @@ subroutine CALIOP_COLLOCATION(Seg_Idx)
   integer, intent(in):: Seg_Idx
   character(len=1020) :: File_Name_Search
   character(len=1020) :: Caliop_File
-  !character(len=4) :: Year_String
-  !character(len=3) :: Doy_String
-  !character(len=2) :: Month_String
-  !character(len=2) :: Day_of_Month_String
-  !character(len=4) :: Time_String
-  !character(len=2) :: Hour_String
-  !character(len=2) :: Minute_String
   character(len=1020), dimension(:), pointer:: Files
   integer(kind=int4) :: Num_Files
   integer(kind=int4) :: Status
   integer(kind=int4) :: Sd_Id
-  integer(kind=int4) :: i
-  !integer(kind=int4) :: Hour, Minute
+  integer(kind=int4) :: i, Chan_I
   integer(kind=int4) :: Left_Limit, Right_Limit
   integer(kind=int4), parameter :: N = 20
   integer(kind=int4), dimension (1) :: Start_1d, Stride_1d, Edge_1d
@@ -74,62 +72,31 @@ subroutine CALIOP_COLLOCATION(Seg_Idx)
   real(kind=real4), dimension (:), allocatable :: Caliop_Cld_Height_1D
   real(kind=real4),parameter :: Missing = -999.0
 
-  !clavrx_viirs_nasa_2018_113_0000.calipso.hdf
-  !VNP03MOD.A2017085.2142.001.2017305105432.uwssec.calipso.hdf
-  !clavrx_IFF_npp_viirs_svm_d20150820_t133328_e134126_c20161208044316.calipso.hdf
-  
-  ! --- calculate hours and minutes
-  !Hour = Image%Start_Time/1000/60/60
-  !Minute = Image%Start_Time/1000/60 - Hour * 60
-
   ! --- create string to search caliop file
-  !write(Year_String,fmt="(I4.4)") Image%Start_Year
-  !write(Doy_String,fmt="(I3.3)") Image%Start_Doy
-  !write(Hour_String,fmt="(I2.2)") Hour
-  !write(Month_String,fmt="(I2.2)") Month
-  !write(Day_of_Month_String,fmt="(I2.2)") Day_of_Month
-  !write(Minute_String,fmt="(I2.2)") Minute
-  !Time_String = Hour_String//Minute_String
-
- !-20220115AW File_Name_Search = '*'//Year_String//'_'//Doy_String//'_'//Time_String//'*.calipso.hdf'
-  
   file_name_search = '*'//image % time_start % date_string('yyyy_doy_hhmm')//'*.calipso.hdf'
 
-! print *, "In CALIOP FIND"
-! print *, trim(Caliop_Dir)
-! print *, trim(File_Name_Search)
   ! --- search file
   Files => FILE_SEARCH(trim(Caliop_Dir)//'/',trim(File_Name_Search),count=Num_Files)
-! print *, trim(File_Name_Search)," Num_Files = ", Num_Files
 
   if (Num_Files == 0) then
-         
-    !File_Name_Search = '*A'//Year_String//Doy_String//'.'//Time_String//'*.calipso.hdf'
     File_Name_Search = '*A'//image % time_start % date_string('yyyy_doy.hhmm')//'*.calipso.hdf'
     Files => FILE_SEARCH(trim(Caliop_Dir)//'/',trim(File_Name_Search),count=Num_Files)
-!   print *, trim(File_Name_Search)," Num_Files = ", Num_Files
   endif
 
   if (Num_Files == 0) then
-    !File_Name_Search = '*A'//Year_String//Doy_String//'_'//Time_String//'*.calipso.hdf'
     File_Name_Search = '*A'//image % time_start % date_string('yyyy_doy_hhmm')//'*.calipso.hdf'
     Files => FILE_SEARCH(trim(Caliop_Dir)//'/',trim(File_Name_Search),count=Num_Files)
-!   print *, trim(File_Name_Search)," Num_Files = ", Num_Files
   endif
 
   if (Num_Files == 0) then
-    !File_Name_Search = '*d'//Year_String//Month_String//Day_of_Month_String//'_t'//Time_String//'*.calipso.hdf'
     File_Name_Search = '*d'//image % time_start % date_string('yyyymmdd')//'_t' &
             //image % time_start % date_string('hhmm')//'*.calipso.hdf'
     Files => FILE_SEARCH(trim(Caliop_Dir)//'/',trim(File_Name_Search),count=Num_Files)
-!   print *, trim(File_Name_Search)," Num_Files = ", Num_Files
   endif
 
   if (Num_Files == 0) then
-    !File_Name_Search = '*s'//Year_String//Doy_String//Time_String//'*.calipso.hdf'
     File_Name_Search = '*s'//image % time_start % date_string('yyyydoyhhmm')//'*.calipso.hdf'
     Files => FILE_SEARCH(trim(Caliop_Dir)//'/',trim(File_Name_Search),count=Num_Files)
-!   print *, trim(File_Name_Search)," Num_Files = ", Num_Files
   endif
 
   ! --- if not found or more than 1 exit
@@ -181,8 +148,23 @@ subroutine CALIOP_COLLOCATION(Seg_Idx)
   do i = 1, Edge_1d(1)
 
     ! --- set all to SPACE if Missing value
-    if (Pixel_Element_Idx(i) == Missing) then
+    if (Pixel_Element_Idx(i) == Missing .or. Pixel_Element_Idx(i) .lt. 0) then
       Geo%Space_Mask(1:Image%Number_Of_Elements,i) = .true.
+      ! - loop through the channels and set them to missing
+      do Chan_I = 1, Nchan_Clavrx
+         if (Sensor%Chan_On_Flag_Default(Chan_I) .eq. sym%YES) then
+            ! - Ref
+            if (ch(Chan_I)%Obs_Type == SOLAR_OBS_TYPE) then
+               ch(Chan_I)%Ref_Toa(:,i) = Missing
+            endif
+            ! - BT
+            if (ch(Chan_I)%Obs_Type == THERMAL_OBS_TYPE .or. &
+                ch(Chan_I)%Obs_Type == MIXED_OBS_TYPE) then
+               ch(Chan_I)%Rad_Toa(:,i) = Missing
+               ch(Chan_I)%Bt_Toa(:,i) = Missing
+            endif
+         endif
+      enddo
       cycle
     endif
 
@@ -192,6 +174,25 @@ subroutine CALIOP_COLLOCATION(Seg_Idx)
     Geo%Space_Mask(1:Left_Limit,i) = .TRUE.
     Geo%Space_Mask(Right_Limit:Image%Number_Of_Elements,i) = .TRUE.
 
+    ! - loop through the channels and set them to missing
+    do Chan_I = 1, Nchan_Clavrx
+       if (Sensor%Chan_On_Flag_Default(Chan_I) .eq. sym%YES) then
+          ! - Ref
+          if (ch(Chan_I)%Obs_Type == SOLAR_OBS_TYPE) then
+             ch(Chan_I)%Ref_Toa(1:Left_Limit,i) = Missing
+             ch(Chan_I)%Ref_Toa(Right_Limit:Image%Number_Of_Elements,i) = Missing
+          endif
+          ! - BT
+          if (ch(Chan_I)%Obs_Type == THERMAL_OBS_TYPE .or. &
+              ch(Chan_I)%Obs_Type == MIXED_OBS_TYPE) then
+             ch(Chan_I)%Rad_Toa(1:Left_Limit,i) = Missing
+             ch(Chan_I)%Rad_Toa(Right_Limit:Image%Number_Of_Elements,i) = Missing
+             ch(Chan_I)%Bt_Toa(1:Left_Limit,i) = Missing
+             ch(Chan_I)%Bt_Toa(Right_Limit:Image%Number_Of_Elements,i) = Missing
+          endif
+       endif
+    enddo
+             
     ! --- save caliop data to global variables
     Caliop_Num_Cld_Layers(int(Pixel_Element_Idx(i)+1),i) = Caliop_Num_Cld_Layers_1D(i)
     Caliop_Cod(int(Pixel_Element_Idx(i)+1),i) = Caliop_Cod_1D(i)
diff --git a/main_src/clavrx_olr_mod.f90 b/main_src/clavrx_olr_mod.f90
index d50f2e58e6da9506e1eb8eff7cfddbbf04427d69..164b83f659758edafe9a31fd60a631e2a3bbc36a 100644
--- a/main_src/clavrx_olr_mod.f90
+++ b/main_src/clavrx_olr_mod.f90
@@ -202,6 +202,10 @@ select case (Sensor%WMO_Id)
          olr_type = 'goes'
          olr_coef(1:5) = (/17.8305,0.553769,0.340907,0.00937766,0.00653376/)
 
+      case(272) !GOES-18 TODO FAKE NUMBER ADJUST WHEN KNOWN
+         olr_type = 'goes'
+         olr_coef(1:5) = (/17.8305,0.553769,0.340907,0.00937766,0.00653376/)
+
       case(384) !EPS-SG TODO FAKE NUMBER ADJUST WHEN KNOWN
          olr_type = 'none'
 
diff --git a/main_src/clavrx_sst_mod.f90 b/main_src/clavrx_sst_mod.f90
index ec16790a430d2cd74f1b10647aa6f59e63da8492..07902ba0d2603a7b5280379bdd5bd90b0c7d16c7 100644
--- a/main_src/clavrx_sst_mod.f90
+++ b/main_src/clavrx_sst_mod.f90
@@ -147,6 +147,9 @@ select case (Sensor%WMO_Id)
       case(271) !GOES-17
          acspo_coef = (/74.574503,0.751711,2.81401,0.2970021,1.3209088,0.014818,0.108972,0.153607/)
 
+      case(272) !GOES-18 TODO FAKE NUMBER ADJUST WHEN KNOWN
+         acspo_coef = (/74.574503,0.751711,2.81401,0.2970021,1.3209088,0.014818,0.108972,0.153607/)
+
       case(384) !EPS-SG TODO FAKE NUMBER ADJUST WHEN KNOWN
 
       case(706) !NOAA-6
diff --git a/main_src/clavrx_static_nav_module.f90 b/main_src/clavrx_static_nav_module.f90
index d4daca182eefed0f62dee63228d310410377fcb8..5f5b003b47712f890c8e77f217bf2044d9673bac 100644
--- a/main_src/clavrx_static_nav_module.f90
+++ b/main_src/clavrx_static_nav_module.f90
@@ -162,7 +162,7 @@ module CLAVRX_STATIC_NAV_MODULE
     case (173:174) !-- ahi
       Num_Chan_Sensor = 16
 
-    case(270:271) !-- abi
+    case(270:273) !-- abi
       Num_Chan_Sensor = 16
 
     case default
@@ -201,7 +201,7 @@ module CLAVRX_STATIC_NAV_MODULE
           Chan_Stride =     (/1,1,4,1,1,1,1,1,1,1,1,1,1,1,1,1/)
       endif
 
-    case(270:271) !-- abi
+    case(270:273) !-- abi
       CLAVRx_Chan_Map = (/3,1,2,26,6,7,20,37,27,28,29,30,38,31,32,33/)
       Chan_Stride = (/2,4,2,1,2,1,1,1,1,1,1,1,1,1,1,1/)
       
@@ -328,7 +328,7 @@ module CLAVRX_STATIC_NAV_MODULE
 
     !--- determine if this static nav file is consistent with level1b by looking
     !--- at center of projections.
-    if (Sensor%WMO_Id == 270 .or. Sensor%WMO_Id == 271) then
+    if (Sensor%WMO_Id == 270 .or. Sensor%WMO_Id == 271 .or. Sensor%WMO_Id == 272) then
       call READ_NETCDF_GLOBAL_ATTRIBUTE(Static_Nav_Full_File, "geospatial_lat_center", Geospatial_Lat_Center_Sn)
       call READ_NETCDF_GLOBAL_ATTRIBUTE(Static_Nav_Full_File, "geospatial_lon_center", Geospatial_Lon_Center_Sn)
       do Chan_Idx = 1, Num_Chan_Sensor
@@ -476,7 +476,7 @@ module CLAVRX_STATIC_NAV_MODULE
 
            !--- set SOURCE Flag if ABI Fusion used for any channel
            ch(Clavrx_Chan_Map(Chan_Idx))%Source = 0    !note source of this channel is from imager
-           if (Sensor%WMO_Id == 270 .or. Sensor%WMO_Id == 271) then
+           if (Sensor%WMO_Id == 270 .or. Sensor%WMO_Id == 271 .or. Sensor%WMO_Id == 272) then
              if (index(Level1b_File(Chan_Idx),'FR_') > 0) then
                 ch(Clavrx_Chan_Map(Chan_Idx))%Source = 1    !note source of this channel is from sounder
              endif
@@ -529,7 +529,7 @@ module CLAVRX_STATIC_NAV_MODULE
        if (ch(Chan_Clavrx_Idx)%Obs_Type == SOLAR_OBS_TYPE) then
 
          !--- For ABI, use kappa0 factor from the NetCDF file.
-         if (Sensor%WMO_Id == 270 .or. Sensor%WMO_Id == 271) then
+         if (Sensor%WMO_Id == 270 .or. Sensor%WMO_Id == 271 .or. Sensor%WMO_Id == 272) then
 
            Factor = 1.0
 
@@ -939,7 +939,7 @@ subroutine READ_SEGMENT_LEVEL1B_VER2(Ncid,Chan_Name,Segment_Number, Number_Of_Li
    call READ_AND_UNSCALE_NETCDF_2d(Ncid, Start_2d, Stride_2d, Count_2d, Chan_Name, Native_Output_Seg)
 
    !--- read native resolution dqf (only for GOES-R series - not AHI))
-   if (Sensor%WMO_ID == 270 .or. Sensor%WMO_ID == 271) then
+   if (Sensor%WMO_ID == 270 .or. Sensor%WMO_ID == 271 .or. Sensor%WMO_ID == 272) then
       call READ_NETCDF(Ncid, Start_2d, Stride_2d, Count_2d, 'DQF', Native_DQF_Seg)
    endif
 
@@ -1004,7 +1004,7 @@ subroutine READ_SEGMENT_LEVEL1B_VER2(Ncid,Chan_Name,Segment_Number, Number_Of_Li
          endif
 
 
-      case(270:271) !-- abi(s)
+      case(270:273) !-- abi(s)
 
              call READ_ABI_TIME (Ncid, Line_Start_Segment, j2,  &
                                  Line_End_File, Y_Stride, Image%Scan_Time_Ms(j1:j2), Read_Time)
@@ -1074,7 +1074,7 @@ subroutine  READ_SEGMENT_STATIC_NAV(Ncid_Static)
    Geo%Sataz(:,1:Image%Number_Of_Lines_Read_This_Segment) = Data_Segment
 
    !---- read x and y (ignored for ahi)
-   if (Sensor%WMO_Id == 270 .or. Sensor%WMO_Id == 271) then 
+   if (Sensor%WMO_Id == 270 .or. Sensor%WMO_Id == 271 .or. Sensor%WMO_Id == 272) then 
      call READ_NETCDF(Ncid_Static, (/Elem_Start_Segment/), &
                                    (/Image%X_Stride/),  &
                                    (/Elem_Count_Segment/), "x_fd",Data_Segment_1D_I4_X)
@@ -1281,7 +1281,7 @@ subroutine FIND_DARK_COMPOSITE()
      case(270)
        Dark_Comp_Data_Dir = trim(Ancil_Data_Dir)//'/static/dark_comp/goes_east/'
        Dark_Composite_Name = "goes_east_fulldisk_"//trim(image % time_start % Monthname)//"_"//image % time_start % hh //"Z_refl065_dark_composite_2km.nc"
-     case(271)
+     case(271:272)
        Dark_Comp_Data_Dir = trim(Ancil_Data_Dir)//'/static/dark_comp/goes_west/'
        Dark_Composite_Name = "goes_west_fulldisk_"//trim(image % time_start % Monthname)//"_"//image % time_start % hh//"Z_refl065_dark_composite_2km.nc"
      case default
diff --git a/main_src/cleanup.f90 b/main_src/cleanup.f90
new file mode 100644
index 0000000000000000000000000000000000000000..19beeb754852576e3a29e0ecb684b5136962e913
--- /dev/null
+++ b/main_src/cleanup.f90
@@ -0,0 +1,42 @@
+!--------------------------------------------------------------------------------------
+! Clouds from AVHRR Extended (CLAVR-x) 1b PROCESSING SOFTWARE
+!
+! NAME: cleanup.f90 (src)
+!
+! PURPOSE: Handle signals before exiting
+!
+!
+! AUTHORS:
+!  Coda Phillips, coda.phillips@wisc.edu
+!
+! COPYRIGHT
+! THIS SOFTWARE AND ITS DOCUMENTATION ARE CONSIDERED TO BE IN THE PUBLIC
+! DOMAIN AND THUS ARE AVAILABLE FOR UNRESTRICTED PUBLIC USE. THEY ARE
+! FURNISHED "AS IS." THE AUTHORS, THE UNITED STATES GOVERNMENT, ITS
+! INSTRUMENTALITIES, OFFICERS, EMPLOYEES, AND AGENTS MAKE NO WARRANTY,
+! EXPRESS OR IMPLIED, AS TO THE USEFULNESS OF THE SOFTWARE AND
+! DOCUMENTATION FOR ANY PURPOSE. THEY ASSUME NO RESPONSIBILITY (1) FOR
+! THE USE OF THE SOFTWARE AND DOCUMENTATION; OR (2) TO PROVIDE TECHNICAL
+! SUPPORT TO USERS.
+!
+! REVISON HISTORY:
+!    Creation Date Apr 2022
+!--------------------------------------------------------------------------------------
+
+module cleanup
+  use pixel_common_mod, only: Temporary_Data_Dir
+
+  contains
+      subroutine cleanup_tempdir()
+        integer(4) :: ret
+       !--- remove directory for temporary files
+        print*, 'Cleaning up'
+        call system("rmdir "//trim(Temporary_Data_Dir), ret)
+        if(ret .ne. 0) then 
+            print*, 'rmdir error'
+        else
+            print*, 'removed ',trim(Temporary_Data_Dir)
+        endif
+        stop 1
+    end subroutine
+end module cleanup
diff --git a/main_src/cloud_height_routines.f90 b/main_src/cloud_height_routines.f90
index dc351aaf521f5f7f17f54cd04774255e16fab8cb..4928df5d8063cce92dd80645849ac508600c29cc 100644
--- a/main_src/cloud_height_routines.f90
+++ b/main_src/cloud_height_routines.f90
@@ -665,7 +665,8 @@ subroutine OPAQUE_CLOUD_HEIGHT(ABI_Use_104um_Flag)
       Sfc_Level_Idx =   rtm(Nwp_Lon_Idx,Nwp_Lat_Idx)%Sfc_Level
 
       !--- restrict levels to consider
-      Level_Idx_Start = Tropo_Level_Idx
+   !   Level_Idx_Start = Tropo_Level_Idx
+      Level_Idx_Start = 1
       Level_Idx_End = Sfc_Level_Idx
 
       call GET_INTERP_PROFILES(ABI_Use_104um_Flag, Nwp_Lon_Idx,Nwp_Lat_Idx, &
@@ -693,55 +694,38 @@ subroutine OPAQUE_CLOUD_HEIGHT(ABI_Use_104um_Flag)
            cycle
       endif
 
-      !--- loop through levels
-!     Pc_Opaque_Cloud(Elem_Idx,Line_Idx) = Psfc
-!     Zc_Opaque_Cloud(Elem_Idx,Line_Idx) = Zsfc
-!     Tc_Opaque_Cloud(Elem_Idx,Line_Idx) = Tsfc
-
       Solution_Found = .false.
 
-!--- top down
-      level_loop: do Level_Idx = Level_Idx_Start, Level_Idx_End
-          if (Rad_BB_Cloud_Profile(Level_Idx) >  Rad_Toa) then
-            Pc_Opaque_Cloud(Elem_Idx,Line_Idx) = P_Std_Rtm(Level_Idx - 1)
-            Zc_Opaque_Cloud(Elem_Idx,Line_Idx) = Z_Prof(Level_Idx - 1)
-            Tc_Opaque_Cloud(Elem_Idx,Line_Idx) = T_Prof(Level_Idx - 1)
-            Solution_Found = .true.
+      !--- bottom up
+      level_loop: do Level_Idx = Level_Idx_End, Level_Idx_Start+1, -1
+
+          if ((Rad_BB_Cloud_Profile(Level_Idx-1) > Rad_Toa) .and.  &
+              (Rad_BB_Cloud_Profile(Level_Idx) < Rad_Toa)) then
+              Solution_Found = .true.
+          endif
+          if ((Rad_BB_Cloud_Profile(Level_Idx-1) < Rad_Toa) .and.   &
+              (Rad_BB_Cloud_Profile(Level_Idx) > Rad_Toa)) then
+              Solution_Found = .true.
+          endif
+
+          if (Solution_Found) then
+            dRad  = Rad_BB_Cloud_Profile(Level_Idx) - Rad_BB_Cloud_Profile(Level_Idx-1)
+            if (dRad .ner. 0.00) then
+              Slope = (P_Std_Rtm(Level_Idx) - P_Std_Rtm(Level_Idx-1)) / dRad 
+              Pc_Opaque_Cloud(Elem_Idx,Line_Idx)  =  P_Std_Rtm(Level_Idx-1) + Slope * (Rad_Toa - Rad_BB_Cloud_Profile(Level_Idx-1))
+              Slope = (Z_Prof(Level_Idx) - Z_Prof(Level_Idx-1)) / dRad 
+              Zc_Opaque_Cloud(Elem_Idx,Line_Idx)  =  Z_Prof(Level_Idx-1) + Slope * (Rad_Toa - Rad_BB_Cloud_Profile(Level_Idx-1))
+              Slope = (T_Prof(Level_Idx) - T_Prof(Level_Idx-1)) / dRad 
+              Tc_Opaque_Cloud(Elem_Idx,Line_Idx)  =  T_Prof(Level_Idx-1) + Slope * (Rad_Toa - Rad_BB_Cloud_Profile(Level_Idx-1))
+             else
+              Pc_Opaque_Cloud(Elem_Idx,Line_Idx) = P_Std_Rtm(Level_Idx-1)
+              Zc_Opaque_Cloud(Elem_Idx,Line_Idx) = Z_Prof(Level_Idx-1)
+              Tc_Opaque_Cloud(Elem_Idx,Line_Idx) = T_Prof(Level_Idx-1)
+            endif 
             exit
           endif
-      enddo Level_Loop
 
-!--- bottom up
-!     level_loop: do Level_Idx = Level_Idx_End, Level_Idx_Start+1, -1
-
-!         print *, "looking ", Level_Idx, Rad_BB_Cloud_Profile(Level_Idx), Rad_BB_Cloud_Profile(Level_Idx+1)
-!         if ((Rad_BB_Cloud_Profile(Level_Idx-1) > Rad_Toa) .and.  &
-!             (Rad_BB_Cloud_Profile(Level_Idx) < Rad_Toa)) then
-!             Solution_Found = .true.
-!         endif
-!         if ((Rad_BB_Cloud_Profile(Level_Idx-1) < Rad_Toa) .and.   &
-!             (Rad_BB_Cloud_Profile(Level_Idx) > Rad_Toa)) then
-!             Solution_Found = .true.
-!         endif
-
-!         if (Solution_Found) then
-!           dRad  = Rad_BB_Cloud_Profile(Level_Idx) - Rad_BB_Cloud_Profile(Level_Idx-1)
-!           if (dRad .ner. 0.00) then
-!             Slope = (P_Std_Rtm(Level_Idx) - P_Std_Rtm(Level_Idx-1)) / dRad 
-!             Pc_Opaque_Cloud(Elem_Idx,Line_Idx)  =  P_Std_Rtm(Level_Idx-1) + Slope * (Rad_Toa - Rad_BB_Cloud_Profile(Level_Idx-1))
-!             Slope = (Z_Prof(Level_Idx) - Z_Prof(Level_Idx-1)) / dRad 
-!             Zc_Opaque_Cloud(Elem_Idx,Line_Idx)  =  Z_Prof(Level_Idx-1) + Slope * (Rad_Toa - Rad_BB_Cloud_Profile(Level_Idx-1))
-!             Slope = (T_Prof(Level_Idx) - T_Prof(Level_Idx-1)) / dRad 
-!             Tc_Opaque_Cloud(Elem_Idx,Line_Idx)  =  T_Prof(Level_Idx-1) + Slope * (Rad_Toa - Rad_BB_Cloud_Profile(Level_Idx-1))
-!            else
-!             Pc_Opaque_Cloud(Elem_Idx,Line_Idx) = P_Std_Rtm(Level_Idx-1)
-!             Zc_Opaque_Cloud(Elem_Idx,Line_Idx) = Z_Prof(Level_Idx-1)
-!             Tc_Opaque_Cloud(Elem_Idx,Line_Idx) = T_Prof(Level_Idx-1)
-!           endif 
-!           exit
-!         endif
-
-!     enddo Level_Loop
+      enddo Level_Loop
 
 
       if (.not. Solution_Found) then
@@ -802,6 +786,19 @@ subroutine GET_INTERP_PROFILES(ABI_Use_104um_Flag, Nwp_Lon_Idx,Nwp_Lat_Idx, &
    Tsfc = Missing_Value_Real4
    Zsfc = Missing_Value_Real4
 
+  Rad_BB_Cloud_Profile_1 => null()
+  Rad_BB_Cloud_Profile_2 => null()
+  Rad_BB_Cloud_Profile_3 => null()
+  Rad_BB_Cloud_Profile_4 => null()
+  Z_Prof_1 => null()
+  Z_Prof_2 => null()
+  Z_Prof_3 => null()
+  Z_Prof_4 => null()
+  T_Prof_1 => null()
+  T_Prof_2 => null()
+  T_Prof_3 => null()
+  T_Prof_4 => null()
+
    !--- check that needed rtm is populated
    if ((.not. rtm(Nwp_Lon_Idx_x,Nwp_Lat_Idx)%is_set ) .or. &
        (.not. rtm(Nwp_Lon_Idx,Nwp_Lat_Idx_x)%is_set ) .or. &
@@ -830,7 +827,7 @@ subroutine GET_INTERP_PROFILES(ABI_Use_104um_Flag, Nwp_Lon_Idx,Nwp_Lat_Idx, &
      Sfc_Level_Idx_1 = Sfc_Level_Idx
      Sfc_Level_Idx_2 = rtm(Nwp_Lon_Idx_x,Nwp_Lat_Idx)%Sfc_Level
      Sfc_Level_Idx_3 = rtm(Nwp_Lon_Idx,Nwp_Lat_Idx_x)%Sfc_Level
-     Sfc_Level_Idx_4 =rtm(Nwp_Lon_Idx_x,Nwp_Lat_Idx_x)%Sfc_Level
+     Sfc_Level_Idx_4 = rtm(Nwp_Lon_Idx_x,Nwp_Lat_Idx_x)%Sfc_Level
 
      if (ABI_Use_104um_Flag) then
        Rad_BB_Cloud_Profile_1 => rtm(Nwp_Lon_Idx,Nwp_Lat_Idx)%d(Vza_Rtm_Idx_1)%ch(31)%Rad_BB_Cloud_Profile(:) 
@@ -845,21 +842,36 @@ subroutine GET_INTERP_PROFILES(ABI_Use_104um_Flag, Nwp_Lon_Idx,Nwp_Lat_Idx, &
      endif
 
      !--- check validity of pointers
-     if ((size(Rad_BB_Cloud_Profile_1) /= Nlevels_Rtm)  .or. &
-         (size(Rad_BB_Cloud_Profile_2) /= Nlevels_Rtm)  .or. &
-         (size(Rad_BB_Cloud_Profile_3) /= Nlevels_Rtm)  .or. &
-         (size(Rad_BB_Cloud_Profile_4) /= Nlevels_Rtm)  .or. &
-         (size(Z_Prof_1) /= Nlevels_Rtm) .or. &
-         (size(Z_Prof_2) /= Nlevels_Rtm) .or. &
-         (size(Z_Prof_3) /= Nlevels_Rtm) .or. &
-         (size(Z_Prof_4) /= Nlevels_Rtm) .or. &
-         (size(T_Prof_1) /= Nlevels_Rtm) .or. &
-         (size(T_Prof_2) /= Nlevels_Rtm) .or. &
-         (size(T_Prof_3) /= Nlevels_Rtm) .or. &
-         (size(T_Prof_4) /= Nlevels_Rtm)) then
-
-         Interp_Flag = .false.
-     endif
+     if (associated(Rad_BB_Cloud_Profile_1) .and. &
+       associated(Rad_BB_Cloud_Profile_2) .and. &
+       associated(Rad_BB_Cloud_Profile_3) .and. &
+       associated(Rad_BB_Cloud_Profile_4) .and. &
+       associated(Z_Prof_1) .and. &
+       associated(Z_Prof_2) .and. &
+       associated(Z_Prof_3) .and. &
+       associated(Z_Prof_4) .and. &
+       associated(T_Prof_1) .and. &
+       associated(T_Prof_2) .and. &
+       associated(T_Prof_3) .and. &
+       associated(T_Prof_4)) then
+         if ((size(Rad_BB_Cloud_Profile_1) /= Nlevels_Rtm)  .or. &
+             (size(Rad_BB_Cloud_Profile_2) /= Nlevels_Rtm)  .or. &
+             (size(Rad_BB_Cloud_Profile_3) /= Nlevels_Rtm)  .or. &
+             (size(Rad_BB_Cloud_Profile_4) /= Nlevels_Rtm)  .or. &
+             (size(Z_Prof_1) /= Nlevels_Rtm) .or. &
+             (size(Z_Prof_2) /= Nlevels_Rtm) .or. &
+             (size(Z_Prof_3) /= Nlevels_Rtm) .or. &
+             (size(Z_Prof_4) /= Nlevels_Rtm) .or. &
+             (size(T_Prof_1) /= Nlevels_Rtm) .or. &
+             (size(T_Prof_2) /= Nlevels_Rtm) .or. &
+             (size(T_Prof_3) /= Nlevels_Rtm) .or. &
+             (size(T_Prof_4) /= Nlevels_Rtm)) then
+
+             Interp_Flag = .false.
+         endif
+      else
+          Interp_Flag = .false.
+      endif
 
    endif
 
@@ -870,11 +882,11 @@ subroutine GET_INTERP_PROFILES(ABI_Use_104um_Flag, Nwp_Lon_Idx,Nwp_Lat_Idx, &
         call INTERPOLATE_PROFILE(Z_Prof_1,Z_Prof_2,Z_Prof_3,Z_Prof_4,NWP_Lon_Fac,NWP_Lat_Fac,Z_Prof)
         call INTERPOLATE_PROFILE(T_Prof_1,T_Prof_2,T_Prof_3,T_Prof_4,NWP_Lon_Fac,NWP_Lat_Fac,T_Prof)
         Tsfc = INTERPOLATE_NWP(T_Prof_1(Sfc_Level_Idx_1),T_Prof_2(Sfc_Level_Idx_2),T_Prof_3(Sfc_Level_Idx_3),&
-                               T_Prof_4(Sfc_Level_Idx_3),NWP_Lon_Fac,NWP_Lat_Fac)
+                               T_Prof_4(Sfc_Level_Idx_4),NWP_Lon_Fac,NWP_Lat_Fac)
         Zsfc = INTERPOLATE_NWP(Z_Prof_1(Sfc_Level_Idx_1),Z_Prof_2(Sfc_Level_Idx_2),Z_Prof_3(Sfc_Level_Idx_3),&
-                               Z_Prof_4(Sfc_Level_Idx_3),NWP_Lon_Fac,NWP_Lat_Fac)
+                               Z_Prof_4(Sfc_Level_Idx_4),NWP_Lon_Fac,NWP_Lat_Fac)
         Psfc = INTERPOLATE_NWP(P_Std_Rtm(Sfc_Level_Idx_1),P_Std_Rtm(Sfc_Level_Idx_2),P_Std_Rtm(Sfc_Level_Idx_3),&
-                               P_Std_Rtm(Sfc_Level_Idx_3),NWP_Lon_Fac,NWP_Lat_Fac)
+                               P_Std_Rtm(Sfc_Level_Idx_4),NWP_Lon_Fac,NWP_Lat_Fac)
         
    else  !if not, use the nearest nwp grid cell
         if (ABI_Use_104um_Flag) then
diff --git a/main_src/cloud_shadow_mod.f90 b/main_src/cloud_shadow_mod.f90
deleted file mode 100644
index 987b1e1460502a03980e02e3f959d99fb5f858c3..0000000000000000000000000000000000000000
--- a/main_src/cloud_shadow_mod.f90
+++ /dev/null
@@ -1,181 +0,0 @@
-! $Header: https://svn.ssec.wisc.edu/repos/cloud_team_clavrx/trunk/main_src/cloud_shadow_mod.f90 2667 2018-04-25 11:27:03Z awalther $
-!
-!
-!
-module cloud_shadow_mod
-implicit none
-private
-
-contains
-
-   subroutine cloud_shadow_retr (  &
-        cloud_height &
-      , solar_azi &
-      , solar_zenith &
-      , lat &
-      , lon &
-      , lat_pc &
-      , lon_pc &
-      , cloud_shadow )
-      
-      implicit none 
-      real, intent(in) :: cloud_height (:,:)
-      real, intent(in) :: solar_azi (:,:)
-      real, intent(in) :: solar_zenith (:,:)
-      real, intent(in) :: lat (:,:)
-      real, intent(in) :: lon (:,:)  
-      real, intent(in) :: lat_pc (:,:)
-      real, intent(in) :: lon_pc (:,:)
-      
-      logical, intent(out) :: cloud_shadow (:,:)
-      
-      
-      real, parameter :: PI = 3.1415926535897
-      real, parameter :: DTOR = PI/180.
-      real, allocatable :: distance_km (:,:)
-      real, allocatable :: Lon_Spacing_Per_m (:,:)
-      real,parameter:: LAT_SPACING_PER_M = 8.9932e-06   ! ( = 1.0/111000.0 m )
-      
-      integer :: i,j
-      real :: delta_lon, delta_lat
-      integer :: i_dim, j_dim
-      
-     
-      
-      cloud_shadow = .false.
-      allocate ( distance_km, source = cloud_height) 
-      allocate (    Lon_Spacing_Per_m, source = cloud_height)
-      
-      distance_km = cloud_height * tan (solar_zenith * DTOR )
-      
-      Lon_Spacing_Per_m = LAT_SPACING_PER_M / cos ( Lat_pc * DTOR )
-      
-      i_dim = size ( cloud_height, dim=1)
-      j_dim = size ( cloud_height, dim=2)
-      
-         do i = 2 , i_dim - 1
-            do j = 2 ,j_dim - 1
-               if ( solar_zenith (i,j) > 85. ) cycle
-               if ( cloud_height (i,j) <= 0. ) cycle
-               
-               
-               
-               ! are there clear pixels around at all?
-               if ( count ( cloud_height (i-1:i+1,j-1:j+1) > 0. ) == 9 ) cycle
-
-               Delta_Lon = -1.* sin(Solar_azi(i,j) * DTOR ) * distance_km(i,j) * Lon_Spacing_Per_m (i,j)
-               Delta_Lat = -1. * cos(Solar_azi(i,j) * DTOR ) * distance_km(i,j) * Lat_Spacing_Per_m
-                
-               
-               call shadow_ind ( lat_pc(i,j) + delta_lat, lon_pc(i,j) + delta_lon , lat, lon , i,j, cloud_shadow) 
-              
-            end do
-         end do   
-         
-         deallocate ( distance_km)
-         deallocate ( lon_spacing_per_m)
-      
-   
-   end subroutine cloud_shadow_retr
-   
-   !  
-   !  input:
-   !     lat1,lon1 : the lon/lat values of maximal shadow
-   !
-   !     lat , lon : lon/lat coordinate array
-   !    
-   !      i , j : the cloud pixel for lat/lon array
-   !
-   !  output : 
-   !      shad_arr: logical array with same size as lat, lon
-   !
-   !
-   subroutine shadow_ind ( lat1,lon1, lat , lon , i, j, shad_arr )
-      real, intent(in) :: lat1
-      real, intent(in) :: lon1
-      real, intent(in) :: lat(:,:)
-      real, intent(in) :: lon(:,:)
-      
-      logical , intent(inout) ::shad_arr (:,:)
-      integer , intent(in) :: i
-      integer , intent(in) :: j
-      
-      real :: pixel_size_lat (2)
-      real :: pixel_size_lon (2)
-      integer :: ii,jj
-      real :: diff_lat , diff_lon
-      real :: delta_lat_ii , delta_lat_jj
-      real :: delta_lon_ii , delta_lon_jj
-      real :: long_idx,short_idx
-      integer :: short_idx_arr
-      
-      integer :: dim_1 , dim_2
-      integer :: idx_1 , idx_2
-      
-      dim_1 = size ( shad_arr, 1 )
-      dim_2 = size ( shad_arr, 2 )
-      
-      delta_lat_ii = lat(i,j) - lat(i-1,j)
-      delta_lon_ii = lon(i,j) - lon(i-1,j)
-      delta_lat_jj = lat(i,j) - lat(i,j-1)
-      delta_lon_jj = lon(i,j) - lon(i,j-1)
-     
-      diff_lat = lat1 - lat(i,j)
-      diff_lon = lon1 - lon(i,j) 
-      
-      
-      !     use of these equations:
-      ! diff_lon = ii * delta_lon_ii + jj * delta_lon_jj
-      ! diff_lat = ii * delta_lat_ii + jj * delta_lat_jj
-      !   solve for ii => 
-      
-      
-      
-      
-      ii = ( diff_lat * delta_lon_jj - diff_lon * delta_lat_jj) / &
-         (delta_lat_ii * delta_lon_jj - delta_lon_ii * delta_lat_jj)
-      
-      
-      jj = ( diff_lat - ii * delta_lat_ii) / delta_lat_jj
-     
-      ! - find longer dim
-      !
-      long_idx   = maxval (ABS([ii,jj]))
-      short_idx  = minval (ABS([ii,jj]))
-      
-      ! - this fills all pixel from lat1 to lat(i,j)/lon(i,j)  
-      do k = 1 , long_idx        
-         if (abs(ii) == long_idx ) then
-            idx_1 = i + sign(k,ii)
-            if (idx_1 < 1 .or. idx_1 > dim_1 ) cycle
-             
-            short_idx_arr = CEILING ( short_idx * sign(k,jj) / long_idx  ) 
-       
-            idx_2 = j + short_idx_arr
-            if ( idx_2 > 0 .and. idx_2 <= dim_2 ) shad_arr( idx_1 , idx_2 )   = .true.
-            idx_2 = j + short_idx_arr - 1
-            if ( idx_2 > 0 .and. idx_2 <= dim_2 ) shad_arr( idx_1 , j + short_idx_arr-1) = .true.
-         else 
-            idx_2 = j + sign(k,jj)
-          
-            if (idx_2 < 1 .or. idx_2 > dim_2 ) cycle
-            short_idx_arr = CEILING ( short_idx * sign(k,ii) / long_idx  ) 
-            
-            idx_1 = i + short_idx_arr
-           
-            
-            if ( idx_1 > 0 .and. idx_1 <= dim_1 ) shad_arr(i+short_idx_arr,idx_2 ) = .true.
-            idx_1 = i + short_idx_arr - 1
-            if ( idx_1 > 0 .and. idx_1 <= dim_1 ) shad_arr(i+short_idx_arr-1, idx_2) = .true.
-         endif      
-      end do
-      
-
-   
-   end subroutine  shadow_ind
-   
-
-end module cloud_shadow_mod
-
-
-
diff --git a/main_src/cx_eps_sg_mod.f90 b/main_src/cx_eps_sg_mod.f90
index c4b4cc5698a577dea6f5862b82c1b8baebe5e3fd..99a5f065876953994008dc4ba9021bdd483750fb 100644
--- a/main_src/cx_eps_sg_mod.f90
+++ b/main_src/cx_eps_sg_mod.f90
@@ -417,7 +417,7 @@ subroutine READ_EPS_SG_DATA(Segment_Number, Error_Status)
     Sds_Data_1d = Sds_Data_1d - MSEC_PER_DAY
   end where
 
-  Time_Msec_Day = (mod(long(Sds_Data_1d), Microsec_Per_Day)) * 1000
+  Time_Msec_Day = (mod(int(Sds_Data_1d), Microsec_Per_Day)) * 1000
   Image%Scan_Time_Ms(1:Sds_Count_2d(2)) = (/(Time_Msec_Day((k - 1) /24 + 1), k=1, Sds_Count_2d(2))/)
 
   !--- special case last segment
diff --git a/main_src/cx_isccpng_mod.f90 b/main_src/cx_isccpng_mod.f90
index 59d1dd66b7d128cbb980e8d5c577da1bd5f5b5a3..c9fcbed90f4459fc620cd300322a0fd56934b4a3 100644
--- a/main_src/cx_isccpng_mod.f90
+++ b/main_src/cx_isccpng_mod.f90
@@ -239,24 +239,22 @@ subroutine READ_ISCCPNG_DATA(Segment_Number, Error_Status)
    end where
 
    !--- convert azimuths from L1g to CLAVR-x convention
-   ! L1g is clockwise from East
    ! CLAVR-x is clockwise from North
-   ! l1g = (clavrx + 90)%360.
+   ! (old) L1g is clockwise from East
+   ! (old) l1g = (clavrx + 90)%360.
 
-!  where(Geo%Sataz /= MISSING_VALUE_REAL4)
-!     Geo%Sataz = mod(Geo%Sataz - 90.0,360.0) 
+   !--- transform not needed for demo 03/23
+!  where(Geo%Sataz > 180.0) 
+!     Geo%Sataz = Geo%Sataz - 360.0
 !  end where
-   where(Geo%Sataz > 180.0) 
-      Geo%Sataz = Geo%Sataz - 360.0
-   end where
 
 
-   where(Geo%Solaz /= MISSING_VALUE_REAL4)
-      Geo%Solaz = mod(Geo%Solaz - 90.0,360.0)
-   end where
-   where(Geo%Solaz > 180.0) 
-      Geo%Solaz = Geo%Solaz - 360.0
-   end where
+!  where(Geo%Solaz /= MISSING_VALUE_REAL4)
+!     Geo%Solaz = mod(Geo%Solaz - 90.0,360.0)
+!  end where
+!  where(Geo%Solaz > 180.0) 
+!     Geo%Solaz = Geo%Solaz - 360.0
+!  end where
 
    !--- make Relaz and Glint and Scattering angles here
    Geo%Relaz = RELATIVE_AZIMUTH (Geo%Solaz, Geo%Sataz)
@@ -317,7 +315,7 @@ subroutine READ_ISCCPNG_DATA(Segment_Number, Error_Status)
       call COMPUTE_RAD_ARRAY( Ch(28)%Bt_Toa,Ch(28)%Rad_Toa,28,MISSING_VALUE_REAL4)
    end if
    if (Sensor%Chan_On_Flag_Default(29) == sym%Yes) then
-      call READ_LAYERED_L1G(File_Prefix, File_Suffix, 'temp_08_50um', Segment_Number, WMO_L1g, Ch(29)%Bt_Toa) 
+      call READ_LAYERED_L1G(File_Prefix, File_Suffix, 'temp_08_60um', Segment_Number, WMO_L1g, Ch(29)%Bt_Toa) 
       call COMPUTE_RAD_ARRAY( Ch(29)%Bt_Toa,Ch(29)%Rad_Toa,29,MISSING_VALUE_REAL4)
    end if
    if (Sensor%Chan_On_Flag_Default(30) == sym%Yes) then
diff --git a/main_src/cx_netcdf4_mod.f90 b/main_src/cx_netcdf4_mod.f90
index 55735fd30483e058d2b01b1bc37a2bc6994a0ac4..7d404f6c6c9850fc65791495799edec88f59e3a5 100644
--- a/main_src/cx_netcdf4_mod.f90
+++ b/main_src/cx_netcdf4_mod.f90
@@ -127,6 +127,7 @@ module CX_NETCDF4_MOD
     if (status /= nf90_noerr) then
        print *, EXE_PROMPT_NAV , 'ERROR: Failed Open on NetCdf File'
        print*, EXE_PROMPT_NAV ,' filename is: ', nc_file
+       ncid = -1
        return
     endif
  end subroutine open_netcdf
diff --git a/main_src/cx_rtm_mod.f90 b/main_src/cx_rtm_mod.f90
index 4b0b31bb966a6bf785e2f0311b510b305120a49b..942d42999fc3879efcb2889137e3a0c12513aea4 100644
--- a/main_src/cx_rtm_mod.f90
+++ b/main_src/cx_rtm_mod.f90
@@ -42,7 +42,9 @@ module CX_RTM_MOD
 
   use CX_PFAAST_MOD, only: &
        COMPUTE_TRANSMISSION_PFAAST
-
+ 
+  use CLAVRX_MESSAGE_MOD, only: MESG
+ 
   type cx_rtm_input
     character (len=1024) :: ancil_path
     real ,dimension(:,:),allocatable :: p_std
@@ -69,7 +71,7 @@ contains
   
     trans_prof_rtm = -999.
     if ( inp % which_rtm == 2 ) then
-        if (first_run) print*,'Clear Sky Transmission with RTTOV'
+        if (first_run) call MESG('Clear Sky Transmission with RTTOV')
 #ifdef LIBRTTOV          
       call COMPUTE_TRANSMISSION_RTTOV   ( &
                            trim(inp % Ancil_path) &
diff --git a/main_src/cx_sfc_emissivity_mod.f90 b/main_src/cx_sfc_emissivity_mod.f90
index 5f42442fe09166eea33144672d98784ffbf29f1f..31e026e6852559ed37fc76e8c7355673f31f98c5 100644
--- a/main_src/cx_sfc_emissivity_mod.f90
+++ b/main_src/cx_sfc_emissivity_mod.f90
@@ -23,6 +23,8 @@ module cx_sfc_emissivity_mod
   
   use CX_SEA_IR_EMISS_MOD, only: GET_SEGMENT_SEA_IR_EMISS
   
+  use CLAVRX_MESSAGE_MOD, only: MESG, VERB_LEV
+  
   implicit none
   private
   public:: cx_sfc_emiss_populate_ch
@@ -61,10 +63,10 @@ contains
     select case(sfc_emiss_option)
   
     case(ETsfc_emiss_use_option_UMD)
-      if (first_run) print*,ETsfc_emiss_use_option_UMD,'SFC EMISS UMD'
+      if (first_run) call MESG('SFC EMISS UMD',  level = verb_lev % DEFAULT)
   
     case(ETsfc_emiss_use_option_RTTOV)
-      if (first_run) print*,ETsfc_emiss_use_option_RTTOV,'SFC EMISS RTTOV'
+      if (first_run) call MESG('SFC EMISS RTTOV',  level = verb_lev % DEFAULT) 
 #ifdef LIBRTTOV   
       rttov_path = trim(Ancil_Data_Dir) // "static/rttov/"
       call GET_RTTOV_EMISS(Nav%Lat, Nav%Lon, Geo%Space_Mask, rttov_path)  
@@ -73,7 +75,7 @@ contains
       stop
 #endif
     case(ETsfc_emiss_use_option_SEEBOR)
-      if (first_run)  print*,ETsfc_emiss_use_option_SEEBOR, 'SFC EMISS SEEBOR'
+      if (first_run) call MESG('SFC EMISS SEEBOR',  level = verb_lev % DEFAULT) 
       path_sfc = trim(Ancil_Data_Dir)//"static/sfc_data"
     
       do Chan_Idx = 20, Nchan_Clavrx
@@ -91,11 +93,8 @@ contains
       stop 'CRTM is not yet installed'
   
     case default
-      print*,' Surface emissivity option is wrongly set'
+      call MESG(' Surface emissivity option is wrongly set',  level = verb_lev % DEFAULT) 
     end select
-     
-   ! print*,allocated(Ch(20)%Sfc_Emiss),maxval(Ch(31)%Sfc_Emiss)
-   ! print*,allocated(Ch(31)%Sfc_Emiss)
    
     first_run = .false.
   
@@ -107,8 +106,6 @@ contains
   subroutine cx_sfc_emiss_correct_for_sfctype
     integer :: Line_Idx_Min_Segment
     
-    !if ( sfc_emiss_option .NE. ETsfc_emiss_use_option_RTTOV) then
-     
       !  now file all non-land pixels
       Line_Idx_Min_Segment = 1
       call GET_PIXEL_SFC_EMISS_FROM_SFC_TYPE(Line_Idx_Min_Segment,Image%Number_Of_Lines_Read_This_Segment) 
diff --git a/main_src/cx_vgac_mod.f90 b/main_src/cx_vgac_mod.f90
index 3f112ade189cb360f7ea7e80784541cd2087d33d..de7467ec34bc40a9fa3b0a7eaf3a090151c71c42 100644
--- a/main_src/cx_vgac_mod.f90
+++ b/main_src/cx_vgac_mod.f90
@@ -294,9 +294,9 @@ subroutine READ_VGAC_DATA(Segment_Number, Error_Status)
   endif
 
   !--- fix vza
-  do Elem_Idx = 1, Sds_Count(1)
-    Geo%Satzen(Elem_Idx,:) =   70.0*abs(Elem_Idx - 401) / 800.0
-  enddo
+  !do Elem_Idx = 1, Sds_Count(1)
+  !  Geo%Satzen(Elem_Idx,:) =   70.0*abs(Elem_Idx - 401) / 800.0
+  !enddo
 
   !--- read scanline time
   call READ_NETCDF(Ncid_Vgac, [Sds_Start(2)], [Sds_Stride(2)], [Sds_Count(2)], "time", Sds_Data_1d)
diff --git a/main_src/dcomp_derived_products_mod.f90 b/main_src/dcomp_derived_products_mod.f90
index dadd481da6024a7b884b5c968d65eef4f30394c2..e599b1712050b09f5119efdebc89165b2bb5840d 100644
--- a/main_src/dcomp_derived_products_mod.f90
+++ b/main_src/dcomp_derived_products_mod.f90
@@ -896,14 +896,14 @@ subroutine COMPUTE_DCOMP_INSOLATION(Line_Idx_Min,Num_Lines,Sun_Earth_Distance)
   line_loop: DO Line_Idx = Line_Idx_Min, Line_Idx_Max
     element_loop: DO Elem_Idx = Elem_Idx_Min, Elem_Idx_Max
 
-      !--- skip data that can not be processed
-      if (Bad_Pixel_Mask(Elem_Idx,Line_Idx) == sym%YES) cycle
-      if (Solar_Zenith_Angle > 70.0) cycle
-
       Cloud_Optical_Depth = Tau_Dcomp(Elem_Idx,Line_Idx)  
       Solar_Zenith_Angle = Geo%Solzen(Elem_Idx,Line_Idx)
       Land_Class = Sfc%Land(Elem_Idx,Line_Idx)
 
+      !--- skip data that can not be processed
+      if (Bad_Pixel_Mask(Elem_Idx,Line_Idx) == sym%YES) cycle
+      if (Solar_Zenith_Angle > 70.0) cycle
+
       !--- skip if no nwp
       if (NWP_Pix%Ozone(Elem_Idx,Line_Idx) .eqr. Missing_Value_Real4) cycle
       if (NWP_Pix%Psfc(Elem_Idx,Line_Idx) .eqr. Missing_Value_Real4) cycle
@@ -917,10 +917,6 @@ subroutine COMPUTE_DCOMP_INSOLATION(Line_Idx_Min,Num_Lines,Sun_Earth_Distance)
       !--- adjust gases for slant path
       Cosine_Solar_Zenith_Angle = cos(Geo%Solzen(Elem_Idx,Line_Idx)*DTOR)
 
-      !--- skip data that can not be processed
-      if (Bad_Pixel_Mask(Elem_Idx,Line_Idx) == sym%YES) cycle
-      if (Solar_Zenith_Angle > 70.0) cycle
-
       !--- determine surface albedo
       if (Land_Class == sym%LAND) then
          Surface_Albedo_Diffuse = ch(1)%Sfc_Ref_White_Sky(Elem_Idx,Line_Idx) / 100.0
diff --git a/main_src/dncomp_clavrx_bridge_mod.f90 b/main_src/dncomp_clavrx_bridge_mod.f90
index 4ffc4366c8e065869fc03615e65ede3fcd2bb5d4..4b2deb0988536e5a01af6dc0b46c792d308e4b03 100644
--- a/main_src/dncomp_clavrx_bridge_mod.f90
+++ b/main_src/dncomp_clavrx_bridge_mod.f90
@@ -28,6 +28,9 @@
 ! REVISION HISTORY:
 !   02/10.2013 : first version
 !   10/21/2013 : bridge to array instead to pixel-based    
+!
+!
+!
 !--------------------------------------------------------------------------------------
 module dncomp_clavrx_bridge_mod
 
@@ -100,11 +103,10 @@ module dncomp_clavrx_bridge_mod
    private
    
    logical :: first_call = .true.
-   
-   public :: set_dcomp_version              
+             
    public :: awg_cloud_dncomp_algorithm
    
-   character(len = 200) :: DCOMP_RELEASE_VERSION = 'DCOMP version 2_0_0'
+   character(len = 120) :: DCOMP_RELEASE_VERSION = 'DCOMP version 2_0_0'
   
        
 contains
@@ -113,7 +115,7 @@ contains
    !  AWG_CLOUD_DCOMP_ALGORITHM
    !    This is the DCOMP bridge from CLAVR-x
    !---------------------------------------------------------------------- 
-   subroutine awg_cloud_dncomp_algorithm (  iseg_in , nlcomp_mode,  algorithm_started )   
+   subroutine awg_cloud_dncomp_algorithm (  iseg_in , nlcomp_mode,  algorithm_started, version )   
        
       implicit none
  
@@ -123,6 +125,7 @@ contains
       
       ! - output 
       logical , intent(out) :: algorithm_started
+      character(len = 120), intent(out), optional :: version
       
       type(dcomp_rtm_type), target :: dcomp_rtm
       type(dncomp_in_type)  :: dcomp_input
@@ -175,6 +178,7 @@ contains
       ! ----- executable  --------------------------------------------------- !
       run_nlcomp = .false.
       if (present(nlcomp_mode)) run_nlcomp = nlcomp_mode
+      if ( present ( version) ) version = DCOMP_RELEASE_VERSION
             
       algorithm_started = .false.
       
@@ -226,13 +230,15 @@ contains
       ! - wmo sensor id
       dcomp_input % sensor_wmo_id = sensor % wmo_id
       dcomp_input % sun_earth_dist = sun_earth_distance
-            
+
+      dcomp_input % gas_coeff(:) % is_set = .false.
       ! - all reflectance channels
       do i = 1, 19 
         if ( dcomp_input % is_channel_on (i)) then
           dcomp_input % chn(i) %  refl  => ch(i)%ref_toa
           dcomp_input % chn(i) % alb_sfc => ch(i) % sfc_ref_white_sky
           dcomp_input % gas_coeff(i) % d = solar_rtm % tau_h2o_coef(i,:)
+          dcomp_input % gas_coeff(i) % is_set = .true.
         end if     
       end do  
       
@@ -336,7 +342,7 @@ contains
           call dcomp_input % check_input (debug_mode)
             
           call mesg ('DCOMP starts in Bridge',level = 9)
-            
+
           call dcomp_array_loop ( dcomp_input , dncomp_output , debug_mode_user = debug_mode)
             
           call mesg ('DCOMP ends in Bridge',level = 9)
@@ -407,13 +413,6 @@ contains
    end subroutine awg_cloud_dncomp_algorithm
 
 
-  
-   !---------------------------------------------------------------------------
-   ! routine to set the cvs version in a global variable to write to hdf file
-   !---------------------------------------------------------------------------
-   subroutine set_dcomp_version()
-      dcomp_version = DCOMP_RELEASE_VERSION
-   end subroutine set_dcomp_version
 
     
 end module dncomp_clavrx_bridge_mod 
diff --git a/main_src/file_tools.f90 b/main_src/file_tools.f90
index 6d010f7214699b7f061a9618f9e4c97654dde919..891b60517f41aa0f2a72718e6eb4940ed2d99436 100644
--- a/main_src/file_tools.f90
+++ b/main_src/file_tools.f90
@@ -17,8 +17,11 @@
 !-----------------------------------------------------------------------------------------------------------------------
 
 module file_tools
+  use pixel_common_mod, only: Temporary_Data_Dir
+
   implicit none
 
+
   private
 
   public :: file_basename
@@ -29,6 +32,7 @@ module file_tools
   public :: get_lun
   public :: file_nr_lines
   public :: uncompress_file
+
   
 
 contains
@@ -164,10 +168,10 @@ contains
       integer :: lun
       character(len=8) :: date
       character(len=20) :: time
-      character(len=200) :: unique_dummy_file
+      character(len=2048) :: unique_dummy_file
       
       call date_and_time(date = date, time=time)
-      unique_dummy_file = 'fort.file_search_dummy_'//trim(time)  
+      unique_dummy_file = trim(Temporary_Data_Dir)//'/fort.file_search_dummy_'//trim(time)  
 
       call system ( 'rm -f '//trim(unique_dummy_file))
       lun = getlun()
diff --git a/main_src/fy3d_read_module.f90 b/main_src/fy3d_read_module.f90
index bcace88e5d58573f6759a85b3b3786d3714aff8a..7c0ef57626127dffb35ca3c93e7cda1f7ab09c65 100644
--- a/main_src/fy3d_read_module.f90
+++ b/main_src/fy3d_read_module.f90
@@ -161,6 +161,7 @@ subroutine READ_FY3D_DATA (Segment_Number, GEO1K_File, Error_Out)
       integer (HSIZE_T), dimension(2)         :: dims_geo2
       integer (HID_T)  :: file_id              ! file id 
       integer (HID_T) :: sds_id_var           ! sds id all variables
+      real, parameter :: Missing_Local = 999.9
       !real(kind=4) :: H5T_NATIVE_REAL
 
       Error_Out = 0
@@ -187,17 +188,20 @@ subroutine READ_FY3D_DATA (Segment_Number, GEO1K_File, Error_Out)
         else
            call H5READDATASET (trim(Image%Level1b_Path)//trim(GEO1K_File), &
                       trim(Setname_Geo_List(I_Geo)), Offset_band, Dim_Seg, R2d_Buffer)
-           if (Scaled_Geo(I_Geo) .eq. 1) then
+        !   if (Scaled_Geo(I_Geo) .eq. 1) then
               call H5READATTRIBUTE (trim(Image%Level1b_Path)//trim(GEO1K_File), &
                       trim(Setname_Geo_List(I_Geo)//'/Slope'), Scale_Factor)
               call H5READATTRIBUTE (trim(Image%Level1b_Path)//trim(GEO1K_File), &
                       trim(Setname_Geo_List(I_Geo)//'/Intercept'), Add_Offset)
               call H5READATTRIBUTE (trim(Image%Level1b_Path)//trim(GEO1K_File), &
                       trim(Setname_Geo_List(I_Geo)//'/FillValue'), Fill_Value)
-              where ( R2d_Buffer .ne. Fill_Value)
+              where ( R2d_Buffer .ne. Fill_Value .and. R2d_Buffer .ne. Missing_Local)
                  R2d_Buffer = (R2d_Buffer * Scale_Factor) + Add_Offset
               endwhere
-           endif
+              where ( R2d_Buffer .eq. Fill_Value .or. R2d_Buffer .eq. Missing_Local)
+                 R2d_Buffer = Missing_Value_Real4 
+              endwhere
+        !  endif
         endif
 
         ! save read data to output in correct format
diff --git a/main_src/goes_mod.f90 b/main_src/goes_mod.f90
index 556197376cdfc6393370c98dc21e192edb07f65b..40724839f6f814d7d5c8f98f35f772cb499acfac 100644
--- a/main_src/goes_mod.f90
+++ b/main_src/goes_mod.f90
@@ -89,6 +89,9 @@ use CALIBRATION_CONSTANTS_MOD, only: &
       , glint_angle &
       , scattering_angle &
       , possol
+      
+    use CLAVRX_MESSAGE_MOD, only: mesg, verb_lev   
+      
    implicit none
    private
 
@@ -107,7 +110,7 @@ use CALIBRATION_CONSTANTS_MOD, only: &
          DARK_COMPOSITE_CLOUD_MASK
 
 
-   integer(kind=int4), public, parameter:: Goes_Xstride = 1    ! goes is oversampled by 50% in x
+   integer(kind=int4), public, parameter:: Goes_Xstride = 2    ! goes is oversampled by 50% in x
    integer(kind=int4), public, parameter:: Goes_Sndr_Xstride = 1
    integer(kind=int4), private, parameter:: Num_4km_Scans_Goes_Fd = 2704 
    integer(kind=int4), private, parameter:: Num_4km_Elem_Goes_Fd = 5200 
@@ -1390,11 +1393,9 @@ end subroutine READ_GOES_SNDR
 
    open(unit=1,file=trim(filename),form="unformatted",access="direct",recl=4,status="old",action="read")
 
-        read (unit=1, rec = 1) AREAstr%area_Status
-        read (unit=1, rec = 2) AREAstr%Version_Num
+        read (unit=1, rec = 1, err=404) AREAstr%area_Status
+        read (unit=1, rec = 2, err=404) AREAstr%Version_Num
         if (AREAstr%Version_Num .ne. 4) then
-!          print *, "Area file cannot be read"  ! byte swapping may cause this
-!          AREAstr%swap_bytes = 1
            return
         endif
         read (unit=1, rec = 3) AREAstr%Sat_Id_Num
@@ -1550,14 +1551,19 @@ end subroutine READ_GOES_SNDR
         enddo
 
 
-   close(unit=1)
-
    !--- compute scan rate for future use
    Num_Elements_This_image =  int(AREAstr%Num_Elem / Goes_Xstride) + 1
    num_Scans_This_image = AREAstr%Num_Line
    Scan_rate = real((Num_Elements_This_image)/ real(Num_4km_Elem_Goes_Fd/Goes_Xstride)) * &
                real((num_Scans_This_image) / real(Num_4km_Scans_Goes_Fd)) * &
                real(time_for_fd_Scan_goes) / real(num_Scans_This_image)
+    close(unit=1)
+   return
+
+404 close(unit=1)
+    print *, "Error reading GOES Headers. File is probably empty"
+    stop 4
+    
 
  ! print *, "elements = ", Num_Elements_This_image, Num_4km_Elem_Goes_Fd/Goes_Xstride
  ! print *, "lines = ", num_Scans_This_image, Num_4km_Scans_Goes_Fd
@@ -3497,7 +3503,7 @@ subroutine READ_DARK_COMPOSITE_COUNTS(Segment_Number,Xstride,Dark_Composite_File
 
    !--- check to see if a dark composite file exists for this image
    if (trim(Dark_Composite_Filename) == "no_file" .and. Segment_Number == 1) then
-          print *, "No Dark Composite Available for this Image"
+          call MESG( "No Dark Composite Available for this Image",level=verb_lev % DEFAULT )
           return
    endif
 
diff --git a/main_src/land_sfc_properties_mod.f90 b/main_src/land_sfc_properties_mod.f90
index 3825f7a7ed0d7824da83604aa218cc7892c27764..e293cbfd4d62a1a75b52e038eba66bf67de6cf5d 100644
--- a/main_src/land_sfc_properties_mod.f90
+++ b/main_src/land_sfc_properties_mod.f90
@@ -225,9 +225,11 @@ module LAND_SFC_PROPERTIES_MOD
  
     INTEGER:: Istatus 
 
+    where(space_mask)
+        land = missing_value_int1
+    endwhere
     
     if (ALL(space_mask)) then
-      land = missing_value_int1
       return
     end if
   
@@ -384,9 +386,11 @@ module LAND_SFC_PROPERTIES_MOD
     INTEGER:: Istatus
 
     ! - executable
+    where(space_mask)
+        land = missing_value_int2
+    endwhere
     
     if ( ALL( space_mask)) then
-      land = missing_value_int2
       return
     end if
  
diff --git a/main_src/level2_mod.f90 b/main_src/level2_mod.f90
index 80634013eca8c0f7efe613d27aff989597459955..5ed94f3c49ec66ac9406cf7179cfc062432c6744 100644
--- a/main_src/level2_mod.f90
+++ b/main_src/level2_mod.f90
@@ -188,6 +188,15 @@ subroutine SETUP_LEVEL2_SDS_INFO()
       Sds_Info(Var_Idx)%Add_Offset = 1.0
       Sds_Info(Var_Idx)%Actual_Range = [0,0]
 
+      Sds_Info(Var_Idx)%Sds_Data_1d_I1 => null()
+      Sds_Info(Var_Idx)%Sds_Data_1d_I4 => null()
+      Sds_Info(Var_Idx)%Sds_Data_1d_R4 => null()
+      Sds_Info(Var_Idx)%Sds_Data_2d_I1 => null()
+      Sds_Info(Var_Idx)%Sds_Data_2d_I2 => null()
+      Sds_Info(Var_Idx)%Sds_Data_2d_I4 => null()
+      Sds_Info(Var_Idx)%Sds_Data_2d_R4 => null()
+      Sds_Info(Var_Idx)%Sds_Data_3d_I1 => null()
+
       select case (trim(Sds_Info(Var_Idx)%Sds_Name))
         
          !----------------------------------------------------------------------------------------------------
@@ -1656,6 +1665,12 @@ subroutine SETUP_LEVEL2_SDS_INFO()
             Sds_Info(Var_Idx)%Long_Name = "Effective Cloud Top Pressure from ACHA"
             Sds_Info(Var_Idx)%Units = "hPa"
             if (allocated(ACHA%Pc_Eff)) Sds_Info(Var_Idx)%Sds_Data_2d_R4 => ACHA%Pc_Eff
+         case("cld_press_lower_acha")
+            Sds_Info(Var_Idx)%Standard_Name = "air_pressure_at_effective_cloud_top_lower_layer"
+            Sds_Info(Var_Idx)%Actual_Range = [50.0,1100.0]
+            Sds_Info(Var_Idx)%Long_Name = "Effective Cloud Top Pressure for lower layer from ACHA"
+            Sds_Info(Var_Idx)%Units = "hPa"
+            if (allocated(ACHA%Lower_Pc)) Sds_Info(Var_Idx)%Sds_Data_2d_R4 => ACHA%Lower_Pc
          case("cld_press_uncer_acha")
             Sds_Info(Var_Idx)%Standard_Name = "cld_press_uncer_acha"
             Sds_Info(Var_Idx)%Actual_Range = [0.0,1000.0]
@@ -2394,7 +2409,7 @@ subroutine SETUP_LEVEL2_SDS_INFO()
          case("cloud_transmission_0_65um_nom")
             Sds_Info(Var_Idx)%Standard_Name = "cloud_transmission_0_65um_nom"
             Sds_Info(Var_Idx)%Actual_Range = [0.0,1.0]
-            Sds_Info(Var_Idx)%Long_Name = "cloud albedo at 0.65 microns nominal from DCOMP"
+            Sds_Info(Var_Idx)%Long_Name = "cloud transmission at 0.65 microns nominal from DCOMP"
             Sds_Info(Var_Idx)%Units = "none"
             if (allocated(Cloud_063um_Transmission_Solar)) Sds_Info(Var_Idx)%Sds_Data_2d_R4 => Cloud_063um_Transmission_Solar
 
@@ -2651,6 +2666,7 @@ subroutine SETUP_LEVEL2_SDS_INFO()
             Sds_Info(Var_Idx)%Actual_Range = [0.0,1200.0]
             Sds_Info(Var_Idx)%Long_Name = "Cloud Water Path from NWP Ancillary Data"
             Sds_Info(Var_Idx)%Units = "g m-2"
+            if (allocated(NWP_PIX%Cwp)) Sds_Info(Var_Idx)%Sds_Data_2d_R4 => NWP_PIX%Cwp
          case("cld_iwp_nwp")
             Sds_Info(Var_Idx)%Standard_Name = "cld_iwp_nwp"
             Sds_Info(Var_Idx)%Actual_Range = [0.0,1200.0]
@@ -3026,7 +3042,7 @@ subroutine SETUP_LEVEL2_SDS_INFO()
              
              
          case default
-            print *, "Unknown Level2 Variable ==> ", trim(Sds_Info(Var_Idx)%Sds_Name)
+            call MESG ( "Unknown Level2 Variable ==> "//trim(Sds_Info(Var_Idx)%Sds_Name), level=verb_lev % ERROR )
                
       end select
    enddo
@@ -4918,7 +4934,7 @@ end subroutine WRITE_SDS_NETCDF
       if (index(Sds_Info(Var_Idx)%Sds_Name, 'refl_sfc_white_sky_') == 1 .and. &
           index(Sds_Info(Var_Idx)%Sds_Name, '_nom') >0) then 
          Sds_Info(Var_Idx)%Actual_Range = [-20.0,100.0]
-         Sds_Info(Var_Idx)%Level2_Data_Type_HDF = DFNT_INT8
+         Sds_Info(Var_Idx)%Level2_Data_Type_HDF = DFNT_INT16
          Sds_Info(Var_Idx)%Units =  "%"
          Sds_Info(Var_Idx)%Standard_Name =  "white_sky_surface_reflectance"
          Sds_Info(Var_Idx)%Long_Name =  "surface reflectance for white skies at nominal wavelength of"
diff --git a/main_src/modis_mod.f90 b/main_src/modis_mod.f90
index 4c7f33c6b0bd8fd9af7767f9ef37124fe68a02f9..e28c906fc732f63383daa1892851c820f1024fbc 100644
--- a/main_src/modis_mod.f90
+++ b/main_src/modis_mod.f90
@@ -71,13 +71,9 @@ module MODIS_MOD
                 
         use cx_date_time_tools_mod,only: julian         
  
-        use PLANCK_MOD , only: &
-                convert_radiance &
-                , compute_bt_array
+        use PLANCK_MOD , only: CONVERT_RADIANCE, COMPUTE_BT_ARRAY
 
-        use VIEWING_GEOMETRY_MOD, only: &
-                glint_angle &
-                , scattering_angle
+        use VIEWING_GEOMETRY_MOD, only: GLINT_ANGLE, SCATTERING_ANGLE
  
         use FILE_TOOLS, only: &
                 file_search
diff --git a/main_src/mvcm_read_mod.f90 b/main_src/mvcm_read_mod.f90
index 5ddab5a8a5935de21d421fc7ac1149c4c3cd6c00..b396deb878f4418cd9e5ebde8b1eda7538ed4900 100644
--- a/main_src/mvcm_read_mod.f90
+++ b/main_src/mvcm_read_mod.f90
@@ -209,7 +209,52 @@ module MVCM_READ_MOD
 
   endif
 
-  !--- SIPS IFF MODIS Level1b
+  !--- SIPS AHI GEO
+  if (index(Image%Level1b_Name,'HS_H08') == 1) then
+    !0        1         2         3         4
+    !12345678901234567890123456789012345678901234567890
+    !HS_H08_20160502_0200_B01_FLDK_R10_S0110.DAT
+    !MVCMGEO.HIM08.20160502.0200_ahi_v1_0_3_REFERENCE_FD.nc
+    Search_String = 'MVCMGEO.HIM08.'//Image%Level1b_Name(8:15)//'.'//Image%Level1b_Name(17:20)//'*.nc'
+
+    Files => FILE_SEARCH(trim(Image%Level1b_Path),trim(Search_String),count=Num_Files)
+
+    if (Num_Files == 0 .or. Num_Files > 1) then
+        print *, EXE_PROMPT, MVCM_PROMPT, "MVCM File Not Found, "
+        return
+    endif
+
+    Image%Auxiliary_Cloud_Mask_File_Name = Files(1)
+
+    if (Seg_Idx == 1) &
+       print *, EXE_PROMPT, MVCM_PROMPT, "SIPS HIM08 MVCM File Found, ", &
+            trim(Image%Auxiliary_Cloud_Mask_File_Name)
+
+  endif
+
+  !--- SIPS ABI GEO
+  if (index(Image%Level1b_Name,'OR_ABI') == 1) then
+    !0        1         2         3         4
+    !12345678901234567890123456789012345678901234567890
+    !OR_ABI-L1b-RadF-M6C01_G16_s20213651900205_e20213651909513_c20213651909561.nc
+    !MVCMGEO.G16ABI.2021365.1900_abi_v1_0_0_REFERENCE_FD.nc
+    Search_String = 'MVCMGEO.G*'//Image%Level1b_Name(28:34)//'.'//Image%Level1b_Name(35:38)//'*.nc'
+
+    Files => FILE_SEARCH(trim(Image%Level1b_Path),trim(Search_String),count=Num_Files)
+
+    if (Num_Files == 0 .or. Num_Files > 1) then
+        print *, EXE_PROMPT, MVCM_PROMPT, "MVCM File Not Found, "
+        return
+    endif
+
+    Image%Auxiliary_Cloud_Mask_File_Name = Files(1)
+
+    if (Seg_Idx == 1) &
+       print *, EXE_PROMPT, MVCM_PROMPT, "SIPS ABI MVCM File Found, ", &
+            trim(Image%Auxiliary_Cloud_Mask_File_Name)
+
+  endif
+
 
   
   Files => null() 
diff --git a/main_src/pixel_common_mod.f90 b/main_src/pixel_common_mod.f90
index fff35e155bfd43ca379a26badef852b24f80dc04..17aed73a154fd77491caa096433694e5374812a3 100644
--- a/main_src/pixel_common_mod.f90
+++ b/main_src/pixel_common_mod.f90
@@ -146,9 +146,6 @@ module PIXEL_COMMON_MOD
 
   use CLASS_TIME_DATE, only: &
       date_type
-  
-!-- can not use this module due to Makefile precedence issues
-! use CLAVRX_MESSAGE_MOD, only: MESG, VERB_LEV
 
   implicit none
   private
@@ -280,7 +277,6 @@ module PIXEL_COMMON_MOD
      real (kind=real4), dimension(:,:), allocatable:: Lunaz
      real (kind=real4), dimension(:,:), allocatable:: LunRelaz
      real (kind=real4), dimension(:,:), allocatable:: LunFrac
-      !integer (kind=int1), dimension(:,:), allocatable:: Space_Mask
       logical, dimension(:,:), allocatable:: Space_Mask
      double precision:: Moon_Phase_Angle
      real (kind=real4):: Moon_Illum_Frac
@@ -922,12 +918,6 @@ module PIXEL_COMMON_MOD
   !--- pixel level cloud props
 
      !--- direct heights
-!    real (kind=real4), dimension(:,:), allocatable, public, save, target:: Pc_EM
-!    real (kind=real4), dimension(:,:), allocatable, public, save, target:: Tc_EM
-!    real (kind=real4), dimension(:,:), allocatable, public, save, target:: Zc_EM
-!    real (kind=real4), dimension(:,:), allocatable, public, save, target:: Ec_EM
-!    real (kind=real4), dimension(:,:), allocatable, public, save, target:: N_EM
-!    real (kind=real4), dimension(:,:), allocatable, public, save, target:: Res_EM
      real (kind=real4), dimension(:,:), allocatable, public, save, target:: Pc_H2O
      real (kind=real4), dimension(:,:), allocatable, public, save, target:: Tc_H2O
      real (kind=real4), dimension(:,:), allocatable, public, save, target:: Zc_H2O
@@ -1233,10 +1223,7 @@ subroutine CREATE_PIXEL_ARRAYS()
 
         case default
 
-           print *, "CLAVR-x: Arrays not allocated for unknown channel = ",idx 
-
-!--- can not use clavrx_message_mod in this routine
-!          call MESG ("Arrays not allocated for unknown channel = ",idx) 
+         print *, "CLAVR-x: Arrays not allocated for unknown channel = ",idx 
 
         end select
 
@@ -1335,7 +1322,6 @@ subroutine CREATE_PIXEL_ARRAYS()
   call  CREATE_REF_CHANNEL_ARRAYS(dim1, dim2)
   call  CREATE_THERM_CHANNEL_ARRAYS(dim1, dim2)
   call  CREATE_EXTRA_CHANNEL_ARRAYS(dim1, dim2)
-! call  CREATE_LUNAR_ARRAYS(dim1, dim2)
   call  CREATE_BTD_ARRAYS(dim1, dim2)
   call  CREATE_ACHA_ARRAYS(dim1, dim2)
   call  CREATE_BASE_ARRAYS(dim1, dim2)
@@ -1483,7 +1469,6 @@ subroutine DESTROY_PIXEL_ARRAYS()
   call DESTROY_REF_CHANNEL_ARRAYS()
   call DESTROY_THERM_CHANNEL_ARRAYS()
   call DESTROY_EXTRA_CHANNEL_ARRAYS()
-! call DESTROY_LUNAR_ARRAYS()
   call DESTROY_BTD_ARRAYS()
   call DESTROY_ACHA_ARRAYS()
   call DESTROY_BASE_ARRAYS()
@@ -1502,7 +1487,7 @@ subroutine DESTROY_PIXEL_ARRAYS()
   call DESTROY_NUCAPS_ARRAYS()
   call DESTROY_CALIOP_ARRAYS()
   call DESTROY_L1G_ARRAYS()
-
+ 
   deallocate(Sst_Anal)
   deallocate(Sst_Anal_Err)
   deallocate(Sst_Anal_Cice)
@@ -1510,7 +1495,6 @@ subroutine DESTROY_PIXEL_ARRAYS()
 
   deallocate(Solar_Contamination_Mask)
  
-
   !--- nwp and rtm indices
   if (allocated(Zen_Idx_Rtm)) deallocate(Zen_Idx_Rtm)
 
@@ -3312,12 +3296,6 @@ subroutine CREATE_CLOUD_PROD_ARRAYS(dim1,dim2)
   allocate(Zc_Opaque_Cloud(dim1,dim2))
   allocate(Tc_Opaque_Cloud(dim1,dim2))
   if (Cld_Flag == sym%YES) then
-!   allocate(Pc_EM(dim1,dim2))
-!   allocate(Tc_EM(dim1,dim2))
-!   allocate(Zc_EM(dim1,dim2))
-!   allocate(Ec_EM(dim1,dim2))
-!   allocate(N_EM(dim1,dim2))
-!   allocate(Res_EM(dim1,dim2))
     allocate(Pc_H2O(dim1,dim2))
     allocate(Tc_H2O(dim1,dim2))
     allocate(Zc_H2O(dim1,dim2))
@@ -3345,12 +3323,6 @@ subroutine RESET_CLOUD_PROD_ARRAYS()
   Zc_Opaque_Cloud = Missing_Value_Real4
   Tc_Opaque_Cloud = Missing_Value_Real4
   if (Cld_Flag == sym%YES) then
-!    Pc_EM = Missing_Value_Real4
-!    Tc_EM = Missing_Value_Real4
-!    Zc_EM = Missing_Value_Real4
-!    Ec_EM = Missing_Value_Real4
-!    N_EM = Missing_Value_Real4
-!    Res_EM = Missing_Value_Real4
      Pc_H2O = Missing_Value_Real4
      Tc_H2O = Missing_Value_Real4
      Zc_H2O = Missing_Value_Real4
@@ -3378,12 +3350,6 @@ subroutine DESTROY_CLOUD_PROD_ARRAYS()
   deallocate(Zc_Opaque_Cloud)
   deallocate(Tc_Opaque_Cloud)
   if (Cld_Flag == sym%YES) then
-!    deallocate(Pc_EM)
-!    deallocate(Tc_EM)
-!    deallocate(Zc_EM)
-!    deallocate(Ec_EM)
-!    deallocate(N_EM)
-!    deallocate(Res_EM)
      deallocate(Pc_H2O)
      deallocate(Tc_H2O)
      deallocate(Zc_H2O)
diff --git a/main_src/pixel_routines_mod.f90 b/main_src/pixel_routines_mod.f90
index 3341fb21c31c95aaa42999d0b5b1309e79d62264..fef2964ffc714b56cc8984f2615e72ddd12036f9 100644
--- a/main_src/pixel_routines_mod.f90
+++ b/main_src/pixel_routines_mod.f90
@@ -40,7 +40,7 @@ module PIXEL_ROUTINES_MOD
  use CONSTANTS_MOD, only: &
   missing_value_real4 &
     , sym , int1, int2, exe_prompt  &
-    , real4, missing_value_int1, int4, mixed_obs_type, NChan_Clavrx, SOLAR_OBS_TYPE &
+    , real4, missing_value_int1, missing_value_int2, int4, mixed_obs_type, NChan_Clavrx, SOLAR_OBS_TYPE &
     , THERMAL_OBS_TYPE, PI, terminator_reflectance_sol_zen_thresh, DTOR
  
  use ALGORITHM_CONSTANTS_MOD,only: glint_zen_thresh, Ref_Sfc_White_Sky_Water
@@ -99,6 +99,8 @@ module PIXEL_ROUTINES_MOD
  
  use ECM2_CLOUD_MASK_CLAVRX_BRIDGE, only: COMPUTE_TYPE_FROM_PHASE
  
+ use CLAVRX_MESSAGE_MOD, only: MESG, verb_lev
+ 
 !use RT_UTILITIES_MOD, only: COMPUTE_CLEAR_SKY_SCATTER
 
  implicit none
@@ -745,8 +747,10 @@ end subroutine QUALITY_CONTROL_ANCILLARY_DATA
             tsfc_onechannel = .false.
   end if
     
-  if ( first_segment) write(*,*) 'tsfc_onechannel = ',  tsfc_onechannel
-  
+  if ( first_segment)  then
+    if (tsfc_onechannel)  call MESG ('tsfc_onechannel TRUE', level = verb_lev %DEFAULT)
+    if ( .not. tsfc_onechannel)  call MESG ('tsfc_onechannel FALSE', level = verb_lev %DEFAULT)
+  end if
   !--- initialize
   Tsfc_Retrieved = Missing_Value_Real4
   Trad_Retrieved = Missing_Value_Real4
@@ -759,7 +763,7 @@ end subroutine QUALITY_CONTROL_ANCILLARY_DATA
     end if
     
   else if (tsfc_onechannel) then
-    if ( first_segment)  print*, 'LST Retrieval with single channel method '
+    if ( first_segment)  call MESG ('LST Retrieval with single channel method ', level = verb_lev %DEFAULT)
     !--- if no ch31, abort
     if (Sensor%Chan_On_Flag_Default(31) == sym%NO) then
       return 
@@ -1397,7 +1401,9 @@ subroutine READ_MODIS_WHITE_SKY_ALBEDO(modis_alb_id,modis_alb_str,Ref_Sfc_White_
     CALL READ_LAND_SFC_HDF(modis_alb_id, modis_alb_str, Nav%Lat, &
                           Nav%Lon, Geo%Space_Mask, raw)
                        
-    Ref_Sfc_White_Sky = 0.1* raw
+    where(raw /= Missing_Value_Int2)
+        Ref_Sfc_White_Sky = 0.1* raw
+    endwhere
 
 !---->    Ref_Sfc_White_Sky = 1.10*Ref_Sfc_White_Sky   !EMPIRICAL ADJUSTMENT
 
@@ -1503,6 +1509,7 @@ subroutine MODIFY_LAND_CLASS_WITH_NDVI(Line_Idx_Min,Num_Lines)
   if (Sensor%WMO_ID == 174) return
   if (Sensor%WMO_ID == 270) return
   if (Sensor%WMO_ID == 271) return
+  if (Sensor%WMO_ID == 272) return
   if (Sensor%WMO_ID == 530) return
 
   Elem_Idx_Min = 1
diff --git a/main_src/process_clavrx.f90 b/main_src/process_clavrx.f90
index b8ef377369616668dae98d687f2ba739b44355c0..f763b38c1cb5ba271f271403960f44e272fa6efe 100644
--- a/main_src/process_clavrx.f90
+++ b/main_src/process_clavrx.f90
@@ -165,13 +165,7 @@
   
   use CX_REAL_BOOLEAN_MOD 
   
-   use CONSTANTS_MOD !, only: &
-      !  int4, real4 &
-      !  , int1, int2 &
-      !   , missing_value_int4 &
-      !   , sym, DTOR &
-      !  ,  MODIS_ALB_0_86_SDS_NAME &
-      !  ,  MODIS_ALB_0_66_SDS_NAME
+   use CONSTANTS_MOD 
       
    use CX_DATE_TIME_TOOLS_MOD, only: &
       LEAP_YEAR_FCT &
@@ -211,8 +205,7 @@
       COMPUTE_LUNAR_REFLECTANCE
    
    use DNCOMP_CLAVRX_BRIDGE_MOD, only: &
-      AWG_CLOUD_DNCOMP_ALGORITHM &
-      , set_dcomp_version   
+      AWG_CLOUD_DNCOMP_ALGORITHM
   
    use FILE_TOOLS, only: FILE_TEST, GETLUN
 
@@ -296,9 +289,6 @@
     , NUCAPS &
     , CLDMASK &
     , NWP_PIX &
-    !, Diag_Pix_Array_1 &
-    !, Diag_Pix_Array_2 &
-    !, Diag_Pix_Array_3 &
       ! - routines
     , Destroy_Pixel_Arrays &
     , Create_Pixel_Arrays &
@@ -515,6 +505,8 @@
        SET_ABI_USE_104um_FLAG
 
    use CX_VGAC_MOD, only:
+
+   use cleanup, only: cleanup_tempdir
    
    implicit none 
   
@@ -612,8 +604,8 @@
    integer :: narg,cptArg
    character(len=30) :: arg_name
 
-   !real, parameter, dimension(3):: Dnb_Coef = [-0.373685,0.977945,-0.000261637]
    real, parameter, dimension(3):: Dnb_Coef = [-0.118767,0.962452,-0.000144502]
+   integer*8, parameter :: SIG_ERR = -1
 
 
    !***********************************************************************
@@ -638,7 +630,7 @@
       end do
     end if
     
-    
+
    call MESG( '<----------  Start of CLAVRXORB ----------> $Id: process_clavrx.f90 4129 2021-04-19 19:30:41Z heidinger $' &
       , level = verb_lev % DEFAULT , color = 4 ) 
    write(string,*)"Compiled on ",__DATE__//' '//__TIME__
@@ -670,6 +662,21 @@
 
    !--- make directory for temporary files created during this run
    call system("mkdir "//trim(Temporary_Data_Dir))
+   ! SIGTERM
+
+   CALL SIGNAL(15, cleanup_tempdir, ierror)
+   if(ierror .ne. 0) then
+     print*, 'Error setting up SIGTERM handler'
+     stop 124
+   endif
+   ! SIGINT
+   CALL SIGNAL(2, cleanup_tempdir, ierror)
+   if(ierror .eq. SIG_ERR) then
+     print*, 'Error setting up SIGINT handler'
+     stop 125
+   endif
+
+    
 
    !*************************************************************************
    ! Marker: Open high spatial resolution ancillary data files
@@ -737,12 +744,14 @@
             Erstat = 8
             call MESG( "ERROR: Problem reading orbit names from control file" &
                , level = verb_lev % QUIET , color = 1 ) 
+            call cleanup_tempdir()
             stop 8
          else
             !-- end of orbits
             if (File_Number == 1) then
                call MESG( "ERROR: No orbits to process, stopping" , level = verb_lev % QUIET , color = 1 ) 
-               stop
+               call cleanup_tempdir()
+               stop 404
             endif
             exit
          endif
@@ -896,12 +905,6 @@
       ! Marker:  READ IN SENSOR-SPECIFIC CONSTANTS
       !*************************************************************************
 
-      !if (Sensor%Wmo_Id == 271) call SET_ABI_USE_104um_FLAG(ABI_Use_104um_Flag, File_Number)
-
-      !--- DEBUG ONLY 
-      !ABI_Use_104um_Flag = .true.
-      !--- DEBUG ONLY 
-
       !*************************************************************************
       ! Marker:  Open non-static high spatial resolution ancillary data
       !*************************************************************************
@@ -1574,7 +1577,7 @@
 
                !--- Dust Mask
                if (Use_ABI_Dust == sym%YES) then
-                  if (Sensor%WMO_Id == 270 .or. Sensor%WMO_Id == 271) then
+                  if (Sensor%WMO_Id == 270 .or. Sensor%WMO_Id == 271 .or. Sensor%WMO_Id == 272) then
                     CLDMASK%Dust_Mask = sym%NO
                     call GET_SEGMENT_ABI_DUST_PROB() 
                   endif
@@ -1746,8 +1749,8 @@
              
                if (DCOMP_Mode > 0) then
            
-                  call AWG_CLOUD_DNCOMP_ALGORITHM( Iseg_In = Segment_Number , algorithm_started = dcomp_run)
-                  call SET_DCOMP_VERSION()
+                  call AWG_CLOUD_DNCOMP_ALGORITHM( Iseg_In = Segment_Number , algorithm_started = dcomp_run, version = dcomp_version )
+                 
 
                  !call COMPUTE_SUBPIXEL_MAX_MIN_COD()
                     
@@ -1924,7 +1927,6 @@
       call MESG ( "Finished Processing All Orbital Segments")
       call MESG ( " ")
 
-   
       !*************************************************************************
       !   Marker: Close output pixel-level files
       !*************************************************************************
@@ -1945,6 +1947,7 @@
             call MESG("DESTROY RTTOV_EMIS ")
        endif
 #endif      
+
       !*************************************************************************
       !Marker: Deallocate remaining arrays
       !*************************************************************************
diff --git a/main_src/rt_utilities_mod.f90 b/main_src/rt_utilities_mod.f90
index e84831cf5d45eff8031da36804d2bcf2216c3567..8e699f1f01b0be186a5cb750516f3ed8cd77e5ea 100644
--- a/main_src/rt_utilities_mod.f90
+++ b/main_src/rt_utilities_mod.f90
@@ -128,7 +128,7 @@ module RT_UTILITIES_MOD
        SOLAR_CH20_NU
       
    use RTM_COMMON_MOD, only: &
-       Nlevels_Rtm &
+       NLEVELS_RTM &
       , Rtm &
       , P_Std_Rtm &
       , T_Std_Rtm &
@@ -162,7 +162,7 @@ module RT_UTILITIES_MOD
    public::  GET_PIXEL_NWP_RTM 
            
             
-    integer, parameter, public:: Rtm_Nvzen = 50       
+    integer, parameter, public:: RTM_NVZEN = 50       
 
     integer, parameter :: Chan_Idx_Min = 1
     integer, parameter :: Chan_Idx_Max = 44
@@ -217,8 +217,8 @@ contains
       real:: Opd_Layer
       real:: Trans_Layer
       real:: Trans_Total
-      real :: trans_local (101)
-      real :: t_prof_local(101)
+      real :: trans_local (NLEVELS_RTM)
+      real :: t_prof_local(NLEVELS_RTM)
       
 
       !--- upwelling profiles
@@ -307,6 +307,8 @@ contains
    !  Called in process_clavrx
    !      CHANGED to RTTOV Sep 2020
    !
+   !   This is called in 
+   !
    !
    !====================================================================
    subroutine GET_PIXEL_NWP_RTM(Line_Idx_Min,Num_Lines)
@@ -333,7 +335,7 @@ contains
       integer :: n_val_pixels
       integer :: ii_pixel
       real :: geo_2way_term
-      integer :: cnt
+      
       
       real, dimension(NLevels_Rtm) ::  &
                     T_Prof_Rtm, &
@@ -342,8 +344,29 @@ contains
                      Ozmr_Prof_Rtm, &
                      Tpw_Prof_Rtm
       
-   
-      cnt = 0
+      
+      
+      logical, allocatable :: is_valid_pixel(:,:)
+      
+      
+      ! ===================   EXECUTABLE START ======================================
+      
+      allocate ( is_valid_pixel (1:Image%Number_Of_Elements,Line_Idx_Min: (Num_Lines + Line_Idx_Min - 1))) 
+      ! make a check if we have at least one pixel which is not bad or space
+      is_valid_pixel = Bad_Pixel_Mask .NE. sym%YES .and. .not. Geo%Space_Mask 
+      
+    
+      
+      if ( .not. ANY ( is_valid_pixel)) then 
+        
+         !call MESG('only bad pixels at RTM entree point ...',level = verb_lev %DEFAULT)
+         return
+      
+      end if
+      
+      
+      
+      
       ! - find RTM pixels from NWP and allocate rtm (lon,lat) % d (zen) )
       !  these pixels are the used for RTTOV
       !--- loop over pixels in segment
@@ -352,7 +375,7 @@ contains
             
             if (Bad_Pixel_Mask(Elem_Idx,Line_Idx) == sym%YES) cycle
             if (Geo%Space_Mask(Elem_Idx,Line_Idx) ) cycle
-            
+           
             !--- compute viewing zenith bin for Rtm calculation
             Zen_Idx_Rtm(Elem_Idx,Line_Idx) =  &
               max(1,min(Rtm_Nvzen,ceiling(Geo%Coszen(Elem_Idx,Line_Idx)/Rtm_Vza_Binsize)))
@@ -448,24 +471,36 @@ contains
       rtm_inp % ancil_path = trim(Ancil_Data_Dir)
       n_val_pixels = 0 ! counter
       nwp_size_arr = shape(rtm)
+     
       do x_nwp = 1, nwp_size_arr(1)
         do y_nwp =1, nwp_size_arr(2)
           if ( rtm(x_nwp,y_nwp) % is_allocated ) then
-              
-              do z_nwp =1,50 
+             
+              do z_nwp =1,RTM_NVZEN
                 if ( rtm(x_nwp,y_nwp) % d(z_nwp) % is_allocated )  n_val_pixels = n_val_pixels + 1
               end do  
+             
           end if
         end do
       end do
       ! print*,'Number of needed RTTOV/PFAAST Clear-Sky Transmission calculations: ',n_val_pixels
       
+      ! - useless in n_val_pixels is 0
+      
+      if ( n_val_pixels .eq. 0) then
+         print*, 'Number of needed RTM pixels is ZERO ...'
+         print*, ' check file and line ', __FILE__, __LINE__
+         print*, ' this is an error this should not appear'
+         print*,'please inform andi.walther@ssec.wisc.edu'
+         stop
       
-      allocate (rtm_inp % p_std( 101,n_val_pixels))
-      allocate (rtm_inp % t_prof( 101,n_val_pixels))
-      allocate (rtm_inp % w_prof( 101,n_val_pixels))
-      allocate (rtm_inp % o_prof( 101,n_val_pixels))
-      allocate (rtm_inp % tpw_prof( 101,n_val_pixels))
+      end if
+      
+      allocate (rtm_inp % p_std( NLEVELS_RTM,n_val_pixels))
+      allocate (rtm_inp % t_prof( NLEVELS_RTM,n_val_pixels))
+      allocate (rtm_inp % w_prof( NLEVELS_RTM,n_val_pixels))
+      allocate (rtm_inp % o_prof( NLEVELS_RTM,n_val_pixels))
+      allocate (rtm_inp % tpw_prof( NLEVELS_RTM,n_val_pixels))
       allocate (rtm_inp % sat_bin( n_val_pixels))
       
       ! - populate RTTOV input
@@ -473,7 +508,7 @@ contains
       do x_nwp = 1, nwp_size_arr(1)
             do y_nwp =1, nwp_size_arr(2)
               if ( rtm(x_nwp,y_nwp) % is_allocated ) then
-                do z_nwp =1,50 
+                do z_nwp =1,RTM_NVZEN 
                   if ( rtm(x_nwp,y_nwp) % d(z_nwp) % is_allocated ) then
                   
                     n_val_pixels = n_val_pixels + 1
@@ -497,12 +532,12 @@ contains
           select case ( ch(Chan_Idx)%Obs_Type )
           
           case ( SOLAR_OBS_TYPE) 
-            allocate ( trans_prof_rtm_chn (101,n_val_pixels) )
+            allocate ( trans_prof_rtm_chn (NLEVELS_RTM,n_val_pixels) )
             do ii_pixel = 1, n_val_pixels
               
               call SOLAR_TRANS(rtm_inp % tpw_prof(:, ii_pixel),chan_idx,rtm_inp % sat_bin( ii_pixel),trans_profile, error_status)
              
-              trans_prof_rtm_chn (:,ii_pixel) = Trans_profile ** Gamma_Factor(Chan_Idx)
+              trans_prof_rtm_chn (:,ii_pixel) = Trans_profile 
             end do
             
           
@@ -529,7 +564,7 @@ contains
           do x_nwp = 1, nwp_size_arr(1)
             do y_nwp =1,nwp_size_arr(2)
               if ( rtm(x_nwp,y_nwp) % is_allocated ) then
-                do z_nwp =1,50 
+                do z_nwp =1,RTM_NVZEN 
                   if ( rtm(x_nwp,y_nwp) % d(z_nwp) % is_allocated ) then
                     ii_pixel = ii_pixel + 1
                     rtm(x_nwp,y_nwp) % d(z_nwp) % ch(chan_idx) % Trans_Atm_Profile &
@@ -933,6 +968,9 @@ contains
       case(271) !GOES-17
         Sensor_Name_Rtm = 'GOES-17'
 
+      case(272) !GOES-18
+        Sensor_Name_Rtm = 'GOES-18'
+
       case(706) !NOAA-6
         Sensor_Name_Rtm = 'AVHRR-NOAA06'
 
@@ -1531,9 +1569,6 @@ contains
                         ch(Chan_Idx)%Rad_Toa_Clear(Elem_Idx,Line_Idx),  &
                         Rtm(Lon_Idx,Lat_Idx)%d(Zen_Idx)%ch(Chan_Idx)%Rad_BB_Cloud_Profile(Lev_Bnd))
 
-               !if (isnan(ch(Chan_Idx)%Emiss_Tropo(Elem_Idx,Line_Idx))) then
-               !   print *, "Nan in emiss_tropo ", chan_idx, ch(Chan_Idx)%Rad_Toa_Clear(Elem_Idx,Line_Idx)
-               !endif
             end if
          end select
       end do
diff --git a/main_src/sensor_mod.f90 b/main_src/sensor_mod.f90
index e063421ec3f0120ad9083f561bd46682b453281d..e9d0de51bf44ac3e8fa4e6ed150672f0765e4e5c 100644
--- a/main_src/sensor_mod.f90
+++ b/main_src/sensor_mod.f90
@@ -7,7 +7,7 @@
 !
 ! PURPOSE: This module houses routines that apply to multiple sensors
 !
-! DESCRIPTION: 
+! DESCRIPTION:
 !
 ! AUTHORS:
 !  Andrew Heidinger, Andrew.Heidinger@noaa.gov
@@ -23,7 +23,7 @@
 ! SUPPORT TO USERS.
 !
 ! NOTES:
-! 
+!
 ! Routines in this module and their purpose:
 !
 !  the routines are called from process_clavrx.f90 in this order
@@ -34,7 +34,7 @@
 !      READ_INSTR_CONSTANTS()
 !      READ_LEVEL1B_DATA()
 !       ...
-!       ... 
+!       ...
 ! end loop
 !--------------------------------------------------------------------------------------
 module SENSOR_MOD
@@ -67,8 +67,8 @@ module SENSOR_MOD
       , cloud_mask_aux_read_flag &
       , WMO_Id_ISCCPNG
 
-      
-   use CALIBRATION_CONSTANTS_MOD,only: &  
+
+   use CALIBRATION_CONSTANTS_MOD,only: &
       planck_a1,planck_a2 &
       , goes_input_time &
       , goes_epoch_time &
@@ -77,9 +77,9 @@ module SENSOR_MOD
       , ew_ch20 &
       , solar_ch20_nu &
       , planck_nu
-   
+
    use ALGORITHM_CONSTANTS_MOD,only:
-   
+
    use CONSTANTS_MOD,only:  &
       real4 &
       , int1 &
@@ -92,9 +92,6 @@ module SENSOR_MOD
       , DTOR &
       , EXE_PROMPT
    
-   use FILE_TOOLS,only: &
-      get_lun
-   
    use AVHRR_MOD,only: &
       assign_avhrr_sat_id_num_internal &
       , define_1b_data &
@@ -102,7 +99,7 @@ module SENSOR_MOD
       , read_avhrr_instr_constants &
       , read_avhrr_level1b_data &
       , read_avhrr_level1b_header
-   
+
    use GOES_MOD, only: &
          area_struct &
          , gvar_nav &
@@ -116,7 +113,7 @@ module SENSOR_MOD
          , read_goes_instr_constants &
          , read_goes_sndr &
          , read_goes_sndr_instr_constants
-   
+
    use MODIS_MOD, only : &
        DETERMINE_MODIS_CLOUD_MASK_FILE &
      , DETERMINE_MODIS_CLOUD_PRODUCT_FILE &
@@ -132,7 +129,7 @@ module SENSOR_MOD
 
    use FY4_MOD, only: &
       READ_FY4_INSTR_CONSTANTS &
-    , READ_FY4_DATE_TIME & 
+    , READ_FY4_DATE_TIME &
     , READ_FY4_LEVEL1B_DATA
 
    use ABI_MOD, only: &
@@ -144,53 +141,53 @@ module SENSOR_MOD
     read_coms &
     , read_coms_instr_constants &
     , read_navigation_block_coms
-   
+
    use HIRS_FUSION_MOD,only: READ_FUSION_HIRS_INSTR_CONSTANTS, &
                              READ_HIRS_DATA, &
                              REPLACE_AVHRR_WITH_HIRS
-   
+
    use IFF_CLAVRX_BRIDGE , only : &
       READ_IFF_DATA &
       , READ_IFF_VIIRS_INSTR_CONSTANTS &
       , READ_IFF_AVHRR_INSTR_CONSTANTS &
       , READ_IFF_DATE_TIME &
       , GET_IFF_DIMS_BRIDGE
-      
+
    use MTSAT_MOD, only: &
       mtsat_xstride &
       , calibrate_mtsat_dark_composite &
       , read_mtsat &
       , read_mtsat_instr_constants &
       , read_navigation_block_mtsat_fy
-   
+
    use SEVIRI_MOD, only: &
       seviri_xstride &
       , calibrate_seviri_dark_composite &
       , read_msg_instr_constants &
       , read_navigation_block_seviri &
       , read_seviri
-   
+
 
    use VIIRS_CLAVRX_BRIDGE , only : &
        READ_VIIRS_DATE_TIME &
        , READ_VIIRS_DATA &
        , GET_NUMBER_OF_SCANS_FROM_VIIRS_BRIDGE &
        , READ_VIIRS_INSTR_CONSTANTS
-       
+
    use AHI_CLAVRX_BRIDGE, only: &
       read_ahi_data
-   
+
    use VIIRS_NASA_READ_MODULE, only : &
        READ_VIIRS_NASA_DATE_TIME &
        , READ_VIIRS_NASA_DATA &
        , READ_NUMBER_OF_SCANS_VIIRS_NASA &
        , CHECK_IF_FUSION &
        , READ_FUSION_INSTR_CONSTANTS
-   
+
    use VIIRS_NASA_HRES_READ_MOD, only : &
       READ_VIIRS_NASA_HRES_DATA &
       , viirs_nasa_hres_config_type
-        
+
    use FY3D_READ_MODULE, only : &
        READ_FY3D_DATA &
        , READ_FY3D_DATE_TIME &
@@ -200,12 +197,12 @@ module SENSOR_MOD
    use CLAVRX_MESSAGE_MOD,only: &
       mesg &
       , verb_lev
-   
+
    use MVCM_READ_MOD, only: &
       determine_mvcm_name &
       ,read_mvcm_data
-   
-   use SAPF_READ_MOD, only: DETERMINE_SAPF_NAME, READ_SAPF_DATA 
+
+   use SAPF_READ_MOD, only: DETERMINE_SAPF_NAME, READ_SAPF_DATA
 
    use AHI_MOD
 
@@ -233,30 +230,30 @@ module SENSOR_MOD
    use CX_NETCDF4_MOD, only: &
       READ_NETCDF_GLOBAL_ATTRIBUTE &
       , READ_NETCDF_DIMENSION
-   
+
     use iso_fortran_env
-   
+
    implicit none
 
    private
-   public :: SET_DATA_DATE_AND_TIME   
+   public :: SET_DATA_DATE_AND_TIME
    public :: READ_INSTR_CONSTANTS
    public :: DETECT_SENSOR_FROM_FILE
    public :: SET_FILE_DIMENSIONS
-   public :: READ_LEVEL1B_DATA 
+   public :: READ_LEVEL1B_DATA
    public :: OUTPUT_SENSOR_TO_SCREEN
    public :: OUTPUT_IMAGE_TO_SCREEN
    public :: OUTPUT_PROCESSING_LIMITS_TO_SCREEN
    public :: SET_SENSOR_CHANNEL_MAPPING
    private :: COMPUTE_GOES_RU_STATIC_NAV_FILE_NAME
 
-   
+
 
    character(24), parameter, private :: MODULE_PROMPT = " SENSOR_MODULE: "
    character(38) :: Orbit_Identifier
-  
+
    character (len = 3), private :: string_3
-   
+
    character (len = 6), private :: string_6
    character (len = 7), private :: string_7
    character (len = 30), private :: string_30
@@ -269,13 +266,13 @@ module SENSOR_MOD
    subroutine SET_DATA_DATE_AND_TIME(AREAstr)
 
       use class_time_date, only: date_type
-      
+
       use CX_READ_AHI_MOD, only: &
          ahi_time_from_filename, &
          ahi_hcast_time_from_filename
-      
+
       type ( date_type ) :: time0_obj, time1_obj
-      
+
       ! - this is only needed/used for AVHRR
       type (AREA_STRUCT), intent(in) :: AREAstr
 
@@ -323,12 +320,12 @@ module SENSOR_MOD
       integer(kind=int4):: End_Min_Tmp
       integer(kind=int4):: End_Sec_Tmp
       integer(kind=int4):: End_Msec_Tmp
-      
+
       type(date_type) :: time_obj_nasa_hres(2)
       character(len=15) :: time_identifier
       integer :: yyyy,doy1,hour1,minu
 
-      sensor_search: do 
+      sensor_search: do
 
       !----------------------------------------------
       ! --- ISCCP-NG L1g files
@@ -342,14 +339,14 @@ module SENSOR_MOD
          Image%End_Doy = End_Day_Tmp
          Image%Start_Time = Start_Time_Tmp
          Image%End_Time = End_Time_Tmp
-         
-         
+
+
          call image % time_start % set_date_with_doy_msec (  Start_Year_Tmp, Start_Day_Tmp &
                , msec_of_day = Start_Time_Tmp)
          call image % time_end % set_date_with_doy_msec (  End_Year_Tmp, End_Day_Tmp &
                , msec_of_day =  End_Time_Tmp)
-         
-         
+
+
          exit
       endif
 
@@ -368,20 +365,20 @@ module SENSOR_MOD
          call READ_MODIS_DATE_TIME(trim(Image%Level1b_Path), trim(Image%Level1b_Name), &
                             Start_Year_Tmp, Start_Day_Tmp, Start_Time_Tmp, &
                             End_Year_Tmp, End_Day_Tmp, End_Time_Tmp)
-          
+
          Image%Start_Year = Start_Year_Tmp
          Image%End_Year = End_Year_Tmp
          Image%Start_Doy = Start_Day_Tmp
          Image%End_Doy = End_Day_Tmp
          Image%Start_Time = Start_Time_Tmp
          Image%End_Time = End_Time_Tmp
-          
-                            
+
+
          call image % time_start % set_date_with_doy_msec (  Start_Year_Tmp, Start_Day_Tmp &
                , msec_of_day = Start_Time_Tmp)
          call image % time_end % set_date_with_doy_msec (  End_Year_Tmp, End_Day_Tmp &
-               , msec_of_day =  End_Time_Tmp)                   
-  
+               , msec_of_day =  End_Time_Tmp)
+
          exit
       endif
 
@@ -399,12 +396,12 @@ module SENSOR_MOD
          Image%Start_Doy = Start_Day_Tmp
          Image%End_Doy = End_Day_Tmp
          Image%Orbit_Number = Orbit_Number_Tmp
- 
+
          Image%Start_Time = Start_Time_Tmp
          Image%End_Time = End_Time_Tmp
 
 
-          
+
          call image % time_start % set_date_with_doy_msec (  Start_Year_Tmp, Start_Day_Tmp &
                , msec_of_day = Start_Time_Tmp)
          call image % time_end % set_date_with_doy_msec (  End_Year_Tmp, End_Day_Tmp &
@@ -413,21 +410,21 @@ module SENSOR_MOD
          exit
 
 
-      end if 
-      
+      end if
+
       if (trim(Sensor%Sensor_Name) == 'VIIRS-NASA-HRES') then
-         
+
          time_identifier = Image%Level1b_Name(9:23)
-         
+
          read(time_identifier(3:6),'(i4)') yyyy
          read(time_identifier(7:9),'(i3)') doy1
          read(time_identifier(11:12),'(i2)') hour1
          read(time_identifier(13:14),'(i2)') minu
-           
+
          call time_obj_nasa_hres(1) % set_date_with_doy(yyyy,doy1,hour1,minu)
          time_obj_nasa_hres(2) = time_obj_nasa_hres(1)
          call time_obj_nasa_hres(2) % add_time(minute=6)
-           
+
          Image%Start_Year = time_obj_nasa_hres(1) % year
          Image%End_Year = time_obj_nasa_hres(2) % year
          Image%Start_Doy = time_obj_nasa_hres(1) % dayOfYear
@@ -436,15 +433,15 @@ module SENSOR_MOD
 
          Image%Start_Time = time_obj_nasa_hres(1) % msec_of_day
          Image%End_Time =  time_obj_nasa_hres(2) % msec_of_day
-         
+
 
          image % time_start = time_obj_nasa_hres(1)
          image % time_end = time_obj_nasa_hres(2)
-         
+
          exit
-         
-      end if 
-       
+
+      end if
+
       !----------------------------------------------
       ! read VIIRS-NASA time from VGEOM
       !----------------------------------------------
@@ -461,53 +458,53 @@ module SENSOR_MOD
 
          Image%Start_Time = Start_Time_Tmp
          Image%End_Time = End_Time_Tmp
-         
-         
+
+
          call image % time_start % set_date_with_doy_msec (  Start_Year_Tmp, Start_Day_Tmp &
                , msec_of_day = Start_Time_Tmp)
          call image % time_end % set_date_with_doy_msec (  End_Year_Tmp, End_Day_Tmp &
                , msec_of_day =  End_Time_Tmp)
-         
+
 
 
          exit
       endif
 
       !----------------------------------------------
-      ! 
+      !
       !----------------------------------------------
       !if (index(Sensor%Sensor_Name,'AHI') > 0 .OR. index(Sensor%Sensor_Name,'AHI9') > 0) then
       if (index(Sensor%Sensor_Name,'AHI') > 0) then
-         
-         
+
+
          ! Needed since HCAST native is not named the same - WCS3
-         IF ((Image%DB_Flag) .AND. (Image%Nc_Format_Flag .EQV. .false.)) THEN 
+         IF ((Image%DB_Flag) .AND. (Image%Nc_Format_Flag .EQV. .false.)) THEN
             call ahi_hcast_time_from_filename( trim(Image%Level1b_Name) , &
                                                 time0_obj, time1_obj )
          else
-         
+
             call ahi_time_from_filename ( trim(Image%Level1b_Name) , &
                                           time0_obj, time1_obj )
          endif
-        
+
          call time0_obj % get_date ( year =  year &
                                , doy = doy  &
                                , msec_of_day = Image%Start_Time  )
-         
-         call time1_obj % get_date ( msec_of_day = Image%End_Time  )                                                
+
+         call time1_obj % get_date ( msec_of_day = Image%End_Time  )
 
          Image%Start_Year  = year
-         Image%Start_Doy   = doy   
+         Image%Start_Doy   = doy
          Image%End_Year  = year
-         Image%End_Doy   = doy  
-         
+         Image%End_Doy   = doy
+
          image % time_start = time0_obj
          image % time_end = time1_obj
 
          exit
 
       endif
-      
+
       !----------------------------------------------
       ! --- VIIRS Subsampled files
       !----------------------------------------------
@@ -520,12 +517,12 @@ module SENSOR_MOD
          Image%End_Doy = End_Day_Tmp
          Image%Start_Time = Start_Time_Tmp
          Image%End_Time = End_Time_Tmp
-         
+
           call image % time_start % set_date_with_doy_msec (  Start_Year_Tmp, Start_Day_Tmp &
                , msec_of_day = Start_Time_Tmp)
          call image % time_end % set_date_with_doy_msec (  End_Year_Tmp, End_Day_Tmp &
                , msec_of_day =  End_Time_Tmp)
-         
+
          exit
       endif
 
@@ -542,13 +539,13 @@ module SENSOR_MOD
          Image%End_Doy = End_Day_Tmp
          Image%Start_Time = Start_Time_Tmp
          Image%End_Time = End_Time_Tmp
-         
+
          call image % time_start % set_date_with_doy_msec (  Start_Year_Tmp, Start_Day_Tmp &
                , msec_of_day = Start_Time_Tmp)
          call image % time_end % set_date_with_doy_msec (  End_Year_Tmp, End_Day_Tmp &
                , msec_of_day =  End_Time_Tmp)
-         
-         
+
+
          exit
       endif
 
@@ -565,13 +562,13 @@ module SENSOR_MOD
          Image%End_Doy = End_Day_Tmp
          Image%Start_Time = Start_Time_Tmp
          Image%End_Time = End_Time_Tmp
-         
-         
+
+
          call image % time_start % set_date_with_doy_msec (  Start_Year_Tmp, Start_Day_Tmp &
                , msec_of_day = Start_Time_Tmp)
          call image % time_end % set_date_with_doy_msec (  End_Year_Tmp, End_Day_Tmp &
                , msec_of_day =  End_Time_Tmp)
-         
+
          exit
       endif
 
@@ -591,8 +588,8 @@ module SENSOR_MOD
 
           Image%Start_Time = Start_Time_Tmp
           Image%End_Time = End_Time_Tmp
-          
-          
+
+
            call image % time_start % set_date_with_doy_msec (  Start_Year_Tmp, Start_Day_Tmp &
                , msec_of_day = Start_Time_Tmp)
            call image % time_end % set_date_with_doy_msec (  End_Year_Tmp, End_Day_Tmp &
@@ -616,13 +613,13 @@ module SENSOR_MOD
          Image%End_Doy = End_Day_Tmp
          Image%Start_Time = Start_Time_Tmp
          Image%End_Time = End_Time_Tmp
-         
-         
+
+
          call image % time_start % set_date_with_doy_msec (  Start_Year_Tmp, Start_Day_Tmp &
                , msec_of_day = Start_Time_Tmp)
          call image % time_end % set_date_with_doy_msec (  End_Year_Tmp, End_Day_Tmp &
                , msec_of_day =  End_Time_Tmp)
-         
+
          exit
       endif
 
@@ -645,25 +642,25 @@ module SENSOR_MOD
          Image%End_Year = Image%Start_Year
          Image%Start_Doy = AREAstr%img_Date - (Image%Start_Year - 1900) * 1000
          Image%End_Doy = Image%Start_Doy
-         hour = AREAstr%img_Time / 10000 
+         hour = AREAstr%img_Time / 10000
          minute = (AREAstr%img_Time - hour * 10000) / 100
          second = (AREAstr%img_Time - hour * 10000 - minute * 100) / 100
          Image%Start_Time = ((hour * 60 + minute) * 60 + second) * 1000 !millisec
          Image%End_Time = Image%Start_Time
-         
-         
+
+
          call image % time_start % set_date_with_doy (   1900 + int(AREAstr%img_Date / 1000), AREAstr%img_Date - (Image%Start_Year - 1900) * 1000 &
                , hour = hour, minute = minute, second = second )
          call image % time_end % set_date_with_doy (  1900 + int(AREAstr%img_Date / 1000), AREAstr%img_Date - (Image%Start_Year - 1900) * 1000 &
                , hour = hour, minute = minute, second = second )
-         
+
 
         endif
 
         if (.not. Image%Area_Format_Flag) then
 
           Image%Mixed_Resolution_Flag = .true.
-          Image%Static_Nav_Flag = .true. 
+          Image%Static_Nav_Flag = .true.
 
           !--- check if GOES ABI static navigation.
           !--- 2018-05-14T18:30:40.5Z
@@ -714,7 +711,7 @@ module SENSOR_MOD
         endif
 
         exit
- 
+
       end if
 
       print *, "Sensor not found in time, stopping"
@@ -752,7 +749,7 @@ module SENSOR_MOD
       call mesg ( "Satellite = "//trim(Sensor%Platform_Name), level = verb_lev % DEFAULT)
       call mesg ( "Sensor = "//trim(Sensor%Sensor_Name), level = verb_lev % DEFAULT)
 
-      write(string_3,'(i3)' ) Sensor%WMO_ID 
+      write(string_3,'(i3)' ) Sensor%WMO_ID
       call mesg ( "Spacecraft WMO number = "//trim(string_3) , level = verb_lev % DEFAULT)
 
       write ( string_6,'(i6)')   Sensor%Spatial_Resolution_Meters
@@ -778,7 +775,7 @@ module SENSOR_MOD
 
          write ( string_3,'(i3)')   AVHRR_AAPP_FLAG
          call mesg ( "AVHRR AAPP Flag = "//string_3, level = verb_lev % DEFAULT)
-    
+
       end if
 
    end subroutine OUTPUT_SENSOR_TO_SCREEN
@@ -949,7 +946,7 @@ module SENSOR_MOD
             call READ_FUSION_HIRS_INSTR_CONSTANTS(trim(Ancil_Data_Dir)//"static/clavrx_constant_files/"//trim('hirs_18_instr.dat'))
          endif
          if (index(trim(Sensor%Instr_Const_File),'avhrr_19_instr.dat') > 0) then
-            call READ_FUSION_HIRS_INSTR_CONSTANTS(trim(Ancil_Data_Dir)//"static/clavrx_constant_files/"//trim('hirs_19_instr.dat'))            
+            call READ_FUSION_HIRS_INSTR_CONSTANTS(trim(Ancil_Data_Dir)//"static/clavrx_constant_files/"//trim('hirs_19_instr.dat'))
          endif
          if (index(trim(Sensor%Instr_Const_File),'avhrr_2_instr.dat') > 0) then
             call READ_FUSION_HIRS_INSTR_CONSTANTS(trim(Ancil_Data_Dir)//"static/clavrx_constant_files/"//trim('hirs_2_instr.dat'))
@@ -967,11 +964,11 @@ module SENSOR_MOD
    !  output is sesnorname and platform name
    !
    !
-   !   AVHRR 
+   !   AVHRR
    !        sensors:  AVHRR-1, AVHRR-2, AVHRR-3
    !        platforms: NOAA-5 - NOAA-19, METOP-A - METOP-C
    !        spatial_resolution:  1.1, 4
-   !  
+   !
    !   GOES
    !        sensors:   GOES-IL-IMAGER, GOES-MP-IMAGER, GOES-IP-SOUNDER
    !        platforms: GOES-8 - GOES-15
@@ -981,7 +978,7 @@ module SENSOR_MOD
    !        sensors:  SEVIRI
    !        platform:  Meteosat-8 - Meteosat-11
    !        spatial_resolution:  3
-   ! 
+   !
    !   MTSAT
    !        sensors:  MTSAT-IMAGER
    !        platform:  MTSAT-1R, MTSAT-2
@@ -1001,7 +998,7 @@ module SENSOR_MOD
    !        sensors:  VIIRS, VIIRS-NASA, VIIRS-IFF
    !        platform:  SNPP
    !        spatial_resolution:  0.75
-   !        
+   !
    !
    !  Output: The sensor structure which is global does not appear as an argument
    !--------------------------------------------------------------------------------------------------
@@ -1037,6 +1034,11 @@ module SENSOR_MOD
       Image%Static_Nav_Flag = .false.
       Image%DB_Flag = .false.
 
+      !-------------------------------------------------------------------------
+      !-- Initialize AREAstr Structure
+      !-------------------------------------------------------------------------
+      AREAstr%Version_Num = 1
+
       !-------------------------------------------------------------------------
       !-- Loop through tests for each file type, if not found assume avhrr
       !-------------------------------------------------------------------------
@@ -1044,7 +1046,7 @@ module SENSOR_MOD
       ifound = sym%NO
 
       test_loop: do while (ifound == sym%NO)
-      
+
       !--- HIMAWARI-8 AHI Test
       if (index(Image%Level1b_Name, 'HS_H08') > 0) then
 
@@ -1058,21 +1060,21 @@ module SENSOR_MOD
         Static_Nav_File = 'himawari_central_ahi_fulldisk_static_nav.nc'
         Image%Area_Format_Flag = .false.
         Image%Nc_Format_Flag = .false.
-              
+
         !Done for netCDF files - WCS3
         if (index(Image%Level1b_Name, '.nc') > 1) then
             Image%Nc_Format_Flag = .true.
             call READ_NETCDF_DIMENSION(trim(Image%Level1b_Full_Name), 'x', Image%Number_Of_Elements)
             call READ_NETCDF_DIMENSION(trim(Image%Level1b_Full_Name), 'y', Image%Number_Of_Lines)
         endif
-        
+
         !Done for HSD files - WCS3
         if (index(Image%Level1b_Name, '.nc') < 1) then
 #ifdef LIBHIM
             Image%Nc_Format_Flag = .false.
-            !For HSD, we will always do static nav. Because of that, we don't need 
-            ! Image%Number_Of_Elements and Image%Number_Of_Lines. These are determined 
-            ! in DETERMINE_BOUNDS_STATIC_NAV for a given segment of data 
+            !For HSD, we will always do static nav. Because of that, we don't need
+            ! Image%Number_Of_Elements and Image%Number_Of_Lines. These are determined
+            ! in DETERMINE_BOUNDS_STATIC_NAV for a given segment of data
 #else
             call MESG( "LibHimawari not installed. Cannot process HSD. Stopping", level = verb_lev % ERROR , color = 4 )
             stop
@@ -1083,7 +1085,7 @@ module SENSOR_MOD
 
         Image%Mixed_Resolution_Flag = .true.
         Image%Static_Nav_Flag = .true.
-        
+
         exit test_loop
 
       endif
@@ -1100,21 +1102,21 @@ module SENSOR_MOD
         Static_Nav_File = 'himawari_central_ahi_fulldisk_static_nav.nc'
         Image%Area_Format_Flag = .false.
         Image%Nc_Format_Flag = .false.
-              
+
         !Done for netCDF files - WCS3
         if (index(Image%Level1b_Name, '.nc') > 1) then
             Image%Nc_Format_Flag = .true.
             call READ_NETCDF_DIMENSION(trim(Image%Level1b_Full_Name), 'x', Image%Number_Of_Elements)
             call READ_NETCDF_DIMENSION(trim(Image%Level1b_Full_Name), 'y', Image%Number_Of_Lines)
         endif
-        
+
         !Done for HSD files - WCS3
         if (index(Image%Level1b_Name, '.nc') < 1) then
 #ifdef LIBHIM
             Image%Nc_Format_Flag = .false.
-            !For HSD, we will always do static nav. Because of that, we don't need 
-            ! Image%Number_Of_Elements and Image%Number_Of_Lines. These are determined 
-            ! in DETERMINE_BOUNDS_STATIC_NAV for a given segment of data 
+            !For HSD, we will always do static nav. Because of that, we don't need
+            ! Image%Number_Of_Elements and Image%Number_Of_Lines. These are determined
+            ! in DETERMINE_BOUNDS_STATIC_NAV for a given segment of data
 #else
             call MESG( "LibHimawari not installed. Cannot process HSD. Stopping", level = verb_lev % ERROR , color = 4 )
             stop
@@ -1122,10 +1124,10 @@ module SENSOR_MOD
 
         endif
         !END - WCS3
-                
+
         Image%Mixed_Resolution_Flag = .true.
         Image%Static_Nav_Flag = .true.
-        
+
         exit test_loop
       endif
 
@@ -1172,9 +1174,9 @@ module SENSOR_MOD
         Image%Static_Nav_Flag = .true.
         Image%Nc_Format_Flag = .false.
         call MESG( "HCAST DATA", level = verb_lev % ERROR , color = 4 )
-            !For HSD, we will always do static nav. Because of that, we don't need 
-            ! Image%Number_Of_Elements and Image%Number_Of_Lines. These are determined 
-            ! in DETERMINE_BOUNDS_STATIC_NAV for a given segment of data 
+            !For HSD, we will always do static nav. Because of that, we don't need
+            ! Image%Number_Of_Elements and Image%Number_Of_Lines. These are determined
+            ! in DETERMINE_BOUNDS_STATIC_NAV for a given segment of data
 #else
         call MESG( "LibHimawari not installed. Cannot process HSD. Stopping", level = verb_lev % ERROR , color = 4 )
             stop
@@ -1204,9 +1206,9 @@ module SENSOR_MOD
         ABI_Use_104um_Flag = .false.
         exit test_loop
       endif
-      
-      
-      
+
+
+
             !--- GOES-16 ABI Static Nav Test FD HIGH RES processing
       if (index(Image%Level1b_Name, 'OR_ABI-L1b-RadC') > 0 .AND. INDEX(trim(Image%Level1b_Name), 'G16') > 0 &
           .AND. INDEX(trim(Image%Level1b_Name) , '_HIGH_RES_') > 0 ) then
@@ -1221,11 +1223,11 @@ module SENSOR_MOD
         Image%Static_Nav_Flag = .true.
         Image%Mixed_Resolution_Flag = .true.
         Image%Area_Format_Flag = .false.
-        Image%Nc_Format_Flag = .true. 
+        Image%Nc_Format_Flag = .true.
         exit test_loop
       endif
-      
-      
+
+
                   !--- GOES-16 ABI Static Nav Test FD HIGH RES processing
       if (index(Image%Level1b_Name, 'OR_ABI-L1b-RadF') > 0 .AND. INDEX(trim(Image%Level1b_Name), 'G16') > 0 &
           .AND. INDEX(trim(Image%Level1b_Name) , '_HIGH_RES_') > 0 ) then
@@ -1240,16 +1242,16 @@ module SENSOR_MOD
         Image%Static_Nav_Flag = .true.
         Image%Mixed_Resolution_Flag = .true.
         Image%Area_Format_Flag = .false.
-        Image%Nc_Format_Flag = .true. 
+        Image%Nc_Format_Flag = .true.
         Image%Number_Of_Lines = 21696
         Image%Number_Of_Elements = 21696
         exit test_loop
       endif
-      
+
 
       !--- GOES-17 ABI Static Nav Test
       if (index(Image%Level1b_Name, 'OR_ABI') > 0 .and. INDEX(trim(Image%Level1b_Name), 'G17') > 0 &
-          .AND. .NOT. INDEX(trim(Image%Level1b_Name) , '_HIGH_RES_') > 0  ) then 
+          .AND. .NOT. INDEX(trim(Image%Level1b_Name) , '_HIGH_RES_') > 0  ) then
         Sensor%Sensor_Name = 'GOES-RU-IMAGER'
         Sensor%Platform_Name = 'GOES-17'
         Sensor%Spatial_Resolution_Meters = 2000
@@ -1265,7 +1267,7 @@ module SENSOR_MOD
         ABI_Use_104um_Flag = .false.
         exit test_loop
       endif
-      
+
          !--- GOES-17 ABI Static Nav Test
       if (index(Image%Level1b_Name, 'OR_ABI') > 0 .and. INDEX(trim(Image%Level1b_Name), 'G17') > 0  &
           .AND. INDEX(trim(Image%Level1b_Name) , '_HIGH_RES_') > 0 ) then
@@ -1285,6 +1287,24 @@ module SENSOR_MOD
         exit test_loop
       endif
 
+      !--- GOES-18 ABI Static Nav Test
+      if (index(Image%Level1b_Name, 'OR_ABI') > 0 .and. INDEX(trim(Image%Level1b_Name), 'G18') > 0 &
+          .AND. .NOT. INDEX(trim(Image%Level1b_Name) , '_HIGH_RES_') > 0  ) then
+        Sensor%Sensor_Name = 'GOES-RU-IMAGER'
+        Sensor%Platform_Name = 'GOES-18'
+        Sensor%Spatial_Resolution_Meters = 2000
+        Sensor%WMO_Id = 272
+        Sensor%Instr_Const_File = 'goes_18_instr.dat'
+        Sensor%Geo_Sub_Satellite_Longitude = -137.2   ! -137.2 - not projection sub-point
+        Sensor%Geo_Sub_Satellite_Latitude = 0.0
+        call COMPUTE_GOES_RU_STATIC_NAV_FILE_NAME()
+        Image%Static_Nav_Flag = .true.
+        Image%Mixed_Resolution_Flag = .true.
+        Image%Area_Format_Flag = .false.
+        Image%Nc_Format_Flag = .true. !added in to make sure that static nav will run due to HSD test - WCS3
+        ABI_Use_104um_Flag = .false.
+        exit test_loop
+      endif
 
       !--- FY-4a AGRI Test
       if (index(Image%Level1b_Name, 'FY4A') > 0) then
@@ -1296,14 +1316,14 @@ module SENSOR_MOD
         Sensor%Geo_Sub_Satellite_Longitude = 105.0
         Sensor%Geo_Sub_Satellite_Latitude = 0.0
         Static_Nav_File = 'fy4_static_nav_fulldisk.nc'
-        call READ_NETCDF_GLOBAL_ATTRIBUTE(trim(Image%Level1b_Full_Name),'RegWidth', Image%Number_Of_Elements) 
-        call READ_NETCDF_GLOBAL_ATTRIBUTE(trim(Image%Level1b_Full_Name),'RegLength', Image%Number_Of_Lines) 
+        call READ_NETCDF_GLOBAL_ATTRIBUTE(trim(Image%Level1b_Full_Name),'RegWidth', Image%Number_Of_Elements)
+        call READ_NETCDF_GLOBAL_ATTRIBUTE(trim(Image%Level1b_Full_Name),'RegLength', Image%Number_Of_Lines)
         Image%Area_Format_Flag = .false.
         Image%Mixed_Resolution_Flag = .false.
         Image%Static_Nav_Flag = .true.
         exit test_loop
       endif
-      
+
       !--- MODIS Test
       if (index(Image%Level1b_Name, 'MYD021KM') > 0) then
         Sensor%Sensor_Name = 'MODIS'
@@ -1391,12 +1411,12 @@ module SENSOR_MOD
 
          !--- based on McIdas Id, set sensor struc parameters
          select case(AREAstr%Sat_Id_Num)
- 
+
             !test for SEVIRI
             case (51:53,354)
                Sensor%Sensor_Name = 'SEVIRI'
                Sensor%Spatial_Resolution_Meters = 3000
-              
+
                if (AREAstr%Sat_Id_Num == 51) then
                   Sensor%Platform_Name = 'Meteosat-8'
                   Sensor%WMO_Id = 55
@@ -1607,7 +1627,7 @@ module SENSOR_MOD
       endif
 
       !---  VIIRS SNPP
-      if (index(Image%Level1b_Name, 'GMTCO_npp') > 0) then 
+      if (index(Image%Level1b_Name, 'GMTCO_npp') > 0) then
          Sensor%Sensor_Name = 'VIIRS'
          Sensor%Spatial_Resolution_Meters = 750
          Sensor%Platform_Name = 'SNPP'
@@ -1616,7 +1636,7 @@ module SENSOR_MOD
          exit test_loop
       endif
 
-      !--- NPP/JPSS IFF 
+      !--- NPP/JPSS IFF
       if (index(Image%Level1b_Name, 'IFFSDR_npp') > 0 .or. &
           index(Image%Level1b_Name, 'IFFSVM_npp') > 0 .or. &
           index(Image%Level1b_Name, 'IFF_npp') > 0) then
@@ -1645,8 +1665,8 @@ module SENSOR_MOD
          Sensor%Instr_Const_File = 'viirs_npp_instr.dat'
          exit test_loop
       endif
-      
-      
+
+
             !---  VIIRS-NASA SNPP HIGH RES
       if (index(Image%Level1b_Name, 'VNP02MOD') > 0 .and. &
           index(Image%Level1b_Name, 'highres') > 0) then
@@ -1656,11 +1676,11 @@ module SENSOR_MOD
          Sensor%WMO_Id = 224
          ! - check if it is FUSION
          Sensor%Fusion_Flag = .false.
-        
+
          Sensor%Instr_Const_File = 'viirs_npp_instr.dat'
          exit test_loop
       endif
-           
+
       !---  VIIRS NOAA-20 (JPSS-1)
       if (index(Image%Level1b_Name, 'GMTCO_j01') > 0) then
          Sensor%Sensor_Name = 'VIIRS'
@@ -1689,7 +1709,7 @@ module SENSOR_MOD
       endif
 
       !---  VGAC NOAA-20
-      if (index(Image%Level1b_Name, 'VGAC_VJ1') > 0) then 
+      if (index(Image%Level1b_Name, 'VGAC_VJ1') > 0) then
          Sensor%Sensor_Name = 'VGAC'
          Sensor%Spatial_Resolution_Meters = 3900
          Sensor%Platform_Name = 'NOAA-20'
@@ -1935,7 +1955,7 @@ module SENSOR_MOD
 
       endif
 
-      
+
       !-------------------------------------------------------------------------------
       !---if sensor not detected, assume AVHRR
       !-------------------------------------------------------------------------------
@@ -1953,16 +1973,16 @@ module SENSOR_MOD
       else
          Sensor%Spatial_Resolution_Meters = 1000
       endif
-      
+
       if ( AVHRR_Fusion_Flag) then
          sensor % sensor_name = 'AVHRR-FUSION'
-      end if 
-     
+      end if
+
       ifound = sym%YES   ! force exit need to develop logic for setting Ierror
 
       enddo test_loop
 
-      
+
       !---------------------------------------------------------------------------------
       ! Set sub-satellite point for geostationary satellites that are Areafiles
       !---------------------------------------------------------------------------------
@@ -2024,22 +2044,22 @@ module SENSOR_MOD
     if (AREAstr%Version_Num == 4) then                          !begin valid Areafile test
 
       select case(AREAstr%Sat_Id_Num)
- 
+
             !test for SEVIRI
             case (51:53,354)
                ! Read the satellite sub longitude point from the AREA file.
                call READ_NAVIGATION_BLOCK_SEVIRI(trim(Level1b_Full_Name), AREAstr, NAVstr)
-               Sensor%Geo_Sub_Satellite_Latitude = NAVstr%sublat 
+               Sensor%Geo_Sub_Satellite_Latitude = NAVstr%sublat
                Sensor%Geo_Sub_Satellite_Longitude = NAVstr%sublon
                ! Override the above for the operational sub satellite longitudes.
                ! Longitude of actual Sub-Satellite Point for Met-8 when it was operational.  For Met-8 Indian
                ! Ocean service, the subpoint from the AREA file is used.
-               if (AREAstr%Sat_Id_Num == 51 .AND. Year_temp < 2016 ) Sensor%Geo_Sub_Satellite_Longitude = -3.477996 
+               if (AREAstr%Sat_Id_Num == 51 .AND. Year_temp < 2016 ) Sensor%Geo_Sub_Satellite_Longitude = -3.477996
                if (AREAstr%Sat_Id_Num == 52 ) Sensor%Geo_Sub_Satellite_Longitude = -0.159799     ! Longitude of actual Sub-Satellite Point for Met-9
                if (AREAstr%Sat_Id_Num == 53 ) Sensor%Geo_Sub_Satellite_Longitude = 0.06          ! Longitude of actual Sub-Satellite Point for Met-10
                if (AREAstr%Sat_Id_Num == 354 ) Sensor%Geo_Sub_Satellite_Longitude = 0.26         ! Longitude of actual Sub-Satellite Point for Met-11
                AREAstr%Cal_Offset = AREAstr%reserved(3)
-                    
+
             !test for MTSAT
             case (84,85)
                !This is needed to determine type of navigation
@@ -2047,7 +2067,7 @@ module SENSOR_MOD
                call READ_NAVIGATION_BLOCK_MTSAT_FY(trim(Level1b_Full_Name), AREAstr, NAVstr)
                Sensor%Geo_Sub_Satellite_Latitude = NAVstr%sublat
                Sensor%Geo_Sub_Satellite_Longitude = NAVstr%sublon
-          
+
             !WCS3 - FY2-D AREA files have the subsat lat/lon flipped. Fix here
             !        Fix with McIDAS-X is fixed.
             case (36, 37)
@@ -2055,21 +2075,21 @@ module SENSOR_MOD
                !as Nav coefficents specific to FY2D/E. They are stored in
                ! the same manner as MTSAT, hence using the same routine
                call READ_NAVIGATION_BLOCK_MTSAT_FY(trim(Level1b_Full_Name), AREAstr, NAVstr)
-               
+
                !Some data from BOM has subpoints flipped, so need to fix that
                IF (NAVstr%sublat .GT. 10.0) THEN
-                    Lat_temp = NAVstr%sublon                   
+                    Lat_temp = NAVstr%sublon
                     Lon_temp = NAVstr%sublat
-                    
+
                     NAVstr%sublon = Lon_temp
                     NAVstr%sublat = Lat_temp
-               
+
                endif
-               
-               
+
+
                Sensor%Geo_Sub_Satellite_Latitude = NAVstr%sublat
                Sensor%Geo_Sub_Satellite_Longitude = NAVstr%sublon
- 
+
             !test for COMS
             case (250)
                !This is needed to determine type of navigation
@@ -2090,7 +2110,7 @@ module SENSOR_MOD
 
                !--- There will need to be hard coded values for AREA file
                !--- sub_lon calculations. Currently, the AREA file contains
-               !--- -75.0.  It should be -75.2. 
+               !--- -75.0.  It should be -75.2.
 
                if ((NAVstr%sublon <= -75.) .AND. (NAVstr%sublon > -80.)) then
                  Sensor%Geo_Sub_Satellite_Latitude = NAVstr%sublat
@@ -2100,7 +2120,7 @@ module SENSOR_MOD
                  Sensor%Geo_Sub_Satellite_Latitude = NAVstr%sublat
                  Sensor%Geo_Sub_Satellite_Longitude = NAVstr%sublon
                endif
-   
+
             !test for GOES Imagers or Sounders
             case (70:79,180:185)
 
@@ -2122,10 +2142,10 @@ module SENSOR_MOD
     endif
 
    end subroutine DETERMINE_GEO_SUB_SATELLITE_POSITION
-   
+
    !---------------------------------------------------------------------------------------------
    ! Determine the number of elements (Image%Number_Of_Elements) and Number of Scans (Image%Number_Of_Lines)
-   ! expected.  Also, 
+   ! expected.  Also,
    !
    !    the output will be written in global Image structure
    !---------------------------------------------------------------------------------------------
@@ -2133,8 +2153,8 @@ module SENSOR_MOD
 
       use CX_READ_AHI_MOD, only : AHI_SEGMENT_INFORMATION_REGION, AHI_CONFIG_TYPE
       use file_tools
-      
-                                                               
+
+
       character(len=*), intent(in) :: Level1b_Full_Name
       type (AREA_STRUCT), intent(in) :: AREAstr ! AVHRR only
       integer(kind=int4), intent(out) :: Nrec_Avhrr_Header ! AVHRR only
@@ -2144,17 +2164,17 @@ module SENSOR_MOD
       integer(kind=int4) :: Nword_Clavr_Start
       integer(kind=int4) :: Ierror_Nscans
       CHARACTER(len=1020) :: Dir_File
-      
+
       type ( Ahi_Config_Type ) :: Ahi_Config
       integer :: Offset(2), count(2)
       integer :: cc
       logical :: rel_path = .TRUE.
       character(len=1024), dimension(1) :: file_v03img
       character(len=15) :: time_identifier
-      
+
       Ierror = sym%NO
 
-      do 
+      do
 
       if (index(Image%Level1b_Name,'ISCCP-NG') > 0) then
          call READ_NUMBER_OF_SCANS_ISCCPNG(Image%Number_Of_Lines, Image%Number_Of_Elements, Ierror)
@@ -2165,15 +2185,15 @@ module SENSOR_MOD
          call READ_MODIS_SIZE_ATTR(trim(Level1b_Full_Name),Image%Number_Of_Elements,Image%Number_Of_Lines)
          exit
       endif
-   
+
       if (trim(Sensor%Sensor_Name) == 'MODIS-MAC') then
          Image%Number_Of_Elements =  11
          Image%Number_Of_Lines = 2030
          exit
       endif
-      
+
       if ( trim(Sensor%Sensor_Name) == 'AHI') then
-     
+
          if (Image%Static_Nav_Flag) then
             call SETUP_READ_LEVEL1B_FIXED_GRID_STATIC_NAV()
          else
@@ -2182,7 +2202,7 @@ module SENSOR_MOD
             ahi_config % lon_range =[Nav%Lon_West_Limit,Nav%Lon_East_Limit]
             ahi_config % lat_range =[Nav%Lat_South_Limit,Nav%Lat_North_Limit]
             call ahi_segment_information_region ( ahi_config , offset, count )
-        
+
             Image%Number_Of_Elements =  count(1)
             Image%Number_Of_Lines = count(2)
          endif
@@ -2190,7 +2210,7 @@ module SENSOR_MOD
          exit
 
       end if
-      
+
       if (trim(Sensor%Sensor_Name) == 'VIIRS') then
          Image%Number_Of_Elements = 3200
          Dir_File = trim(Image%Level1b_Path) // trim(Image%Level1b_Name)
@@ -2216,15 +2236,15 @@ module SENSOR_MOD
          exit
 
       end if
-      
+
       if (trim(Sensor%Sensor_Name) == 'VIIRS-NASA-HRES') then
-       
+
           Image%Number_Of_Elements = 6400
-          
-          
+
+
           time_identifier =  trim(Image%Level1b_Name(9:23))
           file_v03img = file_search( trim(Image%Level1b_Path),'VNP03IMG'//trim(time_identifier)//'*.nc',cc,rel_path)
-          
+
           if ( cc .eq. 0) then
               print*,'we need V03IMG file ..'
               return ! skip file
@@ -2232,19 +2252,19 @@ module SENSOR_MOD
 
           call READ_NUMBER_OF_SCANS_VIIRS_NASA (trim(file_v03img(1)),Image%Number_Of_Lines,Ierror_Nscans)
           Image%Number_Of_Lines = Image%Number_Of_Lines * 2
-          
+
           ! If error reading, then go to next file
           if (Ierror_Nscans /= 0) then
             Ierror = sym%YES
             return      ! skips file
           endif
-          
+
          exit
-          
+
       end if
 
       if (trim(Sensor%Sensor_Name) == 'VIIRS-NASA') then
-       
+
           Image%Number_Of_Elements = 3200
           Dir_File = trim(Image%Level1b_Path) // trim(Image%Level1b_Name)
 
@@ -2257,7 +2277,7 @@ module SENSOR_MOD
           endif
 
           exit
-        
+
       endif
 
       if (trim(Sensor%Sensor_Name) == 'VGAC') then
@@ -2300,32 +2320,32 @@ module SENSOR_MOD
          endif
          exit
       endif
-      
+
       !--- if an IFF, call routine to determine dimensions from latitude sds
       if (index(Sensor%Sensor_Name,'IFF') > 0) then
          call GET_IFF_DIMS_BRIDGE(trim(Image%Level1b_Path)//trim(Image%Level1b_Name),Image%Number_Of_Elements,Image%Number_Of_Lines)
          exit
       end if
-     
+
       !--- AVHRR
       if (trim(Sensor%Sensor_Name) == 'AVHRR-1' .or. &
           trim(Sensor%Sensor_Name) == 'AVHRR-2' .or. &
           trim(Sensor%Sensor_Name) == 'AVHRR-3' .or. &
           trim(Sensor%Sensor_Name) == 'AVHRR-FUSION') then
-         
+
          !-------------------------------------------------------
          ! Determine the type of level 1b file
          !-------------------------------------------------------
          call DETERMINE_AVHRR_FILE_TYPE(trim(Level1b_Full_Name),AVHRR_GAC_FLAG,AVHRR_KLM_Flag,AVHRR_AAPP_Flag, &
                                         AVHRR_Ver_1b,AVHRR_Data_Type,Byte_Swap_1b,AVHRR_1_Flag)
-   
+
          !-------------------------------------------------------------------
          !-- based on file type (AVHRR_KLM_Flag and Gac), determine parameters needed
          !-- to read in header and data records for this orbit
-         !------------------------------------------------------------------- 
+         !-------------------------------------------------------------------
          call DEFINE_1B_DATA(AVHRR_GAC_Flag,AVHRR_KLM_Flag,AVHRR_AAPP_Flag,Nrec_Avhrr_Header, &
                              Nword_Clavr_Start,Nword_Clavr)
- 
+
          !-------------------------------------------------------------------
          !-- read in header
          !-------------------------------------------------------------------
@@ -2354,9 +2374,9 @@ module SENSOR_MOD
          Image%Number_Of_Lines = AREAstr%Num_Line
         else
          if (Image%Static_Nav_Flag) then
-         
+
           call SETUP_READ_LEVEL1B_FIXED_GRID_STATIC_NAV()
-          
+
          else
           print *, "ERROR, unknown GOES-RU data"
           stop
@@ -2391,7 +2411,7 @@ module SENSOR_MOD
 
       stop
 
-      end do   !end of send 
+      end do   !end of send
 
    end subroutine SET_FILE_DIMENSIONS
 
@@ -2415,8 +2435,8 @@ module SENSOR_MOD
       integer, intent(out):: Ierror_Level1b
       TYPE(viirs_nasa_hres_config_type) :: nasa_hres_config
       integer :: i_line
-      
-      
+
+
       Ierror_Level1b = 0
       Cloud_Mask_Aux_Read_Flag = sym%NO
 
@@ -2440,7 +2460,7 @@ module SENSOR_MOD
 
             if (Sensor%Chan_On_Flag_Default(1)==sym%YES) then
                call READ_DARK_COMPOSITE_COUNTS(Segment_Number, Goes_Xstride, &
-                     Dark_Composite_Name,AREAstr,Two_Byte_Temp) 
+                     Dark_Composite_Name,AREAstr,Two_Byte_Temp)
                call CALIBRATE_GOES_DARK_COMPOSITE(Two_Byte_Temp,Time_Since_Launch,Ref_Ch1_Dark_Composite)
             end if
 
@@ -2462,11 +2482,20 @@ module SENSOR_MOD
                !--- read auxillary cloud mask and cloud type
                if (Use_Aux_Flag /= sym%NO_AUX) then
 
-                  call DETERMINE_SAPF_NAME(Segment_Number)
-                  call READ_SAPF_DATA(Segment_Number)
+                  if (Use_Aux_Flag == sym%USE_AUX_MODAWG ) then
+                     !--- read MVCM cloud mask
+                     call DETERMINE_MVCM_NAME(Segment_Number)
+                     call READ_MVCM_DATA(Segment_Number)
+                  else
+                     call DETERMINE_SAPF_NAME(Segment_Number)
+                     call READ_SAPF_DATA(Segment_Number)
+                  endif
 
                end if
-            else 
+
+
+
+            else
                print*,'read abi is to installed stopping'
                stop
             end if
@@ -2477,7 +2506,7 @@ module SENSOR_MOD
                      Image%Start_Doy, Image%Start_Time, &
                      AREAstr)
             call READ_DARK_COMPOSITE_COUNTS(Segment_Number,Seviri_Xstride, &
-                     Dark_Composite_Name,AREAstr,Two_Byte_Temp) 
+                     Dark_Composite_Name,AREAstr,Two_Byte_Temp)
             call CALIBRATE_SEVIRI_DARK_COMPOSITE(Two_Byte_Temp,Ref_Ch1_Dark_Composite)
 
          case('MTSAT-IMAGER')
@@ -2486,7 +2515,7 @@ module SENSOR_MOD
                      Time_Since_Launch, &
                      AREAstr,NAVstr)
             call READ_DARK_COMPOSITE_COUNTS(Segment_Number,Mtsat_Xstride, &
-                     Dark_Composite_Name,AREAstr,Two_Byte_Temp) 
+                     Dark_Composite_Name,AREAstr,Two_Byte_Temp)
             call CALIBRATE_MTSAT_DARK_COMPOSITE(Two_Byte_Temp,Ref_Ch1_Dark_Composite)
 
          case('FY2-IMAGER')
@@ -2496,7 +2525,7 @@ module SENSOR_MOD
 
          case('AGRI') ! FY4
             call READ_FY4_LEVEL1B_DATA(Segment_Number, trim(Image%Level1b_Name), Ierror_Level1b)
-        
+
          case('COMS-IMAGER')
             call READ_COMS(Segment_Number,Image%Level1b_Name, &
                      Image%Start_Doy, Image%Start_Time, &
@@ -2513,11 +2542,11 @@ module SENSOR_MOD
               Time_Since_Launch,Nrec_Avhrr_Header,Segment_Number)
             call READ_HIRS_DATA(Segment_Number)
             call REPLACE_AVHRR_WITH_HIRS()
-        
+
          case('VIIRS')
 
             call READ_VIIRS_DATA (Segment_Number, trim(Image%Level1b_Name), Ierror_Level1b)
-      
+
             ! If error reading, then go to next file
             if (Ierror_Level1b /= 0) return
 
@@ -2526,27 +2555,27 @@ module SENSOR_MOD
                call DETERMINE_SAPF_NAME(Segment_Number)
                call READ_SAPF_DATA(Segment_Number)
             end if
-        
-        
+
+
          case('VIIRS-NASA-HRES')
-        
+
             nasa_hres_config % channel_on_modis(1:45) = Sensor%Chan_On_Flag_Default(1:45)  == sym%YES
-          
+
             nasa_hres_config % sensor = 'npp'
             nasa_hres_config % filename = trim(Image%Level1b_Name)
             nasa_hres_config % path = trim(Image%Level1b_Path)
             nasa_hres_config % ny_start = (Segment_Number - 1) * Image%Number_Of_Lines_Per_Segment + 1
             nasa_hres_config % ny_end = min(Image%Number_Of_Lines, nasa_hres_config % ny_start + Image%Number_of_Lines_Per_Segment - 1)
             call READ_VIIRS_NASA_HRES_DATA(nasa_hres_config)
-          
-          
-        
+
+
+
             Image%Number_Of_Lines_Read_This_Segment = nasa_hres_config % ny_end - nasa_hres_config % ny_start + 1
-           
+
             do i_line = 1, Image%Number_Of_Lines_Per_Segment
                Image%Scan_Number(i_line) =nasa_hres_config % ny_start + i_line - 1
             end do
-           
+
          case('VIIRS-NASA')
 
             call READ_VIIRS_NASA_DATA (Segment_Number, trim(Image%Level1b_Name), Ierror_Level1b)
@@ -2555,7 +2584,7 @@ module SENSOR_MOD
             if (Ierror_Level1b /= 0) return
 
             !--- read auxillary cloud mask
-            if (Use_Aux_Flag /= sym%NO_AUX) then 
+            if (Use_Aux_Flag /= sym%NO_AUX) then
                call DETERMINE_MVCM_NAME(Segment_Number)
                call READ_MVCM_DATA(Segment_Number)
             endif
@@ -2569,22 +2598,28 @@ module SENSOR_MOD
          case('AHI')
 
             if (Image%Static_Nav_Flag) then
-               IF (Image%Nc_Format_Flag) then 
+               IF (Image%Nc_Format_Flag) then
                   call READ_LEVEL1B_FIXED_GRID_STATIC_NAV()
                else
 #ifdef LIBHIM
-                  call READ_HSD_FIXED_GRID_STATIC_NAV()   
+                  call READ_HSD_FIXED_GRID_STATIC_NAV()
 #else
                   call MESG( "LibHimawari not installed. Cannot process HSD. Stopping", level = verb_lev % ERROR , color = 4 )
                   stop
 #endif
-                 
+
                end if
-            
+
             else
                call READ_AHI_DATA (Segment_Number, trim(Image%Level1b_Name), Ierror_Level1b)
             end if
 
+            !--- read auxillary cloud mask
+            if (Use_Aux_Flag /= sym%NO_AUX) then
+               call DETERMINE_MVCM_NAME(Segment_Number)
+               call READ_MVCM_DATA(Segment_Number)
+            endif
+
          end select
 
          !--- IFF data (all sensors same format)
@@ -2603,7 +2638,7 @@ module SENSOR_MOD
 
          end if
 
-         !--- VIIRS GAC data 
+         !--- VIIRS GAC data
          if (index(Sensor%Sensor_Name,'VGAC') > 0) then
             call READ_VGAC_DATA(Segment_Number, Ierror_Level1b)
             ! If error reading, then go to next file
@@ -2619,7 +2654,7 @@ module SENSOR_MOD
 
 
       end if
-       
+
    end subroutine READ_LEVEL1B_DATA
 
    !-------------------------------------------------------------------
@@ -2630,7 +2665,7 @@ module SENSOR_MOD
 
       call READ_NETCDF_GLOBAL_ATTRIBUTE(Image%Level1b_Full_Name, 'orbital_slot', Orbital_Slot)
       call READ_NETCDF_GLOBAL_ATTRIBUTE(Image%Level1b_Full_Name, 'scene_id', Scene_Id)
-          
+
       if (trim(Orbital_Slot)=="GOES-East") then
          if (trim(Scene_Id)=="Full Disk") then
              Static_Nav_File = "goes_east_abi_fulldisk_static_nav.nc"
@@ -2678,7 +2713,7 @@ module SENSOR_MOD
          Sensor%Num_Chan_Sensor = 11
          if (.not. allocated(Sensor%CLAVRx_Chan_Map)) allocate(Sensor%Clavrx_Chan_Map(Sensor%Num_Chan_Sensor))
          Sensor%CLAVRx_Chan_Map = [1,2,6,20,27,28,29,30,31,32,33]
-      
+
       case(171:172,810,514:515) !MTSAT,COMS,Fy2D,Fy2E
          Sensor%Num_Chan_Sensor = 5
          if (.not. allocated(Sensor%CLAVRx_Chan_Map)) allocate(Sensor%Clavrx_Chan_Map(Sensor%Num_Chan_Sensor))
@@ -2691,7 +2726,7 @@ module SENSOR_MOD
          Sensor%Num_Chan_Sensor = 16
          if (.not. allocated(Sensor%CLAVRx_Chan_Map)) allocate(Sensor%Clavrx_Chan_Map(Sensor%Num_Chan_Sensor))
          Sensor%CLAVRx_Chan_Map = (/3,4,1,2,6,7,20,37,27,28,29,30,38,31,32,33/)
-      case(270:271) !-- abi
+      case(270:273) !-- abi
          Sensor%Num_Chan_Sensor = 16
          if (.not. allocated(Sensor%CLAVRx_Chan_Map)) allocate(Sensor%Clavrx_Chan_Map(Sensor%Num_Chan_Sensor))
          Sensor%CLAVRx_Chan_Map = (/3,1,2,26,6,7,20,37,27,28,29,30,38,31,32,33/)
@@ -2707,7 +2742,7 @@ module SENSOR_MOD
          Sensor%Num_Chan_Sensor = 14
          if (.not. allocated(Sensor%CLAVRx_Chan_Map)) allocate(Sensor%Clavrx_Chan_Map(Sensor%Num_Chan_Sensor))
          Sensor%CLAVRx_Chan_Map = (/3,1,2,26,6,7,21,20,27,28,29,31,32,33/)
-      case(783,784) !MODIS 
+      case(783,784) !MODIS
          Sensor%Num_Chan_Sensor = 36
          if (.not. allocated(Sensor%CLAVRx_Chan_Map)) allocate(Sensor%Clavrx_Chan_Map(Sensor%Num_Chan_Sensor))
          Sensor%CLAVRx_Chan_Map = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19, &
@@ -2721,7 +2756,7 @@ module SENSOR_MOD
          print*,'sensor for WMO number not found in SET_SENSOR_CHANNEL_MAPPING for ', Sensor%WMO_ID
          print*,'stopping ... Please fix this in sensor_mod.F90'
          print*,' better tell andi.walther@ssec.wisc.edu'
-         stop    
+         stop
       end select
 
    end subroutine SET_SENSOR_CHANNEL_MAPPING
diff --git a/main_src/seviri_mod.f90 b/main_src/seviri_mod.f90
index 3aea2c5a0924caecc8abc4b52b359880e33f6849..81f9b4fb4a4dffd29727a154c2f1ec7a2f29a7b9 100644
--- a/main_src/seviri_mod.f90
+++ b/main_src/seviri_mod.f90
@@ -62,6 +62,8 @@ module SEVIRI_MOD
   use FILE_TOOLS,only:getlun
   
   use VIEWING_GEOMETRY_MOD,only: possol
+  
+  use CLAVRX_MESSAGE_MOD, only: mesg, verb_lev
 
   implicit none
   private
@@ -89,8 +91,8 @@ module SEVIRI_MOD
   integer(kind=int4), public, parameter:: Seviri_Xstride = 1
   integer(kind=int4), private, parameter:: Num_3km_Scans_Fd = 3712
   integer(kind=int4), private, parameter:: Num_3km_Elem_fd = 3712
-  integer(kind=int4), private, parameter:: TIME_FOR_FD_SCAN = 900000 !milliseconds (15min)
-  real, private, save:: Scan_rate    !scan rate in millsec / line
+  integer(kind=int4), private, parameter:: TIME_FOR_FD_SCAN = 900000 !milliseconds (15min)  !CHECK THIS
+  real, private, save:: Scan_Rate    !scan rate in millsec / line
   integer(kind=int4), private, parameter:: Seviri_Byte_Shift = 0
   integer, dimension(11), parameter, private:: Chan_Idx=[1,2,6,20,27,28,29,30,31,32,33]
 
@@ -149,7 +151,7 @@ contains
 
     open(unit=Instr_Const_lun,file=trim(Instr_Const_file),status="old",position="rewind",action="read",iostat=ios0)
 
-    print *, "opening ", trim(Instr_Const_file)
+    call MESG ( "Error opening MSG constants file "//trim(Instr_Const_file), level=Verb_Lev%WARNING)
     erstat = 0
     if (ios0 /= 0) then
       erstat = 19
@@ -509,22 +511,21 @@ contains
       ! convert from eumetsat coordinate space if necessary 
       if (AREAstr%north_bound == 1) line = AREAstr%Num_Line - line + 1
       
-      do i=1, xsize
+      do i= 1, xsize
         elem = (i - 1)*(xstride) + xstart
         ! convert to eumetsat coordinate space if necessary
         if (AREAstr%west_vis_pixel == 1) elem = AREAstr%Num_Elem - elem + 1 
 
-
         CALL fgf_to_earth(FGF_TYPE,        &
-                            DBLE(elem),      &
-                            DBLE(line),      &
-                            DBLE(CFAC_MSG),  &
-                            DBLE(COFF_MSG),  &
-                            DBLE(LFAC_MSG),  &
-                            DBLE(LOFF_MSG),  &
-                            SUB_LON_MSG,     &
-                            dlon,            &
-                            dlat)
+                          DBLE(elem),      &
+                          DBLE(line),      &
+                          DBLE(CFAC_MSG),  &
+                          DBLE(COFF_MSG),  &
+                          DBLE(LFAC_MSG),  &
+                          DBLE(LOFF_MSG),  &
+                          SUB_LON_MSG,     &
+                          dlon,            &
+                          dlat)
 
         if (dlat == -999.0) then  ! -999.0 is MSG nav missing value
           Nav%Lat_1b(i,j) = Missing_Value_Real4
diff --git a/main_src/surface_properties_mod.f90 b/main_src/surface_properties_mod.f90
index 6fbcc7094bc86156136d7dcf26bb5df27d37d562..6fcbd1ab9950241b4b38e475f76a328a0fccb99d 100644
--- a/main_src/surface_properties_mod.f90
+++ b/main_src/surface_properties_mod.f90
@@ -414,10 +414,11 @@ subroutine GET_PIXEL_SFC_EMISS_FROM_SFC_TYPE(j1,j2)
       if (Bad_Pixel_Mask(i,j) == sym%YES) then
         cycle
       endif
- 
+         
       !--- based on surface type, assign surface emissivities if seebor not used
       !--- if the Sfc_Type is missing, treat pixel as bad
-      if (sfc_emiss_option == 4) then
+      if (sfc_emiss_option == 0) then
+        
         if (Sfc%Sfc_Type(i,j) >= 0 .and. Sfc%Sfc_Type(i,j) < 15) then     !limits depend on Sfc_Type
           if (Sensor%Chan_On_Flag_Default(20)==sym%YES) Ch(20)%Sfc_Emiss(i,j) = Ch20_Sfc_Emiss_Umd(Sfc%Sfc_Type(i,j))
           if (Sensor%Chan_On_Flag_Default(21)==sym%YES) Ch(21)%Sfc_Emiss(i,j) = Ch20_Sfc_Emiss_Umd(Sfc%Sfc_Type(i,j))
diff --git a/main_src/user_options.f90 b/main_src/user_options.f90
index e7310fcae30a81fb2d9c1c09414bee4f9d4c0462..77b0805b660827ec1867cbbbe8242fe6cb1612d8 100644
--- a/main_src/user_options.f90
+++ b/main_src/user_options.f90
@@ -303,9 +303,10 @@ contains
       integer::ios0
       integer::erstat
       integer:: Default_Lun
-      real:: Rand_Number
-      character(len=7):: Rand_String
+      integer:: PID
+      character(len=7):: Pid_String
       character(len=1020):: Temporary_Data_Dir_Root
+      character(len=1020):: hostname
       integer:: String_Length
       character(len=1):: Last_Char
       
@@ -330,7 +331,7 @@ contains
       read(unit=Default_Lun,fmt="(a)") Temporary_Data_Dir_Root
       read(unit=Default_Lun,fmt=*) Expert_Mode
 
-      !--- add a random number suffix to Temporary_Data_Dir
+      !--- add the PID to Temporary_Data_Dir
       string_length = len_trim(Temporary_Data_Dir_Root)
       last_char = Temporary_Data_Dir_Root(string_length:string_length)
 
@@ -338,10 +339,10 @@ contains
         Temporary_Data_Dir_Root = Temporary_Data_Dir_Root(1:string_length-1)
       endif
 
-      call INIT_RANDOM_SEED()
-      call random_number(Rand_Number)
-      write(Rand_String,'(I7.7)' ) int(10.0e06 * Rand_Number)
-      Temporary_Data_Dir = trim(Temporary_Data_Dir_Root) // '_' // trim(Rand_String) // '/'
+      call HOSTNM(hostname)
+      PID = getpid()
+      write(Pid_String,'(I7.7)' ) pid
+      Temporary_Data_Dir = trim(Temporary_Data_Dir_Root) // '_' // trim(hostname) // '_' // trim(Pid_String) // '/'
 
       !--- check expert mode, if 0 return
       if ( Expert_Mode  == 0 )  then
@@ -960,8 +961,6 @@ contains
       !--- for expert modes < 6, turn on channels on sensor
       call CHANNEL_SWITCH_ON (SensorName)
 
-!---> print *, "AFTER CHANNEL_SWITCH_ON ==> ", Sensor%Chan_On_Flag_Default
-
       !--- sub pixel channel set
       call SUB_PIXEL_CHANNEL_ON_SET()
 
@@ -1148,7 +1147,7 @@ contains
       
       case ('GOES-RU-IMAGER')
          filename  = 'ecm2_lut_abhi_default.nc'
-      case ('MODIS','METIMAGE')
+      case ('MODIS','METIMAGE','MERSI-2')
          filename  = 'ecm2_lut_modis_default.nc' 
       case ('VIIRS','VIIRS-NASA','VIIRS-NASA-HRES','VIIRS-IFF','VGAC')
          filename  = 'ecm2_lut_viirs_default.nc' 
@@ -1158,6 +1157,12 @@ contains
          filename  = 'ecm2_lut_avhrr_default.nc' 
       case ( 'MTSAT-IMAGER')
           filename  = 'ecm2_lut_mtsat2_default.nc'
+      case ( 'SEVIRI')
+          filename  = 'ecm2_lut_seviri_default.nc'
+      case ( 'GOES-MP-IMAGER')
+          filename  = 'ecm2_lut_goesmp_src-abhi_default.nc'
+      case ( 'GOES-IL-IMAGER')
+          filename  = 'ecm2_lut_goesil_src-abhi_default.nc'
       case default 
          call MESG("sensor "//TRIM(SensorName)//" does not have ECM2 LUT:  Inform andrew.heidinger@noaa.gov")
          stop 
@@ -1373,8 +1378,8 @@ contains
          endif
       enddo
 
-      if ((Sensor%WMO_Id == 270  .or. Sensor%WMO_Id == 271) .and. ACHA%Mode == 'baseline') then
-         call MESG( "Running Baseline Cloud Height for GOES-16/17 ",level = verb_lev % DEFAULT)
+      if (ACHA%Mode == 'baseline') then
+         call MESG( "Running AWG Baseline Cloud Height ",level = verb_lev % DEFAULT)
          Mode_Idx = -1
       endif
 
@@ -1582,8 +1587,6 @@ contains
          Sensor%Chan_On_Flag_Default(i) = 0_int1
       end do
 
-!---> print *, "CHECK_USER_CHANNEL_CHOICES ==> ", Sensor%Chan_On_Flag_Default
-
    end subroutine CHECK_USER_CHANNEL_CHOICES
    ! --------------------------------------------------------------------
    !  every incosistency between channel settings and algorithm mode 
diff --git a/pfaast/cx_pfaast_coef_mod.f90 b/pfaast/cx_pfaast_coef_mod.f90
index 325e5212ad7cd1f0aa60a5f29a0149c3d8d2b695..3d9fc11b70503fa9c726bea0f318dd7ef9f76b3e 100644
--- a/pfaast/cx_pfaast_coef_mod.f90
+++ b/pfaast/cx_pfaast_coef_mod.f90
@@ -118,7 +118,7 @@ contains
       case ( 'SEVIRI','MTSAT','VIIRS','FY2','GOES')
          ! - GOES-16-19 is ABI 
          if ( trim(device) .EQ. 'GOES' .and. &
-              (satellite .EQ. '16' .OR. satellite .EQ. '17')) then
+              (satellite .EQ. '16' .OR. satellite .EQ. '17' .OR. satellite .EQ. '18')) then
             call this % read_ahi_abi(device, satellite)
          else 
             call this % read_general ( device, satellite  )
@@ -201,8 +201,10 @@ contains
            !--- Will need more logic when goes-18/19 are online.
            if (sat_num .eq. '16') then
              cfile = 'abixxx101.dat'
-           else
+           else if (sat_num .eq. '17') then
              cfile = 'abi7xxx101.dat'
+           else
+             cfile = 'abi8xxx101.dat'
            endif
         case('AHI9')
            cfile = 'ahi9xxx101.dat'
@@ -218,6 +220,8 @@ contains
         call open_files ( cfile, 5, lun_s )
       else if (sat .eq. 'GOES' .and. sat_num .eq. '17') then
         call open_files ( cfile, 5, lun_s )
+      else if (sat .eq. 'GOES' .and. sat_num .eq. '18') then
+        call open_files ( cfile, 5, lun_s )
       else
         call open_files ( cfile, 4, lun_s )
       endif
diff --git a/rttov/cx_rttov_bridge_mod.f90 b/rttov/cx_rttov_bridge_mod.f90
index 146e649d50300e48578cc63bf56a2a5fadb1a6a8..6c8fa471661c2ffd3a99424c5cb1865d99f00b5d 100644
--- a/rttov/cx_rttov_bridge_mod.f90
+++ b/rttov/cx_rttov_bridge_mod.f90
@@ -122,6 +122,7 @@ subroutine compute_transmission_rttov ( &
   real, intent(out)  :: taut (:,:)  
   integer :: lll
    real, parameter :: Q_MIXRATIO_TO_PPMV = 1.60771704e+6
+   real :: max_satzen
    
    
   opts % rt_ir % addsolar = .FALSE.
@@ -147,9 +148,9 @@ subroutine compute_transmission_rttov ( &
   opts % config % verbose            = .FALSE.  ! Enable printing of warnings
 
  
-   lll  = channel_map (sensor,ancil_data_path, kban_in , coef_filename,cld_coef_filename)
+   lll  = channel_map (sensor,ancil_data_path, kban_in , coef_filename,cld_coef_filename,max_satzen)
    
-  
+ 
   nprof = size(temp(1,:))
   nlevels = size(temp(:,1))
   
@@ -232,6 +233,8 @@ subroutine compute_transmission_rttov ( &
       chanprof(nch)%prof = j
       chanprof(nch)%chan = channel_list(jch)
       
+      
+      
     ENDDO
   ENDDO
   
@@ -270,7 +273,7 @@ subroutine compute_transmission_rttov ( &
     profiles(iprof) % s2m % v = 0.
     profiles(iprof) % s2m % wfetc = 1000000.
     profiles(iprof) % skin % t = temp(96,iprof) + 5.
-    profiles(iprof) % zenangle = min(theta(iprof),85.29)
+    profiles(iprof) % zenangle = min(theta(iprof),max_satzen)
     profiles(iprof) % azangle = 0.
     profiles(iprof) % latitude = 45.
     profiles(iprof) % longitude = 19.
diff --git a/rttov/cx_rttov_mapping_mod.f90 b/rttov/cx_rttov_mapping_mod.f90
index af1569365883a2b4b9c34069542b93540f59dc2c..358222b16234389544806cbde44fd0274a82a3ef 100644
--- a/rttov/cx_rttov_mapping_mod.f90
+++ b/rttov/cx_rttov_mapping_mod.f90
@@ -4,7 +4,7 @@ contains
   !
   !
   !
-  function channel_map (sensor,ancil_data_path, chn,coef_filename,cld_coef_filename) result (list)
+  function channel_map (sensor,ancil_data_path, chn,coef_filename,cld_coef_filename,max_satzen) result (list)
 
 #define STRINGIFY(x) x
 
@@ -24,6 +24,7 @@ contains
     character (len = 1) :: metop_nr
     integer :: avhrr_num
     integer :: nr_hirs
+    real :: max_satzen
    
 #ifndef RTTOVPATH
     print*,'RTTOV PATH not set ..stop'
@@ -34,6 +35,7 @@ contains
 
     path = trim(ancil_data_path) // "static/rttov/"
     rttov_version_string = '9'
+    max_satzen = 85.
     ! -- 
     !  the mapping translates one channel infot
     !  RTTOV channel number
@@ -43,7 +45,7 @@ contains
     
     allocate(chn_list(45))
     chn_list = -1
-    
+    list = -1
     
     
     ! metop 
@@ -101,6 +103,47 @@ contains
       chn_list(20:38) = [7,-1,-1,-1,-1,-1,-1,9,10,11,12,14,15,16,-1,-1,-1,8,13]
       list = chn_list(chn)
       sensor_string = 'himawari_9_ahi'  
+    
+    case ('GOES-8','GOES-9')
+      
+      
+      chn_list(20) = 1
+      chn_list(27) = 2
+      chn_list(31) = 3
+      chn_list(32) = 4
+      list = chn_list(chn)
+      sensor_string = 'goes_'//sensor(6:6)//'_imager'
+      rttov_version_string = '7'
+      max_satzen = 75.
+   
+   
+    case ('GOES-10','GOES-11')
+      
+      
+      chn_list(20) = 1
+      chn_list(27) = 2
+      chn_list(31) = 3
+      chn_list(32) = 4
+      list = chn_list(chn)
+      sensor_string = 'goes_'//sensor(6:7)//'_imager'
+      rttov_version_string = '8'
+      max_satzen = 75.
+   
+     
+    case ('GOES-12','GOES-13','GOES-14','GOES-15')
+      
+      
+      chn_list(20) = 1
+      chn_list(27) = 2
+      chn_list(31) = 3
+      chn_list(33) = 4
+      
+      list = chn_list(chn)
+      sensor_string = 'goes_'//sensor(6:7)//'_imager'
+      rttov_version_string = '8'
+      max_satzen = 75.
+     
+     
       
     case ('GOES-16')
       chn_list = [2,3,1,-1,-1,5,6,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7,-1,7,-1,-1,-1,4,9,10,11,12,14,15,16,-1,-1,-1,8,13,-1,-1,-1,-1,-1,-1,-1]
@@ -111,6 +154,11 @@ contains
       chn_list = [2,3,1,-1,-1,5,6,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7,-1,7,-1,-1,-1,4,9,10,11,12,14,15,16,-1,-1,-1,8,13,-1,-1,-1,-1,-1,-1,-1]
       list = chn_list(chn)
       sensor_string = 'goes_17_abi'
+
+    case ('GOES-18')
+      chn_list = [2,3,1,-1,-1,5,6,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7,-1,7,-1,-1,-1,4,9,10,11,12,14,15,16,-1,-1,-1,8,13,-1,-1,-1,-1,-1,-1,-1]
+      list = chn_list(chn)
+      sensor_string = 'goes_18_abi'
       
     case ( 'SEVIRI-MSG08')
       !---stw chn_list(20:33) = [1,-1,-1,-1,-1,-1,-1,2,3,4,5,6,7,8] 
@@ -250,13 +298,13 @@ contains
     
     coef_filename = trim(path)//'/rtcoef_rttov12/rttov'//rttov_version_string//'pred54L/rtcoef_'//trim(sensor_string)//'.dat' 
     cld_coef_filename = trim(path)//'cldaer_ir/sccldcoef_'//trim(sensor_string)//'.dat'
- 
+
    if ( list .eq. 0) list = -1
     !print*,'Sensor rttov mapping: ',sensor,chn,list
     deallocate(chn_list)
     
-    
-   
+   if (rttov_version_string .eq. '7') max_satzen = 75.
+   if (rttov_version_string .eq. '8') max_satzen = 75.
 
 end function channel_map 
 
diff --git a/rttov/cx_rttov_sfc_emiss.f90 b/rttov/cx_rttov_sfc_emiss.f90
index 4ec06d80ecf947a89e3e88bccf1fd924d295047b..2133f9394df41813b18142a2a1ab9afd11ed8f96 100644
--- a/rttov/cx_rttov_sfc_emiss.f90
+++ b/rttov/cx_rttov_sfc_emiss.f90
@@ -84,7 +84,6 @@ module cx_rttov_sfc_emiss
   integer(kind=jpim), parameter :: nchan_modis = 16  ! Number of channels per profile
   integer(kind=jpim), parameter :: nchan_viirs  = 2 ! Number of channels per profile
   integer(kind=jpim), parameter :: nchan_abi = 2 ! Number of channels per profile
-  !integer(kind=jpim), parameter :: nchan_clavrx = 48 ! Number of channels per profile for claverx
 
   integer(kind=jpim), parameter :: chn_list_modis(nchan_modis) = &
                                     (/1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16/)
@@ -108,7 +107,6 @@ module cx_rttov_sfc_emiss
   TYPE(rttov_chanprof),    POINTER :: chanprof_viirs(:)    => NULL() ! Input channel/profile list
   TYPE(rttov_chanprof),    POINTER :: chanprof_abi(:)    => NULL() ! Input channel/profile list
  
-  !real(kind=jprb),    allocatable :: emiss(:,:,:)
   real*4,    allocatable :: emiss(:,:,:)
 
   type(rttov_emis_atlas_data)       :: atlas
@@ -149,8 +147,6 @@ CONTAINS
 #include "rttov_setup_emis_atlas.interface"
 
 !-----------------------------------------------------------------------------------
-!-----------------------------------------------------------------------------------
-
 ! set input 
 !-----------------------------------------------------------------------------------
    atlas_path=trim(rttov_path)//'emis_data/'
@@ -179,20 +175,14 @@ CONTAINS
 
     nprof=dim1*dim2 
     
-    !write(*,*) 'init dimesions: ',Image%Number_Of_Elements, Image%Number_Of_Lines_Per_Segment , nprof
-    print*,'ATLAS TYPE IR For emis RTTOV: ',atlas_type_ir
-    
-
     call rttov_setup_emis_atlas(   &
                     err,               &
                     opts,              &
                     imonth,            &
                     atlas_type_ir,     &  ! IR atlas
                     atlas,             &
-                    atlas_id = atlasid, 	       &  ! To select CAMEL climatology atlas
+                    atlas_id = atlasid,&  ! To select CAMEL climatology atlas
                     path = atlas_path)
-                    !ir_atlas_read_std = .TRUE., &
-                    !ir_atlas_ang_corr = do_angcorr)
       IF (err /= errorstatus_success) THEN
           WRITE(*,*) 'error initialising emissivity atlas'
           CALL rttov_exit(err)
@@ -285,7 +275,6 @@ CONTAINS
     REAL(kind=real4), dimension(:,:), intent(in) :: lats, lons
     logical, dimension(:,:), intent(in) :: space_mask
     character(len=*), intent(in)  :: rttov_path   ! Path to rttov emis atlas data
-    !REAL(kind=real4), dimension(:,:,:), intent(out) :: Emiss1
  
     integer(kind=jpim), parameter :: ioout = 51 ! Output file unit
   
@@ -296,19 +285,10 @@ CONTAINS
    
     logical(kind=jplm) :: do_angcorr, single_instrument
 
-    !real(kind=jprb),    allocatable :: emiss(:,:,:)
-    !integer(kind=jpim),    allocatable :: snf(:)
-    !integer(kind=jpim), allocatable :: sfct(:)
-
 #include "rttov_skipcommentline.interface"
 #include "rttov_get_emis.interface"
 
     !-----------------------------------------------------------------------------------
-    !-----------------------------------------------------------------------------------
-
-    ! Open file for output
-    ! open(ioout, file='output_camel_clim_atlas.ascii', form='formatted', status='replace', action='write')
-
     ! set input 
     !-----------------------------------------------------------------------------------
     
@@ -343,11 +323,11 @@ CONTAINS
     
     if (ALL(Space_mask)) then
       emiss1 = missing_value_real4
-          deallocate (emiss1)
+      deallocate (emiss1)
       deallocate(emissivity_modis)
-    deallocate(emissivity_viirs)
-    deallocate(emissivity_abi)
-    deallocate(profiles)
+      deallocate(emissivity_viirs)
+      deallocate(emissivity_abi)
+      deallocate(profiles)
       return
     end if
       
@@ -355,35 +335,21 @@ CONTAINS
     do Elem_Idx = 1, Image%Number_Of_Elements 
       do Line_Idx = 1, Image%Number_Of_Lines_Per_Segment
         k=k+1
-        !if (Bad_Pixel_Mask(Elem_Idx,Line_Idx) == sym%YES) cycle 
          
         profiles(k)%latitude=dble(lats(Elem_Idx,Line_Idx))
         
         profiles(k)%longitude=dble(lons(Elem_Idx,Line_Idx))
-	      profiles(k)%skin%surftype =0  ! land
+        profiles(k)%skin%surftype =0  ! land
         profiles(k)%skin%snow_fraction = 0.         
-	 
-	     ! if (Sfc%Land(Elem_Idx,Line_Idx) /= sym%Land ) profiles(k)%skin%surftype =1
-	      if (Sfc%Snow(Elem_Idx,Line_Idx) == sym%SNOW) profiles(k)%skin%snow_fraction = 1.	 
-	
-	      if (Sfc%Sfc_Type(Elem_Idx,Line_Idx) == 0 ) then
-            !profiles(k)%skin%surftype =1	 ! sea
-            
-        end if
-	    end do
+
+        if (Sfc%Snow(Elem_Idx,Line_Idx) == sym%SNOW) profiles(k)%skin%snow_fraction = 1. 
+
+      end do
     end do
               
    ! initialize output matrix
     emiss1=0.
     
-    
-    !k = 3100
-    
-    !print*, profiles(k)%latitude
-    !print*, profiles(k)%longitude
-    !print*,profiles(k)%skin%surftype
-    !print*,profiles(k)%skin%snow_fraction
-    
     !    
     !----------------------------
     ! Retrieve values from atlas for MODIS
@@ -396,9 +362,6 @@ CONTAINS
                   coefs_modis,                       &
                   atlas,                             &
                   emissivity_modis(:))
-                  !emis_std = emis_std_modis)
-                  !emis_flag_modis)
-    
  
     
     if (err /= errorstatus_success) then
@@ -412,17 +375,15 @@ CONTAINS
     call rttov_get_emis(                           &
                   err,                               &
                   opts,                              &
-                 chanprof_viirs,                    &
+                  chanprof_viirs,                    &
                   profiles,                          &
                   coefs_viirs,                       &
                   atlas,                             &
                   emissivity_viirs(:))         
-                  !emis_std =emis_std_viirs)
-                  !emis_flag_viirs)
     IF (err /= errorstatus_success) THEN
                WRITE(*,*) 'error reading viirs emissivity atlas'
                CALL rttov_exit(err)
-	  END IF      
+    END IF      
 
     !----------------------------
     ! Retrieve values from atlas for ABI
@@ -435,76 +396,42 @@ CONTAINS
                   coefs_abi,                         &
                   atlas,                             &
                   emissivity_abi(:))
-                  !emis_std = emis_std_abi)
-                  !emis_flag_abi)
     IF (err /= errorstatus_success) THEN
                   WRITE(*,*) 'error reading abi emissivity atlas'
                   CALL rttov_exit(err) 
-	  ENDIF	  
-
-
-! Write out emissivity data
-      !write(ioout,'(a,l1)') 'Init for angular correction? ', do_angcorr
-      !write(ioout,'(a,l1)') 'Init for single inst? ', single_instrument     
-      !do k =1, nprof
-      !  write(ioout,'(a,i8)') 'Profile ',k
-      !  write(ioout,'(a)') ' Chan  Emissivity  Standard Dev  Flag'
-      !  do Chan_Idx = 1, nchan_modis
-      !    lo = (k-1)*nchan_modis
-      !       write(ioout,'(i5,f11.4)') chn_list_modis(Chan_Idx), emissivity_modis(lo+Chan_Idx)
-      !  enddo
-      !  do Chan_Idx = 1, nchan_abi
-      !    lo = (k-1)*nchan_abi
-      !       write(ioout,'(i5,f11.4)') chn_list_abi(Chan_Idx), emissivity_abi(lo+Chan_Idx)
-      !  enddo
-      !  do Chan_Idx = 1, nchan_viirs
-      !    lo = (k-1)*nchan_viirs
-      !       write(ioout,'(i5,f11.4)') chn_list_viirs(Chan_Idx), emissivity_viirs(lo+Chan_Idx)
-      !  enddo
-      !enddo
+    ENDIF
+
+
        
 ! creating claverx emissivity 
 !--------------------------------    
 
 
-    ! print* 
     k=0
     do Elem_Idx = 1, Image%Number_Of_Elements 
       do Line_Idx = 1, Image%Number_Of_Lines_Per_Segment
-        !print*
-        !print*,'===================   ======='
+
         k=k+1
-         ! print*, profiles(k)%latitude
-   ! print*, profiles(k)%longitude
-   ! print*,profiles(k)%skin%surftype
-   ! print*,profiles(k)%skin%snow_fraction
     
         do Chan_Idx = 1, 6
           lo = (k-1)*nchan_modis
-	        !write(*,*) Elem_Idx,Line_Idx,k, Chan_Idx, lo
-          !emiss(k,1,Chan_Idx+19)=(emissivity_modis(lo+Chan_Idx))
           emiss1(Elem_Idx,Line_Idx,Chan_Idx+19)=(emissivity_modis(lo+Chan_Idx))
         end do
         
         do Chan_Idx = 7, nchan_modis
           lo = (k-1)*nchan_modis
-          !emiss(k,1,Chan_Idx+20)=(emissivity_modis(lo+Chan_Idx))
           emiss1(Elem_Idx,Line_Idx,Chan_Idx+20)=(emissivity_modis(lo+Chan_Idx))
         end do
         
         do Chan_Idx = 1, nchan_abi
              lo = (k-1)*nchan_abi
-             !emiss(k,1,Chan_Idx+36)=emissivity_abi(lo+Chan_Idx)
              emiss1(Elem_Idx,Line_Idx,Chan_Idx+36)=emissivity_abi(lo+Chan_Idx)
         end do
 
         do Chan_Idx = 1, nchan_viirs
              lo = (k-1)*nchan_viirs
-             !emiss(k,1,Chan_Idx+41)=emissivity_viirs(lo+Chan_Idx)
              emiss1(Elem_Idx,Line_Idx,Chan_Idx+41)=emissivity_viirs(lo+Chan_Idx)
         end do
-        ! print*,k
-        !  print*,emiss1(Elem_Idx,Line_Idx,:)
  
       end do
     end do
@@ -514,30 +441,18 @@ CONTAINS
         Ch(Chan_Idx)%Obs_Type /= THERMAL_OBS_TYPE) cycle
 
       if (Sensor%Chan_On_Flag_Default(Chan_Idx) == sym%YES) then
-        Ch(Chan_Idx)%Sfc_Emiss=emiss1(:,:,Chan_Idx)
+        where(emiss1(:,:,Chan_Idx) .ge. 0)
+            Ch(Chan_Idx)%Sfc_Emiss=emiss1(:,:,Chan_Idx)
+        end where
       end if
     end do
  
-                 		     
-    ! do Elem_Idx = 1, Image%Number_Of_Elements 
-    !    do Line_Idx = 1, Image%Number_Of_Lines_Per_Segment
-    !       do Chan_Idx = 1, nchan_clavrx     	 
-     	         !write(ioout,*) Elem_Idx,Line_Idx,Chan_Idx,Ch(Chan_Idx)%Sfc_Emiss(Elem_Idx,Line_Idx)
-    !      enddo
-    !   enddo
-    ! enddo		     
-
-! Close the output file
-! close(ioout)
-  
     deallocate (emiss1)
     deallocate(emissivity_modis)
     deallocate(emissivity_viirs)
     deallocate(emissivity_abi)
     deallocate(profiles)
     
-   
-    
   end subroutine get_rttov_emiss
 
 
diff --git a/test.sh b/test.sh
new file mode 100755
index 0000000000000000000000000000000000000000..783742e15443b2e710a3fee19eca4b78cb7e72e4
--- /dev/null
+++ b/test.sh
@@ -0,0 +1,3 @@
+#!/bin/bash
+cd test
+py.test -s test.py
diff --git a/test/clavrx.py b/test/clavrx.py
new file mode 100644
index 0000000000000000000000000000000000000000..9a30cc459858f3d571cf50a38c3a339b14242e19
--- /dev/null
+++ b/test/clavrx.py
@@ -0,0 +1,263 @@
+from subprocess import run
+from tempfile import TemporaryDirectory
+import os
+from pathlib import Path
+import yaml
+from parse_options import write_options
+import io
+from copy import deepcopy
+import shutil
+from uuid import uuid4
+import re
+
+
+print_orig = print
+
+def print(*args, flush=True, **kwargs):
+    return print_orig(*args, flush=True, **kwargs)
+
+ROOT = Path(__file__).resolve().absolute().parent
+
+CLAVRX_COMMIT = None
+
+if False:
+    DEFAULT_CLAVRX = (ROOT / 'clavrx_bin/clavrxorb.no_phase_f8').absolute()
+else:
+    DEFAULT_CLAVRX = (ROOT / 'clavrx_bin/clavrxorb.acha_tau_uncer').absolute()
+
+DEFAULT_L2_LIST = ROOT / 'level2_lists/level2_list'
+
+
+def run_clavrx(clavrx, file_list_content, options_file_content, level2_list_content, debug=False, log=True, scratch=None):
+    print(f'Using {clavrx}')
+    clavrx = Path(clavrx).absolute()
+    assert clavrx.exists(), str(clavrx)
+    clavrx = str(clavrx)
+    if scratch is None:
+        if Path('/scratch').is_dir():
+            scratch = Path('/scratch/jobs') / os.environ['USER']
+            scratch.mkdir(exist_ok=True, parents=True)
+    with TemporaryDirectory(prefix='clavrx_tmp_', dir=scratch) as tmpdir:
+        tmpdir = Path(tmpdir)
+        print(f'Logs temporarily in {tmpdir}')
+        def crash():
+            print('Copying logs to ./ ')
+            shutil.copytree(tmpdir, tmpdir.name)
+        try:
+            file_list = tmpdir / 'file_list'
+            with open(file_list, 'w') as fp:
+                fp.write(file_list_content)
+            options_file = tmpdir / 'clavrx_options'
+            with open(options_file,'w') as fp:
+                fp.write(options_file_content)
+            level2_list = tmpdir / 'level2_list'
+            with open(level2_list,'w') as fp:
+                fp.write(level2_list_content)
+            if log:
+                with open(tmpdir / 'clavrx.log','wb') as stdout:
+                    with open(tmpdir / 'clavrx.err','wb') as stderr:
+                        tmpdir.chmod(0o555)
+                        p = run([clavrx], cwd=tmpdir, stdout=stdout, stderr=stderr)
+                        tmpdir.chmod(0o755)
+            else:
+                tmpdir.chmod(0o555)
+                p = run([clavrx], cwd=tmpdir)
+                tmpdir.chmod(0o755)
+            p.check_returncode()
+        except Exception:
+            crash()
+            raise
+        if debug:
+            crash()
+        
+
+def build_file_list(out, files):
+    fp = io.StringIO()
+    out = Path(out)
+    files = [Path(f) for f in files]
+    for part in zip(*[f.absolute().parts[:-1] for f in files]):
+        for i in part:
+            assert i == part[0], 'Not all files in same directory'
+    dir = files[0].absolute().parent
+    print(dir)
+    fp.write(str(dir)+'/\n')
+    fp.write(str(out.absolute())+'/\n')
+    for f in files:
+        fp.write(f.name+'\n')
+    fp.seek(0)
+    file_list_content = fp.read()
+    return file_list_content
+
+
+def build_options_file(config):
+    fp = io.StringIO()
+    write_options(fp, x)
+    fp.seek(0)
+    options_file_content = fp.read()
+    return options_file_content
+
+
+def build_options_file(config):
+    fp = io.StringIO()
+    write_options(fp, config)
+    fp.seek(0)
+    options_file_content = fp.read()
+    return options_file_content
+
+
+def default_level2_list_content(override_list=None):
+    if override_list is None:
+        l = DEFAULT_L2_LIST
+    else:
+        l = Path(override_list)
+    l = l.absolute()
+    return get_level2_list_content(l)
+
+def get_level2_list_content(file):
+    print(f'Level2 List {file}')
+    with open(file) as fp:
+        level2_list_content = fp.read()
+    return level2_list_content
+
+
+def test_run_clavrx():
+    clavrx = DEFAULT_CLAVRX
+    config = get_config()
+    options_file_content = build_options_file(config) 
+
+    files = [
+        '/arcdata/polar/noaa/noaa16/2001/2001_04_01_091/avhrr/NSS.GHRR.NL.D01091.S0019.E0212.B0270203.WI',
+        '/arcdata/polar/noaa/noaa16/2001/2001_04_01_091/avhrr/NSS.GHRR.NL.D01091.S0207.E0401.B0270304.WI'
+    ]
+    file_list_content = build_file_list('/tmp/', files)
+    level2_list_content = default_level2_list_content()
+    run_clavrx(clavrx, file_list_content, options_file_content, level2_list_content)
+
+
+def update_config(default, override):
+    config = deepcopy(default)
+    for k,v in override.items():
+        if isinstance(v, dict):
+            for k2,v2 in v.items():
+                if isinstance(v2,dict):
+                    config[k][k2].update(v2)
+                else:
+                    config[k][k2] = v2
+        else:
+            config[k] = v
+    return config
+    
+
+def get_config(override_yml=None):
+    with open(ROOT / 'options/default_options.yml') as fp:
+        default = yaml.load(fp, Loader=yaml.FullLoader)
+    if override_yml is not None:
+        with open(override_yml) as fp:
+            override = yaml.load(fp, Loader=yaml.FullLoader)
+        config = update_config(default, override)
+    else:
+        config = default
+    return config
+
+
+def add_processing_attrs(f, clavrx, options_file_content=None, config=None):
+
+    print('Adding processing attributes')
+    try:
+        clavrxorb_name = clavrx.resolve().name
+        clavrx_commit = None
+        if '.' in clavrxorb_name:
+            _,suffix = clavrxorb_name.split('.')
+            if re.match('^(dirty_)?[a-f0-9]{40}$', suffix):
+                clavrx_commit = suffix
+
+        print('import')
+        import netCDF4
+        import hashlib
+        import yaml
+        print('open')
+        nc = netCDF4.Dataset(f,'a')
+        nc.setncattr('clavrx_bin', clavrxorb_name)
+        print('clavrx md5')
+        # Get binary md5sum
+        with open(clavrx, 'rb') as fp:
+            clavrxorb_md5 = hashlib.md5(fp.read()).hexdigest()
+        print('set clavrxorb_md5')
+        nc.setncattr('clavrxorb_md5', clavrxorb_md5)
+        if clavrx_commit is not None:
+            print('set clavrxorb_md5')
+            nc.setncattr('clavrx_commit', clavrx_commit)
+        else:
+            print('no clavrx_commit')
+        if config is not None:
+            print('set config_yaml')
+            nc.setncattr('config_yaml', yaml.dump(config))
+        else:
+            print('no config')
+        if options_file_content is not None:
+            print('set options_file_content')
+            nc.setncattr('clavrx_options', options_file_content)
+        else:
+            print('no options_file_content')
+        print('close')
+        nc.close()
+        print('done')
+    except Exception as e:
+        print('!!!!!! Could not add processing attrs')
+        print(e)
+        print('------ Could not add processing attrs')
+
+
+def main(l1b_files, out_dir, override_yml=None, override_list=None, clavrx=None, debug=False, log=True):
+
+    if clavrx is None:
+        clavrx = DEFAULT_CLAVRX
+    elif isinstance(clavrx, str):
+        p1 = Path(clavrx)
+        p2 = DEFAULT_CLAVRX.parent / clavrx
+        if p1.exists():
+            clavrx = p1
+        elif p2.exists():
+            # just the name
+            clavrx = p2
+        
+    for f in l1b_files:
+        f = Path(f)
+        if not f.is_file():
+            print(f'{f} is not a file')
+            print(f'Exiting')
+            return 1
+
+    out_dir = Path(out_dir)
+    out_dir.mkdir(exist_ok=True, parents=True)
+    config = get_config(override_yml)
+    print(config)
+    options_file_content = build_options_file(config) 
+
+    print(f'Processing {len(l1b_files)} files')
+    uuid = str(uuid4())
+    tmp_out_dir = out_dir / f'processing_{uuid}'
+    tmp_out_dir.mkdir(exist_ok=True)
+    file_list_content = build_file_list(tmp_out_dir, l1b_files)
+    level2_list_content = default_level2_list_content(override_list)
+    run_clavrx(clavrx, file_list_content, options_file_content, level2_list_content, debug=debug, log=log)
+    for f in tmp_out_dir.glob('*'):
+        if f.name.endswith('.nc'):
+            add_processing_attrs(f, clavrx, options_file_content=options_file_content, config=config)
+        print('Move')
+        shutil.move(str(f), str(out_dir))
+    tmp_out_dir.rmdir()
+
+
+if __name__ == '__main__':
+    import argparse
+    parser = argparse.ArgumentParser()
+    parser.add_argument('-c',help='config', required=False, default=None)
+    parser.add_argument('-l',help='l2_list', required=False, default=None)
+    parser.add_argument('--debug',action='store_true')
+    parser.add_argument('--nolog',action='store_true')
+    parser.add_argument('--clavrx',required=False, default=None)
+    parser.add_argument('out_dir')
+    parser.add_argument('l1b_files',nargs='+')
+    args = parser.parse_args()
+    main(args.l1b_files, args.out_dir, override_yml=args.c, override_list=args.l, debug=args.debug, log=not args.nolog, clavrx=args.clavrx)
diff --git a/test/options/default_options.yml b/test/options/default_options.yml
new file mode 100644
index 0000000000000000000000000000000000000000..1d150a47a9cbdcb249374729cfadc7d380ad4c8a
--- /dev/null
+++ b/test/options/default_options.yml
@@ -0,0 +1,193 @@
+lut: default
+ancil_dir: /ships19/cloud/scratch/cphillips/clavrx_ancil_data
+temp_dir: ./temp_files/
+verbosity: DEFAULT   #E1 Messaging Control Flag (QUIET = 0,ERROR = 1,MINIMAL = 2,WARNING = 4,DEFAULT = 5,VERBOSE = 9)
+cloud_mask: ECM2   #E1 ALG Mask mode bayesian cloud mask (0=Baseline CM, 1 = ECM1, 2 = ECM2)
+dcomp_alg: 3   #E1 ALG DCOMP
+acha_alg: default #E1 ALG ACHA (off, default or select combinations like 110_120_133)
+ccl_mode: top + base #E1 ALG CCL Mode (0 =off,1=top only,2 = top + base,3 = top + base + lower)
+ccl_type: NOAT #E1 ALG CCL Type = (0=NOAT, 1=ISSCP, 2=NCEP)
+enable_asos: False   #E1 ALG ASOS Mode (0=off, 1=on)
+enable_nlcomp: False   #E1 ALG NLCOMP (0=off, 1=on)
+enable_aerosol: False   #E1 ALG Aerosol (0=off, 1=on)
+enable_output: True #E2 OUTPUT Level-2  file output flag (0= no, 1 = yes)
+output_format: netcdf4   #E2 OUTPUT format flag (0= hdf4, 1 = netcdf4)
+prc_cloud_flag: 1   #E2 PRC Cloud flag  
+scan_lines: 200 #E2 Num scan lines
+enable_sasrab: False  #E2 SASRAB switch on/off SASRAB parameters 
+nwp_model: cfsr   #E2 NWP Nwp Model Option  (0=off, 1=gfs,2=ncep reanalysis,3=cfsr,4= gdas, 5=merra,6=era,7=gfs ait,8=gfs fv3)
+nwp_mode: minimal   #E2 NWP Nwp Mode  (0=minimal, 1=all)
+rtm: pfast #E2 RTM rtm option  (0=crtm,1=pfast, (2=rttov))
+nav_option: l1b   #E2 NAV nav option  (0 =  Use  level-1b,1 = external (future) 2 = Reposnx ( fred nagle): For non-AVHRR, use 0) 
+sfc_emiss: seebor   #E3 0=UMD, 1=RTTOV 2=SEEBOR (3=CRTM not yet installed)
+compress_output: True   #E2 OUT output compression flag (0=no,1=gzip)
+aux_cloud_mask: 2   #E2 MASK read auxilary cloud mask 1b (0 = don't read, 1 = read from 1b and use, 2 = read and save as aux, 3 = read modawg/mvcm, but compute ecm2 type/phase)
+seebor_emiss: True   #E3 SFC seebor emiss flag (0=no, 1=yes) 
+see_emiss: True   #E3 SFC see  emiss flag (0=no, 1=yes) 
+hires_sfc_type: False   #E3 SFC read hires sfc type flag (0=no-8km, 1 = yes-1km) 
+land_mask: True   #E3 SFC read land mask flag (0=no, 1=yes) (goge2_0ll.hdf)
+coast_mask: True   #E3 SFC read coast mask flag (0=no, 1=yes) (coast_mask_xkm.hdf, x = 1 or 8)
+elevation: True   #E3 SFC read surface elevation flag (0=no, 1=yes) (GLOBE_xkm_digelev.hdf, x = 1 or 8)
+volcano: False   #E3 SFC read volcano mask flag (0=no, 1=yes) (volcano_mask_1km.hdf)
+snow_mask: ims #1   #E3 SFC read snow mask flag (0=no, 1 = ims, 2 = GlobSnow)
+dark_composite: False #0   #E3 SFC read dark composite flag (0=no, 1 = yes) only GEO
+avhrr:
+    ref_cal: default #0   #E4 AVHRR-ONLY specific ref_cal_1b flag (0 = use default level1b cal, 1 = recalibrate using PATMOS-x numbers (AVHRR-only))
+    therm_cal: default #0   #E4 AVHRR-ONLY therm_cal_1b flag (0 = use default level1b cal, 1= recalibrate using PATMOS-x numbers (AVHRR-only))
+lrc: True #1   #E5 MASK lrc_flag (0=no,1=yes) 
+smooth_nwp: True   #E5 NWP smooth nwp flag (0=no, 1=yes)   
+process_undetected: False #0   #E5 process_undetected_flag (0=no,1=yes) ( means process all pixels cloudy and cloud-free
+bounds:
+    enable: False
+    lat_north: 15.0
+    lat_south: 5.0
+    lon_west: -100.
+    lon_east: -90.
+    zen_min: 0.0
+    zen_max: 90.0
+    solzen_min: 0.0
+    solzen_max: 180.0
+    name: WI
+sample:
+    mode: average+stats
+    x_stride: 1
+    y_stride: 1
+
+channels:
+    MODIS:
+        1: True
+        2: True
+        3: True
+        4: True
+        5: True
+        6: True
+        7: True
+        8: True
+        9: True
+        10: True
+        11: True
+        12: True
+        13: True
+        14: True
+        15: True
+        16: True
+        17: True
+        18: True
+        19: True
+        20: True
+        20: True
+        21: True
+        22: True
+        23: True
+        24: True
+        25: True
+        26: True
+        27: True
+        28: True
+        29: True
+        30: True
+        31: True
+        32: True
+        33: True
+        33: True
+        34: True
+        35: True
+        36: True
+    AxI:
+        37: True
+        38: True
+    VIIRS:
+        I1: False
+        I2: False
+        I3: False
+        I4: False
+        I5: False
+        DNB: False
+
+new_channels:
+    sensor: clavrx
+    clavrx:
+        CLAVRX_1: True
+        CLAVRX_2: True
+        CLAVRX_3: True
+        CLAVRX_4: True
+        CLAVRX_5: True
+        CLAVRX_6: True
+        CLAVRX_7: True
+        CLAVRX_8: True
+        CLAVRX_9: True
+        CLAVRX_10: True
+        CLAVRX_11: True
+        CLAVRX_12: True
+        CLAVRX_13: True
+        CLAVRX_14: True
+        CLAVRX_15: True
+        CLAVRX_16: True
+        CLAVRX_17: True
+        CLAVRX_18: True
+        CLAVRX_19: True
+        CLAVRX_20: True
+        CLAVRX_21: True
+        CLAVRX_22: True
+        CLAVRX_23: True
+        CLAVRX_24: True
+        CLAVRX_25: True
+        CLAVRX_26: True
+        CLAVRX_27: True
+        CLAVRX_28: True
+        CLAVRX_29: True
+        CLAVRX_30: True
+        CLAVRX_31: True
+        CLAVRX_32: True
+        CLAVRX_33: True
+        CLAVRX_34: True
+        CLAVRX_35: True
+        CLAVRX_36: True
+        CLAVRX_37: True
+        CLAVRX_38: True
+        CLAVRX_39: True
+        CLAVRX_40: True
+        CLAVRX_41: True
+        CLAVRX_42: True
+        CLAVRX_43: True
+        CLAVRX_44: True
+        CLAVRX_45: True
+        CLAVRX_46: True
+        CLAVRX_47: True
+        CLAVRX_48: True
+    avhrr_hirs:
+        HIRS_4: True
+        HIRS_5: True
+        HIRS_6: True
+        HIRS_7: True
+        HIRS_9: True
+        HIRS_11: True
+        HIRS_12: True
+        HIRS_14: True
+        HIRS_15: True
+        HIRS_18: True
+        AVHRR_065: True
+        AVHRR_086: True
+        AVHRR_160: True
+        AVHRRHIRS_1100: True
+        AVHRRHIRS_1200: True
+        AVHRRHIRS_0375: True
+
+    ahi:
+        AHI_1: True
+        AHI_2: True
+        AHI_3: True
+        AHI_4: True
+        AHI_5: True
+        AHI_6: True
+        AHI_7: True
+        AHI_8: True
+        AHI_9: True
+        AHI_10: True
+        AHI_11: True
+        AHI_12: True
+        AHI_13: True
+        AHI_14: True
+        AHI_15: True
+        AHI_16: True
+
diff --git a/test/parse_options.py b/test/parse_options.py
new file mode 100644
index 0000000000000000000000000000000000000000..b392684448c6aad81edd7878649e64329213741a
--- /dev/null
+++ b/test/parse_options.py
@@ -0,0 +1,269 @@
+import yaml
+
+
+OLD_CONFIG = False
+channel_map = None
+
+VIIRS_CHANNELS = {f'M{i}':c for i,c in enumerate([8,9,3,4,1,15,2,5,26,6,7,20,22,29,31,32],1)}
+VIIRS_CHANNELS.update({f'I{i}':i+38 for i in range(1,6)})
+VIIRS_CHANNELS['DNB'] = 44
+
+HIRS_CHANNELS = {'HIRS_4': 36, 'HIRS_5': 35, 'HIRS_6': 34, 'HIRS_7': 33, 'HIRS_9': 30, 'HIRS_11': 28, 'HIRS_12': 27, 'HIRS_14': 25, 'HIRS_15': 24, 'HIRS_18': 23}
+
+AVHRR_CHANNELS = {
+    'AVHRR_065':1,
+    'AVHRR_086':2,
+    'AVHRR_160':6,
+}
+
+FUSION_CHANNELS = {**HIRS_CHANNELS, **AVHRR_CHANNELS}
+FUSION_CHANNELS['AVHRRHIRS_1100'] = 31
+FUSION_CHANNELS['AVHRRHIRS_1200'] = 32
+FUSION_CHANNELS['AVHRRHIRS_0375'] = 20
+
+AHI_CHANNELS = {
+'AHI_1':3, 'AHI_2':4, 'AHI_3':1, 'AHI_4':2, 'AHI_5':6, 'AHI_6':7,
+'AHI_7':20, 'AHI_8':37, 'AHI_9':27, 'AHI_10':28, 'AHI_11':29, 'AHI_12':30,
+'AHI_13':38, 'AHI_14':31, 'AHI_15':32, 'AHI_16':33
+}
+
+ALL_CHANNELS = {f'CLAVRX_{i}':i for i in range(1, 6*8+1)}
+
+
+NEW_CHANNEL_MAP = {
+    'viirs':VIIRS_CHANNELS,
+    'avhrr_hirs':FUSION_CHANNELS,
+    'ahi':AHI_CHANNELS,
+    'clavrx':ALL_CHANNELS
+}
+
+
+VERBOSITY = {
+    'QUIET':0,
+    'ERROR':1,
+    'MINIMAL':2,
+    'WARNING':4,
+    'DEFAULT':5,
+    'VERBOSE':9
+}
+CLOUD_MASK = {
+    'Baseline':0,
+    'ECM1':1,
+    'ECM2':2
+}
+
+CCL_MODE = {
+    'off':0,
+    'top only':1,
+    'top + base':2,
+    'top + base + lower':3
+}
+
+CCL_TYPE = {
+    'NOAT':0,
+    'ISSCP':1,
+    'NCEP':2
+}
+
+OUTPUT_FORMAT = {
+    'hdf4':0,
+    'netcdf4':1
+}
+
+NWP_MODEL = {
+     'off':0,
+     'gfs':1,
+     'ncep':2,
+     'cfsr':3,
+     'gdas':4,
+     'merra':5,
+     'era':6,
+     'gfs ait':7,
+     'gfs fv3':8
+}
+
+NWP_MODE={
+    'minimal':0,
+    'all':1
+}
+
+RTM = {
+    'crtm':0,
+    'pfast':1,
+    'rttov':2
+}
+
+NAV_OPTION = {
+    'l1b':0,
+    'external':1,
+    'Reposnx':2
+}
+
+SNOW_MASK = {
+    'no':0,
+    'ims':1,
+    'GlobSnow':2
+}
+
+REF_CAL = {
+    'default':0,
+    'recalibrate':1
+}
+THERM_CAL = {
+    'default':0,
+    'recalibrate':1
+}
+
+SFC_EMISS = {
+    'umd':0,
+    'rttov':1,
+    'seebor':2,
+    'crtm':3
+}
+
+MAPPING = {
+    'verbosity':VERBOSITY,
+    'cloud_mask':CLOUD_MASK,
+    'ccl_mode':CCL_MODE,
+    'ccl_type':CCL_TYPE,
+    'output_format':OUTPUT_FORMAT,
+    'nwp_model':NWP_MODEL,
+    'nwp_mode':NWP_MODE,
+    'rtm':RTM,
+    'nav_option':NAV_OPTION,
+    'snow_mask':SNOW_MASK,
+    'therm_cal':THERM_CAL,
+    'ref_cal':REF_CAL,
+    'sfc_emiss':SFC_EMISS
+}
+
+
+def write_bounds(fp, options):
+    enable = int(options['enable'])
+    lat_north = options['lat_north']
+    lat_south = options['lat_south']
+    lon_west = options['lon_west']
+    lon_east = options['lon_east']
+    zen_min = options['zen_min']
+    zen_max = options['zen_max']
+    solzen_min = options['solzen_min']
+    solzen_max = options['solzen_max']
+    name = options['name']
+    fp.write(f'{enable} {lat_south} {lat_north} {lon_west} {lon_east} {zen_min} {zen_max} {solzen_min} {solzen_max} {name}\n')
+
+SAMPLE_MODES = {
+    'sample':0,
+    'average':1,
+    'average+stats':2
+}
+def write_sample(fp, options):
+    mode = SAMPLE_MODES[options['mode']]
+    x_stride = options['x_stride']
+    y_stride = options['y_stride']
+    fp.write(f'{mode} {x_stride} {y_stride}\n')
+
+def write_channels(fp, options):
+    for r in [range(1,7), range(7,13), range(13,19), range(19,25), range(25,31), range(31,37)]:
+        fp.write(' '.join([str(int(options['MODIS'][i])) for i in r])+'\n')
+    fp.write(' '.join([str(int(i)) for i in [options['AxI'][37], options['AxI'][38],
+                                             *[options['VIIRS'][f'I{j}'] for j in range(1,5)]
+                                            ]
+                      ])+'\n')
+    fp.write(' '.join([str(int(i)) for i in [options['VIIRS']['I5'], options['VIIRS']['DNB'], *[0,0,0,0]]])+'\n')
+
+def write_new_channels(fp, options):
+    for r in [range(1,7), range(7,13), range(13,19), range(19,25), range(25,31), range(31,37), range(37,43)]:
+        fp.write(' '.join([str(int(options[i])) for i in r])+'\n')
+    fp.write(' '.join([str(int(i)) for i in [options[43], options[44], *[0,0,0,0]]])+'\n')
+
+def write_options(fp, options):
+    def convert(k, v):
+        desc = ''
+        if k in MAPPING:
+            desc = ' ='+str(v)
+            v = MAPPING[k][v]
+        if isinstance(v, bool):
+            return f'{str(int(v)):20} ! {k}{desc}\n'
+        elif isinstance(v, int):
+            return f'{str(v):20} ! {k}{desc}\n'
+        else:
+            print(f'No converter: {k}={v}')
+            return f'{str(v):20} ! {k}{desc}\n'
+    order1 = [
+     'verbosity',
+     'cloud_mask',
+     'dcomp_alg',
+     'acha_alg',
+     'ccl_mode',
+     'ccl_type',
+     'enable_asos',
+     'enable_nlcomp',
+     'enable_aerosol',
+     'enable_output',
+     'output_format',
+     'prc_cloud_flag',
+     'scan_lines',
+     'enable_sasrab',
+     'nwp_model',
+     'nwp_mode',
+     'rtm',
+     'nav_option',
+     'compress_output',
+     'aux_cloud_mask'
+    ]
+    order2 =  ['sfc_emiss',
+     'see_emiss',
+     'hires_sfc_type',
+     'land_mask',
+     'coast_mask',
+     'elevation',
+     'volcano',
+     'snow_mask',
+     'dark_composite',
+    ]
+    if OLD_CONFIG:
+        order2[0] = 'seebor_emiss'
+    order3 = ['lrc',
+     'smooth_nwp',
+     'process_undetected',
+    ]
+    fp.write(options['ancil_dir'].rstrip('/')+'/\n')
+    fp.write(options['temp_dir'].rstrip('/')+'/\n')
+    fp.write('9  ! Expert mode\n')
+    for k in order1:
+        fp.write(convert(k, options[k]))
+    fp.write(options['lut']+'\n')
+    for k in order2:
+        fp.write(convert(k, options[k]))
+    fp.write(convert('ref_cal', options['avhrr']['ref_cal']))
+    fp.write(convert('therm_cal', options['avhrr']['therm_cal']))
+    for k in order3:
+        fp.write(convert(k, options[k]))
+    write_bounds(fp, options['bounds'])
+    write_sample(fp, options['sample'])
+    if 'new_channels' in options:
+        channels = new_channels(options['new_channels'])
+        write_new_channels(fp, channels)
+    else:
+        write_channels(fp, options['channels'])
+
+
+def new_channels(channels):
+    # only look at this sensor
+    new = {i:False for i in range(1,45)}
+    sensor = channels['sensor']
+    for c,b in channels[sensor].items():
+        new[NEW_CHANNEL_MAP[sensor][c]] = b
+    return new
+
+
+def main():
+    with open('clavrx_options.yml') as fp:
+        x = yaml.load(fp, Loader=yaml.FullLoader)
+    with open('clavrx_options', 'w') as fp:
+        write_options(fp, x)
+
+if __name__ == '__main__':
+    main()
+
+
diff --git a/test/save_record.py b/test/save_record.py
new file mode 100644
index 0000000000000000000000000000000000000000..0d538835784748c183cfbe6ea6c35a06773fe2ea
--- /dev/null
+++ b/test/save_record.py
@@ -0,0 +1,26 @@
+from pathlib import Path
+import test
+
+RECORD_DIR = Path('/ships19/cloud/archive/clavrx_test_data/version_granules')
+
+def main(version):
+    version_dir = RECORD_DIR / version
+    for func in test.save_funcs:
+        name = func.__name__
+        output_dir = version_dir / name
+        if output_dir.exists() and len(list(output_dir.glob('*')))>0:
+            print(output_dir, 'already exists')
+        else:
+            output_dir.mkdir(exist_ok=True,parents=True)
+            print(output_dir)
+            clavrx_options = func(out_dir=output_dir)
+            with open(output_dir / 'clavrx_options','w') as fp:
+                fp.write(clavrx_options)
+
+if __name__ == '__main__':
+    import argparse
+    parser = argparse.ArgumentParser()
+    parser.add_argument('version')
+    args = parser.parse_args()
+    main(args.version)
+
diff --git a/test/test.py b/test/test.py
new file mode 100644
index 0000000000000000000000000000000000000000..7c34dc8a46a0a692be269c47be9238fe747c10c8
--- /dev/null
+++ b/test/test.py
@@ -0,0 +1,350 @@
+"""
+test.py
+
+Test cases can be added by creating a function with "test" in the name
+
+A helper function "_run_it()" makes it easy to add a test.
+
+@save decorator marks tests that we'll permanently save the output from (see save_record.py)
+
+@extra decorator marks tests that won't be run unless we set TEST_EXTRA=True below)
+
+"""
+
+from clavrx import run_clavrx, get_config, build_options_file, build_file_list
+from pathlib import Path
+from tempfile import mkdtemp
+from shutil import rmtree
+import subprocess
+import pytest
+import signal
+import os
+import re
+
+CLAVRX = Path('../clavrx_bin/clavrxorb').absolute()
+assert CLAVRX.exists(), str(CLAVRX)+' does not exist'
+
+HERE = Path(__file__).absolute().parent
+
+def get_all_l2_variables():
+    l2_variables = set()
+    pattern = re.compile(r'.*case\([\'"](\w+)[\'"]\).*')
+    with open(HERE / '../main_src/level2_mod.f90') as fp:
+        for line in fp:
+            if 'case("' in line:
+                match = pattern.match(line)
+                if match is not None:
+                    l2_variables.add(match.group(1))
+    return sorted(l2_variables)
+
+
+L2_LIST_CONTENT = '\n'.join(['testing',*get_all_l2_variables()])
+
+TEST_EXTRA = False
+
+DEFAULT_MODE=None
+
+extra = pytest.mark.skipif(not TEST_EXTRA, reason="extra test")
+
+save_funcs = []
+def save(func):
+    save_funcs.append(func)
+    return func
+
+
+def _run_it(main_l1b_file, aux_l1b_files=(), config_override=None, out_dir=None, mode=DEFAULT_MODE):
+    """
+    Run clavrx case
+
+    main_l1b_file :: the primary l1b granule
+    aux_l1b_files :: list of files that will get linked next to the primary file in a temp dir
+    config_override :: dict of clavrx options to override the defaults (see options/default_options.yml)
+    out_dir :: directory to persist output the l2 file (default is a temporary directory which is removed)
+    
+    returns a string containing the contents of the clavrx_options file
+    """
+    main_l1b_file = Path(main_l1b_file)
+    tmpdir = Path(mkdtemp(dir=HERE))
+    try:
+        if out_dir is None:
+            out_dir = tmpdir / 'out'
+        else:
+            out_dir = Path(out_dir)
+        out_dir.mkdir(exist_ok=True, parents=True)
+        l1b_links = []
+        for f in aux_l1b_files:
+            f = Path(f)
+            assert f.exists()
+            newlink = tmpdir / f.name
+            newlink.symlink_to(f)
+            l1b_links.append(newlink)
+
+        main_l1b_link = tmpdir / main_l1b_file.name
+        main_l1b_link.symlink_to(main_l1b_file)
+
+        #print()
+        #args = ['ls','-l',str(tmpdir)]
+        #print(' '.join(args))
+        #subprocess.run(args)
+        #print()
+
+        config = get_config()
+        if config_override is not None:
+            for k,v in config_override.items():
+                if isinstance(v,dict):
+                    for k2,v2 in v.items():
+                        if isinstance(v2,dict):
+                            config[k][k2].update(v2)
+                        else:
+                            config[k][k2] = v2
+                else:
+                    config[k] = v
+        config['temp_dir'] = str(tmpdir) #str(out_dir / 'temp_dir')
+        options_file_content = build_options_file(config)
+        file_list_content = build_file_list(out_dir, [main_l1b_link])
+        level2_list_content = L2_LIST_CONTENT
+        options_file_path = tmpdir / 'clavrx_options'
+        with open(options_file_path,'w') as fp:
+            fp.write(options_file_content)
+        level2_list_content = L2_LIST_CONTENT
+        with open(tmpdir / 'level2_list', 'w') as fp:
+            fp.write(level2_list_content)
+        file_list_path = tmpdir / 'file_list'
+        with open(file_list_path, 'w') as fp:
+            fp.write(file_list_content)
+        if mode=='perf':
+            p = subprocess.run(['perf','record','-F99','-g',CLAVRX], cwd=tmpdir)
+        elif mode=='gdb':
+            p = subprocess.run(['gdb',CLAVRX], cwd=tmpdir)
+        elif mode=='valgrind':
+            p = subprocess.run(['valgrind','--suppressions='+str(Path('suppressions').absolute()), CLAVRX], cwd=tmpdir)
+        else:
+            p = subprocess.run([CLAVRX], cwd=tmpdir)
+        assert p.returncode == 0
+        return options_file_content
+    finally:
+        rmtree(tmpdir)
+
+def test_pgroup_bug():
+    main_l1b_file = Path('./dummy')
+    tmpdir = Path(mkdtemp(dir=HERE))
+    out_dir = tmpdir / 'out'
+    out_dir.mkdir()
+    try:
+        config = get_config()
+        config['temp_dir'] = str(out_dir / 'temp_dir')
+        options_file_content = build_options_file(config)
+        file_list_content = build_file_list(out_dir, [main_l1b_file])
+        options_file_path = tmpdir / 'clavrx_options'
+        with open(options_file_path,'w') as fp:
+            fp.write(options_file_content)
+        # Skip level2_list so the process ends early
+        # This test is for a bug that causes fast failures
+        #level2_list_content = L2_LIST_CONTENT
+        #with open(tmpdir / 'level2_list', 'w') as fp:
+            #fp.write(level2_list_content)
+        file_list_path = tmpdir / 'file_list'
+        with open(file_list_path, 'w') as fp:
+            fp.write(file_list_content)
+        # this returns immediately, and we need to keep the shell alive
+        if os.fork() == 0:
+            # child
+            # ignore SIGINT
+            signal.signal(2, signal.SIG_IGN)
+            os.chdir(tmpdir)
+            os.execv(str(CLAVRX),['clavrxorb'])
+        else:
+            pid,ws = os.wait()
+            rc = ws >> 8
+            assert rc != 125
+    finally:
+        rmtree(tmpdir)
+
+
+@save
+def test_noaa_viirs(out_dir=None):
+    #ROOT = Path('/apollo/cloud/archive/Satellite_Input/VIIRS-N20/global/2018/098/')
+    #VIIRS_L1_FNAME = 'GMTCO_j01_d20180407_t2358242_e2359487_b01995_c20190226192728879159_noac_ops.h5'
+    ROOT = Path('/ships19/cloud/archive/clavrx_test_data/viirs/noaa')
+    VIIRS_L1 = ROOT / 'GMTCO_npp_d20220221_t2356569_e0002373_b53481_c20220222005748538034_oebc_ops.h5'
+    aux = set(ROOT.glob('*npp_d20220221_t2356569_e0002373*'))
+    aux.remove(VIIRS_L1)
+    return _run_it(VIIRS_L1, aux, out_dir=out_dir)
+
+@save
+def test_nasa_viirs(out_dir=None):
+    ROOT = Path('/ships19/cloud/archive/clavrx_test_data/viirs/nasa')
+    vnp03 = ROOT / 'VNP03MOD.A2019003.1700.002.2021102031552.nc'
+    extra = set(ROOT.glob('*A2019003.1700*'))
+    extra.remove(vnp03)
+    return _run_it(vnp03, extra, out_dir=out_dir)
+
+@extra
+def test_nasa_viirs_rttov_slow(out_dir=None):
+    ROOT = Path('/ships19/cloud/archive/clavrx_test_data/viirs/nasa')
+    vnp03 = ROOT / 'VNP03MOD.A2019003.1700.002.2021102031552.nc'
+    extra = set(ROOT.glob('*A2019003.1700*'))
+    extra.remove(vnp03)
+    config_override = {
+        #'acha_alg':'off',
+        #'dcomp_alg':0,
+        #'prc_cloud_flag':0,
+        'rtm':'rttov',
+        'sfc_emiss':'rttov',
+    }
+    return _run_it(vnp03, extra, config_override=config_override, out_dir=out_dir)
+
+
+
+@save
+def test_avhrr(out_dir=None):
+    AVHRR = Path('/arcdata/polar/noaa/noaa18/2020/2020_01_01_001/avhrr/NSS.GHRR.NN.D20001.S0000.E0143.B7532324.WI')
+    return _run_it(AVHRR, out_dir=out_dir)
+
+def test_avhrr_get_goes_header_bug():
+    # This file is empty
+    AVHRR = Path('/arcdata/polar/noaa/noaa18/2022/2022_02_05_036/avhrr/NSS.GHRR.NN.D22036.S1847.E2013.B8614849.GC')
+    try:
+        return _run_it(AVHRR)
+        assert False, 'This file should cause a nonzero returncode'
+    except AssertionError as e:
+        pass
+
+
+@save
+def test_fusion(out_dir=None):
+    FUSION = Path('/ships19/cloud/archive/Satellite_Input/HIRS-FUSION/NN/2020/001/NSS.GHRR.NN.D20001.S0000.E0143.B7532324.WI.fusion.nc')
+    AVHRR = Path('/arcdata/polar/noaa/noaa18/2020/2020_01_01_001/avhrr/NSS.GHRR.NN.D20001.S0000.E0143.B7532324.WI')
+    override = {'lut':'ecm2_lut_avhrr123_hirs_common_chs.nc'}
+    return _run_it(FUSION, [AVHRR], config_override=override, out_dir=out_dir)
+
+
+@save
+def test_g16_fd(out_dir=None):
+    ROOT = Path('/arcdata/goes/grb/goes16/2020/2020_05_02_123/abi/L1b/RadF/')
+    files = [next(ROOT.glob(f'OR_ABI-L1b-RadF-M6C{i:02d}_G16_s202012322201*.nc')) for i in range(1,17)]
+    override = {'bounds':{
+        'enable':True,
+        'lat_north': 20.0,
+        'lat_south': 10.0,
+        'lon_west': -90.,
+        'lon_east': -80.,
+        'zen_min': 0.0,
+        'zen_max': 90.0,
+        'solzen_min': 0.0,
+        'solzen_max': 180.0,
+        'name': 'SUB'
+        }}
+    
+    return _run_it(files[0], files[1:], config_override=override, out_dir=out_dir)
+
+@save
+def test_g16_conus_day(out_dir=None):
+    ROOT = Path('/arcdata/goes/grb/goes16/2020/2020_05_02_123/abi/L1b/RadC/')
+    files = [next(ROOT.glob(f'OR_ABI-L1b-RadC-M6C{i:02d}_G16_s2020123200111*.nc')) for i in range(1,17)]
+    override = {'bounds':{
+        'enable':True,
+        'lat_north': 50.0,
+        'lat_south': 40.0,
+        'lon_west': -90.,
+        'lon_east': -80.,
+        'zen_min': 0.0,
+        'zen_max': 90.0,
+        'solzen_min': 0.0,
+        'solzen_max': 180.0,
+        'name': 'SUB'
+        }}
+    
+    return _run_it(files[0], files[1:], config_override=override, out_dir=out_dir)
+
+
+@extra
+def test_process_cloud_off():
+    # Use the avhrr template
+    AVHRR = Path('/arcdata/polar/noaa/noaa18/2020/2020_01_01_001/avhrr/NSS.GHRR.NN.D20001.S0000.E0143.B7532324.WI')
+    override = { 'prc_cloud_flag':0 }
+    return _run_it(AVHRR, config_override=override)
+
+
+@save
+def test_g17_fd(out_dir=None):
+    ROOT = Path('/arcdata/goes/grb/goes17/2020/2020_05_02_123/abi/L1b/RadF/')
+    files = [next(ROOT.glob(f'OR_ABI-L1b-RadF-M6C{i:02d}_G17_s2020123222031*.nc')) for i in range(1,17)]
+    override = {'bounds':{
+        'enable':True,
+        'lat_north': 20.0,
+        'lat_south': 10.0,
+        'lon_west': -130.,
+        'lon_east': -120.,
+        'zen_min': 0.0,
+        'zen_max': 90.0,
+        'solzen_min': 0.0,
+        'solzen_max': 180.0,
+        'name': 'SUB'
+        }}
+    
+    return _run_it(files[0], files[1:], config_override=override, out_dir=out_dir)
+
+
+def _g17_conus(out_dir=None, sfc_emiss='seebor', rtm='pfast', see_emiss=True):
+    ROOT = Path('/arcdata/goes/grb/goes17/2020/2020_05_02_123/abi/L1b/RadC/')
+    files = [next(ROOT.glob(f'OR_ABI-L1b-RadC-M6C{i:02d}_G17_s2020123222117*.nc')) for i in range(1,17)]
+    override = {'bounds':{
+        'enable':True,
+        'lat_north': 40.0,
+        'lat_south': 30.0,
+        'lon_west': -130.,
+        'lon_east': -120.,
+        'zen_min': 0.0,
+        'zen_max': 90.0,
+        'solzen_min': 0.0,
+        'solzen_max': 180.0,
+        'name': 'SUB'
+        },
+        'sfc_emiss':sfc_emiss,
+        'see_emiss':see_emiss,
+        'rtm':rtm
+    }
+    
+    return _run_it(files[0], files[1:], config_override=override, out_dir=out_dir)
+
+for rtm in ['pfast','rttov']:
+    for sfc_emiss in ['umd','rttov','seebor']:
+        for see_emiss in [False, True]:
+            if see_emiss:
+                see_emiss_str = 'IRseaemis'
+            else:
+                see_emiss_str = 'noIRseaemis'
+            exec(f"""
+@save
+def test_g17_conus_{rtm}_{sfc_emiss}_{see_emiss_str}(out_dir=None):
+    return _g17_conus(out_dir=out_dir, rtm='{rtm}', sfc_emiss='{sfc_emiss}', see_emiss={see_emiss})
+            """)
+
+@save
+def test_h8_fd_dat(out_dir=None):
+    ROOT = Path('/arcdata/nongoes/japan/himawari08/2021_01/2021_01_01_001/2300/')
+    files = sorted(ROOT.glob('HS_H08_20210101_2300_B*_FLDK*'))
+    override = {'bounds':{
+        'enable':True,
+        'lat_north': 20.0,
+        'lat_south': 10.0,
+        'lon_west': 130.,
+        'lon_east': 140.,
+        'zen_min': 0.0,
+        'zen_max': 90.0,
+        'solzen_min': 0.0,
+        'solzen_max': 180.0,
+        'name': 'SUB'
+        }}
+    
+    return _run_it(files[0], files[1:], config_override=override, out_dir=out_dir)
+
+def test_fy3d(out_dir=None):
+    ROOT = Path('/ships19/cloud/archive/clavrx_test_data/fy3d/')
+    L1B = next(ROOT.glob('tf2022234070952.FY3D-X_MERSI_GEO1K_L1B.HDF'))
+    aux = set(ROOT.glob('*'))
+    aux.remove(L1B)
+    override = {'lut':'ecm2_lut_abhi_default.nc'}
+    return _run_it(L1B, aux, config_override=override, out_dir=out_dir)
+