Strudelify

Merry Go Round of Life - Clarinet Choir

Joiani

KeyD minorTempo148 bpm
0:00/0:00
// Merry Go Round of Life - Clarinet Choir — Joiani
// 148 bpm, 3/4, key D 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 (3/4 at bar 1, 3/8 at bar 137, 6/8 at bar 137, 3/4 at bar 151) are rendered on a constant 3/4 grid of one bar per cycle
// note: Transcription provider: pdmx. https://musescore.com/score/5946750; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 188 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(148/3)

// 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 · clarinet · "B♭ Clarinet"
const clarinet = note(`<
  A@2 B@2 C@2 ~@3 D@2 ~@44 E F G H I J K L M N O P Q R S T@2 F G U V J W L X N Y P Z AA AB AC AD ~@4 AE AF ~@2 AE AG AH
  AI AJ AK AL G H ~ AM AN AO ~ AP AQ AR ~ AS AT AU AV AW AX AY AZ@3 ~@9 BA BB ~ BC BD BE BF BG BH@2 BI BJ BC BK BL BM BN
  ~@38
>`.pickRestart({
  A: "[~@11 d5@3 eb5@4 d5@4 eb5@3 d5@4 eb5@3]/2", B: "[c5@4 d5@3 c5@4 d5@3 c5@4 d5@3 bb4@4 c5@3 bb4@4]/2",
  C: "[c5@3 bb4@4 c5@3 a4@2 g4@2 gb4@18]/2", D: "[~ gb4@26 ~@5]/2", E: "d4@5 g4@5 ~ bb4@5", F: "d5@11 d5@5",
  G: "c5@5 bb4@5 ~ a4@5", H: "bb4@5 ~@11", I: "~@8 g4@3 bb4@2 d5@3", J: "g5@11 g5@5", K: "g5@5 f5@5 ~ eb5@5", L: "f5",
  M: "~@8 a4@3 d5@2 f5@3", N: "a5@11 g5@5", O: "f5@5 e5@5 ~ f5@5", P: "g5@11 f5@5", Q: "e5@11 d5@5",
  R: "c5@5 bb4@5 ~ c5@5", S: "d5@5 c5@5 ~ g4@5", T: "[a4@3 c5]/2", U: "bb4", V: "g4@5 bb4@5 ~ d5@5",
  W: "g5@5 a5@5 ~ f5@2 eb5@3", X: "a4@5 d5@5 ~ f5@5", Y: "~@5 f5@3 e5@3 eb5@2 e5@3", Z: "~@11 e5 d5 db5 ~ d5",
  AA: "d5@5 c5@3 d5@3 c5@2 bb4@3", AB: "a4@8 b4@3 db5@5", AC: "d5@5 d5@5 ~ e5@5", AD: "gb5@5 d5@5 ~ gb5@5",
  AE: "bb3@3 f4@2 g4@3 bb4@3 d5@2 f5@3", AF: "bb5@3 f5@2 d5@3 bb4@3 g4@2 f4@3", AG: "bb5@5 ~@6 f4@5",
  AH: "f4@5 f4@5 ~ f4@5", AI: "a4@5 g4@5 ~ f4@5", AJ: "e4@11 g4@5", AK: "a3@11 a3@5", AL: "a4",
  AM: "[d4,gb4]@11 [d4,gb4]@5", AN: "[d4,gb4]@5 [e4,g4]@5 ~ [gb4,a4]@5", AO: "[g4,bb4]@3 ~@13",
  AP: "[c4,e4]@11 [c4,e4]@5", AQ: "[c4,e4]@5 [d4,f4]@5 ~ [e4,g4]@5", AR: "[f4,a4]@3 ~@13", AS: "e4@5 eb4@5 ~ e4@5",
  AT: "g4@5 f4@5 ~ e4@5", AU: "d4@5 db4@5 ~ d4@5", AV: "e4@11 a4@5", AW: "c5@11 bb4@5", AX: "a4@11 g4@5",
  AY: "gb4 ~@2 a4@3 c5@2 d5@2 c5@2 bb4@3 ~", AZ: "[~@8 g4@2 a4@2 g4@2 ~ gb4@3 ~@11 e4@2 gb4@3 e4@3 d4@4 ~@7]/3",
  BA: "~@8 eb3 f3 eb3 f3 eb3 f3 eb3 f3", BB: "eb3 f3 eb3 f3 eb3 f3 eb3 f3 ~@8", BC: "~@9 c4@2 ~@5", BD: "d4 ~@3 g4 ~@3",
  BE: "~@6 c4@2 ~@5 bb3@2 ~", BF: "~@2 bb3 ~@5", BG: "~@3 g4@2 ~@5 gb4@2 ~@4",
  BH: "[~ f4@2 ~@5 bb3@2 ~@5 bb3@2 ~@5 a3@2 ~@6 c4@2]/2", BI: "~@5 c4@5 b3@2 c4@2 ~@2", BJ: "~@3 d4@2 ~@5 g3@2 ~@4",
  BK: "f3@2 ~@5 d3@2 ~@7", BL: "~@5 g3@2 ~@6 a3@2 ~", BM: "~@4 f3@3 ~@6 d3@3", BN: "~@5 eb3@3 ~@6 d3@2",
})).s("gm_clarinet").gain(0.3)

