Strudelify

Symphonic Dances from "West Side Story": Mambo (Presto)

Bernstein Leonard

KeyE minorTempo126 bpm
0:00/0:00
// Symphonic Dances from "West Side Story": Mambo (Presto) — Bernstein Leonard
// 126 bpm, 2/4, key E minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: Full arrangement: all 151 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(126/2)

// 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 · piccolo
const piccolo = note(`<
  ~@62 A B C D ~@2 E F G ~@5 H I H I ~@6 J K L ~@3 M N O ~ P Q R S T U@11 V W V W ~@9 X Y Z AA AB AA AC AD@3 AE@4 ~ AF@4
  AG AH ~@5
>`.pickRestart({
  A: "b6@3 ~@9 b6@3 ~", B: "~@3 b6@3 ~@6 b6@3 ~", C: "f#6@3 ~@9 c#6@3 ~", D: "~@2 c#7@3 ~ b6@2 c#7@2 ~@2 b6@2 ~@2",
  E: "c#7@3 ~ c#7@3 ~ b6@3 ~ c#7@2 ~@2", F: "c#7 ~ c#7@3 ~ b6 ~ c#7@3 ~ b6@3 ~", G: "e7@3 ~@13",
  H: "[a6,f#7] ~ [d7,a7] ~@5", I: "[a6,f#7]@2 ~@2 [d7,a7] ~ c7@2 ~@8, ~@6 g7 ~@9", J: "~@12 e6@3 ~",
  K: "~@4 g6@3 ~ e7 ~ e7 ~ e7 ~ e7 ~", L: "g7@3 ~@9 a5@3 ~", M: "c7@3 ~ c7@3 ~@5 a#6@3 ~",
  N: "~@2 c7@3 ~ a#6 ~ c7@2 ~@2 a#6@2 ~@2", O: "g6@3 ~ g6@2 ~@2 f6@2 ~@2 g6@3 ~", P: "c7@3 ~ c7@2 ~@2 a#6@2 ~@2 c7@3 ~",
  Q: "c7 ~ c7@2 ~@2 a#6 ~ c7@2 ~@2 a#6 ~@3", R: "g6@2 ~@2 g6@2 ~@2 f6@2 ~@2 d6@3 ~", S: "~@2 f5 ~ a#5 ~ d6 ~",
  T: "g6@2 ~@5 g#6 a#6@3 ~ g6@3 ~, ~@3 g6 ~@4, ~@7 a6@2 ~@7", U: "a#6@4 g6@3 ~ a#6@4 g6@3 ~", V: "e6@3 ~ a6@3 ~@9",
  W: "e6@3 ~ a6@2 g6@3 ~@7", X: "d7@3 ~ c7@2 a6@5 ~@5", Y: "d7@3 ~ c7@2 a6@5 ~ a6@3 ~", Z: "g6@2 e6@5 ~ d6@3 ~ c6 ~@3",
  AA: "a5 c6 e6 g#6 ~ a5 c6 e6", AB: "g#6 g6 ~@2 f#6 d6 ~@2", AC: "g#6 g6 f#6 d6 a5 f#5 ~@2",
  AD: "[a5 c6 e6 g#6 ~ g6@15 b5 d6 f#6 a#6]/3", AE: "[~ b5 d6 f#6 a#6 ~ a6@26]/4",
  AF: "[e7 ~ e7@2 a6@2 ~@2 e6@2 ~ a6@21]/2", AG: "a6@2 a6@2 g6@2 ~@4 a6@3 ~ a6@2", AH: "g6@3 ~@13",
})).s("gm_piccolo").gain(0.31).pan(0.4)

