Strudelify

Basin Street Blues

Henry Butler

KeyB♭ majorTempo98 bpm
0:00/0:00
// Basin Street Blues — Henry Butler
// 98 bpm, 4/4, key A# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 109 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(98/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 · "A.PIANO 1"
const piano = note(`<
  A B C D E F G H I@2 J K L M N@2 O P Q R@2 S T@3 U@2 V@2 W X@2 Y Z@2 AA AB@2 AC AD AE AF AG AH AI AJ AK AL AM@2 AN AO@2
  AP AQ AR@2 AS AT AU@2 AV@3 AW AX@2 AY AZ BA BB BC BD BE BF BG BH@2 BI BJ BK BL BM BN BO BP BQ@2 BR@3 BS@3 BT BU BV BW
  BX BY@3 BZ CA CB@4 ~
>`.pickRestart({
  A: "~@21 [f4,d5]@5 ~ [e4,e5] ~ [c5,eb5] ~@2, ~@21 f5@3 ~@3 db5@2 eb4@2 ~", // Dm E Cm
  B: "[d4,bb4,d5]@5 [d4,bb4]@3 [eb4,c5,eb5]@5 [eb4,c5,eb5]@3 [e4,db5,e5]@5 ~ f5@2 d5 f5 d5 ~ d5@2 ~@2, ~@5 d5 ~@15 f4@11, ~@21 d5@2 ~@9", // Gm Cm Dbm
  C: "~ [bb1,bb2,d3,d4]@5 [bb1,d3,d4]@2 [c2,c3,eb4]@5 [c2,c3,eb3,eb4]@2 ~ [db2,db3,e3,e4]@5 [d2,d3,f3,f4]@10 ~", // Bb Cm Dbm Dm
  D: "[bb4,bb5]@5 ~@3 bb5@3 [ab4,ab5]@2 g5@2 ~ [f4,f5]@4 ~@2 g5@9 ~, a5 ~@4 bb4@2 bb4@5 ~ g4 ~@7 g4@10 ~, ~@3 bb5 ~@12", // Bb Ab F
  E: "db4 d4@2 ~ [d4,bb4] ~ bb4@5 [c4,ab4] ~ [bb3,g4] ~@2 [f2,ab3,f4]@5 [bb3,g4]@8 a1 ~@2, bb2@11 ab2@2 g2@2 ~@6 g2@3 ~@8, bb4 ~@15", // Gm Fm Eb Fm Eb
  F: "[bb1,f3,bb3,d4,f4,f5]@5 ~ [bb4,bb5]@2 [f3,bb3,d4,f4]@4 ~ [db1,f4,f5]@2 ~ [d1,ab3,bb3,d4]@5 ~@3 [ab3,bb3,d4,f4]@5 ~ d1 ~, ~@4 [bb4,bb5]@3 ~", // Bb Db Bb7 Bb
  G: "[eb1,g3,bb3,eb4,bb4,bb5]@5 ~ g4@2 [g3,bb3,eb4,g4,bb4,bb5]@5 ~ c5 [bb4,bb5] c5 [bb4,bb5] [c5,c6] [bb4,c5] ~@4 [bb3,db4,e4]@5 e1@2 ~, ~@6 g5 ~@6 [eb1,bb4,bb5]@2 ~ [e1,bb3,db4,e4]@4 ~@12, ~@14 c6@3 ~@2 c6@5 g4@3 ~@5", // Eb Bb C Bbsus2 Bbdim Eb5 Bbdim
  H: "[f4,bb4,bb5]@4 ~ [bb4,bb5]@2 ~ [ab4,ab5]@5 [g4,g5]@2 ~ [f4,f5]@5 [d4,d5]@3 [eb4,eb5]@5 [e4,e5]@2 ~, f1 ~@15", // Bb5 Bb Ab G F D Eb E
  I: "[[f4,f5]@4 ~ [g4,g5]@2 ~ [db4,db5]@2 [c4,c5]@2 ~ [bb3,bb4]@2 ~@6 [f4,f5] [g4,g5] [g4,f5] [f5,g5] g4 ~ [e4,f4,e5,f5] ~ [eb4,eb5]@2 ~ d4@4 ~ [d4,d5]@3 [eb4,c5,eb5]@5 [eb4,c5,eb5]@3 [e4,db5,e5]@4 ~ db5 d5 ~ d5 f5 d5 f5 d5 f5 [f2,d5]@2, ~@8 c5 ~@15 f4@2 ~@5 d5@4 ~@18 f4@11, ~@53 f5@3 ~@8]/2", // F G Db C Bb F G G7 …
  J: "[bb1,bb2,d3,d4]@4 ~@4 [c2,c3,eb3,eb4]@4 ~@4 [db2,db3,e3,e4]@5 ~ e3@2 [f4,f5]@2 g5@2 ~ f4@2 ~, ~@21 [d2,f3]@5 ~@6, ~@21 f4@3 ~@2 g4 ~@2 f5 ~@2, ~@11 d3@2 ~@3", // Bb Cm Dbm F Dm
  K: "[bb4,bb5] ~ [bb4,c5,bb5] [bb4,c6] [c5,bb5] [bb4,c6] [c5,bb5] ~ bb5@3 [ab4,ab5]@2 [g4,g5]@2 ~ [f4,f5]@5 [g4,g5]@3 ~@8, ~@7 bb4@4 ~@21, ~@7 c6@2 ~@23", // Bb Bbsus2 C7 Bbsus2 C7 Ab G F …
  L: "a2 bb4 ~@2 bb4@2 bb4 ~ bb4@2 ~ [ab2,ab3,ab4]@2 [g2,g3]@2 ~ [f2,f3,f4]@5 [g2,g4]@2 ~@7 a1@2, bb2@10 ~@11 g3 ~@10, bb3@2 ~ bb3@2 ~@2 bb3@3 ~@3 g4 ~@18", // Ab G F G
  M: "[ab3,bb3,d4,f5]@5 ~ [bb4,bb5]@2 [ab3,bb3,d4,f4]@3 c1 ~@2 f5 ~ [bb4,bb5] c5 [bb4,bb5] [c5,c6] [bb4,c5,bb5] c6 ~@2 [ab3,bb3,d4,f4]@5 d1@2 ~, [bb1,f4]@3 ~@10 [db1,f4]@2 ~ [d1,d4]@5 ~ [bb4,bb5]@6 ~@4", // Bb7 Bb Bb7 Bb C Bbsus2 Bb7 Bb5 …
  N: "[[eb1,g3,bb3,eb4,bb4,bb5]@5 ~ g4 ~ [g3,bb3,eb4,g4,bb4,bb5]@5 bb5 ~@2 [bb3,c4,e4,g4]@5 ~@3 [bb3,c4,e4,g4]@4 ~@4 [f1,bb3,eb4,f4]@3 ~@3 [bb4,bb5]@2 [ab4,ab5]@5 ~ g4@2 [f4,f5]@4 ~ [d4,d5]@2 ~ [eb4,eb5]@4 ~ [e4,e5]@2 ~, ~@5 g5@2 ~@6 c5@8 ~@10 ab4@2 ~@31, ~@13 eb1@2 ~ e1@3 ~@11 e1@2 [g3,bb4,bb5]@5 ~@27, ~@14 c6@7 ~@11 [a4,ab5,a5] ~@12 g5@3 ~@16]/2", // Eb C7 Ebsus2 Bb Ab F D Eb …
  O: "[f4,f5]@4 ~ [g4,g5]@2 ~ [db4,db5]@2 [c4,c5]@2 ~ [bb3,bb4]@3 ~@6 f2@5 e5@2 [eb4,eb5]@2 ~, ~@21 [a3,db4,f5]@6 e4 ~@4, ~@21 [eb3,f4]@3 ~@8", // F G Db C Bb Eb Aaug Ebsus2
  P: "[db4,d4,c5,db5] [d4,d5]@3 ~@4 [f3,bb3,d4,bb4,d5]@5 ~ [e1,d4] ~ f1@4 ~@4 [f3,g3,bb3,d4]@5 c1@2 ~, [bb1,f3,bb3] ~@7, bb2 ~@6 [bb4,d5]@9", // D Bb E7 Gm7 Bb5 Bb
  Q: "[d1,d4,d5]@5 ~ d4@2 d4 ~ e1@3 [f1,g4]@2 ~ gb1@4 ~@4 [gb3,a3,c4,d4]@6 gb1@2, a4 ~@4 d5@2 ~ d5@5 [a4,d5]@19, ~@13 d4 ~@2 gb4@16", // D Fsus2 D7 D5
  R: "[[d4,f4,g4,b4,d5]@5 ~@3 [f3,g3,b3,d4,d5]@5 ~ d4@2 [d1,f3,c4]@5 ~@3 [f3,c4,g4]@5 ~@3 g1 ~ b2 ~@3 f4@2 a1@2 c3 ~@2 [a1,e4,e5]@2 ~ bb1@2 db3 ~@2 [bb1,g3,db4]@2 ~ [b1,g3,d4]@5 db4 db4@2, g1@3 ~@10 db1@2 ~@9 d4 ~@4 [f3,bb3]@2 e4@2 ~@4 [g1,f5]@2 ~@25, ~@14 d5@13 ~@3 [d4,d5]@2 [f3,f4,f5]@7 ~ [g3,c4,e4,e5]@7 ~ [eb4,eb5]@5 [d4,d5]@3 ~@5 db5@2 ~]/2", // G7 Dm7 Fsus2 A5 Gdim G Bb5 G7 …
  S: "[e3,bb3,d4]@3 ~@2 [g3,g4]@2 ~ [d4,e4,g4]@3 ~@2 eb1@2 ~ [bb3,d4,bb4]@6 ~@4 e2 ~@2 e1@2 ~, [c2,d5]@5 ~@3 [bb3,bb4]@5 ~@3 e1@3 ~@5 e3@7 ~, ~@6 [a3,d4] ~", // Em7b5 G Em7 Bb Csus2 Bb D5
  T: "[~@3 eb4@2 [e4,e5]@2 ~ [f4,f5]@2 ~ e4 ~@2 d1 ~ [c5,db5] d5 ~@3 [c4,c5]@3 ~@5 db1@2 b4 [d1,c5,c6]@4 ~ [c4,f4,c5,c6]@2 ~ [bb3,f4,bb4,bb5]@5 [c1,bb3,bb4,bb5]@2 ~ [db4,e4,a5]@3 [ab3,ab4] ~ [g4,g5]@5 db2 [ab4,ab5]@2 [b1,a4,a5]@2 ~ [c2,bb4,bb5]@5 [f1,bb4,bb5]@2 ~ [gb1,e3,bb3,a4,a5]@5 ~ e1 ~ [f1,eb3,a3,g4,g5]@4 ~@2 ab1@2 [a1,f4,f5]@2 ~ [db4,e5]@2 [a1,c4,eb4,eb5]@2 ~, [f1,d4,d5]@4 ~@4 [eb3,bb3]@4 ~ [eb4,eb5]@2 ~ eb1@9 ~@23 db1@7 ~@41, ~@2 eb5@2 ~@6 e5@2 ~@4 c4@5 ~@3 [c4,f4]@7 b5@2 ~@18 ab5@2 ~@11 [bb3,eb4]@4 ~@9 [a4,a5]@3 ~@5 [gb4,gb5]@2 ~ d4 ~@2 e4 ~@4, ~@16 [c3,d4]@2 ~ [db4,db5]@6 ~@2 f3@4 ~@17 [a3,a4] ~@4 [g3,db4,e4]@8 ~@2 g3@8 ~@25]/3", // E F Dbmaj7 C D7 F5 Bb5 C7 …
  U: "[[c5,db5] d5@7 g3@2 ~ f4@2 ~ d3@2 f3@5 [d3,bb3]@2 ~ eb3@2 db4@2 ~ ab1 ~@2 a1@7 ~ g3@2 ~ [a3,d5]@2 [db1,g3,d4,d5]@3 d1@4 ~ f1@2 ~ [gb1,c4]@6 gb1@2, [bb1,d4]@8 ~@5 [f3,f4]@2 ~ f1@12 ~@36, bb3@5 ~@5 f5@5 ~ [g3,g4]@8 c4 ~@4 d4@12 ~@2 d4 ~@4 [gb3,d4,d5]@16]/2", // Dbmaj7 Gm D5 G Gbdim Bb F G …
  V: "[[g1,f3,b3,d4,d5]@5 d4@2 ~ [g3,d4,d5]@4 ~ [db1,ab3]@3 g3 ab3 g3 ab3 ~@9 [gb1,d5]@2 ~ [g1,f4,f5]@5 [g1,f4,f5]@2 ~ [a1,e4,e5]@4 ~ [a1,e4,e5]@2 ~ [bb1,eb4]@5 ~ eb4 [d4,eb4,d5] [d4,eb5] [eb4,d5] [d4,d5]@4 eb3@2, ~@13 [d4,d5]@15 ~ b3@5 ~@14 [db4,eb5]@8 ~@8, ~@16 d1@12 ~ d4 ~ e4@2 ~@21 eb5@2 ~@2 eb5 ~@5, ~@23 f3@15 ~@2 [f3,c4]@5 ~@8 [bb1,d4,d5]@2 ~ b1@2 ~@6]/2", // G7 G5 Db5 D G7 A5 Eb5 Ebmaj7 …
  W: "[c5,db5] d5@2 [bb3,d4]@2 ~ g4 ~ [bb3,bb4]@3 e3@2 [gb1,ab3,b3]@2 ~ g1@4 ~ f1@2 ~ [gb1,e3,bb3]@6 ~ db4, c1@5 ~@25 e1@2, [e3,d4]@3 ~@2 [e3,g3]@2 ~ [a3,c4]@2 ~@6 [g3,bb3,bb4]@8 ~@8", // Dbmaj7 Bb Abm7 Gb7 E7 Em Am Gm
  X: "[[d4,d5]@2 ~ [eb4,eb5]@2 [e4,e5]@2 ~ [f4,f5]@2 ~@3 [ab1,f3,b3,f4,f5]@2 ~ [c4,db4,db5]@2 ~@4 db4@2 [c4,c5]@2 ~ [f3,g3,g4]@2 ~ a1@2 ~@5 g1@2 ~ [bb4,bb5]@2 ~@4 f5@2 [db4,db5]@2 ~ [c4,c5] ~ [bb3,bb4]@3 [gb1,c4,c5]@5 [db3,db4,db5]@2 ~, ~@8 [g1,bb3]@7 ~ [a1,f3]@5 [bb3,bb4]@2 ~ f1@3 ~@2 bb3@3 [bb1,bb3]@8 [ab1,f3]@8 [g1,e3]@7 ~@9, ~@8 f3@3 [g4,g5]@5 ~@2 [c4,c5]@5 ~@6 bb4@10 ~@4 [g4,g5]@5 c5 ~@15, ~@45 f4@2 ~@9 eb3@3 ~@5]/2", // D Eb E F Fdim Dbmaj7 C Fsus2 …
  Y: "[d3,d4,d5]@2 ~@6 g1@5 [db4,g4]@2 ~@2 f4@4 [db4,f4]@2 ~ [c4,eb4]@2 ~@4 f4@2, f1@7 ~@9 [ab1,d4]@7 ~ a1@5 db4@2 ~, ~@30 f3 ~", // D Dbdim Db Cm Abdim
  Z: "[~ e4@5 [f3,f4]@2 g3 g3@2 f3@3 [db1,bb4]@2 ~ [c4,c5]@2 [db4,db5]@2 ~@4 g3@2 [bb4,bb5]@2 ~ ab5@2 a4@6 d1@2 ~@3 [eb5,eb6]@2 [ab3,f5,f6]@3 [d5,d6] eb6 [d5,d6] [d5,eb6] d6 ~ d6@2 c6@4 ~ [bb3,bb4,bb5]@2 ~, [bb1,e3,f3,bb3,d4]@5 ~@3 d4@14 d4@5 d4@8 ~@14 eb5@7 ~@8, ~@8 bb3@6 bb3@6 ~ d5@2 ~ f3@4 ~ [db1,ab4]@3 d1@4 ~@4 e1@6 ~@2 f1@8 [gb1,c4,c5]@8, ~@8 [f3,g4]@3 ~@5 d1@8 [f4,f5]@2 ~@6 [gb3,a5]@10 ~ g3 ~@4 a3@4 ~@12, ~@50 bb3@2 ~ [b3,eb6]@3 ~@8]/2", // F Gb C Db Bb Eb Db D …
  AA: "b4 ~@5 [d3,a5]@2 [a5,a6]@3 d3 ~ g6 a6@2 g5 ab6@4 ~ [a5,a6]@2 ~ g6 ~@4 [gb1,bb3,eb4,a5,ab6,a6]@2, [g1,b3,b5]@8 e3@2 ~@3 [db1,f3,ab5,a5,ab6]@3 d1@8 ~@2 [a5,a6]@4 ~@2, ~@5 [ab5,a6]@3 ab5 ~@7 ab5@5 [f3,ab5,gb6,ab6]@3 c4@7 ~, ~@17 [a5,g6,a6]@7 e4@3 ~@2 [ab5,g6]@2 ~, ~@17 gb6 ~@7 [ab5,ab6]@2 bb6@4 ~", // D5 A Ebm G Db A Amaj7 Fm …
  AB: "[~@2 [a5,g6] [a5,a6] ~@2 [g1,a6]@2 ~ [ab5,ab6]@4 ~ [g5,g6]@2 bb1@4 ~ bb1@2 ~ b1@6 ~ db6 ~ d5@2 db6 c6 c5 bb5 bb4 a3 a5 bb4 [ab3,bb5]@2 g4 [ab4,ab5]@2 [a4,a5] ~ [ab4,ab5] ~@3 [gb4,gb5]@2 [f4,f5] ~ [e4,e5] ~@2 e1 [d4,d5] ~, [f3,a3,d4]@12 ~ bb3@2 ~ [f3,b3]@13 ~ eb3@2 ~@5 [bb3,d4]@2 ~@4 b3 ~ bb3@11 [bb3,c4]@7 ~, g1@4 ~@4 a1@6 ~@18 [c2,e3]@4 ~@9 eb1@2 ~ e1@4 ~ e3@9 ~@2, ~ ab5@2 ~@2 [a5,b6]@3 ~@23 db5@2 ~@2 db5@2 ~@4 a4@2 ~@2 g3@7 [g4,g5]@4 ~@8, ~@2 ab6@2 a6@2 ~@27 d6 ~@30]/2", // A7 A Gsus2 Ab G Absus2 Ab A …
  AC: "[a3,eb5]@2 ~@4 [f4,f5] ~ [gb4,gb5] ~ g4 ~ bb5@2 g4 ~ ab4@2 [a4,a5] gb3 ~ a3@2 ~ [f3,f5,f6]@2 [f5,f6] ~@3 [f5,f6] ~, f1@5 bb3@2 ~ g1@7 ~ ab1@8 a1@7 ~, eb4 ~ d5@5 ~@3 g5@2 ~@4 ab5 ~@11 [eb5,eb6]@2 ~@2, ~@3 d4@4 ~ b3@2 ~ c4@5 ~@11 e3@2 eb3@2 ~, ~@4 [eb4,eb5]@3 ~@5 bb4 ~@19", // Adim F Gb A F Eb
  AD: "[c5,c6] ~ db6@2 d5 ~ bb5@2 f4 ~ e4 ~ eb4 ~ [db4,db5] ~ g1@3 f5 g4 g5 [bb1,ab5]@2 f4 ~@5 b1@2, bb1@7 ~ [ab1,c3]@7 ~ b2@10 ~@2 [g4,g5]@4, d3@4 ~ f3@2 ~@6 gb1@2 ~@9 b1@6 ~@2, ~@2 db5 ~ d6@2 bb4 ~@5 eb5@3 ~ d4 ~@5 ab4 ~@3 [gb4,gb5]@5 ~", // C Db Bb7 Ab G Gb
  AE: "~@3 f4 ~ eb4 [d4,d5] ~ [eb4,eb5]@2 d4 d5 [c4,c5] ~ [bb3,bb4] ~ [a3,a4] ~ c5@2 ~ eb4 [g4,g5] ~ f5@2 e5 e4 [eb4,eb5] ~ [f3,db5]@2, [c2,eb3]@7 ~ gb1@7 ~ f1@4 ~ ab1@2 ~ a1@7 ~, ~@3 f5@2 c4@2 ~ c3@4 ~ bb2@2 ~ a2@7 ~@9, ~@4 eb5@2 ~@12 c4 ~ eb5@2 ~@2 f4 ~@5 db4 ~", // D Eb C Bb A G Eb Db …
  AF: "[d4,d5] ~ [f4,f5] ~@2 bb4 ~ d5 [bb3,f6]@2 ~ c4 ~ [db4,f5,f6]@3 ~ [f5,f6]@2 [eb5,eb6]@2 [f4,g4,d5,d6]@2 [c5,c6] ~ bb4@2 [c5,c6] ~ [db5,db6] ~ [d5,d6], bb1@12 ~ [e1,e5] ~@2 f1@8 ~@5 db1@2 ~, d3@7 ~ f5 ~@15 f4@7 ~, ~@4 bb5@2 f3@3 ~@7 d4@2 ~ f3@5 g4@2 ~@6", // D F Bb5 Db F Eb G7 C …
  AG: "~ [d5,eb6] [eb5,d6] [d5,eb5,eb6] [d6,eb6] [eb5,d6] eb6 [eb5,d6] [d5,eb6] d6 e1 d6@2 f1 db6@2 [gb1,a3,c5,c6]@8 [d3,a3,d4]@5 ~ bb5@2, d1@8 gb3@2 d5@2 ~@18 bb4 ~, ~@9 eb5@5 ~@18, ~@11 g3 ~ [ab3,db5]@2 ~@14 gb1@2 ~", // Ebmaj7 Gbdim D5 Db5
  AH: "[g1,f3,b3]@3 g5@2 [b4,b5]@2 ~ [bb4,bb5]@3 gb6@2 [db1,bb4,bb5]@3 [d1,f3,b3]@3 f6@2 a5@2 ~ [g4,g5]@2 ~ e5 ~ [gb1,g4,g5]@2 ~, [b4,b5]@2 ~ g6@4 ~ [f3,b3]@5 ~@11 [f3,c4]@6 ~@2, ~@11 gb5 ~@4 [a4,a5]@2 ~ f5 ~ a4 ~@5 e6@4 ~", // G7 B Bb Gb Bdim G Gmaj7 B …
  AI: "~@5 [g1,a4,a5]@3 [bb4,bb5]@2 b4@2 ~@2 a1@2 [a4,a5]@2 [ab4,ab5]@2 ~ bb1@2 ~ [b1,d4]@4 ~ [b0,eb3,f4,f5]@2 ~, [f3,f4,f5] [f3,c4] [f3,db4] ~, [g1,b3]@5 ~@3 a1@4 ~@4 bb1@4 ~@12, ~@2 d5@5 ~@6 [bb4,bb5]@3 ~@5 [g4,g5]@7 ~@4, ~@3 d6@5 ~@2 b5@6 ~@16", // Gsus2 Bb A Ab Bm Fm7b5 F F5 …
  AJ: "[e4,eb5] e5@2 ~@2 [bb3,d4,d5,d6]@2 ~ [a3,d5,d6]@5 ~ g4@2 ~ [bb4,bb5] c5 [bb4,bb5,c6] [c5,c6] ~ c6 ~@6 c4@2 ~, c1@7 ~@6 [eb1,ab3,g5]@2 ~ e1@8 g3@5 e1 ~@2, e3@4 [c5,db5]@3 ~ d4 ~@5 b3 ~ [g3,bb3]@5 bb4@10 ~, ~@21 e3@4 ~@2 bb3@4 ~, ~@21 bb5@2 bb5@8 ~", // Emaj7 Bb D5 Bb Bbsus2 C Abmaj7 Dbmaj7 …
  AK: "d5 d6 eb5 eb6 ~@2 f6@2 [eb5,eb6] ~ [eb5,f6] ~ [c5,c6] ~ db6@2 [d4,f4]@2 ~@2 [e4,e5]@2 [ab1,f3]@2 eb4 ~ f4 f5@2 [a4,a5] ~ c5, eb3@5 [f1,e5]@3 g1@6 db5 ~ [d5,d6] ~ [f4,f5]@5 ~@6 f3@2 ~, [f1,a3]@4 e6@2 f5 ~@6 [eb4,g4]@2 ~ ab1@6 ~@2 [a1,g3,eb5]@4 ~@2 [a1,c6]@2", // Eb Ebsus2 C Dm E Db A Fmaj7 …
  AL: "bb1@4 ~ db2@2 ~@6 [bb3,ab4,f5]@3 [eb2,g3,g4]@8 [db3,gb4]@5 ~ eb5@2, [bb4,bb5] ~, bb3@11 ~@21, ~@8 [d2,f3]@8 ~@8 e2@4 ~ e2@2 ~", // Bb7 Eb Gb5 Bb Dm
  AM: "[[d3,d5]@5 e1@2 ~@7 f3@2 g3@2 ~ bb3@2 c4@2 ~ [f5,g5] ~ [f5,g5] f5 e5 [eb4,eb5]@2 ~ e4@2 f5@2 ~@2 d6 ~ eb6@2 d6@2 c6 ~ bb5@2 g5@2 ~ [eb3,f5] ~ db5 ~ d5 ~ eb5@2 d5 eb5 ~ f5 ~, f4@10 ~@14 db4@2 d4@2 ~@3 d5@2 ~ f4 ~ bb5@2 ~@2 d4@5 ~@14 bb3@2 ~@3, f2@2 ~@6 f1@20 ~ a1 ~@2 bb1@13 ~@3 f1@5 ~ a1@2 [bb1,d3]@4 ~ [db2,ab3]@3, ~@37 db4@4 ~@4 bb3@3 f3 ~@4 [db3,eb5]@2 ~@9]/2", // D Fsus2 Eb Ebsus2 Bb Db5 Dbsus2
  AN: "~ [c5,db5] ~@3 d1@3 ~@3 d5 ~ db5@2 ~ [f1,gb3]@5 ~@3 [gb1,c4]@6 gb1@2, a3@15 ~ c5@16, d2@4 ~@4 e1@7 ~@6 c4@3 ~@8, ~@2 d5@8 g3@5 ~@6 gb3@6 ~@5, ~@22 d4@9 ~", // Dbmaj7 Gbmaj7 Gbdim
  AO: "[[g1,f3]@5 ~@3 b0@8 ~@8 a4 ~@3 a5@2 ab5@2 g5 ~ gb5 ~ f5 ~ g5 ~ d5 ~ eb5@2 e5@2 gb1@2 b4@2 g4 ~ f4 ~ bb1@2 [b1,f4]@5 b1@2 ~, b3@20 b3@20 ~@14 [f3,b3]@9 ~, ~@5 bb0@11 e1@6 d4@2 eb1@7 ~ d1@4 ~ a1@2 ~ ab1@5 ~@3 g1@4 ~@12, ~@23 f4@2 b4@2 f5@2 ~@35, ~@26 d5@2 ~@18 db5 ~@7 gb4 ~@9]/2", // G7 Bdim Fdim
  AP: "[c2,e4]@2 g4 ~@2 eb1@2 ~ d5@3 ~ d5@2 db5 ~ d5@2 db5@2 c5@2 b4 ~@5 g4@2 gb4@2, [e3,bb3], ~@4 bb4@3 ~ e1@7 ~ a1@7 ~ [g1,bb4]@8, ~@8 e5 ~@23", // C Edim Gm
  AQ: "[f1,g4]@2 bb4 a1 ~@3 eb5 ~ f5 gb5 [g5,ab5] a5 [d2,b5] ~ [b5,db6,d6] bb5 a5 ~@3 d1@2 ~@3 [f5,f6] ~@2 [db1,eb5,eb6]@2 [db5,db6], [eb3,a3]@31 ~, ~@4 d5@2 f5@2 ~@5 c6@2 ~@17, ~@5 c2@2 ~ f2@2 ~ e2@2 ~@2 eb2@5 ~@4 eb1@4 ~@4", // Fsus2 Abmaj7 G Bm F Dbsus2 Db Ebdim
  AR: "[[d5,d6] ~ [f5,f6] ~@2 [g5,g6]@2 ~ [ab5,ab6]@2 ~@5 g5!2 g6 g5 g6 g5 g6 g5 ~ b0@5 ~ d5 ~ f5 f6 ~ [eb1,eb6]@2 [d5,d6] eb6@2 ~ c5 ~@2 d5 ~ db6@2 [c5,c6] ~ [bb4,bb5] ~ a4 ~ [g4,g5] ~ [g1,f4,f5]@2 [f4,e5] ~ [eb4,eb5] ~ [d4,db5] ~, d1@7 ~ ab1@6 gb1@2 g1@4 ~ bb0@2 ~@7 g1@2 [c1,e6]@2 ~@3 e1@2 ~ a1@2 ab1@2 ~ g1@2 ~ gb1@2 e1@2 ~ f1@2 ~@3 ab1@2 ~ a1@2 ~, ~@10 bb5@5 ~@9 g5@2 ~@5 [e5,eb6]@2 ~@2 eb5 ~@2 eb5 ~@4 [db5,db6]@2 ~ db5 ~@17, ~@11 bb6@5 ~@7 g6@6 ~@15 d6@2 ~@6 a5@2 ~@10, ~@13 [gb5,gb6]@2 ~@7 [f3,b3]@7 ~@3 [e3,bb3]@16 ~@16]/2", // D F G Ab Eb D C Bb …
  AS: "[d4,d5] ~ f4@2 g4 ~ f4@2 [bb4,bb5]@3 d4 ~ c5@2 db6 ~ d6@2 [f5,f6]@3 [d3,f3] ~@2 [d5,d6]@5 ~ [db5,db6], bb1@4 ~ db1@2 ~ d1@7 ~ [f1,bb3]@7 ~ g1@5 ~ bb1@2, ~@2 f5 ~ g5@2 [e3,db4]@5 f3@2 ~@3 d3@4 ~@12, ~@8 b5 ~@3 c6@3 db5@2 d5 ~@14", // D Bb F Dm D Db Bb5 Dbm
  AT: "[d5,d6]@3 ~ [d5,d6]@3 ~ [d5,d6]@3 ~@2 db1@2 ~ [d5,d6]@2 [db5,db6] ~@5 gb1@5 ~ [gb1,bb3]@2, a1@7 ~ eb1@4 [d5,d6]@3 ~ d1@4 c6@11 ~, ~@20 c5@7 ~@5, ~@22 [gb3,c4]@9 ~", // D Db Gb D Gbdim
  AU: "[g1@3 f4@2 ~ [b4,c5] e5 a5 [b5,c6] ~@3 db1@2 ~@2 d6 ~ db6@2 e1@2 ~ a5 ~ bb5 ~ b5@2 gb1@2 g1@4 ~@2 bb4@2 b4 ~@3 f5@4 [a4,a5]@2 ~@2 [ab4,ab5]@3 ~ [b1,d4]@6 ~ db5, [f3,b3]@5 ~@3, ~@5 a4@2 ~ f5@2 ~@20 g5 ~ d5@3 ~ c5@4 ~@15 [g4,g5]@7 ~@2, ~@6 d2@2 e2@4 ~@4 d1@6 ~@2 f1@4 ~@9 g1@3 [a1,c4]@8 [bb1,db4]@8 ~@6 [b1,c5]@2, ~@9 e6@4 ~@2 eb6@2 ~@4 c6 ~ d6@2 ~@7 e5 ~@31]/2", // Cmaj7 A Ab Bm Fdim G Am Bbm …
  AV: "[d5@2 g5@2 [c5,db5,d5] ~ db5 ~ bb4 [g4,bb4] ~ c5 [bb4,c5] ~ [bb4,c5] bb4 c5 bb4@5 ~@10 eb5 e5 gb5 ab5 [a5,b5] c6 [c2,d6] b5 bb5 a5 ~@6 db6 d6 ~ [d6,eb6] [f5,bb5] e5@2 ~ d4@3 ~@2 c5@2 ~@2 d5 bb5 ~@2 bb4 [bb4,bb5]@2 ~@3 gb5 ~ f5@3 [db5,f5]@2 ~@3 bb4@3 c5@3 bb4@2 [c5,db5]@2 ~, [e3,bb3,d4]@28 bb4@2 ~@2 f1@5 ~@3 g1@7 ~ ab1@8 [a1,eb3,a3,eb5]@8 [bb1,d3,f3,bb3]@8 [d2,f3,ab3,bb3]@8 [eb2,eb3,g3,bb3]@8 [e2,db3,g3,bb3]@8, c2@4 ~@2 eb1@2 e1@7 ~ a1@10 ~ [g4,a4]@3 [eb3,bb3,c4]@25 ~@8 db5@2 ~@2 bb4@2 ~@11 [c5,d5] ~@2 c5@5 ~@8, ~@7 c5@2 ~@15 g1@5 [c5,eb5]@2 f5@2 ~@15 f6@2 ~@9 c6@5 ~@4 bb5@2 ~@5 [g5,bb5]@5 ~@16]/3", // Gm Bbsus2 Asus2 Csus2 Ebmaj7 Bb5 Bb Db …
  AW: "[f2,d3,g3,bb3]@3 f5@2 f4@15 ~ f4 ~@4 g5 [e4,f5] g5 f5 g5 f5, d5@2 ~@3 f1@26 ~, ~@21 f5@3 g5@2 ~@6, ~@22 [a3,db4,f4]@5 ~@2 eb4@2 ~, ~@25 f5@2 ~@5", // Gm7 Fmaj7 Aaug
  AX: "[~ f4 ~@3 [d4,d5]@2 ~ [eb4,eb5]@4 ~@2 eb4@2 [e4,db5,e5]@5 ~@9 f2@2 [bb1,d3,d4]@8 [c2,eb3,eb4]@7 ~ [db2,e3,e4]@5 ~ [d2,f3,f4]@2 [f4,f5]@2 ~ [g4,g5]@2 [f4,f5] ~@2, [bb1,f3,bb3,d4]@2 ~@9 f4@9 ~@12, f5@2 ~@12 eb5 ~@6 [d5,f5]@14 ~@29]/2", // D Eb Dbm Bb Cm Dbm Dm F …
  AY: "[ab4,bb5] ~ bb5 [bb4,c5] [c5,bb5] [bb4,c6] [c5,bb5] ~ bb5@2 ~ [ab4,ab5]@2 [g4,g5]@3 [f4,f5]@5 [g4,g5]@3 ~@8, ~ c6@3 ~@3 [bb4,c6]@2 ~@23", // Absus2 Bbsus2 C7 Bbsus2 C7 Ab G F …
  AZ: "[bb3,bb4]@3 ~@3 bb4@4 ~ [ab2,ab3,ab4]@2 [g2,g3,g4]@3 [f2,f3,f4]@5 [g3,g4] ~@7 [a1,g3,db4]@2 ~, bb2@10 ~@11 g2@2 ~@9, ~@2 bb4 ~@13, ~@5 bb3@2 ~@25", // Bb Ab G F G A7
  BA: "f3@5 [bb3,bb5]@2 ~@4 c1 ~ [db1,f3,f5]@2 ~ [d1,bb3,bb5]@5 ~@3 bb3@3 ~@2 [d1,f4]@2 ~, [ab3,d4]@15 ~@6 ab3@6 d4@4 ~, bb1@5 ~@11, f5 ~@15", // Bb Db Gm Dm Abdim
  BB: "[g3,eb4]@5 [g3,g5]@2 ~ [bb3,bb5]@5 [c4,c6] d4 [c4,d6] [d4,c6,d6] [c4,c6]@12 e1@2 ~, [eb1,bb3,bb5]@8 g4@23 ~, ~@13 [bb3,e4]@18 ~, ~@13 eb1@2 ~ e1@13 ~@3, ~@7 db4@9", // Cm G Bb C Csus2 D7 C Eb5 …
  BC: "[f1,bb3,f4,bb5]@4 ~ [bb3,bb5]@2 ~ [ab3,ab5]@4 ~ [g3,g5]@3 [f3,f5]@4 ~ [d3,d5]@2 ~ [eb3,eb5]@5 e3@2 ~, ~@29 e5 ~@2", // Bb5 Bb Ab G F D Eb
  BD: "[f3,f5]@5 g3@2 ~ [db3,db5]@2 [c3,c5]@2 ~ [bb2,bb4]@3 ~@5 [f4,db5] [f4,d5]@5 ~@2 [eb4,c5,eb5]@3, ~@5 g5 ~@15 f5@5 ~ [e4,db5]@5, ~@11 [f1,a3,db4]@5", // F Db C Bb Db Dm Cm Dbm …
  BE: "~ [f3,g3]@3 ~@2 [d4,d5] ~@2 eb5@4 [eb4,c5,eb5]@2 ~ [e4,db5,e5]@5 db5@2 d5 ~ [d5,f5] d5 f5 d5 ~@2 f5, [bb4,d5]@5 ~ bb4@2 [eb4,c5]@4 ~@9 [f4,f5]@4 ~@5 [f4,d5]@2, [bb1,d4]@3 ~@18 e5 ~@7 f5@2 ~", // Fsus2 D Cm Dbm Dm Bb Cm F …
  BF: "[bb1,bb2,d3,d4]@3 ~@5 [c2,c3,eb3,eb4]@3 ~@5 [db2,db3,e3,e4]@5 ~ d2@2 ~@7 ab4, ~@21 [d3,f3,f4]@2 ~@9", // Bb Cm Dbm Dm
  BG: "db5 d5@3 bb5 d5 ~ d5@3 [ab4,ab5]@2 ~ [g4,bb4,g5]@3 [f4,ab4,f5]@5 [g4,bb4,g5]@2 ~@7 f2 ~, bb4@10 c5 ~@21, bb5 ~@2 bb5@2 ~@11", // Ab Gm Fm Gm
  BH: "[bb4@2 d4@2 bb4 d4 ~ d4@3 c4 ab2@2 [g2,bb3,g4]@2 ~ [f2,ab3,f4]@5 ~ [g2,bb3,g4] ~@6 [a1,db4,d4]@2 e4 [d4,f4]@4 ~ [bb4,bb5]@2 ~@4 g1 ~@2 f5@2 [ab3,bb3]@7 ~ [ab3,bb3]@5 d1 ~@2, bb2@10 ~@22 [bb1,ab3]@10 ~@3 f1@2 ~ d1@12 ~@4, db4 ~@5 bb4@4 ab4@2 ~@19 [eb5,e5]@2 ~@7 d4@5 ~ f4@5 ~@13, ~@32 f5 ~@15 [bb4,bb5]@4 ~@12]/2", // Gm Fm Gm Dmaj7 Dm Bb Absus2 Bb7 …
  BI: "[eb1,g3,eb4,bb4,bb5]@6 [g4,g5] ~ [bb3,c4,eb4,g4]@5 bb4 ~@2 [bb3,c4,e4]@5 ~@4 g4@3 ~@2 e1@2, ~@8 [bb4,bb5]@4 ~ [eb1,bb5]@2 ~ e1@3 ~@5 [bb3,c4,e4]@5 ~@3, ~@14 [c5,c6]@11 ~@7", // Eb G Cm7 C7 Bb Eb5 C7 C
  BJ: "[f3,f4,bb4,bb5]@5 ~ bb4@2 [ab4,ab5]@5 [g4,g5]@3 [f4,f5]@4 ~ [d4,d5]@3 [eb4,eb5]@5 [e4,e5]@2 ~, f1@2 ~@3 bb5@2 ~@25", // Bb5 Ab G F D Eb E
  BK: "[f4,f5]@5 [g4,g5]@2 ~ [db4,db5]@2 ~@3 [bb3,bb4]@8 [f4,g4,f5] [f4,g5] [g4,f5] [f4,g5] f5 g5 f5 ~@2 [a1,eb5] ~, ~@10 [c4,c5]@11 ~ [f1,eb3,a3,db4]@7 e5@2 ~, ~@25 g4@6 ~, ~@27 g5@4 ~", // F G Db Bb Fsus2 G7 Fsus2 Adim …
  BL: "[d4,e5] [bb1,bb3,d4]@4 ~@3 [d4,d5]@5 ~ [db1,d4]@2 [f3,g3]@3 ~@10 f1@2 ~, [f3,g3,d5]@4 ~@10 d5@17 ~, ~@16 d1@8 [f3,g3,bb3,d4]@7 ~, ~@27 e1@5", // Dsus2 Bb D Dmaj7 Fsus2 G7 Gm7
  BM: "[gb1,d3,a3]@4 ~@4 d3@3 ~@2 [db1,f4,f5]@2 ~ d1@4 ~ [f3,a3,d4]@2 ~ [gb3,d4]@5 gb1@2 ~, [d4,d5]@8 [a3,c4,d4]@8 d4 ~@15, ~@11 [eb4,eb5]@5 d5@15 ~", // D Db Dm D D7 Eb
  BN: "[f3,g3,d4,d5]@4 ~ [db4,db5]@3 [f3,g3,b3,d4,d5]@5 db1@2 ~ [d4,d5]@6 ~@5 [eb4,eb5]@2 [gb1,e4,e5]@2 ~, g1@2 ~@14 d1@3 ~@5 [f3,a3,c4,d4]@6 ~@2", // G7 Db G7 D Eb Gb7 Dm7
  BO: "[g1,f4,f5]@5 [g1,f4,f5]@3 [a1,e4,e5]@5 [a1,e4,e5]@3 bb1@4 ~@2 d5 [eb4,d5,eb5] [d4,eb4,eb5] [d4,d5]@5 b1@2, g3@8 [g3,c4]@8 [g3,db4,eb4,eb5]@6 d4@2 g3@3 ~@5, ~@21 bb1@2 ~ b1@5 ~@3", // G7 A5 Ebmaj7 D C5 Eb7
  BP: "[d4,c5] d4@4 [g3,g4]@2 ~@3 g1@3 bb3 ~@2 [gb1,ab3]@4 ~@9 e1@2 ~, [c2,e3,bb3] ~@7, db4@2 ~@6 [g3,bb3,bb4]@5 ~@11 [e3,ab3,bb3,d4]@8, ~ db5 ~@11 bb4@18 ~", // D7 G Gbsus2 C7 Gm E7
  BQ: "[[f1,eb3,a3]@3 [eb4,eb5]@2 [e4,e5]@2 ~@3 e1@3 [g4,g5] ~@2 [f4,f5] [f4,g4,g5] [g4,f5,g5] ~@5 [eb3,f3,a3,c4]@5 ~ a5 ~ [d1,f3,c4]@5 [c5,c6]@2 ~ [f3,bb3,bb4]@5 [c1,bb4,bb5]@2 ~ [a4,a5]@2 [ab4,ab5]@2 ~@9 [b1,a4,a5]@2 ~, [d4,d5]@2 ~@6 [eb3,a3,d4,f4,f5]@5 ~@3 eb1@5 ~@8 db1@2 ~ f4@16 [db1,a3,bb3,db4,e4]@8 ~@8, ~@16 [eb3,f3,a3]@3 [f4,f5]@11 ~ [bb4,b4,b5]@2 ~@20 [g4,g5]@5 ~ [ab4,ab5]@4 ~, ~@32 [c5,c6]@4 ~@3 bb5@5 ~@12 [g3,bb3,db4,e4]@7 ~]/2", // F7 Eb E G F Fsus2 G7 F7 …
  BR: "[[c2,g3,bb3,eb4,bb4,bb5]@5 [d2,c4,d4,f4,bb4,bb5]@2 ~ [eb2,bb3,c4,g4,a4,a5]@5 [e2,bb3,db4,g4,a4,a5]@2 ~ [f2,d4,f4,g5]@5 [g1,db4,e4,g4,g5]@2 ~ [f4,f5]@2 ~@5 d4 [bb1,f3,bb3,d4]@4 ~ f5@2 ~@4 g1 ~ [gb1,g3,g4]@3 ~@2 [bb3,bb4]@5 ~ [c4,c5]@2 [db4,db5]@2 ~ d4@3 [gb3,c4]@5 ~@6 eb4@2 [bb1,f4,f5]@2 ~ d5@2 [db4,db5]@2 ~ c4@3 [ab1,gb3,bb3,c4]@5 gb1@2 ~, c4@2 ~@14 g4@3 ~@5 [ab1,c4]@6 b1@2 ~@48 [a1,gb3,c4]@6 ~@10, ~@24 eb4@4 eb5 [a1,db4,eb4]@3 ~@16 f1@8 ~@5 db1 ~@2 d1@2 ~@19 g1 ~@10, ~@26 [e4,e5]@5 d5@5 ~ f4 ~@2 [f3,g3,bb3,f4]@5 ~@11 [f3,g3,bb3,d4]@5 ~@11 [gb3,c4]@5 ~@3 d4 ~@15, ~@27 f5@5 ~@29 d5@12 ~ eb5@2 ~@9 c5@10 ~]/3", // Cm7 Bb Cm7 A7 G7 Dbdim F Bb …
  BS: "[[g1,f3,a3,b3,d4,d5]@4 ~@4 [f3,a3,b3,d4,d5]@5 ~ d4 ~ d1@2 ~@11 gb1@2 ~ f3@2 ~@3 [f1,g1,f4,d5,f5]@2 ~ a1@2 c3 ~@2 [a1,e4,db5,e5]@2 ~@3 db3@2 ~ bb1@2 ~ b1@2 ~@3 b1@2 ~ c2@5 [db4,db5]@2 d4 [d4,e4,g4]@4 ~ [eb1,d4]@3 [g3,d4,e4]@5 ~@3 [g3,bb3,e4]@5 e1@2 ~, ~@13 db1@2 ~@9 [f3,a3,c4,d4]@7 e4@2 ~@9 f4@5 eb4@3 gb4@5 ~ g4@9 ~@6 d5@5 ~ d5@12 ~@7, ~@14 d5@18 [f4,d5,f5]@5 ~@3 e5@4 ~@3 bb1 [c5,eb5]@5 [d4,b4,d5]@10 [d4,d5]@5 ~@20 d4 ~@7, ~@32 g1 ~ b2@5 ~ [f3,c4,e4,db5]@7 gb3@8 ~@3 d3@5 ~@17 e1@3 ~@13, ~@48 c4@8 ~@7 db4@2 ~@7 bb3@5 ~@19]/3", // G7 Bm7b5 G7 A Db Em7 Ebmaj7 Em7 …
  BT: "[f1,g3,a3,c4,eb4]@5 [gb4,f5,gb5] g5@2 [eb4,f4,f5]@5 g5 g4 ~ [c5,db5] d5@3 ~ [f4,f5]@2 ~ [g4,g5]@2 d4 c2 ~ [db2,f5]@2 [f5,g5], ~@5 g4@2 ~@6 ab1@2 ~ [a1,c4,eb4]@9 ~ d5@2 ~ f4 ~@2, ~@8 [g3,d4]@3 ~ [c4,eb4]@3 ~", // F7 Gbmaj7 Ebsus2 Dbmaj7 F G Db Fsus2 …
  BU: "[f4,g5] f5 [f4,g4,g5] g4 f4 ~@8 g1@2 ~@3 f5@2 ~ [gb4,gb5]@2 g4 ~ ab4@2 ~@3 c6@2, [gb3,c4]@5 ~@3 [gb3,c4,f4]@8 [ab1,gb3,bb3,c4,d4]@7 ~ [gb3,bb3,c4,d4]@6 c5 ~, d2@3 f5@14 ~ f4 ~@4 g5@2 ~@2 [a4,a5]@5, ~@24 ab5@2 ~@3 [gb1,bb5]@3", // Fsus2 Gb Gbdim F Gbaug A Gb
  BV: "d5 d6 eb6@2 [c5,c6] ~ [g2,db5,db6]@2 d6@2 b5@2 [ab4,ab5] ~ [a1,f4] ~ d5@2 ~@4 [b4,b5] ~ [bb4,bb5]@2 [ab4,ab5]@2 ~@2 [f4,f5]@2, [b3,eb4]@8 [gb3,b3,eb4]@7 ~ d4 ~ f4@5 ~@5 [g4,g5]@4, [g1,g3]@5 ~@3 a1@4 ~@4 [bb1,f3]@5 [bb0,b3,eb4,ab4]@3 [b0,f3,b3,d4]@8, ~@2 eb5 ~@5 d5 ~ b4 ~@8 f5@5 ~@8, ~@20 ab5@3 ~@9", // C Gdim Ab Dm B Bb Ab F …
  BW: "bb3@2 [bb3,bb4]@2 ~@2 [db4,db5]@2 d5@2 ~ [g3,g4]@2 bb3 d2@2 [c5,db5] ~@5 eb2@2 ~@3 [e3,d4,eb5]@2 [e4,e5]@2 ~, e3@25 ~@2 eb4 ~@4, d4@8 d4@8 d4@10 bb3@3 ~@3, c1@5 ~ c2 ~ d1@5 bb4@2 ~ eb1@5 ~@3 e1@5 e2 ~@2, ~@17 d5@9 ~@6", // Bb Db G Dbmaj7 E
  BX: "[f1,f5]@5 g5 f2 ~ [db4,db5]@2 ~@4 e2@2 f5@2 ~ [db4,db5]@2 ~ d5@2 [f3,f4]@2 ~@4 db1@2, [eb3,a3,d4]@11 [d4,d5]@5 [a3,c4]@16, f4@4 ~ g4@2 ~ e1@5 [eb4,eb5]@3 eb1@8 c1@8, ~@16 f4 ~@4 [eb2,d4]@3 ~@3 [g3,g4]@5", // F Db F D Am Eb Ebmaj7 G
  BY: "[d1@4 ~@2 [d2,e2] ~ e1@5 f3 ~ [e3,e4] ~ f3 ~ [f2,g4] ~ ab4@2 [g3,g4] ~ ab4 gb2 [bb3,bb4] ~ [gb1,c4]@2 eb4 ~ c5 [g2,db5] ~ d4 ~ [eb4,eb5] ~ [f4,f5] ~ [a2,gb4] ~ g5 [a1,ab4] ~@2 [f4,f5] ~ bb2 ~@2 bb1@2 ~ b1@2 b2 ~@2 [b1,d4,d5]@2 ~ g5@2 [db4,db5]@2 ~ [c1,c5]@2 ~@3 [c4,c5]@2 ~ [d2,bb4] ~ db5 [c4,db4,d4,d5]@2 ~ [g3,g4]@2 ~ eb2@2 c4@2 ~@3 [e2,bb3]@3, c4@29 ~@2 f3 g1 c4@25 [db4,db5]@5 [c2,c4]@6 ~@2 bb4@2 ~@4 f4@2 ~ f4 ~@4 bb4@6 ~@5, ab3@21 ab3@4 ab3@15 a1@2 gb5@2 ~ ab5@2 ~ bb1@2 gb4@2 ~@17 c4@5 ~@9 c4 ~@12, f4@13 f4@4 f4@8 ~@4 c5 ~ [c4,eb5] b3@2 db4@2 d5 g1@2 ~ [f3,b3]@24 [bb3,eb4]@8 d1@5 ~@3 eb1@5 ~@3 e1@8, ~@14 e2@2 f1@2 ~ g3@2 f1 ~@2 gb1@2 ~@6 g4@11 g4@6 gb5@2 [g4,g5]@5 ~@8 g4 ~ c5 ~@4 bb3@6 ~@8 bb3@2 ~@4 g3@5]/3", // Dsus2 E Fsus2 G Bb Gbdim Gdim Eb …
  BZ: "db4@2 d4 ~@2 [f2,eb4,g4,bb4,bb5]@2 ~ [d4,f4]@2 f3@3 [db4,e4,f4,f5]@2 ~@2 f5@4 ~ [ab2,e3,db4,f4,f5]@2 [c4,db4,db5]@3 ~@3 [a1,db3,bb3]@2, f1@5 ~@3 [g1,g4,g5]@5 a2 ~@2 ab1@9 ~@4 bb4@3, ~@8 db4 ~@7 [f4,g5]@5 ~@6 [c4,c5]@5, ~@16 [c4,eb4]@2 ~@6 [a1,eb3]@7 ~", // Eb Dm Db Dbmaj7 A G Fsus2 C …
  CA: "[bb1,d3]@4 ~@2 [bb4,bb5]@2 ab5@2 ~@4 gb2@2 [g2,e3,bb3,f4,f5]@5 ~ [g4,g5] ~@2 c5 ~ [c4,c5] ~ bb3 bb3@2, ~@5 [ab2,f3,bb3]@11 ~@5 f2@2 ~ [gb2,eb3,bb3]@4 ~ [e2,db3,bb4]@2 ~, ~ ab4 ~@2, ~@13 [g4,g5]@3 ~@8 [db4,db5]@2 ~@6", // Bb Edim G C Bb7 Ebm Bbdim G …
  CB: "[~ [d4,d5]@2 ~@2 [e2,db3,f3,f4]@2 ~ [g3,g4]@2 ~ f3@2 [d2,bb2,bb3,bb4]@3 ~@8 [ab3,d4]@9 ~@11 [g7,bb7]@64 ~@20, [f2,d3]@4 ~@4 [eb2,c3]@5 ~@11 [bb2,c4]@11 g4 ab4@7 g6@64 ~@21, [db4,db5]@2 ~@9 f4 ~@12 [c5,e5,g5]@11 e4@7 d6@64 ~@22, ~@24 [e4,g4,ab4]@10 d4@7 ab5@64 ~@23, ~@24 bb1@3 ~@6 ab3@4 c5 e5 g5@64 ~@25]/4", // D Db G Gm Abdim Gm Dm Cm …
})).s("gm_piano").gain(0.64)