// other · clarinet · "B♭ Clarinet" · soft notes
const clarinet_soft = note("<~@27 A@2 B@4 C@3 D@2 E@4 ~@129 F@2 G H@4 I@2 J@2 K@6>".pickRestart({
  A: "[~@13 [bb4,d5]@18 ~]/2", B: "[~@9 [a4,db5]@9 [a4,db5]@9 [a4,db5]@9 [a4,c5]@18 ~@10]/4",
  C: "[[f4,a4]@9 ~@5 [d4,f4]@9 ~]/3", D: "[~@7 [e4,g4]@18 ~@7]/2", E: "[~@3 g4@27 gb4@28 ~@6, ~@3 d4@55 ~@6]/4",
  F: "[~@11 [bb4,d5]@18 ~@3]/2", G: "~@7 [a4,db5]@9", H: "[[a4,db5]@9 [a4,db5]@9 [a4,c5]@18 ~@10 [f4,a4]@18]/4",
  I: "[~@9 [d4,f4]@18 ~@5]/2", J: "[~@5 [e4,g4]@18 ~@9]/2", K: "[gb4@28 gb4@55 ~@13, d4@83 ~@13]/6",
})).s("gm_clarinet").gain(0.2)

// other · clarinet · "B♭ Clarinet"
const clarinet_2 = note(`<
  A@2 B@2 C@2 ~@3 D@2 ~@41 E@4 F G H@2 F H@3 I J K L E M F N O P Q R O Q@3 S T U V W T X Y ~ Z AA AB AC AD AA AE AF ~
  AG@8 AH AI H@2 AJ AK AL@2 AM E M@2 AN AO ~@7 AP@8 ~ AQ AR AS AT AU AV@2 AW AX AQ AY AZ BA BB ~@38
>`.pickRestart({
  A: "[~@11 bb4@3 c5@4 bb4@4 c5@3 bb4@4 c5@3]/2", B: "[a4@4 bb4@3 a4@4 bb4@3 a4@4 bb4@3 g4@4 a4@3 g4@4]/2",
  C: "[a4@3 g4@4 a4@3 gb4@2 eb4@2 d4@18]/2", D: "[~ d4@26 ~@5]/2", E: "~@5 d4@3 ~@3 d4@3 ~@2",
  F: "~@5 g4@3 ~@3 g4@3 ~@2", G: "~@5 gb4@3 ~@3 gb4@3 ~@2", H: "~@5 f4@3 ~@3 f4@3 ~@2", I: "~@5 a4@3 ~@3 g4@3 ~@2",
  J: "~@5 db4@3 ~@3 db4@3 ~@2", K: "~@5 g4@3 ~@3 f4@3 ~@2", L: "~@5 e4@3 ~@3 d4@3 ~@2", M: "~@5 e4@3 ~@3 e4@3 ~@2",
  N: "~@5 g4@3 ~@3 gb4@3 ~@2", O: "~@5 g4@5 ~ g4@5", P: "~@5 gb4@5 ~ gb4@5", Q: "~@5 f4@5 ~ f4@5", R: "eb4 d4",
  S: "~@5 a4@5 ~ g4@5", T: "~@5 db4@5 ~ db4@5", U: "~@5 g4@5 ~ f4@5", V: "~@5 e4@5 ~ d4@5", W: "~@5 d4@5 ~ d4@5",
  X: "~@5 [gb3,a3]@5 ~ [gb3,a3]@5", Y: "~@5 [gb3,d4]@5 ~ [d4,gb4]@5", Z: "~@11 d4@5", AA: "eb4@11 d4@5",
  AB: "c4@5 bb3@5 ~ a3@5", AC: "bb3@5 c4@5 ~ d4@5", AD: "f3@11 f3@5", AE: "c4@5 bb3@5 ~ c4@5", AF: "d4",
  AG: "~@5 a4@3 ~@3 a4@3 ~@2", AH: "~@5 eb4@3 ~@3 d4@3 ~@2", AI: "c4@5 bb3@3 ~@3 a3@3 ~@2",
  AJ: "~@5 c4@3 ~@3 bb3@3 ~@2", AK: "~@5 d4@3 ~@3 e4@3 ~@2", AL: "~@5 c4@3 ~@3 c4@3 ~@2", AM: "~@5 b3@3 ~@3 b3@3 ~@2",
  AN: "~@5 g3@3 ~@3 d4@3 ~@2", AO: "~@5 g3@3 ~@3 bb3@3 ~@2", AP: "[~@3 eb4@34 ab4@35 b4@47 ~@9]/8", AQ: "~@9 ab3@2 ~@5",
  AR: "b3 ~@3 eb4 ~@3", AS: "~@6 ab3@2 ~@5 ab3@2 ~", AT: "~@2 g3 ~@5", AU: "~@3 eb4@2 ~@5 d4@2 ~@4",
  AV: "[~ d4@2 ~@5 f3@2 ~@5 eb3@2 ~@5 d3@2 ~@6 g3@2]/2", AW: "~@5 g3@5 b3@2 ab3@2 ~@2", AX: "~@3 b3@2 ~@5 eb3@2 ~@4",
  AY: "d3@2 ~@5 bb3@2 ~@7", AZ: "~@5 eb4@2 ~@6 gb4@2 ~", BA: "~@4 d4@3 ~@6 bb3@3", BB: "~@5 bb3@3 ~@6 a3@2",
})).s("gm_clarinet").gain(0.3)

