3mJ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ (c) Hans Hoglund 2012 BSD-stylehans@hanshoglund.se experimentalportable Safe-Inferred(c) Hans Hoglund 2012 BSD-stylehans@hanshoglund.se experimentalportable Safe-Inferred(c) Hans Hoglund 2012 BSD-stylehans@hanshoglund.se experimentalportableNoneB    (c) Hans Hoglund 2012 BSD-stylehans@hanshoglund.se experimentalportableNone*24B#Line number, from bottom (i.e. 1-5)=Number of fifths upwards relative to C (i.e. F is -1, G is 1)!Octaves, i.e. 1200 cent$Semitones, i.e 100 cent, !"#$%&'()*+,-./0123456789:;<=>?@A( !"#$%&'()*+,-./0123456789:;<=>?@A(@?&-,+*)('#$%A !"4>=<;:98765.3210/ !"#$%&-,+*)('.3210/4 >=<;:98765?@A(c) Hans Hoglund 2012 BSD-stylehans@hanshoglund.se experimentalportableNone*BC Tempo in BPMFTime denominatorITime nominatorPNotated time in fractions, in [2^^i | i <- [-10..3]].SSounding time in ticksBCDEFGHIJKLMNOPQRSTUVBCDEFGHIJKLMNOPQRSTUVVURSTOPQKNMLHIJEFGBCDBCDEFGHIJKNMLOPQRSTUV(c) Hans Hoglund 2012 BSD-stylehans@hanshoglund.se experimentalportableNone*BWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNC  !"#$%&./0123456789:;<=>?@AEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNCJLKHIFGDEBC@A>?<=9:;687054321,/.-)*+('&%$#"!      MN@?&#$%A !"4>=<;:98765.3210/VURSTOPQKNMLHIJEFG osrqpWihgfedcba`_^]\[ZYXjnmlk|~}{zytxwvu0Wihgfedcba`_^]\[ZYXjnmlkosrqptxwvuyz{|~}        ('&%$#"! )*+,/.-0543216879:;<=>?@ABCDEFGHIJLKMN (c) Hans Hoglund 2012 BSD-stylehans@hanshoglund.se experimentalportableNone99(c) Hans Hoglund 2012 BSD-stylehans@hanshoglund.se experimentalportableNoneO$Render a score as a MusicXML string.PRender a score as MusicXML.OP  !"#$%&./0123456789:;<=>?@AEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+6789:;<=>?@ABCDEFGHIJKLMNOP JLKHIFGDEBC@A>?<=9:;687)*+('&%$#"!      MN@?&#$%A !"4>=<;:98765.3210/VURSTOPQKNMLHIJEFGosrqpWihgfedcba`_^]\[ZYXjnmlk|~}{zytxwvuPOOP(c) Hans Hoglund 2012 BSD-stylehans@hanshoglund.se experimentalportableNoneMQCreate a single-part score. )fromPart title composer partName measuresExample:  Q "Suite" "Bach" "Cello solo" []RCreate a multi-part score. 'fromParts title composer partList partsExample:  R "4'33" "Cage" (S# ["Violin", "Viola", "Cello"]) [[]]S, Create a part list from instrument names.T> Create a part list from instrument names and abbreviations.U%Enclose the given parts in a bracket.V#Enclose the given parts in a brace.WConvenient synonym for ", allowing us to write things like measure [ beam [ note c (1/8), note d (1/8), note e (1/8), note f (1/8) ], tuplet 3 2 [ note g (1/4), note a (1/4), note b (1/4) ] ]XConvenient synonym for .QThe values P1, P2... which are conventionally used to identify parts in MusicXML.oGiven a partwise score (list of parts, which are lists of measures), add part and measure attributes (numbers).]Create a clef._Create a key signature.`+Set the tick division to the default value.a,Define the number of ticks per quarter note.dCreate a time signature.eCreate a metronome mark.fCreate a metronome mark.iCreate a rest. 6rest (1/4) rest (3/8) rest quarter rest (dotted eight)jCreate a single note. Snote c (1/4) note fs_ (3/8) note c quarter note (c + pure fifth) (dotted eight)kCreate a chord. Ichord [c,eb,fs_] (3/8) chord [c,d,e] quarter chord [c,d,e] (dotted eight)QRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuv     wxyz{|}~ !"#$| !"#$%&./0123456789:;<=>?@AEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+6789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~\QRSTUVWXYZ[\]^_`abcdefghijkmnolrstuvqpwxyz{|}~QRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuv     wxyz{|}~ !"#$%     !"#$$%&&'(()**+,-./0123456789:;<=>?@ABCDEFGGHIIJKKLMNOPQQRSSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~       !"##$%&'()*+,-./01223445566778899::;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                                               musicxml2-1.8Music.MusicXml.WriteMusic.MusicXml.DynamicsMusic.MusicXml.PitchMusic.MusicXml.TimeMusic.MusicXml.ScoreMusic.MusicXmlMusic.MusicXml.SimpleMusic.MusicXml.ReadMusic.MusicXml.Write.Score WriteMusicXmlwriteDynamicsFZSFFZSFZRFZRFFPSFPPSFPSFFFFFFFFFFFFFFFFFFFFFFMFMPPPPPPPPPPPPPPPPPPPPPPLinegetLineFifths getFifthsOctaves getOctaves Semitones getSemitones PitchClassBAGEDC Accidental DoubleSharpSharpNaturalFlat DoubleFlatModeNoModeLocrianIonianAeolian MixolydianLydianPhrygianDorianMinorMajor DisplayPitchPitch noSemitonesTempogetTempoBeatType getBeatTypeBeatgetBeatNoteSize SizeLargeSizeCueSizeFullNoteVal getNoteValDivsgetDivsNoteTypeDurationNoteHead NoNoteHeadRectangleNoteHeadLeftTriangleNoteHeadCircleDotNoteHeadClusterNoteHeadNormalNoteHeadBackSlashedNoteHeadSlashedNoteHeadArrowUpNoteHeadArrowDownNoteHeadInvertedTriangleNoteHeadCircleXNoteHead XNoteHead CrossNoteHeadSquareNoteHeadDiamondNoteHeadTriangleNoteHead SlashNoteHeadLineTypeWavyDottedDashedSolid StemDirection StemDoubleStemNoneStemUpStemDownStartStopContinueChangeChangeContinueStopStartStartStopContinueStartStopChange StartStopBeamType BackwardHook ForwardHookEndBeam ContinueBeam BeginBeamLevelgetLevelLyric DirectionOtherDirection PercussionAccordionRegistrationPrincipalVoiceImage Scordatura StringMute EyeGlassesDampAllDamp HarpPedals OctaveShift MetronomePedalBracketDashes Diminuendo CrescendoCodaWordsSegno Rehearsal TechnicalOtherTechnicalHandbellArrowHole FingernailsToeHeelTapBendPullOffHammerOnStringFret SnapPizzicatoStopped TripleTongue DoubleTonguePluck Fingering ThumbPosition OpenStringHarmonicDownBowUpBowOrnament OtherOrnamentTremolo SchleiferInvertedMordentMordentWavyLineShake VerticalTurnDelayedInvertedTurn InvertedTurn DelayedTurnTurn TrillMark ArticulationOtherArticulationUnstressStressCaesura BreathMarkFalloffDoitPlopScoopSpiccato StaccatissimoDetachedLegatoTenutoStaccato StrongAccentAccent FermataSignSquaredFermata AngledFermata NormalFermataNotation OtherNotationAccidentalMark NonArpeggiate ArpeggiateFermataDynamicNotation Articulations OrnamentsSlide GlissandoTupletSlurTied HasNotePropsmodifyNoteProps NotePropsnoteInstrument noteVoicenoteTypenoteDotsnoteAccidental noteTimeModnoteStem noteNoteHeadnoteNoteHeadText noteStaffnoteBeam noteNotations noteLyricsTieIsChordFullNoteRest UnpitchedPitchedNote GraceNoteCueNoteClefSignTabClefPercClefFClefCClefGClef TimeSignatureDivTimeCutTime CommonTime Attributes MeasureStyle Directive Transpose StaffDetailsClef Instruments PartSymbolStavesTimeKey Divisions MusicElem MusicBookmark MusicLink MusicGrouping MusicBarline MusicSound MusicPrintMusicFiguredBass MusicHarmonyMusicDirection MusicNote MusicForward MusicBackupMusicAttributesMusicgetMusic GroupBarlinesGroupMensurstrichGroupNoBarLines GroupBarLines GroupSymbol NoGroupSymbol GroupSquare GroupBracket GroupLine GroupBrace PartListElemGroupPartPartList getPartList MeasureAttrs PartAttrs ScoreAttrsDefaultsCreatorIdentification ScoreHeaderScoreTimewisePartwisenoChordnoTiesshowXmltoXmlfromPart fromPartspartList partListAbbrbracketbracemeasurebar trebleClefaltoClefbassClef defaultClefclef defaultKeykeydefaultDivisions divisions commonTimecutTimetime metronome metronome'backupforwardrestnotechord separateDotssetVoicedot setNoteVal addNotation setNoteHead beginBeam continueBeamendBeambeginTieendTie beginGlissendGliss beginSlideendSlidefermata breathMarkcaesura addTechnicaladdArticulationupbowdownbowharmonic openString beginSlurendSluraccent strongAccentstaccatotenuto staccatissimospiccatoscoopplopdoitfalloffstressunstresscrescdim crescFromcrescTo crescFromTodimFromdimTo dimFromTo beginCrescendCrescbeginDimendDimdynamictupletbeamslurtremolotrillturnshakemordenttext rehearsalsegnocodamapMusic foldMusic$fIsDynamicsDynamics pitchToFifths$fIsPitchFifths $fIsPitch(,) $fIsPitch(,,)Max8notImplemented$fHasNotePropsMusicElem$fHasNotePropsNote$fMonoidPartList$fSemigroupPartList$fDefaultPartList writePartwise writeTimewise writePartElemwriteMeasureElem writeMusic addScoreAttrs addPartAttrsaddMeasureAttrs writeDurationwriteTie writeBeamTypewriteStartStopwriteStartStopChangewriteStartStopContinuewriteStartStopContinueChangewriteStemDirection writeLineType writeNoteHeadwriteAccidental writeNoteVal writeClef writeModewriteGroupSymbolwriteGroupBarlineswriteFermataSign writeDynamicsaddAttraddAttrsuattrsep concatSep toUpperChar toLowerChar toUpperString toLowerStringtoCapitalStringonemaybeOnesingle fromSinglesingleIf$fWriteMusicXmlLyric$fWriteMusicXmlDirection$fWriteMusicXmlArticulation$fWriteMusicXmlTechnical$fWriteMusicXmlOrnament$fWriteMusicXmlNotation$fWriteMusicXmlNote$fWriteMusicXmlFullNote$fWriteMusicXmlNoteProps$fWriteMusicXmlAttributes$fWriteMusicXmlMusicElem$fWriteMusicXmlPartListElem$fWriteMusicXmlIdentification$fWriteMusicXmlScoreHeader$fWriteMusicXmlScorebase Data.MonoidmconcatstandardPartAttributesaddPartwiseAttributesheader setHeadersetTitlesetMovementTitledefaultDivisionsValrest' chordNotenote' separateDots'errorNoteValue setTimeModmergeNotations beginTuplet endTuplet beginTie'endTie' beginTie''endTie'' setNoteValP setVoiceP setTimeModP beginBeamP continueBeamPendBeamPdotP addNotationP mapNotationsPmapStemP mapNoteHeadP arpeggiate nonArpeggiatedetachedLegatoscaleDur addOrnamentmapNote foldMusic' foldMusicElemlogBaseR isDivisibleByequalTo$fDefaultNoteProps$fDefaultFullNote $fDefaultDivs $fDefaultNote$fDefaultScoreHeader$fDefaultScoreAttrs