// chords · piano · "A.PIANO 1" · soft notes
const piano_soft = note(`<
  ~ A B C D E F ~ G ~@2 H I J K@2 ~ L M N O P Q@2 R S ~ T ~ U ~@3 V W X Y Z AA AB ~ AC AD ~ AE AF ~@6 AG ~ AH AI AJ ~@2
  AK AL AM AN AO ~@3 AP AQ AR AS ~ AT AU ~ AV AW AX AY ~ AZ BA BB BC BD BE BF@2 BG BH BI BJ BK BL BM BN BO BP ~@3 BQ BR
  ~ BS BT@3 ~
>`.pickRestart({
  A: "~@27 f5@3 ~@2", B: "~@6 bb2@2 eb3@5 ~@19", C: "~@14 ab4 ~@17", D: "~@3 bb4 ~@2 d4 ~ d4@4 ~@20", E: "~@4 f4 ~@3",
  F: "g4@4 ~@12 g4@3 bb5 ~ c5@5 ~@6", G: "~@23 f4 ~@8", H: "~ [c5,c6] ~@30", I: "~@5 bb3@2 ~@25",
  J: "~@17 c6 ~@14, ~@16 [ab3,bb3,f4]@5 ~@11", K: "[g4@4 ~@9 bb4 ~@17 [g4,g5]@2 ~@31]/2", L: "~@4 [f3,bb3,d4] ~@3",
  M: "[gb3,c4]@8 ~ d4@4 ~@3 [gb3,a3,c4,d4]@5 ~@11, ~@8 [gb3,c4]@5 ~@19", N: "[f3,g3,b3]@5 ~@11 [d4,g4]@5 ~@11",
  O: "b3@7 ~@25", P: "~@8 [e3,a3]@3 ~ bb3@2 ~@2",
  Q: "[[eb3,g3,bb3,c4]@5 ~@3 [g3,c4]@5 ~@3 a3@9 ~@7 [a5,bb5] ~@5 db5@2 ~@24, ~@16 f3@3 ~@12 bb4@2 ~@31]/2", // Cm7 C5 Bbmaj7
  R: "~@8 c4@6 ~@11 gb4 ~@6", S: "f3@5 f3@2 ~@20 e3 ~@4", T: "~@20 g3 ~ g3 ~@8 eb4, ~@21 ab3@3 ~@8", U: "~@30 c4 ~",
  V: "~@14 ab4 ~@10 bb3@4 ~@3", W: "~@11 gb3 ~@20", X: "~@13 [g5,gb6] ~@7 g5@3 g5 gb5 gb6 ~@2 g5@2 bb6, ~@9 bb6@3 ~@4",
  Y: "~ g5 f6 ~@29", Z: "~@6 [e3,f3] ~ d4 ~@2 c4 ~@20", AA: "~@15 g5 ~@3 [g3,ab3] ~@12",
  AB: "~@8 f5@3 ~@5 d5 ~@2 f4 ~@5 f5 ~@6", AC: "~@7 d6 ~@17 bb5 ~@6",
  AD: "~@4 d5 ~ d5 ~@4 gb3 ~ gb1 ~@18, ~@5 eb6@2 ~@9", AE: "~@3 f1 ~@12", AF: "~@6 [e3,f3] ~ c4 ~@23", AG: "~@31 eb4",
  AH: "~@6 f2 ~@4 eb2 ~@20", AI: "~@11 ab6@4 ~ g6 ~@3 bb0 ~@9 d6 ~", AJ: "~ [db5,gb6] ~@7 c6 ~@20 eb4 ~",
  AK: "~@9 db6 ~@14 gb1 ~@7", AL: "~@5 eb5@3 ~@2 d5 ~@21", AM: "~@27 [f4,gb4,ab4]@3 ~@2",
  AN: "~@2 f5 ~@14 gb6 ~ f6 ~@10 ab5@2", AO: "~@8 bb5@2 ~@9 f5 ~@10 b4 ~", AP: "~ b4 bb4 ~@29",
  AQ: "~@3 bb3@2 ~@2 bb3@3 ~@22", AR: "~@16 b5 ~@12 bb3@2 ~", AS: "~@11 eb2@4 ~@3 d4 ~@13", AT: "~@27 e5@5",
  AU: "~@26 [f4,gb5] gb5 f4@2 ~@2", AV: "~ eb5 ~@30", AW: "~@3 bb4 ~@26 d5@2, ~@29 [g3,ab3]@2 ~",
  AX: "~@4 [ab3,bb3,f4]@3 ~@9", AY: "bb3@5 ~@11 g4@4 ~@12", AZ: "~@29 f5@2 ~, ~@27 f4@4 ~",
  BA: "~@8 [f3,g3,bb3]@4 ~@4 [bb3,d4]@3 ~@13", BB: "c4@4 ~@13 d4@3 ~@4 [a3,c4]@5 ~@3, ~@4 [a3,c4] ~@3",
  BC: "b3@4 ~@12 [f3,g3,b3]@4 ~@4 db4 ~@7", BD: "[f3,b3,d4] ~@3", BE: "~ d5@3 ~@4 [e3,d4]@7 ~ [e3,bb3,d4]@4 ~@12",
  BF: "[g3@4 ~@4 g3@3 ~@5 c4@3 ~@12 bb5@2 ~@31]/2", BG: "~@15 a3, ~@27 f4@5",
  BH: "~@4 d4@3 ~ [f3,g3,bb3] ~@7, ~@16 d4 ~@15", BI: "d4@4 ~@4 d4 ~ b1 ~@13 d4@6 ~@2", BJ: "~@4 [f3,a3,c4,d4] ~@3",
  BK: "[a3,b3,d4]@3 ~@29", BL: "~@16 bb3@5 ~@11", BM: "~@4 f4 ~@3 [g3,a3,c4]@6 ~@10 g3@5 ~@2 f4", BN: "g4 ~@28 bb4@2 ~",
  BO: "~@4 db5 ~@9 ab5 ~@6 f3@2 ~@4 db1@4 ~", BP: "~@27 gb1 ~@2 eb4 ~", BQ: "~@13 bb3@3 ~@16", BR: "~@13 g2 ~@18",
  BS: "bb3 ~@24 eb4 ~@6", BT: "[~ [g4,e5]@2, ~@5 e6@32 ~@11, ~@11 [ab6,db7]@64 ~@21, ~ g4 ~@4, ~@11 c5@32 ~@5]/3",
})).s("gm_piano").gain(0.32)

stack(piano, piano_soft)

More by Henry Butler