Strudelify

Clouds Across the Moon

Rah Band

KeyG majorTempo99 bpm
0:00/0:00
// Clouds Across the Moon — Rah Band
// 99 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 116 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(99/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.

// chords · piano · "Ac Piano"
const piano = note(`<
  ~@8 A B C D E F G H E I J K E F G H E I J K L M N O P@2 Q R S T U V W X Y Z E F G H E I J K L M N O P@2 Q R S T U V W
  X Y Z AA AB AC AD AA AE AF AG AH AI AJ AK AL@2 AM AN AO AP AQ AR AS AT AU AV AO AP AQ AR AS AT AU AV AO AP AQ AR AS AT
  AU AV AW@2 ~@6
>`.pickRestart({
  A: "b3@3 ~@2 g4, c2, g4@5 ~, e4@5 e4@3, ~ b3", B: "~ f4, [a#1,g#3,d4,g4]",
  C: "b3@5 ~@2 c2, g3, [c2,e4]@5 e4, ~@5 b3@3", // C
  D: "f3@12 f3@3 c4@3 a#1@2 ~ a#1@2 ~, [a#1,g#3,d4]@15 [f3,g#3]@5 d4@2 ~@2", // A#7 Fm
  E: "b3@6 ~@3 c2@2 ~ c2 ~ [b3,e4,g4] ~@2 c2 [b3,e4,g4]@6, [e4,g4] ~, c2 ~@2, ~ b3 ~@2", // Em
  F: "g#3@7 ~@11 [g#3,d4,g4]@6, [d4,f4]@3 ~, a#1@3 a#1@2 a#1@3, ~@7 g#3@5 g#3@6 ~@6", // G Dm
  G: "g3@9 g3@3 ~@2 [g3,b3,e4] ~@6 c2@3, [c2,b3,e4]@4 c2@3 ~, ~@3 [g3,b3,e4]", // Em Cmaj7 Em
  H: "g#3@7 ~@11 [g#3,d4,f4]@5 ~, d4@3 ~, a#1@9 a#1@6 a#1@8 ~, ~@7 g#3@11 ~@6, ~@12 g4@7 ~@5", // Ddim
  I: "g#3 ~ [g#3,d4,f4]@2, [e2,d4,g4]@13 ~@11, ~ g#3 ~@2, ~@3 e1@5", // Ddim Em7
  J: "~@9 f2@2 ~@10 [g3,b3,d4]@3, g3@7 ~, [c4,e4] f2, a3@11 a3@4 [a3,c4,e4]@9, f2 f1@3", // G C Am
  K: "[d1,d2,f3,a3,c4]@6 [e1,e2,g3,b3,d4]@6 [f1,f2,a3,c4,e4]@6 [g1,g2,a3,c4,f4]@5 ~", // Dm7 Em7 Fmaj7 F
  L: "g3@2 g3 ~@3 g3@2, g#1, [g#2,c4,d#4]@3 [c4,d#4]@5, ~@3 g3@3 ~@2, ~@5 g#2@3", // G# Cm
  M: "f3@6 f3@3 ~@11 c4@4, d4@5 d4@3, g#2@2 g#2!2, a#3@3 [f3,a#3,f4]@5", // A#5
  N: "f3@2 f3 ~ g2@3 g2, [g2,a#3,d4]@3 [f3,a#3,d4]@5", O: "[g3,a#3,d#4]@8 ~ [g3,a#3,d#4]@15, c3",
  P: "[[g3,c4,d#4]@9 g3@6 ~@9 [f3,a#3,d4]@6 ~@3 [f3,a#3,d4]@14 ~, g#2@21 g#2@9 g#2@17 ~, ~@3 [c4,d#4]@5 ~@8, ~@5 g3@3 ~@8]/2", // Cm A# Cm
  Q: "[f3,c4,d4]@3 [f3,c4,d4]@5, g2", R: "[g2,f3,b3,d4]@9 [g3,g4]@5 ~ [g3,g4]@3 g2@2 ~ g2@3, ~@9 g2@8 ~@3 [g3,g4]@4",
  S: "[g3,b3]@6 ~@5 g3@4 g3@3 ~@3 c2@3, [c1,e4]@11 b3@7 [g3,b3]@6, c2@3 c2@4 ~, ~@6 [g3,b3]@5 e4@13", // G C G
  T: "a#1@3 a#1@2 ~@3 [f3,g#3,d4] ~@2 f3@3 ~ f3@2 ~@4 a#1@3, [g#3,d4]@8 ~@3 [g#3,d4]@7 ~@6, f3@5 f3@3 ~@10 [f3,g#3,d4]@6, ~@6 a#1@8 a#1@3 a#1@4 ~@3", // Ddim G#dim Ddim
  U: "~@8 [g3,b3,e4] ~@2 g3@3 ~ g3@2 ~ [g3,b3,e4]@6, [b3,e4]@8 ~@3 [b3,e4]@7 ~@6, [c2,g3]@5 g3@3 ~@16, ~ c1@7, ~@6 c2@8 c2@3 c2@7", // Em E5 C5
  V: "f3@3 a#1@2 ~@3 [f3,g#3,d4] ~@2 f3@7 f3@5 ~, [g#3,d4]@6 a#1@17 ~, a#1@2 ~@3 f3@2 ~@4 [g#3,d4]@12 ~", // Ddim G#dim
  W: "~@9 g3@5 ~@4 g3@2 [d1,d2]@4, [g3,b3,e4]@3 [b3,e4]@4 ~, c2@3 c2@4 g3@2 ~@3, ~@3 c1@12 [c1,c2]@5 ~@4", // D Em E5 C
  X: "e2 ~@2 [g#3,d4,f4], e1@5 e1@3, [g#3,d4,g4]@3 [g#3,d4,g4]@3 ~@2, ~@6 e2@7 e2@11", // Ddim G
  Y: "f2@6 ~@12 a3@2 ~ [e1,g3,b3,d4]@2 ~, f1@15 f1@5 ~@4, [a3,c4,e4]@9 [c4,e4]@11 ~@4, ~@3 f2@3 f2@4 ~@2, ~@9 a3@5 a3@4 ~@6", // Em7 Am C
  Z: "~@3 d2@3 ~@3 e2@3 ~@3 f2@3 ~@3 g2@2 ~, [d1,f3,a3,c4]@6 [e1,g3,b3,d4]@6 [f1,a3,c4,e4]@6 [g1,f3,a3,c4]@5 ~", // Dm7 Em7 Fmaj7 F
  AA: "c#4@6 ~@3 d2@2 ~ d2 ~ [c#4,f#4,a4] ~@2 d2 [c#4,f#4,a4]@6, [f#4,a4] ~, d2 ~@2, ~ c#4 ~@2", // F#m
  AB: "a#3@7 ~@11 [a#3,e4,a4]@6, [e4,g4]@3 ~, c2@3 c2@2 c2@3, ~@7 a#3@5 a#3@6 ~@6", // A Em
  AC: "a3@9 a3@3 ~@2 [a3,c#4,f#4] ~@6 d2@3, [d2,c#4,f#4]@4 d2@3 ~, ~@3 [a3,c#4,f#4]", // F#m Dmaj7 F#m
  AD: "a#3@7 ~@11 [a#3,e4,g4]@5 ~, e4@3 ~, c2@9 c2@6 c2@8 ~, ~@7 a#3@11 ~@6, ~@12 a4@7 ~@5", // Edim
  AE: "a#3 ~ [a#3,e4,g4]@2, [f#2,e4,a4]@13 ~@11, ~ a#3 ~@2, ~@3 f#1@5", // Edim F#m7
  AF: "~@9 g2@2 ~@10 [a3,c#4,e4]@3, a3@7 ~, [d4,f#4] g2, b3@11 b3@4 [b3,d4,f#4]@9, g2 g1@3", // A D Bm
  AG: "[e1,e2,g3,b3,d4]@6 [f#1,f#2,a3,c#4,e4]@6 [g1,g2,b3,d4,f#4]@6 [a1,a2,b3,d4,g4]@5 ~", // Em7 F#m7 Gmaj7 G
  AH: "a3@2 a3 ~@3 a3@2, a#1, [a#2,d4,f4]@3 [d4,f4]@5, ~@3 a3@3 ~@2, ~@5 a#2@3", // A# Dm
  AI: "g3@6 g3@3 ~@11 d4@4, e4@5 e4@3, a#2@2 a#2!2, c4@3 [g3,c4,g4]@5", // C5
  AJ: "g3@2 g3 ~ a2@3 a2, [a2,c4,e4]@3 [g3,c4,e4]@5", AK: "[a3,c4,f4]@8 ~ [a3,c4,f4]@15, d3",
  AL: "[[a3,d4,f4]@9 a3@6 ~@9 [g3,c4,e4]@6 ~@3 [g3,c4,e4]@14 ~, a#2@21 a#2@9 a#2@17 ~, ~@3 [d4,f4]@5 ~@8, ~@5 a3@3 ~@8]/2", // Dm C Dm
  AM: "[g3,d4,e4]@3 [g3,d4,e4]@5, a2", AN: "[a2,g3,c#4,e4]@9 [a3,a4]@5 ~ [a3,a4]@3 a2@2 ~ a2@3, ~@9 a2@8 ~@3 [a3,a4]@4",
  AO: "[a3,c#4]@6 ~@5 a3@4 a3@3 ~@3 d2@3, [d1,f#4]@11 c#4@7 [a3,c#4]@6, d2@3 d2@4 ~, ~@6 [a3,c#4]@5 f#4@13", // A D A
  AP: "c2@3 c2@2 ~@3 [g3,a#3,e4] ~@2 g3@3 ~ g3@2 ~@4 c2@3, [a#3,e4]@8 ~@3 [a#3,e4]@7 ~@6, g3@5 g3@3 ~@10 [g3,a#3,e4]@6, ~@6 c2@8 c2@3 c2@4 ~@3", // Edim A#dim Edim
  AQ: "~@8 [a3,c#4,f#4] ~@2 a3@3 ~ a3@2 ~ [a3,c#4,f#4]@6, [c#4,f#4]@8 ~@3 [c#4,f#4]@7 ~@6, [d2,a3]@5 a3@3 ~@16, ~ d1@7, ~@6 d2@8 d2@3 d2@7", // F#m F#5 D5
  AR: "g3@3 c2@2 ~@3 [g3,a#3,e4] ~@2 g3@7 g3@5 ~, [a#3,e4]@6 c2@17 ~, c2@2 ~@3 g3@2 ~@4 [a#3,e4]@12 ~", // Edim A#dim
  AS: "~@9 a3@5 ~@4 a3@2 [e1,e2]@4, [a3,c#4,f#4]@3 [c#4,f#4]@4 ~, d2@3 d2@4 a3@2 ~@3, ~@3 d1@12 [d1,d2]@5 ~@4", // E F#m F#5 D
  AT: "f#2 ~@2 [a#3,e4,g4], f#1@5 f#1@3, [a#3,e4,a4]@3 [a#3,e4,a4]@3 ~@2, ~@6 f#2@7 f#2@11", // Edim A
  AU: "g2@6 ~@12 b3@2 ~ [f#1,a3,c#4,e4]@2 ~, g1@15 g1@5 ~@4, [b3,d4,f#4]@9 [d4,f#4]@11 ~@4, ~@3 g2@3 g2@4 ~@2, ~@9 b3@5 b3@4 ~@6", // F#m7 Bm D
  AV: "~@3 e2@3 ~@3 f#2@3 ~@3 g2@3 ~@3 a2@2 ~, [e1,g3,b3,d4]@6 [f#1,a3,c#4,e4]@6 [g1,b3,d4,f#4]@6 [a1,g3,b3,d4]@5 ~", // Em7 F#m7 Gmaj7 G
  AW: "[~@30 a3@17 ~, [d2,f#3]@47 ~, a3@5 ~@3, c#4@27 c#4@20 ~, ~@24 e3@23 ~]/2", // D
})).s("gm_piano").gain(0.4).pan(0.2)