// other · clarinet · "B♭ Clarinet" · soft notes
const clarinet_soft_2 = note(`<
  ~@14 A@2 B@2 C@3 D@2 E@2 F@3 G@2 H@3 I@2 J@2 K@5 ~@116 D@2 L@5 M@2 N@3 O@2 P@2 Q@3 R@2 ~@3 S@2 T@4
>`.pickRestart({
  A: "[~@5 [bb3,d4]@9 ~@2]/2", B: "[~@6 [c4,eb4]@9 [a3,c4]@9 ~@8]/2", C: "[~ [bb3,d4]@18 ~@10 d4@18 ~]/3",
  D: "[~@4 [bb3,d4]@9 ~@3]/2", E: "[~@4 [c4,eb4]@9 c4@9 ~@10]/2", F: "[[bb3,d4]@6 ~@3 d4@6 ~]/3",
  G: "[~@7 [bb3,d4]@18 ~@7]/2", H: "[~@2 db4@9 [db4,e4]@9 ~@10 [c4,e4]@18]/3", I: "[~@9 a3@18 ~@5]/2",
  J: "[~@5 bb3@18 ~@9]/2", K: "[bb3@18 ~@10 [c4,eb4]@9 [a3,c4]@9 d4@28 ~@6]/5",
  L: "[~@4 [c4,eb4]@9 [a3,c4]@9 ~@9 [bb3,d4]@18 ~@10 d4@18 ~@3]/5", M: "[~@3 [bb3,d4]@9 ~@4]/2",
  N: "[~@2 [c4,eb4]@9 c4@9 ~@9 [bb3,d4]@18 ~]/3", O: "[~@9 d4@18 ~@5]/2", P: "[~@2 [bb3,d4]@9 ~@5]/2",
  Q: "[db4@3 [db4,e4]@3 ~@3 [c4,e4]@6 ~]/3", R: "[~@7 a3@18 ~@7]/2", S: "[~@10 d3@4 gb3@5 a3@4 bb3@5 a3@4]/2",
  T: "[~ bb3@4 c4@5 d4@4 eb4@5 g4@5 [a3,gb4]@28 ~@12]/4", // D
})).s("gm_clarinet").gain(0.2)

