code: def merge_phlat_calls(job, tumor_phlat, normal_phlat, rna_phlat):
      job.fileStore.logToMaster('Merging Phlat calls')
      work_dir = job.fileStore.getLocalTempDir()
      input_files = {
          'tumor_dna': tumor_phlat,
          'normal_dna': normal_phlat,
          'tumor_rna': rna_phlat}
      input_files = get_files_from_filestore(job, input_files, work_dir)
      with open(input_files['tumor_dna'], 'r') as td_file, \
              open(input_files['normal_dna'], 'r') as nd_file, \
              open(input_files['tumor_rna'], 'r') as tr_file:
          mhc_alleles = {'HLA_A': [], 'HLA_B': [], 'HLA_C': [], 'HLA_DPA': [], 'HLA_DQA': [],
                         'HLA_DPB': [], 'HLA_DQB': [], 'HLA_DRB': []}
          for phlatfile in td_file, nd_file, tr_file:
              mhc_alleles = parse_phlat_file(phlatfile, mhc_alleles)
      with open(os.path.join(work_dir, 'mhci_alleles.list'), 'w') as mhci_file, \
              open(os.path.join(work_dir, 'mhcii_alleles.list'), 'w') as mhcii_file:
          for mhci_group in ['HLA_A', 'HLA_B', 'HLA_C']:
              mpa = most_probable_alleles(mhc_alleles[mhci_group])
              print('\n'.join([''.join(['HLA-', x]) for x in mpa]), file=mhci_file)
          drb_mpa = most_probable_alleles(mhc_alleles['HLA_DRB'])
          print('\n'.join([''.join(['HLA-', x]) for x in drb_mpa]), file=mhcii_file)
          dqa_mpa = most_probable_alleles(mhc_alleles['HLA_DQA'])
          dqb_mpa = most_probable_alleles(mhc_alleles['HLA_DQB'])
          for dqa_allele in dqa_mpa:
              for dqb_allele in dqb_mpa:
                  print(''.join(['HLA-', dqa_allele, '/', dqb_allele]), file=mhcii_file)
      output_files = defaultdict()
      for allele_file in ['mhci_alleles.list', 'mhcii_alleles.list']:
          output_files[allele_file] = job.fileStore.writeGlobalFile(os.path.join(work_dir,
                                                                                 allele_file))
      return output_files