Strudelify

girls dead monster - my song

Girls Dead Monster

KeyG majorTempo72 bpm
0:00/0:00
// girls dead monster - my song — Girls Dead Monster
// 72 bpm, 4/4, key G 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 (4/4 at bar 1, 3/4 at bar 17, 4/4 at bar 17) are rendered on a constant 4/4 grid of one bar per cycle
// note: ch 1 "Piccolo" named as a pipe, played on piccolo (its glockenspiel patch is not one); ch 2 "Flute" named as a pipe, played on flute (its xylophone patch is not one); ch 3 "Bb Clarinet" named as a reed, played on clarinet (its marimba patch is not one)
// note: duplicate parts dropped: ch 11 "Bb Trumpet" trumpet (copy of ch 4 "Bb Clarinet" clarinet); ch 13 "F Mellophone" french horn (copy of ch 5 "Alto Saxophone" alto sax); ch 15 "Baritone Horn" french horn (copy of ch 7 "Tenor Saxophone" tenor sax)
// note: Transcription provider: pdmx. https://musescore.com/score/75826; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 45 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(72/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 · piccolo
const piccolo = note(`<
  A B C D@2 E F G H I J K L M N O P Q R S T U V W X Y Z AA AB AC ~@7 AD AE AF AG AH AI@3
>`.pickRestart({
  A: "~@4 e6@4 e6@2 e6 d6 e6@4", B: "e6@2 e6 b5 e6@4 e6@2 e6 c6 e6@4", C: "e6@4 e6@4 e6@2 e6 c6 e6@4",
  D: "[e6@2 d6@2 e6@16 d6@2 c6@2 [d6,e6]@2 c6!2 [g5,e6]@4, ~@10 e6@2 ~ e6 ~@2]/2", // Dsus2 C
  E: "[d6,e6] [b5,c6] d6 c6 [d6,e6] e6 [g5,e6]@2, ~ e6 ~@2", // Dsus2 Cmaj7 Dsus2 C
  F: "d6@2 c6@2 d6@2 c6@2 [d6,e6]@2 b5!2 [f6,g6]@2 [d6,g6]@2, e6@2 e6@2 ~ e6 ~@2", // Dsus2 Fsus2 G5
  G: "e6 f6 [f6,g6]@2 ~ f6 g6@2, g6 ~ g6 ~", H: "g6@4 f6@4 f6@2 c6!2 d6@2 d6@2, ~@2 g6@3 a6 b5@2",
  I: "[b5,e6]@2 [g5,f6]@2 f6@4 f6@2 c6 a5 [b5,d6]@2 d6!2, ~@2 g6@3 a6 ~@2", // E5 G7 Bm
  J: "[d6,e6]@2 [b5,f6]@2 f6@4 f6@2 c6!2 d6@2 c6@2, ~@2 g6@3 a6 b5@2", // Dsus2 Bdim
  K: "d6@2 c6@2 [b5,e6]@4 c6@2 e6 a6@2 a6 [d6,e6]@2, g5@2 ~@2 a5@3 ~", // E5 Dsus2
  L: "e6@2 [a5,f6]@2 f6@4 c6@2 f6!2 [d6,g6]@4, ~@2 g6@3 a6 ~@2", M: "[b5,e6]@2 d6!2 [c6,e6]@4 e6@2 b5@2 f6@2 f5@2",
  N: "g6@2 g5@2 e6@4 c6@2 e6!2 [d6,f6]@4, c6@2 g6@3 a6 ~@2", O: "d6@2 [a5,e6] [a5,d6] [c6,e6]@4 [d6,f6]@4 e6@2 e6@2",
  P: "g6@2 g6@2 g6@2 b5!2 ~@2 g6@2 a6@2 b6@2", Q: "g6@4 g6@2 g5@2 g6@2 g6@2 [g6,c7]@2 g5!2, b6@4 ~@3 b6",
  R: "f6@4 f6@2 f5@2 f6@2 f5@2 f6@2 f5!2, b6@3 ~", S: "e6@4 e6@2 c7 b6 e6@4 e6@2 e5 b5, d7@3 b5 g6@3 ~",
  T: "f#6@4 f#6@2 c7 b6 [f#6,g6]@2 [d6,g6]@2 [f#6,a6]@2 [a5,g6]@2, d7@3 b5 ~@4", // Gmaj7 G5 F#m A7
  U: "g6@2 ~@2 e6@4 e6@4 ~ g6 c7 b6, e6@2 ~@4 e6 e5, ~ b6@5 ~@2",
  V: "f#6@2 d6@2 d6@2 f#6@3 d6 [a5,g6]@2 [f#6,a6]@2 d6!2, b6@4 ~@3 g6", W: "[g6,a6]@2 g6@2 g6@4 g6@4 g6@2 g5 b5",
  X: "f5@2 a5@2 f6@2 f5!2 f6@2 [a5,g6]@2 [f6,a6]@2 f5!2, ~@7 b6", // A7 F
  Y: "g6@2 g5@2 g6@4 g6@2 [g5,g6]@2 [g6,c7]@2 g5!2, b6@4 ~@3 b6", Z: "f6@2 f5@2 f6@4 f6@2 f5@2 f6@2 f5!2, b6@7 ~",
  AA: "e6@4 e6@2 c7 b6 e6@2 g5@2 e6@2 e5 b5, d7@3 b5 g6@3 ~",
  AB: "f#6@4 f#6@2 [d6,c7] [d6,b6] [f#6,g6]@2 [d6,g6]@2 [f#6,a6]@2 a5!2, d7@3 ~@4 g6", AC: "a6 b6@5 ~@2, e6 ~",
  AD: "~@5 g6 a6 b6", AE: "f#6@2 a5 f#6@2 [a5,a6] [d6,g6] [d6,a6], b6 ~", AF: "g6@4 g6@2 g6!2 g6@4 g6@2 g5@2",
  AG: "f6@2 g5 c6@2 [c6,a6] [f6,g6] [c6,a6]", AH: "~@4 d6@2 g5!2 g6@4 d6@2 g5!2, g6 ~",
  AI: "[f6@2 f5@2 f5@2 f6@4 [f5,a6]@2 ~ [f6,g6]@2 [a5,a6]@2 ~ [b5,g6] g6@18 ~@11]/3", // F Fsus2 A Em
})).s("gm_piccolo").gain(0.45)

