Strudelify

Laughing

Guess Who

KeyA majorTempo83 bpm
0:00/0:00
// Laughing — Guess Who
// 83 bpm, 4/4, key A 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 60 bars on a 48-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 26.
setcpm(83/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(`<
  ~@9 A@2 B C D E F G H I J K L M N O P ~@5 Q@3 R S@3 T U V W@4 X Y@3 Z AA AB AC AD AE AF AG ~@3
>`.pickRestart({
  A: "[~@47 e2@2 ~ e2@4 ~@3 e2@2 ~ e2@4 ~@2 e2@2 ~ e2@4 ~@2 e2@2 ~ e2@3 ~@3 e2@2 ~@4 e2@3 ~@3]/2",
  B: "[a1,a3,c#4]@11 ~, e4@5 ~", C: "[a1,c#4]@11 ~, [a3,f4]@13 ~@3", D: "[a1,a3,c#4,f#4]@13 ~@3",
  E: "[a3,c#4,g4]@2 ~, a1@37 ~@11", F: "[d2,f#4,a4,c#5]@13 ~@3", G: "[d2,f4,a4,c5]@13 ~@3",
  H: "[e4,g#4,b4]@29 ~ c#4@5 ~ e4@6 g#4@3 ~@3, c#2@5 ~@3", I: "[d4,f#4,a4]@9 ~@3 [c#4,e4,a4]@7 ~@5 [d4,f#4,b4]@21 ~@3",
  J: "[d4,f#4,a4]@5 ~ [c#4,e4,a4]@3 ~@3 [d4,f#4]@11 ~, ~@24 b4@17 ~@7", K: "[d4,f#4,a4]@3 ~ [b3,e4,g#4]@3 ~",
  L: "[c#4,e4]@19 ~@5", M: "[d4,f#4,a4]@9 ~@3 [c#4,e4,a4]@7 ~@5 [d4,f#4]@21 ~@3, ~@3 b4@2 ~",
  N: "[d4,f#4,a4]@3 ~ [c#4,e4,a4]@2 ~@2 [d4,f#4,b4]@7 ~", O: "[d4,f#4,a4]@19 ~@5 [b3,e4,g#4]@15 ~@9",
  P: "[c#4,e4,a4]@19 ~@5", // A
  Q: "[~@10 [d3,f#4,a4,c#5]@44 ~@5 [d3,f4,a4,c5]@32 ~@3 [d3,f4,a4,c5]@9 ~@4 c#3@31 ~@6, ~@53 [e4,g#4,b4]@16 ~@3]/3", // Dmaj7 Dm7 E
  R: "~@10 e2@2 ~ e2@4 ~@2 e2@2 ~ e2@4 ~@2 e2@2 ~ e2@4 ~@2 e2@2 ~ e2@3 ~@3 e2@2",
  S: "[~@4 e2@3 ~@3 [a1,a3,c#4]@44 ~@5 [a1,a3,f4]@42 ~@6 a1@37, ~@5 e4@20 ~@4 c#4@22 ~@2 [a3,c#4,f#4]@19]/3", // A Dm F#m
  T: "~@5 [a3,c#4,g4]@16 ~@3, ~@10 a1@37 ~", U: "~@11 d2@37, ~@5 [f#4,a4,c#5]@19", V: "~@5 [d2,f4,a4,c5]@19",
  W: "[~@11 [e4,g#4,b4]@29 c#4@5 ~ e4@6 g#4@3 ~@3 [d4,f#4,a4]@9 ~@3 [c#4,e4,a4]@7 ~@5 [d4,f#4,b4]@21 ~@3 [d4,f#4,a4]@10 ~@2 [c#4,e4,a4]@6 ~@6 [d4,f#4]@21 ~@2 [d4,f#4,a4]@17 ~@7 [b3,e4,g#4]@15, ~@11 c#2@33 ~@86 b4@17 ~@45]/4", // E D A Bm D A D E
  X: "~@9 [c#4,e4]@37 ~@2", // C#m
  Y: "[~@8 [d4,f#4,a4]@9 ~@3 [c#4,e4,a4]@7 ~@5 [d4,f#4]@20 ~@3 [d4,f#4,a4]@9 ~@3 [c#4,e4,a4]@6 ~@6 [d4,f#4,b4]@21 ~@3 [d4,f#4,a4]@19 ~@5 [b3,e4,g#4]@15 ~@2, ~@2 b4 ~@6]/3", // D A D A Bm D E
  Z: "~@6 [c#4,e4,a4]@37 ~@5", AA: "~@6 [d4,f#4,a4]@9 ~@2 [c#4,e4,a4]@7 ~@6 [d4,b4]@18, ~@29 f#4@19",
  AB: "~@5 [d4,f#4,a4]@10 ~@2 [c#4,e4,a4]@6 ~@6 [d4,f#4,b4]@19", // D A Bm
  AC: "~@5 [d4,f#4,a4]@9 ~@2 [c#4,e4,a4]@7 ~@5 [d4,f#4,b4]@20", // D A Bm
  AD: "~@2 [d4,f#4,a4]@5 ~ [c#4,e4,a4]@3 ~@3 [d4,f#4,b4]@10", // D A Bm
  AE: "~@3 [d4,f#4,a4]@9 ~@3 [c#4,e4,a4]@7 ~@5 [d4,f#4,b4]@21", // D A Bm
  AF: "~@3 [d4,f#4,a4]@10 ~@2 [c#4,e4,a4]@6 ~@6 [d4,f#4]@21, ~@27 b4@17 ~@4", // D A D
  AG: "~@2 [d4,f#4,a4]@9 ~@3 [c#4,e4]@7 ~@27", // D C#m
})).s("gm_piano").gain(0.44).pan(0.7)

// chords · piano · soft notes
const piano_soft = note("<~@21 A ~@2 B ~@20 C ~@3 D ~@6 E F G H>".pickRestart({
  A: "a4@35 ~@13", B: "~@14 [e4,a4] ~", C: "~@9 a4@34 ~@5", D: "[e4,a4] ~@15", E: "~@14 a4@7 ~@5 [d4,f#4,b4]@21 ~",
  F: "~@2 [d4,f#4,a4]@10 ~@2 [c#4,e4,a4]@6 ~@6 [d4,f#4]@21 ~, ~@26 b4@17 ~@5", // D A D
  G: "~ [d4,f#4,a4]@9 ~@3 [c#4,e4,a4]@7 ~@5 [d4,f#4,b4]@21 ~@2", H: "~ f#4@8 ~@39",
})).s("gm_piano").gain(0.16).pan(0.7)

// bass · fretless bass
const bass = note(`<
  ~@6 A@5 B C D E F G H I J K L M N O P Q R@2 S T U@8 V@4 W X@4 Y Z AA AB@2 AC AD AE AF ~@3
>`.pickRestart({
  A: "[~@40 d3@36 ~@2 d3@6 e3@5 ~@2 f3@34 ~@3 g3@6 ~ f3@6 c#3@43 ~@7 e3@3 e3@4 ~@3 e3@3 e3@5 ~ e3@9 e2@2 ~ e2@5 ~ e2@3 e2@2 ~ e2@2 ~ e2@2 ~]/5",
  B: "a1@12 a2@6 c#3@6 e3@23 ~", C: "a2@11 ~ a2@6 c#3@6 f3@24", D: "a2@11 ~ a2@6 c#3@6 f#3@23 ~",
  E: "a2@11 ~ a2@6 c#3@6 g3@9 ~@3 g3@11 ~", F: "d3@5 ~ d3@10 ~@2 d3@18 d3@5 ~ e3@2 ~@4",
  G: "f3@5 ~ f3@8 ~@4 f3@15 ~@3 g3@6 f3@6", H: "c#3@25 ~@5 c#2@4 ~@2 e2@6 g#2@6",
  I: "d2@9 a1 ~@2 a1@12 b1@8 ~ b1@3 f#2@3 b1@2 ~ e2@4 ~@2", J: "d2@9 a1@2 ~ a1@12 b1@8 ~ b1@3 f#2@3 b1@3 e2@4 ~@2",
  K: "d2@8 ~ d2@3 a1@3 d#2@9 e2@8 ~ e2@2 ~ f#2@6 g#2@6", L: "a2@11 ~ a2@2 ~@4 a2@7 ~@2 a2@3 f#2@5 ~ e2@3 c#2@3 b1@6",
  M: "d2@8 ~ a1@2 ~ a1@12 b1@8 ~ b1@2 ~ f#2@3 b1@2 ~ e2@3 ~@3",
  N: "d2@9 a1@2 ~ a1@12 b1@7 ~@2 b1@2 ~ f#2@3 b1@2 ~ e2@2 ~@4", O: "d2@8 ~ d2@3 a1@3 d#2@9 e2@8 ~ e2@3 f#2@6 g#2@6",
  P: "a2", Q: "~ a1@36 ~ e1@10",
  R: "[~@3 a1@12 c#2@4 ~@3 e2@3 ~@3 a2@12 f#2@6 ~ e2@6 a1@11 ~ c#2@5 ~ f2@4 ~@3 a2@12 f2@6]/2",
  S: "e2@6 a1@13 c#2@5 ~ f#2@4 ~@2 a2@12 ~ f#2@4", T: "~@2 e2@6 a1@13 c#2@3 ~@3 a2@6 g2@12 f#2@3",
  U: "[~@4 e2@6 d2@12 f#2@5 ~ a2@3 ~@3 d3@11 ~ b2@6 a2@6 d2@12 ~ f2@3 ~@2 a2@4 ~@2 c3@12 b2@6 a2@6 c#2@47 ~ e2@2 ~@2 e2@3 ~@2 e2@2 ~ e2@4 ~@2 e2 ~@2 e2@4 ~@2 e2@3 ~ d2@5 c#2@6 b1@6 a1@3 ~@4 a1@5 c#2@6 e2@4 ~@2 a2@12 ~ f#2@5 e2@6 a1@2 ~@4 a1@6 c#2@6 f2@4 ~@2 a2@12 f2@6 e2@6 a1@2 ~@4 a1@6 c#2@6 f#2@3 ~@3 a2@12 f#2@6 e2@6 a1@2 ~@4 a1@6 c#2@3 ~@3 a2@6 g2@12 f#2@2]/8",
  V: "[~@4 e2@6 d2@3 ~@3 d2@6 f#2@6 a2@6 d3@3 ~@3 d3@6 b2@6 a2@6 d2@3 ~@3 d2@6 f2@6 a2@5 ~ c3@4 ~@3 c3@6 b2@6 a2@6 c#2@27 ~@3 c#2@4 ~ e2@6 ~ g#2@5 d2@9 a1 ~@2 a1@11 ~ b1@7 ~@2 b1@3 f#2@2]/4",
  W: "~ b1@2 ~ e2@4 ~@2 d2@9 a1@2 ~ a1@12 b1@8 ~ b1@3 f#2@2",
  X: "[b1@3 e2@4 ~@2 d2@8 ~ d2@3 a1@3 d#2@9 e2@8 ~ e2@2 ~ f#2@6 g#2@6 a2@11 ~ a2@2 ~@4 a2@7 ~ a2@3 f#2@4 ~@2 e2@3 c#2@3 b1@6 d2@9 a1 ~@2 a1@11 ~ b1@7 ~@2 b1@3 f#2@3 b1@2 ~ e2@4 ~@2 d2@8 a1@2 ~ a1@12 b1@8 ~ b1@3 f#2@3 b1@2]/4",
  Y: "~ e2@4 ~@2 d2@8 ~ d2@3 a1@3 d#2@9 e2@8 ~ e2@2 ~ f#2@5",
  Z: "~ g#2@6 a2@11 ~ a2@2 ~@3 a2@7 ~@2 a2@3 f#2@4 ~@2 e2@3 c#2@3",
  AA: "b1@6 d2@11 ~ a1@6 a#1@6 b1@8 b1@3 f#2@3 ~ b1@3",
  AB: "[e2@3 ~@3 d2@11 a1@6 a#1@6 b1@7 ~@2 b1@3 f#2@3 b1@3 e2@3 ~@3 d2@12 a1@6 a#1@5 b1@8 ~ b1@3 f#2@3 b1@3 e2@2]/2",
  AC: "~@4 d2@12 a1@6 a#1@5 ~ b1@7 ~@2 b1@2 ~ f#2@3 b1@3 e2@2",
  AD: "~@4 d2@11 a1@6 a#1@6 b1@7 ~@2 b1@3 f#2@3 b1@3 e2@2 ~",
  AE: "~@3 d2@12 a1@6 a#1@6 b1@8 ~ b1@2 ~ f#2@3 b1@3 e2@2 ~", AF: "~@2 d2@12 a1@6 a#1@6 ~@12 f#2@3 ~@7",
})).s("gm_fretless_bass").gain(0.38)

// bass · fretless bass · soft notes
const bass_soft = note(`<
  ~@56
  [~@26 b1@8 ~ b1@3 ~@3 b1@3 e2@3 ~]
  [~@2 d2@12 a1@6 a#1@6 b1@7 ~ b1@3 f#2@3 b1@3 e2@3 ~@2]
  [~ d2@12 a1@6 a#1@6 b1@7 ~@2 b1@3 f#2@3 b1@3 e2@3 ~@2]
  [~ d2@12 ~@35]
>`).s("gm_fretless_bass").gain(0.11)

// chords · electric guitar clean
const electric_guitar_clean = note(`<
  A@3 B@7 C D E F G H I J@2 K ~ L@2 M N@2 O P Q@8 R S T@2 U@5 ~ V W ~@2 X Y Z AA AB AC AD AE ~@2
>`.pickRestart({
  A: "[~@26 a4@11 ~ a4@12 ~ a4@12 ~ a4@10 ~@3 a4@11 ~ a4@12 a4@12 ~ a4@11 ~@2 a4@12 a4@5, ~@24 a3@47 ~@3 a3@47 ~@23, ~@25 c#4@47 ~@4 [c#4,e4]@49 c#4@19, ~@26 e4@49 ~@51 e4@18]/3", // C#m
  B: "[~@8 a4@12 a4@12 ~@2 a4@11 ~ a4@12 a4@12 ~ a4@11 ~@2 a4@11 ~ a4@12 ~ a4@12 a4@12 ~@2 a4@11 a4@12 ~ a4@11 ~@2 a4@9 ~@4 a4@11 ~ a4@12 a4@12 ~ a4@11 ~@3 a4@10 ~ a4@12 ~ a4@12 ~ a4@10 ~@3 g#4@11 ~ g#4@12 g#4@12 ~ g#4@9 ~@4, ~@32 c#4@48 ~@2 a3@48 ~@103 a3@46 ~@5 [g#3,b3]@46 ~@6, ~@33 f4@47 ~@3 c#4@48 ~@2 c#4@49 ~ c#4@48 ~@4 c4@44 ~@57, ~@84 f#4@48 ~@2 g4@45 ~@5 f#4@46 ~@6 f4@44 ~@5 e4@44 ~@7]/7", // G#m
  C: "[b3,e4]@3 [b3,e4]@2 ~@4 [g#3,b3]@2 ~ [b2,g#3,b3,e4]@3 ~@3 [g#3,b3,e4]@3 [g#3,b3,e4]@2 ~@4 [g#3,b3,e4]@3 [e3,g#3,b3,e4]@2 ~@4 [b2,g#3,b3,e4]@3 [b2,g#3,b3,e4]@3 [b2,g#3,b3,e4]@4 ~@2, [b2,e3,g#3]@6 ~@2 e4@3 e3@3 ~@4 e3@5 ~@13 e3@9 ~@3", // E5 G#m E
  D: "~@18 [e4,a4] ~@5", E: "~@18 [f4,a4] ~@5", F: "~@12 [f#4,a4] ~@3", G: "~@12 [g4,a4] ~@3",
  H: "~@12 [f#4,a4] ~@3, ~@36 c#5 ~@11", I: "~@12 [f4,a4,c5] ~@3",
  J: "[~@30 c#3@5 ~ e3@5 ~ g#3@3 ~@3 [a3,d4]@7 ~@5 [a2,e3,a3,c#4,e4]@12 ~@12 [a3,d4,f#4]@4 ~@8, ~@47 d3@6 ~@43]/2", // D5 A D
  K: "[d3,a3,d4]@8 ~@4 [e3,a3,c#4,e4]@12 ~@12 [a3,d4,f#4]@5 ~@7", // D5 A D
  L: "[~@48 [d4,f#4]@7 ~@5 [e3,a3,c#4,e4]@11 ~@13 [a3,d4,f#4]@4 ~@8, ~@47 a3@7 ~@42]/2", // D A D
  M: "[d3,a3,d4,f#4]@7 ~@5 [a2,e3,a3,c#4,e4]@10 ~@14 [a3,d4,f#4]@5 ~@7", // D A D
  N: "[~@48 a4@11 ~ a4@12 ~ a4@12 a4@11, ~@23 c#4@24 ~, ~@47 e4@49]/2",
  O: "~@2 a4@11 ~ a4@11 ~ a4@12 ~ a4@9, c#4, ~ e4@47", P: "~@3 a4@12 ~ a4@12 a4@12 a4@8, ~@2 c#4@45 ~, ~ e4@15",
  Q: "[~@6 a4@11 a4@12 a4@12 ~ a4@11 ~@2 a4@11 ~ a4@12 a4@12 ~ a4@11 ~@2 a4@11 ~ a4@12 a4@11 ~@2 a4@9 ~@4 a4@10 ~ a4@11 ~ a4@12 a4@11 ~@3 a4@10 a4@12 a4@11 ~ a4@10 ~@3 g#4@11 g#4@11 ~ g#4@12 g#4@9 ~@4 [b3,e4]@3 [b3,e4]@2 ~@4 g#3@2 [b2,e3,g#3,b3,e4]@3 ~@4 [b3,e4]@2 ~ g#3@2 ~@3 [g#3,b3,e4]@3 [e3,g#3,b3,e4]@2 ~@5 [b3,e4]@2 ~ [b2,g#3]@2 ~ [b3,e4]@4 ~@38 e4, ~@4 c#4@47 ~@2 a3@47 ~@53 [a3,c#4]@46 ~@2 a3@44 ~@4 g#3@44 ~@6 [b2,e3,g#3]@5 ~@13 e3@5 ~@12 e3@9 ~@41, ~@5 f4@47 ~@2 c#4@47 ~@2 c#4@49 ~@51 [c4,f4]@42 ~@5 b3@42 ~@15 [b3,e4]@3 ~@6 g#3@3 [b3,e4]@2 ~@13 [b2,g#3]@3 ~@3 [b2,g#3]@4 ~@40, ~@55 f#4@47 ~@2 g4@44 ~@6 f#4@44 ~@53 e4@42 ~@44 [b3,e4]@3 ~@42 a4@2]/8", // E5 E E5 E E5 E E5 A …
  R: "~@23 [f4,a4]", S: "~@23 [f#4,a4]", T: "[~@47 g4@3 ~@45 c#5, ~@46 a4@3 ~@45 [f#4,a4]@2]/2",
  U: "[~@47 c5@2 ~@40 c#3@5 e3@5 ~ g#3@3 ~@4 d4@6 ~@5 [a2,e3,a3,c#4,e4]@12 ~@12 [a3,d4,f#4]@4 ~@8 [d3,a3,d4]@8 ~@4 [a3,c#4,e4]@12 ~@12 [d4,f#4]@5 ~@45, ~@46 [f4,a4]@3 ~@57 [d3,a3]@7 ~@52 e3@11 ~@13 a3@5 ~@46]/5", // A D D5 A D F D5
  V: "~@8 [a3,d4,f#4]@7 ~@5 [e3,a3,c#4,e4]@11 ~@13 [a3,d4,f#4]@4", // D A D
  W: "~@8 [a3,d4,f#4]@6 ~@6 e4@9 ~@14 [a3,d4,f#4]@4 ~, ~@7 d3@7 ~@5 [a2,e3,a3,c#4]@10 ~@19", // D A
  X: "~@6 [d4,f#4]@8 ~@3 [a3,c#4,e4,a4]@13 ~@11 [a3,d4,f#4,b4]@3 ~@4, ~@5 a3@8 ~@35", // D A Bm7
  Y: "~@5 [a3,d4,f#4]@9 ~@3 [a3,c#4,e4]@12 ~@12 [d4,f#4,b4]@4 ~@3, ~@10 a3 ~", // D A Bm
  Z: "~@5 f#4@8 ~@4 e4@12 ~@12 b4@4 ~@3, ~@4 [a3,d4]@9 ~@3 [a3,c#4]@12 ~@12 [a3,d4,f#4]@4 ~@4", // D5 A D
  AA: "~@4 [a3,d4,f#4]@9 ~@3 [a3,c#4,e4,a4]@11 ~@13 [a3,d4,f#4,b4]@4 ~@4", // D A Bm7
  AB: "~@4 f#4@8 ~@4 a4@11 ~@13 b4@3 ~@5, ~@3 [a3,d4]@9 ~@3 [a3,c#4,e4]@12 ~@12 [a3,d4,f#4]@4 ~@5", // D5 A D
  AC: "~@3 [a3,d4,f#4]@8 ~@4 [c#4,e4]@12 ~@12 [d4,f#4]@3 ~@6, ~@7 a3@6 ~@6 a3@2 ~@3", // D C#m D
  AD: "~@3 f#4@8 ~@4 [c#4,e4]@11 ~@12 [d4,f#4,b4]@4 ~@6, ~@2 [a3,d4]@9 ~@37", AE: "~@2 f#4@7 ~@39",
})).s("gm_electric_guitar_clean").gain(0.33).pan(0.2)

// chords · electric guitar clean · soft notes
const electric_guitar_clean_2 = note(`<
  ~@2 A@3 B@5 C D@2 E@2 ~@7 F ~ G@3 ~ H ~ I@2 J K@2 L@2 M N ~@7 O ~@5 P ~@3 Q R S T
>`.pickRestart({
  A: "[~@28 a3@49 ~@2 a3@42 ~@23]/3", B: "[~@35 a3@47 ~@5 a3@48 ~ d3@40 ~@11 c#3@46 ~@7, ~@43 d3@13 ~@64]/5",
  C: "~@9 e3@2 ~@16 e3@3 ~@18", D: "~@18 c#4 ~@5", E: "~@36 c#4 ~@11", F: "b4@7 ~@5 a4@10 ~@26",
  G: "[~@45 a3@48 ~@2 a3@49]/3", H: "~ a3@14 ~", I: "[~@6 a3@47 ~@3 d3@25 ~@15]/2", J: "~@4 d3@19 ~",
  K: "[~@4 c#3@22 ~@8 e3 ~@8 e3 ~@4]/2", L: "~@23 c#4", M: "~@46 c#4 ~", N: "~@47 c#4", O: "~@9 b4@6 ~@5 a4@10 ~@18",
  P: "~@4 a4@3 ~@5", Q: "~@7 a3@6 ~@6 a3@2 ~@3",
  R: "~ [a3,d4]@8 ~@5 e4@11 ~@13 [d4,f#4,b4]@4 ~@6, ~@13 [a3,c#4]@12 ~@12 a3@4 ~@7", // D5 Bm A
  S: "~@2 f#4@7 ~@4 [a3,c#4,e4]@11 ~@13 [a3,d4,f#4,b4]@4 ~@7, ~ [a3,d4]@8 ~@39", T: "~ d4@8 ~@39, a3@3 ~@13",
})).s("gm_electric_guitar_clean").gain(0.16).pan(0.2)

// chords · epiano1
const epiano1 = note("<~@18 A B C D A B C E ~@16 F G H I J K L@2 M N O P Q R S T ~@2>".pickRestart({
  A: "[d4,f#4,a4]@3 [c#4,e4,a4] [c#4,e4,a4]@3 ~@9", B: "[d4,f#4,a4]@3 [e4,a4] [c#4,e4,a4]@3 ~@8 [e3,c#4,e4]",
  C: "[f#3,c#4,e4] [a3,d4,f#4] [a3,d4,f#4]@2 [a3,d4,f#4] [f#3,d4,f#4] [a3,d4,f#4] [f#3,d4,f#4] [b3,e4,g#4] [g#3,e4,g#4] [b3,e4,g#4] [e3,e4,g#4] [f#3,e4,g#4] [a3,e4,g#4]@3", // F#7 D E C#m E C#m Amaj7
  D: "[c#4,e4,a4]@3 [b3,d4,f#4] [a3,c#4,e4]@3 [f#3,b3,d4] [e3,a3,c#4]@6 ~@2", // A Bm A Bm A
  E: "[c#4,e4,a4]@9 [b3,d4,f#4]@3 [a3,c#4,e4]@9 [f#3,b3,d4]@3 [e3,a3,c#4]@19 ~@5", // A Bm A Bm A
  F: "~@10 [d4,f#4,a4]@9 [c#4,e4,a4]@3 [c#4,e4,a4]@9 ~@17", G: "~@10 [d4,f#4,a4]@9 [e4,a4]@3 [c#4,e4,a4]@9 ~@17",
  H: "~@2 [e3,c#4,e4] [f#3,c#4,e4] [a3,d4,f#4] [a3,d4,f#4]@2 [a3,d4,f#4] [f#3,d4,f#4] [a3,d4,f#4] [f#3,d4,f#4] [b3,e4,g#4] [g#3,e4,g#4] [b3,e4,g#4] [e3,e4,g#4] [f#3,e4,g#4]", // C#m F#7 D E C#m E C#m
  I: "[a3,e4,g#4]@3 [c#4,e4,a4]@3 [b3,d4,f#4] [a3,c#4,e4]@3 [f#3,b3,d4] [e3,a3,c#4]@5", // Amaj7 A Bm A Bm A
  J: "~@8 [d4,f#4,a4]@9 [c#4,e4,a4]@3 [c#4,e4,a4]@9 ~@19", K: "~@8 [d4,f#4,a4]@8 [e4,a4]@3 [c#4,e4,a4]@9 ~@20",
  L: "[~@4 [e3,c#4,e4]@3 [f#3,c#4,e4]@3 [a3,d4,f#4]@3 [a3,d4,f#4]@6 [a3,d4,f#4]@3 [f#3,d4,f#4]@3 [a3,d4,f#4]@3 [f#3,d4,f#4]@3 [b3,e4,g#4]@3 [g#3,e4,g#4]@3 [b3,e4,g#4]@3 [e3,e4,g#4]@3 [f#3,e4,g#4]@3 [a3,e4,g#4]@9 [c#4,e4,a4]@8 [b3,d4,f#4]@3 [a3,c#4,e4]@9 [f#3,b3,d4]@3 [e3,a3,c#4]@18]/2", // C#m F#7 D E C#m E C#m Amaj7 …
  M: "~@2 [d4,f#4,a4]@3 [c#4,e4,a4] [c#4,e4,a4]@3 ~@7", N: "~@5 [d4,f#4,a4]@9 [e4,a4]@3 [c#4,e4,a4]@9 ~@22",
  O: "~@5 [d4,f#4,a4]@9 [c#4,e4,a4]@3 [c#4,e4,a4]@9 ~@22", P: "~@4 [d4,f#4,a4]@9 [e4,a4]@3 [c#4,e4,a4]@9 ~@23",
  Q: "~@4 [d4,f#4,a4]@8 [c#4,e4,a4]@3 [c#4,e4,a4]@9 ~@24", R: "~ [d4,f#4,a4]@3 [e4,a4] [c#4,e4,a4]@3 ~@8",
  S: "~@2 [d4,f#4,a4]@9 [c#4,e4]@3 [c#4,e4]@9 ~@25", T: "~@2 [d4,f#4]@9 ~@37",
})).s("gm_epiano1").gain(0.3)

// chords · epiano1 · soft notes
const epiano1_soft = note("<~@19 A ~@3 A ~@19 B ~@3 C ~@3 D ~ E ~ F G H I ~>".pickRestart({
  A: "~@3 c#4 ~@12", B: "~@19 c#4@3 ~@26", C: "~@16 c#4@3 ~@29", D: "~@14 c#4@3 ~@31", E: "~@13 c#4@3 ~@32",
  F: "~@4 c#4 ~@11", G: "~@11 a4@3 a4@9 ~@25", H: "~@2 a4@9 [c#4,e4,a4]@3 [c#4,e4,a4]@9 ~@25",
  I: "~ [d4,f#4,a4]@9 [c#4,e4,a4]@3 [c#4,e4,a4]@9 ~@26", // D A
})).s("gm_epiano1").gain(0.15)

// other · electric guitar clean
const electric_guitar_clean_3 = note("<~@18 A B ~ C D E ~@18 F@3 G H I J K L@4 M N O ~@3>".pickRestart({
  A: "~@21 e3@3 f#3@3 a3@2 ~ a3@3 f#3@3 a3@5 ~ f#3@4 ~@2", B: "~@7 e3@2 [a3,d4]!2 f#3 [a3,d4]@2 f#3 ~",
  C: "~@12 e3@6 a3@2 ~ b3@5 ~ e4@6 ~@3 a3@6 f#3@5 ~", D: "~@21 e3@6 a3@3 a3@3 f#3@3 a3@6 f#3@4 ~@2",
  E: "~@21 e3@6 a3@3 [a3,d4]@3 f#3@3 [a3,d4]@6 f#3@4 ~@2", // D5
  F: "[~@32 e3@3 f#3@3 a3@2 a3@3 f#3@3 a3@5 ~ f#3@4 ~@23 e3@6 [a3,d4]@3 [a3,d4]@3 f#3@3 [a3,d4]@5 f#3@3 ~@42]/3", // D5
  G: "~@21 e3@6 a3@2 b3@5 ~@2 e4@6 ~@2 a3@4", H: "~@2 f#3@5 ~@22 e3@6 a3@3 a3@3 f#3@3 a3@4",
  I: "~@2 f#3@4 ~@22 e3@6 ~ a3@2 ~ d4@3 f#3@3 [a3,d4]@4, ~@37 a3@3 ~@8", J: "~ f#3@3 ~@44",
  K: "~@18 e3@6 a3@3 b3@3 ~@3 a3@3 ~@3 f#3@3 a3@5 ~",
  L: "[f#3@5 ~@21 d4@11 ~@2 e3@2 f#3@6 a3@5 ~@22 d4 ~ e4 c#4@7 ~@2 e3@2 ~ f#3@5 ~ a3@2 ~@4 f#3@2 a3@4 ~@5 a3@4 ~@6 d4@2 e4 c#4@9 ~@8 a3@4 ~@23 d4@3 [c#4,e4]@2 ~ a3@2 ~@3 e3@2 ~ f#3@5 ~ a3@3]/4", // C#m
  M: "~@24 d4@2 e4@2 c#4@7 ~ e3@2 ~ f#3@5 ~ a3@3", N: "~@24 d4@11 ~ e3@2 ~ f#3@5 a3@2 ~@2",
  O: "~@5 a3@4 ~@15 d4@11 ~@13",
})).s("gm_electric_guitar_clean").gain(0.38)

// other · electric guitar clean · soft notes
const electric_guitar_clean_4 = note(`<
  ~@52
  [~@41 f#3@5 ~@2]
  [~@23 d4]
  ~@2
  [~@2 f#3@2 ~@10 a3@5 ~@19 f#3@5 ~ a3@4]
  [~@23 d4@5 ~ a3@2 ~@4 e3@2 f#3@5 ~@2 d4@4, ~@43 a3@5]
  [~@22 d4@11 ~ e3@2 ~ f#3@6 a3@5]
  ~
>`).s("gm_electric_guitar_clean").gain(0.11)

// chords · acoustic guitar steel
const acoustic_guitar_steel = note(`<
  ~@10 A B C D E F G@2 H@2 I J@2 K L@3 ~@4 M@8 N@3 O@5 P@4 Q R S T U V ~@3
>`.pickRestart({
  A: "[g#3,e4]@2 ~ e4@5 ~ [g#3,b3,e4]@3 [g#3,b3,e4]@6 e4@3 e4@6 [b3,e4]@3 [g#3,b3,e4]@5 ~ [b3,e4]@5 ~ [b3,e4]@6, [e3,b3]@9 e3@35 ~@4, ~@2 g#3@7 ~@3 b2@32 ~@4, ~@18 [g#3,b3]@11 ~@6 g#3@6 g#3@4 ~@3", // C#m E E5 E E5 G#m
  B: "[a3,c#4,e4]@9 [c#4,e4]@3 [a3,c#4,e4]@6 [a3,e4]@6 [c#4,e4]@3 [a3,c#4,e4]@3 [a3,c#4,e4]@6 [a3,c#4,e4]@6 [a3,c#4]@2 ~@4, e3@5 ~@3, ~@18 c#4@5 ~@19 e4@4 ~@2", // A C#m A A5 C#m A
  C: "[a3,c#4,f4]@9 [a3,c#4,f4]@3 [a3,c#4,f4]@6 f4@5 ~ f4@3 [c#4,f4]@3 [a3,c#4,f4]@6 [a3,c#4,f4]@6 [a3,c#4,f4]@3 ~@3, ~@12 f3@35 ~, ~@3 [a3,c#4]@2 ~@3", // Aaug C# Aaug A
  D: "[a3,c#4,f#4]@9 [a3,c#4,f#4]@3 [a3,c#4,f#4]@6 f#4@6 f#4@3 f#4@3 [a3,c#4,f#4]@6 [f#3,a3,c#4,f#4]@6 [a3,c#4,f#4]@2 ~@4, f#3@3 ~, ~@3 [a3,c#4]@2 ~@3", // F#m A
  E: "[a3,c#4,g4]@9 [c#4,g4]@3 [a3,c#4,g4]@6 g4@6 g4@3 [c#4,g4]@3 [a3,c#4,g4]@6 [a3,c#4,g4]@6 [a3,c#4]@2 ~@4, e3@3 ~, ~@9 [a3,c#4]@6 ~@6 g4@2 ~", // A7 C#dim A7 C#dim A7 A
  F: "[a3,c#4,f#4]@9 [a3,c#4,f#4]@2 ~ [a3,c#4,f#4]@6 [a3,c#4,f#4]@9 [a3,c#4,f#4]@3 [a3,c#4,f#4]@6 [a3,c#4,f#4]@6 [a3,c#4,f#4]@2 ~@4, d3", // F#m
  G: "[[a3,c4]@9 [c4,f4]@3 [a3,c4,f4]@6 [a3,c4,f4]@9 [c4,f4]@3 [a3,c4,f4]@6 [a3,c4,f4]@6 [c4,f4] ~@6 [b3,e4]@36 ~@11, f4@8 ~@34 d3@4 ~ c#3@37 ~@12, ~@21 a3 ~@2 g#3@18 ~@6]/2", // Am F5 F F5 F F5 E5
  H: "[[a3,d4,f#4]@6 d4@2 ~@4 [e3,a3,c#4,e4]@6 e4 ~@5 [b2,d4]@9 [d4,f#4]@3 [b2,d4,f#4]@5 ~ [a3,d4,f#4] ~@2 [c#4,e4] ~@2 [a3,d4,f#4]@6 [d4,f#4]@2 ~ [a2,e4]@3 [c#4,e4]@6 [c#4,e4]@2 ~ [g3,b3] ~@2 [f#3,a3,d4,f#4]@9 [f#3,a3,d4,f#4]@3 [f#3,a3,d4,f#4]@6 [d4,f#4]@2 ~ [d3,b3,e4] ~@2, ~@12 a2@10 ~@2 [f#3,a3]@18 ~@3 [a2,d3]@14 ~ [a2,e3,a3]@11 ~ b2@19 ~@5, ~@24 f#4@8 ~@25 g3 ~@38]/2", // D A Bm D Bm D C#m D …
  I: "[a3,d4,f#4]@8 ~ [a3,d4,f#4]@3 f#4@6 f#4@2 ~ [g3,b3]@3 [b2,g#3,b3,e4]@9 [g#3,b3,e4]@3 [b2,g#3,b3,e4]@8 ~@4, d3@9 ~@3 [d3,a3,d4]@11 ~ e3@21 ~@3", // D G E D5
  J: "[[a2,e3,a3,e4]@9 e4@3 [a2,e4]@4 a3@2 [a2,e3,a3,c#4]@6 [e3,a3,c#4,e4]@3 ~@3 [a3,c#4,e4]@6 [a3,c#4,e4]@6 e4@3 [d3,a3,d4]@3 [d4,f#4]@6 d4 ~@2 b3 ~@2 [a2,e3,a3,c#4,e4]@6 [b3,e4]@2 ~@4 [b2,f#3,a3,d4,f#4]@9 [b2,d4,f#4]@3 f#4@3 ~ f#3@2 [g3,f4] ~@3 [a3,d4]@2, c#4@5 ~@4 [e3,a3,c#4]@9 e4@5 ~@4 [e3,a3,c#4,e4]@3 e3@11 ~ b3 ~@2 e4 ~@2 [d3,a3]@10 ~@23 [f#3,a3]@6 f#4@3 ~@3 [a2,d3]@2 ~, ~@28 a2@8 a2@24 ~@24 [b2,d4]@5 ~ e2@5 ~]/2", // A5 A D5 D A E5 Bm7 Bm …
  K: "[d4,f#4]@6 [d4,f#4]@2 c#4 [g3,b3]@2 ~ [a2,a3,c#4,e4]@6 e4 ~@2 b3 ~@2 [d4,f#4]@6 [d4,f#4]@3 ~ a3@2 [b2,f#3,a3,d4,f#4]@6 [a3,d4,f#4]@2 ~ [b3,e4] ~@2, [d3,a3]@11 ~ e3@5 ~@7 [b2,f#3]@12 ~@12, ~@8 a3 ~@2 [b2,d4,f#4] ~@4", // D G A D Bm7 D E5 D5 …
  L: "[[d3,a3,d4,f#4]@6 d4@3 [a3,d4,f#4]@3 [a3,d4,f#4]@6 c#4 ~@2 [b3,e4]@3 [b3,e4]@6 b3@2 ~ [e3,g#3,b3,e4]@3 [b2,e3,g#3,b3]@7 ~@5 c#4@84 ~@12, ~@9 d3@12 ~@3 [b2,e3,g#3]@12 e4@10 [a2,e3]@89 ~@9, ~@47 a3@88 ~@9, ~@48 e4@71 ~@25]/3", // D E5 E A5
  M: "[~@10 [a3,c#4,f#4]@9 ~ [a3,c#4]@2 ~ f#4@5 [a3,c#4,f#4]@9 ~ [a3,c#4]@2 ~ f#4@5 ~ f#4@5 ~ f#4@2 ~@4 [a3,c4,f4]@8 [c4,f4]@3 [a3,c4,f4]@6 [a3,c4,f4]@9 [c4,f4]@3 ~ f4@5 ~ f4@5 [c4,f4] ~@7 e4@39 ~@8 [g#3,e4]@2 ~ e4@5 ~@4 e4@5 e4@2 ~ e4@5 ~ [b3,e4]@3 [g#3,b3,e4]@5 ~ [g#3,b3,e4]@6 [g#3,b3,e4]@6 [a3,c#4,e4]@9 ~ c#4@2 ~ [c#4,e4]@6 c#4@5 ~ e4@2 ~ [a3,c#4]@2 ~ [c#4,e4]@5 ~ [c#4,e4]@5 [a3,c#4]@2 ~@5 f4@8 [a3,c#4,f4]@3 [a3,c#4,f4]@6 f4@6 f4@3 [c#4,f4]@3 [a3,c#4,f4]@6 [a3,c#4,f4]@6 ~ f4@2 ~@4 [c#4,f#4]@8 ~ a3@2 ~ f#4@6 f#4@6 f#4@3 f#4@2 [a3,c#4,f#4]@6 ~ f#4@5 ~ c#4@2 ~@4 [c#4,g4]@8 ~ c#4@2 [a3,c#4,g4]@6 g4@6 g4@3 [c#4,g4]@3 [a3,c#4,g4]@6 [a3,c#4,g4]@2, ~@10 d3@48 ~@42 d3@4 ~@2 [c#3,g#3]@43 ~@6 [e3,b3]@9 e3@35 ~@3 e3@30 ~@30 f3@35 ~ f#3@36 [f#3,a3,c#4]@9 ~@3 e3@36 ~@2, ~@19 f#4@3 [a3,c#4]@6 ~@9 f#4@3 [a3,c#4]@6 [a3,c#4]@6 [a3,c#4]@3 ~@33 [a3,c4]@6 [a3,c4]@6 a3@2 ~@5 b3@41 ~@9 g#3@6 [g#3,b3,e4]@3 b2@32 ~@28 c#4@3 e4@3 ~@12 e4@4 ~@59 [c#4,f#4]@3 ~@45 g4@3 ~@26, ~@166 [g#3,b3]@6 [g#3,b3]@11 ~@28 e4@3 a3@6 ~ [a3,e4]@9 ~@2 a3@6 a3@6 ~@6 [a3,c#4]@9 ~@9 [a3,c#4]@12 ~@12 [a3,c#4]@3 ~@3 a3@9 ~@3 [a3,c#4]@6 ~ [a3,c#4]@11 ~@12 [a3,f#4]@2 ~@4 a3@11 ~@7 [a3,c#4]@12 ~@8]/8", // F#m A F#m A F F5 F F5 …
  N: "[~@4 [a3,c#4,g4]@3 ~@4 f#4@8 ~ [a3,c#4]@2 ~ f#4@5 [a3,c#4,f#4]@9 ~ [a3,c#4]@2 ~ f#4@5 ~ f#4@5 ~ f#4@2 ~@4 [a3,c4,f4]@8 [c4,f4]@3 [a3,c4,f4]@6 [a3,c4,f4]@9 [c4,f4]@3 ~ f4@5 ~ f4@5 [c4,f4] ~@7 e4@36, ~@10 d3@48 ~@42 d3@4 ~@2 [c#3,g#3]@37 ~, ~@10 [a3,c#4]@9 f#4@3 [a3,c#4]@6 ~@9 f#4@3 [a3,c#4]@6 [a3,c#4]@6 [a3,c#4]@2 ~@34 [a3,c4]@6 [a3,c4]@6 a3@2 ~@5 b3@36 ~]/3", // A7 A F#m A F F5 F F5 …
  O: "[~@10 [a3,d4,f#4]@6 d4@2 ~@4 [e3,a3,c#4,e4]@6 ~ e4 ~@5 [d4,f#4]@8 [d4,f#4]@3 [b2,d4,f#4]@5 ~ [a3,d4,f#4] ~@2 [c#4,e4] ~@2 [a3,d4,f#4]@6 [d4,f#4]@2 ~ [a2,e4]@2 ~ [c#4,e4]@5 ~ c#4 ~ b3 g3 ~@2 [f#3,a3,d4,f#4]@8 ~ [f#3,a3]@3 [f#3,a3,d4,f#4]@5 f#4 [d4,f#4] ~ [b3,e4] d3@2 ~ [a3,d4,f#4]@8 [a3,d4,f#4]@3 ~@6 f#4@2 ~ [g3,b3]@3 [b2,g#3,b3,e4]@9 [g#3,b3,e4]@3 [b2,g#3,b3,e4]@8 ~@4 [a2,e3,a3]@9 e4@3 ~@3 a3@2 ~ [a2,e3,a3,c#4]@6 [e3,a3,c#4,e4]@2 ~ [e3,a3,c#4]@2 ~ [a3,c#4,e4]@5 [a3,c#4,e4]@6 e4@3 e4 d3@2 [d4,f#4]@6 d4 ~@2 b3 ~@2 [a2,e3,a3,c#4,e4]@6 [b3,e4]@2 ~@4 [b2,f#3,a3,d4,f#4]@9 [b2,d4,f#4]@3 [b2,d4,f#4]@3 [f#3,f#4], ~@22 a2@7 ~@5 f#3@18 ~@15 g3 ~ [e3,a3]@8 ~@28 d3@12 d3@11 ~ e3@20 ~@13 [e3,a3,c#4]@9 ~@11 e3@11 ~@7 [d3,a3]@10 ~@30, ~@34 b2@12 ~@9 [a2,d3]@13 ~@2 a2@10 ~@2 b2@18 ~@18 [a3,d4]@8 ~@27 c#4@5 ~@7 [a2,e4]@6 ~@9 a2@8 a2@23 ~@29, ~@35 a3@17 ~@23 e4@2 ~@13 [d4,f#4]@3 ~@24 f#4@6 ~@30 e4@8 ~@10 e4@5 ~@3 e4@3 ~@12 b3 ~@2 [a3,d4]@3 ~@33 [f#3,a3]@7]/5", // D A D Bm D C#m D A5 …
  P: "[~@2 [g3,f4] ~@2 [a2,d3,a3,d4]@2 ~ [d4,f#4]@6 [d4,f#4]@2 ~ g3 ~@2 [e3,a3,c#4,e4]@5 e4 ~@3 b3 ~@2 [d4,f#4]@5 [d4,f#4]@3 ~ [b2,a3]@2 ~ [f#3,a3,d4,f#4]@5 [a3,d4,f#4]@2 ~ [b3,e4] ~@2 [d3,a3,d4,f#4]@6 d4@3 [a3,d4,f#4]@3 [a3,d4,f#4]@6 c#4 ~@2 [b3,e4]@3 b3@6 b3@2 ~ [e3,g#3]@2 ~ [g#3,b3]@7 ~@5 e4@8 ~@7 a3@2 ~ [a3,c#4,e4]@5 ~ e4@2 ~ e3@2 [a3,c#4,e4]@5 ~ [a3,c#4,e4]@6 e4@3 [d3,a3,d4]@3 [a3,d4,f#4]@6 d4@2 ~@4 [e3,a3,c#4,e4]@6 e4 ~@5 [b2,d4]@9 [d4,f#4]@3 [b2,d4,f#4]@5 [a3,d4,f#4], ~@2 e2@5 ~ [d3,a3]@8 [b3,c#4]@2 ~ a2@9 ~@3 [b2,f#3]@12 b2@7 ~@14 d3@12 ~@3 [b2,e3,g#3,e4]@11 [b2,e3]@6 ~@7 [a2,e3,a3]@9 [e3,a3,c#4]@8 [a2,e3]@9 ~ a2@8 a2@23 ~ a2@10 ~@2 [f#3,a3]@18, ~@32 a3@3 ~@5 [d4,f#4]@3 ~@44 [b3,e4]@3 ~ e4@11 ~ c#4@5 ~@3 e4@3 ~ [a2,e4]@6 ~@5 [e3,a3,c#4]@3 [a3,c#4,e4]@3 e3@11 ~ b3 ~@2 e4 ~@26 f#4@8 ~@10]/4", // G7 D5 D A D B7 D E5 …
  Q: "~@2 e4 c#4 ~ [a3,d4,f#4]@6 [d4,f#4]@2 ~ [a2,e4]@3 [c#4,e4]@6 [c#4,e4]@2 ~ [g3,b3] ~@2 [f#3,a3,d4,f#4]@9 [f#3,a3,d4,f#4]@3 [f#3,a3,d4,f#4]@6 [d4,f#4], ~@3 [a2,d3]@11 g3 ~@2 [a2,e3,a3]@10 ~@2 b2@18 ~", // D A5 C#m G D D5 A5
  R: "~@2 [d3,b3,e4] ~@2 d4@5 d4@2 ~@5 [a3,c#4,e4]@6 e4 ~@5 f#4@8 ~ d4@3 [b2,d4,f#4]@5 [a3,d4,f#4] ~, ~@5 [a3,f#4]@8 ~@3 a2@10 ~@3 [b2,d4]@12 ~@7, ~@16 e3@6 ~@7 [f#3,a3]@18 ~, ~@37 f#4@3 ~@8", // E7 A Bm D Bm F#m
  S: "~ e4 c#4 ~ [a3,d4,f#4]@6 [d4,f#4]@2 ~ [a2,e4]@3 [c#4,e4]@6 [c#4,e4]@2 ~ [g3,b3] ~@2 [f#3,a3,d4,f#4]@9 [f#3,a3,d4,f#4]@3 [f#3,a3,d4,f#4]@6 [d4,f#4] ~, ~@2 [a2,d3]@11 g3 ~@2 [a2,e3,a3]@10 ~@2 b2@18 ~@2", // D A5 C#m G D D5 A5
  T: "e4 [d3,b3]@2 ~ f#4@5 d4@2 ~@5 e4@6 e4 ~@5 f#4@8 ~ d4@3 [b2,d4,f#4]@5 [a3,d4,f#4] ~@2, ~@3 [a3,d4]@8 ~@4 a2@10 ~@3 [b2,d4]@12 ~@8, ~@15 [e3,a3,c#4]@6 ~@7 [f#3,a3]@18 ~@2, ~@12 f#4 ~@3", // G Bm D D5 Bm A F#m
// … 183 more lines

More by Guess Who