Strudelify

monochrome no kiss

Sid

KeyA minorTempo140 bpm
0:00/0:00
// monochrome no kiss — Sid
// 140 bpm, 4/4, key A minor. 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/8 at bar 24, 4/4 at bar 25, 3/8 at bar 56, ...) 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 marimba patch is not one)
// note: Transcription provider: pdmx. https://musescore.com/score/73607; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 83 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(140/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [...]/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
const flute = note(`<
  ~@8 A B C D E F G H I J K@2 L@2 M N O P Q@2 R S T@2 N O P Q@2 R S U@2 ~@14 V@2 W X Y Z@2 AA ~ AB@2 W X Y AC@2 AD@4 ~@8
>`.pickRestart({
  A: "~@12 a4 ~ a4 ~", B: "a4 a4@3 e4!2 e4@2", C: "e4@2 e4@2 a4@6 ~@2 f4 ~ f4 ~", D: "f4 ~ e4@6 f4@2 f4@4 f4@2",
  E: "e4@4 f4@6 ~@2 d4 ~ d4 ~", F: "d4@4 d4 d4@3", G: "d4 a4@3 e4@3 e4", H: "a4@3 a4 b4 a4 b4 a4",
  I: "d4@2 g4 a4 e4@2 e4@2", J: "~@4 e4@2 b4@2 c5@2 d5 ~ d5 ~ d5 ~",
  K: "[e5@4 b4@2 b4@2 b4@4 g4@2 a4@4 ~@6 c5@2 c5 ~ c5@2 d5@2]/2",
  L: "[b4@4 g4@2 a4@2 g4@4 a4@2 a4@4 ~@2 e4@2 b4@2 c5@2 d5 ~ d5 ~ e5@2]/2", M: "b4@4 d5 ~ e5 ~ e5@8",
  N: "~@10 g5 ~ g5 ~ g5 ~", O: "g5@3 c5 c5@2 g5!2", P: "f5@3 f5!2 d#5 d5 d#5",
  Q: "[f5@3 a#5@2 d5 f5 d#5@4 d#5!2 d5 c5 d5]/2", R: "d#5@3 f5@2 d#5 f5@2", S: "g5 g#5 g5 d#5@3 c5@2",
  T: "[f5@3 g#5@2 a#5 g5 a5@3 ~@6]/2", U: "[f5@3 g#5@2 a#5 g5 a5@2 g5@4 ~@3]/2",
  V: "[b5 ~ b5 ~ b5 ~ a#5@6 d#5@2 d#5@4 a#5@2 a#5@2 g#5@6 g#5@2 g#5@2]/2", W: "f#5 f5 f#5 g#5@3 d6@2",
  X: "f5 g#5 f#5@4 f#5!2", Y: "f5 d#5 f5 f#5@3 g#5@2", Z: "[f#5 g#5@2 a#5 b5 a#5 f#5@3 d#5@2 g#5@3 b5@2]/2",
  AA: "c#6 a#5 a5@3 ~@3", AB: "[a#5 ~ a#5 ~ a#5 ~ a#5@6 d#5@2 d#5@4 a#5@2 a#5@2 g#5@6 g#5@2 g#5@2]/2",
  AC: "[f#5 g#5@2 a#5 b5 a#5 f#5@3 d#5@2 f5@3 g#5@2]/2", AD: "[a#5@2 g5@4 e5@16 g#5@16 a5@23 ~@3]/4",
})).s("gm_flute").gain(0.5)