// chords · flute
const flute = note(`<
  A B C D@2 E F G@2 H I J K L M@2 N O P Q R S T U V W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AM AN@3
>`.pickRestart({
  A: "~@4 e6@4 e6@2 e6 d6 e6@4", B: "e6@2 e6 b5 e6@4 e6@2 e6 c6 e6@4", C: "e6@4 e6@4 e6@2 e6 c6 e6@4",
  D: "[e6@2 d6@2 e6@16 d5@2 c5@2 [d5,e6]@2 c6!2 [g4,e6]@4, ~@10 e6@2 ~ e5 ~@2]/2", // Dsus2 C
  E: "[d5,e6] [c5,b5] d5 c5 d5 e5 [g4,e6]@2, ~ e6!2 ~", // Dsus2 Cmaj7 C
  F: "d5@2 c5@2 d5@2 c5@2 [d5,e6]@2 b5!2 [f5,g6]@2 [g5,d6]@2, e6@2 e6@2 ~ e5 ~@2", // Dsus2 Fsus2 G5
  G: "[e5@2 f5@2 [f5,g6]@4 ~@2 f5@2 g6@4 g6@4 f6@4 f6@2 c6!2 d5@2 d5@2, g6@2 ~@2 g6@2 g5@3 ~ g5@3 a5 b5@2]/2", // Fsus2
  H: "[e5,b5]@2 [f5,g5]@2 f6@4 f6@2 [a5,c6] a5 [d5,b5]@2 d6!2, ~@2 g5@3 ~@2 d5", // E5 Fsus2 Am G
  I: "[e5,d6]@2 [f5,b5]@2 f6@4 f6@2 c6!2 d5@2 c5@2, ~@2 g5@3 a5 b5@2", // E7 Fdim
  J: "d5@2 c5@2 [b4,e6]@4 c6@2 e6 a6@2 a6 [d5,e6]@2, g5@2 ~@2 a4@3 ~", // E5 Dsus2
  K: "[e5,e6]@2 [f5,a5]@2 f6@4 c6@2 [a5,f6]!2 [d5,g6]@4, ~@2 g5@3 ~@3", // E F Dm G5
  L: "[e5,b5]@2 d6!2 [c5,e6]@4 e6@2 b5@2 f6@2 f5@2, ~ d5 ~@6", // E5 C
  M: "[g6@2 g5@2 e6@4 c6@2 e6!2 f6@4 d6@2 [e5,a5] [d5,a5] [c5,e6]@4 [d5,f6]@4 e6@2 e6@2, c5@2 g5@3 a5 d5@3 ~@5 e5@2]/2", // A5 D5 C Dm
  N: "g6@2 g6@2 g6@2 b5!2 ~@2 g5@2 a5@2 b5@2, g5 ~", O: "g6@4 g6@2 g5@2 ~@2 g5@2 [c6,g6]@2 g5!2, b5@4 g6@2 ~ b5",
  P: "f6@4 f6@2 f5@2 f6@2 f5@2 f6@2 f5!2, b5@3 ~", Q: "e6@4 e6@2 [b5,c6] b5 e6@4 e6@2 e5 b5, d6@3 ~ g5@3 ~",
  R: "f#6@4 f#6@2 [b5,c6] b5 [g5,f#6]@2 [g5,d6]@2 [a5,f#6]@2 [g5,a5]@2, d6@3 ~@5", // Cmaj7 Gmaj7 G5 D Gsus2
  S: "g5@2 ~@2 e6@4 e6@4 ~ g5 c6 b5, e6@2 ~@4 e6 ~, ~ b5@5 ~ e5",
  T: "f#6@2 d6@2 d6@2 f#6@3 d6 [g5,a5]@2 [a5,f#6]@2 d6!2, b5@4 ~@3 g5", // Gsus2 D
  U: "a5@2 ~@2 g6@4 g6@4 g6@2 g5 b5, g6 ~@3, ~ g5@6 ~", V: "f5@2 a5@2 f6@2 f5!2 f6@2 [g5,a5]@2 [a5,f6]@2 f5!2, ~@7 b5",
  W: "g6@2 g5@2 g6@4 g6@2 g5@2 [c6,g6]@2 g5!2, b5@4 ~@3 b5", X: "f6@2 f5@2 f6@4 f6@2 f5@2 f6@2 f5!2, b5@7 ~",
  Y: "e6@4 e6@2 [b5,c6] b5 [g5,e6]@2 g5@2 e6@2 e5 b5, d6@3 ~@5", // Cmaj7 C
  Z: "f#6@4 f#6@2 [c6,d6] [b5,d6] [g5,f#6]@2 [g5,d6]@2 [a5,f#6]@2 a5!2, d6@3 ~@4 g5", AA: "a5 b5@5 ~@2, e6 ~",
  AB: "a5@3 g5 f5@2 e5@2", AC: "d5@3 e5@3 g5@2 e5@3 a5@3 g5@2", AD: "e5@2 d5@2 c5@3 d5", AE: "g5@3 f5 e5@3 g5",
  AF: "c6@3 b5 a5@3 f5", AG: "g5@2 f5@2 e5@2 e5 f5", AH: "g5@4 f5@2 e5@2 d5@2 f5 e5 d5@2 f5@2", AI: "c5@4 ~ g5 a5 b5",
  AJ: "f#6@2 a5 f#6@2 a5 [g5,d6] [a5,d6], b5 ~", AK: "g6@4 g6@2 g6!2 g6@4 g6@2 g5@2, g5@7 ~",
  AL: "f6@2 g5 c6@2 [a5,c6] [g5,f6] [a5,c6]", AM: "g6@4 d6@2 g5!2 g6@4 d6@2 g5!2, g5@3 ~@5",
  AN: "[f6@2 f5@2 f5@2 f6@4 [f5,a5]@2 ~ [g5,f6]@2 a5@2 ~ b5 g6@18 ~@11, ~@18 g5@19 ~@11]/3", // F G7
})).s("gm_flute").gain(0.45)

