anchor.diff:          end associate
           associate(var=>var_meta(kVARS%pressure_interface))
               var%name        = "pressure_i"
  -            var%dimensions  = [character(len=16) :: "lon_x","lat_x","level_i"]
  +            var%dimensions  = three_d_interface_dimensions
               var%attributes  = [attribute_t("standard_name", "air_pressure"),                    &
                                  attribute_t("long_name",     "Pressure"),                        &
                                  attribute_t("units",         "Pa"),                              &
  
positive.code:         end associate
          associate(var=>var_meta(kVARS%air2m_humidity))
              var%name        = "hus2m"
              var%dimensions  = [character(len=16) :: "lon_x","lat_x"]
              var%attributes  = [attribute_t("standard_name", "specific_humidity"),                   &
                                 attribute_t("units",         "kg kg-2"),                             &
                                 attribute_t("coordinates",   "lat lon")]
          end associate
          associate(var=>var_meta(kVARS%v10m))
              var%name        = "v10m"
              var%dimensions  = [character(len=16) :: "lon_x","lat_x"]
              var%attributes  = [attribute_t("standard_name", "northward_10m_wind_speed"),            &
                                 attribute_t("units",         "m s-1"),                               &
                                 attribute_t("coordinates",   "lat lon")]
          end associate
          associate(var=>var_meta(kVARS%u10m))
              var%name        = "u10m"
              var%dimensions  = [character(len=16) :: "lon_x","lat_x"]
              var%attributes  = [attribute_t("standard_name", "eastward_10m_wind_speed"),             &
                                 attribute_t("units",         "m s-1"),                               &
                                 attribute_t("coordinates",   "lat lon")]
          end associate
          associate(var=>var_meta(kVARS%skin_temperature))
              var%name        = "ts"
              var%dimensions  = [character(len=16) :: "lon_x","lat_x"]
              var%attributes  = [attribute_t("standard_name", "surface_temperature"),                 &
                                 attribute_t("units",         "K"),                                   &
                                 attribute_t("coordinates",   "lat lon")]
          end associate
          associate(var=>var_meta(kVARS%sensible_heat))
              var%name        = "hfss"
              var%dimensions  = [character(len=16) :: "lon_x","lat_x"]
              var%attributes  = [attribute_t("standard_name", "surface_upward_sensible_heat_flux"),   &
                                 attribute_t("units",         "W m-2"),                               &
                                 attribute_t("coordinates",   "lat lon")]
          end associate
          associate(var=>var_meta(kVARS%latent_heat))
              var%name        = "hfls"
              var%dimensions  = [character(len=16) :: "lon_x","lat_x"]
              var%attributes  = [attribute_t("standard_name", "surface_upward_latent_heat_flux"),     &
                                 attribute_t("units",         "W m-2"),                               &
                                 attribute_t("coordinates",   "lat lon")]
          end associate
          associate(var=>var_meta(kVARS%land_mask))
              var%name        = "land_mask"
              var%dimensions  = [character(len=16) :: "lon_x","lat_x"]
              var%attributes  = [attribute_t("non_standard_name", "land_water_mask"),                 &
                                 attribute_t("coordinates",          "lat lon")]
          end associate
          associate(var=>var_meta(kVARS%terrain))
              var%name        = "terrain"
              var%dimensions  = [character(len=16) :: "lon_x","lat_x"]
              var%attributes  = [attribute_t("standard_name", "height_above_reference_ellipsoid"),    &
                                 attribute_t("units",         "m"),                                   &
                                 attribute_t("coordinates",   "lat lon")]
          end associate
          associate(var=>var_meta(kVARS%latitude))
              var%name        = "latitude"
              var%dimensions  = [character(len=16) :: "lon_x","lat_x"]
              var%attributes  = [attribute_t("standard_name", "latitude"),                            &
                                 attribute_t("units",         "degrees_north"),                       &
                                 attribute_t("axis","Y")]
          end associate
          associate(var=>var_meta(kVARS%longitude))
              var%name        = "longitude"
              var%dimensions  = [character(len=16) :: "lon_x","lat_x"]
              var%attributes  = [attribute_t("standard_name", "longitude"),                           &
                                 attribute_t("units",         "degrees_east"),                        &
                                 attribute_t("axis","X")]
          end associate
          associate(var=>var_meta(kVARS%u_latitude))
              var%name        = "u_latitude"
              var%dimensions  = [character(len=16) :: "lon_u","lat_x"]
              var%attributes  = [attribute_t("non_standard_name", "latitude_on_u_grid"),              &
                                 attribute_t("units",         "degrees_north")]
          end associate
          associate(var=>var_meta(kVARS%u_longitude))
              var%name        = "u_longitude"
              var%dimensions  = [character(len=16) :: "lon_u","lat_x"]
              var%attributes  = [attribute_t("non_standard_name", "longitude_on_u_grid"),             &
                                 attribute_t("units",         "degrees_east")]
          end associate
          associate(var=>var_meta(kVARS%v_latitude))
              var%name        = "v_latitude"
              var%dimensions  = [character(len=16) :: "lon_x","lat_v"]
              var%attributes  = [attribute_t("non_standard_name", "latitude_on_v_grid"),              &
                                 attribute_t("units",         "degrees_north")]
          end associate
          associate(var=>var_meta(kVARS%v_longitude))
              var%name        = "v_longitude"
              var%dimensions  = [character(len=16) :: "lon_x","lat_v"]
              var%attributes  = [attribute_t("non_standard_name", "longitude_on_v_grid"),             &
                                 attribute_t("units",         "degrees_east")]
          end associate
  
negative.code:         implicit none
          integer :: i
  
          character(len=16) :: three_d_u_dimensions(3)        = [character(len=16) :: "lon_u","lat_y","level"]
          character(len=16) :: three_d_v_dimensions(3)        = [character(len=16) :: "lon_x","lat_v","level"]
          character(len=16) :: three_d_dimensions(3)          = [character(len=16) :: "lon_x","lat_y","level"]
          character(len=16) :: three_d_interface_dimensions(3)= [character(len=16) :: "lon_x","lat_y","level_i"]
          character(len=16) :: two_d_dimensions(2)            = [character(len=16) :: "lon_x","lat_y"]
          character(len=16) :: two_d_u_dimensions(2)          = [character(len=16) :: "lon_u","lat_y"]
          character(len=16) :: two_d_v_dimensions(2)          = [character(len=16) :: "lon_x","lat_v"]
          character(len=16) :: three_d_soil_dimensions(3)     = [character(len=16) :: "lon_x","lat_y","nsoil"]
  
          if (allocated(var_meta)) deallocate(var_meta)
  
          if (kVARS%last_var/=kMAX_STORAGE_VARS) then
  