anchor.diff:          close(point_gauges%static_output_unit)
   
           ! Initialise time-varying output files
  -        open(newunit=point_gauges%time_series_output_unit, file=point_gauges%time_series_output_file, &
  +        open(newunit=point_gauges%time_series_output_unit, &
  +            file=point_gauges%time_series_output_file, &
               access='stream', form='unformatted')
   
           ! Initialise gauge metadata file
  
positive.code:     ! point_gauges%time_series_values
      !
      ! @param point_gauges point_gauge_type
      ! @param time_series_values array with size [n_gauges, size(var_inds)] that holds the time series data
      ! @param var_inds Array giving indices in the 3rd dimension of domain_U that we write out. e.g. [STG, UH, VH], or [STG]
      !
      subroutine update_gauge_var(point_gauges, time_series_values, domain_U, &
          var_inds)
  
negative.code:         ! Setup home-brew binary output
          !
          ! For simplicity, this routine only includes a netcdf filename as argument.
          ! If we are writing to a home-brew binary format, then we make file 
          ! names from the 'netcdf' name
          point_gauges%static_output_file = trim(netcdf_gauge_output_file) // '_static' 
          point_gauges%time_series_output_file = trim(netcdf_gauge_output_file) // '_timeseries' 
          point_gauges%gauge_metadata_file = trim(netcdf_gauge_output_file) // '_metadata' 
  
          ! Save 'static' variables to home-brew binary
          open(newunit=point_gauges%static_output_unit, &
              file=point_gauges%static_output_file, &
              access='stream', form='unformatted')
          do i = 1, n_gauges
              write(point_gauges%static_output_unit) &
  