alignment = {
 query_template_name: string;
 flags: Flags.t;
 reference_sequence: [ `reference_sequence of reference_sequence
           | `none
           | `name of string ];
 position: int option;
 mapping_quality: int option;
 cigar_operations: cigar_op array;
 next_reference_sequence: [`qname | `none | `name of string
         | `reference_sequence of reference_sequence ];
 next_position: int option;
 template_length: int option;
 sequence: [ `string of string | `reference | `none];
 quality: Phred_score.t array;
 optional_content: optional_content;
}