Strudelify

Lacrime

Little Tony

KeyG minorTempo117 bpm
0:00/0:00
// Lacrime — Little Tony
// 117 bpm, 4/4, key G minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: pitch bends are ignored
// note: Full arrangement: all 86 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(117/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.

// bass · electric bass finger
const bass = note(`<
  A@7 B@8 C@2 D@5 E F G H I J K L ~ M N@2 O@3 P Q R@2 S R T U V W X Y Z AA AB@2 AC@5 AD@4 AE AF AG AH@6 AI@2 AJ@2 AI@2
  AJ@2 AI@2 AJ@2 AI@2 AK
>`.pickRestart({
  A: "[~@29 g1@24 d2@3 ~ d2@4 g1@23 ~ d2@3 ~ d2@4 g1@23 ~ d2@3 ~ d2@4 g1@24 d2@3 ~ d2@4 g1@24 d2@3 ~ d2@4 g1@24 d2@3 ~ d2@3 ~ d2@3]/7",
  B: "[~@9 d2@12 a2@3 ~ a2@4 d2@11 ~ d2@12 a1@3 ~ a1@4 d1@11 ~ d1@11 ~ a1@3 ~ a1@4 d1@11 ~ d1@11 ~ a1@4 a1@3 ~ d1@11 ~ d1@12 a1@4 a1@4 d1@11 ~ d1@11 ~ gb1@7 ~ g1@11 ~ g1@12 d2@7 ~ g1@11 ~ g1@11 ~ f1@6 ~@2 bb1@3]/8",
  C: "[~@5 bb1@3 ~ bb1@3 ~ f1@4 c2@4 f2@4 c2@3 ~ bb1@5 ~@3 bb1@3 ~ f1@4 eb1@4 eb2@4 f1@4 f2@3 ~ bb1@3]/2",
  D: "[~@5 bb1@4 f1@4 bb1@4 f1@4 bb1@4 f1@4 bb1@5 ~@3 bb1@4 f1@4 bb1@4 f1@4 bb1@4 f1@4 bb1@6 ~@2 bb1@3 ~ bb1@3 ~ f1@4 c2@4 f2@4 c2@3 ~ bb1@7 ~ bb1@6 ~@2 eb1@4 eb2@3 ~ d2@4 d1@4 g1@6 ~@2 g1@6 d1@2 g1@2 ~@2 g1@8 d1@4 g1@3]/5",
  E: "~@4 g1@5 ~ g1@4 g1@5 ~@2 g1@4 ~@3 g1@3 ~", F: "c2@12 ~@2 c2 ~ eb2 ~ c2 ~ f2@4 g2@3 ~ eb2@3 ~",
  G: "f1@8 a1@5 ~ f1 ~ c2 ~ f1 ~ eb2@3 ~ c2@4 a1@3 ~", H: "c2@7 ~ c2@5 ~ c2 ~ eb2@3 ~ g2@4 eb2@4 c2@3 ~",
  I: "f1@7 ~ a1@5 ~ f1 ~ c2@2 f1 ~ a1@4 f1@4 a1@2 ~@2", J: "c2@7 ~ eb2@6 c2 ~ g2@4 c2@3 ~ eb2@4 c2@4",
  K: "bb1@7 ~ db2@8 g2@8 db2@6 ~@2", L: "~@2 d1@2 d2 d1 d2 ~, d2@7 ~@9", M: "~ g1@3", N: "d2@3 ~ d2@4 g1@23 ~",
  O: "d2@3 ~ d2@4 g1@24", P: "d2@3 ~ d2@3 ~ d2@10 ~@2 d2@12", Q: "a2@3 ~ a2@4 d2@11 ~ d2@12",
  R: "a1@3 ~ a1@4 d1@11 ~ d1@11 ~", S: "a1@3 ~ a1@3 ~ d1@11 ~ d1@12", T: "gb1@7 ~ g1@11 ~ g1@12",
  U: "d2@7 ~ g1@11 ~ g1@11 ~", V: "f1@6 ~@2 bb1@6 ~@2 bb1@3 ~ bb1@3 ~ f1@4 c2@4",
  W: "f2@4 c2@3 ~ bb1@5 ~@3 bb1@3 ~ f1@4 eb1@4 eb2@4", X: "f1@4 f2@3 ~ bb1@4 ~@4 bb1@4 f1@4 bb1@4 f1@4",
  Y: "bb1@4 f1@4 bb1@7 ~ bb1@4 f1@4 bb1@4 ~@2 bb1@2", Z: "f1@7 ~ bb1@6 ~@2 bb1@3 ~ bb1@3 ~ f1@4 c2@4",
  AA: "f2@4 c2@3 ~ bb1@7 ~ bb1@6 ~@2 eb1@4 eb2@3 ~",
  AB: "[d2@4 d1@4 g1@6 ~@2 g1@6 d1@2 g1@2 ~@2 g1@8 d1@4 g1@4 ~@2 g1@5 ~@2 g1@4 g1@5 ~@2]/2",
  AC: "[g1@4 ~@3 g1@3 ~ c2@12 ~@2 c2 ~ eb2 ~ c2 ~ f2@4 g2@3 ~ eb2@3 ~ f1@8 a1@5 ~ f1 ~ c2 ~ f1 ~ eb2@3 ~ c2@4 a1@3 ~ c2@7 ~ c2@5 ~ c2 ~ eb2@3 ~ g2@4 eb2@4 c2@3 ~ f1@7 ~ a1@5 ~ f1 ~ c2@2 f1 ~ a1@4 f1@4 a1@2 ~@2 c2@7 ~ eb2@6 c2 ~ g2@4 c2]/5",
  AD: "[~@3 eb2@4 c2@4 bb1@7 ~ db2@8 g2@8 db2@6 ~@10 d1@8 d2@4 d1@4 d2@4 ~@28 d2@7 d1@3 ~ c2@12 ~@2 c2 ~ eb2 ~, ~@43 d2@14 ~@18 d1@15 ~@2 d1@10 ~@26, ~@81 d2@17 ~@30]/4",
  AE: "c2 ~ f2@4 g2@3 ~ eb2@3 ~ f1@8 a1@5 ~ f1 ~ c2 ~", AF: "f1 ~ eb2@3 ~ c2@4 a1@3 ~ c2@7 ~ c2@5 ~ c2 ~ eb2@2",
  AG: "~@2 g2@4 eb2@4 c2@3 ~ f1@7 ~ a1@5 ~ f1 ~ c2@2",
  AH: "[f1 ~ a1@4 f1@4 a1@2 ~@2 c2@7 ~ eb2@6 c2 ~ g2@4 c2@3 ~ eb2@4 c2@4 bb1@7 ~ db2@8 g2@8 db2@6 ~@10 d1@8 d2@4 d1@4 d2@4 ~@28 d2@7 d1@3 ~ g1@14 d2@2 g2@4 d2@4 f1@4 f2@4 eb1@8 eb2@6 eb1, ~@78 d2@14 ~@18 d1@15 ~@2 d1@10 ~@55, ~@116 d2@17 ~@59]/6",
  AI: "[~ eb2@2 ~@2 f1@4 f2@4 f1@4 bb1@14 f2@2 bb2@3 ~ f2@4 bb1@3 ~ bb2@3 ~ eb1@8 ~@4 eb1@3, ~@57 eb2@7]/2",
  AJ: "[~ d2@3 ~ d1@4 d2@4 d1@2 ~@2 g1@14 d2@2 g2@4 d2@4 f1@4 f2@4 eb1@8 eb2@6 eb1]/2",
  AK: "~ d2@3 ~ d1@4 d2@4 d1@2 ~@17",
})).s("gm_electric_bass_finger").gain(0.58)

