Strudelify

I Might

Stevens Shakin

KeyC majorTempo188 bpm
0:00/0:00
// I Might — Stevens Shakin 
// 188 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 148 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(188/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 · acoustic bass · "ACOU BASS"
const bass = note(`<
  ~@4 A@4 B@3 C@2 D E@2 F@2 G F H@2 D@4 G@2 I@2 J K D@2 L M N O P@2 Q@2 R@2 S T U V W X Y Z@2 C@2 D G@2 F AA J F AB AC
  AD AE@3 F@2 AF AG AH AF AE@2 AI M O AJ AK@2 AL@2 AM AN T@2 U AO AJ X D@3 C@2 D G@2 F AA AP AQ AR AS AT@4 AU AV@3 AW@2
  AX AY AZ@2 BA BB AW@6 AY@2 BB BC BD BE@2 AW@3 AY AX BB BC BF BG BH BA BI ~
>`.pickRestart({
  A: "c1 ~@3 c1 ~@3",
  B: "[c2@4 e2@4 g2@4 a2@3 ~ c2@4 e2@4 g2@4 a2@3 ~ c2@4 e2@4 g2@4 a2@3 g2, ~@15 g2@2 ~@14 g2@2 ~@15]/3",
  C: "c2@4 e2@4 g2@4 a2@2 ~ g2", D: "c2@4 e2@4 g2@4 a2@3 g2",
  E: "[f1@4 a1@4 c2@4 d2@3 ~ f1@4 a1@4 c2@4 d2@3 c2, ~@15 c2@2 ~@15]/2", F: "g1@4 b1@4 d2@4 e2@3 d2",
  G: "f1@4 a1@4 c2@4 d2@3 c2", H: "[c2@4 e2@4 g2@4 a2@3 ~ c2@4 e2@4 g2@4 a2@2 ~ g2, ~@15 g2@2 ~@15]/2",
  I: "[g1@2 b1@2 d2@2 e2 ~ g1@2 b1@2 d2@2 e2@2, ~@15 d2@2 ~@15]/2", J: "d2 f2 a2 f2", K: "g1@4 b1@4 d2@4 b1@3 ~",
  L: "f1@7 a1@3 ~@2 c2@3 ~", M: "f1@6 ~ a1@5 c2@4", N: "g1@6 ~ b1@4 ~ d2@3 ~", O: "g1@5 ~@2 b1@5 d2@3 ~",
  P: "c2@5 ~@2 e2@5 g2@3 ~", Q: "a1@5 ~@2 c2@5 e2@3 ~", R: "a#1@5 ~@2 d2@5 f2@3 ~", S: "d2@5 ~@2 f2@5 a2@4",
  T: "d2@6 ~ f2@5 a2@4", U: "d2@6 ~ f#2@5 a2@4", V: "d1@6 ~ f#1@5 a1@3 ~", W: "g1@5 ~@2 b1@5 d2@4", X: "g1 ~@3",
  Y: "c2@3 ~ e2@4 g2@4 a2@2 ~ g2", Z: "[c2@4 e2@4 g2@4 a2@2 ~@2 c2@4 e2@4 g2@4 a2@2 ~ g2, ~@15 g2@2 ~@15]/2",
  AA: "g1 b1 d2 e2", AB: "c2 e2 g2 e2", AC: "a1 f#2 e2 c#2", AD: "d2@4 f#2@4 a2@3 ~ b2@3 a2",
  AE: "d2@4 f#2@4 a2@4 b2@3 a2", AF: "a1@4 c#2@4 e2@4 f#2@3 e2", AG: "a1 c#2 e2 f#2", AH: "e1@4 g1@4 b1@4 g1@3 ~",
  AI: "f1@6 ~ a1@4 ~ c2@4", AJ: "g1@6 ~ b1@5 d2@4", AK: "c2@6 ~ e2@5 g2@3 ~", AL: "a1@6 ~ c2@5 e2@4",
  AM: "a#1@6 ~ d2@5 f2@3 ~", AN: "a#1@6 ~ d2@5 f2@4", AO: "d1@7 f#1@5 a1@3 ~", AP: "d2@4 f2@4 a2@4 f2@3 ~",
  AQ: "g1@4 b1@4 d2@4 e2@2 ~ d2", AR: "c2@2 e2@2 g2@2 a2 ~", AS: "g#2 f#2 f2 d#2", AT: "[c#2 c#1]/4",
  AU: "c#2@4 f2@4 g#2@3 ~ a#2@3 g#2",
  AV: "[c#2@4 f2@4 g#2@4 a#2@3 ~ c#2@4 f2@4 g#2@4 a#2@3 ~ c#2@4 f2@4 g#2@4 a#2@3 g#2, ~@15 g#2@2 ~@14 g#2@2 ~@15]/3",
  AW: "c#2@4 f2@4 g#2@4 a#2@3 g#2", AX: "f#1@4 a#1@4 c#2@4 d#2@3 c#2", AY: "f#1@4 a#1@4 c#2@4 d#2@2 ~ c#2",
  AZ: "[g#1@4 c2@4 d#2@4 f2@3 ~ g#1@4 c2@4 d#2@4 f2@3 d#2, ~@15 d#2@2 ~@15]/2", BA: "f#1@4 a#1@4 c#2@4 a#1@3 ~",
  BB: "g#1@4 c2@4 d#2@4 f2@3 d#2", BC: "g#1 c2 d#2 f2", BD: "d#2@4 f#2@4 a#2@4 f#2@3 ~",
  BE: "[g#1@4 c2@4 d#2@4 f2@3 ~ c#2@4 f2@4 g#2@4 a#2@3 g#2, ~@15 d#2@2 ~@15]/2", BF: "d#2 f#2 a#2 f#2",
  BG: "g#1@4 c2@4 d#2@4 f2@2 ~ d#2", BH: "c#2 f2 g#2 c#2", BI: "c#2@4 ~@3 c#2@9",
})).s("gm_acoustic_bass").gain(0.8)