// other · clarinet · "Bb Clarinet"
const clarinet = note("<~@4 A B C D@2 E F G H I J@2 K L M N O P Q R S L T N O U ~@7 S V W X W Y@3>".pickRestart({
  A: "~@2 d4 c4 d4 e4 g3@2", B: "d4 c4 d4 c4 d4 e4 g3@2", C: "d4 c4 d4 c4 d4 e4 f4 g4",
  D: "[e4 f4 f4@2 ~ f4 g4@3 ~ g4@3 a4 d4!2]/2", E: "e4 f4 g4@3 a4 d4!2", F: "e4 f4 g4@3 a4 d4 c4",
  G: "d4 c4 b3@2 a3@3 d4", H: "e4 f4 g4@3 a4 d4@2", I: "e4 d4 c4@2 ~@4",
  J: "[c4@4 g4@6 a4@2 d4@6 e4 d4 c4@4 d4@4 e4@4]/2", K: "g4@4 ~ [g4,g5] [a4,a5] [b4,b5]", L: "[b4,b5]@4 ~ g4 c5 b4",
  M: "b4@3 ~", N: "d5@6 c5 b4 g4@6 ~@2", O: "d5@6 c5 b4 g4@2 g4@2 a4@2 g4@2", P: "g4@2 b4@10 ~ g4 c5 b4",
  Q: "b4@4 ~ g4 a4 g4", R: "a4 g4@7", S: "~@5 [g4,g5] [a4,a5] [b4,b5]", T: "b4@7 ~", U: "a4 b4@5 ~@2",
  V: "b4@4 ~ a4 g4 a4", W: "g4", X: "~@5 a4 g4 a4", Y: "[~@10 a4@2 ~ g4@2 a4@2 ~ g4@19 ~@11]/3",
})).s("gm_clarinet").gain(0.45)