// bass · slap bass 2 · "El Bass"
const bass = note(`<
  ~@11 A B C D E B F G H B C D E B F G H I J K L I J M N O P Q R S T U V B C D E B F G H I J K L I J M N O P Q R S T U V
  W X Y Z W AA AB AC AD AE AF AG AD AE AH AI AJ AK AL AM AN AO AP AQ AJ AK AL AM AN AO AP AQ AJ AK AL AM AN AO AP AQ
  AR@2 ~@6
>`.pickRestart({
  A: "~@7 a#1@2 a#2@2 ~", B: "c2 ~@2 c2 ~@2 c2@2 g1 a1@2 c2 ~@11 g1", C: "a#1@2 ~@4 a#1@2 f1 g1@2 a#1 ~@8 g1 a#1@2 g1",
  D: "c2@2 ~@4 c2@2 g1 a1@2 c2 ~@8 g1 a1@2 g1", E: "a#1@2 ~@4 a#1@2 f1 g1 ~ a#1 ~@5 f1 g1 ~ a#1 ~@2 g1",
  F: "e2 ~@2 e2@2 ~ e2@2 ~ b1@2 e1@3 ~@4 d1@2 ~ e1@2 ~", G: "f1@2 ~ f1 ~@2 f1@2 ~ c2 ~ f2 ~@5 c2 f2 ~ c2 e2@2 ~",
  H: "d2@6 e2@5 ~ f2@6 g2@3 g1@2 ~", I: "g#1@2 d#2 g#2 ~@2 g#2 ~ f2 d#2 ~ g#1@2 ~@10 g#2",
  J: "g#1@2 ~ f2 ~@2 g#2@2 f2 d#2 ~ g#1@2 ~@5 a#1@3 g#1@2 ~", K: "g1@2 ~ g2 ~@2 g2@2 d2 f2 ~ g2 ~@8 g1 a#1@2 g1",
  L: "c2@5 ~ d2@5 g1 d#2@5 ~ f2@2 ~ g2@2 ~", M: "g1@2 ~ g2 ~@2 g2@2 d2 e2 ~ g2 ~@8 d2 e2@2 g2",
  N: "g1@2 g2 ~@2 g2 g1@2 g2 ~@2 g2 g1@2 g2 g1@2 ~ g1@3 [a1,b1] ~ g1", // Asus2
  O: "c2@2 ~ c2@2 ~ c2@2 g1 a1@2 c2@3 ~@6 g1 c2@2 b1", P: "a#1@2 ~ a#1@2 ~ a#1@2 f1 g#1 ~ a#1@2 ~@7 g1 a1@2 g1",
  Q: "c2@2 ~ c2 ~@2 c2 ~ g1 a1@2 c2@2 ~@7 g1 c2 ~ b1", R: "a#1@2 ~ a#1@2 ~ a#1@2 f1 g1 ~ a#1@2 ~@7 g1 a#1@2 g1",
  S: "c2@2 ~ c2@2 ~ c2@2 g1 a1 ~ c2@2 ~@7 c2 d2 ~ d#2", T: "e2 ~@2 e2 ~@2 e2@2 ~ b1 ~ e1@3 ~@3 e1 d1@2 ~ e1@2 ~",
  U: "f1@2 ~ f2 ~@2 f2@2 ~ c2 ~ f1@2 ~@4 c2 f2@2 c2 e2@2 ~, ~@4 d2 ~@7", V: "d2@5 ~ e2@5 ~ f2@5 ~ g2@2 g1 a1 ~ g1",
  W: "d2 ~@2 d2 ~@2 d2@2 a1 b1@2 d2 ~@11 a1", X: "c2@2 ~@4 c2@2 g1 a1@2 c2 ~@8 a1 c2@2 a1",
  Y: "d2@2 ~@4 d2@2 a1 b1@2 d2 ~@8 a1 b1@2 a1", Z: "c2@2 ~@4 c2@2 g1 a1 ~ c2 ~@5 g1 a1 ~ c2 ~@2 a1",
  AA: "f#2 ~@2 f#2@2 ~ f#2@2 ~ c#2@2 f#1@3 ~@4 e1@2 ~ f#1@2 ~",
  AB: "g1@2 ~ g1 ~@2 g1@2 ~ d2 ~ g2 ~@5 d2 g2 ~ d2 f#2@2 ~", AC: "e2@6 f#2@5 ~ g2@6 a2@3 a1@2 ~",
  AD: "a#1@2 f2 a#2 ~@2 a#2 ~ g2 f2 ~ a#1@2 ~@10 a#2", AE: "a#1@2 ~ g2 ~@2 a#2@2 g2 f2 ~ a#1@2 ~@5 c2@3 a#1@2 ~",
  AF: "a1@2 ~ a2 ~@2 a2@2 e2 g2 ~ a2 ~@8 a1 c2@2 a1", AG: "d2@5 ~ e2@5 a1 f2@5 ~ g2@2 ~ a2@2 ~",
  AH: "a1@2 ~ a2 ~@2 a2@2 e2 f#2 ~ a2 ~@8 e2 f#2@2 a2",
  AI: "a1@2 a2 ~@2 a2 a1@2 a2 ~@2 a2 a1@2 a2 a1@2 ~ a1@3 [b1,c#2] ~ a1", // Bsus2
  AJ: "d2@2 ~ d2@2 ~ d2@2 a1 b1@2 d2@3 ~@6 a1 d2@2 c#2", AK: "c2@2 ~ c2@2 ~ c2@2 g1 a#1 ~ c2@2 ~@7 a1 b1@2 a1",
  AL: "d2@2 ~ d2 ~@2 d2 ~ a1 b1@2 d2@2 ~@7 a1 d2 ~ c#2", AM: "c2@2 ~ c2@2 ~ c2@2 g1 a1 ~ c2@2 ~@7 a1 c2@2 a1",
  AN: "d2@2 ~ d2@2 ~ d2@2 a1 b1 ~ d2@2 ~@7 d2 e2 ~ f2",
  AO: "f#2 ~@2 f#2 ~@2 f#2@2 ~ c#2 ~ f#1@3 ~@3 f#1 e1@2 ~ f#1@2 ~",
  AP: "g1@2 ~ g2 ~@2 g2@2 ~ d2 ~ g1@2 ~@4 d2 g2@2 d2 f#2@2 ~, ~@4 e2 ~@7", AQ: "e2@5 ~ f#2@5 ~ g2@5 ~ a2@2 a1 b1 ~ a1",
  AR: "d1/2",
})).s("gm_slap_bass_2").gain(0.71)