// other · electric guitar muted · "MUTED GTR"
const electric_guitar_muted = note(`<
  ~@8 A B C D A E F@2 G@2 H I J A@4 E F@2 G@2 K G A E F@2 G L M A N@2 O P Q R S T U V A@3 W E D F@2 G@2 X G A Y S Z AA
  AB G@2 Y@2 AC AD AE AF AG F G@2 A AH AI AJ AK P R@2 S Z AL@2 A@2 B A@3 F@2 G@2 AM G A AN AO@4 AP AQ AP@2 AR AS AT AU
  AV AW AU AX AP@3 AY AP@2 AZ AU AX@2 BA AX AP@4 AU@2 AX@2 BB AX AP BC BD ~
>`.pickRestart({
  A: "g3@2 ~ c3 a3@2 ~ c3 g3@2 ~ c3 a3@2 ~ c3", B: "g3@2 ~ c3 a3@2 ~ c3 g3@3 c3 a3@2 ~ c3",
  C: "g3@3 c3 a3@3 c3 g3@3 c3 a3@2 ~ c3", D: "g3 ~@2 c3 a3@2 ~ c3 g3@2 ~ c3 a3@2 ~ c3",
  E: "g3@2 ~ c3 a3@2 ~ c3 g3@2 ~ c3 a3 ~@2 c3", F: "c3@2 ~ f2 d3@2 ~ f2 c3@2 ~ f2 d3@2 ~ f2",
  G: "d3@2 ~ g2 e3@2 ~ g2 d3@2 ~ g2 e3@2 ~ g2", H: "c3@3 f2 d3@2 ~ f2 c3@2 ~ f2 d3@3 f2",
  I: "d3@3 g2 e3@2 ~ g2 d3@2 ~ g2 e3@2 ~ g2", J: "g3@3 c3 a3@3 c3 g3@2 ~ c3 a3@2 ~ c3",
  K: "a3@2 ~ d3 a3@3 d3 a3@2 ~ d3 a3@2 ~ d3", L: "d3@2 ~ g2 e3@2 ~ g2 d3@2 ~ g2 e3 ~@2 g2",
  M: "g3@2 ~ c3 g3@2 ~ c3 g3@2 ~ c3 a3@2 ~ c3", N: "e3@2 ~ a2 e3@2 ~ a2 e3@2 ~ a2 e3@2 ~ a2",
  O: "f3@2 ~ a#2 g3@3 a#2 f3@3 a#2 g3@2 ~ a#2", P: "f3@2 ~ a#2 g3@2 ~ a#2 f3@3 a#2 g3@2 ~ a#2",
  Q: "a3@3 d3 a3@3 d3 a3@3 d3 a3@2 ~ d3", R: "a3@2 ~ d3 a3@2 ~ d3 a3@2 ~ d3 a3@2 ~ d3",
  S: "a3@2 ~ d3 b3@2 ~ d3 a3@2 ~ d3 b3@2 ~ d3", T: "a3@2 ~ d3 b3 ~@2 d3 a3@2 ~ d3 b3 ~@2 d3",
  U: "d3@2 ~ g2 e3@2 ~ g2 d3@2 ~ g2 e3 ~@3", V: "[g2,g3] ~@7", W: "g3@2 ~ c3 a3 ~@2 c3 g3@2 ~ c3 a3@2 ~ c3",
  X: "~@3 d3 a3@2 ~ d3 a3@2 ~ d3 a3@2 ~ d3", Y: "e3@2 ~ a2 f#3@2 ~ a2 e3@2 ~ a2 f#3@2 ~ a2",
  Z: "a3@2 ~ d3 b3@2 ~ d3 a3@3 d3 b3@2 ~ d3", AA: "a3@3 d3 b3@2 ~ d3 a3@2 ~ d3 b3@2 ~ d3",
  AB: "a3@2 ~ d3 b3@2 ~ d3 a3@2 ~ d3 b3 ~@2 d3", AC: "e3@2 ~ e3 e3@2 ~ e3!2 ~@2 e3!2 ~@2 e3",
  AD: "a2 ~@2 a2 e3@2 ~ a2 f#3@2 ~ a2 e3@2 ~ a2", AE: "a3@2 ~ d3 b3@2 ~ d3 a3@2 ~ d3 [b3,c4] ~@2 d3",
  AF: "~@3 d3 b3@2 ~ d3 a3@2 ~ d3 b3@2 ~ d3", AG: "~@3 c3 f3 ~@2 c3 c3@2 ~ f2 d3@2 ~ f2",
  AH: "g3@2 ~ c3 a3@3 c3 g3@2 ~ c3 a3@3 c3", AI: "a2@2 ~@2 a2@2 ~@2 a2@3 a3 a3@2 ~ a2, ~@3 a3@2 ~@2 a3@2 ~@7",
  AJ: "a3@2 ~ a2 a3@3 a2 a3 ~@3 a2 ~@2 a2, ~@11 a3@2 ~@3", AK: "f3@2 ~ a#2 g3@2 ~ a#2 f3@2 ~ a#2 g3@2 ~ a#2",
  AL: "[d3@2 ~ g2 e3@2 ~ g2 d3@2 ~ g2 e3 ~@3 g3@2 ~@14, ~@15 g2@4 ~@13]/2",
  AM: "a3@2 ~ d3 a3@2 ~ d3 a3 ~@2 d3 a3@2 ~ d3", AN: "d#3@2 ~ g#2 d#3@2 ~ g#2 d#3@2 ~ g#2 d#3@2 ~ g#2",
  AO: "[~@3 c#3@26 ~@3 c#3@27 ~@5, g#3@28 ~@3 g#3@28 ~@5]/4", AP: "g#3@2 ~ c#3 a#3@2 ~ c#3 g#3@2 ~ c#3 a#3@2 ~ c#3",
  AQ: "g#3@3 c#3 a#3@2 ~ c#3 g#3@3 c#3 a#3@2 ~ c#3", AR: "g#3@2 ~ c#3 a#3@3 c#3 g#3@2 ~ c#3 a#3@3 c#3",
  AS: "g#3@3 c#3 a#3@2 ~ c#3 g#3@2 ~ c#3 a#3 ~@2 c#3", AT: "c#3@2 ~ [f2,f#2] d#3 ~@2 f#2 c#3@2 ~ f#2 d#3@2 ~ f#2",
  AU: "c#3@2 ~ f#2 d#3@2 ~ f#2 c#3@2 ~ f#2 d#3@2 ~ f#2", AV: "d#3@2 ~ [g2,g#2] f3@2 ~ g#2 d#3@2 ~ g#2 f3@2 ~ g#2",
  AW: "d#3 ~@2 g#2 f3@2 ~ g#2 d#3@2 ~ g#2 f3@2 ~ g#2", AX: "d#3@2 ~ g#2 f3@2 ~ g#2 d#3@2 ~ g#2 f3@2 ~ g#2",
  AY: "g#3@2 ~ c#3 a#3@3 c#3 g#3@2 ~ c#3 a#3@2 ~ c#3", AZ: "c#3@2 ~ f#2 d#3@2 ~ f#2 c#3@2 ~ f#2 d#3@3 f#2",
  BA: "a#3@2 ~ d#3 a#3@2 ~ d#3 a#3@2 ~@2 d#3 ~@2 d#3, ~@11 a#3@2 ~@3", BB: "d#3@2 ~ a#2 d#3@2 ~ a#2 d#3 ~@2 d#3!2 ~@3",
  BC: "c#3@2 ~ f#2 d#3@2 ~ f#2 c#3@2 ~ f#2 c#3@2 ~ f#2", BD: "g#3@2 ~ c#3 g#3 ~@2 c#3@9",
})).s("gm_electric_guitar_muted").gain(0.4).pan(0.2)