// other · clarinet · "Bb Clarinet"
const clarinet = note(`<
  ~@8 A B C D E F G H I J K@2 L@2 M N O P Q@2 R S T@2 N O P Q@2 R S U@2 ~@14 V@2 W X Y Z@2 AA ~ V@2 W X Y AB@2 AC@4 ~@8
>`.pickRestart({
  A: "~@12 c5 ~ c5 ~", B: "c5 b4@3 a4 b4 c5@2", C: "a4@2 b4@2 c5@6 ~@2 c5 ~ c5 ~", D: "c5 ~ b4@6 c5@2 d5@4 c5@2",
  E: "b4@4 c5@6 ~@2 b4 ~ c5 ~", F: "b4@4 c5 b4@3", G: "c5 d5@3 c5@3 a4", H: "c5@3 a4 b4 c5 b4 a4",
  I: "g4@2 g4 a4 g4@2 a4@2", J: "~@4 e4@2 b4@2 c5@2 d5 ~ d5 ~ d5 ~",
  K: "[e5@4 b4@2 b4@2 b4@4 g4@2 a4@4 ~@6 c5@2 c5 ~ c5@2 d5@2]/2",
  L: "[b4@4 g4@2 a4@2 g4@4 a4@2 a4@4 ~@2 e4@2 b4@2 c5@2 d5 ~ d5 ~ e5@2]/2", M: "b4@4 d5 ~ e5 ~ e5@8",
  N: "~@10 g5 ~ g5 ~ g5 ~", O: "g5@3 c5 c5@2 g5!2", P: "f5@3 f5!2 d#5 d5 d#5",
  Q: "[f5@3 a#5@2 d5 f5 d#5@4 d#5!2 d5 c5 d5]/2", R: "d#5@3 f5@2 d#5 f5@2", S: "g5 g#5 g5 d#5@3 d#5@2",
  T: "[f5@3 g#5@2 a#5 g5 a5@3 ~@6]/2", U: "[f5@3 g#5@2 a#5 g5 a5@2 g5@4 ~@3]/2",
  V: "[g5 ~ g5 ~ g5 ~ g5@6 c5@2 c5@4 g5@2 g5@2 f5@6 f5@2 f5@2]/2", W: "d#5 d5 d#5 f5@3 a#5@2", X: "d5 f5 d#5@4 d#5!2",
  Y: "d5 c5 d5 d#5@3 f5@2", Z: "[d#5 f5@2 g5 g#5 g5 d#5@3 d#5@2 f5@3 g#5@2]/2", AA: "a#5 g5 a5@3 ~@3",
  AB: "[d#5 f5@2 g5 g#5 g5 d#5@3 d#5@2 f5@3 a5@2]/2", AC: "[a#5@2 g5@4 e5@16 g#5@16 a5@23 ~@3]/4",
})).s("gm_clarinet").gain(0.45)

// other · clarinet · "Bb Clarinet"
const clarinet_2 = note(`<
  A B C D E B C D F G H I J K L M N O N P N O Q R S T U V W X Y Z AA S T U V W X Y Z AB AC AB Z AB AC AB AC Z AB AC AB
  AD@2 AE AF AG AH AI AJ AK AL@2 AM AF AG AH AI AJ AK AN@6 AO@6
>`.pickRestart({
  A: "~@5 c5@3", B: "c5 c5@2 c5@2 b4@3", C: "b4 c5@2 c5@2 e5@3", D: "e5 d5@2 d5@2 b4@3", E: "b4 c5@2 c5@2 c5@3",
  F: "b4 c5@2 c5@2 a4@3", G: "c5 a4 c5 a5 c5 a4 c5 a5", H: "c5 a4 c5 a5 c5 f4@3", I: "a4 f4 a4 f5 a4 f4 a4 f5",
  J: "a4 f4 a4 f5 a4 g4@3", K: "b4 g4 b4 g5 b4 g4 b4 g5", L: "b4 a4 c5 a5 c5 a4 c5 a5", M: "a4@3 a4 b4 f4@2 c4",
  N: "g4 d4 g4 g5 a4 a4@2 a3", O: "e4 a4 b4 d5 a4 f4@2 d4", P: "e4 a4 c5 e5 a4 f4@2 c4", Q: "g4 d4 g4 g5 e4@4",
  R: "g4 ~", S: "g#4@2 g#5 g#4@2 g#4 g#5 g#4", T: "a#4@2 a#5 a#4@2 a#4 a#5 a#4", U: "g4@2 g5 g4@2 g4 g5 g4",
  V: "c5@2 c6 c5@2 c5 c6 c5", W: "g#3 g#4 d#5 g#5 a#3 a#4 f5 a#5", X: "g3 g4 g5 c5 d#5 g5 c6 g5",
  Y: "f3 f4 c5 f5 f4 f5 c5 f5", Z: "c5@3 c5 c5@2 c5@2", AA: "g3 g4 b4 g5 g4 g5 d5 g5", AB: "b4@3 b4 c5@2 c5@2",
  AC: "e5@3 e5 d5@2 d5@2", AD: "[f4@2 d4 g4 d4 g4 g5 e4@4 g4@4 ~]/2", AE: "~@3 g#4@2 g#5 g#4@2",
  AF: "g#4 g#5 g#4 a#4@2 a#5 a#4@2", AG: "a#4 a#5 a#4 g4@2 g5 g4@2", AH: "g4 g5 g4 c5@2 c6 c5@2",
  AI: "c5 c6 c5 g#3 g#4 d#5 g#5 a#3", AJ: "a#4 f5 a#5 g3 g4 g5 c5 d#5", AK: "g5 c6 g5 f3 f4 c5 f5 f4",
  AL: "[f5 c5 f5 c5@3 c5 c5@2 c5@2 g3 g4 b4 g5 g4]/2", AM: "g5 d5 g5 g#4@2 g#5 g#4@2",
  AN: "[f5@2 c5@2 f5@2 c5@16 c#5@16 c5@9 c5@3 c5@6 c5@5 b4@9 b4@3 c5@6 c5@6 e5@8 e5@3]/6",
  AO: "[d5@6 d5@6 b4@9 b4@3 c5@6 c5@5 g4@47 ~@14]/6",
})).s("gm_clarinet").gain(0.25)

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

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

