Strudelify

Save Tonight

Eagle-Eye Cherry

KeyC majorTempo120 bpm
0:00/0:00
// Save Tonight — Eagle-Eye Cherry
// 120 bpm, 4/4, key C major. 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 118 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 25, guitar program 30, guitar program 25.
setcpm(120/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 pick
const bass = note(`<
  ~@5 A@5 B@8 C@2 D E D E D F G H G H I J K J L M N O P Q R@2 S T U V W X W Y@8 Z AA AB AC AD AE AF@2 AG AH ~@7 AI AJ AK
  AJ AK AJ AK AL AK AJ AM AN AO AP@2 AQ@2 AR@4 AS@5 AT AU AV AW AX AY@2 AZ BA@2 BB@3 BC BD@3 ~
>`.pickRestart({
  A: "[~@15 a1@8 f1@8 c2@8 g1@8 a1@8 f1@8 c2@8 g1@8 a1]/5",
  B: "[~@14 f1@16 ~ c2@16 g1@16 a1@16 f1@16 c2@16 g1@16 a1@16 f1@16 c2@16 g1@16 a1@16 f1@16 c2@16 g1@16 a1]/8",
  C: "[~@15 f1@16 c2@16 g1@16 ~]/2", D: "a1 f1", E: "c2 g1", F: "c2!2 e2 f2 g2!2 a2 g2",
  G: "a1@7 ~ a1@5 ~@3 f1@6 ~@2 f1@5 ~@3", H: "c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@7 ~ g2@4 a2@4",
  I: "a1@7 ~ a1@5 ~@3 f1@6 ~@3 f1@5 ~@2", J: "~ c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@7 ~ g2@4 a2@3",
  K: "~ a1@7 ~ a1@5 ~@3 f1@6 ~@2 f1@5 ~@2", L: "~ a1@4 a1@4 ~@8 f1@2 ~@2 f1@4 ~@4 f1@3",
  M: "~ c2@4 c2@5 ~@7 g1@2 ~@2 g1@6 ~@2 g1 ~@2", N: "~ a1@4 ~ a1@4 ~@4 a1@4 f1@2 ~@2 f1@4 ~@4 f1@2",
  O: "~@2 c2@14 ~@2 g1@2 ~@2 g1@6 ~@2 g1 ~", P: "~@2 a1@4 a1@7 ~ a1@4 f1@2 ~@2 f1@4 ~@4 f1@2",
  Q: "~@2 c2@14 ~@2 g1@2 ~@2 g1@6 ~@3 g1",
  R: "[~@3 a1@4 a1@7 ~ a1@4 f1@2 ~@2 f1@4 ~@4 f1@3 ~ c2@14 ~@2 g1@2 ~@2 g1@4 g1@5]/2",
  S: "~@3 a1@4 a1@7 ~ a1@4 f1@2 ~@2 f1@4 ~@5", T: "f1@3 ~ c2@14 ~@2 g1@2 ~@2 g1@6 ~@2",
  U: "g1 ~@3 a1@4 a1@7 ~ a1@4 f1@2 ~@2 f1@4 ~@4", V: "f1@3 ~ c2@14 ~@3 g1@2 ~@2 g1@6 ~",
  W: "~ g1 ~@3 a1@4 a1@7 ~ a1@4 f1@2 ~@2 f1@4 ~@3", X: "~ f1@3 ~ c2@14 ~@2 g1@2 ~@2 g1@6 ~",
  Y: "[~ f1@3 ~@2 c2@3 c2@4 ~ e2@4 f2@4 g2@4 g2@4 a2@4 g2@4 a1@7 ~ a1@5 ~@3 f1@6 ~@2 f1@5 ~@3 c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@7 ~ g2@4 a2@4 a1@7 ~ a1@5 ~@3 f1@6 ~@2 f1@5 ~@4 c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@7 ~ g2@4 a2@4 a1@7 ~ a1@5 ~@3 f1@6 ~@2 f1@5 ~@3 c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@7 ~ g2@4 a2@4 a1@7 ~ a1@5 ~@3 f1@6 ~@3]/8",
  Z: "f1@5 ~@3 c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@7 ~", AA: "g2@4 a2@4 a1@4 a1@7 ~ a1@4 f1@2 ~@2 f1@4",
  AB: "~@4 f1@3 ~ c2@14 ~@2 g1@2 ~@2 g1@4", AC: "~@4 g1 ~@3 a1@4 ~ a1@7 ~ a1@4 f1@2 ~@2 f1@3",
  AD: "~@5 f1@3 ~ c2@4 c2@4 e2@4 f2@4 g2@4 g2@3", AE: "~ a2@4 g2@4 a1@4 a1@7 ~ a1@4 f1@2 ~@2 f1@3",
  AF: "[~@5 f1@3 ~ c2@14 ~@2 g1@2 ~@2 g1@6 ~@2 g1 ~@3 a1@4 a1@7 ~ a1@4 f1@2 ~@2 f1@3]/2",
  AG: "~@5 f1@3 ~ c2@4 c2@4 e2@4 f2@4 g2@2 ~@2 g2@3", AH: "~ f1@4 ~ g1@4 a1@12 ~@10", AI: "~@11 a1@7 a1@5 ~@3 f1@6",
  AJ: "~@2 f1@5 ~@3 c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@6", AK: "~@2 g2@4 a2@4 a1@7 ~ a1@5 ~@3 f1@6",
  AL: "~@2 f1@5 ~@3 e2@4 e2@4 d2@2 e2@2 f2@2 ~@2 g2@6", AM: "~@2 g2@4 ~ a2@4 a1@7 ~ a1@5 ~@3 f1@5",
  AN: "~@3 f1@5 ~@3 c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@5", AO: "~@3 g2@4 a2@4 a1@7 ~ a1@5 ~@3 f1@5",
  AP: "[~@3 f1@5 ~@3 c2@7 ~@2 d2@2 e2@2 f2@2 ~@2 g2@7 ~ g2@4 a2@4 a1@7 ~ a1@5 ~@3 f1@4]/2",
  AQ: "[~@4 f1@5 ~@3 c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@7 ~ g2@4 a2@4 a1@7 ~ a1@5 ~@3 f1@4]/2",
  AR: "[~@4 f1@5 ~@4 c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@7 ~ g2@4 a2@4 a1@7 ~ a1@5 ~@3 f1@6 ~@2 f1@5 ~@3 c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@7 ~ g2@4 a2@4 a1@7 ~ a1@5 ~@3 f1@3]/4",
  AS: "[~@5 f1@5 ~@4 c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@7 ~ g2@4 a2@4 a1@7 ~ a1@5 ~@3 f1@6 ~@2 f1@5 ~@3 c2@7 ~@2 d2@2 e2@2 f2@2 ~@2 g2@7 ~ g2@4 a2@4 a1@7 ~ a1@5 ~@3 f1@6 ~@2 f1@5 ~@4 c2@7 ~ d2@2 e2@2 f2@2 ~@2]/5",
  AT: "g2@7 ~ g2@4 a2@4 a1@7 ~ a1@5 ~@3", AU: "f1@6 ~@2 f1@5 ~@4 c2@7 ~ d2@2 e2@2 f2@2 ~",
  AV: "~ g2@7 ~ g2@4 a2@4 a1@7 ~ a1@5 ~@2", AW: "~ f1@6 ~@3 f1@5 ~@3 c2@7 ~ d2@2 e2@2 f2@2",
  AX: "~@2 g2@7 ~ g2@4 a2@4 a1@7 ~ a1@5 ~",
  AY: "[~@2 f1@6 ~@3 f1@5 ~@3 c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@7 ~ g2@4 a2@4 a1@7 ~@2 a1@4]/2",
  AZ: "~@4 f1@6 ~@2 f1@5 ~@3 c2@7 ~ d2@2 e2@2",
  BA: "[f2@2 ~@2 g2@8 g2@4 a2@4 ~ a1@7 ~ a1@5 ~@3 f1@6 ~@2 f1@5 ~@3 c2@7 ~@2 d2@2]/2",
  BB: "[e2@2 f2@2 ~@2 g2@7 ~ g2@4 a2@4 a1@7 ~ a1@5 ~@3 f1@6 ~@2 f1@5 ~@4 c2@7 ~ d2@2 e2@2 f2@2 ~@2 g2@8 g2@4 a2@4 a1@7 ~@2]/3",
  BC: "a1@5 ~@3 f1@6 ~@2 f1@5 ~@3 c2@7 ~", BD: "[d2@2 e2@2 f2@2 ~@2 g2@8 ~ g2@4 a2@4 a1@66 ~ a1@4]/3",
})).s("gm_electric_bass_pick").gain(0.43)

// chords · electric guitar clean
const electric_guitar_clean = note(`<
  ~@2 A B C D E D E D F G H I J I J I J K L M L M L M N O N O P Q R Q S T U V U V W X Y Z AA AB AC AD AE AF AG@2 AH@5 AI
  AJ AI AK AL AM AN AO AP AQ AR AS AR AT AU AV AU AW AX AY AX AZ AX AZ AX AZ BA BB@2 BC@2 BD BE BD BF BG BH BI BJ BK BL
  BM BN BO BP BQ BR BS BT BU BV BW BX@4 BY BZ@4
>`.pickRestart({
  A: "~ [a3,c4,e4] ~@3 [f3,a3,c4,f4] ~@2", B: "~@5 [c3,g3,g4]@4 ~@12 [d3,g3,d4,g4]@3 ~@8, ~ c4 ~@6",
  C: "~@5 [a3,c4,e4]@4 ~@13 [f3,a3,f4]@3 ~@7, ~@21 c4@4 ~@7", D: "~@6 [c3,g3,c4,g4]@4 ~@12 [d3,g3,d4,g4]@3 ~@7",
  E: "~@3 [a3,c4,e4]@2 ~@6 [f3,a3,c4,f4]@2 ~@3", F: "~@6 [a3,c4,e4]@4 ~@13 [f3,a3,f4]@3 ~@6, ~@11 c4@2 ~@3",
  G: "~@7 [c3,g3,g4]@4 ~@12 [d3,g3,d4,g4]@3 ~@6, ~@3 c4@2 ~@11", H: "~@7 [a3,c4,e4]@4 ~@12 [f3,a3,c4,f4]@4 ~@5",
  I: "~@7 [c3,g3,c4,g4]@4 ~@12 [d3,g3,d4,g4]@3 ~@6", J: "~@8 e4@4 ~@12 f3@3 ~@5, ~@7 [a3,c4]@4 ~@12 [a3,c4,f4]@4 ~@5",
  K: "~@7 [c3,g3,c4,g4]@4 ~@13 [d3,g3,d4,g4]@3 ~@5", L: "~@2 [a3,c4,e4] ~@3 [f3,a3,c4,f4] ~",
  M: "~@8 [c3,g3,c4,g4]@4 ~@12 [d3,g3,d4,g4]@3 ~@5", // C5 G5
  N: "~@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~", // Am F
  O: "~@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~", // C5 G5
  P: "~@5 [a3,c4,e4] ~ [a3,c4,e4] [a3,c4,e4]@4 ~ [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4]", // Am F
  Q: "~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4]", // C5 G5
  R: "~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4]", // Am F
  S: "~@9 [a3,c4,e4]@4 ~@12 [f3,a3,c4,f4]@4 ~@3", T: "~@9 [c3,g3,c4,g4]@4 ~@12 [d3,g3,d4,g4]@3 ~@4",
  U: "~@5 [a3,c4,e4]@2 ~@6 [f3,a3,c4,f4]@2 ~", V: "~@10 [c3,g3,c4,g4]@4 ~@12 [d3,g3,d4,g4]@3 ~@3",
  W: "~@11 [a3,c4,e4]@4 ~@12 [f3,a3,c4,f4]@4 ~", X: "~@11 [c3,g3,c4,g4]@4 ~@12 [d3,g3,d4,g4]@3 ~@2",
  Y: "~@11 [a3,c4,e4]@4 ~@13 [f3,a3,f4]@3 ~, ~@27 c4@4 ~", Z: "~@12 [c3,g3,c4,g4]@4 ~@12 [d3,g3,d4,g4]@3 ~",
  AA: "~@3 [a3,c4,e4] ~@3 [f3,a3,c4,f4]", AB: "~@12 [c3,g3,c4,g4]@4 ~@13 [d3,g3,d4,g4]@3",
  AC: "~ [d3,g3,d4,g4] ~@11 [a3,c4,e4]@4 ~@12 [f3,a3,c4,f4]@3", AD: "~@13 [c3,g3,c4,g4]@4 ~@12 [d3,g3,d4,g4]@3",
  AE: "~@13 [a3,c4,e4]@4 ~@13 f3@2, ~@29 [a3,c4,f4]@3", AF: "~@7 [c3,g3,g4]@2 ~@6 [d3,g3,d4,g4], ~@13 c4@4 ~@15",
  AG: "[~@10 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@2]/2", // Am F C5 G5
  AH: "[~@2 [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@6 [a3,c4,e4] ~ [a3,c4,e4] [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~@2 [f3,a3,f4]@3 ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@6 [a3,c4,e4] ~ [a3,c4,e4] [a3,c4,e4]@4 ~ [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~, ~@15 c4@2 ~@63]/5", // G5 Am F C5 G5 Am F C5 …
  AI: "[f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~", // F C5
  AJ: "[d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~", // G5 Am F
  AK: "[d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@6 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3", // G5 Am F
  AL: "~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4]", // F C5
  AM: "~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3", // G5 Am F
  AN: "~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@6 [c3,g3,c4,g4] ~", // F C5
  AO: "[c3,g3,c4,g4] [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@6 [a3,c4,e4] ~ [a3,c4,e4] [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3", // C5 G5 Am F
  AP: "~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~@2 [c3,g3,c4,g4] [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@6 [c3,g3,c4,g4] ~", // F C5
  AQ: "[c3,g3,c4,g4] [d3,g3,d4,g4]@3 ~ [d3,g3,d4] g4 [d3,g3,d4] g4 ~@9 [a3,c4,e4]@4 ~@10", // C5 G5 Am
  AR: "~ [f3,a3,c4,f4]@2 ~@6 [c3,g3,c4,g4]@2 ~@5", AS: "~@2 [d3,g3,d4,g4]@3 ~@13 [a3,c4,e4]@4 ~@10",
  AT: "~@3 g4@3 ~@13 [a3,c4,e4]@4 ~@9, ~@2 [d3,g3,d4]@3 ~@27", AU: "~@3 [f3,a3,c4,f4]@4 ~@12 [c3,g3,c4,g4]@4 ~@9",
  AV: "~@3 [d3,g3,d4,g4]@3 ~@13 [a3,c4,e4]@4 ~@9", // G5 Am
  AW: "~@3 [d3,g3,d4,g4]@3 ~@9 [a3,c4,e4] ~ [a3,c4,e4] [a3,c4,e4]@3 ~ [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@2", // G5 Am F
  AX: "~@2 [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5 [c3,g3,c4,g4] ~", // F C5
  AY: "[c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@3 ~ [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@2", // C5 G5 Am F
  AZ: "[c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@2", // C5 G5 Am F
  BA: "~@2 [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~@2 [c3,g3,c4,g4] [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@6 [c3,g3,c4,g4]", // F C5
  BB: "[~ [c3,g3,c4,g4] ~ g4@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5 [c3,g3,c4,g4], ~@2 [d3,g3,d4]@3 ~@59]/2", // C5 G5 Am F C5 G5
  BC: "[~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~@2 [c3,g3,c4,g4] [c3,g3,c4,g4]@4 ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5]/2", // C5 G5 Am F C5
  BD: "[c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~", // C5 G5 Am F
  BE: "[f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5", // F C5
  BF: "[f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~@2 [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@4", // F C5
  BG: "~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]", // C5 G5 Am F
  BH: "~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@4", // F C5
  BI: "~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@6 [a3,c4,e4] ~ [a3,c4,e4] [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]", // C5 G5 Am F
  BJ: "~@2 [f3,a3,c4,f4]@3 ~ [f3,a3,f4]@3 ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@3, ~@5 c4@4 ~@23", // F C5
  BK: "~@2 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~", // C5 G5 Am F
  BL: "[f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@6 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@2", // F C5
  BM: "~@3 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4]", // C5 G5 Am F
  BN: "~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~", // F C5
  BO: "~@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~", // C5 G5 Am
  BP: "[f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~@2 [f3,a3,f4]@3 ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4], ~@2 c4 ~@5", // F C5
  BQ: "~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4]", // C5 G5 Am
  BR: "~ [f3,a3,c4,f4] ~@2 [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~", // F C5
  BS: "[c3,g3,c4,g4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@6 [a3,c4,e4] ~ [a3,c4,e4] [a3,c4,e4]@4 [a3,c4,e4] ~", // C5 G5 Am
  BT: "~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4]", // Am F C5
  BU: "~ [c3,g3,c4,g4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@6 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4", // C5 G5 Am
  BV: "[a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4", // Am F C5
  BW: "[c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4] g4 ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@3", // C5 G5 Am
  BX: "[~ [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@6 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@5 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@6 [a3,c4,e4] ~ [a3,c4,e4] ~]/4", // Am F C5 G5 Am F C5 G5 …
  BY: "[a3,c4,e4]@4 [a3,c4,e4] ~ [a3,c4,e4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~ [f3,a3,c4,f4]@3 ~ [f3,a3,c4,f4]@4 [f3,a3,c4,f4] ~ [f3,a3,c4,f4] ~@5 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~", // Am F C5
  BZ: "[[c3,g3,c4,g4]@4 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~@6 [c3,g3,c4,g4] ~ [c3,g3,c4,g4] ~ [d3,g3,d4,g4]@3 ~ [d3,g3,d4,g4] ~ [d3,g3,d4,g4] ~@3 e4@97 ~@4, ~@25 a3@97 ~@6, ~@26 c4@97 ~@5]/4", // C5 G5
})).s("gm_electric_guitar_clean").gain(0.12).pan(0.9)

// chords · distortion guitar
const distortion_guitar = note(`<
  ~@26 A B A C D E F E ~@16 G@2 H I@2 J K@3 L@8 ~@7 M@8 N O P@3 Q@4 R@3 S@6 T U V W X Y Z@2 AA@2 AB@8
>`.pickRestart({
  A: "[e3,a3]@16 [c3,f3]@15 ~", B: "[c3,g3]@15 ~ [d3,g3]@15 ~", C: "[c3,g3]@15 ~@2 d3@15, ~@16 g3@15 ~",
  D: "~ e3@15 ~ [c3,f3]@15, a3 ~", E: "~ [c3,g3]@15 ~ [d3,g3]@15", F: "~ [e3,a3]@16 [c3,f3]@15",
  G: "[~@6 [e3,a3]@16 [c3,f3]@15 ~ [c3,g3]@15 ~ [d3,g3]@10]/2", H: "~@6 [e3,a3]@16 ~ f3@9, ~@11 c3@5",
  I: "[~@7 c3@15 ~ [d3,g3]@15 ~ [e3,a3]@16 [c3,f3]@9, ~@6 g3@15 ~@43]/2", J: "~@7 [c3,g3]@15 ~@2 d3@8, ~@23 g3@9",
  K: "[~@8 e3@15 ~ [c3,f3]@15 ~ [c3,g3]@15 ~ [d3,g3]@15 ~ [e3,a3]@16 [c3,f3]@8, ~@7 a3@16 ~@73]/3", // F5 C5 G5 A5 F5
  L: "[~@8 [c3,g3]@15 ~@2 d3@15 ~ e3@15 ~ [c3,f3]@15 ~ [c3,g3]@15 ~ [d3,g3]@15 ~ [e3,a3]@16 [c3,f3]@15 ~@2 c3@15 ~ d3@15 ~ e3@15 ~ f3@15 ~ c3@15 ~ d3@15 ~@23, ~@24 g3@15 ~ a3@16 ~@81 g3@15 ~ g3@15 ~ a3@16 c3@15 ~ g3@15 ~ g3@15 ~@24]/8", // C5 F5 C5 G5 A5 F5
  M: "[~@11 [e3,a3]@15 ~ f3@15 ~ c3@14 ~ [d3,g3]@15 ~ [e3,a3]@15 ~ [c3,f3]@15 ~ [c3,g3]@15 ~ [d3,g3]@15 ~ [e3,a3]@16 [c3,f3]@15 ~ [c3,g3]@15 ~ [d3,g3]@15 ~ [e3,a3]@16 [c3,f3]@15 ~ [c3,g3]@15 ~ [d3,g3]@6, ~@26 c3@15 ~ g3@15 ~@199]/8", // A5 G5 A5 F5 C5 G5 A5 F5 …
  N: "~@5 [e3,a3]@8 [c3,f3]@3", O: "~@11 c3@15 ~ d3@5, ~@10 g3@15 ~ g3@6",
  P: "[~@11 [e3,a3]@16 [c3,f3]@15 ~ [c3,g3]@15 ~ [d3,g3]@15 ~ [e3,a3]@16 [c3,f3]@5]/3", // A5 F5 C5 G5 A5 F5
  Q: "[~@12 c3@15 ~ [d3,g3]@15 ~ [e3,a3]@16 [c3,f3]@15 ~ [c3,g3]@15 ~ [d3,g3]@15 ~ [e3,a3]@16 [c3,f3]@4, ~@11 g3@15 ~@102]/4", // G5 A5 F5 C5 G5 A5 F5
  R: "[~@13 c3@15 ~ [d3,g3]@15 ~ [e3,a3]@16 [c3,f3]@15 ~ [c3,g3]@15 ~ [d3,g3]@3, ~@4 g3@5 ~@23]/3", // G5 A5 F5 C5 G5
  S: "[~@14 e3@15 ~ f3@15 ~ c3@15 ~ [d3,g3]@15 ~ [e3,a3]@16 [c3,f3]@16 ~ c3@15 ~ [d3,g3]@15 ~ [e3,a3]@16 [c3,f3]@16 ~ c3@15 ~, ~@13 a3@16 c3@15 ~ g3@15 ~@50 g3@15 ~@50 g3@15 ~@2]/6", // G5 A5 F5 G5 A5 F5
  T: "[d3,g3]@15 ~ [e3,a3]@16", U: "[c3,f3]@16 ~ c3@15, ~@16 g3@15 ~", V: "~ [d3,g3]@15 ~ [e3,a3]@15",
  W: "~ f3@8 [c3,g3]@7, ~ c3@15 ~@16", X: "~@2 [d3,g3]@15 ~ [e3,a3]@14", Y: "~@3 [c3,f3]@16 [c3,g3]@13",
  Z: "[~@3 [d3,g3]@15 ~@2 e3@15 ~ [c3,f3]@16 [c3,g3]@12, ~@19 a3@16 ~@29]/2", // G5 F5 C5
  AA: "[~@4 [d3,g3]@15 ~@2 [e3,a3]@16 [c3,f3]@16 ~ c3@10, ~@53 g3@11]/2", // G5 A5 F5
  AB: "[~@6 [d3,g3]@15 ~ [e3,a3]@16 [c3,f3]@16 ~ c3@15 ~ [d3,g3]@15 ~ [e3,a3]@16 ~ [c3,f3]@16 [c3,g3]@15 ~@2 d3@15 ~ [e3,a3]@66 ~ [a3,e4]@7 ~@29, ~@54 g3@15 ~@67 g3@15 ~@105]/8", // G5 A5 F5 G5 A5 F5 C5 A5
})).s("gm_distortion_guitar").gain(0.26)

// chords · distortion guitar
const distortion_guitar_2 = note(`<
  ~@4 A B@4 ~@5 C ~ C ~ C ~@8 D ~@17 E ~@5 F ~@7 G ~@15 H ~@7 I@2 ~@7 J ~@7 K ~@7 L ~@7 M ~
>`.pickRestart({
  A: "~@11 c4@2 ~@3", B: "[~@15 a4@42 ~@7]/4", C: "~@7 e4@4 ~@21", D: "~@20 [d3,d4]@3 ~@9", E: "~@25 [d3,g3,g4]@3 ~@4",
  F: "~@26 [d3,d4]@3 ~@3", G: "~@28 [d3,d4]@3 ~", H: "~@15 [d3,d4]", I: "[~@31 [d3,d4]@3 ~@30]/2",
  J: "~ [d3,d4]@3 ~@28", K: "~@4 [d3,d4]@3 ~@25", L: "~@8 [d3,d4]@3 ~@21", M: "~@27 [e3,a3,c4,e4]@4 ~",
})).s("gm_distortion_guitar").gain(0.27).pan(0.2)

// chords · distortion guitar
const distortion_guitar_3 = note(`<
  ~@26 A B A B C D E D ~@16 F@2 G@4 H@4 I@7 ~@7 J@2 K@7 L@4 M@4 N@4 O@6 P@2 Q@2 R@2 S@8 ~@3
>`.pickRestart({
  A: "~@2 c4@2 ~@2 g3 ~@5 a3@2 c4@2, a3 f3, ~ e4 ~@2", B: "g3",
  C: "~@4 c4@4 ~@5 g3@2 ~@10 a3@4 c4@3, a3@16 ~ f3@15, ~ e4 ~@2", D: "~ g3@31",
  E: "~@5 c4@4 ~@4 g3@2 ~@10 a3@4 c4@3, ~ a3@16 f3@15, ~@9 e4@8 ~@15",
  F: "[~@9 c4@4 ~@5 g3@2 ~@10 a3@4 c4@4 g3@26, ~@3 a3@8 f3@8 ~@13, ~@7 e4@4 ~@21]/2",
  G: "[~@10 c4@4 ~@5 g3@2 ~@9 a3@4 ~ c4@4 g3@32 ~@4 c4@4 ~@4 g3@2 ~@10 a3@4 c4@4 g3@25, ~@6 a3@16 f3@16 ~@33 a3@16 f3@16 ~@25, ~@14 e4@8 ~@57 e4@8 ~@41]/4",
  H: "[~@11 c4@4 ~@5 g3@2 ~@10 a3@4 c4@4 g3@32 ~@4 c4@4 ~@4 g3@2 ~@10 a3@4 c4@4 g3@24, ~@7 a3@16 ~ f3@16 ~@32 a3@16 f3@16 ~@24, ~@15 e4@8 ~@57 e4@8 ~@40]/4",
  I: "[~@12 c4@4 ~@5 g3@2 ~@10 a3@4 c4@4 g3@32 ~@4 c4@4 ~@4 g3@2 ~@10 a3@4 c4@4 g3@32 ~@4 c4@4 ~@5 g3@2 ~@9 a3@4 c4@4 ~ g3@32 ~@22, ~@9 a3@16 f3@16 ~@32 a3@16 f3@16 ~@33 a3@16 ~@70, ~@16 e4@8 ~@57 e4@8 ~@56 e4@8 f3@16 ~@55]/7",
  J: "[~@14 c4@4 ~@5 g3@2 ~@9 a3@4 c4@4 g3@22, ~@11 a3@16 ~@37, ~@9 e4@4 f3@8 ~@11]/2",
  K: "[~@14 c4@4 ~@4 g3@2 ~@10 a3@4 c4@4 g3@32 ~@3 c4@4 ~@5 g3@2 ~@10 a3@4 c4@4 g3@32 ~@3 c4@4 ~@5 g3@2 ~@10 a3@4 c4@4 g3@32 ~@4 c4@4 ~@4 g3@2 ~@2 f3@6, ~@5 a3@8 f3@8 ~@16 a3@8 f3@8 ~@16 a3@8 f3@8 ~@16 a3@8 ~@3, ~@9 e4@4 ~@28 e4@4 ~@28 e4@4 ~@28 e4@4 ~@3]/7",
  L: "[~@2 a3@4 c4@4 ~ g3@32 ~@3 c4@4 ~@5 g3@2 ~@10 a3@4 c4@4 g3@32 ~@4 c4@4 ~@4 g3@2 ~@2 f3@5, ~@43 a3@16 f3@16 ~@32 a3@16 ~@5, ~@51 e4@8 ~@56 e4@8 ~@5]/4",
  M: "[~@3 a3@4 c4@4 ~ g3@32 ~@3 c4@4 ~@5 g3@2 ~@10 a3@4 c4@4 g3@32 ~@4 c4@4 ~@5 g3@2 ~ f3@4, ~@11 a3@4 f3@4 ~@8 a3@4 ~, ~@13 e4@2 ~@14 e4@2 ~]/4",
  N: "[~@4 a3@4 c4@4 ~ g3@32 ~@3 c4@4 ~@5 g3@2 ~@10 a3@4 c4@4 g3@32 ~@4 c4@4 ~@5 g3@2 ~ f3@3, ~@45 a3@16 f3@16 ~@32 a3@16 ~@3, ~@53 e4@8 ~@56 e4@8 ~@3]/4",
  O: "[~@5 a3@4 ~ c4@4 g3@32 ~@4 c4@4 ~@4 g3@2 ~@10 a3@4 c4@4 ~ g3@32 ~@4 c4@4 ~@4 g3@2 ~@10 a3@4 ~ c4@4 g3@32 ~@4 c4@4 ~@4 g3@2 ~@2, ~@46 a3@16 f3@16 ~@33 a3@16 f3@16 ~@33 a3@16, ~@54 e4@8 ~@57 e4@8 ~@57 e4@8]/6",
  P: "[~@8 a3@4 ~ c4@4 g3@32 ~@4 c4@4 e4@5 g3@2, f3@16 ~@33 a3@15]/2",
  Q: "[~@10 a3@4 c4@4 g3@32 ~@4 c4@4 e4@5 g3, ~ f3@16 ~@33 a3@14]/2",
  R: "[~@11 a3@4 c4@4 g3@32 ~@4 c4@4 e4@5, ~@3 f3@16 ~@32 a3@13]/2",
  S: "[g3@2 ~@10 a3@4 c4@4 g3@32 ~@4 c4@5 ~@4 g3@2 ~@10 a3@4 c4@4 ~ g3@32 ~@4 c4@4 ~@4 g3@2 ~@10 a3@4 ~ c4@4 g3@32 ~@4 c4@4 ~@5 g3@2 ~@10 a3@4 c4@4 g3@33 ~@7, ~@4 f3@16 ~@33 a3@16 f3@16 ~@33 a3@16 f3@16 ~@33 a3@16 ~ f3@16 ~@40, ~@61 e4@8 ~@57 e4@8 ~@57 e4@8 ~@57]/8",
})).s("gm_distortion_guitar").gain(0.21)

// other · electric guitar clean
const electric_guitar_clean_2 = note(`<
  ~@58 A@4 B@2 C D@3 ~@14 E ~ F@2 G@2 H@4 I@2 J@3 K@3 L M N@4 O@2 P Q@2 R@2 S T@3 ~
>`.pickRestart({
  A: "[d4@35 ~ g3@3 ~ c4@2 ~@2 c4 ~ c4@3 ~ c4@2 d4@3 ~ d4@4 ~@2 d4@41 ~@2 g4@12 g4@11]/4",
  B: "[~ c5@38 ~@2 c5@16 c5@5 ~@2]/2", C: "~ f5@16 ~ f5@7 f5@7", D: "[~ f5@8 ~ f5@3 f5@4 ~ f5@3 f5@4 f5@4 g5@58 ~@9]/3",
  E: "~ d6@15", F: "[~@11 c4@32 g4@12 g4@9]/2", G: "[~@3 d4@8 c4@30 ~@2 c4@3 ~ c4 ~@2 c4@3 ~ c4@2 d4@3 ~ d4@4]/2",
  H: "[~@4 d4@8 d4@30 ~@2 a4@4 g4 ~ a4@22 ~@4 b4@4 c5@3 ~ c5@24 c5@4 d5@3 ~ d5@7 ~ d5@4]/4",
  I: "[~@4 f5@7 ~@2 g5@28 g5@3 ~ g5@11 ~ g5@3 ~ d5@3]/2",
  J: "[~@3 d5@10 c5@26 ~@2 g4@4 ~ c5@4 ~@2 c5@10 d5@20 d5@2 c5@2 d5@8 d5@2]/3",
  K: "[c5@2 d5@8 ~ d5@2 c5@2 d5@12 d5@3 ~ d5@7 ~ f5@8 g5@7 ~ g5@3 ~ g5@3 ~ g5@3 ~ g5@3 ~ g5@3 ~@2 g5@3 g5@12 ~ g5@3 ~]/3",
  L: "g5@8 d5@3 ~ e5@3 ~ e5@8 e5@4 e5 ~ e5 ~", M: "e5 ~ e5 ~ e5@3 ~ e5@7 ~@2 f5@2 e5@2 d5@8 c5@2 ~",
  N: "[~ c5@6 ~@2 d5@4 g4@4 g4@7 ~ g4 ~@3 g4@14 ~@3 a4 ~ a4@2 a4@8 f4@4 e4@4 f4@13 ~@3 g4@32 ~ a4@13]/4",
  O: "[~@3 g4@8 e4@4 d4@4 c5@8 g5@2 ~@2 c5@18 ~@3 c5@4 b4@2 ~@2 a4@4]/2", P: "g4@12 c5@7 ~@2 d5@11",
  Q: "[~ c5@18 ~@2 c5@6 ~@3 b4@7 ~ a4@7 ~ g4@7 ~ g4@10]/2", R: "[~@2 g4@19 ~@2 e4@24 d4@8 d4@9]/2",
  S: "~@4 d4@19 ~ e4@6 ~@2", T: "[d4@7 ~@2 c4@7 ~ b3@6 ~@2 c4@66 [a4,a5]@5]/3",
})).s("gm_electric_guitar_clean").gain(0.54)

// other · guitar harmonics
const guitar_harmonics = note("<~@7 A@2 ~@109>".pickRestart({
  A: "[~@14 a4@4 c5@10 ~@2 d#4@14 ~@2 d#4@15 ~@3]/2",
// … 349 more lines