// other · clarinet · "B♭ Clarinet"
const clarinet_3 = note(`<
  ~@52 A@4 B@2 A C@2 B C@3 D C D@2 C@3 E@2 F G H E H@3 I H I@3 ~@2 J K L M N O L P Q ~ R@2 S@2 R@2 S@2 D T A@2 U@2 D@3 V
  D@2 W X ~@7 Y@8 ~ Z AA AB AC AD AE@2 AF AG AH AI AJ AK AL ~@38
>`.pickRestart({
  A: "~@5 bb3@3 ~@3 bb3@3 ~@2", B: "~@5 eb4@3 ~@3 eb4@3 ~@2", C: "~@5 d4@3 ~@3 d4@3 ~@2", D: "~@5 a3@3 ~@3 a3@3 ~@2",
  E: "~@5 eb4@5 ~ eb4@5", F: "~@5 d4@2 db4@2 c4@2 ~ bb3@2 a3@2, ~@11 b3@2 ~@3", G: "ab3 g3", H: "~@5 d4@5 ~ d4@5",
  I: "~@5 a3@5 ~ a3@5", J: "~@5 [gb3,d4]@5 ~ [g3,e4]@5", K: "[a3,gb4]@5 [gb3,d4]@5 ~ d4@5", L: "eb4@11 d4@5",
  M: "c4@5 bb3@5 ~ a3@5", N: "bb3@5 c4@5 ~ d4@5", O: "f3@11 f3@5", P: "c4@5 bb3@5 ~ c4@5", Q: "d4",
  R: "~@5 f4@3 ~@3 f4@3 ~@2", S: "~@5 g4@3 ~@3 g4@3 ~@2", T: "~@5 gb3@3 ~@3 gb3@3 ~@2", U: "~@5 g3@3 ~@3 g3@3 ~@2",
  V: "~@5 b3@3 ~@3 b3@3 ~@2", W: "~@5 eb3@3 ~@3 g3@3 ~@2", X: "~@5 g3@3 ~@3 bb3@3 ~@2",
  Y: "[~@3 eb3@34 ab3@35 b3@47 ~@9]/8", Z: "~@9 f3@2 ~@5", AA: "g3 ~@3 c4 ~@3", AB: "~@6 f3@2 ~@5 f3@2 ~",
  AC: "~@2 eb3 ~@5", AD: "~@3 a3@2 ~@5 d4@2 ~@4", AE: "[~ g3@2 ~@5 f3@2 ~@5 eb3@2 ~@5 d3@2 ~@6 g3@2]/2",
  AF: "~@5 g3@5 b3@2 f3@2 ~@2", AG: "~@3 g3@2 ~@5 c4@2 ~@4", AH: "~@9 f4@2 ~@5", AI: "bb3@2 ~@5 eb3@2 ~@7",
  AJ: "~@5 a3@2 ~@6 d4@2 ~", AK: "~@4 g3@3 ~@6 f3@3", AL: "~@5 eb3@3 ~@6 d3@2",
})).s("gm_clarinet").gain(0.3)

