Strudelify

La Cenerentola

Gioacchino Rossini

KeyF majorTempo150 bpm
0:00/0:00
// La Cenerentola — Gioacchino Rossini
// 150 bpm, 2/2, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: metre changes (12/8 at bar 1, 2/2 at bar 110) are rendered on a constant 2/2 grid of one bar per cycle
// note: Transcription provider: pdmx. https://musescore.com/score/5941720; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 218 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(150/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · "a, b" plays two voices at once · [...]/2 spreads a riff over 2 bars.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// other · flute · "Clorinda"
const flute = note(`<
  ~@51 A@2 ~@3 B@2 ~@74 C D E ~ C D F ~ G H I H G J K D F ~@7 L M@2 N O P Q R S P Q R T ~@8 U V W X Y@3 ~@2 Z AA AB AC V
  W X Y@3 ~@2 Z AA AB AD AE AD AE AF AG AA AB AH ~@8
>`.pickRestart({
  A: "[~@18 f5@11 c5@4 ~@15]/2", B: "[~@7 c5@4 f5@11 f5@7 f5@4 g5@4 e5@4 ~@7]/2", C: "f5@17 ~ f5@6",
  D: "f5@6 f5@4 ~ f5 f5@6 f5@4 ~ f5", E: "e5!2 ~@6", F: "e5 ~@3", G: "f5@11 ~ f5@6 f5@6",
  H: "gb5@6 gb5@4 ~ gb5 gb5@6 gb5@4 ~ gb5", I: "f5!4", J: "eb5@6 eb5@4 ~ eb5 eb5@6 eb5@4 ~ eb5", K: "db5!4",
  L: "~@18 d4@4 ~ d4", M: "g4 gb4 a4 g4 bb4 a4 c5 bb4", N: "d5 db5 e5 d5 c5 bb4 a4 g4", O: "a4 ~@3", P: "g4 ~@3 g4 ~@3",
  Q: "a4 ~@3 a4 ~@2 a4", R: "bb4 ~@3 bb4 ~@2 bb4", S: "c5 ~@3 c5 ~@3", T: "c5 ~@3", U: "~@4 bb4 a4 g4 a4",
  V: "bb4 a4 g4 a4 bb4 a4 g4 a4", W: "bb4 a4 g4 a4 c5 bb4 a4 bb4", X: "d5 c5 bb4 c5 eb5 d5 c5 d5", Y: "[eb5@17 ~@7]/3",
  Z: "~@7 d5", AA: "f5@23 ~", AB: "e5@17 ~ e5@6", AC: "f5@2 ~@2 bb4 a4 g4 a4", AD: "a5@11 ~ g5@11 ~",
  AE: "f5@11 ~ e5@10 ~ e5", AF: "a5@23 ~", AG: "g5@23 ~", AH: "f5@11 ~@13",
})).s("gm_flute").gain(0.3)

// other · clarinet · "Tisbe"
const clarinet = note(`<
  ~@55 A B@2 ~@74 C D E ~ C D F ~ G H I H G J K L M ~@3 N O@2 P Q ~@4 R S T U R S T F ~@8 V W X Y Z@3 ~@2 AA AB AC AD W
  X Y Z@3 ~@2 AA AB AC AE AF AE AF AG AH AB AC AI ~@8
>`.pickRestart({
  A: "~@12 f5@7 ~ c5@4", B: "[~@7 c5@4 a4@11 a4@7 a4@4 c5@4 g4@4 ~@7]/2", C: "a4@3 a4",
  D: "a4@6 a4@4 ~ a4 a4@6 a4@4 ~ a4", E: "a4!2 ~@6", F: "a4 ~@3", G: "ab4@2 ab4!2",
  H: "bb4@6 bb4@4 ~ bb4 bb4@6 bb4@4 ~ bb4", I: "ab4!4", J: "c5@6 c5@4 ~ c5 c5@6 c5@4 ~ c5", K: "bb4!4",
  L: "d5@6 d5@4 ~ d5 d5@6 d5@4 ~ d5", M: "c5 ~@3", N: "~@6 c4!2", O: "f4 e4 g4 f4 a4 g4 bb4 a4",
  P: "c5 b4 d5 c5 bb4 a4 g4 gb4", Q: "g4 ~@3", R: "e4 ~@3 e4 ~@3", S: "f4 ~@3 f4 ~@2 f4", T: "g4 ~@3 g4 ~@2 g4",
  U: "a4 ~@3 a4 ~@3", V: "~@4 g4 f4 e4 f4", W: "g4 f4 e4 f4 g4 f4 e4 f4", X: "g4 f4 e4 f4 a4 g4 f4 g4",
  Y: "bb4 a4 g4 a4 c5 bb4 a4 bb4", Z: "[c5@3 ~]/3", AA: "~@7 bb4", AB: "a4", AC: "g4@3 g4", AD: "a4@2 ~@2 g4 f4 e4 f4",
  AE: "c5 bb4", AF: "a4@12 g4@10 ~ g4", AG: "c5", AH: "bb4", AI: "a4 ~",
})).s("gm_clarinet").gain(0.3)