// chords · clarinet
const clarinet = note(`<
  ~@8 A B C D E F ~@20 G H G I J@2 K@3 ~@3 L M N O P@2 Q R S T@2 U V ~@3 W X Y Z ~@2 AA AB AC ~@5 AD AE AD AE ~@6 AF AG
  AH ~@3 AI AJ AK ~ AL AM AN AO AP AQ@7 AR@4 AS AT AS AT ~@9 AU AV AW AX H AX AY AZ@3 BA@5 BB@4 BC BD ~@5
>`.pickRestart({
  A: "b5@3 ~@5 a5@3 ~@5", B: "b5@3 ~@4 a5@3 ~ a5@3 ~ a5", C: "b5@3 ~ d6@3 ~@9", D: "~@2 e6 ~ e6 ~ e6 ~ e6@3 ~@5",
  E: "~@4 e6@3 ~@9", F: "e6 ~ e6 ~ e6 ~@11", G: "a4 ~@2 g#5 ~@4", H: "g#5 g5 ~@2 f#5 d5 ~@2",
  I: "g#5 g5 ~@2 a4 f#4 ~@2", J: "[a4@2 ~@4 g#5@2 ~@4 g5@13 ~@3 g5@2 ~@2]/2",
  K: "[d#6 c6 d6 ~ d#6 c6 d6 c6@5 d#6 d6 c6 b5@3 ~@6]/3", L: "[f5,f#5,b5]@3 ~@9 [f5,f#5,b5]@3 ~",
  M: "~@3 [f5,f#5,b5]@3 ~@6 [f5,f#5,b5]@3 ~", N: "[c5,c#5,f#5]@3 ~@9 [g4,g#4,c#5]@3 ~", O: "~ [b3,b4] [d4,d5] [e4,e5]",
  P: "[[f#4,b4,d5] ~@3 [f#4,b4,d5] ~@7 [a#4,c#5,e5]@8 [b4,d5]@2 ~@6 [g4,a#4,c#5]@4]/2", // Bm A#dim Bm Gdim
  Q: "[f4,a4,b4]@3 ~@5 [d#4,f#4,a4]@4 [c#4,f4,g4]@2 ~@2", R: "~@4 [b3,b4]@3 ~ [d4,d5]@3 [e4,e5]@4 [f#4,b4,d5]",
  S: "~@4 [f#4,b4,d5]@2 ~@2 [a#4,c#5,e5]@3 [b4,d5]@2 ~@3", // Bm A#dim Bm
  T: "[[a#4,c#5,e5]@4 [b4,d5]@2 ~@6 [g4,a#4,c#5]@3 [f4,a4,b4]@2 ~@2 [f4,a4,b4]@2 ~@3 [d#4,f#4,a4]@4 [c#4,f4,g4]@2 ~@2]/2", // A#dim Bm Gdim Bm7b5 D#dim Gm7b5
  U: "~ [b3,b4] [d4,d5] [f#4,f#5]", V: "[c5,d#5,b5] ~@7", W: "[f5,f#5]@3 ~@9 [f5,f#5]@3 ~",
  X: "~@3 [f5,f#5]@3 ~@6 [f5,f#5]@3 ~", Y: "[c5,c#5]@3 ~@9 [g4,g#4]@3 ~",
  Z: "~@2 [f6,g#6]@3 ~ [d#6,f#6]@2 [f6,g#6]@2 ~@2 [d#6,f#6]@2 ~@2", // Fm D#m Fm D#m
  AA: "[f6,g#6]@3 ~ [f6,g#6]@3 ~ [d#6,f#6]@3 ~ [f6,g#6]@2 ~@2", // Fm D#m Fm
  AB: "[f6,g#6] ~ [f6,g#6]@3 ~ [d#6,f#6] ~ [f6,g#6]@3 ~ [d#6,f#6]@3 ~", AC: "[e6,c#7]@3 ~@13", AD: "d6 ~ f#6 ~@5",
  AE: "d6@2 ~@2 f#6 ~ e6@2 ~@8", AF: "~@12 [g#4,d#5]@3 ~",
  AG: "~@4 [b4,g5]@3 ~ [g#5,e6] ~ [g#5,e6] ~ [g#5,e6] ~ [g#5,e6] ~", AH: "[c6,g6]@3 ~@13",
  AI: "[e6,g6]@3 ~ [e6,g6]@3 ~@5 [d6,f6]@3 ~", AJ: "~@2 [e6,g6]@3 ~ [d6,e6] ~ [e6,g6]@2 ~@2 [d6,e6]@2 ~@2",
  AK: "[c6,e6]@3 ~ [c6,e6]@2 ~@2 [a#5,d6]@2 ~@2 [c6,e6]@3 ~", AL: "[e6,g6]@3 ~ [e6,g6]@2 ~@2 [d6,f6]@2 ~@2 [e6,g6]@3 ~",
  AM: "[e6,g6] ~ [e6,g6]@2 ~@2 [d6,f6] ~ [e6,g6]@2 ~@2 [d6,e6] ~@3", // Em Dm Em Dsus2
  AN: "[c6,e6]@2 ~@2 [c6,e6]@2 ~@2 [a#5,d6]@2 ~@2 [f5,a#5]@3 ~", AO: "~@2 [d4,a#4] ~ [f4,d5] ~ [a#4,f5] ~",
  AP: "[c5,g5]@2 ~@5 [c#5,g#5] [d#5,a#5]@3 ~ [c5,g5]@3 ~, ~@3 [c5,g5] ~@4, ~@7 [d5,a5]@2 ~@7", // C5 C#5 D#5 C5 D5
  AQ: "[d#5,a#5]@4 [c5,g5]@3 ~ [d#5,a#5]@4 [c5,g5]@3 ~", AR: "[c#5,b5]@4 [a#4,g#5]@3 ~ [c#5,b5]@4 [a#4,g#5]@3 ~",
  AS: "[c#5,c#6]@3 ~ [e5,e6]@3 ~@9", AT: "[c#5,c#6]@3 ~ [e5,e6]@2 [d5,d6]@3 ~@7", AU: "d6@3 ~ c6@2 a5@5 ~@5",
  AV: "d6@3 ~ c6@2 a5@5 ~ a5@3 ~", AW: "g5@2 e5@5 ~ d5@3 ~ c5 ~@3", AX: "a4 c5 e5 g#5 ~ a4 c5 e5",
  AY: "g#5 g5 f#5 d5 a4 f#4 ~@2", AZ: "[a4 c5 e5 g#5 ~ g5@15 b4 d5 f#5 a#5]/3", BA: "[~ b4 d5 f#5 a#5 ~ a5@34]/5",
  BB: "[e6 ~ e6@2 a5@2 ~@2 e5@2 ~ a5@21]/2", BC: "a5@2 a5@2 g5@2 ~@4 a5@3 ~ a5@2", BD: "g5@3 ~@13",
})).s("gm_clarinet").gain(0.31).pan(0.4)