// chords · epiano2 · "Rhodes"
const epiano2 = note(`<
  ~@8 A B A C A B A C A D@2 E A B A C A D@2 E F G H I J K L M N O P Q@2 R S T A B A C A D@2 E F G H I J K L M N O P Q@2
  R S T U V U W U X@2 Y Z AA AB AC AD AE AF AG AH AI AJ AK@2 AL AM AN AH AI AJ AK@2 AL AM AN AH AI AJ AK@2 AL AM AN AO@3
  ~@5
>`.pickRestart({
  A: "[e3,g3,b3,d4]", B: "c4@5 c4, [f3,g#3,d4]", C: "c4@18 [c4,e4]@5 ~, g#3@23 ~, [f3,d4]@5 ~",
  D: "[c4@5 c4 [f2,g3,a3,c4,e4]@6, [f3,g#3,d4]]/2", // Fmaj7 Ddim
  E: "[d2,f3,a3,c4]@6 [e2,g3,b3,d4]@6 [f2,a3,c4,e4]@6 [g2,a3,c4,f4]@5 ~", F: "g#2@5 g#2@3, [c4,d#4,g4,a#4]",
  G: "d4@3 [f3,a#3,d4]@5, [g#2,f4,a#4]", H: "~@5 d4@3, [g2,a#3,f4], d4@5 ~@3, ~@3 c4@5",
  I: "~@3 a#3, [c3,d#4,g4], a#3@3 ~, ~ d4", J: "~@3 g#3@5, [c4,d#4,g4]", K: "[g#3,a#3,d4,f4]", L: "[g3,c4,d4,f4]",
  M: "f4@15 g4@8 ~, [g3,b3,d4]@23 ~, ~@15 f4 ~@8", N: "[b3,e4,g4]@3 [b3,e4,g4]@5, c3",
  O: "[g#3,d4,g4]@3 [g#3,d4,f4]@5, a#2", P: "[b3,d4,e4]@3 [g3,b3,d4,e4]@5, c3",
  Q: "[[f3,g#3,c4,d4]@3 ~@5 [b3,e4,g4]@3 [b3,e4,g4]@5, a#2, ~@3 [f3,g#3,c4,d4]@13, ~ c3]/2", // Dm7b5 Em Dm7b5
  R: "~ [c4,e4], [e3,g#3,d4,f4]", S: "[f2,a3,c4,e4]",
  T: "[d3,c4,f4,a4]@6 [e3,d4,g4,b4]@6 [f3,e4,a4,c5]@5 ~ [g3,c4,f4,a4]@5 ~", U: "[f#3,a3,c#4,e4]",
  V: "d4@5 d4, [g3,a#3,e4]", W: "d4@18 [d4,f#4]@5 ~, a#3@23 ~, [g3,e4]@5 ~",
  X: "[d4@5 d4 [g2,a3,b3,d4,f#4]@6, [g3,a#3,e4]]/2", // Gmaj7 Edim
  Y: "[e2,g3,b3,d4]@6 [f#2,a3,c#4,e4]@6 [g2,b3,d4,f#4]@6 [a2,b3,d4,g4]@5 ~", Z: "a#2@5 a#2@3, [d4,f4,a4,c5]",
  AA: "e4@3 [g3,c4,e4]@5, [a#2,g4,c5]", AB: "~@5 e4@3, [a2,c4,g4], e4@5 ~@3, ~@3 d4@5",
  AC: "~@3 c4, [d3,f4,a4], c4@3 ~, ~ e4", AD: "~@3 a#3@5, [d4,f4,a4]", AE: "[a#3,c4,e4,g4]", AF: "[a3,d4,e4,g4]",
  AG: "g4@15 a4@8 ~, [a3,c#4,e4]@23 ~, ~@15 g4 ~@8", AH: "[c#4,f#4,a4]@3 [c#4,f#4,a4]@5, d3",
  AI: "[a#3,e4,a4]@3 [a#3,e4,g4]@5, c3", AJ: "[c#4,e4,f#4]@3 [a3,c#4,e4,f#4]@5, d3",
  AK: "[[g3,a#3,d4,e4]@3 ~@5 [c#4,f#4,a4]@3 [c#4,f#4,a4]@5, c3, ~@3 [g3,a#3,d4,e4]@13, ~ d3]/2", // Em7b5 F#m Em7b5
  AL: "~ [d4,f#4], [f#3,a#3,e4,g4]", AM: "[g2,b3,d4,f#4]",
  AN: "[e3,d4,g4,b4]@6 [f#3,e4,a4,c#5]@6 [g3,f#4,b4,d5]@5 ~ [a3,d4,g4,b4]@5 ~", // Em7 F#m7 Gmaj7 G
  AO: "[~@14 a3@11 ~@11, [d2,e4,f#4]@2 ~, a3@7 ~@11, c#4@21 c#4@29 ~@22, ~@7 f#3@18 ~@11]/3", // D
})).s("gm_epiano2").gain(0.32).pan(0.8)