// chords · drawbar organ
const drawbar_organ = note(`<
  ~@14 A@4 B@4 ~@5 C D ~@16 E@2 F ~ G@2 H@2 ~@4 I@3 ~@5 J@3 ~ K@2 L@2 M@2 N@2 M@2 L@2 M@2 N@2 O
>`.pickRestart({
  A: "[~@29 [d5,f5,bb5]@16 [c5,a5]@16 [d5,bb5]@16 [eb5,g5,bb5]@8 [c5,f5,a5]@8 [f5,bb5]@6 ~@29, ~@45 f5@30 ~@53]/4", // Bb F Gm Eb F Bb5
  B: "[~@29 [d5,f5,bb5]@16 [c5,f5,a5]@16 [d5,bb5]@16 [eb5,g5,bb5]@8 [d5,gb5]@8 [d5,g5]@32 ~@3, ~@61 f5@13 ~@54]/4", // Bb F Gm Eb D G5
  C: "[eb5,g5]", D: "[db5,e5]@15 ~", E: "[~ [d5,f5,bb5]@2 [c5,a5]@2 [d5,bb5]@2 [eb5,g5,bb5], ~@12 f5@15 ~@5]/2",
  F: "[c5,f5,a5]@4 [f5,bb5]@3 ~@9", G: "[~ [d5,f5,bb5]@2 [c5,f5,a5]@2 [d5,f5,bb5]@2 [eb5,g5,bb5]]/2",
  H: "[[d5,gb5] [d5,g5]@4 ~@3]/2", I: "[~@11 [eb5,g5]@32 [db5,e5]@30 ~@23]/3",
  J: "[~@7 [eb5,g5]@16 [db5,e5]@15 ~@10]/3", K: "[~@17 [g4,bb4]@24 [a4,c5]@8 [bb4,eb5]@15]/2",
  L: "[~ [a4,c5]@15 ~ [f5,bb5]@32 [eb5,g5]@15]/2", M: "[~ [d5,gb5]@16 [g4,bb4]@24 [a4,c5]@8 [bb4,eb5]@15]/2",
  N: "[~ [a4,c5]@14 ~@2 [f5,bb5]@32 [eb5,g5]@15]/2", O: "~ [d5,gb5]@15 ~@16",
})).s("gm_drawbar_organ").gain(0.36)

// other · tenor sax
const tenor_sax = note(`<
  ~@14 A ~@3 B ~@3 C D E F G ~@2 H ~@15 I ~@2 J K ~@2 L M N@2 O@2 ~ P Q@2 R@2 S@2 ~ T U@3 V W X@2 V W X@2 V W X@2 V W Y
>`.pickRestart({
  A: "~@21 f2@8 bb2@3", B: "~@29 bb2@3", C: "~@3 g2@5 ~ g2@5 ~ g2@6 ~ g2@5 g2@4 ~",
  D: "[c4,eb4] ~@7 [c4,eb4] ~@7 [c4,eb4] ~@7 a3 ~ f3 ~ a3@2 bb3 ~", E: "c4@13 ~@3",
  F: "[c4,eb4] ~@7 [c4,eb4] ~@7 [c4,eb4] ~@7 a3 ~ f3 ~ a3 ~ bb3 ~", G: "c4@15 ~", H: "~@4 [c4,d4,gb4]@5 ~@7",
  I: "f2@8 bb2@3 ~@21", J: "~@8 bb2 ~@7 bb2 ~@3 bb2 ~@3 bb2 ~@7", K: "f2@3 ~ bb2@2 ~@10", L: "~@14 g2@5 ~ g2@5 ~ g2@6",
  M: "~ g2@5 g2@3 ~@2 [c4,eb4] ~@7 [c4,eb4] ~@7 [c4,eb4] ~@4", // Cm
  N: "[~@3 a3 ~ f3 ~ a3@2 bb3 ~ c4@26 ~@6 [c4,eb4] ~@7 [c4,eb4] ~@7 [c4,eb4] ~@4]/2", // Cm
  O: "[~@3 a3 ~ f3 ~ a3 ~ bb3 ~ c4@30 ~@23]/2", P: "~@19 [c4,d4,gb4]@10 ~@3",
  Q: "[~@11 d2@32 ~@3 [c4,eb4] ~@7 [c4,eb4] ~@7 [c4,eb4] ~]/2", // Cm
  R: "[~@6 a3 ~ f3 ~ a3@2 bb3 ~ c4@26 ~@6 [c4,eb4] ~@7 [c4,eb4] ~@7 [c4,eb4] ~]/2", // Cm
  S: "[~@6 a3 ~ f3 ~ a3 ~ bb3 ~ c4@30 ~@20]/2", T: "~@11 [c4,d4,gb4]@5", U: "[~@14 d2@32 ~@3 g2@23 ~ f2@7 ~ eb2@15]/3",
  V: "~ f2@14 ~@2 bb2 ~ bb2 ~ bb2 ~@3 bb2 ~@6", W: "~ bb2 ~@7 bb2 ~@7 eb2 ~ eb2 ~ eb2 ~@3 eb2 ~@3 eb2 ~@2",
  X: "[~ d2@4 ~@4 d2@4 ~@4 g2@23 ~ f2@7 ~ eb2@15]/2", Y: "~ d2@4 ~@4 d2@4 ~@19",
})).s("gm_tenor_sax").gain(0.71).pan(0.3)

