let print_cigar_op = function
| `Alignment_match x -> sprintf "%dM" x
| `Insertion x -> sprintf "%dI" x
| `Deletion x -> sprintf "%dD" x
| `Skipped x -> sprintf "%dN" x
| `Soft_clipping x -> sprintf "%dS" x
| `Hard_clipping x -> sprintf "%dH" x
| `Padding x -> sprintf "%dP" x
| `Seq_match x -> sprintf "%d=" x
| `Seq_mismatch x -> sprintf "%dX" x