// other · string ensemble 1 · "Strings"
const string_ensemble_1 = note(`<
  ~@9 A B@2 ~@8 C D C D C D E ~@9 F G H I@2 J K@2 ~@8 L M N O L P Q R F G H I@2 J K@2 S ~@7 T U V W T X Y Z AA F AB AC@2
  AD AE@2 AA F AB AC@2 AD AE@2 AA F AB AC@2 AD AE@2 AF@2 ~@6
>`.pickRestart({
  A: "~@3 g5", B: "[g6@30 e6@5 ~ d6@6 c6@5 ~]/2", C: "g3", D: "g#3", E: "a3", F: "g6", G: "f6", H: "e6",
  I: "[d6@2 e6 d6@3 c6@2]/2", J: "b5 c6", K: "[a6@30 g6@5 ~ e6@6 c6@5 ~]/2", L: "[g#3,g4,c5,d#5]", M: "[g#3,f4,a#4,d5]",
  N: "[g3,a#4,d5,f5]", O: "[g4,c5,d#5]@17 ~ [f4,a#4,d5]@6, c4@23 ~", P: "[g#3,a#4,d5,f5]", Q: "g4@19 ~ g4@4, [g3,g5]",
  R: "[g5,g6]@11 ~, g4 ~@5", S: "[a5,a6]@7 ~", T: "[a#3,a4,d5,f5]", U: "[a#3,g4,c5,e5]", V: "[a3,c5,e5,g5]",
  W: "[a4,d5,f5]@17 ~ [g4,c5,e5]@6, d4@23 ~", X: "[a#3,c5,e5,g5]", Y: "a4@19 ~ a4@4, [a3,a5]",
  Z: "[a5,a6]@11 ~, a4 ~@5", AA: "a6", AB: "f#6", AC: "[e6@2 f#6 e6@3 d6@2]/2", AD: "c#6 d6",
  AE: "[b6@30 a6@5 ~ f#6@6 d6@5 ~]/2", AF: "[a4,a5]/2",
})).s("gm_string_ensemble_1").gain(0.29)