// chords · acoustic guitar nylon
const acoustic_guitar_nylon = note("<A@7 B@3 ~@3 C@2 ~@16 D@7 E F ~@4 G ~@41>".pickRestart({
  A: "[~@37 a3@2 bb3@2 d4@2 a3@2 bb3@4 ~@4 d3@3 ~ d3@4 ~@8 a3@2 bb3@2 d4@2 a3@2 bb3@4 ~@4 d3@3 ~ d3@3 ~@9 a3@2 bb3@2 d4@2 a3@2 bb3@4 ~@4 d3@3 ~ d3@3 ~@9 a3@2 bb3@2 d4@2 a3@2 bb3@4 ~@4 d3@3 ~ d3@4 ~@8 a3@2 bb3@2 d4@2 a3@2 bb3@4 ~@4 d3@3 ~ d3@3 ~@9 a3@2 bb3@2 d4@2 a3@2 bb3@4 ~@4 d3@3 ~ d3@3 ~@4, ~@29 g2@25 ~@7 g2@24 ~@8 g2@24 ~@8 g2@24 ~@8 g2@24 ~@8 g2@25 ~@10, ~@49 d4@20 ~@12 d4@20 ~@12 d4@20 ~@12 d4@11 ~@21 d4@21 ~@11 d4@9 ~@6]/7",
  B: "[~@18 eb5@3 d5@3 ~ c5@2 ~@2 d5@2 c5@2 bb4@2 a4@2 c5@2 bb4@2 a4@2 g4@2 a4@4 g4@4 gb4@4 eb4@4 d4@10 ~@25]/3",
  C: "[~@17 d4@3 ~ g4@4 a4@4 bb4 ~ a4@2 bb4@2 c5@2 d5@2 c5@2 bb4 ~ a4@2 g4@5 ~@14]/2",
  D: "[~@16 a3@2 bb3@2 d4@2 a3@2 bb3@4 ~@4 d3@3 ~ d3@4 ~@8 a3@2 bb3@2 d4@2 a3@2 bb3@4 ~@4 d3@3 ~ d3@3 ~@9 a3@2 bb3@2 d4@2 a3@2 bb3@4 ~@4 d3@3 ~ d3@3 ~@9 a3@2 bb3@2 d4@2 a3@2 bb3@4 ~@4 d3@3 ~ d3@4 ~@8 a3@2 bb3@2 d4@2 a3@2 bb3@4 ~@4 d3@3 ~ d3@3 ~@9 a3@2 bb3@2 d4@2 a3@2 bb3@4 ~@4 d3@3 ~ d3@3 ~@22 eb5@3, ~@8 g2@25 ~@7 g2@24 ~@8 g2@24 ~@8 g2@24 ~@8 g2@24 ~@8 g2@25 ~@31, ~@28 d4@20 ~@12 d4@20 ~@12 d4@20 ~@12 d4@11 ~@21 d4@21 ~@11 d4@9 ~@27]/7",
  E: "d5@3 ~ c5@3 ~ d5@2 c5@2 bb4@2 a4@2 c5@2 bb4@2 a4@2 g4@2 a4@4 g4@4", F: "gb4@2 eb4@2 d4@5 ~@7",
  G: "d5 c5@3 bb4@2 a4@2 g4@11 ~ f4@2 g4@2 ~ d4@7",
})).s("gm_acoustic_guitar_nylon").gain(0.55).pan(0.6)

// chords · brass section
const brass_section = note(`<
  ~@17 A B ~ C@2 D E F G H I J K L M@2 ~@14 N O P ~ Q@2 R@3 S@2 T@2 U@4 V@2 W@4 X Y Z AA X AB Z AA X AB Z AA X AB Z AC
>`.pickRestart({
  A: "~@5 [bb3,d4,f4] ~@7 [bb3,d4,f4] ~@7 [bb3,d4,f4] ~ [bb3,d4,f4] ~ [bb3,d4,f4] ~@3 [bb3,d4,f4] ~@2", // Bb
  B: "~@5 [bb3,d4,f4] ~@7 [bb3,d4,f4] ~@7 [bb3,d4] ~ [bb3,d4,f4] ~ [bb3,d4,f4] ~@6", C: "[~@29 [bb3,g4]@30 ~@5]/2",
  D: "~@3 [d4,g4]@6 ~ d4@4 ~ [d4,g4,bb4]@6 [d4,g4,a4]@6 ~ g4@3 ~, ~@9 a4@5 ~@13 d4@3 ~@2", // G5 Gm Dsus4
  E: "[g4,c5]@3 ~@5 [g4,c5] ~@3 c5 ~@3 [g4,c5]@8 c5@2 g4@2 c5@2 d5@2", F: "eb5@7 ~",
  G: "[g4,c5] ~@7 [g4,c5] ~@7 [g4,c5] ~@3 c5 ~@3 c5@2 g4@2 c5@2 d5@2", H: "eb5@29 ~@3",
  I: "[eb4,g4] ~@7 [eb4,g4] ~@7 [eb4,g4] ~@7 [eb4,g4] ~@7", J: "[e4,g4,bb4]@7 ~", K: "~@24 eb5 ~ d5@2 c5@2 bb4 ~",
  L: "c5 bb4 a4 g4 a4 g4 gb4 eb4 gb4 eb4 d4 c4 d4@4", M: "[gb4@7 ~ g4@28 ~@28]/2",
  N: "~@16 [bb3,d4,f4] ~@7 [bb3,d4,f4] ~@7", // Bb
  O: "[bb3,d4,f4] ~ [bb3,d4,f4] ~ [bb3,d4,f4] ~@3 [d4,f4] ~@7 [d4,f4] ~@7 [d4,f4] ~@7", P: "[c4,eb4,f4]@5 ~@27",
  Q: "[~@8 [bb3,g4]@30 ~@8 [d4,g4]@6 ~ d4@4 ~ [d4,g4,bb4]@6, ~@52 a4@5 ~@7]/2", // Eb G5 Gm
  R: "[[d4,g4,a4]@6 [d4,g4]@3 ~@2 [g4,c5]@3 ~@5 [g4,c5] ~@3 c5 ~@3 [g4,c5]@8 c5@2 g4@2 c5@2 d5@2 eb5@28 ~@4 [g4,c5] ~@7 [g4,c5] ~@7 [g4,c5] ~@3 c5]/3", // Dsus4 G5 C5
  S: "[~@3 c5@2 g4@2 c5@2 d5@2 eb5@29 ~@3 [eb4,g4] ~@7 [eb4,g4] ~@7 [eb4,g4] ~@4]/2", // Eb
  T: "[~@3 [eb4,g4] ~@7 [e4,g4,bb4]@28 ~@12 [a4,d5,gb5]@13]/2", // Eb Edim D
  U: "[~@3 d5@2 eb5@2 d5@2 c5@2 [d4,gb4,a4,d5]@33 ~@2 [g4,c5]@3 ~@5 [g4,c5] ~@3 c5 ~@3 [g4,c5]@8 c5@2 g4@2 c5@2 d5@2 eb5@28 ~@4 [g4,c5] ~@7 [g4,c5] ~@7 [g4,c5] ~]/4", // D C5
  V: "[~@2 c5 ~@3 c5@2 g4@2 c5@2 d5@2 eb5@29 ~@3 [eb4,g4] ~@7 [eb4,g4] ~@7 [eb4,g4] ~]/2", // Eb
  W: "[~@6 [eb4,g4] ~@7 [e4,g4,bb4]@28 ~@12 [a4,d5,gb5]@14 ~@2 d5@2 eb5@2 d5@2 c5@2 [d4,gb4,a4,d5]@33 ~@2 [d4,g4]@9 ~@3 [d4,g4] ~@2]/4", // Eb Edim D G5
  X: "~ [d4,g4]@5 ~@3 [c4,f4]@4 ~@4 [bb3,eb4]@9 ~@3 [bb3,eb4] ~@2", // G5 F5 Eb5
  Y: "~ f4@5 ~@3 [c4,f4]@4 ~@4 [f4,bb4] ~ [f4,bb4] ~ [f4,bb4] ~@3 [f4,bb4] ~@6, ~ c4 ~@30", // F5 Bb5
  Z: "~ [f4,bb4] ~@7 [f4,bb4] ~@7 [eb4,g4] ~ [eb4,g4] ~ [eb4,g4] ~@3 [eb4,g4] ~@6", // Bb5 Eb
  AA: "~ [d4,gb4] ~@7 [d4,gb4] ~@7 [d4,g4]@9 ~@3 [d4,g4] ~@2", // D G5
  AB: "~ [c4,f4]@5 ~@3 [c4,f4]@4 ~@4 [f4,bb4] ~ [f4,bb4] ~ [f4,bb4] ~@3 [f4,bb4] ~@6", // F5 Bb5
  AC: "~ [d4,gb4] ~@7 [d4,gb4] ~@22", // D
})).s("gm_brass_section").gain(0.65).pan(0.7)