// other · clarinet · "B♭ Clarinet" · soft notes
const clarinet_soft_3 = note(`<
  ~@14 A@2 B@2 C@3 D@2 E@2 F@3 G@2 H@3 I@2 J@2 K@5 ~@116 D@2 L@5 M@2 N@3 I@2 O@2 P@3 Q@2 ~@6 R@3
>`.pickRestart({
  A: "[~@5 [eb3,g3]@9 ~@2]/2", B: "[~@6 [g3,a3]@9 [d3,g3]@9 ~@8]/2", C: "[~ [f3,a3]@18 ~@10 [a3,bb3]@18 ~]/3",
  D: "[~@4 [eb3,g3]@9 ~@3]/2", E: "[~@4 [f3,bb3]@9 [f3,bb3]@9 ~@10]/2", F: "[[f3,a3]@6 ~@3 [f3,a3]@6 ~]/3",
  G: "[~@7 [e3,g3]@18 ~@7]/2", H: "[~@2 [g3,bb3]@9 [g3,bb3]@9 ~@10 [f3,a3]@18]/3", I: "[~@9 [f3,a3]@18 ~@5]/2",
  J: "[~@5 [d3,f3]@18 ~@9]/2", K: "[[eb3,g3]@18 ~@10 [gb3,a3]@9 [d3,gb3]@9 a3@28 ~@6]/5",
  L: "[~@4 [g3,a3]@9 [d3,g3]@9 ~@9 [f3,a3]@18 ~@10 [a3,bb3]@18 ~@3]/5", M: "[~@3 [eb3,g3]@9 ~@4]/2",
  N: "[~@2 [f3,bb3]@9 [f3,bb3]@9 ~@9 [f3,a3]@18 ~]/3", O: "[~@2 [e3,g3]@9 ~@5]/2",
  P: "[[g3,bb3]@3 [g3,bb3]@3 ~@3 [f3,a3]@6 ~]/3", Q: "[~@7 [f3,a3]@18 ~@7]/2", R: "[~@2 [a3,d4]@7 ~@3]/3",
})).s("gm_clarinet").gain(0.2)

// bass · clarinet · "Bass Clarinet"
const bass = note(`<
  ~@7 A@2 B@2 ~@41 C@4 D@2 E F@2 E@3 F C E G@2 E H I J@2 K L M K@3 M N K O@2 N ~@2 P Q ~@14 R S T ~ E@2 U@2 ~@3 V C@2 W
  X Y@6 ~ Z@7 AA ~ AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP ~@37
>`.pickRestart({
  A: "[~@10 d2@5 a2@5 ~ d3@6 gb3@5]/2", B: "[~ a3@26 ~@5]/2", C: "~@5 g3@3 ~@3 g3@3 ~@2", D: "~@5 c4@3 ~@3 c4@3 ~@2",
  E: "~@5 a3@3 ~@3 a3@3 ~@2", F: "~@5 bb3@3 ~@3 bb3@3 ~@2", G: "~@5 f3@3 ~@3 f3@3 ~@2",
  H: "d2@2 eb2@2 ~ f2@2 gb2@2 g2@2 ~ b2@2 db3@2, ~@4 e2@2 ~@5 ab2@2 ~@3", I: "d3", J: "~@5 c4@5 ~ c4@5",
  K: "~@5 a3@5 ~ a3@5", L: "f3!2", M: "~@5 bb3@5 ~ bb3@5", N: "~@5 g3@5 ~ g3@5", O: "~@5 f3@5 ~ f3@5",
  P: "~@5 d3@5 ~ d3@5", Q: "~@5 d3@5 ~ gb3@5", R: "~@3 f3@2 g3@3 f3@3 e3@2 d3@3", S: "db3@3 a2@2 b2@3 db3@3 e3@2 g3@3",
  T: "gb3@3 ~@2 gb3@3 ~@3 gb3@3 ~@2", U: "~@5 e3@3 ~@3 e3@3 ~@2", V: "~@5 ab3@3 ~@3 ab3@3 ~@2",
  W: "~@5 eb3@3 ~@3 eb3@3 ~@2", X: "~@5 g3@3 ~@3 bb3@3 ~@2",
  Y: "[~@6 a3@6 g3@6 ~@6 g3@7 gb3@7 ~@7 eb3@8 d3@9 d3@26 ~@8]/6",
  Z: "[~@3 eb3@34 ab3@35 b3@32 eb2 f2 eb2 f2 eb2 f2 eb2 f2]/7", AA: "eb2 f2 eb2 f2 eb2 f2 eb2 f2 ~@8",
  AB: "~@2 g2 ~ c3 ~@2 eb3 ~ g3 ~@4 g3 ~", AC: "f3 ~@2 eb3 ~ d3 ~@2 eb3@2 ~@5 c3",
  AD: "~ eb3 ~ g3 ~@2 c4 ~@4 c4 ~ c4 ~ bb3", AE: "~@2 ab3 ~ bb3@7 ~@5", AF: "~@3 d4 ~@3 c4 ~@2 bb3 ~ a3 ~@2 bb3",
  AG: "~ c4 ~@4 bb3 ~ a3 ~ g3 ~@2 gb3 ~ g3", AH: "~@4 g3 ~ g3 ~@2 f3 ~ c3 ~@2 d3@2", AI: "~@5 g2 ~ c3 ~@2 eb3 ~ g3 ~@3",
  AJ: "~ g3 ~ f3 ~@2 eb3 ~ d3 ~ eb3@2 ~@4", AK: "~@2 c3 ~ eb3 ~ g3 ~@2 c4 ~@3 c4 ~@2",
  AL: "c4 ~ bb3 ~@2 ab3 ~ bb3@2 ~@5 d3 ~", AM: "~ g3 ~ bb3 ~ d4 ~@4 c4 ~@2 bb3 ~ a3",
  AN: "~@2 bb3 ~ c4 ~@5 bb3 ~@2 a3 ~ g3", AO: "~@2 gb3 ~@2 g3@2 ~ f3@2 ~ eb3@2 ~ d3@2", AP: "~ e3@2 ~@2 gb3@2 ~@9",
})).s("gm_electric_bass_finger").gain(0.3)