// other · brass section · "Brass"
const brass_section = note(`<
  ~@31 A@2 ~@2 B C D E@2 ~ F G H ~@11 A@2 ~@2 B C D E@2 ~ F G H I ~@10 J@2 ~@2 K L M N@2 ~ O P Q L M N@2 ~ O P Q L M N@2
  ~ O P Q R@2 ~@6
>`.pickRestart({
  A: "[~@11 a#4 d#5 ~@2 d#5 ~@2 d5@2 a#4 g4 ~ c5@11 ~@14]/2", B: "~@2 [g4,g5]@5 ~ [g4,g5]@5 ~ [g4,g5]@5 ~ [g4,g5]@4",
  C: "e4@14 ~ e4@2 ~ e4@2 ~ e4@2 ~", D: "e4@2 ~ f4 ~@2 d4 ~@2 c4 ~ e4 d4@9 ~@3",
  E: "[b3@14 ~ b3@2 ~ b3@2 ~ c4 ~ g#3@6 g#3 ~@5 g#3@11 ~@2]/2", F: "~@3 c4 ~@2 c4@2 d4 ~@2 e4@7 c4 ~@2 b3@3",
  G: "~ a3@5 ~@2", H: "~@2 [a4,a5]@5 ~ [g4,g5]@5 ~ [e4,e5]@4 ~@2 [c4,c5]@4", I: "[a3,a4]@7 ~",
  J: "[~@11 c5 f5 ~@2 f5 ~@2 e5@2 c5 a4 ~ d5@11 ~@14]/2", K: "~@2 [a4,a5]@5 ~ [a4,a5]@5 ~ [a4,a5]@5 ~ [a4,a5]@4",
  L: "f#4@14 ~ f#4@2 ~ f#4@2 ~ f#4@2 ~", M: "f#4@2 ~ g4 ~@2 e4 ~@2 d4 ~ f#4 e4@9 ~@3",
  N: "[c#4@14 ~ c#4@2 ~ c#4@2 ~ d4 ~ a#3@6 a#3 ~@5 a#3@11 ~@2]/2", O: "~@3 d4 ~@2 d4@2 e4 ~@2 f#4@7 d4 ~@2 c#4@3",
  P: "~ b3@5 ~@2", Q: "~@2 [b4,b5]@5 ~ [a4,a5]@5 ~ [f#4,f#5]@4 ~@2 [d4,d5]@4", R: "[~ [d3,a3,c#4,f#4]@47]/2",
})).s("gm_brass_section").gain(0.36)

