Strudelify

Famous Last Words

Billy Joel

KeyE majorTempo140 bpm
0:00/0:00
// Famous Last Words — Billy Joel
// 140 bpm, 4/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 160 bars on a 32-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 · [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 · piano
const piano = note(`<
  [c2@3 ~ b3 ~@3 d2 ~@7 c2@2 ~@2 b3 ~@3 d2 ~@7]
  [c2@2 ~@2 b3 ~@3 d2 ~@7 c2@2 ~@3 b3 ~@2 d2 ~@7]
  ~@158
>`).s("gm_piano").gain(0.26)

// chords · piano
const piano_2 = note(`<
  ~ A B@3 C D@7 E@2 F@2 G@2 H@2 I J K@6 L@3 M@4 N@6 O P@2 Q@2 R@2 S T U@7 V@2 W X@3 Y Z AA AB@3 AC@2 AD@3 AE@6 AF AG@3
  AH AI@2 AJ@2 AK@2 AL AM AN AO@5 AP@3 AQ AR@7 AS AT@3 AU@4 AV AW@6 AX AY AZ BA@3 BB BC@3 BD@4 BE BF@2 BG@4 BH BI BJ@2
  BK BL BM@3 BN BO BP@2
>`.pickRestart({
  A: "~@12 f#3 ~@7 f#4@4 d#4@3 ~@2 d#4 ~@2, b2@8 f#3@7 ~, ~@8 b3@17 ~@3 b3@3 ~, ~@2 d#4@3 ~@3",
  B: "[~@12 a3 ~@7 [c#4,f#4]@2 ~@2 b3 ~@19 g#3 ~@10 g#2@5 e4@4 ~@12 g3 ~@3 g3 ~@6 g2@8 ~, a2@23 ~@9 g#2@16 ~@4 [b3,e4]@5 ~@7 g2@14 ~@18, ~@8 [b3,d#4,f#4]@8 a3@7 ~@5 [g#3,b3]@10 ~@2 [b3,e4]@8 g#3@9 ~@3 [g3,b3]@10 ~@2 [b3,e4]@8 ~@4 [g3,b3,e4]@10 ~@2]/3", // F#5 E5 B G#m E5 G E5 Em
  C: "~@8 c#4@2 ~@2 f#3 ~@7 c#4@2 ~@2 b3@2 ~@2 f#4 ~@3, b2@23 ~@9, ~@2 [b3,d#4,f#4]@2 f#3@3 ~, ~@20 f#4 ~@3 f#4 ~@7", // B
  D: "[~@8 c#4@2 ~@2 a3 ~@7 [c#4,f#4]@2 ~@2 b3 ~@19 g#3 ~@6 [b3,e4]@4 g#2@5 ~@15 g3 ~@4 g3@3 ~@4 g2@6 ~@14 f#3@2 ~@2 b3@4 [c#4,f#4]@2 ~@2 b3@2 ~@2 c#4@4 ~@12 a3 ~@4 a3@4 [b3,f#4]@3 a2@3 ~@17 g#3@2 ~@10 g#2@5 ~@15 g3 ~@4 g3@2 ~@6 c#3@7 ~, a2@27 ~@4 g#2@17 ~@16 g2@21 ~@10 b2@24 ~@8 a2@21 ~@12 g#2@16 ~@15 g2@15 ~@18, ~@8 [b3,d#4,f#4]@8 a3@9 ~@2 [g#3,b3]@11 ~@2 [b3,e4]@8 g#3@6 ~@6 [g3,b3]@8 ~@4 [b3,e4]@8 ~@4 [g3,b3,e4]@10 ~@9 c#4@2 ~@18 [b3,d#4,f#4]@10 ~@3 [b3,c#4]@10 ~@10 [g#3,b3]@11 ~ [b3,e4]@9 ~@2 [b3,e4]@7 ~@14 [b3,e4]@7 ~@6 [b3,e4]@6 ~@5, ~@104 [d#4,f#4]@10 ~@21 f#4@10 ~@31 g#3@7 ~@5 [g3,b3]@9 ~@15 g3@7 ~@5]/7", // F#5 E5 F#5 B5 B G#m E5 G …
  E: "[~@11 f#3 ~@11 c#4@4 ~ a#3@2 ~@2 [d#4,f#4]@7 b3@2 ~@3 [a#3,c#4,f#4]@4 ~@5 f#4@4 f#2@2 ~ [a#3,c#4] f#4 ~@2, f#2@20 f#4@7 ~@5 b3@4 ~@16 [a#3,c#4]@5 ~@7, ~@8 [a#3,c#4]@14 ~@10 f#2@21 ~@11, ~@8 f#3@14 ~@2 f#3@5 ~@3]/2", // D#m F# A#m
  F: "[[a#3,c#4,f#4]@4 ~@8 e3 ~@31 e3@2 ~@2 e3@3 ~ f#2@4 g#2@8, e2@16 e3@25 ~@23, ~@8 [a3,c#4,e4]@10 ~@2 [a3,e4]@4 b2@7 e2@19 ~@14, ~@21 c#4@6 ~ [g#3,b3]@36, ~@28 e4@7 ~@5 e4@24]/2", // F# A A5 G#m
  G: "[~@12 c#3@2 ~@9 c#3@4 ~@5 [b3,d#4]@7 ~@5 [c#4,f#4]@4 ~@4 a#3@3 ~@2 a#3 ~ f#2@3 ~@2, f#2@20 [a#3,c#4,f#4]@10 ~ f#2@20 ~@13, ~@8 [a#3,c#4,f#4]@8 f#3@8 ~@3 f#3@17 ~@4 f#3@11 ~@5, ~@32 f#4@11 ~@21, ~@40 a#3@9 ~@7 [c#4,f#4]@4 ~@4]/2", // B F#5 F# F#5
  H: "[~@8 [f#3,g#3,b3,d#4]@8 ~@7 [f#3,g#3,d#4]@2 ~@6 [a2,e3,g#3,a3]@11 ~@3 [f#3,g#3,d#4]@8 ~@4 [b3,c#4]@3 ~@4, g#2@30 ~@14 g#2@11 ~ [f#2,e3,f#3,a3]@5 ~@3, ~@8 c4 ~@7 d#3@12 ~@36, ~@23 b3 ~@7 c#4@8 ~@5 b3@7 ~@13]/2", // G#m7 G#7 Amaj7 G#7 Bsus2 F#m7
  I: "e2@8 ~@3 e2@4 g#2@8 ~ b3@4 g#2@4, e3, g#3@22 ~ g#3@5 ~@4, ~@2 b3@3 ~@3",
  J: "[a3,c#4]@7 e3@5 [a3,c#4]@7 e3@4 a3 c#4 ~@3 a2@4, a2@3 ~", // A
  K: "[[e4,g#4]@5 ~@3 [d#4,f#4] ~@3 [d#4,f#4]@11 ~@17 [d#4,f#4] ~@3 d#4@7 c#4@4 a2@3 ~@18 g#3 ~@2 g#3@4 c#4@4 g#3@5 ~@13 [b3,d#4]@3 a3@2 ~@6 b3@3 a3@3 ~@2 e3@2 ~@2 [e4,g#4]@5 ~@3 [d#4,f#4] ~@11 b3@4 [d#4,f#4]@3 ~@5 [e4,g#4]@5 ~@3 [d#4,f#4] ~@11 c#4@4 b3@8, b2@24 ~@7 [e4,g#4]@7 ~@6 f#4@12 ~@16 e4@16 ~@4 [e4,g#4]@5 ~@7 e4@17 ~@18 d#4@7 ~@10 b3@20 a3@9 ~@7, b3@18 ~@5 b3@28 ~@9 [g#3,b3]@11 b3@10 ~@11 b3@11 ~@2 c#4@16 ~@6 b3@16 f#3@16 ~@13 d#4@7 ~@13, ~@32 [a2,a3]@21 ~@11 g#2@21 ~@10 a2@23 ~@10 b2@20 ~@12 a2@24 ~@8, ~@140 f#4@7 ~@25 f#4@11 ~@9]/6", // E D#m B E D#m E D#m E …
  L: "[~@8 [b3,e4]@8 ~@4 b3@3 ~ g#2@6 ~@13 a3 ~@3 a3@4 b3@4 a3@2 ~@15 [d#4,f#4] ~@2 [d#4,f#4]@5 ~@4 b3@3 [d#4,f#4]@3 ~@3 b3@3, g#2@20 [c#4,e4]@15 ~@4 b3@2 ~@19 b3@21 ~@15, ~@8 g#3@2 ~@6 g#3@7 ~@8 a2@21 ~@8 g#4@8 ~@28, ~@40 [c#4,e4]@16 ~@3 e4@8 ~@13 f#3@16, ~@64 b2@19 ~@13]/3", // E5 D#m C#m
  M: "[[e4,g#4]@5 ~@3 [d#4,f#4] ~@3 [b3,d#4,f#4]@4 a3@4 ~ b3@2 ~ a3@2 ~@2 e4@4 ~@10 g#3 ~@4 g#3@3 ~@5 g#2@6 ~@11 c#4@7 e3@5 b3@4 e3@7 ~@9 c#4@2 ~@2 f#3 ~@8 c#4@3 ~ b3@2 ~ [b3,d#4,f#4]@4, a2@25 ~@7 g#2@15 ~@4 [g#3,b3]@12 a2@21 ~@11 b2@23 ~@10, ~@8 b3@2 ~@10 [c#4,f#4]@2 ~@6 [g#3,b3]@11 e4@25 ~@7 [a3,e4]@10 ~@3 a3 ~@19 b3@9 f#3@12 ~@3, ~@72 b3 ~@31 [d#4,f#4]@15 ~@5 c#4@2 ~@2]/4", // E D#m B G#m F#5 G#m A5 D#m
  N: "[~@12 a3 ~@3 a3@4 [b3,f#4]@4 a2@2 ~@18 g#3 ~@7 [b3,e4]@4 g#2@5 ~@14 g3 ~@4 g3@2 ~@6 g2@4 g3@2 ~@22 c#4@3 ~ b3@2 ~@18 a3 ~@3 a3@4 b3@4 a2@4 ~@11 g3@3 ~@2 g3 ~@11 g#2@2 ~@2 g3@2 ~@2, a2@21 ~@11 g#2@17 ~@15 g2@17 ~@14 b2@25 ~@8 a2@19 ~@12 g2@14 ~@19, ~@7 f#4@10 ~@11 g#3@11 ~ e4@8 g#3@9 ~@4 [g3,b3]@10 ~ b3@8 ~@4 [g3,b3]@7 ~@13 b3@8 f#3@13 ~@11 d#4@7 ~@13 e4@15 ~@8 [b3,e4]@13, ~@8 c#4@12 ~@8 b3@21 ~@12 e4@6 ~@6 e4@9 ~@3 e4@8 ~@11 f#4@14 ~ f#4@2 ~@15 f#4@16 ~@40, ~@104 c#4 d#4@12 ~@8 [b3,d#4,f#4]@10 ~ c#4@13 ~@7 b3@8 ~@12 g#3@7 ~@9]/6", // B5 E5 G E5 B
  O: "~@8 [g3,b3,e4]@6 ~@2 g3@4 ~@3 g2@2 ~@3 f#3@3 ~, g2@4 ~ [b3,e4]@3", // Em E5
  P: "[~@11 f#3 ~@8 [a#3,c#4,f#4]@4 ~@4 [a#3,c#4]@2 ~@3 [b3,f#4]@5 ~@2 [a#3,c#4] f#4 ~@3 [a#3,f#4]@4 ~@4 [a#3,c#4,f#4]@4 f#2@3 [a#3,c#4,f#4] ~@3, f#2@20 ~@4 c#3@8 f#2@17 ~@15, ~@8 [a#3,c#4,f#4]@8 f#3@28 ~@5 f#3@8 ~@7, ~@32 d#4@5 ~@7 c#4@5 ~@15]/2", // F# A#m B5 A#m D#m F#
  Q: "[~@9 [a3,c#4] ~@15 [c#4,e4]@3 ~@2 e4@3 ~@11 e3 ~@11 e2@3 e3@3 ~@2, [a#3,c#4,f#4]@4 ~@5 e4@2 ~@2 [a3,c#4,e4]@7 ~@4 a3@3 ~@2 [g#3,b3]@19 e3@8 ~@8, ~ e2@16 e3@23 e4@9 ~@3 [g#3,b3,e4]@12, ~@33 e2@16 ~@15]/2", // A C#m F# A G#m E
  R: "[~@11 c#3 ~@11 c#3@3 ~@6 [b3,d#4,f#4]@5 ~@3 [b3,d#4,f#4]@2 ~@2 [a#3,c#4,f#4]@4 ~@8 f#2@4 f#3@2 ~@2, f#2@22 ~@9 f#2@17 ~@16, ~@7 [a#3,c#4,f#4]@9 f#3@7 ~@3 f#3@15 ~@7 f#3@8 ~@8, ~@19 [a#3,c#4,f#4]@9 ~@23 [a#3,c#4,f#4]@8 ~@5]/2", // B F#
  S: "~@11 d#3 ~@8 b3@3 g#2@5 d#3@3 ~, g#2@19 [f#3,g#3,d#4]@6 ~@7, ~@7 [f#3,g#3,b3,d#4]@8 ~ d#3@6 ~@10", // G#7 G#m7
  T: "[a2,e3,g#3]@11 ~ [f#3,g#3,b3,d#4]@7 ~@5 [e3,f#3,a3,c#4]@2 ~@6, [a3,c#4]@8 ~@4 g#2@12 f#2 ~@7", // Amaj7 G#m7 F#m7 A
  U: "[e2@8 ~@4 e2@4 g#2@5 ~@4 g#2@2 g#2@5 ~@20 a3@4 a2@4 e3@3 ~ b2@8 [d#4,f#4] ~@2 [d#4,f#4]@14 ~@7 [e4,g#4]@6 ~@2 [d#4,f#4] ~@15 b3@4 f#4 ~@11 b3@11 ~@8 g#3@3 ~@10 b3 ~@3 e3 ~@8 b3@3 a3@3 a2@3 ~@5 a#2@2 ~@6 f#3 ~@8 c#4@4 ~@4 [d#4,f#4] ~@3, [g#3,b3]@13 ~@3 [g#3,b3]@11 ~@5 a2@13 e3@10 ~@56 a3@14 ~@2 g#3@26 ~@15 [a3,c#4]@10 ~@21 b3@9 f#3@13 ~@3, ~@8 e4@9 ~@4 e4@34 ~@8 [e4,g#4]@5 ~@40 d#4@14 ~@13 e4@4 ~@8 e4@40 ~@12 c#4 d#4@14 ~@3 b3@5 ~@2, ~@32 a3@8 b3@15 ~@8 b3@54 ~@34 g#2@7 ~@2 a2@14 ~@2 e3@11 ~@4 b2@23 ~@10, ~@32 b3 c#4@22 ~@53 f#4@11 ~@80 f#4@15 ~@10]/7", // D#m E D#m G#m A E
  V: "[[e4,g#4]@5 ~@3 f#4 d#4 ~@6 a3@4 [c#4,f#4]@2 ~@2 b3@2 ~@2 e4@4 ~@11 g#3 ~@4 g#3@2 ~@2 g#3@3 g#2@4 g#3@3 ~@2, a2@6 ~@2 g#2@3 ~@5, b3@18 ~@10 [g#3,b3]@13 ~@11 b3@12, f#4 ~@11 [d#4,f#4]@7 ~@21 e4@11 e4@13]/2", // E F#5 G#m D#m
  W: "~@8 b3@2 ~@2 e3 ~@7 b3@3 ~ a3@3 e3@3 ~@2, a2@5 ~@3, ~@4 e4@7 ~@5, ~@8 c#4@8 e3@7 ~@9",
  X: "[[e4,g#4]@5 ~@3 [d#4,f#4] ~@7 f#3@2 ~@2 c#4@4 ~@12 b3@3 ~ [d#4,f#4] ~@3 [b3,d#4,f#4]@4 a3@4 [c#4,f#4]@3 a3@2 ~@18 g#3 ~@4 g#3@4 ~@4 g#2@7 ~, [b2,b3]@20 ~@12 a2@21 ~@11 g#2@16 ~@16, ~@11 f#4@12 ~@5 [e4,g#4]@7 ~@37 e4@8 ~@4 e4@9 ~@3, ~@12 d#4@10 ~@2 b3@10 ~@25 [g#3,b3]@11 ~ b3@9 ~@16]/3", // E D#m B F#5 B E G#m
  Y: "[a2,a3]@16 ~ b3@14 ~, [c#4,e4]@13 ~@3 [g#2,g#3,e4]@16", // A C#m
  Z: "~ [f#2,c#4,f#4]@13 ~@3 [e2,e3]@9 ~@6, [f#3,a#3]@12 ~@4 [g#3,b3,e4]@9 ~@7", // F#5 E F# E
  AA: "d3@9 ~@15 d2@4 d3@3 ~, a3, [d2,f#3]@5 f#3@3, d4@6 ~@3 d4@23, ~@2 d3 ~", // D
  AB: "[~@12 a2 ~@3 a2@4 a3 ~@2 a3@5 e3@3 ~@12 e3 ~@8 g#3@2 ~@18 e3@2 ~@6 c#4@4 d#4@4 e2@4 ~@4, a2@8 e3@17 ~@6 e2@16 ~@5 e4@5 ~@6 f#4@33, ~@7 a3@12 ~ b3@5 ~@15 [g#3,b3,e4]@9 ~@2 b3@4 ~@8 [b3,d#4]@19 ~@2 b3@12, ~@8 c#4@13 ~@27 e3@7 e2@27 ~@14, ~@76 e3@9 ~@11]/3", // E B
  AC: "[~@12 d3 ~@3 d3@4 ~@4 d2@3 d3@3 ~ a2@8 ~ [a3,c#4]@8 a2@4 ~@3 a2@3 ~ b2@3 ~@2, ~ d2@17 ~@46, ~@8 [f#3,a3,d4]@10 ~@2 [f#3,a3,d4]@11 ~@8 e3@10 ~@3 [e3,a3,c#4]@12]/2", // A D A
  AD: "[~@11 b2@2 ~@10 b2@8 ~@13 b2@3 ~@4 [f#3,b3]@5 ~@19 b2@2 ~@10 e2 ~@4 d3@3 ~, e2@22 ~@9 e2@27 ~@6 e2@17 ~@15, ~@7 f#3@2 ~@6 e3@23 ~ [e3,f#3]@2 ~@7 e3@5 ~@3 e3@11 ~@5 [e3,g3,b3]@6 ~@2 e3@7 ~@9, ~@8 [g#3,b3]@10 ~ [g#3,b3]@17 ~@3 b3@11 ~@46, ~@40 g#3@11 ~@9 [g3,b3]@10 ~@14 [g3,b3]@11 ~]/3", // B5 Esus2 Em G#m G
  AE: "[~@12 d3 ~@3 d3@4 ~@3 d2@4 ~ d2 ~@2 a2@8 a3@9 ~@7 a3@5 ~@15 e3 ~@3 e3@4 ~@7 e3@3 ~@14 f#3@2 ~@7 d#4@4 ~@4 d#4 ~@3 [e4,g#4]@5 ~@7 a3 ~@6 c#4@2 ~@2 b3@2 ~@18 g#3 ~@4 g#3@3 ~@4 g#2@2 ~@7, d2@13 ~@14 d3@3 ~@9 e3@13 a2@10 ~@2 e2@13 ~@6 e4@11 ~@9 d#4@10 ~@23 [d#4,f#4]@13 ~@43, ~@8 [f#3,a3,d4]@8 ~@4 [f#3,a3,d4]@11 ~@8 c#4@7 ~@2 b3@8 ~@4 e3@7 ~@4 g#3@22 ~@19 f#4@7 ~@25 a3@8 ~@3 [g#3,b3]@11 ~@14 [g#3,b3,e4]@12, ~@72 b3@22 ~@9 b3@14 ~@3 b3@27 ~@21 [b3,e4]@10 ~@14, ~@87 e2@5 ~@3 b2@13 ~@20 a2@24 ~@7 g#2@13 ~@20]/6", // E D#m D G#m E E5
  AF: "~@8 [g3,b3,e4]@4 g3 ~@3 g3@4 ~@4 g2@4 g3@3 ~, g2@18 ~@2 [b3,e4]@11 ~", // Em E5
  AG: "[~ a#2 ~@6 b3@4 f#3 ~@6 c#4@4 ~@18 c#4@2 ~@5 a3@4 b3@4 a3@2 ~@3 a#3 ~@13 g#3 ~@4 g#3@2 ~@5 g#2@3 ~@2 [g#3,b3,e4]@4, ~ b2@22 ~@5 [d#4,f#4]@11 ~ f#4@2 ~@2 f#4@12 ~@5 e4@5 ~@6 e4@9 ~@15, ~@8 [d#4,f#4]@14 ~@2 b3@9 ~@11 c#4@7 ~@9 [g#3,b3]@12 ~@12 [g#3,b3,e4]@5 ~@7, ~@8 c#4@2 ~@6 f#3@7 ~@4 c#4@2 ~@2 a2@21 ~@12 g#2@12 ~@20]/3", // E D#m G#m E
  AH: "~@8 [b3,e4]@5 ~@3 g3@3 ~ [g3,b3,e4]@10 c#3 ~, g2@9 ~@7, ~@8 g3@3 ~@21", // E5 Em
  AI: "[~@9 f#4@2 ~@12 c#4@2 ~@2 a#3@2 ~@3 [b3,d#4,f#4]@6 ~@5 f#3 ~@8 [a#3,c#4,f#4]@4 f#2@3 ~ [a#3,c#4] f#4 ~@2, ~ f#2@19 f#4@6 ~@22 f#3@7 ~@9, ~@8 [a#3,c#4]@13 ~@10 f#2@14 ~@19, ~@16 f#3@24 [a#3,c#4,f#4]@9 ~@15]/2", // B F# A#m F#
  AJ: "[[a#3,c#4,f#4]@3 ~@9 e3 ~@11 b2@2 ~@17 e3 ~@11 b3@5 g#3@3 ~, e2@16 ~@16 e2@18 ~@2 e4@5 ~@7, ~@8 [a3,e4]@8 ~ e3@6 ~@4 e3@13 e4@7 ~ e3@14 ~@2, ~@9 c#4@7 ~@4 [a3,c#4,e4]@11 ~@9 [g#3,b3]@14 ~@10]/2", // F# A5 A G#m
  AK: "[~@11 f#3@2 ~@6 f#4@4 c#4@3 ~@2 a#3@2 ~@2 [b3,d#4,f#4]@3 ~@4 [b3,d#4,f#4] ~@3 [a#3,c#4,f#4]@5 ~@8 [c#4,f#4]@3 ~ f#2@3 ~, f#2@27 ~@5 f#2@17 ~@15, ~@7 [a#3,c#4]@14 ~@34 a#3@3 ~@6, ~@16 f#3@28 ~@4 f#3@11 ~@5]/2", // B F# F#5 A#m
  AL: "g#2@8 ~@5 g#2 ~@3 g#2@4 [f#3,g#3,b3]@4 g#2@6 ~, ~@8 [g#3,d#4]@8 ~@5 d#4@3 ~@8, ~@9 [f#3,b3]@8 ~@15", // G#m7 G#5 B5
  AM: "[a2,e3,g#3,a3]@11 ~ [f#3,g#3,b3,d#4]@9 ~@3 [e3,f#3,a3,c#4]@5 ~@3, c#4@2 ~ g#2@3 f#2@2", // Amaj7 G#m7 F#m7
  AN: "[e3,g#3,b3]@15 ~ b3@5 g#3@3 ~ b3@4 ~@3, ~@16 e4@11 ~@5, ~@16 g#3@4 ~@4 g#3@3 ~@5", // E
  AO: "[[a3,c#4,e4]@21 ~@3 [c#4,e4] ~@15 [d#4,f#4] ~@3 [d#4,f#4]@4 f#3@3 ~ b3@4 [d#4,f#4]@4 ~@4 [e4,g#4]@6 ~@2 f#4 [b3,d#4] ~@10 c#4@2 ~@2 b3 ~@18 g#3 ~@11 g#2@7 ~ c#4@7 b3@5 a3@13 b3@2 ~ f#3@4 ~, ~@23 a3@2 ~@6 b2@17 ~@15 a2@25 ~@8 g#2@15 ~@15 a2@9 ~@25, ~@31 [e4,g#4]@6 ~@43 a3@8 ~@4 [g#3,b3]@11 ~@9 g#3@6 ~@9 e4@26 ~@7, ~@32 b3@13 ~@15 b3@5 ~@11 [b3,d#4,f#4]@7 ~ f#4 ~@19 e4@9 ~@2 [b3,e4]@8 ~@3 b3@2 ~@32]/5", // A C#m D#m E B E G#m B …
  AP: "[[b3,e4,g#4]@6 ~@2 [b3,d#4,f#4] ~@3 b3@4 ~@4 c#4@2 ~@2 b3@6 ~@2 [e4,g#4]@5 ~@3 [b3,f#4]@2 ~@10 c#4@2 ~@2 b3@2 ~@18 g#3 ~@3 g#3@3 ~@4 g#2@7 ~@2, b2@16 f#3@16 a2@24 ~@8 g#2@13 ~@19, ~@12 [d#4,f#4]@9 ~@10 b3@6 ~@3 d#4 ~@3 [b3,d#4,f#4]@7 ~ f#4 ~@19 e4@9 ~@3 g#3@7 ~@5, ~@12 a3@2 ~ [g#3,b3]@3 ~@3 [b3,e4]@3]/3", // E B E B5 D#m B G#m E5
  AQ: "~@8 b3@2 ~ e3 ~@7 b3@3 ~@2 a3@3 e3@3 ~@2, a2@19 ~@13, ~@4 e4@7 ~@5, ~@8 c#4@11 ~@13, ~@16 e3@7 ~@9",
  AR: "[[e4,g#4]@4 ~@4 [d#4,f#4] ~@11 c#4@3 ~@13 b3@3 ~@2 [b3,d#4,f#4] ~@5 a3@5 c#4@3 a3@3 ~@17 g#3 ~@11 g#2@8 ~@8 b3@2 ~@2 e3 ~@7 b3@2 ~@2 a3@2 ~@2 b3 ~@4 g#4@4 ~@3 [b3,d#4,f#4] ~@11 c#4@3 ~@2 b3@3 [d#4,f#4] ~@4 [e4,g#4]@5 ~@3 [b3,d#4,f#4] ~@11 f#4 ~@2 b3@2 ~@14 g#3@2 ~@7 g#3@2 ~@2 g#3@2 ~@5 g#2@3 ~@2, b2@23 ~@9 a2@23 ~@8 g#2@15 ~@17 a2@14 ~@2 e3@14 ~@2 b2@24 ~@8 a2@24 ~@9 g#2@21 ~@11, b3@8 ~@4 f#4@10 ~@6 [e4,g#4]@7 ~@17 f#4 ~@18 e4@8 ~@4 e4@13 ~@76 d#4@7 c#4@2 ~@43, ~@12 [b3,d#4]@7 ~@5 b3@9 ~@11 [b3,d#4,f#4]@6 ~@22 b3@7 ~@4 b3@9 ~@35 [b3,e4]@6 ~@6 [b3,d#4,f#4]@9 ~@11 b3@6 ~@6 [b3,f#4]@6 ~@10 b3@12 ~@5 [b3,e4]@8 ~@4 [b3,e4]@8, ~@16 f#3@14 ~@29 [g#3,b3]@10 ~@10 g#3@8 ~@16 [a3,c#4,e4]@10 ~@30 f#3@15 ~@18 a3@7 ~@5 [g#3,e4]@9 ~@18 g#3@8 ~]/7", // E D#m B D#m E B E B …
  AS: "~@10 e3 ~@9 b3@4 a3@2 ~ e3@3 ~@2, a2@3 ~, ~@7 e4@18 ~@7, ~@7 b3@2 ~@7 e3@7 ~@9, ~@2 c#4@3 ~@3",
  AT: "[[b3,e4,g#4]@6 ~@2 [d#4,f#4] ~@11 [c#4,d#4]@2 ~@18 [b3,d#4,f#4] ~@3 [b3,d#4,f#4]@4 ~@4 [c#4,f#4]@2 ~@2 [b3,f#4]@2 ~@14 g#3@2 ~@2 g#3 ~@4 g#3@3 g#3@3 g#2@4 g#3@3 ~@2, b2@22 ~@10 a2@24 ~@7 g#2@18 ~@15, ~@8 b3@2 ~@3 [d#4,f#4]@9 ~@6 [e4,g#4]@7 ~@61, ~@13 b3@6 ~@5 b3@9 ~@15 a3@8 ~@16 [b3,e4]@9 ~@3 [b3,e4]@12, ~@16 f#3@13 ~@67]/3", // E D#m C#sus2 B F#5 B5 D#m E …
  AU: "[~@8 b3@2 ~ e3 ~@8 b3@2 ~ a3@3 a2@4 ~ b2@8 c#4@2 ~@2 f#3 ~@7 c#4@2 ~@19 [b3,d#4,f#4] ~@3 [b3,d#4,f#4]@4 a3@4 ~@3 a3@3 ~@18 g#3 ~@3 g#3@4 ~@3 g#2@4 g#3@3 ~@2, a2@21 ~@18 b3@11 ~@6 b3@10 ~@18 [c#4,f#4]@5 ~@3 [g#3,b3]@12 ~@12 [g#3,b3]@8 ~@4, ~@8 [a3,c#4,e4]@8 e3@8 ~@15 [d#4,f#4]@14 ~@6 [e4,g#4]@8 ~@25 e4@7 ~@5 e4@24, ~@47 f#3@13 ~@3 a2@24 ~@9 g#2@17 ~@15]/4", // B F#5 G#m A D#m E
  AV: "~@8 b3@2 ~@2 e3 ~@8 e4 ~@5 f#3@4 ~, a2@15 ~ a2@4 b3@3 e4@6 ~@3, ~@8 [a3,c#4,e4]@9 e3@7 a3@5 ~@3", // A
  AW: "[~@8 c#4@2 ~@2 f#3 ~@7 c#4@2 ~@14 b3@2 ~@2 [b3,d#4,f#4] ~@3 [b3,d#4,f#4]@4 a3@4 [c#4,f#4]@4 a3@3 ~ e4@4 ~@11 g#3 ~@4 g#3@3 ~@4 g#2@4 g#3@3 ~ a2@8 ~@3 e3 ~@4 e3@4 b3@3 ~@4 e3@3 ~@3 [b3,e4,g#4] ~@7 [b3,d#4,f#4] ~@3 f#4@4 ~@3 b3@2 ~ [d#4,f#4]@3 ~@2 b3@2 ~@2 [b3,e4,g#4]@5 ~@4 [b3,d#4,f#4] ~@3 [b3,d#4,f#4]@4 a3@4 ~@3 a3@2 ~@3 [b3,c#4,f#4]@4, b2@16 f#3@12 [e4,g#4]@8 ~@16 b3@3 ~@5 [g#3,b3]@12 e4@10 ~ g#3@5 ~@15 [a3,e4]@10 ~@6 a3@6 ~@2 b2@16 ~ f#3@15 a2@26 ~@7, ~@8 [b3,d#4,f#4]@11 ~ f#4 ~@3 b3@8 a2@25 ~@7 g#2@13 ~@7 e4@14 ~@6 c#4@10 ~@66 [c#4,f#4]@6 ~@6, ~@84 b3@7 ~@12 b3@2 ~@13 b3@2 ~@19 [b3,d#4]@6 ~@47]/6", // B F#5 E B D#m E B Bsus2 …
  AX: "~@12 g#3 ~@3 g#3@4 ~@3 g#2@4 g#3@3 ~@2, g#2@9 ~@7, ~@8 [b3,e4]@9 ~@3 [b3,e4]@12", // E5
  AY: "a2@8 b3@2 ~@2 e3@2 ~@7 a3 ~@2 a2@3 ~ e3@3 ~, ~@8 [a3,c#4,e4]@9 e3@5 ~@10, ~@20 [b3,e4]@9 ~@3", // A E5
  AZ: "~@8 [b3,e4,g#4] ~@3 [b3,d#4,f#4]@4 ~@4 b3@3 ~ [d#4,f#4]@2 ~@2 b3@2 ~@2, b2@21 ~@11, ~@8 f#3@7 ~", // E B D#m
  BA: "[[b3,e4,g#4]@6 ~@2 [b3,f#4] d#4 ~@2 [b3,d#4,f#4]@4 a3@4 ~ b3@3 a3@2 ~@18 g#3@2 ~@10 g#2@4 b3 ~@12 c#4 ~@3 e3 ~@3 e3@4 ~ c#4@2 a2@3 ~ e3@3 ~, a2@23 ~@5 f#4@8 ~@4 e4@9 ~@3 e4@20 e4@16 ~@8, ~@20 [c#4,f#4]@5 ~@3 b3@29 ~@7 a2@11 ~@21, ~@32 g#2@15 ~ g#3@7 ~@5 [a3,c#4]@12 ~ [a3,b3]@10 ~@2 [a3,b3]@4 ~@7]/3", // E B5 B F#5 A Asus2
  BB: "[e4,g#4]@5 ~@3 [d#4,f#4] ~@3 [b3,d#4,f#4]@4 ~@4 b3@2 ~@2 [d#4,f#4]@2 ~@2 b3@2 ~@2, b2@15 ~@17, b3@4 ~@4 f#3@7 ~", // E D#m B D#m
  BC: "[[b3,e4,g#4]@6 ~@2 [b3,d#4] f#4 ~@2 [b3,d#4,f#4]@4 a3@4 [c#4,f#4]@4 a3@3 ~@17 g#3@2 ~@2 g#3@4 b3@3 ~@4 g#3@3 ~@13 e3@2 ~ e3@9 [a3,b3]@4 a2@4 ~, a2@26 ~@2 [g#3,b3]@13 ~@11 c#4@18 ~ b3@16 ~@9, ~@28 e4@7 ~@5 e4@10 ~@2 e4@39 ~@5, ~@32 g#2@13 ~@11 g#2@5 ~@2 a2@16 ~@17, ~@75 d#3 ~@20]/3", // E B F#5 Asus2 G#m
  BD: "[[b3,e4,g#4]@7 ~ [d#4,f#4] ~@3 b3@4 ~@4 c#4@2 ~@2 b3@4 [d#4,f#4] ~@3 g#4@6 ~@2 [b3,d#4,f#4] ~@3 [b3,d#4,f#4]@4 a3@4 [c#4,f#4]@4 a3@3 ~@17 g#3@2 ~@2 g#3@3 ~@5 g#2@4 g#3@3 ~@13 e3 ~@7 [a3,b3,e4]@3 ~ a2@3 ~ e3@3 ~, b2@23 ~@9 a2@26 ~@6 g#2@13 ~@19 a2@19 ~@13, ~@8 b3@2 ~@2 [d#4,f#4]@9 ~@10 [b3,e4]@7 ~@22 e4@8 ~@4 e4@25 ~@7 b3@2 ~@7 e3@5 ~@10, ~@16 f#3@8 ~@36 [g#3,b3]@13 ~@11 b3@15 ~@5 [a3,e4]@10 ~@14, ~@105 c#4@9 ~@14]/4", // E D#m B F#5 Asus2 D#m E5 G#m …
  BE: "[b3,e4,g#4]@5 ~@4 [b3,d#4,f#4] ~@2 f#4@4 f#3@2 ~@3 f#3@5 b3@2 [d#4,f#4] f#3@3, b2@10 f#4 ~@5, ~@12 [b3,d#4]@11 ~@9", // E B D#m B
  BF: "[~ [b3,e4,g#4]@6 ~ [b3,d#4,f#4] ~@3 [b3,d#4,f#4]@4 a3@4 [c#4,f#4]@3 ~ a2 ~@19 g#3 ~@3 g#3@3 ~@8 g#2@2 ~@3, ~ a2@22 a3@2 ~@2 b3@13 e4@22 ~@2, ~@27 e4@4 g#2@12 ~@13 g#3@6 ~@2, ~@28 g#3@12 ~@12 b3@9 ~@3]/2", // E B F#5
  BG: "[c#4@8 ~@4 e3 ~@6 [a3,b3,c#4,e4]@4 a2@4 e3@3 ~@2 b3@5 ~@3 [b3,d#4,f#4] ~@6 f#3@2 ~@2 f#3@2 ~@3 b2@4 [b3,d#4] ~@3 [b3,e4,g#4]@6 ~@2 [b3,d#4,f#4] ~@7 a3@2 ~@6 c#4@2 ~ b3@2 ~@15 g#3@2 ~@2 g#3@3 ~@4 g#2@4 g#3@3 ~@2, [a2,e4]@18 ~@14 b2@16 ~@15 a2@28 ~@5 g#2@12 ~@20, a3@5 ~@11 e3@5 ~@63 a3@7 ~@4 g#3@7 ~@13 g#3@5 ~@8, b3@3 ~@5 b3@9 ~@14 [e4,g#4]@5 ~@7 [b3,d#4,f#4]@14 ~@19 [b3,d#4,f#4]@10 ~ f#4@2 ~@15 e4@9 ~@3 e4@12, ~@88 b3 ~@6 b3@18 ~@2 b3@13]/4", // A B E B A5 E B
  BH: "~@8 b3 ~@2 e3@2 ~@7 b3@4 a3@3 f#3@5, a2@2 e3 ~, ~@8 [a3,c#4,e4]@11 ~@13", // A
  BI: "~@8 f#4 [b3,d#4] ~@6 f#3@2 ~@6 c#4@3 ~ b3@3 ~, [b3,e4,g#4]@6 ~@6 d#4@13 ~@7, ~ b2@22 ~@9, ~@6 b3@4 f#3@5 ~, ~@13 f#4@10 f#4@2 ~@7", // B E
  BJ: "[[b3,e4,g#4]@6 ~@2 [b3,d#4,f#4] ~@11 [c#4,f#4]@3 ~ b3@2 ~@18 g#3 ~@3 g#3@3 ~ g#3@3 g#2@4 g#3@3 ~@2, a2@13 ~@3 g#2@6 ~@10, ~@12 [b3,d#4,f#4]@7 ~@9 b3@21 ~@3 [b3,e4]@12, ~@16 a3@8 ~@4 g#3@11 ~ e4@9 ~@15]/2", // E B F#5 B E5
  BK: "~@4 b3 ~ e3 ~@3 b3@2 a3 ~@3, a2@21 ~@11, ~@2 c#4@3 ~@3, ~@8 [a3,e4]@8 e3@15 ~", // A5
  BL: "[b3,e4,g#4]@6 ~@3 [b3,d#4,f#4] ~@11 d#4 ~@3 b3@2 ~ [b3,e4,g#4]@4, b2@3 ~, ~@12 [b3,d#4]@7 ~ c#4@2 ~@10, ~@13 f#4@6 ~@13, ~@16 f#3@13 ~@3", // E B E B
  BM: "[~@4 b3@3 ~@2 [b3,d#4,f#4] ~@6 a3@4 [c#4,f#4]@5 a3@2 ~@17 g#3 ~@3 g#3@3 ~@4 g#2@4 ~ g#3@3 ~ c#4@7 ~@5 e3 ~@3 e3@4 a3@4 e3@7 ~, a2@24 ~@9 g#2@17 ~@14 [a2,e4]@18 ~@14, ~@12 [b3,d#4]@6 ~@11 [g#3,b3]@10 ~ [b3,e4]@9 ~@2 b3@9 ~@3 b3@2 ~@7 b3@10 ~@14, ~@13 f#4@6 ~@33 e4@9 ~@35]/3", // B F#5 A5 B G#m E5
  BN: "[b3,e4,g#4]@5 ~@3 [b3,d#4,f#4] c#4 ~@2 [b3,d#4,f#4]@4 ~@5 b3@3 ~ d#4@2 ~ b3 ~@3, b2@14 ~@2 f#3@11 ~@5", // E B
  BO: "[b3,e4,g#4]@6 ~ f#4 [b3,d#4] ~@3 [g#2,g#3,b3,d#4,f#4]@10 ~@2 [f#2,f#3,b3,d#4,f#4]@6 ~@2, [a2,a3]@7 ~@17 g#2@2 ~@6", // E B G#m7 B A
  BP: "[~ [e2,e4,g#4]@39 ~@24, [e3,b3]@39 ~@25]/2", // E E5
})).s("gm_piano").gain(0.26)