// bass · clarinet · "Bass Clarinet" · soft notes
const bass_soft = note(`<
  ~@14 A@2 B@2 C@2 ~ D@2 E@2 F@3 G@2 H@3 I@2 J@2 K@5 ~@116 D@2 L@4 ~ M@2 N@3 O@2 P@2 Q@3 R@2 ~@6 S@3
>`.pickRestart({
  A: "[~@5 eb3@9 ~@2]/2", B: "[~@6 g3@9 d3@9 ~@8]/2", C: "[~ f3@18 ~@13]/2", D: "[~@4 eb3@9 ~@3]/2",
  E: "[~@4 f3@9 f3@9 ~@10]/2", F: "[f3@6 ~@3 f3@6 ~]/3", G: "[~@7 e3@18 ~@7]/2", H: "[~@2 g3@9 g3@9 ~@10 f3@18]/3",
  I: "[~@9 c3@18 ~@5]/2", J: "[~@5 d3@18 ~@9]/2", K: "[eb3@18 ~@10 gb3@9 d3@9 d3@28 ~@6]/5",
  L: "[~@4 g3@9 d3@9 ~@9 f3@18 ~@15]/4", M: "[~@3 eb3@9 ~@4]/2", N: "[~@2 f3@9 f3@9 ~@9 f3@18 ~]/3",
  O: "[~@9 f3@18 ~@5]/2", P: "[~@2 e3@9 ~@5]/2", Q: "[g3@3 g3@3 ~@3 f3@6 ~]/3", R: "[~@7 c3@18 ~@7]/2",
  S: "[~@2 d3@7 ~@3]/3",
})).s("gm_electric_bass_finger").gain(0.2)