// other · cello · "Ramiro"
const cello = note(`<
  ~@69 A B@3 ~@59 C D E ~ C D F ~ G H I H G J K J L ~@9 M ~@2 N O@2 P Q O@2 F ~@8 R S T U V@3 ~@2 W X Y Z S T U V@3 ~@2
  W X Y AA AB AA AB X AC AD C AE ~@8
>`.pickRestart({
  A: "~@2 e4@4 c4@4 ~@2 c4@2 f4@3 c4@4 a3@3",
  B: "[~ c4@4 a3@3 f3@4 c4@7 ~@4 e4@4 c4@4 ~@2 c4@2 f4@3 c4@4 a3@4 c4@4 a3@3 f3@4 c4@4 ~@11]/3", C: "c4@3 c4",
  D: "c4@6 c4@4 ~ c4 c4@6 c4@4 ~ c4", E: "c4!2 ~@6", F: "c4 ~@3", G: "db4@2 db4!2",
  H: "db4@6 db4@4 ~ db4 db4@6 db4@4 ~ db4", I: "db4!4", J: "f4@6 f4@4 ~ f4 f4@6 f4@4 ~ f4", K: "f4!4", L: "e4 ~@3",
  M: "d4 bb3 ~@2", N: "c4 ~@3 c4 ~@3", O: "c4 ~@3 c4 ~@2 c4", P: "f4 ~@3 f4 ~@3", Q: "bb3 ~@3 bb3 ~@3",
  R: "~@4 bb3 a3 g3 a3", S: "bb3 a3 g3 a3 bb3 a3 g3 a3", T: "bb3 a3 g3 a3 c4 bb3 a3 bb3",
  U: "d4 c4 bb3 c4 eb4 d4 c4 d4", V: "[eb4@3 ~]/3", W: "~@7 d4", X: "f4", Y: "e4@3 e4", Z: "f4@2 ~@2 bb3 a3 g3 a3",
  AA: "f4 d4", AB: "c4@12 c4@10 ~ c4", AC: "d4", AD: "c4", AE: "c4 ~",
})).s("gm_cello").gain(0.3)

// other · bassoon · "Don Magnifico"
const bassoon = note(`<
  ~@58 A@2 ~@72 B C D ~ B C E ~ F G H G I J K L E ~@12 M N O P M N O Q ~@8 R S T S U@3 ~@2 V W X Y S T S U@3 ~@2 V W X Z
  AA Z AA AB AC W X AD ~@8
>`.pickRestart({
  A: "[c4@4 c4@4 c4@3 c4@4 c4@4 c4@4 c4@3 c4@4 a3@4 f3@4 ~@10]/2", B: "f3@3 f3", C: "f3 g3 a3 bb3 c4 d4 e4 f4",
  D: "c4!2 ~@6", E: "c4 ~@3", F: "db3@2 db3!2", G: "db3@6 db3@4 ~ db3 db3@6 db3@4 ~ db3", H: "db3!4", I: "db3@2 db4!2",
  J: "a3@6 a3@4 ~ a3 a3@6 a3@4 ~ a3", K: "bb3!4", L: "b3@6 b3@4 ~ b3 b3@6 b3@4 ~ b3", M: "bb3 ~@3 bb3 ~@3",
  N: "a3 ~@3 a3 ~@2 a3", O: "e3 ~@3 e3 ~@2 e3", P: "f3 ~@3 c3 ~@3", Q: "f3 ~@3", R: "~@2 f3!2",
  S: "f3@6 f3@4 ~ f3 f3@6 f3@4 ~ f3", T: "f3!4", U: "[a3@3 ~]/3", V: "~@7 bb3", W: "c4", X: "c3@3 c3", Y: "f3 ~ f3!2",
  Z: "f3 bb3", AA: "c4@12 c3@10 ~ c3", AB: "f3", AC: "bb3", AD: "f3 ~",
})).s("gm_bassoon").gain(0.3)