// other · trumpet · "Bb Trumpet"
const trumpet = note(`<
  ~@17 A B@2 C@2 D E F G H@2 I J K@2 E F G H@2 I J L@2 ~@14 M@2 N O P Q@2 R ~ M@2 N O P S@2 T@4 ~@8
>`.pickRestart({
  A: "~@4 e4@2 b4@2 c5@2 d5 ~ d5 ~ d5 ~", B: "[e5@4 b4@2 b4@2 b4@4 g4@2 a4@4 ~@6 c5@2 c5 ~ c5@2 d5@2]/2",
  C: "[b4@4 g4@2 a4@2 g4@4 a4@2 a4@4 ~@2 e4@2 b4@2 c5@2 d5 ~ d5 ~ e5@2]/2", D: "b4@4 d5 ~ e5 ~ e5@8",
  E: "~@10 g4 ~ g4 ~ g4 ~", F: "g4@3 d#4 d#4@2 c5!2", G: "g#4@3 a#4!5", H: "[a#4@3 d5@2 g4 d5 g4@4 c5!2 g4!3]/2",
  I: "g#4@3 c5@2 a#4 a#4@2", J: "d5!3 c5@3 g4@2", K: "[g#4@3 c5@2 c5 g#4 a#4@3 ~@6]/2",
  L: "[g#4@3 c5@2 c5 g#4 a#4@2 b4@4 ~@3]/2", M: "[g4 ~ g4 ~ g4 ~ g4@6 d#4@2 d#4@4 c5@2 c5@2 g#4@6 a#4@2 a#4@2]/2",
  N: "a#4!3 a#4@3 d5@2", O: "g4 d5 g4@4 c5!2", P: "g4!3 g#4@3 c5@2", Q: "[a#4 a#4@2 d5!3 c5@3 g4@2 g#4@3 c5@2]/2",
  R: "c5 g#4 a#4@3 ~@3", S: "[a#4 a#4@2 d5!3 c5@3 g4@2 a4@3 c5@2]/2", T: "[c5@2 b4@4 e4@16 g#4@16 a4@23 ~@3]/4",
})).s("gm_trumpet").gain(0.3)