// bass · electric bass finger
const bass = note(`<
  ~ A@5 B@3 C@4 D E@2 F G@4 H@3 I@3 J K@4 L M@3 N O@3 P Q R@3 S T U V@2 W@3 X Y Z@2 AA AB@3 AC@4 AD@2 AE@3 AF@2 AG@5
  AH@2 AI AJ@2 AK@2 AL@2 AM AN AO@8 AP@2 AQ@2 AR@2 AS@5 AT@2 AU@2 AV AW AX@5 AY@2 AZ@2 BA BB@2 BC@2 BD BE BF BG BH BI
  BJ@2 BK@3 BL@4 BM BN@2 BO BP BQ BR@4 BS BT@2 BU@2 BV@3
>`.pickRestart({
  A: "[b2@31 a2@30 ~@2 g#2@32 g2@23 ~ f#2@8 b2@32 ~]/5", B: "[a2@30 ~ g#2@31 ~ g2@28 f#2@5]/3",
  C: "[b2@30 ~ a2@31 ~ g#2@31 ~ g2@26 ~@3 g2@2 ~@2]/4", D: "~ f#2@17 ~@6 f#2 ~@2 f#2 ~@4",
  E: "[f#2@18 ~@2 f#2 ~@2 f#2 ~@3 f#2 ~@3 e2@12 ~ e3@11 ~ b2@8]/2", F: "e2@11 ~ e3@8 b2@3 ~ g#2@4 e2@4",
  G: "[f#2@17 ~@3 f#2 ~@3 f#2@5 ~@2 f#2@11 ~@2 f#2@14 ~@2 f#2@3 g#2@20 ~@4 g#2@5 ~@3 a2@9 ~@3 g#2@9 ~@3 f#2@7 ~@2]/4",
  H: "[e2@14 ~@2 g#2@15 a2@22 ~@3 a2@6 ~ b2@7 ~@2 b2 ~@3 b2@10 ~@2 b2@2 ~@2 b2@2 ~@2]/3",
  I: "[a2@20 ~@3 a2@7 ~ g#2@26 ~@2 g#2@3 ~ a2@21 ~@4 a2@6 ~@2]/3", J: "b2@7 ~@4 b2@14 ~@3 b2@3 ~",
  K: "[a2@10 ~@2 a2@12 ~@4 a2@2 ~ g#2@18 ~@6 g#2@6 ~@2 a2@20 ~@4 a2@7 ~ b2@10 ~@3 b2@15 ~ b2@2 ~@2]/4",
  L: "a2@20 ~@7 a2 ~@4", M: "[g#2@19 ~@4 g#2@4 ~@4 a2@22 ~@6 a2@2 ~@2 b2@21 ~@9 b2@3]/3", N: "a2@25 ~@2 a2@3 ~@2",
  O: "[g#2@24 ~@3 g#2@4 g2@22 ~@10 b2@25 ~@4 b2@3 ~]/3", P: "a2@25 ~@3 a2 ~@3", Q: "g#2@21 ~@7 g#2@2 ~@2",
  R: "[g2@19 ~@8 g2@2 ~@2 f#2@20 a#2@3 ~ c#3@3 ~ f#3@25 c#3@3 ~ a#2@4 f#2@2 ~@2]/3", S: "e2@19 ~@2 e3@4 e2@3 e3@4",
  T: "~ e2@18 b2@3 ~ g#2@4 e2@4 ~", U: "f#2@27 a#2@4 ~",
  V: "[c#3@3 ~ f#3@15 f#2@4 f#3@4 f#2@2 ~@2 g#2@10 ~@14 g#2@7 ~@2]/2",
  W: "[a2@9 ~@2 g#2@9 ~@3 f#2@7 ~ e2@15 ~ g#2@15 ~ a2@30 ~@3]/3", X: "b2@6 ~@2 b2 ~@2 b2@14 ~@3 b2@3 ~",
  Y: "a2@7 ~@2 a2 ~@3 a2@9 ~@3 a2@5 ~@2", Z: "[g#2@22 ~@5 g#2@3 ~ a2@19 ~@5 a2@8 ~]/2", AA: "b2@29 ~@3",
  AB: "[a2@5 ~@3 a2 ~@3 a2@11 ~@4 a2@2 ~@2 g#2@19 ~@5 g#2@6 ~@2 a2@19 ~@5 a2@7 ~@2]/3",
  AC: "[b2@5 ~@3 b2 ~@3 b2@17 ~@2 a2@5 ~@4 a2 ~@3 a2@10 ~@3 a2@5 ~ g#2@21 ~@3 g#2@5 ~@3 a2@12 ~@5 g#2@9 ~@7]/4",
  AD: "[f#2@11 ~@5 e2@11 ~@4 d2@16 d3@16 ~]/2", AE: "[a2@15 a3@12 ~@4 e3@16 e2@14 ~@2 e2@12 ~ e3@11 e2@7 ~@2]/3",
  AF: "[~ d2@14 d3@16 a2@17 a3@7 ~@9]/2",
  AG: "[e3@15 e2@12 ~@4 e2@4 g#2@4 b2@3 ~ e3@9 b2@3 g2@4 f#2@4 e2@16 e3@15 ~ d2@13 d3@11 d2@8 a2@21 ~@3 a2@8 ~]/5",
  AH: "[e2@19 ~@4 e2@6 ~@2 b2@19 ~@5 b2@8 ~]/2", AI: "a2@20 ~@3 a2@7 ~@2",
  AJ: "[g#2@19 ~@4 g#2@7 ~ g2@20 ~@6 g2@3 f#2@4]/2",
  AK: "[~ b2@6 ~@2 b2 ~@3 b2@5 ~@2 c#3@2 ~@2 d#3@2 ~ c#3@2 ~@2 a2@19 ~@2 c#3@4 d#3@3 ~ c#3@2 ~@2]/2",
  AL: "[a2@3 ~ g#2@14 ~@2 g#2 ~@3 g#2 ~@2 g#2 ~@3 g2@21 ~@4 g2@6 ~@2]/2", AM: "f#2@20 a#2@3 c#3@3 ~ f#3@4 ~",
  AN: "f#2@19 a#2@3 ~ c#3@4 f#3@2 ~@3",
  AO: "[e2@8 e3@2 ~@2 e3@8 ~ e2@4 e3@3 b2@2 ~ e2@9 e3@2 ~@3 e3@6 e2@3 ~ e3@4 ~ e2@3 f#2@10 ~@8 f#2@10 ~@4 f#2@10 ~@2 f#2@9 ~@3 f#2@6 ~@2 g#2@21 ~@5 g#2@6 a2@10 ~@2 g#2@9 ~@3 f#2@7 ~ e2@12 ~@2 f#2@3 ~ g#2@14 a2@20 ~@4 a2@6 ~@2 b2, d#2 ~@126 f#2 ~@128]/8",
  AP: "[~@12 b2@18 ~ a2@12 ~@2 a2@9 ~@2 a2@6 ~@2]/2", AQ: "[g#2@20 ~@3 g#2@7 ~ a2@18 ~@6 a2@6 ~@3]/2",
  AR: "[b2@10 ~@3 b2@6 ~ b2 ~@3 b2@2 ~@2 b2@2 ~ a2@21 ~@3 a2@7 ~@2]/2",
  AS: "[g#2@20 ~@3 g#2@7 ~ a2@25 ~@4 a2@2 ~ b2@21 ~@8 b2@3 a2@19 ~@5 a2@7 ~ g#2@19 ~@5 g#2@7 ~@2]/5",
  AT: "[a2@19 ~@4 a2 ~@3 a2 ~@3 b2@2 ~@2 a2 ~@3 b2@10 ~@2 b2 ~@3 b2 ~@3 b2 ~@4]/2",
  AU: "[a2 ~@3 a2 ~@2 a2 ~@3 a2 ~@3 a2 ~@3 a2 ~@3 a2 ~@3 a2 ~@3 g#2@20 ~@4 g#2@8 ~]/2", AV: "a2@18 ~@5 a2@7 ~@2",
  AW: "b2@5 ~@3 b2 ~@2 b2@6 ~@4 b2 ~@3 b2 ~@2 b2 ~@3",
  AX: "[a2@6 ~@2 a2 ~@3 a2@6 ~@3 a2 ~@3 a2 ~@2 a2 ~@2 g#2@18 ~@6 g#2@7 ~ a2@17 ~@6 a2 ~@4 a2 ~@3 b2@10 ~@3 b2@6 ~ b2 ~@4 b2 ~@2 b2 ~@3 a2@6 ~@2 a2 ~@3 a2 ~@3 a2 ~@3 a3@2 ~@3 a2@5 ~@3]/5",
  AY: "[g#2@19 ~@4 g#2@7 ~ a2@20 ~@5 a2@3 ~@2 a2 ~@2]/2",
  AZ: "[b2@16 ~@3 b2@2 ~@2 b2@2 ~@3 b2 ~@2 a2@9 ~@4 a2@9 ~@3 a2@7 ~]/2", BA: "g#2@16 ~@3 g#2 ~@4 g#2 ~@3 g#2 ~@3",
  BB: "[a2@16 ~@4 a2 ~@2 a2 ~@3 a2 ~@3 b2@11 ~@3 b2@14 ~@2 b2 ~@2]/2",
  BC: "[a2@9 ~@2 a2@10 ~@3 a2@6 ~ g#2@11 ~@2 g#2 ~@3 g#2@9 ~@3 g#2@2 ~@2]/2", BD: "a2@19 ~@4 a2@7 ~@2",
  BE: "b2@10 ~@2 b2@8 ~@4 b2 ~@3 b2 ~@3", BF: "a2 ~@3 a2 ~@3 a2 ~@3 a2@6 ~@3 a2 ~@3 a2 ~@3 a2 ~@2",
  BG: "g#2@9 ~@3 g#2 ~@3 g#2@9 ~@2 g#2@2 ~@3", BH: "a2@9 ~@3 a2@7 ~@6 a2@6 ~",
  BI: "~ b2@8 ~@3 b2@6 ~@3 b2 ~@3 b2 ~@2 b2 ~@3",
  BJ: "[a2 ~@3 a2@2 ~@2 a3@3 a2 ~@4 a2@3 a3@4 a2@5 ~ a#3 ~@3 g#2@7 ~@4 g#2 ~@4 g#2 ~@3 g#2 ~@2 g#2@6 ~@2, ~@29 g#3@20 ~@15]/2",
  BK: "[a2@2 ~ a2 ~@4 a2 ~@3 a2@8 ~@3 a2@7 ~ b2@9 ~@3 b2@11 ~ b2 ~@4 b2 ~@2 a2@8 ~@4 a2@10 ~@3 a2@6 ~@2]/3",
  BL: "[g#2@9 ~@3 g#2 ~@3 g#2@6 ~@6 g#2@3 a2@9 ~@3 a2@9 ~@3 a2@6 ~@2 b2@9 ~@3 b2@9 ~ f#2@3 ~ b2@6 a2@11 ~@3 a2@7 e2@4 a2@3 e2@4 ~]/4",
  BM: "g#2@11 ~@4 g#2@10 ~@3 g#2 ~@3", BN: "[a2@9 ~@3 a2@11 ~@8 b2@6 ~@2 b1@4 ~ b2@7 ~ b1@3 ~@2 b2@6 ~]/2",
  BO: "a2 ~@3 a2 ~@3 a2 ~@3 a2@7 ~ e3@4 a3@3 ~ e3@2 ~@2", BP: "g#2@9 ~@2 g#2 ~@3 g#2@7 ~@2 g#2 ~@2 g#2 ~@4",
  BQ: "a2@7 ~@2 a2 ~@3 a2@5 ~@3 a2 ~@2 a2 ~@3 a2 ~@3",
  BR: "[b2@5 ~@2 b2 ~@3 b2@6 ~@3 f#2@3 ~ b2@3 ~ f#2@2 ~ a2@6 ~@3 a2 ~@3 a2@7 ~ f#2@2 ~@2 a2@2 ~ f#2@3 ~ g#2@10 ~@3 g#2 ~@2 g#2@3 ~@7 g#2@5 ~ a2@10 ~@3 a2@7 ~@2 a2 ~@3 a2 ~@2 a2 ~@3, a#2 ~@127]/4",
  BS: "b2@7 b3@5 ~@9 b3 ~@6 b2@3 ~, ~@12 b2@13 b3@6 ~",
  BT: "[~ a2@8 a3@4 a2 ~@3 a2@3 ~@4 a2@5 ~@2 g#2@9 ~ g#2 ~@7 g#2@6 ~ g#2 ~@2 g#2@2 ~@3, ~@20 a3@7 ~@4 g#3@29 ~@4]/2",
  BU: "[a2@8 ~@3 a2@7 ~@3 a2 ~@2 a2 ~@2 a2 ~@3 b2@10 ~@4 b2@7 ~@3 b2@6 ~@3]/2",
  BV: "[~ a2@9 ~@2 g#2@9 ~@2 f#2@5 ~@4 e3@54 ~@10, ~@31 e2@54 ~@11]/3",
})).s("gm_electric_bass_finger").gain(0.26)

