docs: def _load_report(infile):
          '''Loads report file into a dictionary. Key=reference name.
          Value = list of report lines for that reference'''
          report_dict = {}
          f = pyfastaq.utils.open_file_read(infile)
          first_line = True
  
          for line in f:
              line = line.rstrip()
  
              if first_line:
                  expected_first_line = '#' + '\t'.join(report.columns)
                  if line != expected_first_line:
                      pyfastaq.utils.close(f)
                      raise Error('Error reading report file. Expected first line of file is\n' + expected_first_line + '\nbut got:\n' + line)
                  first_line = False
              else:
                  line_dict = ReportFilter._report_line_to_dict(line)
                  if line_dict is None:
                      pyfastaq.utils.close(f)
                      raise Error('Error reading report file at this line:\n' + line)
                  ref_name = line_dict['ref_name']
                  ctg_name = line_dict['ctg']
                  if ref_name not in report_dict:
                      report_dict[ref_name] = {}
                  if ctg_name not in report_dict[ref_name]:
                      report_dict[ref_name][ctg_name] = []
  
                  report_dict[ref_name][ctg_name].append(line_dict)
  
          pyfastaq.utils.close(f)
          return report_dict