Strudelify

Paranoid Android

Radiohead

KeyE♭ majorTempo87 bpm
0:00/0:00
// Paranoid Android — Radiohead
// 87 bpm, 4/4, key Eb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: metre changes (4/4 at bar 1, 7/8 at bar 45, 4/4 at bar 48, 7/8 at bar 53, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: duplicate parts dropped: ch 7 "bass" fretless bass (copy of ch 6 "bass" electric bass finger)
// note: Full arrangement: all 132 bars on a 32-step grid, each part at one level. Source detail keeps the original performance.
// note: Guitar parts that double another keep only their own notes (fills, solos): g3, g4+.
setcpm(87/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 · acoustic guitar steel · "g1"
const acoustic_guitar_steel = note(`<
  A@2 B@3 C@8 D@4 E@2 F@4 G@8 H@3 E@2 I@4 J K L M N O P Q@5 R@2 S@2 T@3 U V N W X@3 Y O P Z AA@8 AB@3 AC@2 AD AE AF AG@4
  AH@3 AI AJ@3 AK AL AM AN AO@8 AP AQ AR AS AT AU AV AW@3 AX AY AZ BA BB BC@3 BD BE BF BG ~
>`.pickRestart({
  A: "[c3@3 ~@18 eb4@2 ~@6 eb4@2 a2, ~@3 g4@4 a2@2 d3@2 eb4@2 eb4@6 g4@4 eb4@2 eb4@2 eb4@2 ~@3, ~@2 c3!2 bb2!4 f3@8, ~@5 eb4@6 g4@4 a2@2 ~@7 a2@2 a2@4 ~@2, ~@7 bb2]/2",
  B: "[[g2,d4]@3 ~@10 bb3@2 bb3 [bb3,d4]@3 ~@2 d4 d4@3 g3 [g3,d4,e4]@2 [g3,d4,e4]@2 ~@15 bb3@2 [d3,bb3], ~@3 d4@4 ~ a2@2 a2@4 ~ d3@2 ~@3 bb3@2 a3@6 ~@2 [g3,d4,e4]@4 d3@2 ~ bb3@2 bb3@2 bb3@2 d4@4 ~, ~@4 g2@2 g2@4 ~ bb3@2 ~@3 e3@30 ~@2, ~@5 bb3@2 bb3@2 bb3@2 d4@4 ~@4 d4@2 ~@11 g2@4 g2@2 g2@4 ~ bb3 bb2@4, ~@12 bb2@6 ~@13 a2@2 ~@2 d4@4 ~ a2@2 a2@4 ~@2]/3", // G5 Bb Em7 Gm Em7
  C: "[[bb3,d4]@3 bb3 ~ d4 d4@3 g3 [g3,d4,e4]@2 ~@4 c3@3 ~@18 eb4@2 ~@22 bb3@2 ~@4 bb3 ~ d4 d4@3 g3 [g3,d4,e4]@2 [g3,d4,e4]@2 ~@15 bb3@2 ~@4 bb3 ~ d4 d4@3 g3 [g3,d4,e4]@2 [g3,d4,e4]@2 ~@2 c3@3 ~@12 ab2, e3@28 ~@3 ab2@2 ~@7 a2@2 a2@3 eb4@6 d4@4 ~@4 d4@4 ~@4 d4@2 ~@14 d4@4 ~ a2@2 a2@4 ~ [a2,bb3]@2 ~@19 c3@2 c3@2 bb2@2 bb2@2 bb2@2 bb2@2, ~@3 d4@2 ~@7 d4@6 ~ g4@4 a2@2 d3@2 eb4@2 eb4@6 ~@4 eb4@2 eb4@3 bb2@6 d3@2 ~ bb3@2 bb3@2 bb3@2 bb3@2 ~@3 eb2@32 eb2@32, ~@4 bb3@2 a3@6 [g3,e4]@8 ~ eb4@6 g4@4 ~@4 g4@4 ~@4 g4@4 a2@2 ~@7 a2@2 a2@4 ~ [a2,bb3]@2 ~@15 g2@4 g2@2 g2@4 ~ bb3 bb2@6 ~@2 bb3@2 a3@6 ~@2 [g3,d4,e4]@4 ~@3 eb4@6 g4@4 ~, ~@14 a2@4 ~@2 c3@2 c3@2 bb2@2 bb2@2 bb2@2 bb2@2 f3@16 g2@4 g2@2 g2@4 ~@2 bb2@6 ~@2 bb3@2 a3@6 ~@2 [g3,d4,e4]@4 d3@2 ~ bb3@2 bb3@2 bb3@2 d4@4 ~@4 d4@2 ~@14 g4@4 a2@2 d3@2 eb4@2 eb4@3]/8", // Bb Em7 Bbmaj7 C Bbmaj7 Em7
  D: "[~@5 eb4@2 ~@22 bb3@2 ~@4 bb3 ~ d4 d4@3 g3 [g3,d4,e4]@2 [g3,d4,e4]@2 ~@16 bb3@2, f3@16 g2@4 g2@2 g2@4 ~@2 bb2@6 ~@2 bb3@2 a3@6 ~@2 [g3,d4,e4]@4 bb3@2 ~ d4@4 d4@4 d4@2 ~, ~@3 g4@4 eb4@2 eb4@3 bb2@6 d3@2 ~ bb3@2 bb3@2 bb3@2 bb3@2 ~@3 eb2@32, ~@8 a2@2 a2@3 eb4@6 d4@4 ~@4 d4@4 ~@4 d4@2 ~@14 e4@4 bb3@4 e4@4 ~, ~@11 g4@4 a2@2 ~@7 a2@2 a2@4 ~ [a2,bb3]@2 ~@15 g2@4 ~@12]/4", // Em7 Bbmaj7
  E: "[~@15 ab3, f2@3 e4@4 a3@4 e4@3 a3@4 ab3@2 ~ d4@4 d4@4 d4@2 ~, ~@2 a3@2 ~ d4@4 d4@4 d4@2 ~ e2@3 e4@4 ab3@4 e4@4 ~]/2",
  F: "[~@55 ab3@2 ab3@2 ~ d3@2 db3@2, g2@3 e4@4 bb3@4 e4@3 bb3@4 a3@2 ~ d4@4 d4@4 d4@2 ~ e2@3 e4@4 ab3@4 e4@3 ab3@4 ab3@2 ~ d4@4 ~@7, ~@2 bb3@2 ~ d4@4 d4@4 d4@2 ~ f2@3 e4@4 a3@4 e4@3 a3@4 ab3@2 ~ d4@4 d4@4 d4@2 ~ e2@3 e4@4 ~@9]/4",
  G: "[c3@3 ~@18 eb4@2 ~@22 bb3@2 ~@4 bb3 ~ d4 d4@3 g3 [g3,d4,e4]@2 [g3,d4,e4]@2 ~@15 bb3@2 ~@4 bb3 ~ d4 d4@3 g3 [g3,d4,e4]@2 [g3,d4,e4]@2 ~@2 c3@3 ~@13 c3@3 ~@12 ab2, ~@3 g4@4 a2@2 d3@2 eb4@2 eb4@6 g4@4 eb4@2 eb4@3 bb2@6 d3@2 ~ bb3@2 bb3@2 bb3@2 bb3@2 ~@3 eb2@32 eb2@32 ~@7 a2@2 d3@2 ~@5, ~@4 c3@2 c3@2 bb2@2 bb2@2 bb2@2 bb2@2 f3@16 g2@4 g2@2 g2@4 ~@2 bb2@6 ~@2 bb3@2 a3@6 ~@2 [g3,d4,e4]@4 d3@2 ~ bb3@2 bb3@2 bb3@2 d4@4 ~@4 d4@2 ~@14 g4@4 a2@2 d3@2 eb4@2 eb4@6 g4@4 ~@4 g4@4 ~, ~@5 eb4@6 g4@4 ab2@2 ~@7 a2@2 a2@3 eb4@6 d4@4 ~@4 d4@4 ~@4 d4@2 ~@14 d4@4 ~ a2@2 a2@4 ~ [a2,bb3]@2 ~@19 c3@2 c3@2 bb2@2 bb2@2 bb2@2 bb2@2 ~@4 c3@2 c3@2 bb2@2 bb2@2 bb2@2 bb2@2, ~@27 g4@4 a2@2 ~@7 a2@2 a2@4 ~ [a2,bb3]@2 ~@15 g2@4 g2@2 g2@4 ~ bb3 bb2@6 ~@2 bb3@2 a3@6 ~@2 [g3,d4,e4]@4 ~@3 eb4@6 g4@4 ab2@2 ~@4 eb4@6 eb4@2 eb4@3]/8", // Em7 Bbmaj7 Em7
  H: "[~@5 eb4@2 ~@22 bb3@2 ~@15 bb3@2, f3@16 g2@4 g2@2 g2@4 ~@2 bb2@6 ~ e4@4 bb3@4 e4@4 ~, ~@3 g4@4 eb4@2 eb4@3 bb2@6 d3@2 ~ bb3@2 bb3@2 bb3@2 bb3@2 ~@3 g2@4 ~@12, ~@8 a2@2 a2@3 eb4@6 d4@4 ~@4 d4@4 ~@3 bb3@2 ~ d4@4 d4@4 d4@2 ~, ~@11 g4@4 a2@2 ~@7 a2@2 a2@4 ~ [a2,bb3]@2 ~@15]/3", // Bbmaj7
  I: "[~@31 ab3, g2@3 e4@4 bb3@4 e4@3 bb3@4 a3@2 ~ d4@4 d4@4 d4@2 ~ e2@3 e4@4 ab3@4 e4@3 ab3@4 ab3@2 ~ d4@4 d4@4 d4@2 ~, ~@2 bb3@2 ~ d4@4 d4@4 d4@2 ~ f2@3 e4@4 a3@4 e4@3 a3@4 ab3@2 ~ d4@4 d4@4 d4@2 ~ e2@3 e4@4 ab3@4 e4@4 ~]/4",
  J: "a2@2 a2!2 c3 a2@2 ab2@2 ab2@2 ab2 c3!2 d3!2", K: "a2@2 a2!2 c3 a2!2 ab2@2 d3 c3 a2 d3 c3!3",
  L: "a2@2 a2!2 c3 a2@2 ab2@2 ab2 ~ ab2 c3!2 d3!2", M: "a2@2 a2!2 c3 a2!2 ab2@2 d3 c3 a2 d3 c3!2 c2",
  N: "[c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!3 [ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]!3 [bb2,d3,bb3,d4,f4,bb4]!2 [c3,g3,c4,e4,g4,c5]@2", // C Csus4 Ab Bb C
  O: "[c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!3 [ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]!3 [bb2,d3,bb3,d4,f4,bb4]!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2", // C Csus4 Ab Bb C
  P: "[c3,g3,c4,f4]!3 [ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]!3 [bb2,d3,bb3,d4,f4,bb4]!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!2", // Csus4 Ab Bb C Csus4
  Q: "[[c3,g3,c4,f4]!2 [c3,g3,c4,e4,g4,c5] [b2,gb3,b3,eb4,gb4,b4]@2 [bb2,f3,bb3,d4,f4,bb4]@2 [a2,e3,a3,db4,e4,a4] [ab2,eb3,ab3,c4,eb4,ab4]@2 a2@2 a2!2 c3 a2@2 ab2@2 ab2@2 ab2 c3!2 d3!2 a2@2 a2!2 c3 a2@2 ab2@2 ab2@2 ab2 c3!2 d3!2 a2@2 a2!2 c3 a2@2 ab2@2 ab2@2 ab2 c3!2 d3!2 a2@2 a2!2 c3 a2@2 ab2@2 ab2@2 ab2 c3!2 d3!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!2]/5", // Csus4 C B Bb A Ab C Csus4
  R: "[[c3,g3,c4,f4] [ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]!3 [bb2,d3,bb3,d4,f4,bb4]!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!3 [ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]!3 [bb2,d3,bb3,d4,f4,bb4]!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!3 [ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]]/2", // Csus4 Ab Bb C Csus4 Ab Bb C …
  S: "[[ab2,eb3,ab3,c4,eb4,ab4]!2 [bb2,d3,bb3,d4,f4,bb4]!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!4 [c3,g3,c4,e4,g4,c5] [b2,gb3,b3,eb4,gb4,b4]@2 [bb2,f3,bb3,d4,f4,bb4]@2 [a2,e3,a3,db4,e4,a4] [ab2,eb3,ab3,c4,eb4,ab4]@2 a2@2 a2!2 c3 a2@2 ab2@2 ab2@2 ab2]/2", // Ab Bb C Csus4 C B Bb A …
  T: "c3!2 d3!2 a2@2 a2!2 c3 a2@2 ab2@2 ab2@2 ab2",
  U: "c3!2 d3!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!3 [ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]!3", // C Csus4 Ab
  V: "[bb2,d3,bb3,d4,f4,bb4]!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!3 [ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]!3 [bb2,d3,bb3,d4,f4,bb4]!2", // Bb C Csus4 Ab Bb
  W: "[c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!4 [c3,g3,c4,e4,g4,c5] [b2,gb3,b3,eb4,gb4,b4]@2 [bb2,f3,bb3,d4,f4,bb4]@2 [a2,e3,a3,db4,e4,a4] [ab2,eb3,ab3,c4,eb4,ab4]@2 a2@2", // C Csus4 C B Bb A Ab
  X: "a2!2 c3 a2@2 ab2@2 ab2@2 ab2 c3!2 d3!2 a2@2", Y: "a2!2 c3 a2@2 ab2@2 ab2@2 ab2 c3!2 d3!2 [c3,g3,c4,e4,g4,c5]@2",
  Z: "[c3,g3,c4,f4] [ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]!3 [bb2,d3,bb3,d4,f4,bb4]!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!4", // Csus4 Ab Bb C Csus4
  AA: "[[c3,g3,c4,e4,g4,c5]@2 [b2,gb3,b3,eb4,gb4,b4]@4 [bb2,f3,bb3,d4,f4,bb4]@4 [a2,e3,a3,db4,e4,a4]@2 [ab2,eb3,ab3,c4,eb4,ab4]@4 [f2,c3,f3,a3,c4,f4]@100 [g3,c4,eb4,g4,c5]@5 ~ [g3,c4,eb4,g4,c5]@5 [g3,c4,eb4,g4,c5]@5 [g3,c4,eb4,g4,c5]@3 [g3,c4,eb4,g4,c5]@2 [g3,b3,d4,g4,b4]@5 ~ [g3,b3,d4,g4,b4]@5 [g3,b3,d4,g4,b4]@5 [g3,b3,d4,g4,b4]@3 [g3,b3,d4,g4,b4]@3 [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@3 [g3,bb3,d4,g4,bb4]@3 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@3 [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@5 ~ [d3,a3,d4,f4,a4]@2 [d3,a3,d4,f4,a4]@3 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 ~ [e3,a3,db4,e4,a4]@2 [e3,a3,db4,e4,a4]@3 [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@3]/8", // C B Bb A Ab F Cm G …
  AB: "[~@3 [d3,a3,d4,f4,a4]@2 [d3,a3,d4,f4,a4]@3 [f3,a3,c4,f4,a4]@5 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@5 [f3,bb3,d4,f4,bb4]@5 [f3,bb3,d4,f4,bb4]@5 ~ [f3,bb3,d4,f4,bb4]@5 [f3,bb3,d4,f4,bb4]@3 [f3,bb3,d4,f4,bb4]@2 [f3,a3,c4,f4,a4]@5 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@5 [g3,bb3,d4,g4,bb4]@5 ~ [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@3 [g3,bb3,d4,g4,bb4]@2 [f3,a3,c4,f4,a4]@4]/3", // Dm F Bb F Gm F
  AC: "[~@2 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@5 [e3,b3,e4,ab4,b4]@5 ~ [e3,b3,e4,ab4,b4]@5 [e3,b3,e4,ab4,b4]@8 [e3,b3,e4,ab4,b4]@3 [e3,b3,e4,ab4,b4]@7 [e3,b3,e4,ab4,b4]@3 [e3,b3,e4,ab4,b4]@8 [e3,b3,e4,ab4,b4]@3 [e3,a3,db4,e4,a4]@4]/2", // F E A
  AD: "~ [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@2 [e3,a3,db4,e4,a4]@5", // A
  AE: "~ [e3,a3,db4,e4,a4]@2 [e3,a3,db4,e4,a4]@3 [g3,c4,eb4,g4,c5]@5 [g3,c4,eb4,g4,c5]@5 [g3,c4,eb4,g4,c5]@5 ~ [g3,c4,eb4,g4,c5]@2 [g3,c4,eb4,g4,c5]@3 [g3,b3,d4,g4,b4]@5", // A Cm G
  AF: "[g3,b3,d4,g4,b4]@5 [g3,b3,d4,g4,b4]@5 ~ [g3,b3,d4,g4,b4]@2 [g3,b3,d4,g4,b4]@3 [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@5 ~ [g3,bb3,d4,g4,bb4]@5", // G Gm
  AG: "[[g3,bb3,d4,g4,bb4]@2 [g3,bb3,d4,g4,bb4]@3 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 ~ [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@2 [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@5 ~ [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@3 [d3,a3,d4,f4,a4]@2 [e3,a3,db4,e4,a4]@5 ~ [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@2 [d3,a3,d4,f4,a4]@5 ~ [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@3 [d3,a3,d4,f4,a4]@2 [f3,a3,c4,f4,a4]@5 ~ [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@5 ~ [f3,bb3,d4,f4,bb4]@5 [f3,bb3,d4,f4,bb4]@5 [f3,bb3,d4,f4,bb4]@5 [f3,bb3,d4,f4,bb4]@2]/4", // Gm A Dm A Dm F Bb
  AH: "[~ [f3,bb3,d4,f4,bb4]@3 [f3,a3,c4,f4,a4]@5 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@5 ~ [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@5 ~ [g3,bb3,d4,g4,bb4]@2 [g3,bb3,d4,g4,bb4]@3 [f3,a3,c4,f4,a4]@5 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@5 [e3,b3,e4,ab4,b4]@5 [e3,b3,e4,ab4,b4]@5 [e3,b3,e4,ab4,b4]@8 [e3,b3,e4,ab4,b4]@3 [e3,b3,e4,ab4,b4]@8]/3", // Bb F Gm F E
  AI: "[e3,b3,e4,ab4,b4]@3 [e3,b3,e4,ab4,b4]@7 [e3,b3,e4,ab4,b4]@3 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 ~ [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@3", // E A
  AJ: "[[e3,a3,db4,e4,a4]@2 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@2 [g3,c4,eb4,g4,c5]@5 ~ [g3,c4,eb4,g4,c5]@5 [g3,c4,eb4,g4,c5]@5 [g3,c4,eb4,g4,c5]@3 [g3,c4,eb4,g4,c5]@2 [g3,b3,d4,g4,b4]@5 ~ [g3,b3,d4,g4,b4]@5 [g3,b3,d4,g4,b4]@5 [g3,b3,d4,g4,b4]@3 [g3,b3,d4,g4,b4]@2 [g3,bb3,d4,g4,bb4]@5 ~ [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@3 [g3,bb3,d4,g4,bb4]@3 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@4]/3", // A Cm G Gm A
  AK: "~ [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@3 [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@3 [d3,a3,d4,f4,a4]@2", // A Dm
  AL: "~ [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 ~ [e3,a3,db4,e4,a4]@2 [e3,a3,db4,e4,a4]@3 [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@5", // A Dm
  AM: "[d3,a3,d4,f4,a4]@5 ~ [d3,a3,d4,f4,a4]@2 [d3,a3,d4,f4,a4]@3 [f3,a3,c4,f4,a4]@5 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@5", // Dm F
  AN: "[f3,bb3,d4,f4,bb4]@5 [f3,bb3,d4,f4,bb4]@5 ~ [f3,bb3,d4,f4,bb4]@5 [f3,bb3,d4,f4,bb4]@2 [f3,bb3,d4,f4,bb4]@3 [f3,a3,c4,f4,a4]@5 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@3", // Bb F
  AO: "[[f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@5 [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@5 ~ [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@3 [g3,bb3,d4,g4,bb4]@2 [f3,a3,c4,f4,a4]@5 ~ [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@5 [e3,b3,e4,ab4,b4]@5 ~ [e3,b3,e4,ab4,b4]@5 [e3,b3,e4,ab4,b4]@8 [e3,b3,e4,ab4,b4]@2 [e3,b3,e4,ab4,b4]@8 [e3,b3,e4,ab4,b4]@3 [e3,b3,e4,ab4,b4]@8 [e3,b3,e4,ab4,b4]@3 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@2 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@3 [g3,c4,eb4,g4,c5]@5 [g3,c4,eb4,g4,c5]@5 [g3,c4,eb4,g4,c5]@5 ~ [g3,c4,eb4,g4,c5]@2 [g3,c4,eb4,g4,c5]@3 [g3,b3,d4,g4,b4]@5 [g3,b3,d4,g4,b4]@5 [g3,b3,d4,g4,b4]@5 ~ [g3,b3,d4,g4,b4]@2 [g3,b3,d4,g4,b4]@3 [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@5 ~ [g3,bb3,d4,g4,bb4]@2 [g3,bb3,d4,g4,bb4]@3 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 ~ [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@2 [e3,a3,db4,e4,a4]@3 [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@5 ~ [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@3 [d3,a3,d4,f4,a4]@2 [e3,a3,db4,e4,a4]@5 [e3,a3,db4,e4,a4]@5 ~ [e3,a3,db4,e4,a4]@3]/8", // F Gm F E A Cm G Gm …
  AP: "~@2 [e3,a3,db4,e4,a4]@3 [e3,a3,db4,e4,a4]@2 [d3,a3,d4,f4,a4]@5 ~ [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@5 [d3,a3,d4,f4,a4]@3 [d3,a3,d4,f4,a4]@2 [f3,a3,c4,f4,a4]@4", // A Dm F
  AQ: "~@2 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@5 [f3,bb3,d4,f4,bb4]@5 ~ [f3,bb3,d4,f4,bb4]@5 [f3,bb3,d4,f4,bb4]@4", // F Bb
  AR: "~ [f3,bb3,d4,f4,bb4]@3 [f3,bb3,d4,f4,bb4]@3 [f3,a3,c4,f4,a4]@5 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@5 ~ [g3,bb3,d4,g4,bb4]@4", // Bb F Gm
  AS: "~ [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@5 [g3,bb3,d4,g4,bb4]@3 [g3,bb3,d4,g4,bb4]@3 [f3,a3,c4,f4,a4]@5 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@2 [f3,a3,c4,f4,a4]@3 [f3,a3,c4,f4,a4]@2", // Gm F
  AT: "~ [f3,a3,c4,f4,a4]@5 [e3,ab3,b3,e4,ab4]@5 [e3,ab3,b3,e4,ab4]@3 [e3,ab3,b3,e4,ab4]@2 [e3,ab3,b3,e4,ab4]@3 [e3,ab3,b3,e4,ab4]@3 [e3,ab3,b3,e4,ab4]@5 [e3,ab3,b3,e4,ab4]@5", // F E
  AU: "[e3,ab3,b3,e4,ab4]@3 [e3,ab3,b3,e4,ab4]@2 [e3,ab3,b3,e4,ab4]@3 [e3,ab3,b3,e4,ab4]@3 [e3,ab3,b3,e4,ab4]@5 [e3,ab3,b3,e4,ab4]@5 [e3,ab3,b3,e4,ab4]@3 [e3,ab3,b3,e4,ab4]@3 [e3,ab3,b3,e4,ab4]@2 [e3,ab3,b3,e4,ab4]@3", // E
  AV: "[e3,ab3,b3,e4,ab4]@5 [e3,ab3,b3,e4,ab4]@5 [e3,ab3,b3,e4,ab4]@3 [e3,ab3,b3,e4,ab4]@3 [e3,ab3,b3,e4,ab4]@2 [e3,ab3,b3,e4,ab4]@3 [e3,ab3,b3,e4,ab4]@5 a2@4 a2@2", // E
  AW: "a2 c3 a2@2 ab2@2 ab2@2 ab2 c3!2 d3!2 a2@2 a2",
  AX: "a2 c3 a2@2 ab2@2 ab2@2 ab2 c3!2 d3!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]", // C
  AY: "[c3,g3,c4,e4,g4,c5] [c3,g3,c4,f4]!3 [ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]!3 [bb2,d3,bb3,d4,f4,bb4]!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]", // C Csus4 Ab Bb C Csus4
  AZ: "[c3,g3,c4,f4]!2 [ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]!3 [bb2,d3,bb3,d4,f4,bb4]!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!3", // Csus4 Ab Bb C Csus4
  BA: "[ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]!3 [bb2,d3,bb3,d4,f4,bb4]!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4] [c3,g3,c4,f4]@3 c3", // Ab Bb C Csus4
  BB: "b2@2 bb2@2 a2 ab2@2 a2@2 a2!2 c3 a2@2 ab2@2", BC: "ab2@2 ab2 c3!2 d3!2 a2@2 a2!2 c3 a2@2 ab2@2",
  BD: "ab2@2 ab2 c3!2 d3!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!3 [ab2,eb3,ab3,c4,eb4,ab4]@2", // C Csus4 Ab
  BE: "[ab2,eb3,ab3,c4,eb4,ab4]!3 [bb2,d3,bb3,d4,f4,bb4]!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!3 [ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]!2", // Ab Bb C Csus4 Ab
  BF: "[ab2,eb3,ab3,c4,eb4,ab4] [bb2,d3,bb3,d4,f4,bb4]!2 [c3,g3,c4,e4,g4,c5]@2 [c3,g3,c4,e4,g4,c5]!2 [c3,g3,c4,f4]!3 [ab2,eb3,ab3,c4,eb4,ab4]@2 [ab2,eb3,ab3,c4,eb4,ab4]!3 [bb2,d3,bb3,d4,f4,bb4]", // Ab Bb C Csus4 Ab Bb
  BG: "[bb2,d3,bb3,d4,f4,bb4] [g3,c4,e4,g4,c5]@2 [g3,c4,e4,g4,c5]!2 [g3,c4,f4]!4 [g3,c4,e4,g4,c5] [g3,c4,e4,g4,c5]@2 [f3,bb3,d4,f4,bb4]@2 [eb3,ab3,c4,eb4] ~, ~@7 ab4", // Bb C Csus4 C Bb Ab
})).s("gm_acoustic_guitar_steel").gain(0.4).pan(0.1)

// chords · electric guitar jazz · "g2"
const electric_guitar_jazz = note("<~@2 A@6 B@4 C@4 D E@2 F@4 G H I@2 J K G L I@2 M N O P N Q@2 R ~@91>".pickRestart({
  A: "[~@8 bb4 ~@2 a4 ~ g4 ~@10 bb3 ~@2 a3 ~ g3 ~@2 eb4@16, ~@13 d5@2 d5@2 ~@2 d5@2 d5@2 ~@2 d5@2 ~@3 d5@4 ~@11 d4@2 d4@2 ~@2 d4@2 d4@2 ~@2 d4@2 ~@3 d4@4 ~@30, ~@7 bb4 ~ bb4!2 ~ a4 ~ g4@2 g4@8 ~@24, ~@23 bb3 ~ bb3!2 ~ a3 ~ g3@2 ~@16]/6",
  B: "[~@8 bb4 ~@2 a4 ~ g4 ~@10 bb3 ~@2 a3 ~ g3 ~ d4, ~@13 d5@2 d5@2 ~@2 d5@2 d5@2 ~@2 d5@2 ~@3 d5@4 ~@11 d4@2 d4@2 ~@2 d4@2 d4@2 ~@2 d4@2 ~@5, ~@7 bb4 ~ bb4!2 ~ a4 ~ g4@2 g4@12 ~@4, ~@23 bb3 ~ bb3!2 ~ a3 ~ g3@2]/4",
  C: "[~@12 d4 ~ d4@6 ~@4 bb4 ~@2 a4 ~ g4 g4@2, eb4@32 ~@13 d5@2 d5@2 ~@2 d5@2 d5@2 ~@2 d5@2 ~@5, ~@23 bb4 ~ bb4!2 ~ a4 ~@3]/4",
  D: "~@7 bb4, g3@3 ~, ~@2 bb4@2 ~ d5@4 d5@4 d5@2 ~, ~@3 e5@4 bb4@4 e5@4 ~",
  E: "[~@15 ab4, f3@12 ~@2 a4@4 ab4@2 ~ d5@4 d5@4 d5@2 ~, ~@2 a4@2 ~ d5@4 d5@4 d5@2 ~ e3@12 ~@4, ~@3 e5@4 a4@4 e5@4 ~@4 e5@4 ab4@4 e5@4 ~]/2",
  F: "[~@55 ab4@2 ab4@2 ~ d4@2 db4@2, g3@12 ~@2 bb4@4 a4@2 ~ d5@4 d5@4 d5@2 ~ e3@12 ~@2 ab4@4 ab4@2 ~ d5@4 ~@7, ~@2 bb4@2 ~ d5@4 d5@4 d5@2 ~ f3@12 ~@2 a4@4 ab4@2 ~ d5@4 d5@4 d5@2 ~ e3@4 ~@12, ~@3 e5@4 bb4@4 e5@4 ~@4 e5@4 a4@4 e5@4 ~@4 e5@4 ab4@4 e5@4 ~@4 e5@4 ~@9]/4",
  G: "~@2 d3 eb3, c3@3 g4@4 ~@9, ~@2 g3@2 ~ eb4@6 ~@5", H: "~@4 g3@2 f3 ~, f3@3 g4@4 ~@9, ~@2 a3@2 ~ eb4@6 ~@5",
  I: "[g2@2 d3 d4@2 bb3@5 ~@6 bb4@2 ~@4 a4@2 ~ d5 g4@2 g4@4, ~@13 d5@2 d5@2 ~@2 d5@2 d5@2 ~@9, ~@7 bb4 ~ bb4!2 ~ a4 ~@3]/2",
  J: "g2@2 d3 d4@2 bb3 a2 g2 a2@4 bb2 d4 bb3 d4", K: "bb3@2 bb3 d4 bb3 d4 a3@2 a3 d4 g3@2 d3@2 db3@2",
  L: "~@2 g3 a3, f3@3 g4@4 ~@9, ~@2 a3@2 ~ eb4@6 ~@5", M: "g4@2 bb5 e6@2 d6 bb5@2 f6 e6@2 d6@2 bb5@3",
  N: "a5@2 d6 e6@2 d6 a5@2 f6 e6@2 d6@2 a5@3", O: "ab5@2 d6 e6@2 d6 ab5@2 f6 e6@2 d6@2 ab5@3",
  P: "bb4@2 bb5 e6@2 d6 bb5@2 f6 e6@2 d6@2 bb5@3",
  Q: "[ab5@2 d6 e6@2 d6 ab5@2 d6 e6@2 d6 ab5@2 d6 e6@2 d6 ab5@2 d6 e6@2 d6 ab5@2 d6 e6@2 d6 ab5@2]/2", R: "a5@9 ~@7",
})).s("gm_electric_guitar_jazz").gain(0.36).pan(0.9)

// chords · distortion guitar · "g3"
const distortion_guitar = note(`<
  ~@48 A B A B ~@4 C ~ D E F G ~ H ~ H I J K L ~@48 M ~ N O P ~@2 Q R S T@3 ~
>`.pickRestart({
  A: "~@11 a2 ~@4", B: "a2 ~ ab2 ~ ab2 ~@11", C: "~@2 a2@2 ~@10 ab2 ~", D: "~@2 a3@2 ~@10 ab2 ~",
  E: "~@7 [bb2,d3,f3,bb3,d4,f4,bb4]", F: "[a3,c4,a4,c5] ~@5 [bb2,d3,f3,bb3,d4,f4,bb4] [a3,c4,a4,c5]",
  G: "~@5 [bb2,d3,f3,bb3,d4,f4,bb4] [a3,c4,a4,c5] ~", H: "~@8 ab3 ~@7", I: "~@6 d4@6 b4@5 b4@5 ~ b4@3 g4@2 ~@4",
  J: "~@4 [bb2,d3,f3,bb3,d4,f4,bb4] [a3,c4,a4,c5] ~@2", K: "~@3 [bb2,d3,f3,bb3,d4,f4,bb4] [a3,c4,a4,c5] ~@3",
  L: "~@2 [bb2,d3,f3,bb3,d4,f4,bb4] [a3,c4,a4,c5] ~@4", M: "~@10 a2 ~@5",
  N: "~@7 [bb2,d3,f3,bb3,d4,f4,bb4]@2 [a3,c4,a4,c5]@2 ~@5", O: "~@5 [bb2,d3,f3,bb3,d4,f4,bb4]@2 [a3,c4,a4,c5]@2 ~@7",
  P: "~@3 [bb2,d3,f3,bb3,d4,f4,bb4]@2 [a3,c4,a4,c5]@2 ~@9", Q: "~@4 a2 ~@11", R: "~@7 d3@7 a3 e4",
  S: "eb5!2 ~@2 eb5 c3@2 ~@9",
  T: "[~ [bb2,d3,f3,bb3,d4,f4,bb4]@2 [a3,c4,a4,c5]@2 ~@10 [bb2,d3,f3,bb3,d4,f4,bb4]@2 [a3,c4,a4,c5]@2 ~@10 [bb2,d3,f3,bb3,d4,f4,bb4]@2 [a3,c4,a4,c5]@2 ~@15]/3", // Bb Am Bb Am Bb Am
})).s("gm_distortion_guitar").gain(0.64).pan(0.3)

// other · overdriven guitar · "g4"
const overdriven_guitar = note(`<
  ~@48 A B A B ~@3 C D E F G@2 ~ H I J K L M N O P ~@45 Q R S T U V W X Y Z Y AA AB@3 ~
>`.pickRestart({
  A: "~@10 a2!4 c3 a2", B: "a2 ab2!5 c3!2 d3!2 ~@6", C: "~@2 a3 ~@5", D: "~@2 a3@2 a2 ~ a2!2 c3 a2 ~ ab2@2 ab2!3",
  E: "c3 d3!2 c3 d3 ~ d3!2 ~ eb3 ~ e3 f3 gb3 g3 ab3",
  F: "g3@4 c3@4 a2@2 ~@2 a2@2 a2@2 c3@2 a2@2 a2 ~ ab2@4 [ab2,g3,c4]@2 [ab2,g3,c4]@2 [ab2,g3,c4]@2", // Abmaj7
  G: "[[ab2,g3,c4]!4 c3@28]/2", H: "~@20 ab3!2 bb3!2 d4!2 e4 gb4 c5!4", I: "c5!22 c5@6 a5 c6!3",
  J: "c6!2 a5 c6!5 a5 c6 a5 c6 a5 c6 a5 c6 a5 c6 a5 c6 a5 c6 a5 c6 a5 c6!3 f5@4",
  K: "c6 a5@2 c6@3 c6 a5@2 c6 f5@2 c6 a5@2 c6", L: "f5@2 e4 c6!3 e6 c6 e6 c6 a5!2 [g3,b3]@2 g4 a4",
  M: "a4@2 a4@2 g4 b3 ab4 bb4 bb4@2 ab4 b3 g4 a4 a4@2", N: "a4@2 g4 b3 ab4 bb4 ab4 bb4 d4 b3 g4 a4 a4@2 a4@2",
  O: "g4 b3 ab4 bb4 bb4@2 ab4 b3 g4 a4 a4@2 a4@2 g4 g3", P: "a5 ab5 ~ g5 ~ gb5 ~@10", Q: "~@11 a4@2 a3 ~ a3",
  R: "a3 c4 a3@2 ab3@2 ab3!2 ~ c4 d4!2 c4 d4@2 d4", S: "d4!9 g4 d4 [g3,b3]@2 a3@2 a3",
  T: "a3@2 c4@2 a3@2 [ab3,c4]@2 ab3@2 [ab3,c4]@2 ab3@2 [ab3,c4]@2 ab3@2 c4 ~ c4 ~ c4 ~ c4 ~ d5@2 eb4@4", // Ab
  U: "~ eb4!2 a4 bb3@2 bb3 f4 f3@2 f3 d5 eb4@3 eb4", V: "eb4 a4 bb3@2 bb3 f4 f3@2 f3 d5 eb4@5 [f4,a4]",
  W: "bb3@3 f4 f3@3 d5 eb4@5 e4@2 c5", X: "b4@2 ~@2 bb4@2 ~@2 a4@2 ~@2 ab4@2 c5!6 eb5!6 f5!4 c5!2",
  Y: "c5!4 f4!6 b4@2 c5@2 b4!12 a4@2 a4@4", Z: "b4@4 b4@4 ~@2 b4@4 c5!6 eb5!6 f5!4 c5!2",
  AA: "b4@2 ~ bb3@2 a2@2 a4@2 g3 g4@2 g3 bb3 c4 a4, ~ b4 ~@6",
  AB: "[g3@2 f4@6 eb4@2 a4@4 g4@2 g4@6 eb4@2 f4@2 d5@2 c5@2 d5@6 c5@2 a4@7 g4@5 bb3@2 c4@2 f4@6 f4@2 eb4@4 a4@4 g4@2 g4@6 c4@2 bb3@2 e4@2 eb4@2 ~@2 d4@2 ~@2 c4@2 ~@2]/3",
})).s("gm_overdriven_guitar").gain(0.64).pan(0.7)

// other · guitar harmonics · "g4+"
const guitar_harmonics = note("<~@117 [~@8 ab5 ~@7] ~@14>").s("gm_guitar_harmonics").gain(0.25)

// bass · electric bass finger · "bass"
const bass = note(`<
  ~@15 A B C D B C E F G H I J I K G H I L B C D B C M N O P O Q R S T U V W X Y Z AA AB@2 AC AD AE AF AG AH AI@2 AJ@2
  AK AL AM AN AO ~@45 AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC@2 ~
>`.pickRestart({
  A: "~@14 a2 bb2", B: "g2@2 g2 g2@4 g2@2 g2@2 g2!3 a2 bb2", C: "f2@2 f2 f2@4 f2@2 f2@2 f2!3 a2 bb2",
  D: "e2@2 e2 e2@4 e2@2 e2@2 e2 bb2 a2 f2 gb2", E: "e2@2 e2 e2@4 e2@2 e2@2 e2 bb2 a2 e2!2",
  F: "e1@2 e1 e2 e3@3 e2 e3 e2 e3@2 a1@2 bb1@2", G: "c2@2 c2!2 c2@2 c2!2 bb1@4 c2@4",
  H: "f1@2 f1!2 f1@2 g1@2 a1@4 bb1@3 a1", I: "g1@2 g1!2 g1@2 g1@2 a1@2 a1@2 bb1@3 d2", J: "e2@2 e1!8 e1@2 e1@2 e1@2",
  K: "e2@2 e1!2 e2 e1!5 e1@2 d2@2 db2@2", L: "e2@2 e1!8 e1@2 e1@2 a2 bb2", M: "e2@2 e1 e2@4 e2@2 e2@2 e2 a2 bb2 e2@2",
  N: "e1@2 e1 e1@4 e1@2 e1@2 e1!3 a2@2", O: "a1@2 a1!2 c2 a1@2 ab1@2 ab1@2 ab1 c2!2 d2!2",
  P: "a1@2 a1!2 c2 a1@2 ab1!5 c2!2 d2!2", Q: "a1@2 a1!2 c2 a1@2 ab1!5 e3 f3 bb2 b2",
  R: "c3@2 c3!2 f2 gb2 g2 ab2@2 ab2 eb3 e3 f3 bb2 c3@2", S: "c3 e1 f2 gb2 g2 ab2 f3 e3 eb3 d3 bb2 b2 c3@2 c3 e1",
  T: "f2 gb2 g2 ab2 ~ ab2 eb3@2 f3@2 c3@2 c3 e1 f2 gb2", U: "g2 ab2 c3 b2 ~ bb2@3 a2@2 a1@2 ~@4",
  V: "~@10 a1@2 a1!2 c2 a1", W: "~ ab1@2 ab1@2 ab1 c2 ~ d2!2 g1@4 ~@2", X: "~@6 c2 d2 g1 ab1 a1@2 a1!2 c2 a1",
  Y: "~ ab1@2 ab1@2 ab1 c2!2 e2@2 c3@2 c3 e1 f2 gb2", Z: "g2 ab2 f3 e3 eb3 d3 bb2 b2 c3@2 c3 e1 f2 gb2 g2 ab2",
  AA: "f3 e3 eb3 d3 bb2 b2 c3@2 c3 e1 f2 gb2 g2 ab2 ~ ab2",
  AB: "[eb3@2 f3@2 c3@2 c3 e1 f2 gb2 g2 ab2 c3 b2 ~ bb2@3 g2@2 ~@12]/2",
  AC: "~@2 a1 g1 a1 ~ a1!2 c2 d2@2 eb2@2 eb2@2 eb2", AD: "d2 c2 a1 g1 g1@4 ~@8",
  AE: "~@4 a1 ~ a1!2 c2 d2@2 eb2@2 eb2@2 eb2", AF: "d2 c2 a1 g1 c2@2 c2 e1 f1 gb1 g1 ab1@2 ab1 eb2@2",
  AG: "f2@2 c2@2 c2 e1 f1 gb1 g1 ab1 ~ eb2 f2 eb2 c2 bb1", AH: "c2@2 c2 e1 f1 gb1 g1 ab1@2 ab1 eb2@2 f2@2 c2@2",
  AI: "[c2 e1 f1 gb1 g1 ab1 c3 b2 ~ bb2 ~ g2@3 g1@4 ~@12 a1 ~]/2",
  AJ: "[a1!2 c2 d2@2 eb2@2 eb2@2 eb2 d2 c2 a1 g1 g1@4 ~@9 e1 a1 g1 a1 ~]/2",
  AK: "a1!2 c2 d2@2 eb2@2 eb2@2 eb2 d2 c2 bb1 b1 c2@2", AL: "c2 e1 f1 gb1 g1 ab1@2 ab1 eb2@2 f2@2 c2@2 c2 e1",
  AM: "f1 gb1 g1 ab1@2 eb2 f2 e2 eb2 bb1 c2@2 c2 e1 f1 gb1", AN: "g1 ab1@2 ab1 eb2@2 f2@2 c2@2 c2 e1 f1 gb1 g1 ab1",
  AO: "c3 b2 ~ bb2 ~ a2@3 f1@2 ~@6", AP: "~@11 d2@2 a1 ~ a1", AQ: "a1 c2 a1 ~ ab1!5 c2 ~ d2@2 g1@3",
  AR: "~@10 e2 g2 ab2 a1 ~ a1", AS: "a1 c2 a1 ~ ab1@2 ab1@2 ab1 c2 d2 bb1 b1 c2@2 c2",
  AT: "e1 f1 gb1 g1 ab1@2 ab1 bb1@2 eb2@2 c2@2 c2 e1 f1", AU: "gb1 g1 ab1@2 f2 e2 eb2 bb1 b1 c2@2 c2 e1 f1 gb1 g1",
  AV: "ab1@2 ab1 f2@2 eb2@2 c2@2 c2 e1 f1 gb1 g1 ab1 c2", AW: "b1 bb1@2 a1 ~ e2@2 a1@4 ~@5",
  AX: "~@5 d2@2 a1@2 a1!2 c2 d2 ~ eb2@2", AY: "eb2@2 eb2 d2 c2 a1 g1 a1@4 ~@5",
  AZ: "c2 ~ b1 c2 d2 g1 ab1 a1@2 a1!2 c2 d2 ~ eb2@2", BA: "eb2@2 eb2@2 d2 c2 bb1 c2@2 c2 e1 f1 gb1 g1 ab1@2",
  BB: "ab1 bb1@2 eb2@2 c2@2 c2 e1 f1 gb1 g1 ab1@2 f2 e2",
  BC: "[eb2 bb1 b1 c2@2 c2 e1 f1 gb1 g1 ab1@2 ab1 f2@2 eb2@2 c2@2 c2 e1 f1 gb1 g1 ab1 c2 b1 bb1@2 a1 ab1 ~]/2",
})).s("gm_electric_bass_finger").gain(0.36).pan(0.7)

// drums · kick
const kick = s("bd").struct(`<
  A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B C@6 A B A B C D E F G H G H I J K L M N M N O C P
  Q R@3 S@2 T U S V W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR AS AT AU AV AW AX AY AZ X Y Z AA AB AC
  AD AE AF AG AH AI BA BB BC@3 BD@2 BE BF BG BH@2 BI BD@2 BJ ~
>`.pickRestart({
  A: "x ~ x ~ x!2 ~@2 x ~ x ~ x!2 ~@2", B: "x ~ x ~ x!2 ~@2 x ~ x ~ x!4", C: "x ~ x ~ x!2 ~@2 x ~ x ~ x!3 ~",
  D: "x ~ x!2 ~@2 x ~ x ~ x!3 ~ x ~", E: "x!2 ~@2 x ~ x ~ x!3 ~ x ~ x!2", F: "~@2 x!2 ~ x ~ x!2 ~ x ~ x ~ x!2",
  G: "~@2 x ~ x ~ x!2 ~@2 x ~ x ~ x!2", H: "~@2 x ~ x ~ x!5 ~ x ~ x!2", I: "~@2 x ~ x ~ x!3 ~ x ~ x!2 ~@2",
  J: "x ~ x ~ x!3 ~ x ~ x!2 ~@2 x ~", K: "x ~ x!3 ~ x ~ x!2 ~@2 x!2 ~ x", L: "~ x!2 ~ x ~ x ~ x!2 ~@2 x ~ x ~",
  M: "x!5 ~ x ~ x!2 ~@2 x ~ x ~", N: "x!2 ~@2 x ~ x ~ x!2 ~@2 x ~ x ~", O: "x!3 ~ x ~ x!2 ~@2 x ~ x ~ x!2",
  P: "x ~ x!2 ~@2 x!2 ~ x ~ x!2 ~@3", Q: "~@8 x!5 ~ x ~", R: "x!2 ~@2 x ~ x ~ x ~@2 x ~ x!2 ~", S: "x!8",
  T: "x ~ x ~ x ~ x ~ x ~ x ~ x!2 ~@2", U: "x!2 ~ x ~ x!2 ~ x ~ x ~ x ~ x ~",
  V: "x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@4 x ~@2", W: "~ x ~@4 x ~@3 x ~@4 x ~@4 x ~@5 x ~@5",
  X: "~@7 x ~ x ~@5 x ~@12 x ~@2 x", Y: "~@4 x ~@12 x ~@2 x ~@4 x ~@6", Z: "~@6 x ~@2 x ~@4 x ~@12 x ~@2 x ~",
  AA: "~@3 x ~@12 x ~@2 x ~@4 x ~@7", AB: "~@5 x ~@2 x ~@4 x ~@12 x ~@2 x ~@2", AC: "~@2 x ~@13 x ~ x ~@4 x ~@8",
  AD: "~@5 x ~ x ~@5 x ~@12 x ~ x ~@3", AE: "~@2 x ~@12 x ~ x ~@5 x ~@8", AF: "~@4 x ~@2 x ~@4 x ~@12 x ~@2 x ~@3",
  AG: "~ x ~@12 x ~@2 x ~@4 x ~@9", AH: "~@3 x ~@2 x ~@4 x ~@12 x ~@2 x ~@4", AI: "x ~@12 x ~@2 x ~@4 x ~@10",
  AJ: "~@2 x ~@2 x ~@4 x ~@13 x ~ x ~@4 x", AK: "~@13 x ~ x ~@5 x ~@10", AL: "~@2 x ~ x ~@5 x ~@12 x ~ x ~@5 x",
  AM: "~@12 x ~@2 x ~@4 x ~@11", AN: "~ x ~@2 x ~@4 x ~@12 x ~@2 x ~@4 x ~", AO: "~@11 x ~@2 x ~@4 x ~@12",
  AP: "x ~@2 x ~@4 x ~@12 x ~@2 x ~@4 x ~@2", AQ: "~@10 x ~@2 x ~@4 x ~@13", AR: "x ~ x ~@4 x ~@13 x ~ x ~@5 x ~@2",
  AS: "~@10 x ~ x ~@5 x ~@12 x", AT: "~ x ~@5 x ~@12 x ~@2 x ~@4 x ~@3", AU: "~@9 x ~@2 x ~@4 x ~@12 x ~",
  AV: "~ x ~@4 x ~@12 x ~@2 x ~@4 x ~@4", AW: "~@8 x ~@2 x ~@4 x ~@12 x ~@2", AX: "x ~@4 x ~@12 x ~@2 x ~@4 x ~@5",
  AY: "~@8 x ~ x ~@4 x ~@13 x ~ x", AZ: "~@5 x ~@12 x ~ x ~@5 x ~@5", BA: "~@2 x ~@2 x ~@4 x ~@13 x ~ x ~@5",
  BB: "~@7 x!5 ~ x ~ x", BC: "x ~@2 x ~ x ~ x ~@2 x ~ x!2 ~ x", BD: "~ x ~ x ~ x ~ x ~ x ~ x ~ x ~ x",
  BE: "~ x ~ x ~ x ~ x ~ x ~ x!2 ~@2 x", BF: "x ~ x ~ x!2 ~ x!2 ~@2 x ~@4", BG: "~ x!5 ~ x ~ x!2 ~@2 x ~ x",
  BH: "~ x ~@2 x ~ x!2 ~ x!2 ~@2 x ~ x", BI: "~ x ~@2 x ~ x!2 ~ x ~ x ~ x ~ x", BJ: "~ x ~ x ~ x!2 ~@2 x!2 ~ x ~ x!2",
})).gain(0.4)

// drums · rim
const rim = s("rim").struct("<A@34 B@6 A@4 C D E F G@4 H I J K A@4 L C M ~@6 N O ~@51 P ~@7 Q ~>".pickRestart({
  A: "x!4", B: "~@4 x!3 ~@5 x!3 ~", C: "x ~ x ~ x ~ x!2", D: "~ x ~ x ~ x!2 ~", E: "x ~@3 x ~@3 x ~ x ~@2 x ~@2",
  F: "~ x ~@3 x ~ x", G: "~ x ~ x ~ x ~ x", H: "~ x ~ x!2 ~ x ~", I: "x ~ x!2 ~ x ~ x", J: "~@2 x ~ x ~@2 x ~@4 x ~@3",
// … 105 more lines

More by Radiohead