Strudelify

Cercami

Pooh

KeyF majorTempo103 bpm
0:00/0:00
// Cercami — Pooh
// 103 bpm, 4/4, key F 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 101 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
// note: Guitar parts that double another keep only their own notes (fills, solos): guitar program 30.
setcpm(103/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
const piano = note(`<
  ~@8 A B@8 C@7 D@4 E@5 F@3 G@8 H I J K L@5 M N O@2 P Q@3 R@8 S T@8 U@2 V@2 W@2 X Y Z@6 AA@5 AB@3 ~
>`.pickRestart({
  A: "bb2@5 ~@3 bb2@4 [g3,e4]@2 ~@2 [g3,c4,e4]@8 bb2@4 [f3,bb3,d4]@2 ~@2, [f3,bb3,d4]@11 ~ c4 ~@3 bb2@4 ~@12", // C Bb
  B: "[[bb2,d4]@4 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@3 ~@8 [f3,bb3,d4]@3 ~ [bb2,c4,e4]@4 g3@3 ~ [a2,g3,e4]@8 a2@3 ~ [f2,a3,c4,f4]@2 ~@2 f2@6 ~@2 f2@6 ~@2 f2@6 ~@2 f2@5 ~@3 [f2,c4,f4]@6 ~@6 c4@3 ~ bb2@7 ~ bb2@4 [g3,c4] ~@3 bb2@6 ~@5 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [c4,e4]@3 ~ [g3,c4,e4]@3 ~ [g3,c4,e4]@4 ~@4 [f3,bb3,d4]@3 ~ g3@3 ~ g3@2 ~@2 [a2,c4]@12 [a3,c4,f4] ~@3 [f2,a3,f4]@31 ~ a3@5 ~ a3@6 ~@4 bb2@5 ~@2 bb2@4 [g3,e4]@2 ~@2 [g3,c4,e4]@8 bb2@4 [f3,bb3,d4]@2 ~@2 [bb2,f3,bb3,d4]@3, [f3,bb3]@3 ~@5 bb2@4 [g3,c4,e4]@7 ~@4 g3@3 ~@5 c4@11 ~@5 [a3,c4,f4]@30 ~@2 a3@4 ~@2 a3@5 ~@5 [f3,bb3,d4]@11 ~ e4@2 ~@2 [g3,c4,e4]@11 ~@8 g3 ~@27 [g3,e4]@9 ~@7 c4@38 ~@10 [f3,bb3,d4]@11 ~@4 bb2@4 ~@15, ~@16 bb2@5 ~@66 f2@8 ~@24 bb2@5 ~@2 bb2@7 ~ bb2@4 ~@4 bb2@7 ~ [bb2,c4,e4]@7 ~@13 f2@2 ~@34 f4@12 ~@15 c4 ~@22]/8", // Bb C Bb C7 A7 F F5 C5 …
  C: "[~ [g3,c4,e4]@2 ~@2 [g3,c4,e4]@3 ~@5 bb2@4 [f3,bb3,d4]@3 ~ [bb2,c4,e4]@4 g3@3 ~ [a2,g3,e4]@8 a2@3 ~ [f2,a3,c4,f4]@2 ~@2 f2@6 ~@2 f2@6 ~@2 f2@6 ~@2 f2@5 ~@2 [f2,c4,f4]@6 ~@6 c4@3 ~ bb2@7 ~ bb2@4 [g3,c4] ~@3 bb2@6 ~@2 bb2@4 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [c4,e4]@3 ~ [g3,c4,e4]@3 ~ [g3,c4,e4]@4 ~@4 [f3,bb3,d4]@3 ~ g3@3 ~ g3@2 ~@2 [a2,c4]@12 [a3,c4,f4] ~@3 [f2,a3,c4,f4]@15 [a3,db4,e4]@8 [a3,db4,e4]@4 [a3,db4,e4]@4 [a3,db4,e4]@4 [a3,db4,e4]@4 [a3,db4,e4]@4 [bb2,f3,bb3,d4]@9, ~@5 bb2@4 [g3,c4,e4]@7 ~@5 g3@3 ~@5 c4@11 ~@5 [a3,c4,f4]@30 ~ a3@4 ~@2 a3@5 ~@5 [f3,bb3,d4]@11 ~ e4@2 ~@2 [g3,c4,e4]@11 ~@9 g3 ~@27 [g3,e4]@9 ~@59, ~@84 f2@8 ~@32 bb2@7 ~ bb2@4 ~@4 bb2@7 ~ [bb2,c4,e4]@7 ~@13 f2@2 ~@17 a2@28 ~@9]/7", // C Bb C7 A7 F F5 C5 Bb …
  D: "[~@19 d4@3 ~@13 db4@4 a3@8 ~@4 db4@3 d4@12 ~@8 d4@4 ~@4 a3@4 a3@8 ~@4 db4@4 a3@8 ~@4 db4@4 ~@4 d3@6, ~@3 d4@16 ~@4 db4@12 ~@4 db4@12 ~@3 f4@24 ~@50, ~@3 bb3@12 bb3@7 ~@9 a3@8 ~@8 a3@7 a3@16 a3@12 ~@12 a3@8 ~@8 a3@8 [a3,d4,f4]@10, ~@3 f3@8 f3@11 ~@17 [a2,e4]@15 ~@12 d4@8 ~@4 [d4,f4]@8 db4@12 ~@4 db4@12 ~@14, ~@7 bb2@15 ~ [db3,e4]@17 ~@14 d3@32 [db3,e4]@15 ~ [a2,e4]@17 ~@9]/4", // Dm A5 Dm Dbm A5
  E: "[~@2 a3@4 a3@3 ~ a3@3 ~ a3@4 a3@7 ~ g3@7 ~@16 b2@4 bb3@12 ~@16 [f3,d4]@7 ~ f3@8 ~@4 a3@4 ~@8 a3@7 ~ a3@2 ~@9 a3@4 a3@4 ~@4 a2@4 [bb2,f3,bb3,d4]@12, ~@2 [d4,f4]@7 ~ [c2,c3,d4,f4]@15 ~ b2@23 ~@4 bb2@16 bb2@19 ~ [a2,c4]@16 [f2,c4]@15 ~ a2@23 ~@16, ~@26 b3@19 b3@7 ~@13 bb3@12 bb3@11 ~ a3@12 ~@4 a3@8 ~@8 db4@8 db4@19 ~@12, ~@26 d4@15 [d4,g4]@11 ~ d4@28 ~@40 e4@19 [a3,e4]@7 ~@13, ~@33 g3@19 ~ f3@20 f3@8 ~@16 f3@8 ~@4 f3@11 ~@5 a3@7 d4@15 ~@13]/5", // Dm Bb Dm Dm7 Am F5 G5 A5
  F: "[~@16 d4@3 ~@13 db4@4 a3@8 ~@4 db4@4 d4@12 ~@8 d4@3 ~@4 a3@4 a3@8 a3@4 db4, d4@16 ~@4 db4@12 ~@4 db4@12 ~@4 f4@23 ~@21, bb3@12 bb3@7 ~@9 a3@8 ~@8 a3@7 ~ a3@16 a3@11 ~@4 [db3,db4,e4]@13, f3@8 f3@11 ~@17 [a2,e4]@15 ~@13 d4@8 ~@3 [d4,f4]@8 ~@13, ~@4 bb2@15 ~ [db3,e4]@17 ~@15 d3@32 ~@12]/3", // Dbm A5 Dm Dbm
  G: "[~@3 a3@8 ~@4 db4@4 ~@12 a3@4 a3@3 ~ a3@3 ~ a3@4 a3@7 ~ g3@8 ~@16 b2@3 bb3@12 ~@16 [f3,d4]@7 ~ f3@8 ~@4 a3@4 ~@8 a3@8 ~@12 [a3,db4]@4 ~@12 [a3,db4]@7 ~@4 e3@4 ~@12 a1@4 a2@3 ~ bb2@5 ~@3 bb2@4 [g3,e4]@2 ~@2 [g3,c4,e4]@8 bb2@4 [f3,bb3,d4]@2 ~@2 [bb2,d4]@4 [g3,c4,e4]@2 ~@2 [bb2,g3,c4,e4]@3, ~@3 [a2,e4]@17 ~@3 d3@15 ~ [c2,c3,d4,f4]@15 ~ d4@16 [d4,g4]@11 d4@28 ~@48 e3@12 e3@8 e3@11 ~@4 d4@18 ~@14 c4 ~@30, ~@3 db4@12 ~@16 [d4,f4]@7 ~@17 b3@20 b3@7 ~@12 bb3@12 bb3@11 ~ a3@12 ~@4 a3@8 ~@8 [a3,db4]@12 ~@4 [a3,db4]@12 ~@7 [a3,db4]@8 a3@8 [a3,e4]@10 ~@34 [f3,bb3]@3 ~@8, ~@11 a3@8 [a3,d4,f4]@12 ~@24 b2@24 ~@3 bb2@16 bb2@19 ~ [a2,c4]@16 [f2,c4]@16 a2@28 a2@17 ~@2 e3@14 ~@2 [f3,bb3,d4]@11 ~@5 bb2@4 ~@23, ~@63 g3@19 f3@20 f3@8 ~@16 f3@8 ~@4 f3@12 a1@24 a1@15 a1@16 ~@51]/8", // Dm A C Bb C C7 A5 Dm7 …
  H: "~@5 bb2@4 [f3,bb3,d4]@3 ~ [bb2,c4,e4]@4 g3@3 ~ [a2,g3,e4]@8 a2@3, ~ [g3,c4,e4]@7 ~@5 g3@3 ~@5 c4@11", // Bb C7 A7 C
  I: "[f2,a3,c4,f4] ~ f2@3 ~ f2@3 ~ f2@3 ~ f2@2, ~ [a3,c4,f4]@7", // F
  J: "~@4 [f2,c4,f4]@6 ~@6 c4@3 ~ bb2@7 ~ bb2@4, ~@4 a3@4 ~@2 a3@5 ~@5 [f3,bb3,d4]@11 ~, ~@3 f2@2 ~@3", // F5 Bb
  K: "[g3,c4] ~@3 bb2@6 ~@2 bb2@4 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [c4,e4]@3 ~ [bb2,c4]@4, e4@2 ~@2 [g3,c4,e4]@11 ~@5 bb2@7 ~@5, ~@24 g3 ~@3 [g3,e4]@2 ~@2", // C5 Bb C Bbsus2 C
  L: "[[g3,c4,e4]@4 ~@3 [f3,bb3,d4]@3 ~ g3@3 ~ g3@2 ~@2 [a2,c4]@12 [a3,c4,f4] ~@3 [f2,a3,f4]@31 ~ a3@5 ~ a3@6 ~@4 bb2@5 ~@3 bb2@4 [g3,e4]@2 ~@2 [g3,c4,e4]@8 ~@3 [f3,bb3,d4]@2 ~@2 [bb2,d4]@4 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@3 ~@5 bb2@4 [f3,bb3,d4]@3 ~ [bb2,c4,e4]@4 g3@3 ~ [a2,g3,e4]@8 a2@3 ~ [f2,a3,c4,f4]@2, ~@4 bb2@7 [bb2,c4,e4]@7 ~ [g3,e4]@9 ~@3 f2@2 ~@2 c4@38 ~@10 [f3,bb3,d4]@11 ~@5 bb2@4 ~@4 bb2@5 ~@2 [f3,bb3]@3 ~@5 bb2@4 ~@34, ~@67 f4@12 ~@16 c4 ~@30 [g3,c4,e4]@7 ~@5 g3@3 ~@5 c4@11 ~@3]/5", // C Bb Am F C Bb C Bb …
  M: "~@2 f2@6 ~@2 f2@6 ~@2 f2@6 ~@2 f2@5 ~, ~ [a3,c4,f4]@15", // F
  N: "~@2 [f2,c4,f4]@6 ~@6 c4@3 ~ bb2@7 bb2@4 [g3,c4] ~@2, ~@2 a3@4 ~@2 a3@5 ~@5 [f3,bb3,d4]@11 e4@2 ~, ~@5 f2@4 ~@7", // F5 C5 Bb
  O: "[~ bb2@6 ~@2 bb2@4 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [c4,e4]@3 ~ [g3,c4,e4]@3 ~ [g3,c4,e4]@4 ~@4 [f3,bb3,d4]@3 ~ g3@3 ~ g3@2 ~@2 [a2,c4]@12 [a3,c4,f4] ~@2, ~ [g3,c4,e4]@11 ~@5 bb2@7 ~ bb2@4 ~@4 bb2@7 ~ [bb2,c4,e4]@7 ~@13 f2@2 ~, ~@21 g3 ~@27 [g3,e4]@9 ~@6]/2", // Bb C Bb Am F C C7 C
  P: "~ [f2,a3,c4,f4]@16 [a3,db4,e4]@8 [a3,db4,e4]@3 [a3,db4,e4]@4, ~@17 a2@15", // F A
  Q: "[[a3,db4,e4]@4 [a3,db4,e4]@4 [a3,db4,e4]@4 [bb2,f3,bb3,d4]@11 ~@17 d4@3 ~@13 db4@4 a3@8 ~@4 db4@4 d4@12 ~@4 a3@4, ~@6 d4@4 ~ db4@3 ~ db4@3 ~@4 d4@2, ~@24 bb3@12 bb3@7 ~@9 a3@8 ~@8 a3@7 ~ a3@16 ~@4, ~@24 f3@8 f3@11 ~@17 [a2,e4]@15 ~@21, ~@28 bb2@15 ~ [db3,e4]@17 ~@15 [d3,f4]@20]/3", // A Bb A5 Dbm Dm
  R: "[d4@3 ~@4 a3@4 a3@8 ~@4 db4@4 a3@8 ~@4 db4@4 ~@12 a3@4 a3@3 ~ a3@3 ~ a3@4 a3@7 ~ g3@8 ~@16 b2@3 bb3@12 ~@16 [f3,d4]@7 ~ f3@8 ~@4 a3@4 ~@8 a3@8 ~@12 [a3,db4]@4 ~@12 [a3,db4]@7 ~@4 e3@4 ~@12 a1@4 a2@3 ~ bb2@5 ~@3 bb2@4 [g3,e4]@2 ~@2 [bb2,g3,c4,e4]@3, ~@3 [d4,f4]@8 [db3,e4]@15 ~ [a2,e4]@17 ~@3 d3@15 ~ [c2,c3,d4,f4]@15 ~ d4@16 [d4,g4]@11 d4@28 ~@48 e3@12 e3@8 e3@11 ~@4 d4@18 ~@14 c4 ~@6, ~@11 db4@12 ~@4 db4@12 ~@16 [d4,f4]@7 ~@17 b3@20 b3@7 ~@12 bb3@12 bb3@11 ~ a3@12 ~@4 a3@8 ~@8 [a3,db4]@12 ~@4 [a3,db4]@12 ~@7 [a3,db4]@8 a3@8 [a3,e4]@10 ~@21, ~@19 a3@8 ~@8 a3@8 [a3,d4,f4]@12 ~@24 b2@24 ~@3 bb2@16 bb2@19 ~ [a2,c4]@16 [f2,c4]@16 a2@28 a2@17 ~@2 e3@14 ~@2 [f3,bb3,d4]@11 ~@8, ~@87 g3@19 f3@20 f3@8 ~@16 f3@8 ~@4 f3@12 a1@24 a1@15 a1@16 ~@27]/8", // Dm A C C7 Dm Dbm A5 Dm7 …
  S: "~@5 bb2@4 [f3,bb3,d4]@2 ~@2 [bb2,d4]@4 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@3 ~@5 bb2@3, ~@13 [f3,bb3]@3 ~@5 bb2@4 [g3,c4,e4]@7", // Bb C Bb5 C
  T: "[~ [f3,bb3,d4]@3 ~ [bb2,c4,e4]@4 g3@3 ~ [a2,g3,e4]@8 a2@3 [f2,a3,c4,f4]@2 ~@2 f2@6 ~@2 f2@6 ~@2 f2@6 ~@2 f2@5 ~@3 [f2,c4,f4]@6 ~@6 c4@3 ~ bb2@7 ~ bb2@4 [g3,c4] ~@3 bb2@6 ~@2 bb2@4 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [c4,e4]@3 ~ [g3,c4,e4]@3 ~ [g3,c4,e4]@4 ~@3 [f3,bb3,d4]@3 ~ g3@3 ~ g3@2 ~@2 [a2,c4]@12 [a3,c4,f4] ~@3 [f2,a3,f4]@31 ~ a3@5 ~ a3@6 ~@4 bb2@5 ~@3 bb2@4 [g3,e4]@2 ~@2 [g3,c4,e4]@8 ~@3 [f3,bb3,d4]@2 ~@2 [bb2,d4]@4 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@3 ~@5 bb2@4 [f3,bb3,d4]@2, ~@5 g3@3 ~@5 c4@11 ~@4 [a3,c4,f4]@30 ~@2 a3@4 ~@2 a3@5 ~@5 [f3,bb3,d4]@11 ~ e4@2 ~@2 [g3,c4,e4]@11 ~@9 g3 ~@26 [g3,e4]@9 ~@7 c4@38 ~@10 [f3,bb3,d4]@11 ~@5 bb2@4 ~@4 bb2@5 ~@2 [f3,bb3]@3 ~@5 bb2@4 ~@10, ~@68 f2@8 ~@32 bb2@7 ~ bb2@4 ~@4 bb2@7 [bb2,c4,e4]@7 ~@13 f2@2 ~@34 f4@12 ~@16 c4 ~@30 [g3,c4,e4]@7 ~@3]/8", // Bb C7 A7 F F5 C5 Bb C …
  U: "[~@2 [bb2,c4,e4]@4 g3@3 ~ [a2,g3,e4]@8 a2@3 ~ [f2,a3,c4,f4]@2 ~@2 f2@6 ~@2 f2@6 ~@2 f2@6 ~@2 f2@5 ~@3 [f2,a3,c4,f4]@6, ~@2 g3@3 ~@5 c4@11 ~@5 [a3,c4,f4]@30 ~@8]/2", // C7 A7 F
  V: "[~@6 c4@3 ~ bb2@7 bb2@4 [g3,c4] ~@3 bb2@6 ~@2 bb2@4 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [c4,e4]@3 ~ [g3,c4,e4]@3 ~ [g3,c4,e4]@4 ~@4 [f3,bb3,d4]@3, a3@5 ~@5 [f3,bb3,d4]@11 e4@2 ~@2 [g3,c4,e4]@11 ~@9 g3 ~@18, ~@2 f2@8 ~@31 bb2@7 ~ bb2@4 ~@4 bb2@7]/2", // C5 Bb C Bb C
  W: "[~ g3@3 ~ g3@2 ~@2 [a2,c4]@12 [a3,c4,f4] ~@3 [f2,a3,c4,f4]@32 ~@7, ~ [bb2,c4,e4]@7 ~ [g3,e4]@9 ~@3 f2@2 ~@41]/2", // Am F C7 C
  X: "~@4 [bb1,bb2,f3,bb3,d4]@2 ~@2 [bb1,bb2]@2 [c4,e4] ~ [bb1,bb2,g3,c4,e4]@2 ~@2, ~@20 g3 ~@11", // Bb C C7
  Y: "[bb1,bb2]@4 [f3,bb3,d4]@3 ~ [f3,bb3,d4]@3 ~ [g3,c4,e4]@2 ~@2 [bb1,bb2,g3,c4,e4]@3 ~ [g3,c4,e4]@4 [bb1,bb2]@4 [f3,bb3,d4]@3 ~, ~@2 [bb1,bb2] ~@5", // Bb C C7 C Bb
  Z: "[[bb1,g3,e4]@3 ~ g3@2 ~@2 [bb2,f3,bb3,d4]@4 ~@4 [bb1,bb2]@4 [g3,c4,e4,g4]@2 ~@2 [bb1,bb2,g3,c4,e4]@4 ~@3 [bb1,bb2]@4 [f3,bb3,d4,f4]@3 ~ [bb1,bb2,bb3,d4,f4]@4 [g3,c4,e4,g4]@2 ~@2 [g3,c4,e4,g4]@2 ~@2 [g3,c4,e4,g4]@4 [bb1,bb2]@4 [f3,bb3,d4,f4]@3 ~ [bb1,bb2,c4,e4,g4]@4 g3@2 ~@2 [bb1,bb2,bb3,d4]@5 ~@3 [bb1,bb2]@4 [c4,e4,g4,c5]@2 ~@2 [bb1,bb2,g3,c4,e4]@4 ~@4 [bb1,bb2]@4 [f3,bb3,d4,f4,bb4]@2 ~@2 [f3,bb3,d4,f4,bb4]@3 ~ [g3,c4,e4,g4,c5]@2 ~@2 [g3,c4,e4,g4,c5]@2 ~@2 e4@4 [bb1,bb2]@4 [f3,bb3,d4]@2 ~@2 [bb1,bb2,g3,c4,e4,g4,c5]@3 g3@2 ~@2 [a1,e4]@8 a1@4 [f2,a3]@3 ~ f2@15 ~@17 f4@10, [bb2,c4]@4 ~@2 bb1@5 ~@36 [bb1,bb2]@4 ~@20 f3@3 ~@9 g3 ~@19 [bb1,bb2]@4 ~@4 [bb1,bb2]@4 ~@19 [a2,g3]@11 ~ f4 ~@3 a3@19 ~@3 a3@18 ~@2, ~@8 f4@8 ~@8 g4@7 ~@8 f3@2 ~@22 g3@3 ~@5 [f4,bb4]@8 ~@8 [g4,c5]@8 ~@12 b3 ~@7 [g3,c4,g4,c5]@7 ~ [f4,bb4]@4 ~@7 c4@14 ~@2 [c4,f4]@24 ~@4 c4@14, ~@166 f2@25 ~]/6", // Edim Bb C C7 Bb C Bb C7 …
  AA: "[~@6 bb2@5 ~@3 bb2@4 [g3,e4]@2 ~@2 [g3,c4,e4]@8 bb2@4 [f3,bb3,d4]@2 ~@2 [f3,bb3]@3 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@3 ~@5 bb2@4 [f3,bb3,d4]@3 ~ [bb2,c4,e4]@4 g3@3 ~ [a2,g3,e4]@8 a2@3 ~ [f2,a3,c4,f4]@2 ~@2 f2@6 ~@2 f2@6 ~@2 f2@6 ~@2 f2@5 ~@3 [f2,c4,f4]@6 ~@6 c4@3 ~ bb2@7 ~@4 [g3,c4] ~@3 bb2@6 ~@2 bb2@4, ~@6 [f3,bb3,d4]@11 ~ c4 ~@3 bb2@4 ~@12 [bb2,d4]@6 ~ bb2@4 [g3,c4,e4]@7 ~@5 g3@3 ~@5 c4@11 ~@5 [a3,c4,f4]@30 ~@2 a3@4 ~@2 a3@5 ~@5 [f3,bb3,d4]@11 e4@2 ~@2 [g3,c4,e4]@11 ~, ~@125 f2@8 ~@8 bb2@5 ~@14]/5", // C Bb Bb5 C Bb C7 A7 F …
  AB: "[[f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [c4,e4]@3 ~ [g3,c4,e4]@3 ~ [g3,c4,e4]@4 ~@4 [f3,bb3,d4]@3 ~ g3@3 ~ g3@2 ~@2 [a2,g3,c4,e4]@11 ~ [f2,a3,c4,f4]@3 ~ [a3,c4,f4]@44, ~@4 bb2@7 ~ bb2@4 ~@4 bb2@7 ~ [bb2,c4,e4]@7 ~@17 f2@40 ~@4, ~@8 g3 ~@87]/3", // Bb C Bb Am7 F C7
})).s("gm_piano").gain(0.35)

// chords · acoustic guitar steel
const acoustic_guitar_steel = note(`<
  ~@8 A B@4 C@4 D@4 E@3 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@2 AE@3 AF AG AH@2 AI AJ AK AL AM AN AO AP
  AQ AR AS AT@2 AU@2 AV@4 AW@2 AX@2 AY AZ BA@2 ~@6 BB@2 BC BD@3 BE BF BG@2 ~
>`.pickRestart({
  A: "[f3,bb3,d4]@5 ~ [g3,b3,c4,e4] ~ [g3,c4,e4]@5 ~ [f3,bb3,d4] ~", // Bb Cmaj7 C Bb
  B: "[[f3,bb3,d4]@3 ~ [g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@6 ~ [f3,bb3,d4]@3 ~ [g3,c4,e4]@7 ~ [g3,c4]@11 ~ [a3,c4,f4]@2 ~@2 [c4,f4]@24 ~@24 [f3,bb3,d4]@9 ~@3 [g3,c4,e4] ~@3 [g3,c4,e4]@9 ~@2 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@2, ~@31 e4@8 ~@8 a3@18 ~@63]/4", // Bb C Bb C C5 F F5 Bb …
  C: "[~@2 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@6 ~@2 [f3,bb3,d4]@2 ~@2 [g3,c4,e4]@5 ~@3 [g3,c4,e4]@10 ~@2 [a3,c4,f4]@2 ~@2 [a3,c4]@20 ~@28 [f3,bb3,d4]@10 ~ [g3,b3,c4,e4]@2 ~@2 [g3,c4,e4]@10 ~@2 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3, ~@23 f4@13 ~@28]/4", // C Bb C F Am Bb Cmaj7 C …
  D: "[~ [g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@6 ~@2 [f3,bb3,d4]@3 ~ [g3,c4,e4]@7 ~ [g3,c4]@11 ~ [a3,c4,f4]@2 ~@2 [c4,f4]@24 ~@23 [f3,bb3,d4]@9 ~@3 [g3,c4,e4] ~@3 [g3,c4,e4]@9 ~@3 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~, ~@29 e4@8 ~@8 a3@18 ~@65]/4", // C Bb C C5 F F5 Bb C …
  E: "[[g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@6 ~@2 [f3,bb3,d4]@2 ~@2 [g3,c4,e4]@5 ~@3 [g3,c4,e4]@10 ~@2 [a3,c4,f4]@2 ~@2 a3@15 [a3,db4,e4]@8 [a3,db4,e4]@2 ~@2 [a3,db4,e4] ~@3 [a3,db4,e4] ~@3 [a3,db4,e4] ~@3 [a3,db4,e4]@2 ~@11, ~@22 f4@13 ~@13, ~@11 c4@5 ~@8]/3", // C Bb C F A
  F: "~@3 [bb3,d4] ~@11 [f3,bb3,d4] ~@16", G: "~@3 [a3,db4] ~@7 db4 ~@3 [a3,db4] ~@16",
  H: "~@2 [bb3,d4] ~@11 [d4,e4] ~@17", I: "~@2 [a3,db4] ~@11 [a3,db4] ~@17", J: "~@2 [d4,f4] ~@11 [d4,f4] ~@17",
  K: "~ [c4,e4] ~@11 [c4,e4] ~@18", L: "~ [bb3,d4] ~@11 [bb3,d4] ~@18", M: "~ [a3,c4] ~@11 [a3,c4] ~@18",
  N: "~ [a3,db4] ~@10 [a3,db4] ~@3 bb3 ~@3 [f3,bb3,d4]@10 ~@2", O: "[bb3,d4] ~@11 [f3,bb3,d4] ~@19",
  P: "[a3,db4] ~@7 db4 ~@3 [a3,db4] ~@19", Q: "[bb3,d4] ~@10 [d4,e4] ~@19 [a3,db4]", R: "~@11 [a3,db4] ~@19 [d4,f4]",
  S: "~@11 [d4,f4] ~@19 [c4,e4]", T: "~@11 [c4,e4] ~@18 [bb3,d4] ~", U: "~@10 [bb3,d4] ~@19 [a3,c4] ~",
  V: "~@10 [a3,c4] ~@19 [e3,a3] ~", W: "~@10 [a3,db4] ~@18 [a3,db4] ~@2", X: "~@9 [a3,db4] ~@11 [f3,bb3,d4]@10 ~",
  Y: "~ [g3,b3,c4,e4]@2 ~@2 [g3,c4,e4]@10 ~@2 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~", // Cmaj7 C Bb C
  Z: "~ [g3,c4,e4]@6 ~@2 [f3,bb3,d4]@3 ~ [g3,c4,e4]@7 ~ [g3,c4]@11, ~@21 e4@8 ~@3", // C Bb C C5
  AA: "[a3,c4,f4] ~ [c4,f4]@12 ~@2, ~@2 a3@9 ~@5", AB: "~@20 [f3,bb3,d4]@9 ~@3",
  AC: "[g3,c4,e4] ~@3 [g3,c4,e4]@9 ~@3 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~@2", // C Bb C
  AD: "[[g3,c4,e4]@6 ~ [f3,bb3,d4]@2 ~@2 [g3,c4,e4]@5 ~@3 [g3,c4,e4]@10 ~@2 [a3,c4,f4]@2 ~@2 [a3,c4]@20 ~@9, ~@35 f4@26 ~@3]/2", // C Bb C F Am
  AE: "[~@19 [f3,bb3,d4]@10 ~@2 [g3,b3,c4,e4]@2 ~@2 [g3,c4,e4]@10 ~ [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@6 ~@2 [f3,bb3,d4]@3 ~ [g3,c4,e4]@7 ~ [g3,c4]@11 ~ [a3,c4,f4]@2, ~@41 e4@4 ~@3]/3", // Bb Cmaj7 C Bb C Bb C C5 …
  AF: "~ [c4,f4]@12 ~@3, ~ a3@9 ~@6", AG: "~@18 [f3,bb3,d4]@9 ~@2 [g3,c4,e4] ~@2",
  AH: "[~ [g3,c4,e4]@9 ~@3 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@6 ~@2 [f3,bb3,d4]@2 ~@2 [g3,c4,e4]@5 ~@3 [g3,c4,e4]@10 ~@2 [a3,c4,f4]@2 ~]/2", // C Bb C Bb C F
  AI: "~ a3@16 [a3,db4,e4]@8 [a3,db4,e4]@2 ~ [a3,db4,e4] ~@3, ~ f4@26 ~@5, ~ c4@20 ~@11", // A
  AJ: "[a3,db4,e4] ~@3 [a3,db4,e4] ~@3 [a3,db4,e4]@2 ~@14 [bb3,d4] ~@7", AK: "~@4 [f3,bb3,d4] ~@19 [a3,db4] ~@7",
  AL: "db4 ~@3 [a3,db4] ~@19 [bb3,d4] ~@7", AM: "~@3 [d4,e4] ~@19 [a3,db4] ~@8", AN: "~@3 [a3,db4] ~@19 [d4,f4] ~@8",
  AO: "~@3 [d4,f4] ~@19 [c4,e4] ~@8", AP: "~@3 [c4,e4] ~@18 [bb3,d4] ~@9", AQ: "~@2 [bb3,d4] ~@19 [a3,c4] ~@9",
  AR: "~@2 [a3,c4] ~@19 [e3,a3] ~@9", AS: "~@2 [a3,db4] ~@18 [a3,db4] ~@10",
  AT: "[~ [a3,db4] ~@11 [f3,bb3,d4]@10 ~@2 [g3,b3,c4,e4]@2 ~@2 [g3,c4,e4]@10 ~@2 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@6 ~]/2", // A Bb Cmaj7 C Bb C
  AU: "[~ [f3,bb3,d4]@3 ~ [g3,c4,e4]@7 ~ [g3,c4]@11 [a3,c4,f4]@2 ~@2 [c4,f4]@24 ~@12, ~@13 e4@8 ~@7 a3@18 ~@18]/2", // Bb C C5 F F5
  AV: "[~@12 [f3,bb3,d4]@9 ~@3 [g3,c4,e4] ~@3 [g3,c4,e4]@9 ~@3 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@6 ~ [f3,bb3,d4]@2 ~@2 [g3,c4,e4]@5 ~@3 [g3,c4,e4]@10 ~@2 [a3,c4,f4]@2 ~@2 [a3,c4]@20 ~@17, ~@91 f4@26 ~@11]/4", // Bb C Bb C Bb C F Am
  AW: "[~@11 [f3,bb3,d4]@10 ~@2 [g3,b3,c4,e4]@2 ~@2 [g3,c4,e4]@10 ~ [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@6 ~@2 [f3,bb3,d4]@2]/2", // Bb Cmaj7 C Bb C Bb
  AX: "[~@2 [g3,c4,e4]@7 ~ [g3,c4]@11 ~ [a3,c4,f4]@2 ~@2 [c4,f4]@24 ~@14, ~@5 e4@4 ~@4 a3@9 ~@10]/2", // C C5 F F5
  AY: "~@10 [f3,bb3,d4]@9 ~@2 [g3,c4,e4] ~@3 [g3,c4,e4]@7", // Bb C
  AZ: "~@5 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@6 ~@2 [f3,bb3,d4]@2 ~", // Bb C Bb
  BA: "[~ [g3,c4,e4]@5 ~@3 [g3,c4,e4]@10 ~@2 [a3,c4,f4]@2 ~@2 f4@26 ~@13, ~@25 a3@23 ~@16, ~@25 c4@20 ~@19]/2", // C F
  BB: "[~@6 [e3,g3,c4]@10 ~@2 [f3,a3,c4]@2 ~@2 c4@23 ~@19, ~@22 a3@15 ~@27, ~@22 f3@11 ~@31]/2", // C F
  BC: "~@3 [f3,bb3,d4]@5 ~ [g3,b3,c4,e4] ~ [g3,c4,e4]@5", // Bb Cmaj7 C
  BD: "[~@2 [f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@6 ~@2 [f3,bb3,d4]@3 ~ [g3,c4,e4]@7 ~ [g3,c4]@11 ~ [a3,c4,f4]@2 ~@2 [c4,f4]@24 ~@19, ~@37 e4@8 ~@8 a3@18 ~@25]/3", // Bb C Bb C C5 F F5
  BE: "~@5 [f3,bb3,d4]@9 ~@2 [g3,c4,e4] ~@3 [g3,c4,e4]@9 ~@3", // Bb C
  BF: "[f3,bb3,d4]@2 ~@2 [f3,bb3,d4]@3 ~ [g3,c4,e4]@2 ~@2 [g3,c4,e4]@2 ~@2 [g3,c4,e4]@6 ~@2 [f3,bb3,d4]@2 ~@2 [g3,c4,e4]@4", // Bb C Bb C
  BG: "[~@4 [e3,g3,c4]@11 ~ [f3,a3,c4]@3 ~ [f3,a3]@23 ~@21, ~@10 c4@13 ~@9]/2", // C F
})).s("gm_acoustic_guitar_steel").gain(0.15).pan(0.7)

// bass · electric bass finger
const bass = note(`<
  ~@8 A B@6 C@8 D E@2 F@4 G@3 H I J@2 K@3 L M N O P Q R S T@4 U V W X Y Z AA AB AC AD@5 AE@2 AF@8 AG@8 AH AI AJ@7 AK@4
  AL AM@3
>`.pickRestart({
  A: "bb1@8 ~@4 bb1@2 ~@2 bb1@11 ~@5",
  B: "[bb1@9 ~@3 bb1@2 ~@2 bb1@14 ~ a1@11 ~ f1 ~@3 f1@14 ~@2 f1@10 ~@2 f1 ~@3 f1@14 ~@2 bb1@9 ~@3 bb1@2 ~@2 bb1@14 ~ bb1@10 ~@2 bb1 ~@3 bb1@13 ~@3 a1@11 ~ f1@2 ~@2 f1@12 ~@4 f1@2]/6",
  C: "[~@4 a1@5 ~ c2@4 f2@5 ~ f2@6 c2@4 bb1@8 ~@3 bb1@2 ~@2 bb1@11 ~@5 bb1@9 ~@3 bb1@2 ~@2 bb1@14 ~@2 a1@11 ~ f1 ~@3 f1@14 ~@2 f1@10 ~ f1 ~@3 f1@14 ~@2 bb1@9 ~@3 bb1@2 ~@2 bb1@14 ~@2 bb1@10 ~@2 bb1 ~@3 bb1@13 ~@3 a1@11 ~ f1@2 ~@2 f1@12 ~@3 a1@5]/8",
  D: "~@3 a1@2 ~@2 a1@2 ~@2 a1@2 ~@2 a1 ~@3 a1 ~@3 bb1@9",
  E: "[~@11 bb1@2 ~@2 bb1@2 ~@2 bb1@3 ~ db2@13 ~ d2 ~ db2 ~ d2@2 eb2@3 ~ e2@3 ~ a1@3 d2@10]/2",
  F: "[~@2 d2 ~@11 d2 ~@3 d2@2 ~@2 db2@16 ~@2 a1 ~ a1@3 ~ db2@4 a1@4 d2@15 ~ d2@2 ~@2 c2@8 c2@5 ~@3 b1@15 g1@4 b1@4 g1@4 bb1@11]/4",
  G: "[~ bb1@6 f1 ~ bb1@4 f1@4 bb1@3 ~ f1@4 a1@12 f1@8 f1@2 ~@2 f1@8 a1@10 ~ a1@2 b1@2 db2@3 ~ d2@4 e2@3 ~@13]/3",
  H: "~@8 bb1@2 ~@2 bb1@2 ~@2 bb1@3 ~ db2@12", I: "~@2 d2 ~ db2 ~ d2@2 eb2@3 ~ e2@3 ~ a1@4 d2@11 ~",
  J: "[d2 ~@10 d2 ~@3 d2@2 ~@2 db2@16 ~@2 a1 ~ a1@3 ~ db2@4 a1@4 d2@13]/2",
  K: "[~@3 d2@2 ~@2 c2@8 c2@5 ~@3 b1@16 g1@4 b1@4 g1@3 bb1@12 bb1@6 f1 ~ bb1@4 f1@4 bb1@3 ~ f1@4 a1@10]/3",
  L: "~@2 f1@8 f1@2 ~@2 f1@8 a1@9 ~", M: "~@2 a1 ~@3 a1@8 ~@4 a1@3 ~@4 a1@4 ~@3",
  N: "~ a1 ~@3 a1@5 ~@3 a1@4 b1 ~ db2 ~ bb1@8 ~@3", O: "~ bb1@2 ~@2 bb1@11 ~@5 bb1@9 ~@2",
  P: "~ bb1@2 ~@2 bb1@14 ~@2 a1@11", Q: "f1 ~@3 f1@14 ~@2 f1@10 ~@2", R: "f1 ~@3 f1@14 ~@2 bb1@9 ~@3",
  S: "bb1 ~ bb1@7 ~ bb1@5 ~",
  T: "[bb1 ~@3 bb1@13 ~@2 a1@11 ~ f1@2 ~@2 f1@12 ~@4 f1@6 a1@5 ~ c2@4 f2@5 ~ f2@6 c2@4 bb1@8 ~@4 bb1@2 ~@2 bb1@11 ~@4 bb1@9 ~@3 bb1@2]/4",
  U: "~@2 bb1@14 ~@2 a1@11 ~ f1 ~", V: "~@2 f1@14 ~@2 f1@10 ~@2 f1 ~", W: "~@2 f1@14 ~@2 bb1@9 ~@2 bb1@2 ~",
  X: "~ bb1@14 ~@2 bb1@10 ~@2 bb1 ~@2", Y: "~ bb1@13 ~@3 a1@11 ~ f1@2 ~", Z: "~ f1@12 ~@4 a1@7 ~ a1@2 ~ a1@2 ~@2",
  AA: "a1@2 ~@2 a1 ~@3 a1 ~@3 bb1@11 ~@9", AB: "bb1@2 ~@2 bb1@2 ~@2 bb1@3 ~ db2@13 ~ d2 ~ db2 ~ d2@2",
  AC: "eb2@3 ~ e2@3 ~ a1@4 d2@11 ~ d2 ~@7",
  AD: "[~@3 d2 ~@3 d2@2 ~@2 db2@16 ~@2 a1 ~ a1@3 ~ db2@4 a1@4 d2@15 ~ d2@2 ~@2 c2@8 c2@5 ~@3 b1@16 g1@4 b1@4 g1@3 bb1@12 bb1@6 f1 ~ bb1@4 f1@4 bb1@3 ~ f1@4 a1@12 f1@6]/5",
  AE: "[~@2 f1@2 ~@2 f1@8 a1@9 ~@3 a1 ~@3 a1@8 ~@4 a1@3 ~@4 a1@4 ~@4 a1 ~@3 a1@3]/2",
  AF: "[~@5 a1@4 b1 ~ db2 ~ bb1@8 ~@4 bb1@2 ~@2 bb1@11 ~@5 bb1@9 ~@3 bb1@2 ~@2 bb1@14 ~@2 a1@11 f1 ~@3 f1@14 ~@2 f1@10 ~@2 f1 ~@3 f1@14 ~@2 bb1@9 ~@3 bb1@2 ~@2 bb1@14 ~@2 bb1@10 ~@2 bb1 ~@3 bb1@13 ~@2 a1@11 ~ f1@2 ~@2 f1@12 ~@4 f1@6 a1@5 ~ c2@4 f2@5]/8",
  AG: "[~ f2@6 c2@4 bb1@8 ~@4 bb1@2 ~@2 bb1@11 ~@4 bb1@9 ~@3 bb1@2 ~@2 bb1@14 ~@2 a1@11 ~ f1 ~@3 f1@14 ~@2 f1@10 ~@2 f1 ~@3 f1@14 ~@2 bb1@9 ~@2 bb1@2 ~@2 bb1@14 ~@2 bb1@10 ~@2 bb1 ~@3 bb1@13 ~@3 a1@11 ~ f1@2 ~@2 f1@12 ~@4 f1@2 ~@2 f1@2 ~@2 f1@2 ~ f1@2 ~@2 f1@2 ~@2 f1@2 ~@2]/8",
  AH: "f1@2 ~@2 f1@2 ~@2 bb1@3 ~@5 bb1@3 ~@5 bb1@3 ~@3 bb1 ~", AI: "bb1@2 ~@6 bb1@3 ~@5 bb1@3 ~@5 bb1@3 ~@3 bb1 ~",
  AJ: "[bb1@3 ~@5 bb1@3 ~@5 bb1@3 ~@5 bb1@3 ~@2 bb1 ~ bb1@4 ~@4 bb1@3 ~@5 bb1@3 ~@5 bb1@2 ~@4 bb1 ~ bb1@3 ~@5 bb1@2 ~@6 bb1@3 ~@5 bb1@3 ~@3 bb1 ~ bb1@3 ~@5 bb1@3 ~@5 bb1@3 ~@5 bb1@3 ~@3 bb1 ~ bb1@5 ~@2 a1@11 ~ f1@2 ~@2 f1@15 ~ f1@6 a1@6 c2@4 f2@8 e2@4 c2@4 bb1@8 ~@4 bb1@2 ~@2 bb1@10]/7",
  AK: "[~@6 bb1@9 ~@2 bb1@2 ~@2 bb1@14 ~@2 a1@11 ~ f1 ~@3 f1@14 ~@2 f1@10 ~@2 f1 ~@3 f1@14 ~@2 bb1@9 ~@2 bb1@2 ~@2 bb1@12]/4",
  AL: "~@4 bb1@10 ~@2 bb1 ~@3 bb1@12", AM: "[~@4 a1@11 ~ f1@2 ~@2 f1@75 ~]/3",
})).s("gm_electric_bass_finger").gain(0.36)

// chords · pad warm
const pad_warm = note("<~@4 A@2 B@2 ~@16 C@8 D E@5 F@5 ~@15 G@6 H@5 ~@17 I@5 ~@10>".pickRestart({
  A: "[bb1,bb2]/2", B: "[[a1,a2]@3 [f1,f2]@12 ~]/2",
  C: "[~@3 [bb3,d4]@20 [a3,db4]@31 [a3,d4]@30 ~@2 [a3,db4]@31 ~ [a3,d4]@35 ~ [b3,d4]@27 [bb3,d4]@35 ~ [a3,c4]@31 ~ [a3,db4]@7]/8", // Bb A D5 A D5 Bm Bb Am …
  D: "~@5 [bb3,d4]@3", E: "[[bb3,d4]@20 [a3,db4]@32 [a3,d4]@30 ~ [a3,db4]@31 ~ [a3,d4]@35 ~ [b3,d4]@9]/5",
  F: "[~@18 [bb3,d4]@35 ~ [a3,c4]@31 ~ [a3,db4]@63 ~@11]/5", // Bb Am A
  G: "[~@24 [bb3,d4]@20 [a3,db4]@32 [a3,d4]@30 ~ [a3,db4]@31 ~ [a3,d4]@35 ~ [b3,d4]@17]/6", // Bb A D5 A D5 Bm
  H: "[~@10 [bb3,d4]@35 ~ [a3,c4]@31 ~ [a3,db4]@63 ~@19]/5", I: "[~@4 [bb1,bb2]@63 ~@13]/5",
})).s("gm_pad_warm").gain(0.16)

// chords · pad sweep
const pad_sweep = note("<A@2 B@2 A@2 C@2 ~@93>".pickRestart({
  A: "[f4,bb4,c5]/2", B: "[[e4,g4,c5]@12 [f4,a4,c5]@51 ~]/2", C: "[[e4,g4,c5]@12 [f4,a4]@45 ~@7, ~@3 c5@12 ~]/2",
})).s("gm_pad_sweep").gain(0.12)

// chords · overdriven guitar
const overdriven_guitar = note(`<
  ~@8 A B@2 C@7 D@7 E F@3 G H I J K L@2 M@2 N O P Q R@3 S T@7 U@4 V W X Y@2 Z@2 AA AB AC@6 AD@8 AE@5 ~@5 AF@3 AG@3 AH
  AI@4
>`.pickRestart({
  A: "[f3,bb3]@27 ~ [f3,bb3] ~@3", B: "[[f3,bb3]@31 [e3,g3]@11 ~ [f3,a3]@2 ~@2 [f3,a3]@16 g4]/2",
  C: "[f4 ~ a3@2 g3 f3 ~ c5 ~@2 f4@2 ~ a3@2 f5@7 ~ c5@4 f5@2 ~@2 [f3,bb3]@27 [f3,bb3] ~@3 [f3,bb3]@31 ~ [e3,g3]@12 [f3,a3]@2 ~@2 [f3,a3]@40 ~@8 [f3,bb3]@27 [f3,bb3] ~@3 [f3,bb3]@31 ~ [e3,g3]@3, ~ c4@2 ~@5 a4@2 ~@12 e5@2 ~@5 d5@17 ~@178, ~@9 g4@2 ~ c4@2 ~@210]/7", // Bb5 Em F Bb5 Em
  D: "[~@9 [f3,a3]@2 ~@2 [f3,a3]@40 ~@7 [f3,bb3]@27 ~ [f3,bb3] ~@3 [f3,bb3]@31 ~ [e3,g3]@12 [f3,a3]@2 ~@2 [f3,a3]@15 [e3,a3]@2 ~@2 [e3,a3]@2 ~@2 [e3,a3]@2 ~@2 [e3,a3] ~@3 [e3,a3] ~@3 [e3,a3] ~@3 [e3,a3] ~@3 bb3@12 [f4,bb4]@2 ~@27, ~@183 f3@11 ~@30]/7", // F Bb5 Em F A5 Bb5
  E: "~@3 [e4,a4] ~@28", F: "~@2 [e4,a4] ~@29", G: "~ [d4,g4] ~@30", H: "~ [f4,bb4] ~@30", I: "~ [e4,a4] ~@30",
  J: "~ [f4,a4] ~@10 [f4,a4] ~@7 [f4,bb4]@11 ~, ~@20 g4 ~@11", K: "[f4,bb4] ~@15",
  L: "[[e4,a4] ~@5 a4 ~ db5 ~@2 d5 ~@4 e5 ~@2 g5@10 f5 ~@2 [e4,a4] ~@30 [e4,a4], ~@31 d5@12 ~@21]/2", // A5
  M: "[~@6 a4 db5 ~@3 d5 ~@3 e5 ~@3 g5@11 f5 [e4,a4] ~@31 [d4,g4], ~@31 d5@13 ~@20]/2", N: "~@30 [f4,bb4] ~",
  O: "~@30 [e4,a4] ~", P: "~@22 [e3,a3]@9 ~", Q: "~@2 [e3,a3] ~@3 [e3,a3]@8 ~@4 [e3,a3]@2 ~@5 [e3,a3]@3 ~@4",
  R: "[~ [e3,a3]@2 ~@2 [e3,a3]@15 ~ [f3,bb3]@27 ~ [f3,bb3] ~@3 [f3,bb3]@31 ~ [e3,g3]@11]/3", // A5 Bb5 Em
  S: "[f3,a3]@2 ~@2 [f3,a3]@16 ~ f4 c4@2 ~ g3 f3 ~ g4 ~ c4@2, ~@20 g4@3 ~ a3@2 ~@3 f4@2 ~", // F
  T: "[~@2 f3@2 ~ f4 ~ a3@2 g3 f3 ~ g4 ~ c4@2 ~@2 f3@2 bb3@27 ~ [f3,bb3] ~@3 [f3,bb3]@31 [e3,g3]@12 [f3,a3]@2 ~@2 [f3,a3]@40 ~@8 f5@11 ~ g5@3 ~ g5@11 [f3,bb3] ~@3 f5@4 g5@3 ~ g5@3 ~ g5@7 ~ f5@4 g5@8 [e3,g3,g5]@12 [a3,a5]@2, a3@2 ~@2 g4@3 ~@6 f4@2 ~@2 g3@2 ~ f3@16 ~@111 [f3,bb3]@27 ~@4 [f3,bb3]@31 ~@13 f3 ~, ~ g3@2 ~@3 c4@2 ~@8 a3@2 ~@156 f5@3 ~@47]/7", // Bb5 Em F Bb5 Em A Bb5
  U: "[~@2 [f3,a3]@40 ~@8 f5@11 g5@3 ~ g5@12 [f3,bb3] ~@3 f5@4 g5@3 ~ g5@3 ~ g5@8 f5@4 g5@7 ~ [e3,g3,g5]@12 [a3,a5]@3, ~@2 a5@28 ~@20 [f3,bb3]@27 f5@3 ~ [f3,bb3]@31 ~@13 f3 ~@2]/4", // F Bb5 Em A Bb5
  V: "~ [f3,a3]@16 [e3,a3]@2 ~@2 [e3,a3]@2 ~@2 [e3,a3]@2 ~ [e3,a3] ~@3, ~ a5@21 ~@10", // F A5
  W: "[e3,a3] ~@3 [e3,a3] ~@3 [e3,a3] ~@3 bb3@12 [f4,bb4]@2 ~@6, ~@12 f3@11 ~@9", X: "~@24 [e4,a4] ~@5 a4 ~",
  Y: "[db5 ~@2 d5 ~@4 e5 ~@2 g5@10 f5 ~@2 [e4,a4] ~@30 [e4,a4] ~@6 a4 db5, ~@23 d5@12 ~@29]/2", // A5
  Z: "[~@3 d5 ~@3 e5 ~@3 g5@11 f5 [e4,a4] ~@31 [d4,g4] ~@8, ~@23 d5@13 ~@28]/2", AA: "~@22 [f4,bb4] ~@9",
  AB: "~@22 [e4,a4] ~@9", // A5
  AC: "[~@14 [e3,a3]@9 ~@3 [e3,a3] ~@3 [e3,a3]@8 ~@4 [e3,a3]@2 ~@5 [e3,a3]@3 ~@5 [e3,a3]@2 ~@2 [e3,a3]@15 ~ [f3,bb3]@27 ~ [f3,bb3] ~@3 [f3,bb3]@31 ~ [e3,g3]@11 [f3,a3]@2 ~@2 [f3,a3]@16 ~ f4 c4@2 ~ g3 f3 ~ g4 ~ c4@2 ~@2 f3@2 ~ f4 ~ a3, ~@172 g4@3 ~ a3@2 ~@3 f4@2 ~ a3@2 ~@2 g4@3 ~, ~@185 g3@2 ~@3 c4@2]/6", // A5 Bb5 Em F
  AD: "[~ g3 f3 ~ g4 ~ c4@2 ~@2 f3@2 bb3@27 ~ [f3,bb3] ~@3 [f3,bb3]@31 [e3,g3]@12 [f3,a3]@2 ~@2 [f3,a3]@40 ~@8 f5@11 ~ g5@3 ~ g5@11 [f3,bb3] ~@3 f5@4 g5@3 ~ g5@3 ~ g5@7 ~ f5@4 g5@8 [e3,g3,g5]@12 [a3,a5]@3 ~ [f3,a3]@38, ~@5 f4@2 ~ a3@2 ~@156 f5@3 ~@49 a5@28 ~@10, ~@9 g3@2 ~ f3@16 ~@111 [f3,bb3]@27 ~@4 [f3,bb3]@31 ~@13 f3 ~@41]/8", // Bb5 Em F Bb5 Em A F Bb5
  AE: "[~@10 f5@11 g5@3 ~ g5@12 [f3,bb3] ~@3 f5@4 g5@3 ~ g5@3 ~ g5@8 f5@4 g5@7 ~ [e3,g3,g5]@12 [a3,a5]@3 ~ [f3,a3]@47 ~@24, ~@10 [f3,bb3]@27 f5@3 ~ [f3,bb3]@31 ~@13 f3 ~@3 a5@21 ~@50]/5", // Bb5 Em A F Bb5
  AF: "[~@6 [e3,g3]@12 [f3,a3]@3 ~ [f3,a3]@43 ~@5 f5@11 ~ g5@3 ~ g5@10, ~@35 [f3,bb3]@13]/3", // Em F Bb5
  AG: "[~@2 [f3,bb3] ~@3 f5@3 g5@3 ~ g5@3 ~ g5@7 ~ f5@4 g5@8 [e3,g3,g5]@12 [a3,a5]@3 ~ [f3,a3]@40 ~@3, ~@2 f5@3 ~ [f3,bb3]@31 ~@12 f3 ~@3 a5@28 ~@15]/3", // Bb5 Em A F Bb5
  AH: "~@5 f5@11 g5@3 ~ g5@12, ~@5 [f3,bb3]@27", // Bb5
  AI: "[[f3,bb3] ~@3 f5@4 g5@3 ~ g5@3 ~ g5@8 f5@4 g5@7 ~ [e3,g3,g5]@12 [a3,a5]@3 ~ [f3,a3]@47 ~@29, f5@3 ~ [f3,bb3]@31 ~@13 f3 ~@3 a5@52 ~@24]/4", // Bb5 Em A F Bb5
})).s("gm_overdriven_guitar").gain(0.23).pan(0.3)

// chords · lead 3 calliope
const lead_3_calliope = note("<A B C@2 D E F@2 ~@93>".pickRestart({
  A: "[d5,f5]@11 ~ [e5,g5]@2 ~@2 [e5,g5]@11 ~ [d5,f5]@2 ~@2", // Dm Em Dm
  B: "[d5,f5]@3 ~ [e5,g5]@3 ~ [e5,g5]@3 ~ [e5,g5]@7 ~ [d5,f5]@3 ~ [e5,g5]@6 ~@2", // Dm Em Dm Em
  C: "[[e5,g5]@11 ~ [f5,a5]@3 ~ a5@27 ~@21, ~@2 f5@3 ~@3]/2", D: "[d5,f5]@5 ~ [e5,g5] ~ [e5,g5]@5 ~ [d5,f5] ~",
  E: "[d5,f5]@3 ~ [e5,g5]@2 ~@2 [e5,g5]@2 ~@2 [e5,g5]@7 ~ [d5,f5]@3 ~ [e5,g5]@5 ~@3", // Dm Em Dm Em
  F: "[[e5,g5]@11 ~ [f5,a5]@2 ~@2 a5@32 ~@16, ~@16 f5@29 ~@19]/2", // Em F
})).s("gm_lead_3_calliope").gain(0.07)

// other · marimba
const marimba = note("<A B C D E F G H ~@93>".pickRestart({
  A: "~@8 f5@2 f4@2 bb4@2 f5@2 ~@4 bb4@2 f5@2 ~@2 bb4 ~ f5@2 ~@2",
  B: "~@4 bb4 ~ f4@2 f5@2 bb4 ~ f4@2 f5@2 bb4@2 ~@2 f5@2 bb4@2 f4@2 f5@2 ~@4",
  C: "~@4 a4 ~ f4 ~ f5@2 c5@2 f4@2 f5@2 c5 ~ f4@2 f5@2 f4@4 ~@6, ~@20 a4 ~@11",
  D: "~@4 f4@2 a4@2 f5@2 f4@2 a4@2 f5@2 f4@2 a4@2 f5@2 ~@2 a4@2 f5@3 ~@3",
  E: "~@4 f4@2 ~@2 f5@2 bb4 ~ f4@2 f5@2 bb4@2 f4@2 f5@2 bb4@2 ~@2 f5@2 bb4@2 ~@2",
  F: "~@12 bb4 ~@3 f5@2 bb4 ~ f4@2 f5@2 bb4 ~ f4@2 f5@2 bb4@2",
  G: "f4@3 ~@5 bb4@2 ~@2 a4@2 f4@2 f5@2 a4@2 ~@2 f5@2 a4@2 f4@2 f5@2 a4@2", H: "~ f5@2 ~@3 a4 f4 f5 a4 ~ f5 ~@4",
})).s("gm_marimba").gain(0.06)

// other · marimba · soft notes
const marimba_soft = note("<A B ~ C ~ D E F ~@93>".pickRestart({
  A: "~@18 f4 ~@5 f4@2 ~@6", B: "~@9 f4 ~@4 bb4 ~", C: "~@11 f4 ~@4", D: "~@14 f4 ~@17", E: "~@10 f4 ~@5",
  F: "f4@2 ~@18 f4 ~@11",
})).s("gm_marimba").gain(0.03)

// chords · lead 2 sawtooth
const lead_2_sawtooth = note(`<
// … 322 more lines

More by Pooh