// bass · clarinet · "Bass Clarinet"
const bass_2 = note(`<
  ~@52 A B A B C B A@2 C D E D F G B H I G B@2 C B A ~ J@2 B A K G L H I G L ~ M N O@2 P@2 O@2 P@2 L G K G L G K Q B L
  A@2 C H D@2 R F G@2 C H S@6 ~ T@8 ~ U V W X Y Z AA AB AC AD AE AF AG AH AI@4 ~@34
>`.pickRestart({
  A: "g2@5 ~@11", B: "d2@5 ~@11", C: "c2@5 ~@11", D: "f2@5 ~@11", E: "bb1@5 ~@11", F: "e2@5 ~@11", G: "a2@5 ~@11",
  H: "c3@5 ~@11", I: "bb2@5 ~@11", J: "eb2@5 ~@11", K: "e3@5 ~@11", L: "d3@5 ~@11", M: "~@5 gb2@5 ~ a2@5",
  N: "~@5 gb2@5 ~ d3@5", O: "f3/2", P: "bb2/2", Q: "a3@5 ~@11", R: "b2@5 ~@11", S: "[d3@11 ~]/6",
  T: "[~@3 eb2@34 ab2@35 b2@47 ~@9]/8", U: "~@2 g2 ~ c3 ~@2 eb3 ~ g3 ~@4 g3 ~", V: "f3 ~@2 eb3 ~ d3 ~@2 eb3@2 ~@5 c3",
  W: "~ eb3 ~ g3 ~@2 c4 ~@4 c4 ~ c4 ~ bb3", X: "~@2 ab3 ~ bb3@7 ~@5", Y: "~@3 d4 ~@3 c4 ~@2 bb3 ~ a3 ~@2 bb3",
  Z: "~ c4 ~@4 bb3 ~ a3 ~ g3 ~@2 gb3 ~ g3", AA: "~@4 g3 ~ g3 ~@2 f3 ~ c3 ~@2 d3@2", AB: "~@5 g2 ~ c3 ~@2 eb3 ~ g3 ~@3",
  AC: "~ g3 ~ f3 ~@2 eb3 ~ d3 ~ eb3@2 ~@4", AD: "~@2 c3 ~ eb3 ~ g3 ~@2 c4 ~@3 c4 ~@2",
  AE: "c4 ~ bb3 ~@2 ab3 ~ bb3@2 ~@5 d3 ~", AF: "~ g3 ~ bb3 ~ d4 ~@4 c4 ~@2 bb3 ~ a3",
  AG: "~@2 bb3 ~ c4 ~@5 bb3 ~@2 a3 ~ g3", AH: "~@2 gb3 ~@2 g3@2 ~ f3@2 ~ eb3@2 ~ d3@2",
  AI: "[~ e3@2 ~@2 gb3@2 ~ g3@49 ~@7]/4",
})).s("gm_electric_bass_finger").gain(0.3)

// bass · clarinet · "Bass Clarinet" · soft notes
const bass_soft_2 = note(`<
  ~@14 A B@2 C ~ D E@2 F@2 G ~ H I@2 J@2 K ~ L M@2 N ~ O P@3 ~@115 E@2 Q@2 R ~ S T@2 U@2 V ~ W X@2 N ~ Y Z@2 ~@7 AA@3
>`.pickRestart({
  A: "~ c3@9 ~@6", B: "[~@13 d3@9 ~@10]/2", C: "~ g2", D: "~@4 g2@9 ~@3", E: "[~@15 c3@9 ~@8]/2",
  F: "[~@11 f2@9 ~@12]/2", G: "~@6 bb2@9 ~", H: "~@2 f2@9 ~@5", I: "[~@13 e3@9 ~@10]/2", J: "[~@9 a2@9 ~@14]/2",
  K: "~@4 d3@9 ~@3", L: "c3@9 ~@7", M: "[~@12 bb2@9 ~@11]/2", N: "~@7 a2@9", O: "~@3 d2@9 ~@4", P: "[~@7 d3@14 ~@3]/3",
  Q: "[~@10 d3@9 ~@13]/2", R: "~@6 g2@9 ~", S: "~@2 g2@9 ~@5", T: "[~@13 c3@9 ~@10]/2", U: "[~@9 f2@9 ~@14]/2",
  V: "~@4 bb2@9 ~@3", W: "f2@9 ~@7", X: "[~@11 e3@9 ~@12]/2", Y: "~@2 d3@9 ~@5", Z: "[~@14 c3@9 ~@9]/2",
  AA: "[~@2 d2@7 ~@3]/3",
})).s("gm_electric_bass_finger").gain(0.2)

stack(
  clarinet, clarinet_soft, clarinet_2, clarinet_soft_2, clarinet_3, clarinet_soft_3, bass, bass_soft, bass_2,
  bass_soft_2
)