]sBt      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWX Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij k l m n o p q r s t u v w x y z { | } ~   !!!!!!!!!!!!!!!!!!!!!!!!!"""""""""""""""""""""""""#########################$$$$$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%)&Safe+Return empty list if start pointer is zero.:Strings tend to be fixed width fields with trailing zeros.0'None(SafeSafe    )Safe   6None      !"         !"None#$%&'#$%&'#$%&'#$%&'None)*+,-./)*+,-./)*+,-./)*+,-./None12345678127345681234567812345678None:;<=>?@ABCDEFG:;D<=>?@ABCEFG:;<=>?@ABCDEFG: ;<=>?@ABCDEFGNoneIJKLMNOIJMNKLOIJKLMNOIJKLMNONoneQRSTUVQRTSUVQRSTUVQRSTUV None XYZ[\]^_` XYZ[\]^_` XYZ[\]^_`XYZ[\]^_` Nonebcdefghijklmnopbcdefghijklmnopbcdefghijklmnopb cdefghijklmnop Nonerstuvwxrsvwtuxrstuvwxrstuvwx Nonez{|}~z{}|~z{|}~z{|}~ None None  NoneNoneNoneNoneNoneNoneNone NoneNoneNone block indicesNone                    None+!Interpret tempo related commands. !"#$%&'( )*+,  !"#$%&'()*+,$%&'( !"#)*+,  !"#$%&'( )*+, None-./01-./01-./01-./01None34567345673456734567None9:;<=>?@ABCDEFGH9:=<>;?@ABCDEFGH9:;<=>?@ABCDEFGH9:;<=>?@ABCDEFGHNoneJKLMNOPQRSTUVWXJKNMOLPQRSTUVWXJKLMNOPQRSTUVWXJ KLMNOPQRSTUVWXNoneZ[\]^_`abcdefgZ[\a]^_`bcdefgbcdefZ[\]^_`agZ[\]^_`abcdefg Nonejklmnopqrstuvwxyz{|}~jk|lrstuvwxyz{mnopq}~jklmnopqrstuvwxyz{|}~jklmnopqrstuvwxyz{|}~!None"None#None$None%None  &*&+&,&-&.&/&0123456789:;<=>?@ABCDEFGHIJKLMMNOPQRRSTUPVWXXYZ[\TP]^^_`abcdefTghPijjklNOPmnnopqPr s s t u v w x y P z { { | } ~  P   k l N O P   o p q P   p U       PTPPTPTPPPPPP|}~oPP  P    TtuP TtuP !"#P$% & & t u v w x y _ ` a b c d e f g h ' ( ) *!+!+!,!-!.!/!0!1!2!!!3!4!5!6!7!8!9!:!;!<!=!>!P!?"@"@","-"."/"0"1"2"""3"4"5"6"7"8"9":";"<"=">"P"A#B#B#,#-#.#/#0#1#2###3#4#5#6#7#8#9#:#;#<#=#>#P#C$D$D$,$-$.$/$0$1$2$$$3$4$5$6$7$8$9$:$;$<$=$>$P$E%F%F%G%H%I%J%P%K%L&M&N&O&P&Q&R&S&T'?'0'U'V'W(X(Y(Z)?)0)[)\)])^)_)`)V)a67bcdefghijk%med-module-0.1-8g3gClSrCji162ByMTJmooSound.MED.Basic.AmigaSound.MED.Basic.HumanSound.MED.Raw.CmdPageDataSound.MED.Raw.BlockCmdPageTableSound.MED.Raw.BlockInfoSound.MED.Raw.InstrExtSound.MED.Raw.MMD0NoteDataSound.MED.Raw.MMD0BlockSound.MED.Raw.MMD0SampleSound.MED.Raw.MMD0SongSound.MED.Raw.MMD1NoteDataSound.MED.Raw.MMD1BlockSound.MED.Generic.BlockSound.MED.Raw.MMDARexxTrigCmdSound.MED.Raw.MMDARexxSound.MED.Raw.MMDDumpSound.MED.Raw.MMDDumpDataSound.MED.Raw.MMDInfoSound.MED.Raw.MMDInstrInfoSound.MED.Raw.MMDMIDICmd3xSound.MED.Raw.NotationInfoSound.MED.Raw.MMD0expSound.MED.Raw.PlaySeqSound.MED.Generic.PlaySeqSound.MED.Raw.MMD2SongSound.MED.Generic.TempoSound.MED.Raw.SampleInstrSound.MED.Raw.SynthWFSound.MED.Raw.HybridInstrSound.MED.Raw.SynthInstrSound.MED.Raw.InstrHdrSound.MED.Generic.InstrumentSound.MED.Raw.MMD0Sound.MED.Raw.MMD1Sound.MED.Raw.MMD2Sound.MED.Raw.MMD3Sound.MED.GenericSound.MED.Basic.UtilitySound.MED.Basic.StorableSound.MED.Basic.PrettySound.MED.Basic.ByteStringUBYTEBYTEUWORDWORDULONGLONGPTRHumanhumanboldbold_onbold_offByteStringReaderStorableReaderReaderpeekLONG peekULONGpeekWORD peekUWORDpeekBYTE peekUBYTEPeekpeekPTR runStorable runByteStringloadMEMfreeMEM$fReaderByteStringReader$fMonadByteStringReader$fApplicativeByteStringReader$fFunctorByteStringReader$fReaderStorableReader$fMonadStorableReader$fApplicativeStorableReader$fFunctorStorableReader CmdPageDatacommanddatabytepeek$fShowCmdPageDataBlockCmdPageTable num_pagesreservedpagespeekPage$fShowBlockCmdPageTable BlockInfohlmask blockname blocknamelen pagetable$fShowBlockInfoInstrExtholddecaysuppress_midi_offfinetune default_pitch instr_flagslong_midi_preset output_device long_repeat long_replen$fShowInstrExt MMD0NoteDatanote instrument$fShowMMD0NoteData MMD0Block numtrackslinesnotedata$fShowMMD0Block MMD0Samplerepreplenmidich midipresetsvolstrans$fShowMMD0SampleMMD0Songsample numblockssonglenplayseqdeftempo playtranspflagsflags2tempo2trkvol mastervol numsamples$fShowMMD0Song MMD1NoteData$fShowMMD1NoteData MMD1Blockinfo$fShowMMD1BlockMEDBlocknametracksseqdataLine HighlightValCmdInstNote medblock0 medblock1 highlightLine humanLinenotes$fHumanMEDBlockMMDARexxTrigCmdnextcmdnumpadcmdtypecmdportcmd_lenport_len$fShowMMDARexxTrigCmdMMDARexx trigcmdlentrigcmd$fShowMMDARexxMMDDumplendatext_len $fShowMMDDump MMDDumpDatanumdumpsdumps$fShowMMDDumpDataMMDInfotyp $fShowMMDInfo MMDInstrInfo$fShowMMDInstrInfo MMDMIDICmd3x struct_vernum_of_settings ctrlr_types ctrlr_numbers$fShowMMDMIDICmd3x NotationInfo n_of_sharpstrkseltrkshowtrkghostnotetr$fShowNotationInfoMMD0expnextmodexp_smp s_ext_entries s_ext_entrszannotxtannoleniinfo i_ext_entries i_ext_entrszjumpmaskrgbtable channelsplitn_infosongname songnamelenmmdinfommdrexxmmdcmd3x reserved2tag_end $fShowMMD0expPlaySeq reserved0 reserved1seq $fShowPlaySeq MEDPlaySeqindicesplaySeq0playSeq2$fHumanMEDPlaySeqMMD2Song playseqtable sectiontable trackvolsnumpseqs trackpansflags3voladjchannels mix_echotype mix_echodepth mix_echolen mix_stereoseppad0pad1$fShowMMD2SongModeSpeedOctaBPM linesPerBeatMEDTempomodeprimary secondary song0Tempo song2TempoupdatetoTime SampleInstroctaveschans$fShowSampleInstrSynthWFlen2wfdata $fShowSynthWF HybridInstr defaultdecay voltbllenwftbllenvolspeedwfspeedwformsvoltblwftblwf0wf$fShowHybridInstr SynthInstr$fShowSynthInstrInstrHdrstypes16stereomd16 InstrumentUnknownHybrid SyntheticSample$fShowInstrument$fShowInstrHdr MEDInstrumentmedinstruments medinstrument$fHumanMEDInstrument$fShowMEDInstrumentMMD0idmodlensongpsecnumpseqblockarrmmdflags reserved3smplarr reserved4expdata reserved5pstatepblockplinepseqnum actplaylinecounter extra_songs $fShowMMD0MMD1 $fShowMMD1MMD2 $fShowMMD2MMD3 $fShowMMD3MEDinstrsblocksplayseqstempoload $fHumanMEDpointerRangeGenCheckstringFromBytes$?skipIf pointerRangepointerRangeGenpointerRangeGen2chunkMEM peekOffsetpeekBigprettypretty'indent peekInt32 peekInt16peekInt8 peekWord32 peekWord16<+ peekWord8 liftStorableliftByteString tempoModeciabFreqtimerDiv_sttemposttempoMeasured octaTempotimeFromPrimary