code: def read(cls, source, *args, **kwargs):
      
      # if reading a cache, read it now and sieve
      if io_cache.is_cache(source):
          from .cache import preformat_cache
          source = preformat_cache(source, *args[1:],
                                   start=kwargs.get('start'),
                                   end=kwargs.get('end'))
  
      # get join arguments
      pad = kwargs.pop('pad', None)
      gap = kwargs.pop('gap', 'raise' if pad is None else 'pad')
      joiner = _join_factory(cls, gap, pad)
  
      # read
      return io_read_multi(joiner, cls, source, *args, **kwargs)
docs: Read data from a source into a `gwpy.timeseries` object.
  
      This method is just the internal worker for `TimeSeries.read`, and
      `TimeSeriesDict.read`, and isn't meant to be called directly.