docs: def get_remote_data(self, localvars, remotevars, inds, shape):
          """
              Method that does the updating of local netcdf cache
              with remote data
          """
          # If user specifies 'all' then entire xy domain is
          # grabbed, default is 4, specified in the model_controller
          if self.horiz_size == 'all':
              y, y_1 = 0, shape[-2]
              x, x_1 = 0, shape[-1]
          else:
              r = self.horiz_size
              x, x_1 = self.point_get.value[2]-r, self.point_get.value[2]+r+1
              y, y_1 = self.point_get.value[1]-r, self.point_get.value[1]+r+1
              x, x_1 = x[0], x_1[0]
              y, y_1 = y[0], y_1[0]
              if y < 0:
                  y = 0
              if x < 0:
                  x = 0
              if y_1 > shape[-2]:
                  y_1 = shape[-2]
              if x_1 > shape[-1]:
                  x_1 = shape[-1]
  
          # Update domain variable for where we will add data
          domain = self.local.variables['domain']
  
          if len(shape) == 4:
              domain[inds[0]:inds[-1]+1, 0:shape[1], y:y_1, x:x_1] = np.ones((inds[-1]+1-inds[0], shape[1], y_1-y, x_1-x))
          elif len(shape) == 3:
              domain[inds[0]:inds[-1]+1, y:y_1, x:x_1] = np.ones((inds[-1]+1-inds[0], y_1-y, x_1-x))
  
          # Update the local variables with remote data
          logger.debug("Filling cache with: Time - %s:%s, Lat - %s:%s, Lon - %s:%s" % (str(inds[0]), str(inds[-1]+1), str(y), str(y_1), str(x), str(x_1)))
          for local, remote in zip(localvars, remotevars):
              if len(shape) == 4:
                  local[inds[0]:inds[-1]+1, 0:shape[1], y:y_1, x:x_1] = remote[inds[0]:inds[-1]+1,  0:shape[1], y:y_1, x:x_1]
              else:
                  local[inds[0]:inds[-1]+1, y:y_1, x:x_1] = remote[inds[0]:inds[-1]+1, y:y_1, x:x_1]