// chords · acoustic guitar steel
const acoustic_guitar_steel = note(`<
  A@7 B@8 C@8 D 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@3 AJ AK AL@4 AM@4 AN@3 AO@2
  AP@2 AO@2 AP@2 AO@2 AP@2 AO@2 AQ
>`.pickRestart({
  A: "[~@29 [g3,bb3,d4,g4]@6 g3@2 [g3,bb3]@4 [g3,bb3,d4,g4]@8 [g2,d3,g3,bb3,d4,g4]@4 [g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4]@2 [bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@7 ~ [g3,bb3,d4,g4]@2 ~@2 [g3,bb3,d4,g4]@8 [g2,d3,g3,bb3,d4,g4]@4 [g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@6 [g3,bb3,d4]@2 [g3,bb3,d4]@3 ~ [g3,bb3,d4,g4]@8 [g2,d3,g3,bb3,d4,g4]@4 [g3,bb3,d4,g4]@2 [g2,d3,g3,d4,g4]@2 [bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g3,bb3,d4,g4]@6 ~@2 [g3,bb3,g4]@2 [g3,bb3,d4,g4]@2 [g3,bb3] ~ [d3,g3,bb3,g4]@5 ~ [g2,d3,g3,bb3,g4]@4 [g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@6 [g3,bb3]@2 [g3,bb3]@2 [g3,bb3,d4,g4] ~ [g3,bb3,d4,g4]@8 [g2,d3,g3,bb3,d4,g4]@4 [g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@7 ~ [g3,bb3]@2 [g3,bb3,d4,g4] ~ [g3,bb3,d4,g4]@8 [g3,bb3,d4,g4]@3 ~ [bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [d3,g3,c4,a4]@3, ~@29 [g2,d3]@4 ~@2 [g2,d3]@11 ~@23 [g2,d3]@11 ~@19 [g2,d3]@12 ~@14 [g2,d3]@5 ~ g2@12 ~@20 [g2,d3]@12 ~@22 [g2,d3]@12 [g2,d3]@4 ~@11, ~@35 [d4,g4]@6 ~@58 g4@6 ~@26 d3@6 d4@11 ~@15 [d4,g4]@4 ~@57, ~@137 g4@2 ~@85]/7", // Gm G5 Gm Dsus4 G5
  B: "[~@3 [a3,c4,a4] ~ [a3,c4,a4]@3 ~ [d3,a3,c4,gb4,a4]@8 [d3,a3,c4,gb4,a4]@4 [a3,c4,gb4,a4]@2 [d3,a3,c4,gb4,a4]@2 [d3,c4,gb4,a4]@2 [a3,c4,gb4,a4]@2 [d3,a3,c4,gb4,a4]@6 a4@2 [a3,c4,a4]@4 [a3,c4,gb4,a4]@8 [d3,a3,c4,gb4,a4]@4 [a3,c4,gb4,a4]@2 [d3,a3,c4,gb4,a4]@2 [a3,c4,gb4,a4]@2 [d3,a3,c4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@6 [a3,d4]@2 [a3,c4,d4]@2 ~@2 [d3,a3,c4,d4,gb4,a4]@8 [d3,a3,c4,d4,gb4,a4]@4 [a3,c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@2 [c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@6 [a3,c4,d4,gb4,a4] ~ [a3,c4,d4,gb4,a4]@3 ~ [d3,a3,c4,d4,gb4,a4]@8 [d3,a3,c4,d4,gb4,a4]@4 [a3,c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4]@6 [a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4]@3 ~ [d3,a3,c4,d4,gb4,a4]@8 [d3,a3,c4,d4,gb4,a4]@4 [a3,c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4]@6 [gb4,a4]@2 [a3,c4,d4,gb4,a4]@3 ~ [d3,a3,c4,d4,gb4,a4]@8 [d3,a3,c4,d4,gb4,a4]@4 [a3,c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@2 [g2,d3,g3,bb3,d4,g4]@6 [g3,d4,g4]@2 [g3,bb3,d4,g4]@3 ~ [g2,d3,g3,bb3,d4,g4]@8 [g2,d3,g3,bb3,d4,g4]@4 [g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@6 [g3,bb3,g4]@2 [g3,bb3,d4,g4]@3 ~ [g2,d3,g3,bb3,d4,g4]@7 ~ [g2,d3,g3,bb3,d4,g4]@3 ~ [f2,c3,f3,a3,c4,f4]@5 ~@3 [bb2,bb3,d4,f4]@3, ~@3 d3@5 ~@27 d3@13 ~@19 [d3,gb4,a4]@5 ~@27 d3@5 ~@19 d3@7 ~ d3@5 ~@19 d3@7 ~ d3@5 ~@27 [g2,d3]@5 ~@27 [g2,d3]@5 ~@24, ~@35 gb4@6 ~@186 d4 ~@28, ~@35 a3 ~@127 a3 ~@92]/8", // Am D7 Gbdim D7 Gbdim D7 Am Gbdim …
  C: "[~@3 bb2@2 [bb3,d4,f4]@4 bb2@4 [f2,a3,c4,f4]@6 [f2,a3]@2 [a3,c4,f4]@4 f2@4 [bb2,bb3,d4,f4]@6 ~@2 [bb3,d4,f4]@4 ~@4 [eb2,g3,bb3,eb4]@6 ~@2 [f2,f3,a3,c4]@6 ~@2 [bb2,f3,bb3,d4]@6 bb2 ~ [f3,bb3,d4]@4 ~@4 [f3,bb3,d4]@6 bb2@2 ~@8 [f3,bb3,d4]@6 bb2@2 ~@8 [f3,bb3,d4]@6 bb2@2 [f3,bb3,d4]@4 bb2@2 ~@2 [bb2,bb3,d4,f4]@6 bb2@2 [bb3,d4,f4]@4 bb2@4 [f2,a3,c4,f4]@6 [f2,a3]@2 [a3,c4,f4]@4 f2@4 [bb2,bb3,d4,f4]@6 ~@2 [bb3,d4,f4]@4 bb2@4 [eb2,g3,bb3,eb4]@7 ~ [d2,a3,c4,gb4]@6 ~@2 [g2,bb3,d4,g4]@6 [g2,d3]@2 ~@8 [bb3,d4,g4]@4 [bb3,d4,g4]@2 [g2,d3]@2 [bb3,d4,g4]@4 g2@2 ~@2 [g2,d3,bb3,d4,g4]@6 [g2,d3]@3 [bb3,d4,g4]@4 [g2,d3]@3 ~@19, ~@35 bb2@9 ~@29 bb2@8 ~@4 [f3,bb3,d4]@7 ~@9 [f3,bb3,d4]@8 ~@88 [bb3,d4,g4]@7 ~@52, ~@89 bb2@8 ~@8 bb2@8 ~@88 [g2,d3]@9 ~@46]/8", // Bb F Bb Eb F Bb F Bb …
  D: "[c3,g3,c4,eb4]@3 c3 [g3,c4,eb4]@2 ~@2 [g3,c4,eb4]@3 c3 ~@2 c3@2, ~@12 c3@8 ~@4 [g3,c4,eb4]@7 ~", // Cm
  E: "[f2,a3,c4,eb4,f4]@4 [a3,c4,eb4,f4]@2 ~@2 [a3,c4,eb4,f4]@3 f2 [a3,c4,eb4,f4]@2 f2@2, ~@12 f2@9 ~@11", // F7
  F: "[c3,g3,c4,eb4]@4 [g3,c4,eb4]@2 ~@2 [g3,c4,eb4] ~ [g3,c4,eb4] c3 ~@2 c3@2, ~@12 c3@8 ~@4 [g3,c4,eb4]@7 ~", // Cm
  G: "[f2,a3,c4,f4]@8 [a3,c4,f4]@4 ~@4 [a3,c4,f4]@3 ~ [a3,c4,f4]@2 f2@2 [a3,c4,f4]@4 f2@2 ~@2, ~@12 f2@9 ~@11", // F
  H: "[c3,g3,c4,eb4]@6 c3@2 [g3,c4,eb4]@4 ~@4 [g3,c4,eb4]@6 ~@2 [g3,c4,eb4]@4 c3@3 ~, ~@6 c3@4 ~ c3@2 ~@3", // Cm
  I: "[bb3,db4,e4]@12 [g3,db4,e4]@4 [g3,bb3,db4,e4]@6 [g3,bb3,db4,e4]@6 [g3,bb3,db4,e4]@3 ~, g3@11 ~@21", // Bbdim Dbdim Gdim
  J: "[d3,gb3,c4,d4,gb4]@3 ~ [c4,d4,gb4]@2 ~@2 [c4,d4,gb4]@3 ~ [c4,d4,gb4]@2 [d3,gb3]@2 [c4,d4,gb4]@2 [d3,gb3]@2 [c4,d4,gb4] ~@3 [d3,gb3,c4,d4,gb4]@3 ~@5, ~@3 [d3,gb3]@3 ~@10", // D7 D D7 D D7 D
  K: "~@4 [g3,bb3,d4,g4]@3 g3 [g3,bb3]@2 [g3,bb3,d4,g4]@4 [g2,d3,g3,bb3,d4,g4]@2, ~@8 [g2,d3]@4 ~@2 [g2,d3]@11 ~@7, ~@7 [d4,g4]@3 ~@6", // Gm G5
  L: "[g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@7 ~ [g3,bb3,d4,g4]@2 ~@2 [g3,bb3,d4,g4]@8 [g2,d3,g3,bb3,d4,g4]@4, ~@16 [g2,d3]@11 ~@5", // Gm G5
  M: "[g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@6 [g3,bb3] ~ [g3,bb3,d4]@3 ~ [g3,bb3,d4,g4]@8 [g2,d3,g3,bb3,d4,g4]@4, ~@7 [g2,d3]@6 ~@3, ~@7 g4@3 ~@6, ~@7 d4 ~@8", // Gm G5
  N: "[g3,bb3,d4,g4]@2 [g2,d3,g3,d4,g4]@2 [bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g3,bb3,d4,g4]@6 ~@2 [g3,bb3,g4]@2 [g3,bb3,d4,g4]@2 [d4,g4] ~ [d3,bb3,d4,g4]@5 ~ [g2,d3,g3,bb3,d4,g4]@4, ~@8 [g2,d3]@5 ~ g2@12 ~@6, ~@7 d3@3 g3@4 ~@2, ~@10 bb3 ~@5", // Gm G5 Gm G5 Gm G5
  O: "[g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@6 [g3,bb3]@2 [g3,bb3]@2 [g3,bb3,d4,g4] ~ [g3,bb3,d4,g4]@8 [g2,d3,g3,bb3,d4,g4]@4, ~@7 [g2,d3]@6 ~@3, ~@7 [d4,g4]@2 ~@7", // Gm G5
  P: "[g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@7 ~ [g3,bb3]@2 [g3,bb3,d4,g4] ~ [g3,bb3,d4,g4]@7 ~ [g2,d3,g3,bb3,d4,g4]@4, ~@16 [g2,d3]@11 ~@5", // Gm G5
  Q: "[bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [d3,c4,a4]@6 [a3,c4,a4] ~ [a3,c4,a4]@3 ~ [d3,a3,c4,gb4,a4]@8 [d3,a3,c4,gb4,a4]@4, ~@14 d3@5 ~@13", // Gm D7 Am D7
  R: "[a3,c4,gb4,a4] [d3,a3,c4,gb4,a4] [d3,c4,gb4,a4] [a3,c4,gb4,a4] [d3,a3,c4,gb4,a4]@3 a3 [a3,c4,a4]@2 [a3,c4,gb4,a4]@4 [d3,a3,c4,gb4,a4]@2, ~@14 d3@13 ~@5, ~@7 gb4@3 ~@6, ~@14 a4 ~@17", // Gbdim D7 Gbdim D7 Am Gbdim D7
  S: "[a3,c4,gb4,a4]@2 [d3,a3,c4,gb4,a4]@2 [a3,c4,gb4,a4]@2 [d3,a3,c4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@6 a3@2 [a3,c4,d4]@3 ~ [d3,a3,c4,d4,gb4,a4]@8 [d3,a3,c4,d4,gb4,a4]@4, ~@14 [d3,gb4,a4]@5 ~@13, ~@14 d4 ~@17", // Gbdim D7 Gbdim D7 D
  T: "[a3,c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@2 [c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@6 [a3,c4,d4,gb4,a4] ~ [a3,c4,d4,gb4,a4]@3 ~ [d3,a3,c4,d4,gb4,a4]@8 [d3,a3,c4,d4,gb4,a4]@4, ~@14 d3@5 ~@13", // D7
  U: "[a3,c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4] ~ [a3,c4,d4,gb4,a4]@6 [a3,c4,d4,gb4,a4] ~ [a3,c4,d4,gb4,a4]@3 ~ [d3,a3,c4,d4,gb4,a4]@8 [d3,a3,c4,d4,gb4,a4]@4, ~@6 d3@7 ~ d3@5 ~@13", // D7
  V: "[a3,c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4]@6 [a3,d4,gb4,a4] ~ [a3,c4,d4,gb4,a4]@3 ~ [d3,a3,c4,d4,gb4,a4]@8 [d3,a3,c4,d4,gb4,a4]@4, ~@6 d3@7 ~ d3@5 ~@13", // D7 D D7
  W: "[a3,c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@2 [a3,c4,d4,gb4,a4]@2 [d3,a3,c4,d4,gb4,a4]@2 [g2,d3,g3,bb3,d4,g4]@6 [d4,g4]@2 [g3,bb3,d4,g4]@3 ~ [g2,d3,g3,bb3,d4,g4]@8 [g2,d3,g3,bb3,d4,g4]@4, ~@14 [g2,d3]@5 ~@13, ~@14 g3 ~@17", // D7 Gm G5 Gm G5
  X: "[g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@2 [g2,d3,g3,bb3,d4,g4]@6 [g3,bb3,g4]@2 [g3,bb3,d4,g4]@3 ~ [g2,d3,g3,bb3,d4,g4]@7 ~ [g2,d3,g3,bb3,d4,g4]@3 ~, ~@14 [g2,d3]@5 ~@13, ~@14 d4 ~@17", // Gm G5
  Y: "[f2,c3,f3,a3,c4,f4]@5 ~@3 [bb2,bb3,d4,f4]@6 bb2@2 [bb3,d4,f4]@4 bb2@4 [f2,a3,c4,f4]@6 [f2,a3]@2", // F Bb F
  Z: "[a3,c4,f4]@2 f2@2 [bb2,bb3,d4,f4]@3 ~ [bb3,d4,f4]@2 ~@2 [eb2,g3,bb3,eb4]@3 ~, ~@14 bb2@9 ~@9", // F Bb Eb
  AA: "[f2,f3,a3,c4]@6 ~@2 [bb2,f3,bb3,d4]@6 bb2 ~ [f3,bb3,d4]@4 ~@4 [f3,bb3,d4]@6 bb2@2, ~@5 bb2@2 ~", // F Bb
  AB: "~@4 bb2@4 [bb2,f3,bb3,d4]@6 ~@2 [f3,bb3,d4]@3 ~ [f3,bb3,d4]@2 bb2@2 [f3,bb3,d4]@4 bb2@4, [f3,bb3,d4]@7 ~@7 bb2@6 ~@12", // Bb
  AC: "[f2,f3,a3,c4]@3 ~ [bb2,bb3,d4,f4]@3 bb2 [bb3,d4,f4]@2 bb2@2 [f2,a3,c4,f4]@3 [f2,a3]", // F Bb F
  AD: "[a3,c4,f4]@4 f2@4 [bb2,bb3,d4,f4]@6 ~@2 [bb3,d4,f4]@4 bb2@4 [eb2,g3,bb3,eb4]@7 ~", // F Bb Eb
  AE: "[d2,a3,c4,gb4]@3 ~ [g2,bb3,d4,g4]@3 [g2,d3] ~@4 [bb3,d4,g4]@2 [bb3,d4,g4] [g2,d3], ~@16 [bb3,d4,g4]@7 ~@9, ~@20 [g2,d3]@9 ~@3", // D7 Gm G5 Gm G5 Gm G5
  AF: "[bb3,d4,g4]@4 g2@2 ~@2 [g2,d3,bb3,d4,g4]@6 [g2,d3]@3 [bb3,d4,g4]@4 [g2,d3]@3 ~@8", // Gm G5 Gm G5
  AG: "~@11 [c3,g3,c4,eb4]@6 c3@2 [g3,c4,eb4]@4 ~@4 [g3,c4,eb4]@5, ~@23 c3@8 ~", // Cm
  AH: "~ c3@2 ~@4 c3@4 [f2,a3,c4,eb4,f4]@8 [a3,c4,eb4,f4]@4 ~@4 [a3,c4,eb4,f4]@5, ~@3 [g3,c4,eb4]@7 ~@13 f2@9", // F7 Cm
  AI: "[~ f2@2 [a3,c4,eb4,f4]@4 f2@4 [c3,g3,c4,eb4]@8 [g3,c4,eb4]@4 ~@4 [g3,c4,eb4]@2 ~@2 [g3,c4,eb4]@2 c3@2 ~@4 c3@4 [f2,a3,c4,f4]@8 [a3,c4,f4]@4 ~@4 [a3,c4,f4]@3 ~ [a3,c4,f4]@2 f2@2 [a3,c4,f4]@4 f2@2 ~@2 [c3,g3,c4,eb4]@6 c3@2 [g3,c4,eb4]@4 ~@4 [g3,c4,eb4]@5, ~@23 c3@8 ~@4 [g3,c4,eb4]@7 ~@13 f2@9 ~@23 c3@8 ~]/3", // F7 Cm F Cm
  AJ: "~@3 [g3,c4,eb4]@4 c3@3 ~ [bb3,db4,e4]@12 [g3,db4,e4]@4 [g3,bb3,db4,e4]@5, ~ c3@4 ~@6 g3@11 ~@10", // Cm Bbdim Dbdim Gdim
  AK: "~ [g3,bb3,db4,e4]@6 [g3,bb3,db4,e4]@3 ~ [d3,gb3,c4,d4,gb4]@3 ~ [c4,d4,gb4]@2 ~@2 [c4,d4,gb4]@3 ~ [c4,d4,gb4]@2 [d3,gb3]@2 [c4,d4,gb4]@2 [d3,gb3]@2 [c4,d4,gb4], ~@17 [d3,gb3]@6 ~@9", // Gdim D7 D D7 D D7 D
  AL: "[~@3 [d3,gb3,c4,d4,gb4]@3 ~@5 [c4,d4,gb4]@5 ~@2 gb4@6 ~@18 [d4,gb4]@2 ~@2 [c3,g3,c4,eb4]@6 c3@2 [g3,c4,eb4]@4 ~@4 [g3,c4,eb4]@6 c3@2 ~@4 c3@4 [f2,a3,c4,eb4,f4]@8 [a3,c4,eb4,f4]@4 ~@4 [a3,c4,eb4,f4]@6 f2@2 [a3,c4,eb4,f4]@4 f2@4 [c3,g3,c4,eb4]@8 [g3,c4,eb4]@4 c3@4 [g3,c4,eb4]@2, ~@11 [d2,d3]@10 ~@3 [d2,d3]@10 ~ [d2,d3]@9 ~@14 c3@8 ~@24 f2@9 ~@29, ~@17 [c4,d4]@8 ~@3 [c4,d4,gb4]@10 ~@3 c4@2 ~@27 [g3,c4,eb4]@7 ~@51]/4", // D7 D Cm F7 Cm D Csus2 D7 …
  AM: "[~@2 [g3,c4,eb4]@2 c3@2 ~@4 c3@4 [f2,a3,c4,f4]@8 [a3,c4,f4]@4 ~@4 [a3,c4,f4]@3 ~ [a3,c4,f4]@2 f2@2 [a3,c4,f4]@4 f2@2 ~@2 [c3,g3,c4,eb4]@6 c3@2 [g3,c4,eb4]@4 ~@4 [g3,c4,eb4]@6 ~@2 [g3,c4,eb4]@4 c3@3 ~ [bb3,db4,e4]@12 [g3,db4,e4]@4 [g3,bb3,db4,e4]@6 [g3,bb3,db4,e4]@6 [g3,bb3,db4,e4]@3 ~ [d3,gb3,c4,d4,gb4]@3 ~ [c4,d4,gb4]@2 ~@2 [c4,d4,gb4]@3 ~ [c4,d4,gb4]@2 [d3,gb3]@2 [c4,d4,gb4]@2, ~@6 [g3,c4,eb4]@7 ~@13 f2@9 ~@23 c3@8 ~@2 c3@4 ~@6 g3@11 ~@27 [d3,gb3]@6 ~@6]/4", // Cm F Cm Bbdim Dbdim Gdim D7 D …
  AN: "[[d3,gb3]@2 [c4,d4,gb4] ~@3 [d3,gb3,c4,d4,gb4]@3 ~@5 [c4,d4,gb4]@5 ~@2 gb4@6 ~@18 gb4@2 ~@2 [g2,bb3,d4,g4]@6 g2@2 [bb3,d4,g4]@4 g2@4 [bb3,d4,g4]@6 g2@2 [f2,a3,c4,f4]@6 ~@2 [eb2,g3,bb3,eb4]@7 ~ [g3,bb3,eb4]@4 eb2@3, ~@14 [d2,d3]@10 ~@3 [d2,d3]@10 ~ [d2,d3]@9 ~@42 eb2@2 ~@5, ~@20 [c4,d4]@8 ~@3 [c4,d4,gb4]@10 ~@3 [c4,d4]@2 ~@50]/3", // D D7 Gm F Eb D Csus2 D7 …
  AO: "[~ [f2,a3,c4,f4]@7 ~ [f2,a3,c4,f4]@4 ~@4 [bb3,d4,f4]@7 ~ [bb3,d4,f4]@6 bb2@2 [bb3,d4,f4]@4 bb2@4 [bb3,d4,f4]@4 bb2@4 [eb2,eb4]@8 [g3,bb3,eb4]@4 eb2@3, ~@17 bb2@12 ~@20 [g3,bb3]@6 ~@9]/2", // F Bb Eb Gm
  AP: "[~ [a3,c4,gb4]@7 ~ [a3,c4,gb4]@4 d2@2 ~@2 [g2,bb3,d4,g4]@6 g2@2 [bb3,d4,g4]@4 g2@4 [bb3,d4,g4]@6 g2@2 [f2,a3,c4,f4]@6 ~@2 [eb2,g3,bb3,eb4]@7 ~ [g3,bb3,eb4]@4 eb2@3, ~ d2@8 ~@48 eb2@2 ~@5]/2", // Gbdim Gm F Eb
  AQ: "~ [a3,c4,gb4]@7 ~ [a3,c4,gb4]@4 d2@2 ~@17, ~ d2@8 ~@23", // Gbdim
})).s("gm_acoustic_guitar_steel").gain(0.41).pan(0.4)

