let sort_bam_no_check ~(run_with:Machine.t) ~by input_bam =   let source = input_bam#product#path in   let dest_suffix =     match by with     | `Coordinate -> "sorted"     | `Read_name -> "read-name-sorted"   in   let dest_prefix =     sprintf "%s-%s" (Filename.chop_suffix source ".bam") dest_suffix in   let dest = sprintf "%s.%s" dest_prefix "bam" in   let product =     KEDSL.transform_bam ~change_sorting:by input_bam#product ~path:dest in   let processors = Machine.max_processors run_with in   let make_command src des =     let command = ["-@"Int.to_string processors; src;                    "-T"; dest_prefix; "-o"; dest] in     match by with     | `Coordinate -> "sort" :: command     | `Read_name -> "sort" :: "-n" :: command   in   do_on_bam ~run_with input_bam ~product ~make_command     ~more_requirements:[`Memory `Big`Processors processors]     ~name:(sprintf "Samtools-sort %s"              Filename.(basename input_bam#product#path))