// other · bassoon
const bassoon = note(`<
  ~@8 A B C D E F ~@8 G H I ~ G H I ~ J K ~@10 L M N ~ O P Q R S@2 T U V W@2 X L M N ~ O P Q ~@5 Y ~@5 Z AA Z AA ~@5 AB
  ~@2 AC ~ AD ~ AD ~ AD ~ AD ~ AD ~@2 AE@7 AF@4 F ~ F ~ F ~ F ~ F ~ F ~ F ~ AG AH@2 ~ AI ~ AJ ~ AK ~ AL AM@2 AL AN ~@3
  AO AP AQ AR AS@2 ~
>`.pickRestart({
  A: "~@4 b2@3 ~@5 d3@3 ~", B: "~@4 d2@3 ~@5 f#2@3 ~", C: "~@4 b2@3 ~@9", D: "d3@3 ~@9 b2@3 ~",
  E: "d3@3 ~@5 b2@3 ~ c3@3 ~", F: "~@12 e2@3 ~", G: "b2 f#3 f3 b2", H: "f3 f#3 b2 f#3", I: "f3 ~@7", J: "a#2 g2 d3 a#2",
  K: "g2 d3 a#2 g2", L: "b2@2 ~@2 b2@2 ~@6 f#2@3 ~", M: "~@2 b2@3 ~ f#2 ~ b2@3 ~ f#2@3 ~",
  N: "c3@3 ~ c3@3 ~ g2@3 ~ c3@3 ~", O: "b2@3 ~ b2@3 ~ f#2@3 ~ b2@3 ~", P: "f#2 ~ b2@2 ~@2 f#2@2 b2@2 ~@2 f#2@2 ~@2",
  Q: "c3@3 ~ c3@3 ~ g2@2 ~@2 a#2@2 ~@2", R: "~ f3 f#3 g3", S: "[g#3 ~@3 g#3 ~@7 c3@8 g#3@2 ~@6 a2@4]/2",
  T: "d3@3 ~@5 f2@4 a#2@2 ~@2", U: "~@4 b3@3 ~ a#3@3 a3@4 g#3", V: "~@4 g#3@2 ~@2 c3@3 g#3@2 ~@3",
  W: "[c3@4 g#3@2 ~@6 a3@3 d4@2 ~@2 d4@2 ~@3 f3@4 a#3@2 ~@2]/2", X: "~@4 b3@4 f#3@4 d3@3 ~", Y: "a2@3 ~@13",
  Z: "~@4 e2 ~ a2 ~", AA: "~@11 a2 e2@2 ~@2", AB: "~@6 e2 ~", AC: "c3@3 ~@9 g2@3 ~", AD: "~@12 g2@3 ~",
  AE: "~@12 a#1@3 ~", AF: "~@4 c#3@3 ~ f#2@3 ~ c#2@3 ~", AG: "d4@3 ~ c4@2 a3@5 ~ a3@3 ~",
  AH: "[g3@2 e3@5 ~ d3@3 ~ c3@2 a2@7 ~ a3@3 ~@7]/2", AI: "~@2 a2@4 a3@3 ~@7", AJ: "a2@3 a3 ~@4", AK: "~@4 b2@3 b3",
  AL: "d3@3 ~ a3@2 g#3@6 d3@3 ~", AM: "[g#3@2 a3@6 d3@3 ~ a3@2 g#3@6 d3@3 ~ g#3@2 a3@6]/2", AN: "g#3 a3@3 ~@4",
  AO: "e3@2 a2@2 e2@2 ~@4 e3@3 ~ a2@2", AP: "e2@3 ~@5 e3@2 ~ a2@2 e2@3", AQ: "~@4 e3@3 ~ a2@2 ~ e2@4 ~",
  AR: "~@5 e3@2 ~ a2@3 e2@4 ~", AS: "[~@7 e3@3 a2@3 ~ e2@4 ~@14]/2",
})).s("gm_bassoon").gain(0.36).pan(0.4)