// chords · epiano1
const epiano1 = note("<~@3 A@4 B C B@2 C D E F ~@20 G H I J K J@2 L M ~@42>".pickRestart({
  A: "~@5 [d4,g4,bb4] ~@3 [d4,g4,bb4]@2 ~@6 [d4,g4,bb4] ~@3 [d4,g4,bb4] ~@3 [d4,g4,bb4]@3 ~@4", // Gm
  B: "~@5 [c4,gb4,a4] ~@3 [c4,gb4,a4] ~@7 [c4,gb4,a4] ~@3 [c4,gb4,a4] ~@3 [c4,gb4,a4]@3 ~@4", // Gbdim
  C: "~@5 [c4,gb4,a4] ~@3 [c4,gb4,a4] ~@7 [c4,gb4,a4] ~@3 [c4,gb4,a4] ~@3 [c4,gb4,a4]@4 ~@3", // Gbdim
  D: "~@5 [c4,gb4,a4] ~@3 [c4,gb4,a4]@3 ~@5 [c4,gb4,a4] ~@3 [c4,gb4,a4] ~@3 [c4,gb4,a4]@3 ~@4", // Gbdim
  E: "~ [d4,g4,bb4] ~@3 [d4,g4,bb4] ~@3 [d4,g4,bb4] ~@7 [d4,g4,bb4] ~@3 [d4,g4,bb4] ~@3 [d4,g4,bb4]@2 ~@5", // Gm
  F: "~ [d4,g4,bb4] ~@3 [d4,g4,bb4] ~@3 [d4,g4,bb4] ~@7 [d4,g4,bb4] ~@3 [c4,f4,a4]@2 ~@9", // Gm F
  G: "~@12 [d4,g4,bb4] ~@3 [d4,g4,bb4] ~@3 [d4,g4,bb4] ~@7 [d4,g4,bb4] ~@3", // Gm
  H: "[d4,g4,bb4] ~@3 [d4,g4,bb4]@2 ~@10 [d4,g4,bb4] ~@3 [d4,g4,bb4]@2 ~@6 [d4,g4,bb4] ~@3", // Gm
  I: "[d4,g4,bb4] ~@3 [d4,g4,bb4]@3 ~@9 [c4,gb4,a4] ~@3 [c4,gb4,a4] ~@7 [c4,gb4,a4] ~@3", // Gm Gbdim
  J: "[c4,gb4,a4] ~@3 [c4,gb4,a4]@3 ~@9 [c4,gb4,a4] ~@3 [c4,gb4,a4] ~@7 [c4,gb4,a4] ~@3", // Gbdim
  K: "[c4,gb4,a4] ~@3 [c4,gb4,a4]@4 ~@8 [c4,gb4,a4] ~@3 [c4,gb4,a4] ~@7 [c4,gb4,a4] ~@3", // Gbdim
  L: "[c4,gb4,a4] ~@3 [c4,gb4,a4]@4 ~@8 [c4,gb4,a4] ~@3 [c4,gb4,a4]@3 ~@5 [c4,gb4,a4] ~@3", // Gbdim
  M: "[c4,gb4,a4] ~@3 [c4,gb4,a4]@3 ~@25", // Gbdim
})).s("gm_epiano1").gain(0.4).pan(0.6)