// chords · electric guitar muted · "FunkyGtr"
const electric_guitar_muted = note(`<
  A B A B A B A B A B A B C B A B A B D ~ A B A B A B D ~ E F G H E I J K A B A B A B D ~ A B A B A B D ~ E F G H E I J
  K A B A B A B D ~ L M L M L M N ~ O P Q R O S T U L M L M L M N ~ L M L M L M N ~ L M L M L M V@8 ~@2
>`.pickRestart({
  A: "[g3,b3,d4] ~@2 [g3,b3,d4] ~@2 [g3,b3,d4]@2 g3 [g3,a3,c4] ~ [g3,b3,d4] ~@9 [g3,b3] ~ [a3,c4]", // G Am7 G Am
  B: "[g#3,c4,d4] ~@2 [g#3,c4,d4] ~@2 [g#3,c4,d4]@2 g#3 [g#3,c4,e4] ~ [g#3,c4,d4] ~@9 [g3,b3] ~ [a3,c4]", // Dm7b5 G#aug Dm7b5 G Am
  C: "[g3,b3,d4] ~@2 [g3,b3,d4] ~@2 [g3,b3,d4]@2 g3 [g3,a3,c4]@2 [g3,b3,d4] ~@9 [g3,b3] ~ [a3,c4]", // G Am7 G Am
  D: "[a3,c4,e4] ~@2 [a3,c4,e4] ~@2 [a3,c4,e4]@2 a3 [a3,b3,d4] ~ [a3,c4,e4] ~@9 [g3,b3] ~ [a3,c4]", // Am Bm7 Am G Am
  E: "[g#3,c4,d#4] ~@2 [g#3,c4,d#4] ~@2 [g#3,c4,d#4] ~ g#3 [g#3,a#3,d4] ~ [g#3,c4,d#4] ~@9 [g#3,a#3] ~ [g#3,c4]", // G# A#7 G# G#sus2 G#
  F: "[g#3,a#3,d4] ~@2 [g#3,c4,d4] ~@2 [g#3,c4,d4] ~ g#3 [g#3,c4,d#4] ~ [g#3,c4,d4] ~@9 [g3,a#3] ~ [g#3,c4]", // A#7 Dm7b5 G# Dm7b5 Gm G#
  G: "[g3,a#3,d4] ~@2 [g3,a#3,d4] ~@2 [g3,a#3,d4] ~ g3 [g3,a#3,c4] ~ [g3,a#3,d4] ~@9 [g3,c4] ~ [g3,d4]", // Gm C7 Gm C5 G5
  H: "[g3,c4,d#4] ~@2 [g3,c4,d#4] ~@2 [g3,c4,d#4] ~ g3 [g3,c4,d#4] ~ [g3,c4,d#4] ~@9 [g3,c4] ~ [a#3,d4]", // Cm C5 A#
  I: "[g#3,a#3,d4] ~@2 [g#3,c4,d4] ~@2 [g#3,c4,d4] ~ g#3 [g#3,c4,d#4] ~ [g#3,c4,d4] ~@9 [f3,a#3] ~ [f3,c4]", // A#7 Dm7b5 G# Dm7b5 A#5 F5
  J: "[g3,c4,d4] ~@2 [g3,c4,d4] ~@2 [g3,c4,d4] ~ g3 [g3,c4] ~ [g3,c4,d4] ~@9 [g3,c4] ~ [g3,d4]", // Gsus4 C5 Gsus4 C5 G5
  K: "[g3,b3,d4] ~@2 [g3,b3,d4] ~@2 [g3,b3,d4] ~ g3 [g3,b3,d4] ~ [g3,b3,d4] ~@9 [g3,b3] ~ [a3,c4]", // G Am
  L: "[a3,c#4,e4] ~@2 [a3,c#4,e4] ~@2 [a3,c#4,e4]@2 a3 [a3,b3,d4] ~ [a3,c#4,e4] ~@9 [a3,c#4] ~ [b3,d4]", // A Bm7 A Bm
  M: "[a#3,d4,e4] ~@2 [a#3,d4,e4] ~@2 [a#3,d4,e4]@2 a#3 [a#3,d4,f#4] ~ [a#3,d4,e4] ~@9 [a3,c#4] ~ [b3,d4]", // Em7b5 A#aug Em7b5 A Bm
  N: "[b3,d4,f#4] ~@2 [b3,d4,f#4] ~@2 [b3,d4,f#4]@2 b3 [b3,c#4,e4] ~ [b3,d4,f#4] ~@9 [a3,c#4] ~ [b3,d4]", // Bm C#m7 Bm A Bm
  O: "[a#3,d4,f4] ~@2 [a#3,d4,f4] ~@2 [a#3,d4,f4] ~ a#3 [a#3,c4,e4] ~ [a#3,d4,f4] ~@9 [a#3,c4] ~ [a#3,d4]", // A# C7 A# A#sus2 A#
  P: "[a#3,c4,e4] ~@2 [a#3,d4,e4] ~@2 [a#3,d4,e4] ~ a#3 [a#3,d4,f4] ~ [a#3,d4,e4] ~@9 [a3,c4] ~ [a#3,d4]", // C7 Em7b5 A# Em7b5 Am A#
  Q: "[a3,c4,e4] ~@2 [a3,c4,e4] ~@2 [a3,c4,e4] ~ a3 [a3,c4,d4] ~ [a3,c4,e4] ~@9 [a3,d4] ~ [a3,e4]", // Am D7 Am D5 A5
  R: "[a3,d4,f4] ~@2 [a3,d4,f4] ~@2 [a3,d4,f4] ~ a3 [a3,d4,f4] ~ [a3,d4,f4] ~@9 [a3,d4] ~ [c4,e4]", // Dm D5 C
  S: "[a#3,c4,e4] ~@2 [a#3,d4,e4] ~@2 [a#3,d4,e4] ~ a#3 [a#3,d4,f4] ~ [a#3,d4,e4] ~@9 [g3,c4] ~ [g3,d4]", // C7 Em7b5 A# Em7b5 C5 G5
  T: "[a3,d4,e4] ~@2 [a3,d4,e4] ~@2 [a3,d4,e4] ~ a3 [a3,d4] ~ [a3,d4,e4] ~@9 [a3,d4] ~ [a3,e4]", // Asus4 D5 Asus4 D5 A5
  U: "[a3,c#4,e4] ~@2 [a3,c#4,e4] ~@2 [a3,c#4,e4] ~ a3 [a3,c#4,e4] ~ [a3,c#4,e4] ~@9 [a3,c#4] ~ [b3,d4]", // A Bm
  V: "[[b3,d4,f#4] ~@2 [b3,d4,f#4] ~@2 [b3,d4,f#4]@2 b3 [b3,c#4,e4] ~ [b3,d4,f#4] ~@9 [a3,c#4] ~ [b3,d4]@169]/8", // Bm C#m7 Bm A Bm
})).s("gm_electric_guitar_muted").gain(0.32)

