code: def full_matched_filter_and_cluster_symm(self, segnum, template_norm, window, epoch=None):
          
          norm = (4.0 * self.delta_f) / sqrt(template_norm)
          self.correlators[segnum].correlate()
          self.ifft.execute()
          snrv, idx = self.threshold_and_clusterers[segnum].threshold_and_cluster(self.snr_threshold / norm, window)
  
          if len(idx) == 0:
              return [], [], [], [], []
  
          logging.info("%s points above threshold" % str(len(idx)))
  
          snr = TimeSeries(self.snr_mem, epoch=epoch, delta_t=self.delta_t, copy=False)
          corr = FrequencySeries(self.corr_mem, delta_f=self.delta_f, copy=False)
          return snr, norm, corr, idx, snrv
docs: Returns the complex snr timeseries, normalization of the complex snr,
          the correlation vector frequency series, the list of indices of the
          triggers, and the snr values at the trigger locations. Returns empty
          lists for these for points that are not above the threshold.
  
          Calculated the matched filter, threshold, and cluster.
  
          Parameters
          ----------
          segnum : int
              Index into the list of segments at MatchedFilterControl construction
              against which to filter.
          template_norm : float
              The htilde, template normalization factor.
          window : int
              Size of the window over which to cluster triggers, in samples
  
          Returns
          -------
          snr : TimeSeries
              A time series containing the complex snr.
          norm : float
              The normalization of the complex snr.
          corrrelation: FrequencySeries
              A frequency series containing the correlation vector.
          idx : Array
              List of indices of the triggers.
          snrv : Array
              The snr values at the trigger locations.