// other · clarinet · "Bb Clarinet"
const clarinet_2 = note(`<
  A B C D@2 E F G H I J K L M N O P Q R S T U V W X Y Z AA AB AC ~@8 AD AE AF AG AH@3
>`.pickRestart({
  A: "~@4 c5@4 c5@2 d5!2 d5@4", B: "d5@2 b4!2 b4@4 b4@2 c5!2 c5@4", C: "b4@4 c5@4 c5@2 d5!2 d5@4",
  D: "[d5@2 d5@2 b4@16 c5@4 c5@2 c5!2 b4@4]/2", E: "b4 g4 c5@2 c5@2 b4@2", F: "b4@4 c5@4 c5@2 b4!2 d5@2 d5@2",
  G: "d5!4", H: "d5@4 c5@4 c5@2 f4!2 b4@4", I: "b4@2 d4@2 c5@4 c5@2 a4!2 g4@2 d4!2", J: "b4@2 d4@2 c5@4 c5@2 f4!2 g4@4",
  K: "g4@4 c5@4 c5@2 a4 d5@2 c5 d5@2", L: "c5@2 a4@2 c5@4 c5@2 f4!2 b4@4", M: "b4@2 d4!2 c5@4 b4@2 e4@2 c5@2 f4@2",
  N: "b4@2 g4@2 c5@4 a4@2 e4!2 d5@4", O: "d5@2 a4!2 c5@4 a4@4 b4@2 e4@2", P: "b4@2 b4@2 b4@2 b4!2 ~@8",
  Q: "d5@4 d5@2 g4@2 d5@4 d5@2 g4!2", R: "c5@4 c5@2 f4@2 c5@2 f4@2 c5@2 f4!2", S: "b4@4 b4@2 b4@2 b4@4 b4@2 e4 b4",
  T: "d5@2 d5!5 a4", U: "b4@2 b4@2 b4@2 b4 e4", V: "d5@2 d4@2 d4@2 d5@3 d5 a4@2 d5@2 d5!2",
  W: "d5@4 d5@4 d5@4 d5@2 g4 b4", X: "f4@2 a4@2 c5@2 f4!2 c5@2 a4@2 c5@2 f4!2", Y: "d5@2 g4@2 d5@4 d5@2 g4@2 d5@2 g4!2",
  Z: "c5@2 f4@2 c5@4 c5@2 f4@2 c5@2 f4!2", AA: "b4@4 b4@2 b4@2 b4@2 g4@2 b4@2 e4 g4",
  AB: "d5@4 d5@2 d5!2 d5@2 d5@2 d5@2 a4!2", AC: "b4 ~", AD: "d5@2 a4 d5@2 d4 d5!2", AE: "d5@4 d5@2 d5!2 d5@4 d5@2 g4@2",
  AF: "c5@2 c4 c5@2 c4 c5!2", AG: "d5@4 d5@2 g4!2 d5@4 d5@2 g4!2",
  AH: "[c5@2 f4@2 f4@2 c5@4 f4@2 ~ c5@2 a4@2 ~ b4 g4@18 ~@11]/3",
})).s("gm_clarinet").gain(0.3)