// other · trumpet · "Bb Trumpet"
const trumpet_2 = note(`<
  A@3 B C@5 ~@14 D ~@7 E F ~@7 G@2 H I J K L@3 G@2 H I M@2 ~@7 N@2 ~@9 O@4 P@2 Q@4
>`.pickRestart({
  A: "[~@10 a4@30 a4 c5 e5@6]/3", B: "d5 c5 d5@6 c5 b4 c5@6", C: "[b4 a4 b4@2 g4@4 ~@2 a4@24 b4@8 c5@32 ~@6]/5",
  D: "d5 c5 g4 g5 ~@4", E: "a4@12 a4 a#4 a4 g4", F: "a4@5 ~@3", G: "[a4@30 a4 c5]/2", H: "e5@6 d5 c5 d5@6 c5 b4",
  I: "c5@6 b4 a4 b4@2 g4@4 ~@2", J: "e5 c5 a4 g4", K: "a4 c5 e5 a4 g5 f5 e5 a4", L: "[a4 e5 c5 e5 f5 d5 c5 g4]/3",
  M: "[a4@11 d5 c5 g4 g5 ~]/2", N: "[~@6 a4@12 a4 a#4 a4 g4 a4@10]/2", O: "[~@6 a4@44 a4 c5 ~ e5@8 d5 ~ c5]/4",
  P: "[d5@9 c5 ~ b4 c5@9 b4 a4 ~ b4@3 g4@5]/2", Q: "[~@3 a4@47 ~@14]/4",
})).s("gm_trumpet").gain(0.3)

// other · french horn · "F Mellophone"
const french_horn = note(`<
  A B C D E B C D F G H I J K L M N O N P N O Q R S T U V W X Y Z AA S T U V W X Y Z AB AC AB Z AB AC AB Z@2 AB AC AB
  AD@2 AE AF AG AH AI AJ AK AL@2 AM AF AG AH AI AJ AK AN@6 AO@6
>`.pickRestart({
  A: "~@5 c4@3", B: "c4 c4@2 c4@2 b3@3", C: "b3 c4@2 c4@2 e4@3", D: "e4 d4@2 d4@2 b3@3", E: "b3 c4@2 c4@2 c4@3",
  F: "b3 c4@2 c4@2 a3@3", G: "c4 a3 c4 a4 c4 a3 c4 a4", H: "c4 a3 c4 a4 c4 f3@3", I: "a3 f3 a3 f4 a3 f3 a3 f4",
  J: "a3 f3 a3 f4 a3 g3@3", K: "b3 g3 b3 g4 b3 g3 b3 g4", L: "b3 a3 c4 a4 c4 a3 c4 a4", M: "a3@3 a3 b3 f4@2 c4",
  N: "g4 d4 g4!2 a4 a4@2 a3", O: "e4 a4 b4 d5 a4 f4@2 d4", P: "e4 a4 c5 e4 a4 f4@2 c4", Q: "g4 d4 g4!2 e4@4", R: "g4 ~",
  S: "g#3@2 g#4 g#3@2 g#3 g#4 g#3", T: "a#3@2 a#4 a#3@2 a#3 a#4 a#3", U: "g3@2 g4 g3@2 g3 g4 g3",
  V: "c4@2 c5 c4@2 c4 c5 c4", W: "g#3!2 d#4 g#4 a#3!2 f4 a#4", X: "g3!2 g4 c4 d#4 g4 c5 g4",
  Y: "f3!2 c4 f4 f3 f4 c4 f4", Z: "c4@3 c4 c4@2 c4@2", AA: "g3!2 b3 g4 g3 g4 d4 g4", AB: "b3@3 b3 c4@2 c4@2",
  AC: "e4@3 e4 d4@2 d4@2", AD: "[f4@2 d4 g4 d4 g4!2 e4@4 g4@4 ~]/2", AE: "~@3 g#3@2 g#4 g#3@2",
  AF: "g#3 g#4 g#3 a#3@2 a#4 a#3@2", AG: "a#3 a#4 a#3 g3@2 g4 g3@2", AH: "g3 g4 g3 c4@2 c5 c4@2",
  AI: "c4 c5 c4 g#3!2 d#4 g#4 a#3", AJ: "a#3 f4 a#4 g3!2 g4 c4 d#4", AK: "g4 c5 g4 f3!2 c4 f4 f3",
  AL: "[f4 c4 f4 c4@3 c4 c4@2 c4@2 g3!2 b3 g4 g3]/2", AM: "g4 d4 g4 g#3@2 g#4 g#3@2",
  AN: "[f4@2 c4@2 f4@2 c4@16 c#4@16 c4@9 c4@3 c4@6 c4@5 b3@9 b3@3 c4@6 c4@6 e4@8 e4@3]/6",
  AO: "[d4@6 d4@6 b3@9 b3@3 c4@6 c4@5 c4@47 ~@14]/6",
})).s("gm_french_horn").gain(0.25)

