pub fn parse_midi_file<'a, StringRepr: Borrow<str> + From<&'a str>, Buffer: Borrow<[u8]> + From<&'a [u8]>>(
    input: Input<'a>
) -> MIDIParseResult<'a, MIDIFile<StringRepr, Buffer>>