// other · glockenspiel · "Bell"
const glockenspiel = note(`<
  ~@18 A B C ~@5 A B ~@3 D ~@3 E F G H I J K L M ~@6 A B ~@3 D ~@3 E F G H I J K L M ~@6 N O ~@3 P ~@3 Q R S T U V W X Y
  R S T U V W X Y R S T U V W X Y Z ~@7
>`.pickRestart({
  A: "~@15 g5 ~@2 a5 ~@2 g5 ~@2", B: "c6@2 ~@4 d6 ~@5 [c6,e6] ~@5 [d6,f6] ~@5", C: "[e6,g6] ~@23",
  D: "~@11 a#5 d#6 ~@2 d#6 ~@2 d6 ~ a#5 g5 ~ c6", E: "g5 ~ g6 ~@3 g5 ~ g6 ~@3 g5 ~ g6 ~@3 g5 ~ g6 ~@3",
  F: "g6 ~@14 g6 ~@2 g6 ~@4 g6", G: "~@3 g#6 ~ f6 ~@3 e6 ~ g6 ~@2 f6 ~@9", H: "e6 ~@13 g5 e6 ~@2 e6 ~@2 e6 ~ e6",
  I: "~@2 f6 ~@2 d6 ~@2 c6 ~@2 f6 ~@2 d6 ~@9", J: "~@6 e6 ~@5 d6 ~@5 c6 ~@5", K: "g6 ~@5 a6 ~@5 c7 ~@5 e6 ~@5",
  L: "d6 ~@5 c6 ~@5 a5 ~@5 c6 ~@5", M: "a6 ~@5 g6 ~@5 e6 ~@5 c6 ~@5", N: "~@15 a5 ~@2 b5 ~@2 a5 ~@2",
  O: "d6@2 ~@4 e6 ~@5 [d6,f#6] ~@5 [e6,g6] ~@5", P: "~@11 c6 f6 ~@2 f6 ~@2 e6 ~ c6 a5 ~ d6",
  Q: "a5 ~ a6 ~@3 a5 ~ a6 ~@3 a5 ~ a6 ~@3 a5 ~ a6 ~@3", R: "a6 ~@14 a6 ~@2 a6 ~@4 a6",
  S: "~@3 a#6 ~ g6 ~@3 f#6 ~ a6 ~@2 g6 ~@9", T: "f#6 ~@13 a5 f#6 ~@2 f#6 ~@2 f#6 ~ f#6",
  U: "~@2 g6 ~@2 e6 ~@2 d6 ~@2 g6 ~@2 e6 ~@9", V: "~@6 f#6 ~@5 e6 ~@5 d6 ~@5", W: "a6 ~@5 b6 ~@5 d7 ~@5 f#6 ~@5",
  X: "e6 ~@5 d6 ~@5 b5 ~@5 d6 ~@5", Y: "b6 ~@5 a6 ~@5 f#6 ~@5 d6 ~@5", Z: "~ a5 ~@22",
})).s("gm_glockenspiel").gain(0.29)

// … 69 more lines