// other · alto sax
const alto_sax = note(`<
  ~@8 A B C D E F G H G I J@2 K@3 L M N O P Q R ~@4 S T S U V@2 W@3 ~@82 X Y Z AA AB AA AC AD@3 AE@3 ~@2 AF AG AF AG AH
  AI ~@2 AJ@2 ~
>`.pickRestart({
  A: "c4@3 ~@5 a#3@3 ~@5", B: "c4@3 ~@4 a#3@3 ~ a#3@3 ~ a#3", C: "c4@3 ~ d#4@3 ~@9",
  D: "~@2 g#5 ~ g#5 ~ g#5 ~ g#5@3 ~@5", E: "~@4 g#5@3 ~@9", F: "g#5 ~ g#5 ~ g#5 ~@11", G: "a3 c4 e4 g#4 ~ a3 c4 e4",
  H: "g#4 g4 ~@2 f#4 d4 ~@2", I: "g#4 g4 f#4 d4 a3 f#3 ~@2", J: "[a3@2 c4@2 e4@2 g#4@2 ~@4 g4@13 ~@3 g4@2 ~@2]/2",
  K: "[d#5 c5 d5 ~ d#5 c5 d5 c5@5 d#5 d5 c5 b4@9]/3", L: "f#5 f5 ~@6", M: "b3 d4 f#4 a#4 ~ b3 d4 f#4",
  N: "a#4 a4 ~@2 g#4 e4 ~@2", O: "a#4", P: "f5 f#5 ~@5 f#3", Q: "b3 d4 f#4 a#4 ~ a#3 d4 f#4",
  R: "a#4 a4 g#4 e4 b3 g#3 ~@2", S: "a4 c5 e5 g#5 ~ a4 c5 e5", T: "g#5 g5 ~@2 f#5 d5 ~@2",
  U: "g#5 g5 f#5 d5 a4 f#4 ~@2", V: "[a4@2 c5@2 e5@2 g#5@2 ~@4 g5@13 ~@3 g5@2 ~@2]/2",
  W: "[d#6 c6 d6 ~ d#6 c6 d6 c6@5 d#6 d6 c6 b5@3 ~@6]/3", X: "d5@3 ~ c5@2 a4@5 ~@5", Y: "d5@3 ~ c5@2 a4@5 ~ a4@3 ~",
  Z: "g4@2 e4@5 ~ d4@3 ~ c4 ~@3", AA: "c4 e4 f#4 a4 ~ c4 e4 f#4", AB: "g4!2 ~@2 c5 a4 ~@2",
  AC: "a4 b4 c5 d5 a4 f#4 ~@2", AD: "[c4 e4 f#4 a4 ~ a4@15 d4 e4 f#4 b4]/3", AE: "[~ d4 f#4 g#4 b4 ~ b4@15 ~@3]/3",
  AF: "a4@3 ~ a3@3 ~@5 g3@3 ~", AG: "~@2 a3@3 ~ a3@2 g3@2 [a3,a#3] [b3,c4] [c#4,d4] [d#4,e4] [f4,f#4] [g4,g#4]",
  AH: "e5@2 e5@2 d5@2 ~@4 e5@3 ~ e5@2", AI: "d5@3 ~@5 a4@2 ~ a4@2 g4@3", AJ: "[~@7 a4@3 a4@3 ~ g4@4 ~@14]/2",
})).s("gm_alto_sax").gain(0.41).pan(0.4)

