anchor.diff:      character(len=MAXVARLENGTH) :: MMINLU
       logical :: FNDSOILW,FNDSNOWH,RDMAXALB
       integer :: num_soil_layers,ISURBAN,ISICE,ISWATER
  +    integer :: exchange_term
       real*8  :: last_model_time
       
   contains
  
positive.code:             
              ! exchange coefficients
              windspd=sqrt(domain%u10**2+domain%v10**2)
              call calc_exchange_coefficient(windspd,domain%skin_t,domain%T2m,CHS)
              CHS2=CHS
              CQS2=CHS
              
  
negative.code:                 endif
                  
                  ! update T2m and Q2m prior to LSM call to make sure everything is in sync
  !                 call surface_diagnostics(domain%sensible_heat, QFX, domain%skin_t, QSFC,  &
  !                                          CHS2, CQS2,domain%T2m, domain%Q2m, domain%psfc)
                                           
                  call lsm_noah(domain%dz_inter,domain%qv,domain%p_inter,domain%th*domain%pii,domain%skin_t,  &
                              domain%sensible_heat,QFX,domain%latent_heat,domain%ground_heat, &
  