// other · alto sax · "Alto Saxophone"
const alto_sax = note(`<
  A B C D@2 E F G H I J K L M N O P Q R S T U V W X Y Z AA AB AC ~@8 AD AE AF AG AH@3
>`.pickRestart({
  A: "~@4 a4@4 a4@2 a4!2 a4@4", B: "a4@2 a4!2 a4@4 a4@2 a4!2 a4@4", C: "a4@4 a4@4 a4@2 a4!2 a4@4",
  D: "[a4@2 g4@2 g4@16 g4@4 g4@2 g4!2 g4@4]/2", E: "g4!2 g4@2 g4@2 g4@2", F: "g4@4 g4@4 g4@2 g4!2 g4@2 g4@2", G: "g4!4",
  H: "g4@4 a4@4 a4@2 f4!2 g4@4", I: "g4@2 d4@2 a4@4 a4@2 a4!2 g4@2 d4!2", J: "g4@2 d4@2 a4@4 a4@2 f4!2 e4@4",
  K: "e4@4 a4@4 a4@2 e4 a4@2 a4 a4@2", L: "a4@2 e4@2 a4@4 a4@2 f4!2 g4@4", M: "g4@2 d4!2 a4@4 g4@2 e4@2 a4@2 f4@2",
  N: "g4@2 g4@2 a4@4 a4@2 e4!2 a4@4", O: "a4@2 a4!2 g4@4 a4@4 g4@2 e4@2", P: "g4@2 g4@2 g4@2 g4!2 ~@8",
  Q: "g4@4 g4@2 g4@2 g4@4 g4@2 g4!2", R: "a4@4 a4@2 f4@2 a4@2 f4@2 a4@2 f4!2", S: "g4@4 g4@2 g4@2 g4@4 g4@2 e4 g4",
  T: "a4@2 a4!6", U: "g4@2 g4@2 g4@2 g4 e4", V: "a4@2 d4@2 d4@2 a4@3 a4 a4@2 a4@2 a4!2", W: "b4@4 b4@4 b4@4 b4@2 g4 b4",
  X: "f4@2 a4@2 a4@2 f4!2 a4@2 a4@2 a4@2 f4!2", Y: "b4@2 g4@2 b4@4 b4@2 g4@2 b4@2 g4!2",
  Z: "a4@2 f4@2 a4@4 a4@2 f4@2 a4@2 f4!2", AA: "g4@4 g4@2 g4@2 g4@2 g4@2 g4@2 e4 g4",
  AB: "a4@4 a4@2 a4!2 a4@2 a4@2 a4@2 a4!2", AC: "g4 ~", AD: "a4@2 a4 a4@2 d4 a4!2", AE: "b4@4 b4@2 b4!2 b4@4 b4@2 g4@2",
  AF: "a4@2 c4 a4@2 c4 a4!2", AG: "g4@4 g4@2 g4!2 g4@4 g4@2 g4!2",
  AH: "[a4@2 f4@2 f4@2 a4@4 f4@2 ~ a4@2 a4@2 ~ d4 g4@18 ~@11]/3",
})).s("gm_alto_sax").gain(0.3)