// other · french horn
const french_horn = note(`<
  ~@8 A B C D E F ~@16 G@3 H I J K L M ~@3 N O P ~ Q R S ~@8 T N O P ~ Q R S ~ U V ~@2 W X Y X Y X ~@4 Y X Y X Z AA Z AB
  AC AD AC AD AC AD AE AF AE AF AE ~@8 AG AH AI@2 AJ@2 AK AL AK AL AK AL AK AL AK AL AK AL AK AM AN AO AP AQ AR ~ AS AT
  ~@2 AU@2 AV AW@4 AX AY AZ ~ BA@2 ~
>`.pickRestart({
  A: "c5@3 ~@5 a#4@3 ~@5", B: "c5@3 ~@4 a#4@3 ~ a#4@3 ~ a#4", C: "c5@3 ~ d5@3 ~@9", D: "~@2 b4 ~ b4 ~ b4 ~ b4@3 ~@5",
  E: "~@4 b4@3 ~@9", F: "b4 ~ b4 ~ b4 ~@11", G: "[[g3,g4]@12 [g3,g4]@11 ~ [g3,g4]@12 [g3,g4]@11 ~]/3",
  H: "[g3,g4]@3 [g3,g4]", I: "[a3,a4]@6 ~ [a3,a4]@9", J: "[a3,a4] ~@7", K: "a4@6 ~ a4@8 ~", L: "a4@2 f#4@9 ~@5",
  M: "a4@3 ~@4 a4@3 ~@6", N: "c5@2 ~@2 c5@2 ~@6 a#4@3 ~", O: "~@2 c5@3 ~ a#4 ~ c5@3 ~ a#4@3 ~",
  P: "g4@3 ~ g4@3 ~ f4@3 ~ g4@3 ~", Q: "c5@3 ~ c5@3 ~ b4@3 ~ c5@3 ~", R: "c5 ~ c5@2 ~@2 b4@2 c5@2 ~@2 b4@2 ~@2",
  S: "g4@3 ~ g4@3 ~ f4@2 ~@2 d4@2 ~@2", T: "~@4 b3@4 d4@4 f#4@3 ~", U: "g#4 ~ g#4 ~@3 f#4 ~",
  V: "~@2 g#4@3 ~ f#4 ~ g#4@2 ~@2 f#4@2 ~@2", W: "a4@3 ~ a4@3 ~@5 g4@3 ~", X: "~@2 a3@3 ~ a3@2 g3@3 ~@5",
  Y: "a4@3 ~ a3@3 ~@5 g3@3 ~", Z: "d4 ~ d4 ~ d4 ~ d4 ~ f4@3 ~ d4 ~ d4 ~", AA: "d4 ~ d4 ~ c4@3 ~@9",
  AB: "d4 ~ d4 ~ f4@3 ~ d4 ~ d4 ~ d4 ~ d4 ~", AC: "c5@3 ~ c4@3 ~@5 a#3@3 ~", AD: "~@2 c4@3 ~ c4@2 a#3@3 ~@5",
  AE: "c5@3 ~ g4@3 ~@5 f4@3 ~", AF: "~@2 g4@3 ~ g4@2 f4@3 ~@5", AG: "~@3 f#4", AH: "~@4 f#4@2 e4@4 ~ f#4 c#4@2 ~@2",
  AI: "[~@4 e4@2 ~ a4@3 ~@5 f#4@2 ~@2 f#4@2 e4@5 f#4@2 c#4@2 ~@2]/2",
  AJ: "[~@4 e4@2 ~ f#4@2 ~@3 a4@7 ~ a4@2 g4@4 a4 ~ e4@3 ~]/2", AK: "~@2 a4@2 ~@2 a4@2 g4@5 ~@3",
  AL: "a4@3 ~ a4@2 g4@4 a4 ~ e4@3 ~", AM: "[d4,d5]@3 ~ [c4,c5]@2 [a3,a4]@5 ~ [a3,a4]@3 ~",
  AN: "[g3,g4]@2 [e3,e4]@5 ~ d4@3 ~ c4@2 a3@2", AO: "~@6 d4@3 ~@7", AP: "g#4 g4 ~@2 f#4 d4 ~@2",
  AQ: "~@2 a3@3 ~ g#4@2 ~@8", AR: "g#4 g4 f#4 ~ a3 f#3 ~@2", AS: "c4@3 ~ g4@2 f#4@6 c4@3 ~", AT: "f#4 g4@3 ~@4",
  AU: "[~@8 d4@3 ~ a4@2 g#4@6 d4@3 ~ g#4@2 a4@6]/2", AV: "d4@3 ~ a4@2 g#4@6 d4@3 ~", AW: "[g#4 a4@15]/2",
  AX: "a4@2 a4@2 g4@2 ~@4 a4@3 ~ a4@2", AY: "g4@3 ~@13", AZ: "~@4 [e4,a4]@3 ~ [e4,a4]@2 ~ [d4,g4]@4 ~",
  BA: "[~@7 d4@3 d4@3 ~ c4@4 ~@14]/2",
})).s("gm_french_horn").gain(0.41).pan(0.6)