// drums · kick
const kick = s("bd").struct("<A B@13 C D@7 E F@6 G ~ H@14 I F@3 J F@2 K L M@5 N O P Q@5 R S T U@15 V>".pickRestart({
  A: "~@29 x ~@2", B: "~@9 x ~@3 x ~@15 x ~@2", C: "~@9 x ~@3 x ~@18", D: "~ x ~@7 x ~@7 x ~@7 x ~@6",
  E: "~@3 x ~@5 x ~@5 x ~@6 x ~@4 x ~@4", F: "~ x ~ x ~ x ~ x", G: "~ x ~ x ~ x ~@2", H: "~@2 x ~@2 x!2 ~",
  I: "~@2 x!2 ~ x ~ x", J: "~ x!3 ~ x ~ x", K: "~@2 x ~@4 x ~@2 x ~@2 x ~@2", L: "~ x ~@4 x ~@8 x ~@7 x ~@7 x",
  M: "~@7 x ~@7 x ~@7 x ~@7 x", N: "~@7 x ~@15 x ~@7 x", O: "~@7 x ~@9 x ~@5 x ~@5 x ~@2",
  P: "~@4 x ~@4 x ~@8 x ~@7 x ~@5", Q: "~ x ~@3 x ~@3 x ~@3 x ~@2", R: "~ x ~@3 x ~@7 x ~@2",
  S: "~ x ~@3 x ~@4 x ~@2 x ~@2", T: "x ~@6 x ~@4 x ~@8 x ~@7 x ~@2", U: "~@5 x ~@7 x ~@7 x ~@7 x ~@2",
  V: "~@5 x ~@7 x ~@18",
})).gain(0.54)