// other · tenor sax · "Tenor Saxophone"
const tenor_sax = note(`<
  A B C D@2 E F G H I J K L M N O P Q R S T U V W X Y Z AA AB AC AD AE AD AF AG AH AI AJ AK AL AM AN AO@3
>`.pickRestart({
  A: "~@4 e3@4 e3@2 a3!2 e3@4", B: "e3@2 a3!2 e3@4 e3@2 a3!2 e3@4", C: "e3@4 e3@4 e3@2 a3!2 e3@4",
  D: "[e3@2 a3@2 e3@16 a3@4 a3@2 a3!2 e3@4]/2", E: "e3!2 a3@2 a3@2 e3@2", F: "e3@4 a3@4 a3@2 g3 d4 g3@2 g3@2",
  G: "g3 d4!2 g3", H: "g3@4 f3@4 f3@2 f3!2 g3@4", I: "g3@2 g3@2 f3@4 f3@2 f3!2 g3@2 g3!2",
  J: "g3@2 g3@2 f3@4 f3@2 f3!2 e3@4", K: "e3@4 e3@4 e3@2 e3 e3@2 e3 a3@2", L: "a3@2 e3@2 f3@4 f3@2 f3!2 g3@4",
  M: "g3@2 g3!2 e3@4 e3@2 e3@2 f3@2 f3@2", N: "g3@2 g3@2 e3@4 e3@2 e3!2 a3@4", O: "a3@2 a3!2 e3@4 a3@4 e3@2 e3@2",
  P: "b3@2 b3@2 b3@2 b3!2 ~@8", Q: "g3@4 g3@2 g3@2 g3@4 g3@2 g3!2", R: "f3@4 f3@2 f3@2 f3@2 f3@2 f3@2 f3!2",
  S: "e3@4 e3@2 b3@2 e3@4 e3@2 e3 b3", T: "a3@2 a3 d4 a3 d4 a3!2", U: "e3@2 e3@2 e3@2 e3!2",
  V: "a3@2 a3@2 a3@2 a3@3 d4 a3@2 a3@2 d4!2", W: "d4@4 d4@4 d4@4 d4@2 g3 d4",
  X: "f3@2 f3@2 f3@2 f3!2 f3@2 c4@2 f3@2 f3!2", Y: "g3@2 g3@2 g3@4 g3@2 g3@2 g3@2 g3!2",
  Z: "f3@2 f3@2 f3@4 f3@2 f3@2 f3@2 f3!2", AA: "e3@4 e3@2 b3@2 e3@2 e3@2 e3@2 e3 b3",
  AB: "a3@4 a3@2 d4!2 a3@2 d4@2 a3@2 a3!2", AC: "e3", AD: "f3", AE: "b3 c4", AF: "c4 e3", AG: "a3@7 f3", AH: "b3@3 e3",
  AI: "b3 a3", AJ: "f3 ~", AK: "a3@2 a3!5 d4", AL: "d4@4 d4@2 b3!2 d4@4 d4@2 g3@2", AM: "c4@2 c4 c4@2 c4 f3!2",
  AN: "g3@4 g3@2 g3!2 g3@4 g3@2 g3!2", AO: "[f3@2 f3@2 f3@2 c4@4 f3@2 ~ c4@2 f3@2 ~ d3 g3@18 ~@11]/3",
})).s("gm_tenor_sax").gain(0.3)

// other · trumpet · "Bb Trumpet"
const trumpet = note("<~@8 A B C D E F G@2 H I J K L M N O P I Q K L R ~@7 P S T U T V@3>".pickRestart({
  A: "~@2 g4@3 a4 d4!2", B: "e4 f4 g4@3 a4 d4!2", C: "e4 f4 g4@3 a4 d4 c4", D: "d4 c4 b3@2 a3@3 d4",
  E: "e4 f4 g4@3 a4 d4@2", F: "e4 d4 c4@2 ~@4", G: "[c4@4 g4@6 a4@2 d4@6 e4 d4 c4@4 d4@4 e4@4]/2", H: "g4@4 ~ g4 a4 b4",
  I: "b4@4 ~ g4 c5 b4", J: "b4@3 ~", K: "d5@6 c5 b4 g4@6 ~@2", L: "d5@6 c5 b4 g4@2 g4@2 a4@2 g4@2",
  M: "g4@2 b4@10 ~ g4 c5 b4", N: "b4@4 ~ g4 a4 g4", O: "a4 g4@7", P: "~@5 g4 a4 b4", Q: "b4@7 ~", R: "a4 b4@5 ~@2",
  S: "b4@4 ~ a4 g4 a4", T: "g4", U: "~@5 a4 g4 a4", V: "[~@10 a4@2 ~ g4@2 a4@2 ~ g4@19 ~@11]/3",
})).s("gm_trumpet").gain(0.4)