// other · trombone
const trombone = note(`<
  A B@7 C D E F G H I J K L M N K L O P Q R S T U V W X Y Q R S T U V W X@13 Z@2 AA AB AC AD AE AF AG AH@2 AI AB AC AD
  AE AF AG AJ@6 AK@6
>`.pickRestart({
  A: "~@5 a3@3", B: "a3 a3@2 a3@2 a3@3", C: "a3 a3@2 a3@2 a2@3", D: "c3 a2 c3 a3 c3 a2 c3 a3", E: "c3 a2 c3 a3 c3 f2@3",
  F: "a2 f2 a2 f3 a2 f2 a2 f3", G: "a2 f2 a2 f3 a2 g2@3", H: "b2 g2 b2 g3 b2 g2 b2 g3", I: "b2 a2 c3 a3 c3 a2 c3 a3",
  J: "a3@3 a3 b3 c3@2 c3", K: "d3!2 g3 g4 a3 e3@2 a2", L: "e3 a3 b3 g3 a3 c3@2 d3", M: "c3 d3 g3 g4 a3 e3@2 a2",
  N: "e3 a3 c4 a3!2 c3@2 c3", O: "c3 d3 g3!2 b3@4", P: "d3 ~", Q: "g#2@2 g#3 g#2@2 g#2 d#3 g#2",
  R: "a#2@2 f3 a#2@2 a#2 f3 a#2", S: "g2@2 g3 g2@2 g2 d3 g2", T: "c3@2 c4 c3@2 c3 g3 c3",
  U: "g#2 g#3 c4 g#3 a#2 a#3 f3 a#3", V: "g2 g3!2 c4 d#3 g3 c4 g3", W: "f2 f3 c4 f3!2 c4!2 f3", X: "a3@3 a3 a3@2 a3@2",
  Y: "g2 g3 b3 d3 g3 d4!2 g3", Z: "[c3@2 d3 c3 d3 g3!2 b3@4 d3@4 ~]/2", AA: "~@3 g#2@2 g#3 g#2@2",
  AB: "g#2 d#3 g#2 a#2@2 f3 a#2@2", AC: "a#2 f3 a#2 g2@2 g3 g2@2", AD: "g2 d3 g2 c3@2 c4 c3@2",
  AE: "c3 g3 c3 g#2 g#3 c4 g#3 a#2", AF: "a#3 f3 a#3 g2 g3!2 c4 d#3", AG: "g3 c4 g3 f2 f3 c4 f3!2",
  AH: "[c4!2 f3 a3@3 a3 a3@2 a3@2 g2 g3 b3 d3 g3]/2", AI: "d4!2 g3 g#2@2 g#3 g#2@2",
  AJ: "[c4@2 c4@2 f3@2 e3@16 f3@16 a3@9 a3@3 a3@6 a3@5 a3@9 a3@3 a3@6 a3@6 a3@8 a3@3]/6",
  AK: "[a3@6 a3@6 a3@9 a3@3 a3@6 a3@5 e3@47 ~@14]/6",
})).s("gm_trombone").gain(0.25)