// chords · piano · "A.PIANO 1"
const piano = note(`<
  A B@7 C@2 D E F G H@2 I J K L M@2 N O N P Q R S T U V N W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR
  AS Q AT AU AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ BC BK BL BM BN BO BP BQ BR BS BT BU BV BW BX BY BZ CA CB CC N
  CD AN CE CF AT CG CH CI CJ CK CL CM@4 CN CO@3 CP CQ CR CS CT@2 CU CV CW CX CY CZ DA DB DC DD DE DF DG DH@2 DI DJ DK DL
  DM DN DO DP DQ DR DS DT ~
>`.pickRestart({
  A: "c2@4 e2@4 g2@4 a2@2 ~ g2", B: "c2@4 e2@4 g2@4 a2@3 g2",
  C: "[c3@3 [g4,c5,e5] e3@4 [g4,c5,e5] ~@3 a3@3 ~ [g4,c5,e5] ~@3 e3@3 [g4,c5,e5] g3@4 [g4,c5,e5] ~@2 g3, ~@8 g3@4 ~@3 g3@2 ~@11 a3@3 ~, ~@4 c3 ~@3]/2", // C
  D: "~@3 [g4,c5,e5] e3@4 [g4,c5,e5] ~@3 a3@3 g3, c3@5 ~@3 g3@4 ~@4", // C
  E: "[g4,c5] ~@3 e3@3 [g4,c5] g3@4 [a3,g4,c5,e5]@2 ~ g3, c3 ~@3, e5@2 ~@5 e5@2 ~@7", // C5 Am7
  F: "c3@3 [g4,c5,e5] e3@4 [g4,c5,e5]@2 ~@2 a3@3 g3, ~@2 g3 ~", // C
  G: "[g4,c5,e5] ~@3 e3@3 [g4,c5] g3@4 [a3,g4,c5,e5]@3 g3, c3@4 ~@3 e5@2 ~@7", // C C5 Am7
  H: "[f2@3 [a4,c5] a2@4 [a4,c5] ~@3 d3@3 ~ [a4,c5,f5] ~@3 a2@3 c5 c3@4 [d3,a4,c5,f5]@3 c3, ~@3 f5@2 ~@3 c3@4 ~@3 c3@2 ~@6 [a4,f5]@2 ~@7, ~@4 f5 ~@3 f2@2 ~@6]/2", // Am F Dm7 Dm
  I: "g2@3 [g4,b4,d5] b2@4 [g4,b4,d5] ~@3 e3@3 d3, ~@2 d3 ~", // G
  J: "[g4,b4,d5] ~@3 b2@3 ~ d3@4 [e3,g4,b4,d5]@3 d3, g2@4 ~@3 [g4,b4,d5]@2 ~@7", // G Em7 G
  K: "f2@3 c5 a2@4 [a4,c5,f5]@2 ~@2 d3@3 c3, ~@3 [a4,f5]@2 ~@3 c3@4 ~@4", // F Dm
  L: "[b4,d5] ~@3 b2@3 [b4,d5,g5] d3@4 [e3,g5]@3 d3, g2 ~@3, g5@2 ~@10 [b4,d5] ~@3", // Bm G Em Bm
  M: "[c3@3 [g4,c5,e5] e3@4 [g4,c5,e5] ~@3 a3@3 ~ [g4,c5,e5] ~@3 e3@3 [g4,c5,e5] g3@4 [g4,c5,e5] ~@2 g3, ~@8 g3@4 ~@3 g3@2 ~@11 a3@2 ~@2, ~@4 c3 ~@3]/2", // C
  N: "c3@3 [g4,c5,e5] e3@4 [g4,c5,e5] ~@3 a3@3 g3, ~@2 g3 ~", // C
  O: "[g4,c5,e5] ~@3 e3@3 [g4,c5,e5] g3@4 [g4,c5,e5] ~@2 g3, c3@4 ~@8 a3@3 ~", // C
  P: "[g4,c5,e5] ~@3 e3@3 [g4,c5,e5] g3@4 [a3,c5,e5]@3 g3, c3@4 ~@8 g4 ~@3", // C Am
  Q: "f2@3 [a4,c5,f5] a2@4 [a4,c5,f5] ~@3 d3@3 c3, ~@2 c3 ~", // F
  R: "[a4,c5] ~@3 a2@3 c5 c3@4 [d3,a4,c5,f5]@3 c3, f2 ~@3, f5@2 ~@5 [a4,f5]@2 ~@7", // Am Dm7 Dm
  S: "g2@3 [g4,b4,d5] b2@4 [g4,b4,d5] ~@3 e3@2 ~ d3, ~@2 d3 ~", // G
  T: "[g4,b4,d5] ~@3 b2@3 [g4,b4,d5] d3@4 [b4,d5]@2 ~@2, g2 ~@2 e3, ~@12 g4 ~@3", // G Bm
  U: "d3@3 [a4,d5,f5] f3@4 [a4,d5] ~@3 f3@4, ~@2 a3 ~, ~@4 f5 ~@3", // Dm D5
  V: "[b4,d5,g5] ~@3 b2@3 [b4,d5,g5] d3@4 [b2,b4,d5,g5]@3 ~, g2 ~@3", // G
  W: "[g4,c5,e5] ~@3 e3@3 [g4,c5,e5] g3@4 [a3,g4]@3 g3, c3@4 ~@8 [c5,e5] ~@3", // C A7 C
  X: "~@3 [f4,a4,c5] ~@4 [f4,a4,c5]@2 ~@2 a4 [f4,c5] ~@2, f2@7 a2@3 ~@2 c3@3 ~", // F F5
  Y: "[f4,a4,c5]@2 ~@5 [f4,a4,c5]@3 ~@2 [f4,a4] ~@3, f2@6 ~ a2@5 c3@4, ~@6 c5 ~", // F
  Z: "[g4,b4,d5] ~@6 [b2,g4,b4,d5]@4 ~ [g4,b4,d5] ~@3, g2@6 ~@6 d3@3 ~", // G
  AA: "[g4,b4,d5]@3 ~@4 [b2,g4,b4,d5]@5 [d3,d5]@3 ~, g2@5 ~@7 [g4,b4] ~@3", // G D G
  AB: "[g4,e5]@2 ~@5 [g4,c5,e5]@3 ~@2 [g4,c5,e5] ~@3, c3@5 ~@2 e3@5 g3@3 ~, c5 ~@15", // C
  AC: "[g4,c5] ~@6 [e3,e5]@5 [g3,g4,c5,e5]@3 ~, c3@5 ~@2 c5 ~@8, e5@2 ~@5 g4@3 ~@6", // C5 E C
  AD: "[a4,c5,e5] ~@6 [c3,a4,c5,e5]@5 [a4,c5,e5] ~@3, a2@5 ~@7 e3@3 ~", // Am
  AE: "[a4,c5,e5] ~@6 [a4,c5,e5]@4 ~ [e3,a4,c5]@3 ~, a2@5 ~@2 c3@5 e5 ~@3", // Am
  AF: "[a#4,d5] ~@6 [f4,a#4,d5]@2 ~@3 [f3,f4]@3 ~, a#2@5 ~@2 d3@5 ~@4, f4@2 ~@10 [a#4,d5] ~@3", // A# F A#
  AG: "[f4,a#4,d5] ~@6 [a#4,d5] ~@4 [f3,d5]@3 ~, a#2@5 ~@2 d3@5 ~@4, ~@7 f4@3 ~@2 [f4,a#4] ~@3", // A# Dm A#5
  AH: "[f4,a4,d5]@2 ~@5 [f3,f4,a4,d5]@5 [f4,a4,d5]@2 ~@2, d3@5 ~@7 a3@4", // Dm
  AI: "[f4,a4,d5]@2 ~@5 [f4,a4,d5]@3 ~@2 [f4,a4] ~@3, d3@6 ~ f3@5 a3@4, ~@6 d5 ~", // Dm F
  AJ: "[f#4,a4,d5]@2 ~@5 [f#4,a4,d5]@3 ~@2 [f#4,d5]@2 ~@2, d3@6 ~ f#3@5 a3@4, ~@12 a4 ~@3", // D
  AK: "[f#4,a4,d5]@4 ~@3 [f#4,a4,d5]@3 ~@2 [f#4,a4,d5] ~@3, d2@6 ~ f#2@5 a2@3 ~", // D
  AL: "[g4,b4] ~@6 [g4,d5]@2 ~@3 [g4,b4] ~@3, g2@5 ~@2 b2@5 d3@4, d5@2 ~@5 b4 ~@4 d5@2 ~@2", // G G5 G
  AM: "[g4,b4] ~@15, g2 ~@3, d5 ~@7", AN: "c3@3 [g4,c5,e5] e3@4 [g4,c5,e5] ~@3 a3@2 ~ g3, ~@2 g3 ~",
  AO: "[g4,c5,e5] ~@3 e3@3 ~ g3@4 a3@2 ~ g3, c3@4 ~@3 [g4,c5,e5]@6 ~@3", // C
  AP: "c3@3 [g4,c5,e5] e3@4 [g4,c5] ~@3 a3@2 ~ g3, ~@2 g3 ~, ~@4 e5 ~@3", // C C5
  AQ: "[g4,c5,e5] ~@3 e3@3 ~ g3@4 [a3,g4,e5]@3 [g3,c5], c3@4 ~@3 [g4,c5,e5]@2 ~@3 c5 ~@3", // C A7 C5 C
  AR: "~@3 [g4,c5] e3@4 [g4,c5] ~@3 a3@2 ~ g3, c3@5 ~@3 g3@4 ~@4, ~@3 e5@2 ~@3 e5@2 ~@6", // C5
  AS: "c3@3 [g4,c5] e3@4 [g4,e5]@2 ~@2 a3@3 g3, ~@3 e5@2 ~@3 g3@4 ~@4, ~@8 c5 ~@7", // C5 C
  AT: "[a4,c5,f5] ~@3 a2@3 ~ c3@4 [d3,a4,c5,f5]@3 c3, f2@4 ~@3 [a4,c5,f5]@4 ~@5", // F Dm7 F
  AU: "g2@3 ~ b2@4 [g4,b4,d5]@2 ~@2 e3@3 d3, ~@3 [g4,b4,d5]@2 ~@3 d3@4 ~@4", // G
  AV: "[g4,b4,d5]@2 ~@2 b2@3 ~ d3@4 [g4,b4,d5]@2 ~@2, g2@4 ~@3 [g4,b4,d5]@3 ~@2 e3@4", // G
  AW: "d3@3 ~ f3@4 [f4,a4,d5]@2 ~@2 [f4,a4,d5]@2 ~@2, ~@3 [f4,a4,d5]@2 ~@3 a3@4 f3@4", // Dm
  AX: "[g4,b4,d5]@2 ~@2 b2@3 ~ d3@4 [e3,g4,b4,d5]@3 d3, g2@4 ~@3 [g4,b4,d5]@3 ~@6", // G Em7 G
  AY: "~@3 [g4,c5] e3@4 [g4,c5,e5]@2 ~@2 e3@4, c3@5 ~@3 g3@4 ~@4, ~@3 e5@2 ~@11", // C5 C
  AZ: "[a4,c#5,e5] ~@3 f#3@3 ~ e3@4 c#3@4, a2@4 ~@3 [a4,c#5,e5]@6 ~@3", // A
  BA: "d3@3 [d5,f#5] f#3@4 [a4,d5,f#5] ~@3 b3@3 a3, ~@3 a4@2 ~@3 a3@3 ~@5", // D
  BB: "[a4,d5,f#5] ~@3 f#3@3 f#5 a3@4 [a4,d5,f#5] ~@2 a3, d3@4 ~@3 [a4,d5]@2 ~@3 b3@3 ~", // D D5
  BC: "d3@3 [a4,d5,f#5] f#3@4 [a4,d5,f#5] ~@3 b3@3 a3, ~@2 a3 ~", // D
  BD: "[a4,c5,f#5] ~@3 f#3@3 ~ a3@4 [b3,f#5]@3 a3, d3@4 ~@3 [a4,c5,f#5]@5 [a4,c5] ~@3", // F#dim B5 F#dim Am
  BE: "g2@3 d5 b2@4 [b4,d5,g5] ~@3 e3@3 d3, ~@3 [b4,g5]@2 ~@3 d3@4 ~@4", // G Em
  BF: "[b4,d5,g5] ~@3 b2@3 d5 d3@4 [e3,b4,d5]@3 d3, g2@4 ~@3 [b4,g5]@2 ~@3 g5 ~@3", // G E7 Em
  BG: "~@4 c#3@4 [a4,c#5,e5] ~@3 f#3@3 e3, a2@5 ~@3 e3@4 ~@4, ~@3 [a4,c#5,e5]@2 ~@11", // A
  BH: "[c#5,e5] ~@3 c#3@3 [c#5,e5] e3@4 [a4,c#5,e5] ~@3, a2 ~@2 f#3, a4@2 ~@5 a4@2 ~@7", // C#m A
  BI: "e2@3 [e5,g5] g2@4 [b4,g5]@2 ~@2 g2@3 ~, ~@3 b4@2 ~@3 b2@4 ~@4, ~@8 e5 ~@7", // Em
  BJ: "[a4,c#5,e5] ~@7 e3@4 f#3@3 e3, a2@4 c#3@5 ~@7, ~@7 [a4,c#5,e5]@7 ~@2", // A
  BK: "d3@3 [a4,d5,f#5] f#3@4 a3@4 b3@3 a3, ~@4 [a4,d5,f#5]@3 ~", // D
  BL: "~@3 [f4,a4,c5] ~@4 [f4,a4,c5]@4 [c3,f4]@4, f2@6 ~ a2@4 ~ [a4,c5] ~@3", // F F5 Am
  BM: "[f4,a4,c5] ~@6 [a2,a4,c5]@5 [f4,a4,c5]@2 ~@2, f2@6 ~ f4@3 ~@2 c3@4", // F Am F
  BN: "~@3 [g4,b4,d5] ~@4 [g4,b4,d5]@2 ~@2 [d3,g4,b4,d5]@3 ~, g2@5 ~@2 b2@5 ~@4", // G
  BO: "[g4,b4,d5] ~@6 [b2,b4,d5]@5 [g4,b4,d5]@2 ~@2, g2@6 ~ g4@3 ~@2 d3@4", // G Bm G
  BP: "~@3 [g4,c5,e5] ~@4 [g4,c5,e5]@2 ~@2 g3@3 ~, c3@6 ~ e3@5 ~@4", // C
  BQ: "[g4,c5,e5] ~@6 [g4,c5,e5]@2 ~@3 [g3,g4,c5,e5]@3 ~, c3@6 ~ e3@5 ~@4", // C
  BR: "~@3 [a4,e5]@2 ~@3 [a4,c5,e5] ~@3 e3@4, a2@6 ~ c3@5 ~@4, ~@3 c5 ~@12", // A5 Am
  BS: "[a4,c5,e5] ~@6 [a4,c5,e5]@3 ~@2 [c5,e5]@2 ~@2, a2@6 ~ c3@5 e3@4, ~@12 a4 ~@3", // Am C
  BT: "~@3 [f4,a#4,d5] ~@4 [f4,a#4,d5]@2 ~@2 f3@3 ~, a#2@6 ~ d3@5 ~@4", // A#
  BU: "[f4,a#4,d5]@2 ~@5 [f4,a#4,d5]@3 ~@2 [f4,a#4,d5]@2 ~@2, a#2@6 ~ d3@5 f3@4", // A#
  BV: "~@3 [f4,d5]@2 ~@3 [f4,a4,d5]@2 ~@2 [f4,a4,d5] ~@3, d3@6 ~ f3@6 ~@3, ~@3 a4 ~@8 a3@4", // Dm
  BW: "[f4,a4,d5] ~@6 [f4,a4,d5]@3 ~@2 [f4,a4] ~@3, d3@6 ~ f3@5 a3@4, ~@6 d5 ~", // Dm F
  BX: "~@3 [f#4,a4,d5] ~@4 [f#4,a4,d5]@2 ~@2 a3@4, d3@6 ~ f#3@6 ~@3", // D
  BY: "[f#4,a4,d5]@2 ~@5 [f#4,a4,d5]@2 ~@3 [a2,d5]@3 ~, d2@7 f#2@5 [f#4,a4] ~@3", // D D5 F#m
  BZ: "~@3 [g4,d5]@2 ~@3 [g4,d5]@2 ~@2 [g4,b4,d5] ~@3, g2@6 ~ b2@5 d3@4, ~@3 b4 ~@4 b4 ~@7", // G5 G
  CA: "[b4,g5] ~@7, g2 ~@3, d5 ~@15", CB: "c3@3 [e4,g4,c5] e3@4 [e4,g4,c5] ~@3 a3@3 g3, ~@2 g3 ~",
  CC: "[e4,g4,c5] ~@3 e3@3 [e4,g4,c5] g3@4 a3@3 g3, c3 ~@3", // C
  CD: "[g4,c5,e5] ~@3 e3@3 ~ g3@4 [a3,g4,c5,e5]@2 ~ g3, c3@4 ~@3 [g4,c5,e5]@2 ~@7", // C Am7 C
  CE: "[g4,c5,e5] ~@4 [g4,e5]@2 ~ g3@4 [a3,g4,c5,e5]@3 g3, c3 e3 ~@2, ~@5 c5 ~@10", // C Am7
  CF: "~@3 [a4,c5,f5] a2@4 [a4,c5,f5] ~@3 d3@3 c3, f2@5 ~@3 c3@4 ~@4", // F
  CG: "g2@3 [b4,d5] b2@4 [b4,d5] ~@3 e3@3 d3, ~@3 g4@2 ~@3 d3@4 ~@4, ~@4 g4 ~@3", // Bm
  CH: "[g4,b4,d5] ~@3 b2@3 [b4,d5] d3@4 [g4,b4,d5]@2 ~@2, g2@4 ~@3 g4@2 ~@3 e3@4", // G Bm G
  CI: "~@3 [a4,d5] f3@4 [a4,f5]@2 ~@2 f3@3 ~, d3@5 ~@3 a3@4 ~@4, ~@3 f5@2 ~@3 d5 ~@7", // D5 Dm
  CJ: "[g4,b4,d5] ~@3 b2@3 ~ d3@4 [e3,g4,b4,d5]@3 d3, g2@4 ~@3 [g4,b4,d5]@5 ~@4", // G Em7 G
  CK: "c3@3 [g4,c5,e5] e3@4 [g4,c5,e5]@2 ~@2 a3@2 ~@2, ~@2 g3 ~", // C
  CL: "~ d#5@2 c5 f#3@4 f3@4 d#3@4, g#3 ~@3, ~ g#4 ~@6 [g#4,c5,d#5,f5]@6 ~@2", CM: "[c#3 c#2]/4",
  CN: "c#3@3 [g#4,c#5,f5] f3@4 [g#4,c#5,f5] ~@3 a#3@3 g#3, ~@8 g#3@3 ~@5", // C#
  CO: "[[g#4,c#5,f5] ~@3 f3@3 [g#4,c#5] g#3@4 [a#3,g#4,c#5]@3 ~ c#3@3 [g#4,c#5,f5] f3@4 [g#4,c#5,f5] ~@3 a#3@3 ~ [g#4,c#5,f5] ~@3 f3@3 [g#4,c#5,f5] g#3@4 [g#4,c#5,f5] ~@2 g#3, c#3@4 ~@3 f5@2 ~@3 f5 ~@2 g#3@2 ~@7 g#3@4 ~@3 g#3@2 ~@11 a#3@3 ~, ~@8 c#3 ~@3]/3", // C# C#5 A#m7 C#
  CP: "c#3@3 [g#4,c#5,f5] f3@4 [g#4,c#5,f5] ~@3 a#3@3 g#3, ~@2 g#3 ~", // C#
  CQ: "[g#4,c#5,f5] ~@3 f3@3 [g#4,c#5,f5] g#3@4 [g#4,c#5,f5] ~@2 g#3, c#3@4 ~@8 a#3@3 ~", // C#
  CR: "f#2@3 [a#4,c#5,f#5] a#2@4 [a#4,c#5] ~@3 d#3@3 c#3, ~@2 c#3 ~, ~@4 f#5 ~@3", // F# A#m
  CS: "[a#4,c#5,f#5] ~@3 a#2@3 [a#4,c#5] c#3@4 [d#3,c#5,f#5]@2 ~ c#3, f#2@4 ~@3 f#5@2 ~@3 a#4 ~@3", // F# A#m D#m7
  CT: "[g#2@3 [g#4,c5,d#5] c3@4 [g#4,c5,d#5] ~@3 f3@3 ~ [g#4,c5,d#5] ~@3 c3@3 [c5,d#5] d#3@4 [f3,g#4,c5,d#5]@3 d#3, ~@8 d#3@4 ~@3 d#3@2 ~@6 g#4@2 ~@7, ~@4 g#2 ~@3]/2", // G# Cm Fm7
  CU: "~@3 [f#4,a#4,c#5] a#2@4 [f#4,a#4,c#5]@2 ~@2 [a#2,f#4,a#4,c#5]@3 ~, f#2@5 ~@3 c#3@4 ~@4", // F#
  CV: "[g#4,c5] ~@3 [g#4,d#5]@2 ~@2 d#3@3 ~ f3@3 d#3, g#2 c3 ~@2, d#5@2 ~@2 c5 ~@6 [g#4,c5,d#5]@5", // G# G#5 G#
  CW: "~ f5 ~ [g#4,c#5,f5] f3@4 [g#4,f5]@2 ~@2 a#3@3 g#3, c#3 ~ g#3 ~, ~@8 c#5 ~@7", // C#
  CX: "[g#4,f5]@2 ~@2 f3@4 [g#4,c#5,f5] ~@3 [a#3,g#4,f5]@3 g#3, c#3 ~ g#3 ~, c#5 ~@11 c#5 ~@3", // C# A#7
  CY: "c#3@3 [g#4,c#5] f3@4 [g#4,c#5,f5] ~@3 a#3@3 g#3, ~@3 f5@2 ~@3 g#3@4 ~@4", // C#5 C#
  CZ: "[g#4,c#5] ~@3 f3@3 ~ g#3@4 [a#3,g#4,c#5,f5]@3 g#3, c#3 ~@3, f5@2 ~@5 [g#4,c#5,f5]@3 ~@6", // C#5 A#m7 C#
  DA: "c#3@3 [g#4,c#5,f5] f3@4 [g#4,c#5] ~@3 a#3@3 g#3, ~@2 g#3 ~, ~@4 f5 ~@3", // C# C#5
  DB: "[g#4,c#5,f5] ~@3 f3@3 c#5 g#3@4 [a#3,g#4,c#5,f5]@3 g#3, c#3@4 ~@3 [g#4,f5]@2 ~@7", // C# A#m7 C#
  DC: "f#2@3 [a#4,c#5,f#5] a#2@4 [a#4,c#5]@2 ~@2 d#3@2 ~ c#3, ~@2 c#3 ~, ~@8 f#5 ~@7", // F# A#m
  DD: "[a#4,c#5,f#5]@2 ~@2 a#2@3 ~ c#3@4 [d#3,a#4,f#5]@2 ~ c#3, f#2@4 ~@3 [a#4,c#5,f#5]@4 ~ c#5 ~@3", // F# D#m F#
  DE: "g#2@3 [g#4,c5] c3@4 [g#4,c5,d#5]@2 ~@2 f3@3 d#3, ~@3 d#5@2 ~@3 d#3@4 ~@4", // G#
  DF: "[g#4,c5,d#5]@2 ~@2 c3@3 ~ d#3@4 [g#4,c5,d#5]@2 ~@2, g#2@4 ~@3 [g#4,c5,d#5]@2 ~@3 f3@4", // G#
  DG: "~@3 a#4 f#3@4 [f#4,a#4,d#5]@2 ~@2 f#3@3 ~, d#3@5 ~@3 a#3@4 ~@4, ~@3 [f#4,d#5]@2 ~@11", // D#m
  DH: "[[g#4,c5,d#5]@2 ~@2 c3@3 ~ d#3@4 [f3,g#4,c5,d#5]@3 ~ c#3@3 [g#4,c#5] f3@4 [g#4,c#5] ~@3 a#3@3 g#3, g#2@4 ~@3 [g#4,c5,d#5]@4 ~@4 d#3@2 ~@2 f5@2 ~@3 g#3@4 ~@4, ~@12 f5 ~@3]/2", // G# Fm7 C#5 G#
  DI: "[g#4,c#5,f5]@2 ~@2 f3@3 ~ g#3@4 [a#3,g#4,c#5,f5]@3 g#3, c#3@4 ~@3 [g#4,c#5,f5]@3 ~@6", // C# A#m7 C#
  DJ: "c#3@3 c#5 f3@4 [g#4,c#5,f5]@2 ~@2 a#3@3 g#3, ~@3 [g#4,f5]@2 ~@3 g#3@4 ~@4", // C#
  DK: "[g#4,c#5,f5]@2 ~@2 [g#4,c#5,f5]@2 ~@2 [g#4,f5]@2 ~@2 a#3@3 g#3, c#3 f3 g#3 ~, ~@8 c#5 ~@7", // C#
  DL: "f#2@3 [a#4,c#5] a#2@4 [a#4,f#5]@2 ~@2 d#3@2 ~ c#3, ~@3 f#5@2 ~@3 c#3@4 ~@4, ~@8 c#5 ~@7", // A#m D#m
  DM: "[a#4,c#5] ~@3 a#2@3 ~ c#3@4 [a#4,f#5]@3 c#3, f#2@2 ~@4 [d#3,c#5] ~, f#5@2 ~@5 [a#4,c#5,f#5]@3 ~@6", // A#m D#m D#7 F#
  DN: "g#2@3 c5 c3@4 [g#4,c5,d#5]@2 ~@2 f3@3 d#3, ~@3 [g#4,d#5]@2 ~@3 d#3@4 ~@4", // G# G#5
  DO: "[g#4,c5,d#5]@2 ~@2 c3@3 ~ d#3@4 [g#4,c5,d#5]@2 ~@2, g#2@4 ~@3 [g#4,c5,d#5]@4 ~ f3@4", // G#
  DP: "d#3@3 d#5 f#3@4 [a#4,d#5,f#5]@2 ~@2 f#3@4, ~@3 [a#4,f#5]@2 ~@3 a#3@4 ~@4", // D#m
  DQ: "[g#4,c5,d#5]@2 ~@2 c3@3 ~ d#3@4 [f3,g#4,c5,d#5]@2 ~ d#3, g#2@4 ~@3 [g#4,c5,d#5]@4 ~@5", // G# Fm7 G#
// … 200 more lines

More by Stevens Shakin