// chords · piano
const piano = note(`<
  A@2 B C@5 D@2 E@3 F@2 G@3 H@8 ~ I F@2 G@3 J@4 ~ K@2 L@3 M@2 N O P Q@2 R@3 S@2 T@3 U@2 V W X Y Z AA@8 ~ AB@4 AC@2 AD@3
  AE@2 AF@3 AG@2 AH@3 AI@2 AJ@3 AK@2 AL@3 AM AN AO AP ~ AQ@3 AR@3 AS AT AU AT AU AT AU AT AS AV AW AX AY AZ BA ~ BB BC
  BD BE BF ~ BD BE BF ~ BG BH BG BH BG BI BJ BK BL BM BN BO BP BQ@2 BR BS BT@2 BU BV AU AT AU AT AU AT AS AV AW AX AY AZ
  BA ~ BB BC BW@2 BX BY BZ CA CB ~ CC ~ CD CE BW@2 BX BY BZ CA CB ~ CC ~ CD CE CF CG CF CG CH CI CJ CK CL@2 CM CN CO CN
  CP CQ CR
>`.pickRestart({
  A: "[~@5 [f2,f3,a4,f5]@3 [f4,a4,c5,f5]@2 [f4,a4,c5,f5]@2 [c3,f4,a4,c5,f5]@4 [f3,f4,a4,c5,f5]@4 [c3,f4,a4,c5,f5]@3 [a2,f4,a4,c5,f5]@4 [f2,f4,a4,c5,f5]@7 ~ [f4,g4] e4 d4 c4@7 ~@3, ~@2 a2 ~@9]/2", // F Fsus2
  B: "~@2 [c2,c3,g4,g5]@3 [g4,c5,e5,g5]@2 [g4,c5,e5,g5]@2 [g2,g4,c5,e5,g5]@4 [c3,g4,c5,e5,g5]@4 [g2,g4,c5,e5,g5]@3 [e2,g4,c5,e5,g5]@4, ~@5 e2@4 ~@15", // C5 C
  C: "[[c2,g4,c5,e5,g5]@7 ~ [a4,bb4] g4 f4 e4@4 [c4,c5]@4 [c4,c5]@4 ~ a5@2 ab5@2 a5@2 bb5@2 a5@2 g5@2 f5@2 ~ f5@2 g5@2 f5@2 e5@2 d5@2 db5@2 d5@2 ~ d5@2 [c4,c5]@2 [bb3,bb4]@2 [a3,a4]@2 [bb3,bb4]@2 [c4,c5]@2 [bb3,bb4]@2 ~ [g3,g4]@2 [gb3,gb4]@2 [g3,g4]@2 [a3,a4]@2 [g3,g4]@2 [f3,f4]@2 [e3,e4]@2 ~ [e3,e4]@2 [f3,f4]@2 [e3,e4]@2 [c3,c4]@11 ~@4 [c3,c4]@4 [d3,d4]@4 [e3,e4]@3 [f3,f4]@4, ~@23 bb5@2 ~@13 e5@2 ~@13 e5@2 ~@13 [a3,a4]@2 ~@13 [eb3,eb4]@2 ~@35]/5", // C Bbmaj7 C Bb A Bb C Bb …
  D: "[[g3,g4]@4 [a3,a4]@4 [bb3,bb4]@3 [b3,b4]@4 [c4,c5]@4 [a3,a4]@4 [f4,f5]@3 [d4,d5]@4 [bb3,bb4]@4 [g3,g4]@4 [f3,f4]@3 [a3,a4]@4 [c4,c5]@3]/2", // G A Bb B C A F D …
  E: "[~ [c3,c4]@4 [d3,d4]@3 [e3,e4]@4 [a3,f4]@4 c4@4 f4@3 a3@4 c4@4 f4@4 a3@3 c4@4 f4@4 a3@4 c4@3 f4@4 a3@4 c4@4 f4@3 a3@4, ~@12 [f2,f3]@7 ~@16 [f2,f3]@7 ~@15 [f2,f3]@7 ~@8]/3", // C D E Dm F
  F: "[c4@4 f4@4 a3@3 c4@4 f4@4 a3@4 c4@3 f4@4 [f3,a3]@4 c4@4 f4@3 a3@4 c4@3, ~@8 [f2,f3]@7 ~@26 c5@7]/2", // F
  G: "[~ [f4,f5]@4 a3@3 c4@4 f4@4 a3@4 c4@3 f4@4 g3@4 c4@4 e4@3 g3@4 c4@4 e4@4 g3@3 c4@4 e4@4 g3@4 c4@3 e4@4, ~@5 c5@7 ~@15 c3@7 ~@16 c3@7 ~@15]/3", // F
  H: "[[f3,a3]@4 c4@4 f4@3 a3@4 c4@4 [f4,a5]@4 [f3,a3]@3 c4@4 f4@4 a3@4 c4@3 f4@4 a3@4 c4@4 f4@3 a3@4 c4@4 f4@4 db4@3 e4@4 a4@4 db4@4 e4@3 a4@4 d4@4 f4@4 a4@3 d4@4 f4@4 a4@4 bb3@3 d4@4 g4@4 bb3@4 d4@3 g4@4 ~@4 d4@4 f4@3 ~@4 d4@4 f4@4 a3@3 db4@4 e4@4 a3@4 db4@3 e4@4 [bb3,d4]@7 ~@5, ~@11 f5@7 ~@5 c5@7 ~@15 [f2,f3]@7 ~@16 [c2,c3]@7 ~@15 [d2,d3]@7 ~@4 [d5,d6]@7 ~@5 [d3,g3]@21 ~ f3@21 ~@2 [db3,e3]@21 ~@13, ~@113 g2@7 ~@15 a3@11 a3@10 ~@36, ~@135 a2@7 ~@16 a2@7 ~@27]/8", // F Bb F C D G5 Dbm
  I: "~@9 a3@4 c4@4 f4@3 a3@4, ~@9 [f2,f3]@7 ~@8", // F
  J: "[[f3,a3]@4 c4@4 f4@3 a3@4 c4@4 [f4,a5]@4 [f3,a3]@3 c4@4 f4@4 a3@4 c4@3 f4@4 a3@4 c4@4 f4@3 a3@4 c4@4 f4@4 a3@3 c4@4 f4@4 a3@4 c4@3 f4@4 [bb2,bb3,d4,f4,d5]@6, ~@11 f5@7 ~@5 c5@7 ~@15 f3@7 ~@16 f3@7 ~@21]/4", // F Bb
  K: "[~@15 [bb3,c4]@4 e4@4 g4@3 [bb3,c4]@4 e4@4 g4@4 [bb3,c4]@3 e4@4 g4@3]/2", // Bbsus2
  L: "[~ [bb3,c4]@4 e4@3 g4@4 [a3,c4]@4 [f4,c6]@4 [a4,a5]@3 [bb3,d4,bb5]@4 [g4,bb5]@4 [bb4,g5]@4 [c4,a5]@3 [f4,a5]@4 [a4,f5]@4 [bb3,c4,g5]@4 [e4,g5]@3 [g4,e5]@4 [a3,c4,c5,c6]@4 [f4,c5,c6]@4 [a4,a5]@3 [bb3,d4,bb4,bb5]@4]/3", // Bbsus2 Am F5 A Bb Gm Eb F …
  M: "[[g4,bb4,bb5]@4 [bb4,g5]@4 [c4,a4,a5]@3 [f4,a4,a5]@4 [a4,f5]@4 [c3,e3,g4,g5]@4 [g3,g4,g5]@3 [c4,e5]@4 [c5,f5,c6]!18, ~@30 [a2,f3,a3]@4 [a2,f3,a3]@4 [a2,f3,a3]@3 [a2,f3,a3]@4 [a2,f3,a3]@3]/2", // Gm Eb F Dm C G C F5 …
  N: "[c5,f5,c6]!5 [bb2,f3,bb3,d5,f5,bb5,d6]@7 ~@12, ~ [a2,f3,a3]@4 ~@19", O: "~@3 [c3,f3,a3,c4,a4,c5,f5,a5]@7 ~@14",
  P: "~@2 [c3,e3,g3,c4,g4,c5,e5,g5]@7 ~@15", // C
  Q: "[[f2,c3,f3,a3,f4]@4 ~@4 c4 b3 c4 [f2,c3,f3,a3,f4]@4 ~@4 a4 ab4 a4 ~ [f2,c3,f3,a3,f4]@4 ~@3 c4 b3 ~ c4 [f2,c3,f3,a3,f4]@4 [c4,g4]@3 [f4,a4]@4 [c3,g3,bb3,e4,c5]@3]/2", // F C5 F C7
  R: "[~ bb4@4 [c4,g4]@3 [c3,g3,bb3,e4,c5]@4 bb4@4 [c4,g4]@4 [c3,g3,bb3,e4,c5]@3 bb4@4 [c4,g4]@4 [c3,g3,bb3,e4,c5]@4 bb4@3 [c4,g4]@4 [f3,a3,a4,f5]@4 c4@4 c5 b4 c5 [f3,a3,a4,f5]@4 c4@4 a5 ab5 a5 ~ [f3,a3,a4,f5]@3 c4@4, ~@50 f4@4 ~@7 f4@4 ~@7]/3", // C5 C7 C5 C7 C5 C7 C5 F
  S: "[c5 b4 ~ c5 [f3,a3,a4,f5]@4 [c4,c5,g5]@3 [f4,f5,a5]@4 [c3,e3,e5,c6]@4 [g3,bb5]@4 [c4,c5,g5]@3 [c3,e3,e5,c6]@4 [g3,bb5]@4 [c4,c5,g5]@4 [c3,e3,e5,c6]@3 [g3,bb5]@4 [c4,c5,g5]@3, f4 ~@11]/2", // F C5 F C Gm C5 C Gm …
  T: "[~ [c3,e3,e5,c6]@4 [g3,bb5]@3 [c4,c5,g5]@4 [f3,c4,a4,f5]@4 c3@4 c5 b4 c5 [f3,c4,a4,f5]@4 c3@4 a5 ab5 a5 ~ [f3,c4,a4,f5]@3 c3@4 c5 b4 ~ c5 a4@2 f4@2 ~ g4@2 f5@2 a4@2 g5@2 c5@2 g5@2 c5@2 ~ c5@2 g5@2 c5@2, ~@20 [f3,c4]@3 ~@8 [f3,c4]@4 ~@7 [f3,c4]@4 [f3,c4,f5]@4 [c3,g5]@4 ~@7 [c3,bb5]@4 ~@7, ~@50 c5@2 ~ [f3,c4,a5]@4 [e3,c4,c6]@4 ~@4 [e3,c4,g5]@3 [e3,c4,c6]@4]/3", // C Gm C5 F F5 C5 C7 F …
  U: "[g5@2 c5@2 ~@2 c5@2 ~ c5@2 g5@2 c5@2 ~@2 c5@2 g5@2 c5@2 ~ c5@2 ~@2 c5@2 [f3,a3,c4,f5]@4 [f2,f3,a4,c5,f5,a5]@4 [f2,f3,a4,c5,f5,a5]@3 [f2,f3,a4,c5,f5,a5]@4 ~@3, [c3,bb5]@4 [e3,c4,g5]@4 [e3,c4,c6]@4 ~@3 [e3,c4,g5]@4 [e3,c4,c6]@4 g5@2 ~ [e3,c4,g5]@4 ~@18, ~@8 g5@2 ~ [c3,bb5]@4 ~@8 [c3,bb5]@4 ~@21]/2", // F C7 C C7
  V: "~@2 [eb2,eb3,a4,c5,f5,a5]!3 ~", // F7
  W: "~@7 [d2,d3,bb4,d5,f5,bb5]@4 [d2,d3,bb4,d5,f5,bb5]@3 [d2,d3,bb4,d5,f5,bb5]@4 ~@6", // Bb
  X: "~@5 [a2,a3,f4,c5]@4 [a2,a3,f4,c5]@4 [a2,a3,f4,c5]@4 ~@7", // F
  Y: "~@4 [bb2,bb3,f4,d5]@4 [bb2,bb3,f4,d5]@3 [bb2,bb3,f4,d5]@4 ~@9", // Bb
  Z: "~ [f3,g3,d4,b4]@2 [f3,g3,d4,b4]@2 [f3,g3,d4,b4]@2 ~@5", // G7
  AA: "[~ [g3,e4,c5]@4 [e3,e4,c5]@3 [c3,e4,c5]@4 [e3,d4,b4]@4 [c3,e4,c5]@4 [g2,b3,f4,d5]@21 ~@5 [g3,e4,c5]@4 [e3,e4,c5]@3 [c3,e4,c5]@4 [e3,d4,b4]@4 [c3,e4,c5]@4 [g2,b3,f4,d5]@21 ~ c3@2 b2@2 c3@2 d3@2 ~ d3@2 c3@2 b2@2 c3@2 d3@2 e3@2 c3@2 ~ e3@2 f3@2 g3@2 a3@2 g3@2 f3@2 e3@2 ~ g3@2 a3@2 f3@2 c3@2 b2@2 c3@2 d3@2 ~ d3@2 c3@2 b2@2 c3@2 d3@2 e3@2 c3@2 ~ e3@2 f3@2 g3@2 a3@2 g3@2 f3@2 e3@2 ~ g3@2 a3@2 f3@2 [c3,e3,g3,c4,g4,c5,e5,g5]@7 ~@8, ~@87 [g4,c5,e5,g5]@4 ~@4 e3@2 ~ [g4,c5,e5,g5]@4 ~@8 [a4,c5,f5,a5]@4 ~@7 [a4,c5,f5,a5]@4 ~@7 [g4,c5,e5,g5]@4 ~@7 [g4,c5,e5,g5]@4 ~@8 [a4,c5,f5,a5]@4 ~@7 [a4,c5,f5,a5]@4 ~@22, ~@110 f3@2 ~@13 f3@2 ~@13 e3@2 ~@13 f3@2 ~@13 f3@2 ~@20]/8", // C E7 C G7 C E7 C G7 …
  AB: "[~@6 [ab3,c4]@4 eb4@4 ab4@3 c4@4 eb4@4 ab4@4 [ab3,db4]@3 f4@4 ab4@4 db4@4 f4@3 ab4@4 [ab3,c4]@4 eb4@4 ab4@3 [c4,ab5]@4 [eb4,bb5]@4 [ab4,c6]@4 [eb3,bb3,eb5]@3 eb4@4 g4@4 [g3,bb3]@4 eb4@3 g4@4, ~@6 [c5,eb5]@21 ~@2 [db5,f5]@21 ~ [c5,eb5]@7 ~@16 db4@21 ~]/4", // Ab Db5 Ab Fm Eb5 Ab Eb5 Gm …
  AC: "[[ab3,c4,eb4]@4 eb4@4 ab4@3 c4@4 eb4@4 ab4@4 [ab3,db4,f4]@3 f4@4 ab4@4 db4@4 f4@3 ab4@4 [ab3,c4,eb4]@3]/2", // Ab Db Ab
  AD: "[~ [ab4,c5,eb5,ab5]@4 [ab4,c5,eb5,ab5]@3 [ab3,c4,eb4]@4 [ab4,c5,eb5,ab5]@4 [ab4,c5,eb5,ab5]@4 [ab3,c4,eb4]@3 [ab4,c5,eb5,ab5]@4 [ab4,c5,eb5,ab5]@4 [ab3,c4,eb4]@4 [ab4,c5,eb5,ab5]@3 [ab4,c5,eb5,ab5]@4 [eb3,g3,db4,eb4]@4 [bb4,db5,bb5]@4 [bb4,db5,bb5]@3 [eb3,g3,db4,eb4]@4 [bb4,db5,bb5]@4 [bb4,db5,bb5]@4 [eb3,g3,db4,eb4]@3 [bb4,db5,bb5]@4]/3", // Ab Eb7 Bbm Eb7 Bbm Eb7 Bbm
  AE: "[[bb4,db5,bb5]@4 [eb3,g3,db4,eb4]@4 [bb4,db5,bb5]@3 [bb4,db5,bb5]@4 [eb3,ab3,c4,eb4]@4 [ab4,c5,eb5,ab5]@4 [ab4,c5,eb5,ab5]@3 [eb3,ab3,c4,eb4]@4 [ab4,c5,eb5,ab5]@4 [ab4,c5,eb5,ab5]@4 [eb3,ab3,c4,eb4]@3 [ab4,c5,eb5,ab5]@4 [ab4,c5,eb5,ab5]@3]/2", // Bbm Eb7 Bbm Ab
  AF: "[~ [eb3,ab3,c4,eb4]@4 [ab4,c5,eb5,ab5]@3 [ab4,c5,eb5,ab5]@4 [eb3,g3,db4,eb4]@4 [bb4,db5,eb5,bb5]@4 [bb4,db5,eb5,bb5]@3 [eb3,g3,db4,eb4]@4 [bb4,db5,eb5,bb5]@4 [bb4,db5,eb5,bb5]@4 [eb3,g3,db4,eb4]@3 [bb4,db5,eb5,bb5]@4 [bb4,db5,eb5,bb5]@4 [eb3,g3,db4,eb4]@4 [bb4,db5,eb5,bb5]@3 [bb4,db5,eb5,bb5]@4 [ab2,ab3,c5,eb5,ab5,c6]@4 eb3@4 c3@3 [ab2,ab3,c5,eb5,ab5,c6]@4]/3", // Ab Eb7 Ab
  AG: "[eb3@4 c3@4 [ab2,ab3,c5,eb5,ab5,c6]@3 eb3@4 c3@4 [ab2,ab3,c5,eb5,ab5,c6]@4 eb3@3 c3@4 [ab2,ab3,c5,eb5,ab5,c6]@4 eb3@4 c3@3 [ab2,ab3,c5,eb5,ab5,c6]@4 eb3@3]/2", // Ab
  AH: "[~ c3@4 [ab2,ab3,c5,eb5,ab5,c6]@3 eb3@4 c3@4 [ab2,ab3,c5,eb5,ab5,c6]@4 eb3@3 c3@4 [ab2,ab3,db5,f5,ab5,db6]@4 [f3,f4]@4 [db3,db4]@3 [db4,db5]@4 [ab3,ab4]@4 [f3,f4]@4 [f4,f5]@4 ~@18]/3", // Ab Db F Db Ab F
  AI: "[[eb3,eb4]@4 [ab4,c5]@4 [c5,eb5]@3 [eb3,eb4]@4 [ab4,c5]@4 [c5,eb5]@4 [eb3,eb4]@3 [bb4,db5]@4 [g4,bb4]@4 [eb3,eb4]@4 [bb4,db5]@3 [g4,bb4]@4 [ab2,ab3,c5,eb5,ab5,c6]@3]/2", // Eb Ab Cm Eb Ab Cm Eb Bbm …
  AJ: "[~ eb3@4 c3@3 [ab2,ab3,c5,eb5,ab5,c6]@4 eb3@4 c3@4 [ab2,ab3,c5,eb5,ab5,c6]@3 eb3@4 c3@4 [ab2,ab3,c5,eb5,ab5,c6]@4 eb3@3 c3@4 [ab2,ab3,c5,eb5,ab5,c6]@4 eb3@4 c3@3 [ab2,ab3,c5,eb5,ab5,c6]@4 eb3@4 c3@4 [ab2,ab3,c5,eb5,ab5,c6]@3 eb3@4]/3", // Ab
  AK: "[c3@4 [ab2,ab3,c5,eb5,ab5,c6]@4 eb3@3 c3@4 [ab2,ab3,db5,f5,ab5,db6]@4 [f3,f4]@4 [db3,db4]@3 [db4,db5]@4 [ab3,ab4]@4 [f3,f4]@4 [f4,f5]@4 ~@6]/2", // Ab Db F Db Ab F
  AL: "[~@12 [eb3,c5,eb5,ab5,c6]@4 [ab3,c5,eb5,ab5,c6]@4 [c4,c5,eb5,ab5,c6]@3 [eb4,c5,eb5,ab5,c6]@4 ~@8 [eb3,bb4,eb5,g5,bb5]@3 [g3,bb4,eb5,g5,bb5]@4 [bb3,bb4,eb5,g5,bb5]@4 [eb4,bb4,eb5,g5,bb5]@4 ~@11 [ab3,eb4,ab4,c5]@4 [ab3,eb4,ab4,c5]@3 [ab3,eb4,ab4,c5]@4]/3", // Ab Eb Ab
  AM: "~@11 [g3,c4,e4,bb4]@4 [g3,c4,e4,bb4]@4 [g3,c4,e4,bb4]@4 ~", // C7
  AN: "~@10 [f3,c4,ab4]@4 [f3,c4,ab4]@3 [f3,c4,ab4]@4 ~@3", AO: "~@2 [db3,ab3,bb3,f4]!3 ~", AP: "~@3 [c3,c4]@7 ~@14",
  AQ: "[f4,a4]@4 ~ c4 [f4,a4]@4 ~ c4 [c4,f4,a4]@5 c4 [f4,a4]@4 ~ c4, f3@5 ~ a3@5 ~@7 a3@5 ~", // F
  AR: "[g4,bb4]@4 ~ d4 [g4,bb4]@4 ~ d4 [d4,g4,bb4]@5 d4 [g4,bb4]@4 ~ d4, g3@5 ~ bb3@5 ~@7 bb3@5 ~", // Gm
  AS: "[g4,bb4]@4 ~ c4 [g4,bb4]@4 ~ c4 [g4,bb4]@4 ~ c4 [g4,bb4]@4 ~ c4, e3@5 ~ g3@5 ~ e3@5 ~ c3@5 ~", // Gm
  AT: "[f4,a4]@4 ~ c4 [f4,a4]@4 ~ c4 [f4,a4]@4 ~ c4 [f4,a4]@4 ~ c4, f3@5 ~ c3@5 ~ a3@5 ~ f3@5 ~", // F
  AU: "[g4,bb4]@4 ~ c4 [g4,bb4]@4 ~ c4 [g4,bb4]@4 ~ c4 [g4,bb4]@4 ~ c4, e3@5 ~ c3@5 ~ g3@5 ~ e3@5 ~", // Gm
  AV: "[f4,a4]@4 ~ c4 [f4,a4]@4 ~ c4 [a3,f4]@4 ~ c4 [a3,f4]@4 ~ c4, f3@5 ~ c3@5 ~ a2@5 ~ f2@5 ~", // F Dm
  AW: "[bb3,d4]@4 ~ [bb3,d4] [g2,d3]@5 [bb3,g4] [c4,e4]@4 ~ [c4,e4] [a2,e3]@5 [c4,a4], bb2@5 ~ [bb3,g4]@4 ~@2 c3@5 ~ [c4,a4]@4 ~@2", // Bb G5 Eb C A5 F Eb F
  AX: "[d4,f4]@4 ~ [d4,f4] [bb2,f3]@5 [d4,bb4] [e4,g4]@4 ~ [e4,g4] [c3,g3]@5 [e4,c5], d3@5 ~ [d4,bb4]@4 ~@2 e3@5 ~ [e4,c5]@4 ~@2", // Dm Bb5 Gm Em C5 C Gm C
  AY: "[f4,a4]@4 ~ [f4,a4] [c4,a4]@4 ~ [c4,a4] [e4,g4]@4 ~ [e4,g4] [e3,a3]@5 [db4,g4], f3@5 ~ f3@5 ~ e3@5 ~ [db4,g4]@4 ~@2", // F Em A5 Dbdim
  AZ: "[d4,f4]@4 ~ [d4,f4] [a3,f4]@4 ~ [a3,f4] [c4,eb4]@4 ~ [c4,eb4] [c3,f3]@5 [a3,eb4], d3@5 ~ d3@5 ~ c3@5 ~ [a3,eb4]@4 ~@2", // Dm Cm F5 Adim
  BA: "[bb3,d4]@3 ~@2 [bb2,f3,bb3,d5,bb5,d6] [bb2,f3,bb3,d5,bb5,d6]@6 ~@12", BB: "[c3,f3,a3,c4,a4,c5,f5,a5]@11 ~@13",
  BC: "[c3,e3,g3,c4,g4,c5,e5,g5]@11 ~@13", // C
  BD: "f2@3 c2@3 [d2,f5,a5,c6,f6]@3 e2@2 [f5,a5,c6,f6] f2@3 c2@3 d2@3 e2@3, [f5,a5,c6,f6] ~ [f5,a5,c6,f6]!2", // Dm7 F
  BE: "f2 g2 a2 bb2 c3 d3 e3 f3, [f5,a5,c6,f6]!4", BF: "c3@6 [c4,g4,c5,e5,c6]@11 ~@7",
  BG: "[db3,f5,ab5] [db4,ab4] [f3,ab3,f5,ab5] [db4,ab4] [db3,f5,ab5] [db4,ab4] [f3,ab3,f5,ab5] [db4,ab4]", // Db Db5 Fm Db5 Db Db5 Fm Db5
  BH: "[db3,gb5,bb5] [db4,bb4] [gb3,bb3,gb5,bb5] [db4,bb4] [db3,gb5,bb5] [db4,bb4] [gb3,bb3,gb5,bb5] [db4,bb4]", // Gb
  BI: "[a2,f5,c6] [a3,eb5] [eb3,f3,f5,c6] [a3,eb5] [a2,f5,c6] [a3,eb5] [eb3,f3,f5,c6] [a3,eb5]", // F Adim F7 Adim F Adim F7 Adim
  BJ: "[bb2,db5,bb5] [bb3,bb4] [db3,f3,db5,bb5] [bb3,bb4] [bb2,db5,bb5] [bb3,bb4] [db3,f3,db5,bb5] [bb3,bb4]", // Bbm Bb Bbm Bb Bbm Bb Bbm Bb
  BK: "[b2,d5,ab5] [b3,ab4] [f3,ab3,d5,ab5] [b3,ab4] [b2,d5,ab5] [b3,ab4] [f3,ab3,d5,ab5] [b3,ab4]", // Abdim E Ddim E Abdim E Ddim E
  BL: "[c3,g3,c4,g4,e5,g5] ~@3", BM: "[g4,bb4]@23 ~", BN: "[c4,f4,a4]@23 ~", BO: "[c3,bb3,e4,g4]@23 ~",
  BP: "[f3,f4]@5 f4 a3@4 ~ f4 c4@4 ~ f4 [a3,c5]@4 ~ [f4,c5]", // F Am F5
  BQ: "[f3,f5]@3 e5@2 f4 [a3,g5]@3 f5@2 f4 [c4,a5]@3 g5@2 f4 [a3,bb5]@3 a5@2 f4", // F A7 F Bbmaj7
  BR: "[f3,c6]@3 b5@2 f4 [a3,d6]@3 c6@2 f4 [c4,bb5]@3 a5@2 f4 [a3,g5]@3 gb5@2 f4", // F5 D5 C7 A7
  BS: "g3@4 ~ g4 bb3@4 ~ g4 d4@4 ~ g4 [bb3,d5]@4 ~ [g4,d5], g5@11 ~@13", // Bb G5
  BT: "[g3,g5]@3 gb5@2 g4 [bb3,a5]@3 g5@2 g4 [d4,bb5]@3 a5@2 g4 [bb3,c6]@3 bb5@2 g4", // G Bbmaj7 Gm Bbsus2
  BU: "[c3,d6]@3 db6@2 c4 [g3,e6]@3 d6@2 c4 [e3,c6]@3 bb5@2 c4 [c3,a5]@3 g5@2 c4", // Csus2 C F
  BV: "f3@4 ~ c4 c3@4 ~ c4 a3@4 ~ c4 f3@4 ~ c4, a5@11 ~@13",
  BW: "[f2,g5,bb5] [f3,f5,a5] [f2,e5,g5] [f3,f5,a5] [f2,g5,bb5] [f3,f5,a5] [f2,e5,g5] [f3,f5,a5]", // Gm7 F C F Gm7 F C F
  BX: "[f2,g5,bb5] [f3,f5,a5] [f2,e5,g5] [f3,f5,a5] [f2,a5,c6] [f3,g5,bb5] [f2,f5,a5] [f3,g5,bb5]", // Gm7 F C F Gm7 F Gm7
  BY: "[f2,bb5,d6] [f3,a5,c6] [f2,g5,bb5] [f3,a5,c6] [f2,c6,eb6] [f3,bb5,d6] [f2,a5,c6] [f3,bb5,d6]", // Bb F Gm7 F F7 Bb F Bb
  BZ: "[a5,c6,eb6] eb5 [a5,c6,eb6] eb5 [a5,c6,eb6] eb5 [a5,c6,eb6] eb5, [f2,f3]@6 ~@6 [f2,f3]@11 ~", // Adim F
  CA: "[a5,c6,eb6] eb5 [a5,c6,eb6] eb5 [a5,c6,eb6] eb5 [a5,c6,eb6] eb5, [a2,a3]@11 ~ [c3,c4]@11 ~", // Adim A C
  CB: "[f2,f3,eb5,a5,c6,eb6] ~@3", CC: "[bb2,bb3,f4,d5] ~@3",
  CD: "[c5,f5,a5]@3 a4@3 [c3,f3,a3,c5,f5,a5]@3 a4@2 [c3,f3,a3] [c5,f5,a5]@3 a4@3 [c5,f5,a5]@3 a4@3, [c2,c3] ~ [c3,f3,a3]!2", // F C F
  CE: "[c5,e5,g5]@3 g4@3 [c3,e3,g3,c5,e5,g5]@3 g4@2 [c3,e3,g3] [c5,e5,g5]@3 g4@3 [c5,e5,g5]@3 g4@3, [c2,c3] ~ [c3,e3,g3]!2", // C
  CF: "[f2,a5,c6] [a2,c5] [c3,a5,c6] [f3,c5] [bb2,g5,bb5] [d3,bb4] [g3,g5,bb5] [bb3,bb4]", // F Am F F5 Eb Gm Bb
  CG: "[c3,f5,a5] [f3,a4] [a3,f5,a5] [c4,a4] [c3,e5,g5] [e3,g4] [g3,e5,g5] [c4,g4]", // F Dm F C Em C C5
  CH: "[f2,a2,c3,a5,c6,f6] [f3,f5] [f2,a2,c3,a5,c6,f6] [f3,f5] [f2,a2,c3,a5,c6,f6] [f3,f5] [f2,a2,c3,a5,c6,f6] [f3,f5]", // F
  CI: "[bb2,d3,g3,bb5,d6,g6] [bb3,g5] [bb2,d3,g3,bb5,d6,g6] [bb3,g5] [bb2,d3,g3,bb5,d6,g6] [bb3,g5] [bb2,d3,g3,bb5,d6,g6] [bb3,g5]", // Gm Eb Gm Eb Gm Eb Gm Eb
  CJ: "[c3,f3,a3,c4,f5,a5,c6,f6]@11 ~@13", CK: "[c3,e3,g3,c4,c5,e5,g5,c6]@11 ~@13",
  CL: "[f3,a4,f5] [c3,c5] [d3,d5] [e3,e5] [f3,a4,f5] [c3,c5] [d3,d5] [e3,e5]", // F C D E F C D E
  CM: "[f3,a4,f5]@6 f3@4 ~ [e3,f3] a3@6 f3@6", CN: "c3 f3 a2 c3, [a4,c5,f5]@11 ~ [a4,c5,f5]@11 ~",
  CO: "[f2,a4,c5,f5]@6 f3@4 ~ [e3,f3] a3@6 f3@6", CP: "[f2,a4,c5,f5]@6 ~@17 [f3,c4,f4,a4,c5,f5,a5]",
  CQ: "[f3,c4,f4,a4,c5,f5,a5]@11 ~@12 [f2,c3,f3,a3,f4]", CR: "[f2,c3,f3,a3,f4]@11 ~@13",
})).s("gm_piano").gain(0.3)

stack(flute, clarinet, cello, bassoon, piano)