// other · french horn · "Baritone Horn"
const french_horn_2 = note(`<
  A B C D E B C D F G H I J K L M N O N P N O Q R S T U V W X Y Z AA S T U V W X Y Z@2 AB@2 Z@2 AB@2 Z@3 AB@2 AC@2 AD AE
  AF AG AH AI AJ AK@2 AL AE AF AG AH AI AJ AM@6 AN@6
>`.pickRestart({
  A: "~@5 e3@3", B: "e3 e3@2 e3@2 e3@3", C: "e3 e3@2 e3@2 f3@3", D: "f3 f3@2 f3@2 f3@3", E: "f3 f3@2 f3@2 e3@3",
  F: "f3 f3@2 f3@2 a2@3", G: "c3 a2 c3 a3 c3 a2 c3 a3", H: "c3 a2 c3 a3 c3 f2@3", I: "a2 f2 a2 f3 a2 f2 a2 f3",
  J: "a2 f2 a2 f3 a2 g2@3", K: "b2 g2 b2 g3 b2 g2 b2 g3", L: "b2 a2 c3 a3 c3 a2 c3 a3", M: "a2@3 a2 b2 f2@2 c3",
  N: "g2 d3 g3 d3 a2 a2@2 a2", O: "e3 a2 b2 d3 a2 f2@2 d3", P: "e3 a2 c3 e2 a2 f2@2 c3", Q: "g2 d3 g2 d3 g#2@4",
  R: "g2 ~", S: "g#2@2 d#3 g#2@2 g#2 d#3 g#2", T: "a#2@2 f3 a#2@2 a#2 f3 a#2", U: "g2@2 d3 g2@2 g2 d3 g2",
  V: "c3@2 g3 c3@2 c3 g3 c3", W: "g#2 g#3 c3 g#2 a#2 a#3 d3 a#2", X: "g2 g3 g2 c3 d#3 g2 c3 g2",
  Y: "f2 f3 c3 f2!2 c3!2 f2", Z: "e3@3 e3 e3@2 e3@2", AA: "g2 g3 b3 d3 g2 d3!2 g2", AB: "f3@3 f3 f3@2 f3@2",
  AC: "[f2@2 d3 g2 d3 g2 d3 g#2@4 g2@4 ~]/2", AD: "~@3 g#2@2 d#3 g#2@2", AE: "g#2 d#3 g#2 a#2@2 f3 a#2@2",
  AF: "a#2 f3 a#2 g2@2 d3 g2@2", AG: "g2 d3 g2 c3@2 g3 c3@2", AH: "c3 g3 c3 g#2 g#3 c3 g#2 a#2",
  AI: "a#3 d3 a#2 g2 g3 g2 c3 d#3", AJ: "g2 c3 g2 f2 f3 c3 f2!2", AK: "[c3!2 f2 e3@3 e3 e3@2 e3@2 g2 g3 b3 d3 g2]/2",
  AL: "d3!2 g2 g#2@2 d#3 g#2@2", AM: "[c3@2 c3@2 f2@2 c3@16 f3@16 e3@9 e3@3 e3@6 e3@5 e3@9 e3@3 e3@6 e3@6 f3@8 f3@3]/6",
  AN: "[f3@6 f3@6 f3@9 f3@3 f3@6 f3@5 g2@47 ~@14]/6",
})).s("gm_french_horn").gain(0.25)

// bass · tuba · "F Tuba"
const bass = note(`<
  A@4 B@8 C@3 D E F G H E I J K L M N O P Q R S T L M N O P Q R U@2 V W U@2 V W X U@2 V W Y@2 Z AA AB AC AD@2 AE AF@2 AG
  AA AB AC AD@2 AE AH@6 AI@2 AJ@4
>`.pickRestart({
  A: "[~@5 a2@16 e2@4 d2@4 c2@3]/4", B: "[~ g2@3 c2 a2@16 a1@16 a1@16 f1@11]/8", C: "[~@5 g1@16 a2@3]/3",
  D: "a1@3 a1 b1 f1@2 c2", E: "g2 d2 g2 d2 a1 a2@2 a1", F: "e2 a2 b2 d2 a2 f2@2 d3", G: "g2 d2 g2 d2 a2 a2@2 a1",
  H: "e2 a2 c3 e2 a2 f1@2 c2", I: "e2 a2 b2 d2 a2 f2@2 d2", J: "g2 d2 g2 d2 e2@4", K: "g2 ~",
  L: "g#1@2 d#2 g#1@2 g#1 d#2 g#1", M: "a#1@2 f2 a#1@2 a#1 f2 a#1", N: "g1@2 d2 g1@2 g1 d2 g1",
  O: "c2@2 g2 c2@2 c2 g2 c2", P: "g#1 a#1", Q: "g1@3 c2 d#2 g2 c3 g2", R: "f2!2 c3 f2!2 c3!2 f2", S: "g#2",
  T: "g1 g2 b2 d2 g2 d2!2 g2", U: "a2/2", V: "e2 d2", W: "c2@4 g2@3 c2", X: "a2",
// … 78 more lines