// chords · drawbar organ
const drawbar_organ = note(`<
  ~@21 A@6 B@6 C@3 D@2 E@4 F G@2 ~@8 H@6 I@6 ~@4 J@2 ~ K L ~@4 M@3 N@2 O P Q@2 ~@6 R@3 S@6 T@2 U@2 V@4 W@5 X@2 Y@4 Z@3
  AA@4 AB@5 AC@5 AD AE@6 AF@5 AG@6 AH AI@2 ~
>`.pickRestart({
  A: "[[g#4,b4]@29 ~@2 [a4,c#5]@24 ~@8 e5@12 d#5@18 ~@2 e5@13 d#5@11 c#5@6 ~@3 b4@27 ~@4 [a4,c#5]@24 ~@9, e4@55 ~@8 b4@56 ~@8 g#4@27 ~@5 b4 ~@32, ~@63 f#5@30 ~@2 f#5@30 ~@2 e5@56 ~@9]/6", // G#m A
  B: "[~@7 e5@3 ~ d#5@20 e5@12 d#5@13 c#5@5 ~@3 b4@30 ~ [a4,c#5]@26 ~@6 [e5,g#5]@7 ~@2 f#5@2 ~ [d#5,f#5]@16 ~@4 [e5,g#5]@6 ~@3 d#5 ~@2 d#5@6 ~@2 c#5@5 ~ b4@3 ~@4, ~@7 [b4,f#5]@52 ~@4 g#4@29 ~@3 b4 ~@31 b4@53 ~@12, ~@64 e5@57 ~@46 f#5@2 ~@2 f#5@13 ~@8, ~@64 d#5 ~@71 d#5 ~@55]/6", // A E D#m E B5
  C: "[[b4,e5]@29 ~@3 c#5@22 ~@9 [b3,f#4,b4,d#5]@33, g#4@26 ~@5 [a4,e5]@23 ~@42]/3", // E5 B A5
  D: "[~@24 b4@4 f#4@2 ~@26 b4@7 ~, f#4@25 ~@6 g#3@23 ~@10, b4@21 ~@10 b4@16 ~@17, d#5@16 ~@4 d#5@7 ~@37, ~@7 b3@25 [e4,g#4]@30 ~@2]/2", // E
  E: "[[e4,g4,b4]@28 ~@3 [d#4,f#4,b4]@24 ~@5 d#4@2 ~@2 [d#4,b4]@20 ~@4 [d#4,f#4,a4,b4]@6 ~@2 [e4,g#4]@23 ~@6 [e4,g#4,b4] ~@2, ~@59 b4@2 ~@34 b4@23 ~@10, ~@60 f#4 ~@2 [f#4,a4]@20 ~@45]/4", // Em B G#m B7 E F#m
  F: "[e4,g4,b4]@25 ~@3 g4@2 ~@2, ~@28 e4 ~@3", G: "[f#4@5 ~@3]/2",
  H: "[~@31 [e5,g#5]@7 ~@2 [d#5,f#5] ~@3 d#5@11 c#5@4 ~ b4@8 ~@4 b4@19 ~@5 [a4,c#5]@25 ~@6 [e5,g#5]@9 ~@3 [d#5,f#5]@16 ~@4 [e5,g#5]@9 ~@4 [d#5,f#5]@18 ~@2, ~@29 b4@27 ~@15 g#4@19 ~@37 b4@63 ~@2, ~@44 f#5@17 ~@11 e5@48 ~@72]/6", // E D#m A E D#m E D#m
  I: "[~@7 [g#4,b4]@21 ~@3 [a4,c#5]@25 ~@7 [e5,g#5]@10 ~@3 [d#5,f#5]@16 ~@3 [e5,g#5]@11 ~@10 c#5@4 b4@5 ~@2 [a4,c#5,e5]@6 ~@3 g#4@19 ~@4 [a4,c#5]@13 ~@3 [g#4,b4,e5]@12 ~@5, ~@7 e5@49 ~@7 b4@54 ~@18 b4@21 ~@36, ~@107 d#5@10 ~@19 e5@36 ~@20, ~@108 f#5@13 ~@71]/6", // G#m A E D#m E A E
  J: "[~@7 f#5@3 ~ e5@3 ~ d#5@2 ~@2 c#5@2 ~@2 b4@8 a4@19 ~@14]/2", K: "~@12 g#4@2 b4 ~", L: "~@16 e5@15 ~",
  M: "[~@11 b2 ~@11 d#4@3 ~ b3@3 ~@2 [d#4,e4] d#4@3 ~@4 d#4@2 ~@9 c#4@5 b3@4 ~@4 [b3,e4]@6 ~@3 b3 ~@5 [e4,g#4] b4 ~@2 [e4,g#4,b4] ~@3 [e4,g#4,b4]@7 ~@2, b1@15 b2@23 ~@10 f#3@8 ~@7 g#3@6 ~@27, ~@7 b3@16 ~@8 [b3,g#4]@7 ~ b3@11 ~@46, ~@7 d#4@12 f#4@7 ~@14 f#4@17 ~@39]/3", // Emaj7 E5 E
  N: "[~@7 [g4,d#5]@3 ~@2 c#5@4 ~@15 f#4@10 ~@11 f#4@4 d#4@4 f#4 ~@3, [g4,c#5]@6 ~@5 g4@8 b4@18 ~@4 b4@16 ~@7, ~ e4@22 ~@8 d#4@21 ~@12]/2", // Cm Gdim
  O: "[g#4,b4]@7 b4@2 ~@3 [f#4,b4]@20, d#4@10 ~ d#4@20 ~, ~@7 f#4 ~@24", // G#m B5
  P: "~@19 b4@2 ~@3 e4 [g4,b4] ~@2 [e4,g4] ~@3, ~@7 [e4,g4]@4 ~@5", // G Em
  Q: "[~ g4 ~@5 e4 [g4,c#5] ~@3 [e4,g4,c#5]@6 ~ [e4,g4,b4]@10 ~@3 [f#4,a#4]@19 ~@13, [e4,d#5]@5 ~@26 c#5@20 ~@13]/2", // Gdim C#dim Em F# Emaj7
  R: "[~@31 [g#3,b3]@30 ~@3 [a3,c#4]@11 ~@12 c#4 ~@3 f#3@4 [b3,g#4], ~@31 e4@43 ~@2 [b3,e4]@10 ~@10, ~@31 e3@32 a2@20 a3@7 ~@6]/3", // G#m A E E5
  S: "[e4@6 ~@2 [d#4,f#4] ~@2 [d#4,f#4]@9 ~@11 [e4,g#4]@7 ~@3 [d#4,f#4]@2 ~ [d#4,f#4]@16 ~@3 [b3,e4,g#4]@25 ~@7 [e4,a4,c#5]@26 ~@7 e5@9 ~@3 [d#5,f#5]@15 ~@4 [e5,g#5]@9 ~@3 [d#5,f#5]@15 ~@6, b2@21 ~@10 a3@30 ~@2 g#3@32 a3@32 b3@30 ~@35, d#4 ~@19 b3@40 ~@67 b4@59 ~@6, ~@127 g#5@10 ~@55]/6", // D#m E D#m E A D#m E D#m
  T: "[b4@30 ~ [a4,c#5]@26 ~@7, e5@7 ~, g#4@27 ~@37]/2", // A
  U: "[[e5,g#5]@9 ~@3 [d#5,f#5]@15 ~@4 [e5,g#5]@11 ~@2 [d#5,f#5]@17 ~@3, b4@61 ~@3]/2", // E D#m E D#m
  V: "[~@3 b4@26 ~@2 [a4,c#5]@23 ~@9 [e5,g#5]@9 ~@3 [d#5,f#5]@18 ~@2 [e5,g#5]@8 f#4@4 [d#5,f#5]@8 f#4@4 [d#5,f#5]@4 f#4@3 ~@2, ~ e5@52 ~@75, ~@2 g#4@24 ~@37 b4@61 ~@4]/4", // A E D#m E D#m
  W: "[b4@30 ~ a4@26 ~@6 [e5,g#5]@10 ~@4 d#5@15 ~@3 [e5,g#5]@11 ~@3 d#5@10 c#5@6 ~@2 [g#4,b4]@24 ~@2 b4@7, e5@56 ~@20 f#5@15 ~@18 f#5@16 ~@2 e5@32 ~, g#4@27 ~@4 c#5@23 ~@9 b4@62 ~@27 g#4@7 ~]/5", // E G#m
  X: "[~@8 c#5@14 ~@9 [b4,e5,g#5]@6 ~@2 [b4,d#5,f#5] ~@4 [d#5,f#5]@8 b4@3 ~ [d#5,f#5]@4 b4@3 g#5, ~@7 [a4,e5]@16 ~@41, ~@7 b4@2 ~@34 b4@7 ~@14]/2", // E B D#m A5
  Y: "[[b4,e5]@6 ~@2 [b4,d#5,f#5] ~@3 [b4,d#5,f#5]@18 ~ [g#4,b4]@30 ~@2 [a4,c#5]@25 ~@7 [b4,e5,g#5]@10 ~@2 [b4,d#5,f#5]@19 ~ g#5, ~@31 e5@56 ~@41]/4", // E5 B G#m A E B
  Z: "[[b4,e5]@6 ~@2 [d#5,f#5] ~@2 [b4,d#5,f#5]@16 ~@4 b4@22 ~@2 b4@5 ~@4 [a4,c#5]@22 ~@9 [b4,e5,g#5], d#5@2 ~@5 b4@2 ~@22 g#4@28 ~@37, f#5 ~@30 e5@31 ~ e5@21 ~@12]/3", // E5 D#m B A E
  AA: "[~@7 [b4,d#5,f#5] ~@3 [b4,d#5,f#5] ~@4 [b4,d#5,f#5] ~@2 [b4,d#5,f#5] ~@3 b4 d#5 ~@2 [b4,d#5,f#5] ~@3 [e5,g#5]@11 ~ d#5@2 ~@2 [d#5,f#5]@7 ~@2 [b4,d#5,f#5]@5 ~@2 [g#4,b4,e5]@22 ~@4 b4@5 ~@2 c#5@23 b4@2 ~@6 [e5,g#5], ~@23 f#5@2 ~@6 b4@23 ~@34 g#4@5 ~@2 a4@24 ~@9, ~@31 f#5 ~@11 f#5 ~@45 e5@31 ~@8, ~@95 b4@2 ~@31]/4", // B E D#m B E
  AB: "[b4@6 ~@7 f#5@6 b4@5 [d#5,f#5]@4 ~@4 [e5,g#5]@5 ~@3 [e5,g#5] ~@3 d#5@7 ~ c#5@3 ~ b4@2 ~@3 b4@18 ~@4 b4@2 ~@2 g#4@3 ~@2 b4@2 ~ [a4,c#5]@12 b4@8 a4@4 b4@3 ~ c#5@2 ~@2 [e5,g#5]@8 ~@5 [d#5,f#5]@12 b4@4 d#5@2 ~ b4, ~@9 b4@9 ~@10 b4@23 ~@10 g#4@23 ~@43 b4@7 ~ b4@13 ~@12, ~@12 d#5@8 ~@24 f#5@12 ~@5 e5@15 ~@3 e5@39 ~@9 f#5 ~@32]/5", // D#m E A E D#m
  AC: "[[e5,g#5]@7 b4@3 ~@2 d#5@7 c#5@3 ~ b4@2 ~@2 [g#4,b4] ~@23 b4@5 g#4@4 b4@2 ~ b4@2 c#5@7 b4@3 a4@7 b4@5 c#5@4 e5 ~@3 [e5,g#5]@10 ~@2 [d#5,f#5]@18 ~@2 [e5,g#5]@10 ~@2 f#5@12 ~ a4@6 ~@2, ~@11 b4@8 ~@12 [g#4,b4]@15 ~@17 a4@9 ~@23 b4@52 ~@13, ~@12 f#5@10 ~@14 e5@45 ~@58 d#5@10 ~@2 d#5@2 ~@7]/5", // E G#m E D#m E G#m
  AD: "b4@16 ~@4 b4@4 g#4@3 ~ b4@2 ~@2, g#4@5 ~@3, e5@11 ~@5 e5@11 ~@5",
  AE: "[[a4,c#5,e5]@23 ~@9 [e5,g#5]@9 ~@3 f#4@9 b4@2 ~@9 [e5,g#5]@6 ~@5 d#5@8 c#5@4 b4@3 ~ d#4@4 [g#4,b4,e5]@11 ~@13 g#4@5 ~@16 a4@2 ~@2 a4@5 ~@3 a4@3 ~ e4@3 [b4,e5,g#5]@12 ~@13 f#4@3 b4 ~@3 g#5, ~@24 f#4@18 ~@2 [d#5,f#5]@14 ~@3 b4@22 ~@24 g#4@11 ~@18 e5@11 ~@2 f#5@8 ~@35, ~@32 b4@20 ~@5 f#4@32 ~@6 g#3@23 ~@9 a3@24 ~@8 b3@28 ~@5, ~@32 b3@17 ~@4 b3@14 ~@8 f#5@15 ~@22 [b4,e5,g#5]@22 ~@2 c#5@15 ~@20 [d#5,f#5]@19 ~@2]/6", // A E D#m E D#m
  AF: "[e5@10 ~@2 f#5@14 ~@6 [b4,e5]@12 ~@11 g#4@5 e4@3 ~ [b4,g#5]@10 ~ [a4,d#5,f#5]@12 ~@2 a4@4 ~@2 [e5,g#5]@12 ~@2 f#4@18 ~ [e5,g#5]@11 ~ [a4,d#5,f#5]@8 f5 ~@2 a4@2 ~@2 g#4@4 b4, a3@30 ~ [g#3,g#4]@22 ~@10 a3@26 ~@6 b3@13 ~@19 a3@25 ~@8, ~@11 d#5@13 ~@23 [b4,e5,g#5]@14 ~@2 e5@11 ~@13 [c#5,e5]@7 ~@14 [d#5,f#5]@21 ~@19 [c#5,e5]@8 ~@4]/5", // E5 E D#dim E D#dim G# E C#m …
  AG: "[e5@5 ~@7 g#4@2 ~@10 g#3@4 g#4@3 ~ [b4,e5,g#5]@10 ~ [a4,d#5,f#5]@8 ~@4 a4@2 ~ a4@4 ~ [e5,g#5]@10 f#4@3 ~@12 e5 ~@2 b4 ~@13 f#5@2 ~@2 a4 ~@10 a3 ~@3 g#4@2 ~@14 g#4 ~@6 b4@2 ~@2 g#3@7 ~@10 b4 ~@2 e4 ~@8 b4@4 a4@2 a3@4 ~@2, g#3@13 ~@4 g#4@6 ~@8 a3@24 ~@8 b3@27 ~@5 a3@22 d#5@9 ~@9 [b4,e5]@11 ~ e5@34 ~@11, ~@8 e5@20 ~@49 [d#5,f#5]@18 ~@9 g#5@9 a4@5 ~@9 g#3@20 ~@12 a3@16 ~ e4@10 ~@6, ~@19 b4@3 ~@55 b4@13 ~@15 e5@9 ~@2 f#5@9 ~@19 g#4@5 ~@19 [a4,c#5]@12 ~@12, ~@20 c#5@8 ~@23 [c#5,e5]@10 ~@26 b5@38 ~@22 c#5@9 ~@36]/6", // E D#dim E E5 D#m A C#m
  AH: "[e5,g#5]@10 ~ [d#5,f#5]@19 ~ e4, b4@29 ~@3, b3@25 ~@7", // E D#m
  AI: "[~ [e5,g#5]@11 [d#5,f#5]@16 ~@3 b3 e4@30 ~@2, [a3,a4]@21 ~@10 e3@30 ~@3, b4@11 ~@53]/2", // E D#m A
})).s("gm_drawbar_organ").gain(0.26)

// other · lead 1 square
const lead_1_square = note("<~@66 A@2 B@2 C@3 D E F G H@2 ~@81>".pickRestart({
  A: "[~@12 c#5@4 d5@3 ~ e5@9 ~@2 e5@14 ~@2 e5@6 ~@2 d5 ~@4 d5@2 ~@2]/2",
  B: "[c#5@11 ~ b4@2 ~@2 b4@3 ~ b4@8 ~ b4@22 ~@13]/2", C: "[~@16 c#5@5 d5@6 e5@2 ~@2 e5@13 d5@8 c#5@8 b4@24 ~@12]/3",
  D: "a5@2 ~@2 g#5@4 ~@3 f#5@3 ~ e5@16 ~", E: "~@15 g5@4 ~ f#5@5 ~@2 e5@5", F: "f#5@12 e5@3 ~",
  G: "e5@22 ~ e5@3 ~@2 f#5@3 ~", H: "[g#5@15 f#5@4 ~ e5@7 d#5@18 ~@19]/2",
})).s("gm_lead_1_square").gain(0.26)

stack(piano, piano_2, bass, drawbar_organ, lead_1_square)

More by Billy Joel