// other · muted trumpet
const muted_trumpet = note("<~@21 A@2 B ~@2 C D ~@2 E F@3 G@4 H@3 ~@59 I ~@15 J K L M@2 N@3 O P ~@25>".pickRestart({
  A: "[~@4 d#5 d5 c5 b4@9]/2", B: "f#5 f5 ~@6", C: "a#4", D: "f5 f#5 ~@6", E: "g4@2 d5 ~@3 g4@2, ~@3 c#5@5",
  F: "[~@4 g4@2 ~@4 g4@2 ~@4 g4@2 ~ c#5@3 g4@2, c#5@4 ~@3 c#5@5 c#5@4 ~@8, ~ d5@5 d5@4 ~@3 d5@5 d5@4 ~@2]/3",
  G: "[d#5 e5@13 a4@2]/2", H: "[e5 ~@7 d5 c#5@7 c5@2 ~@6, ~ d#5@17 ~@6]/3",
  I: "~@7 [c#5,f5,g#5] [d#5,g5,a#5]@4 ~@4, ~@3 [c5,e5,g5] ~@4, ~@7 [d5,f#5,a5]@2 ~@7", J: "a5 ~ g5 a5@3 ~@2",
  K: "a5@2 ~@2 g5@2 e5@3 ~ c#6@2 b5@3 ~", L: "a5 ~@3", M: "[~@15 a5@3 ~@2 g5@2 a5@6 ~@4]/2",
  N: "[a5@2 ~@2 g5@2 e5@4 ~@2 c#6@2 b5@25 ~@5 a5@4]/3", O: "d6@2 ~@2 c6@2 a5@5 ~@5", P: "d6@3 ~ c6@2 a5@6 ~@4",
})).s("gm_muted_trumpet").gain(0.64).pan(0.6)

