code: def merge_bams(self, input_bams, merged_bam, in_sorted="TRUE", tmp_dir=None):
          if not len(input_bams) > 1:
              print("No merge required")
              return 0
          outdir, _ = os.path.split(merged_bam)
          if outdir and not os.path.exists(outdir):
              print("Creating path to merge file's folder: '{}'".format(outdir))
              os.makedirs(outdir)
          if in_sorted in [False, True]:
              in_sorted = "TRUE" if in_sorted else "FALSE"
          input_string = " INPUT=" + " INPUT=".join(input_bams)
          cmd = self.tools.java + " -Xmx" + self.pm.javamem
          cmd += " -jar " + self.tools.picard + " MergeSamFiles"
          cmd += input_string
          cmd += " OUTPUT=" + merged_bam
          cmd += " ASSUME_SORTED=" + str(in_sorted)
          cmd += " CREATE_INDEX=TRUE"
          cmd += " VALIDATION_STRINGENCY=SILENT"
          if tmp_dir:
              cmd += " TMP_DIR=" + tmp_dir
          return cmd