// other · trombone
const trombone = note(`<
  A B C D@2 E F G H I J K L M N O P Q R S T U V W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP@3
>`.pickRestart({
  A: "~@4 e3@4 e3@2 e3!2 e3@4", B: "e3@2 e3!2 e3@4 e3@2 e3!2 e3@4", C: "e3@4 e3@4 e3@2 e3!2 e3@4",
  D: "[e3@2 d3@2 e3@16 e3@4 e3@2 e3!2 e3@4]/2", E: "e3!2 e3@2 e3@2 e3@2", F: "e3@4 e3@4 e3@2 d3 e3 b3@2 b3@2",
  G: "b3 c4!2 b3", H: "b3@4 f3@4 f3@2 c3!2 d3@4", I: "d3@2 b2@2 f3@4 f3@2 f3!2 d3@2 b2!2",
  J: "d3@2 b2@2 f3@4 f3@2 c3!2 b2@4", K: "b2@4 e3@4 e3@2 a2 e3@2 e3 e3@2", L: "e3@2 a2@2 f3@4 f3@2 c3!2 d3@4",
  M: "d3@2 b2!2 e3@4 e3@2 b2@2 f3@2 a2@2", N: "d3@2 d3@2 e3@4 e3@2 a2!2 d3@4", O: "d3@2 d3!2 e3@4 d3@4 e3@2 b2@2",
  P: "d3@2 d3@2 d3@2 d3!2 ~@8", Q: "d3@4 d3@2 d3@2 d3@4 d3@2 d3!2", R: "f3@4 f3@2 c3@2 f3@2 c3@2 f3@2 c3!2",
  S: "e3@4 e3@2 e3@2 e3@4 e3@2 b2 e3", T: "d3@2 d3!6", U: "e3@2 e3@2 e3@2 e3 b2",
  V: "d3@2 b2@2 b2@2 d3@3 d3 d3@2 d3@2 d3!2", W: "g3@4 g3@4 g3@4 g3@2 d3 g3",
  X: "c3@2 f3@2 f3@2 c3!2 f3@2 f3@2 f3@2 c3!2", Y: "g3@2 d3@2 g3@4 g3@2 d3@2 g3@2 d3!2",
  Z: "f3@2 c3@2 f3@4 f3@2 c3@2 f3@2 c3!2", AA: "e3@4 e3@2 e3@2 e3@2 e3@2 e3@2 b2 e3",
  AB: "d3@4 d3@2 d3!2 d3@2 d3@2 d3@2 d3!2", AC: "e3@6 e3 f3", AD: "a3@3 g3 f3@2 e3@2",
  AE: "d3@3 e3@3 g3@2 e3@3 a3@3 g3@2", AF: "e3@2 d3@2 c3@3 d3", AG: "g3@3 f3 e3@3 g3", AH: "c4@3 b3 a3@3 f3",
  AI: "g3@2 f3@2 e3@2 e3 f3", AJ: "g3@4 f3@2 e3@2 d3@2 f3 e3 d3@2 f3@2", AK: "c3@4 g3 ~@3", AL: "d3@2 d3 d3@2 a2 d3!2",
  AM: "g3@4 g3@2 b3!2 g3@4 g3@2 d3@2", AN: "f3@2 f3 f3@2 f3!3", AO: "d3@4 d3@2 d3!2 d3@4 d3@2 d3!2",
  AP: "[f3@2 c3@2 c3@2 f3@4 c3@2 ~ f3@2 f3@2 ~ b2 g3@18 ~@11]/3",
})).s("gm_trombone").gain(0.3)

// bass · tuba · "F Tuba"
const bass = note("<A@6 B@2 C@3 D@3 E@3 F G H I J K L M F K N O G K P K Q R S T U K V W F X Y@2>".pickRestart({
  A: "[~ a2@4 e2@4 c3@4 e2@4 a2@2 e2@2 a2!2 e2]/6", B: "[e2 g2@4 d3!2 g2]/2", C: "[g2 f2@2 g2@2 f2@2 g2@2 f2@2 e2]/3",
  D: "[e2 c3@4 f2@2 g2@2 e2@2 f2]/3", E: "[g2 e2@2 a2@2 e2@2 c3@2 g2 ~@2]/3", F: "g2", G: "e2", H: "e2 g2", I: "d2 f2",
  J: "e2!4", K: "f2", L: "d3 g2", M: "f2 a2", N: "e2 b2", O: "f2 d3", P: "b2 c3", Q: "c3 e2", R: "a2@7 f2",
  S: "b2@3 e2", T: "b2 a2", U: "f2@3 ~", V: "d3@2 b2 g2", W: "c3 a2", X: "f2@3 c3@2 a2@3", Y: "[~@2 d2 g2@18 ~@11]/2",
})).s("gm_tuba").gain(0.3)

stack(piccolo, flute, clarinet, clarinet_2, alto_sax, tenor_sax, trumpet, trombone, bass)