// chords · trumpet
const trumpet = note(`<
  ~@8 A B C D E F ~@28 G H I ~ J K L ~@8 M G H I ~ J K L ~ N O ~@2 P@6 ~@4 Q@4 R S R T U@6 V W@2 X Y ~@13 Z AA Z AA Z AA
  Z AA Z AA Z AA Z AA ~@2 AB AC AD AE AF@3 AG@3 ~ AH AI@4 AJ AK ~ AL ~@3
>`.pickRestart({
  A: "[b4,d#5,f#5]@3 ~@5 [a#4,c#5,e5]@3 ~@5", B: "[b4,d#5,f#5]@3 ~@4 [a#4,c#5,e5]@3 ~ [a#4,c#5,e5]@3 ~ [a#4,c#5,e5]",
  C: "[b4,d#5,f#5]@3 ~ [d#5,f#5,a5]@3 ~@9", D: "~@2 [e5,f5,b5] ~ [e5,f5,b5] ~ [e5,f5,b5] ~ [e5,f5,b5]@3 ~@5",
  E: "~@4 [e5,f5,b5]@3 ~@9", F: "[e5,f5,b5] ~ [e5,f5,b5] ~ [e5,f5,b5] ~@11",
  G: "[d#5,f#5,b5]@2 ~@2 [d#5,f#5,b5]@2 ~@6 [c#5,e5,a5]@3 ~", // B A
  H: "~@2 [d#5,f#5,b5]@3 ~ [c#5,e5,a5]@2 [d#5,f#5,b5]@3 ~ [c#5,e5,a5]@3 ~", // B A B A
  I: "[a#4,c#5,f#5]@3 ~ [a#4,c#5,f#5]@3 ~ [g#4,b4,e5]@3 ~ [a#4,c#5,f#5]@3 ~", // F# E F#
  J: "[d#5,f#5,b5]@3 ~ [d#5,f#5,b5]@3 ~ [c#5,e5,a5]@3 ~ [d#5,f#5,b5]@3 ~", // B A B
  K: "[d#5,f#5,b5] ~ [d#5,f#5,b5]@2 ~@2 [c#5,e5,a5]@2 [d#5,f#5,b5]@2 ~@2 [c#5,e5,a5]@2 ~@2", // B A B A
  L: "[a#4,c#5,f#5]@3 ~ [a#4,c#5,f#5]@3 ~ [g#4,b4,e5]@2 ~@2 [f4,g#4,c#5]@2 ~@2", M: "~@2 b4@2 d5@2 f#5 ~",
  N: "[f4,g#4,c#5] ~ [f4,g#4,c#5] ~@3 [d#4,f#4,b4] ~", // C# B
  O: "~@2 [f4,g#4,c#5]@3 ~ [d#4,f#4,b4] ~ [f4,g#4,c#5]@2 ~@2 [d#4,f#4,b4]@2 ~@2", // C# B C# B
  P: "[c#5@2 e5@2 [c#4,e4,a4]@3 ~ e4@3 ~ [b3,d4]@3 ~@17, e5 ~@10 a4@21]/2", // A Bm
  Q: "[e5 ~ e5@2 [c#4,e4,a4]@3 ~ e4@3 ~ [b3,d4]@3 ~@17, ~@11 a4@21]/2", // A Bm
  R: "[e4,g#4,e5] ~ [e4,g#4,e5] ~ [e4,g#4,e5] ~ [e4,g#4,e5] ~ [g4,b4,g5]@3 ~ [e4,g#4,e5] ~ [e4,g#4,e5] ~", // E G E
  S: "[e4,g4,e5] ~ [e4,g4,e5] ~ [d4,f#4,d5]@3 ~@9", // Em D
  T: "[e4,g#4,e5] ~ [e4,g#4,e5] ~ [g4,b4,g5]@3 ~ [e4,g4,e5] ~ [e4,g4,e5] ~ [e4,g4,e5] ~ [e4,g4,e5] ~", // E G Em
  U: "[[e5,g5]@2 g5@2 [e4,g4,c5]@3 ~ g4@3 ~ [d4,f4]@3 ~@3 [e4,g4]@3 ~ [e4,g4]@2 [d4,f4]@3 ~@5, ~@11 c5@21]/2", // Em C Dm Em Dm
  V: "g5@2 g5@2 [g4,c5]@3 ~ g4@3 ~ f4@2 g5@2, ~@11 c5@5, ~@12 g5 ~@3", // C5
  W: "[~@4 g4@3 ~ g5 ~ g5@2 ~@4 g4@2 ~ c5 ~@4 g4@3 ~ g5 ~ g5@2, c5@7 c5@5 c5@7 ~ c5@7 c5@5, ~@16 g5 ~ g5@3 ~@11]/2",
  X: "~@4 g4@2 ~ c5 ~@4 g4@3 ~, c5@7 ~ c5@7 ~, ~@4 g5 ~ g5@3 ~@7", Y: "g5 ~ g5@2 c5@3 ~ g4@3 c5@3 ~@2",
  Z: "[c#5,e5]@2 ~@2 [c#5,e5]@11 ~", AA: "~@2 [c#5,e5]@2 ~@2 [c#5,e5]@2 [b4,d5]@5 ~@3",
  AB: "[e4,f#4,b4] [f#4,a4,d5] [a4,c5,f#5] [c5,e5,a#5] ~ [e4,f#4,b4] [f#4,a4,d5] [a4,c5,f#5]", // Esus2 D F#dim C7 Esus2 D F#dim
  AC: "[c5,e5,a#5] [c5,e5,a5] ~@2 [c5,f#5,g#5] [a4,c5,e5] ~@2", // C7 Am G#7 Am
  AD: "[e4,f#4,b4] [f#4,a4,d5] [a4,c5,f#5] [c5,e5,a#5] ~ [e4,f#4,b4] [g4,a4,d5] [a4,c5,f#5]", // Esus2 D F#dim C7 Esus2 Gsus2 F#dim
  AE: "[c5,e5,a#5] [c5,e5,a5] [c5,f#5,g#5] [a4,d5,e5] [a4,b4] [e4,g#4] ~@2", // C7 Am G#7 Asus4 Asus2 E
  AF: "[[e4,f#4,a4] [f#4,a4,c5] [a4,c5,e5] [c5,e5,g#5] ~ [c5,d#5,g5]@15 [f#4,g#4,b4] [g#4,b4,d5] [b4,d5,f#5] [d5,f#5,a#5]]/3", // F#m7 F#dim Am Caug Cm G#m7 G#dim Bm …
  AG: "[~ [f#4,g#4,b4] [g#4,b4,d5] [b4,d5,f#5] [d5,f#5,a#5] ~ [d5,f5,a5]@15 ~@3]/3", AH: "d5@3 ~ a5@2 g#5@6 d5@3 ~",
  AI: "[[c#5,e5,g#5]@2 ~@2 [c#4,e4]@3 ~@5 [b3,d4]@3 ~@3 [c#4,e4]@3 ~ [c#4,e4]@2 [b3,d4]@2 [c#4,d4,e4,f4] [d#4,e4,f#4,g4] [f4,f#4,g#4,a4] [g4,g#4,a#4,b4] [a4,a#4,c5,c#5] [b4,c5,d5,d#5], ~ a5@15]/2", // C#m Bm C#m Bm
  AJ: "[c#5,e5,a5]@2 [c#5,e5,a5]@2 [b4,d5,g5]@2 ~@4 [c#5,e5,a5]@3 ~ [c#5,e5,a5]@2", AK: "[b4,d5,g5]@3 ~@13",
  AL: "~@5 [d4,f#4,a4]@2 ~ [d4,f#4,a4]@3 [c4,e4,g4]@4 ~", // D C
})).s("gm_trumpet").gain(0.41).pan(0.6)