// drums · snare
const snare = s("sd").struct("<~@14 A B@6 C ~ D@7 ~ E F@13 G D@2 H I D@2 J K L@6 M N O@6 P Q R@15 S>".pickRestart({
  A: "~@21 x ~ x ~ x ~ x ~ x ~@2", B: "~@5 x ~@7 x ~@7 x ~@7 x ~@2", C: "~@5 x ~@7 x ~@7 x!2 ~ x!3 ~ x!3 ~", D: "x!4",
  E: "~ x", F: "x!2", G: "x!5 ~@3 x ~@3 x ~@3", H: "x ~@3 x ~@3 x ~@3 x ~ x!2", I: "x!3 ~ x ~@3 x ~@3 x ~@3",
  J: "x!2 ~ x!3 ~ x!3 ~@22", K: "~@11 x ~@7 x ~@7 x ~@4", L: "~@3 x ~@7 x ~@7 x ~@7 x ~@4", M: "~@3 x ~@7 x ~@20",
  N: "~@7 x ~@3 x ~@3 x", O: "~@3 x ~@3 x ~@3 x ~@3 x", P: "~@3 x ~@3 x ~@8", Q: "~@17 x ~@7 x ~@6",
  R: "~ x ~@7 x ~@7 x ~@7 x ~@6", S: "~ x ~@7 x ~@22",
})).gain(0.61)

// drums · snare · soft notes
const snare_soft = s("sd").struct("<~@31 [~@6 x!2 ~@8]!13 ~@42>").gain(0.27)
// … 77 more lines

More by Little Tony