// chords · trombone
const trombone = note(`<
  ~@8 A B C D E F ~@7 G@2 H I ~ J H I ~ K L M K N ~@4 O P@2 Q R S ~ T U V ~@8 W Q R S ~ T U V ~ X Y ~@2 Z AA AB AA AB AA
  ~@4 AB AA AB AA AC AD AC AE AF AG AH@2 ~@9 AI AJ AK AJ AL AM AN AO AP AQ AR@2 AS AT AS AT AS AT AS AT AS AT AS AT AS
  AU AV AW AX AW AX AY AZ BA ~ BB BC@2 BB BD BE BD BE BF BG BH ~@4
>`.pickRestart({
  A: "[d#4,f#4]@3 ~@5 [c#4,e4]@3 ~@5", B: "[d#4,f#4]@3 ~@4 [c#4,e4]@3 ~ [c#4,e4]@3 ~ [c#4,e4]",
  C: "[d#4,f#4]@3 ~ [f#4,a4]@3 ~@9", D: "d3@2 g#4 ~ g#4 ~ g#4 ~ g#4@3 ~ b2@3 ~", E: "d3@3 ~ g#4@3 ~ b2@3 ~ c3@3 ~",
  F: "g#4 ~ g#4 ~ g#4 ~@7 e2@3 ~", G: "[~@16 b2@3 ~ f#3@3 ~ f3@3 ~ b2@3 ~, ~@7 b3@9]/2",
  H: "[f3,f4]@3 ~ f#3@3 ~ b2@3 ~ f#3@3 ~", I: "f3 ~@7", J: "b2@3 ~ f#3@3 ~ f3@3 ~ b2@3 ~, b3",
  K: "a#2@2 d4 c#4 d3@2 a#2@2, ~ g2 ~@2", L: "c#4 d4 d3@2 a#2@2 d4 c#4, g2 ~@2 g2",
  M: "d3@2 a#2@2 c#4 d4 d3@2, ~@2 g2 ~", N: "d#4 e4 ~@6", O: "~@6 g3 ~", P: "[d#4 c4 d4 ~ d#4 c4 d4 c4@5 d#4 ~@3]/2",
  Q: "[b2,b4]@2 ~@2 [b2,b4]@2 ~@6 [f#2,a4]@3 ~", R: "~@2 [b2,b4]@3 ~ [f#2,a4]@2 [b2,b4]@3 ~ [f#2,a4]@3 ~",
  S: "[c3,f#4]@3 ~ [c3,f#4]@3 ~ [g2,e4]@3 ~ [c2,f#4]@3 ~", T: "[b2,b4]@3 ~ [b2,b4]@3 ~ [f#2,a4]@3 ~ [b2,b4]@3 ~",
  U: "[f#2,b4] ~ [b2,b4]@2 ~@2 [f#2,a4]@2 [b2,b4]@2 ~@2 [f#2,a4]@2 ~@2", // B5 B F#m B F#m
  V: "[c3,f#4]@3 ~ [c3,f#4]@3 ~ [g2,e4]@2 ~@2 [a#1,c#4]@2 ~@2", W: "~@4 b3@4 [f#3,d4]@4 [d3,f#4]@3 ~",
  X: "[d4,f4] ~ [d4,f4] ~@3 [c4,d#4] ~", Y: "~@2 [d4,f4]@3 ~ [c4,d#4] ~ [d4,f4]@2 ~@2 [c4,d#4]@2 ~@2",
  Z: "[c#4,e4]@3 ~@9 [e2,e3]@3 ~", AA: "~@2 [c#4,e4]@3 ~ [c#4,e4]@2 [b3,d4]@3 ~@5", AB: "[c#4,e4]@3 ~@9 e3@3 ~",
  AC: "[a#3,c4] ~@3 [c#4,d#4] ~ [a#3,c4] ~", AD: "~@2 [g#3,a#3] ~ [c3,d3] ~ [e1,e2] ~",
  AE: "~@2 [c#4,d#4] ~ [a#3,c4] ~@3", AF: "[e4,g4]@3 ~@9 [g2,g3]@3 ~", AG: "~@6 c4 ~", AH: "[f#4@2 g4@29 ~]/2",
  AI: "~@12 d#2@3 ~", AJ: "[d#3,d#4]@2 ~@2 [d#3,d#4]@2 [c#3,c#4]@4 ~ [d#3,d#4] [d#2,a#2,a#3]@3 ~",
  AK: "~@4 [c#3,c#4]@2 ~@2 [f#3,f#4]@3 ~ d#2@3 ~", AL: "~@4 [c#3,c#4]@3 ~ [g#2,g#3]@3 ~ d#2@3 ~",
  AM: "[d#3,d#4]@2 ~@2 [d#3,d#4]@2 [c#3,c#4]@4 ~ [d#3,d#4] ~ [a#2,a#3]@2 ~, ~@12 d#2@3 ~", // D# C# D# A#
  AN: "~@2 [c#3,c#4] ~ [d#3,d#4] ~ [d#2,f#3,f#4]@2", AO: "~@4 [c#3,c#4]@7 ~ [c#2,a#2,a#3]@3 ~",
  AP: "~@4 [f#2,f#3]@3 ~ [c3,c4]@2 ~@2 c#2@3 ~, ~@5 [c#3,c#4]@3", // F# C C#
  AQ: "[f#2,f#3]@3 ~ [b2,b3]@2 [c#3,c#4]@5 ~ [c#2,a#2,a#3]@3 ~", // F# B C# F#
// … 266 more lines

More by Bernstein Leonard