Strudelify

Heavy Henry

Tom McDermott

KeyF majorTempo108 bpm
0:00/0:00
// Heavy Henry — Tom McDermott
// 108 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 82 bars on a 32-step grid, each part at one level. Source detail keeps the original performance.
setcpm(108/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@2 L M N O@2 P Q R@2 S@4 T U@7 V W@2 X Y Z AA AB@2 AC AD@2 AE AF@2 AG@2 AH@4 AI@6 AJ AK AL AM
  AN AO AP@3 AQ AR@2 AS AT AU AV AW AX@4
>`.pickRestart({
  A: "~@28 [c2,c3] ~@3", // C
  B: "f3@2 ~@2 [c4,a4] ~@3 [c4,f4,a4]@2 db2 db3 d3@2 ~ f4 d2@2 ~ [eb2,eb3] [d4,f4] ~ eb3@2 e3@2 [f4,c5]@2 f3@2 f2 ~, f2 ~@3 f4@2 ~ ab4@2 ~@3 d2 ~@2 [db4,bb4]@2 ~@3 b4@2 ~@4 eb4 ~@5, ~@16 d3 ~@5 eb2 ~ e2 ~@7", // F Eb Dm F5 Gb
  C: "f3 ~ f2@2 [c4,a4] ~ ab4@2 [c4,f4] ~ [db2,db3] ~ [d2,d3]@2 g4 [d2,d3] ~@2 [eb2,eb3] a4 f4 ~ [eb2,eb3] ~ [e2,e3]@2 [eb4,c5] f3@2 ~ f2 f3, ~@4 f4@2 ~@2 a4@2 ~@4 [a4,eb5]@2 ~@3 d5@2 ~@5 a4@2 ~@4", // F F5 Db D Eb E Cm Adim
  D: "~@3 [c4,f4,a4]@3 ~ [f4,a4]@2 [db2,db3] ~ [d2,d3]@2 ~@2 [d2,d3] ~@2 [eb2,eb3] ~ [f4,b4]@2 [eb2,eb3] ~ e2 ~@2 f3@2 ~ f2 f3, ~ f2 ~ ab4 ~@9 [eb4,f4,c5] ~@2, ~@7 c4 ~@6 [db4,f4,bb4]@2 ~@4 d4 ~@2 e3@2 ~@7", // F Db D Eb Fdim Eb F7 Bbm
  E: "~@4 a4@2 ~ [c4,a4]@2 ~ a2 ~@17 f2@3 ~, ~@2 f2@3 ~@4 g2@3 b2@19 ~, ~@3 f4@5 ~@3 bb2@2 ~@3 [a3,db4,eb4,f4]@15 ~, ~@3 c4@2 ~ ab4@2 ~@16 b1@7 ~", // F Aaug
  F: "[bb1,bb2]@3 ~ [f4,bb4,d5]@2 db5@2 [f4,bb4,d5]@2 [gb1,gb2] ~ [g1,g2]@2 [gb4,b4,eb5] ~ g1 ~ [ab1,ab2] ~ [db5,e5]@2 [ab1,ab2] ~ [a1,a2]@2 d5 bb2@2 ~ bb1@2, ~@15 g2@2 ~@3 g4 ~@5 [ab4,f5]@2 ~@4", // Bb Gb G B Ab Dbm Ab A …
  G: "bb2 ~@2 [f4,bb4,d5]@3 ~ [f4,bb4,d5]@2 [db2,db3] ~ d3@2 ~@2 [eb2,eb3]@4 ~@2 [eb2,eb3]@2 [e2,e3]@2 ~ e4 [e2,e3]@2 ~@3, ~@2 bb1@2 ~@2 db5@4 ~ d2 ~@7 [bb4,db5]@3 ~@4 [ab4,c5]@2 ~@4, ~@20 f4@3 ~@9", // Bb Db Eb E Bbm Ab
  H: "~@4 [f4,a4]@2 ab4@2 c4 [db2,db3] ~@2 d2@2 ~ d3@2 ~ [eb2,eb3] ~ [d4,f4,b4]@2 [eb2,eb3] ~ [e2,e3]@2 [eb4,c5] f3@2 ~ f2@2, [f2,f3]@7 ~@4 d3@2 ~@2 d2 ~@16, ~@4 c4 ~@3 [f4,a4]@2 ~@4 [db4,f4,bb4]@2 ~@10 f4@2 ~@4", // F Db Eb Bdim Eb E Cm F …
  I: "[~@3 [c4,f4,a4]@3 ~ c4 [f4,a4]@2 ~ eb3@2 ~@3 [f4,ab4,d5]@2 bb4 [f4,ab4,d5]@2 ~ a2@2 ab2@2 ~@5 [b4,e5,g5]@2 ~@2 [eb5,gb5]@2 ~@2 [a4,d5,f5]@2 ~ [ab1,ab2] ~ a1@2 [g4,b4] [a1,a2]@2 ~ [bb1,bb2] [gb4,bb4,eb5]@2 ~ [bb1,bb2] [b1,b2]@2 ~@2 g2@5, f3@8 ~@2 e3@2 ~@2 d3@5 ~@8 g1@11 ~@26, ~@2 f2@2 ~@2 ab4@2 ~@7 d2@5 ~@6 g2@13 ~@4 a2@2 ~@19, ~@35 bb4 ~@10 e5@2 ~@10 [f4,a4,d5]@6]/2", // F Ddim Em Ebm Dm Ab G A …
  J: "~@4 [g4,c5,e5]@2 eb5@2 [c5,e5]@2 [db2,db3] ~ [d2,d3]@2 [ab4,d5] ~ [d2,d3]@2 [eb2,eb3] ~ [a4,gb5] ~ [eb2,eb3]@2 [e2,e3]@2 ~@2 c3@4, [c2,c3]@8 g4 ~@5 f5@2 ~@4 eb5@2 ~@4 [bb4,e5,g5]@5 ~", // C Db D Abdim D Eb D Eb …
  K: "[[f2,f3]@2 c6@2 ~ g5 f5 ~ e5@2 ~ gb5@2 ~ c5 ~ f5@2 c5 eb5 ~@2 f5 c5 ~ bb4@2 ab4@2 ~ f4 bb4 b4@2 ~ [bb4,d5]@2 ~ d5 ~ ab4@2 f4 [b2,eb4]@3 c4 c3@3 ~@2 c2@2 ~ [f4,a4]@2 ~@3 eb4@3 ~, ~@2 g5 ~ ab5@2 ~@4 g5@2 ~@3 [d2,gb3]@4 ~@3 eb5@2 ~@7 [g2,f3,d5]@3 ~ a2@3 bb4@3 ~@6 eb4@2 ~ [f4,a4]@2 ~@12, ~@39 bb2@3 ~@9 eb4@2 ~@2 c3@4 c2@2 ~@3]/2", // F Bb B F D G7 F
  L: "[f1,f2]@3 ~ [c4,f4,a4]@3 ~ [f4,a4]@2 [db1,db2] ~ [d1,d2]@2 ~@2 [d1,d2] ~@2 eb2 [f4,b4]@2 eb2 eb1 [e1,e2]@2 ~ c5 f2@2 f1 ~, ~@7 ab4@2 ~@6 f4@2 ~@3 d4 ~@6 [eb4,f4]@2 ~@3, ~@8 c4 ~@5 [db4,bb4]@2 ~@3 eb1@2 ~@11", // F Db D Fdim E Ebsus2 Gb
  M: "f2@2 f1@2 [c4,f4,a4]@3 ~ [c4,a4]@2 db1@2 d1 ab4 a4@2 eb5@2 [eb1,eb2]@2 [f4,a4] ~ e2@2 [eb4,c5]@2 ~@2 [a4,d5]@3 [eb4,a4,c5], ~@7 ab4@2 ~@7 g4 ~@3 d5@2 ~@2 a4 ~@3 f4 ~@3, ~@8 f4 ~ db2 ~ [d2,g4]@2 ~@8 e1 ~@4 c2@2 ~@3", // F Eb F Cm D5 Adim G5
  N: "[f1,f2]@3 ~ [c4,f4,a4]@2 ~@2 [c4,f4,a4]@2 [db1,db2] ~ [d1,d2]@2 [db4,f4,bb4]@2 [d1,d2] ~@2 eb2 [f4,b4]@2 [eb1,eb2] ~ [e1,e2]@2 eb4 ~ f2@2 f1@2, ~@7 ab4@2 ~@9 eb1@2 d4 ~@5 [f4,c5]@4 ~@2", // F Db D Bbm D Fdim Eb E …
  O: "[f2@2 f5 ~ a4 ~@3 db5@2 a4 g4 f4 ~@2 db4@2 eb4 db4 c4@2 ~@2 ab3@2 f3@2 ab3@2 f3 ~@5 [f4,bb4,d5]@3 ~ [f4,bb4,d5]@2 ~ gb2 [g1,g2]@2 ~@2 [g1,g2] ~@2 ab2 [g4,db5,e5]@2 ab2 ab1 [a1,a2]@2 ~@2 bb2@2 ~ bb1@2, ~@6 eb5@2 ~@3 ab1@2 ~@2 a1@7 c2@4 ~ a1 ~@3 [bb1,bb2]@8 ~@2 gb1@2 ~@7 ab1@2 ~@12, ~@7 f2@6 ~ eb4@2 ~@5 bb3@2 ~@15 db5@2 ~@6 [gb4,b4,eb5]@2 ~@10 [ab4,d5,f5]@2 ~@4]/2", // Bb G Dbdim A Bb B Ddim
  P: "bb2@2 bb1@2 [f4,bb4,d5]@3 ~@3 [db2,db3] ~ [d2,d3]@2 ~@2 [eb2,eb3]@4 [f4,bb4,db5]@2 [eb2,eb3]@2 [e2,e3]@2 ~@2 [e2,e3]@4, ~@7 db5@5 ~@20, ~@4 [f4,bb4,d5]@2 ~@7 [e4,ab4,c5]@3", // Bb Db D Eb Bbm Eb E Bb …
  Q: "~@4 [f4,a4]@2 ~@2 [c4,f4,a4]@2 [db2,db3] ~ [d2,d3]@2 [db4,bb4]@2 [d2,d3] ~ [eb2,eb3] ~ [d4,f4,b4]@2 [eb2,eb3] ~ [e2,e3]@2 ~@2 f3@2 f2@2, [f2,f3]@11 ~@21, ~@4 c4 ~@2 ab4@2 ~@5 f4 ~@12 [eb4,f4,c5]@2 ~@3", // F Db D Gb D Eb Bdim Eb …
  R: "[f3@2 ~@2 [c4,f4,a4]@3 ~@3 f3@2 e3@2 eb3@2 [c4,d5]@2 ~@2 [c4,d5]@3 ~@9 [e5,g5]@2 ~@2 [bb4,eb5,gb5]@2 ~@2 [a4,d5,f5]@2 [ab1,ab2] ~ [a1,a2]@2 ~ [g4,b4] [a1,a2] ~ [bb1,bb2] ~ [gb4,bb4,eb5]@2 [bb1,bb2]@2 [b1,b2]@2 ~@4 c2@2, ~@2 f2@2 ~@4 [c4,f4,a4]@4 ~@4 [d3,gb4]@7 a2@2 ~ g2@10 ~@24 c3@4, ~@3 f3@2 ~@2 ab4@2 ~@10 bb4@3 ~@2 ab2@4 g1@7 ~@29, ~@32 b4 ~@14 e5@2 ~@10 [f4,a4,d5]@5]/2", // F Csus2 Em Ebm Dm Ab A G …
  S: "[~ c2@2 ~ [g4,c5,e5]@2 eb5@2 [g4,c5,e5]@2 [db2,db3] ~ [d2,d3]@2 [ab4,d5,f5]@2 d2@2 [eb2,eb3] ~ [eb5,gb5]@2 eb3@2 ~@3 c3@2 ~@2 [f2,f3]@2 ~@2 [g5,ab5,d6]@2 ~@2 [g5,ab5,d6]@2 ~ [g5,ab5,d6]@2 f5@2 ~ [g5,ab5,d6]@2 ~@6 [g5,ab5,d6]@2 ~ d6 f5@2 ~@2 [g5,ab5,d6]@2 ~@5 f5 [g5,ab5,d6]@2 f5 ~ [ab5,d6] ~ [g5,ab5]@2 f5 ~@3 d5@2 ~@2 c5@2 ~@2 a4@2 ~@2 f4@4 ~ [f4,a4]@2 ~@2 ab4@2 [c4,f4,a4]@2 f2@3 ~ [c4,f4] ~@3 [d4,g4,bb4]@3 ~ [ab2,eb4,ab4,b4]@3 ~ [g2,d4,g4,bb4]@2 ~@2, c3@2 ~@14 d3 ~@3 a4 ~ eb2 ~ [e2,e3]@6 ~@28 [g5,ab5]@2 ~@15 g5@2 d6 ~@22 c4 ~@10 ab4@2 ~@2 g2@3 ~@10, ~@26 [bb4,e5,g5]@4 ~@8 f5@2 ~@14 f5@2 ~ f5@2 ~@23 eb5@2 ~@11 [f1,f2]@12 ~ f1@15 ~@5, ~@56 a4 ~@7]/4", // C Db D Ddim Eb Ebm F G …
  T: "[c4,f4,a4]@3 ~@5 [bb3,eb4,g4]@3 ab1@3 db4@2 d4@2 ~@2 [ab3,db4,e4]@2 ~@2 [c2,g3,c4,eb4]@4 a1@4, f1@2 f2@5 [a3,f4]@2 ~@7, ~@2 a1 ~", // F Eb Dbm Cm Dm
  U: "[~@4 ab3@2 bb3 ~ f3@2 eb3 ~ [ab1,c3]@2 db3 ~ d3@2 f3 ab3@2 ~@3 ab3 ~ g3@2 a1@3 f1@4 ~@4 f3@2 ~ g3 ab3 ~@4 bb3 ~@2 c4@2 ~ db4 [ab2,d4]@2 ab3 ~ a2@2 ab3@2 db4@2 d4 ~ f4@2 ab4 ~ [bb2,db5]@2 d5@2 [db2,ab4]@2 f4 ~ eb4@2 c4 ~ db4@2 d4 ~ [f3,f4]@2 d4 ~ [d2,g4]@2 [f3,f4]@2 ~ d4@2 ~ f4@2 ~@4 [f3,f4]@2 d4@2 bb3@2 f4@2 ~@2 [ab3,ab4]@2 ab3 ~ ab4 ab3 ab4 ab3 [f2,ab4] ab3@3 f1@4 [ab3,ab4]@2 ~ a4@2 ~ ab3@2 ~@4 [a3,a4] ~@5 bb3@2 [b3,b4]@2 ~@2 eb2@2 ~@6 d2@4 [gb4,a4]@2 ~ e1 gb4@2 ~@2 f4 ~ d4@2 f2@3 ~@5 gb2@4 d4 ~ e4@2 [g2,g3,g4]@3 ~ [ab3,ab4]@2 ~@2 [a2,a3,a4]@2 a3 ~ a4 a3 ~@6 b2@4 g2@2 c5 [c2,c3]@2, f1@7 ab3@2 ~@13 [g3,c4]@2 ~@2 c4@4 ~@5 f2@8 ~ g1@3 g2@2 ~@2 ab1@5 ~@7 bb1@8 ~@8 d2@7 ~ f2@4 ~@4 bb1@12 d2@4 f2@7 ~ d2@4 ~@8 f2@9 e1@6 ~ bb1@4 eb1@4 ~@4 d1@8 ~@4 a4 ~@37 a4@12 [gb5,c6]@2 ~, ~@8 f2@4 ~@4 a1@7 c2@5 ab3@9 ~@9 a3@2 ~@2 b3@2 ~@7 f3 ~@31 g3 ~@6 bb3@2 ~@3 bb2@4 ~@32 [a3,a4]@2 ~@2 e2@3 ~@21 e2@7 f1@6 ~@3 gb1@8 g1@5 ~@3 a1@4 ~@4 bb1@15 ~@2, ~@99 f3 ~@2 [g3,g4]@2 ~@7 f3 ~@21 a3@2 ~@2 ab4 ~@8 [bb3,bb4]@2 ~ bb4 ~@5 [c4,c5]@12 ~@3 f4@2 ~ [gb4,a4]@2 ~@4 c4@12 ~ eb4@2 ~@17 [bb2,a3]@11 ~@2]/7", // Ab Abdim Bbm Db5 F G5 F Ab …
  V: "g5!2 c5 [f5,a5]@2 ~@2 eb5 d5@7 eb5 [d5,a5] ~@3 a4@2 ~ g4 a4@2 c5@2 d5@2 ~@2, c6@2 ~@5 g5@8 g5@2 ~@15, ~@8 e5 ~@7 c5@3 ~@13", // F D5
  W: "[f1@3 ~ f2@2 ~@2 [a3,c4,eb4,g4]@2 ~@2 e1@2 [ab3,d4,g4]@2 ~@2 eb2@2 [g3,db4,g4]@8 ~@7 db2@2 ~@6 [e3,bb3,eb4]@5 ~@2 ab3@2 bb3 b3 ~@3 c4 eb4 c4 eb4 c4 ~ eb4, ~@10 e2@4 ~@2 eb1@5 ~@7 d1@8 ~@20 [c3,eb4]@2 ~@6, ~@30 d2@6 ~@3 c2@6 ~@4 f3@2 ~@4 c4@2 ~@7, ~@31 [gb3,c4,f4]@4 ~@2 [f3,b3,e4]@6 ~@5 b2@9 ~@7, ~@33 db1@4 ~@5 c1@3 ~@19]/2", // Am7b5 G Gdim Eb Cm F E
  X: "c4 eb4 ~@2 c4 ~ eb4 c4 ~ c4 ~ eb4 [ab1,c4]@2 ~@4 c4@2 b3@2 ~@2 ab3@2 ~@2 ab3@2 ~ f1, f1@8 f2@4 ~@4 a1@7 c2@4 a1@2 ~@3, ~ c4 ~@6 c4 ~@2 bb3 ~ f3 ~ f3, ~@3 eb4@2 ~@3 eb4@2 ~@7 eb4@2 ~@13", // Ab
  Y: "c4 ~ c4 eb4 c4 eb4 ~ c4 ~ c4@2 b3@2 c4@2 eb4 ~ e4@2 f4@2 ~ ab4 ~ bb4@2 ab4 ~ c2@2 e4@2, f1@7 f2@4 a1@4 c2@8 a1@5 ~@4, ~ eb4@2 ~@5 eb4@2 ~@17 f4@2 ~@3",
  Z: "eb4 ~ c4@2 [f2,db4]@2 d4 ~ f4@2 ~@2 [g3,g4] ~@5 f3@2 [ab2,db4]@2 d4@2 [f3,f4]@2 ~@2 [a2,f3,g3,g4]@4, f1@5 ~@2 g1@6 ~@3 ab1@6 ~@2 a1@8, ~@8 f3 ~@3 g2@3 ~@17", // Db G Db5 F Dm
  AA: "~@2 f2@2 [f3,f4]@2 ~@2 eb2@2 [gb3,gb4]@2 d1@3 ~ [g3,g4]@2 db1@3 ~ [ab3,ab4]@2 ~@4 [a3,a4]@4, f1@4 ~@2 eb1@5 ~@4 d2@2 ~@4 db2@3 c1@8, ~@27 c2@5", // F Gb G Ab A
  AB: "[[bb0,bb1]@6 ~ gb3 ~ [f3,ab3,bb3,d4,db5,ab5] d5@2 ~ [f2,eb5,g5]@3 db5 [d5,f5]@3 [ab1,ab2,ab4]@4 [a2,ab4,eb5,g5]@3 ~ [f2,ab4,db5,f5]@3 ~@5 [bb2,ab4]@4 [c2,db5,e5]@4 c3@3 ~ [g4,c5,eb5]@4 db3@4 d3@2 ~@2 c3@4, ~@9 [ab4,f5,bb5]@3 ~@4 [f1,ab4]@2 ~@14 bb1@8 ~@7 db2@9 ~@8, ~@17 f2 ~@13 d5@2 g5@2 d5@5 ab4@8 ~@8 [f4,bb4,db5]@8, ~@17 f5 ~@14]/2", // Bb Bb7 Cm Dm Ab Am7b5 Db Bb7 …
  AC: "f2@3 ~ ab4 gb3 a4 [g3,d4] [c5,f5]@2 ~ a4@2 ~@3 f4@2 ab4 bb4@2 ~@2 d4 [eb3,g3,d5]@2 ~ ab4@3 f4 ~, ~@7 [eb3,a3]@2 ~ [c5,f5]@2 ~@2 ab4@2 ~@10 bb4@2 ~@4, ~@15 [db3,g3]@4 ~@4 [a3,ab4]@2 ~@7, ~@15 e2@2 ~@15", // G5 F5 Ebmaj7 Ebdim F5 Dbdim Amaj7
  AD: "[eb4@2 c4 ~ [d3,f4,a4]@3 eb4@2 ~ c4 a4 ~@4 eb4@2 c4@2 [f3,f4,a4]@2 ~@5 gb3@2 ~@2 c5 ~ ab4 a4 ~@2 d5 f5 ~ [a3,db5] d5 f5 a5 ~ c6 ab5 ~ a5 ~@10 b3@5, d2@5 ~@2 e2@4 f4@2 ~ [f4,a4]@2 ~@10 db4@3 ~ a4@2 ~@4 c5@2 ~@9 a3@3 d6@4 e6@2 bb3@8, ~@12 e3@3 f2@5 ~@3 gb2@4 d4 ~ f4@2 g2@8 g3@4 ~ a2@4 ~ c6@15, ~@51 bb2@13, ~@51 e6 f6@12]/2", // Dm F A F
  AE: "[c3,g3,c4]@2 db6 eb6 db6 c6 bb5@2 ab5 f5 [eb5,e5] db5 ~@2 db5 [d5,eb5] ~ [c5,db5] ~ bb4 ab4 ~ f4 [eb4,e4] db4 ~ [b3,c4] ~ ab3@2 f3@2, ~@13 c5@2 ~ [c2,g2,c3]@10 ~ bb3@5", // C5 Emaj7 Ebmaj7 Dbmaj7 Emaj7 Cmaj7 C5
  AF: "[~ a3@2 ~ [f2,f3,f4]@3 ~@5 [g3,bb3,db4,f4]@8 ~@2 d2@2 ~@4 db2@2 ~@6 [f3,bb3,f4]@3 ~ [d1,d2,g3,g4]@2 ~@2 [eb1,eb2,ab3,ab4]@3 ~ [e1,e2,a3,a4]@2 ~@2 [eb1,eb2,ab3,ab4]@2 ~@2 d1@2 ~@2 [c2,f3,f4]@4, f1@6 ~@2 eb1@9 ~@3 d1@4 ~ f4@2 ~@4 [f3,b3,f4]@2 ~ c1@4 ~@26, ab3@2 ~@8 eb2@7 ~@7 [gb3,c4]@2 db1@4 ~@2 c2@7 ~@17 [d2,g3,g4]@8]/2", // F Gm7b5 Bb5 G5 Ab5 A5 Ab5 F5 …
  AG: "[f1@4 [c4,f4,a4]@3 ~@3 f1@3 ~ [g4,bb4]@2 ~@4 [eb4,ab4,b4]@4 ~@4 [c4,f4,a4]@3 ~ [c4,f4,a4]@2 ~@2 e2@2 [b3,e4] ~@5 [c4,f4,a4]@4 ~@4 [c4,f4,a4]@3 ~ [c4,a4]@2 [f1,f2]@4 ~@2, f2@9 a4@3 ~@19 ab4@2 ~@5 ab4@2 ~@15 ab4@2 ~@7, ~@7 ab4@5 ~@2 d4 ~@4 ab2@7 ~@16 f2@5 ~@9 f4 ~@7, ~@8 [c4,f4]@3 ~@2 g2@3 f1@8 [f1,f2]@7 ~@3 f1@4 ~@2 f1@6 ~@2 [f1,f2]@8 ~@8]/2", // F Gm Abm F E5 F F5 F
  AH: "[~@4 [f4,a4]@2 ab4@2 [c4,f4]@2 ~@2 g2@2 [g4,bb4]@2 ~@11 c2@3 ~@4 f5 eb5@2 f2@2 d6 ~@2 d5 [g2,db5]@2 c5 ~ c6 ~ c5 ~ ab2@2 ab4 ~ a2@2 eb4@2 [f2,c4]@2 db4@2 d4@2 ~ f3 d4@2 ~@2 [bb2,f3,f4]@3 ~ ab3 ~@5 ab4@2 ~@5 ab4@2 ~@3 ab4@2 ~@5 ab3 db3@2 ab3 ab4 ab3 ~ ab4 ab3 ab4 ~ ab3 ab4 [bb2,ab3] ab4 bb2@2 ~ ab3 ab4 ~ ab3 ~ ab3 ~ d2@3, [f1,f2]@8 ~@2 f1@4 ~@2 f1@14 ~@2 f1@5 ~@2 g1@5 ~@3 ab1@5 ~@11 bb1@11 ~@2 d2@12 d2@11 [c3,ab4]@3 ~@2 d3@3 db3@3 c3@3 ~@2 ab3 ~@12, ~@4 c4 ~@3 a4@5 ~ d4 ~@2 bb4@7 a2@6 ~@48 ab3@2 ab3@2 ~ ab3@2 ab3@2 ab3@2 ~ ab3@2 ab3@3 ab3@3 ab3@2 ~ ab4 ~@20 ab4@2 ~@4, ~@18 ab2@12 ~@50 f2@12 f2@9 ~@27, ~@20 [eb4,ab4,b4]@10 ~ f6@2 ~@4 d5 ~@13 bb4 ~@3 f4 ~@10 f4@2 ~@7 ab4@2 ~@2 ab4@2 ~@3 ab4@2 ab4@2 ~@3 ab4@2 ~@3 [bb2,ab4]@4 ~@17 [ab2,ab4]@2 ~@2 bb2@2 ~@5]/4", // F F5 Gm Gdim F5 Bb5 Bb7 F …
  AI: "[~@2 db4 f4@2 g4 ab4 ~ d4 c4@2 ~ [e2,ab3]@2 f3 ~ ab3 ~ a3 ~ c4@2 f4@2 a3@2 ~ f4 ~@2 c4 ~ f4@2 a4 ~@2 a4@2 c5 d2@2 ~ c5@2 f5 ~ c5@2 [e2,f5]@2 ~@12 a5@2 ~ bb5@2 ~ g2@2 bb5@2 ~@3 f5@2 ~ eb5@2 ~@3 db5@2 ~@3 f4 b2@2 g5@2 ~@2 [ab4,ab5]@2 ~ g4 c3@2 ~ [f4,f5] ~@4 d4@2 c5 c4 ~@2 [eb3,ab3]@3 [g3,g4] ~ [f3,f4]@3 ~ [f3,f4]@2 [f3,f4]@2 ~@4 f4@2 [f3,f4]@2 [eb2,eb3]@2 [f3,f4]@2 ~@2 [f3,f4] ~@5 [f3,f4] ~ [f3,f4]@2 [c2,c3]@2 [f3,f4] ~@6 [f3,f4]@3 ~ [b2,a3,f4]@2 ~@2 [bb1,bb2,ab3]@3 [a2,g3,f4]@2 ~@2 [ab1,ab2,gb3,c4,f4]@3 ~ [g1,g2,f3,b3,f4]@2 ~@2 [gb1,f3,bb3]@3 ~ c2@5, ~ f1@5 ~@2 f2@4 ~@4 eb2@11 ~@4 d1@9 ~@2 e1@7 ~@3 f1@10 ab5@3 ~@9 ab5@2 ~@6 c5@2 ~@2 d5@2 ~ f5@2 ~ g4 ~@13 [eb4,eb5]@2 ~@6 ab4 ~@30 [db2,db3]@4 ~@7 [c2,c3]@8 ~@19 [gb2,f4]@9, ~ c4@2 ~@8 bb3@2 ~@13 c4@2 ~@27 f2@6 f5@3 ~@11 a2@3 ~@5 bb2@2 ~@22 d3@3 ~@12 e3@5 ~@16 [f3,f4]@4 ~@8 [f3,f4]@4 ~@5 eb4@5 ~@23, ~@2 d4@2 ~@3 [f4,g4]@2 ~@27 f4@2 ~@4 a4@2 ~@7 a5@12 ~@5 b5@2 ~@29 g5@2 ~@7 d5 ~@58 [d4,f4]@2 ~@23, ~@59 c5@4 g1@6 ~@2 a1@5 ~@3 bb1@6 ~@2 b1@5 ~@3 c2@5 ~@3 d2@5 ~@3 eb2@5 ~@2 e2@9 [f2,f3]@8 ~@4 [eb2,eb3]@8 ~@16 b1@2 ~@6 [a1,db4]@4 ~@17]/6", // E Fmaj7 Ab F Ab5 G F Eb …
  AJ: "[f1,f2]@3 ~ [c4,f4,a4]@3 ~@3 [db2,db3]@2 d3@2 [db4,bb4]@2 [d2,d3]@2 eb2 eb3 [f4,b4]@2 eb3@2 [e2,e3]@2 ~@2 f3@2 ~ f2, ~@7 ab4@2 ~@5 f4 ~@5 d4 ~@5 c5@2 ~@4, ~@8 [c4,f4,a4]@4 d2 ~@9 eb2 ~@4 [eb4,f4]@2 ~@3", // F Db Gb D Fdim E F Ebsus2
  AK: "f3 ~@3 [c4,f4,a4]@3 ~ [c4,f4,a4]@2 ~ db3@2 [d2,d3]@2 ~ [d2,d3] ~@2 [eb2,eb3] [a4,d5]@2 ~ eb3 [e2,e3]@2 ~ [eb4,c5] f3@2 f2@2, ~@3 f2@2 ~@2 ab4@5 ~@3 [g4,a4,eb5]@2 ~@3 f4 ~@6 a4@2 ~@3, ~@10 db2@2 ~@11 eb2@2 ~@7", // F D Eb D5 E Cm Am7b5
  AL: "f3 ~ f2@2 [c4,f4,a4]@3 ~ [c4,f4,a4]@2 [db2,db3] ~ [d2,d3]@2 ~ db4 [d2,d3] ~ eb3 eb2 [f4,b4]@2 [eb2,eb3] ~@5 f3@4, ~@7 ab4@4 ~@4 [f4,bb4]@2 ~@3 d4 ~@3 [e2,e3]@8, ~@13 [eb4,f4,c5]@3", // F Db D Fdim Eb Bb5 E F7
  AM: "~@4 a4 db5 a4 ~ [f3,a4]@2 db5 a2@2 a5 ~ eb6 f6@2 ~ g5@2 ~@2 f6 ~@3 c3@5, f2@7 f4@2 ~@2 f5 ~@2 db6@2 f5 ~@2 g6 ~@12, ~@15 c3@7 ~ [a2,f5]@9", // F Dm
  AN: "[bb1,bb2]@3 ~ [f4,bb4,d5]@3 ~ [f3,ab3,bb3,d4,f4,bb4,d5]@4 [g4,c5,eb5]@3 ~ [ab4,db5,e5]@2 ~@2 ab1@2 ~@6 f2@4, ~@7 db5@5 f2@4 f1 ~@3 [ab2,ab4,d5,f5]@12, ~@3 a2", // Bb Bb7 Cm Dbm Ddim
  AO: "~@2 bb2@2 [f3,bb3,d4]@3 ~ f3 d4 ~@2 gb2@2 [f3,bb3,eb4]@2 ~@2 g2@2 ~@3 [ab1,ab2]@3 ~@2 g1@2 ~@2, bb1@6 ~ db4@2 ~@11 [f3,bb3,d4]@10 ~@2, ~@8 bb3@2 gb1@4 ~@2 g1@4 ~@7 g2@2 ~@3", // Bb Ebsus2 Ab Bb
  AP: "[f1@3 ~ [c4,f4,a4]@3 ~ [c4,f4,a4]@2 [db2,db3] ~ [d2,d3]@2 ~@2 [d2,d3] ~ eb2 eb3 [d4,ab4,b4]@2 eb3@2 [e2,e3]@2 [eb4,c5]@2 f3@2 ~@2 f3@2 f2@2 [c4,f4,a4]@2 ~@2 [c4,f4,a4]@2 e3@2 eb3 ~@3 [c4,gb4,d5]@3 ~ c4 ~ a2@2 ab2@2 ~@6 [b4,e5,g5]@2 ~@2 [eb5,gb5]@2 ~@2 [a4,d5,f5]@2 [ab1,ab2] ~ [a1,a2]@2 [b4,e5]@2 ~@2 [bb1,bb2]@2 [gb4,bb4,eb5]@2 [bb1,bb2] ~ [b1,b2]@2 ~ g2@5, f2@11 ~@4 bb4@2 ~@9 a4 ~@11 ab4@4 ~@9 bb4@2 ~@7 g1@7 ~ bb4 ~@9 g4 ~@11 [f4,a4,d5]@6, ~@7 ab4@4 ~@3 [db4,g4]@2 ~@6 eb2 ~@8 f2@2 ~@13 d3@6 [gb4,d5]@4 ~@3 g2@11 ~@10 [a1,a2]@4 ~@12]/3", // F Db D Abdim E Cm F D7 …
  AQ: "~@4 [g4,c5,e5]@2 ~@4 [db2,db3]@2 [d2,d3]@2 [ab4,db5,f5]@2 [d2,d3] ~ [eb2,eb3] ~ [a4,d5] ~@4 [bb4,eb5] g5 ~ [c2,c3]@4, [c2,c3]@6 eb5@5 ~@9 gb5@2 ~@2 [e2,e3]@3 ~@5, ~@8 [g4,c5,e5]@4 ~@10 [eb2,eb3]@5 ~@5", // C Db D Db D Eb D5 Eb5 …
  AR: "[f3@2 ~@4 f4 a4 f4@2 ~ c5 [g2,c5]@2 ~ a5 ~@3 c6 [ab2,c6]@2 f6 a6 [f6,g6] ~@5 ab6 g6 f6 ~@5 [a5,bb5] g5 f5 ~ [eb5,e5] ~@4 ab4 ~ f4 ~ eb4 ~@4 d4@2 ~@3 f3@2 f4, f1@4 f2@2 ~ g1@6 ~@2 ab1@8 ~@3 c7@3 bb6@2 ~@3 db6@3 b5@2 ~@4 db5@3 bb4@2 ~@4 db4@3 db4@3 e4@6, f2 ~@2 f4@2 c4@2 ~@3 a4@3 ~ f5@2 f5@2 ~@4 a1@6 b6@2 ~@6 [d2,c6]@3 ~@5 e2@3 f1@9 gb1@8, ~@17 a5@6 ~@2 a6@5 ~@3 eb6@6 ~@6 c5@4 ~@4 c4@5 ~@6, ~@27 a2@3 d1@8 ~ e1@10 ~@3 f2@6 ~@2 [gb2,f4]@4]/2", // C5 Ab Fsus2 Bbmaj7 Emaj7 D7 Gbmaj7
  AS: "f3 f4 f3 f4 f3@2 ~@2 f4 f3 f4@2 ~@3 f4 ~@2 f4 ~ [f3,bb3,db4]@3 ~@3 [f3,bb3,db4] ~ [f2,f3,bb3,db4]@4, g1@4 g2@5 ~@3 a2@5 ~@3 bb2@5 ~@7, ~@6 f4@2 a1@9 ~@7 b2@8, ~@7 f3@2 ~@3 f3@2 f3@3 f3@2 ~@4 [f3,bb3,c4,db4]@3 ~@6, ~@13 f4@2 ~ bb1@10 ~@6", // Bbm
  AT: "~@2 a3@2 ~@5 [gb3,bb3,d4]@4 ~@4 [ab3,c4,e4]@3 ~ d4@2 ~ c4 d4@2 ~ ab3@2 ~@2, [c2,c3,ab3,c4] ~@7, e3@2 ~@25 c4@2 ~@3, ~ g2@2 ~@29", // Gbaug Abaug Fm
  AU: "[a3,c4,f4] ~@2 f2 [eb3,ab3,c4] a1 a2 [d3,g3,bb3] ~@6 f2@2, ~@4 f1@5 ~@7 bb1@3 [d3,f3,ab3]@13, ~@18 bb2@2 ~@3 [b1,b2]@9", // F Ab Gm Ddim B
  AV: "[f4,a4]@2 a1@2 a2@2 [eb4,ab4,c5]@2 ~@11 b1@5 b2@2 ~@4 a2@2, c4 ~@7 bb1@9 ~@10 a1@5, ~@5 bb2@3 ~@8, ~@12 [d4,g4,bb4]@12 ~@2 [d4,f4,ab4]@3 ~@3", // F Ab Gm Ddim
  AW: "[ab4,c5]@2 ~@4 [ab4,c5,eb5]@2 ~@3 f4@8 ~@4 ab4@2 a4@2 ~ bb4@2 ~@2, eb4 ~ bb1@5 ~ b1@17 ~@7, ~@2 bb2@2 ~ b2@7 ~@4, ~@11 [bb4,d5]@13 ~@8, ~@20 [f2,f4]@5 ~@7", // Ab Bb F
  AX: "[b4 ~@3 ab4 f4@2 ~@2 eb4@2 ~@2 f4@3 ~@5 c2@2 ~@4 a3@5 ~@16 g4 ~@10 g4 ~@10 g6 ~@26 f1@4 ~@27, ~ c5@2 bb4@2 ~@21 f1@34 [g4,a4]@3 c5 g5@2 a5 d6 c6@3 [g6,a6] c7 [b6,eb7]@2 f7 g7@18 c2 b1@3 ~@30, ~ b4 ~@11 ab3@16 eb4@19 bb1 ~@15, ~@26 c4@10 [eb4,g4]@2 [c4,g4]@2 c4@2 a3@2 a3@2 a3@2 ~ [a3,eb4,g4]@2 a3@2 a3 c4 a3@7 eb5@36 ~@30, ~@26 [eb4,g4]@6 [a3,g4]@2 eb4 a3@2 a3@2 [a3,eb4]@2 [eb4,g4]@2 [c4,eb4,g4]@2 [c4,eb4,g4]@2 [c4,eb4]@2 ~ c4@2 [c4,eb4,g4]@2 [eb4,g4]@3 c4@41 ~@30]/4", // Gsus2 B Eb C5 Am7b5 Eb A7 Adim …
})).s("gm_piano").gain(0.64)

stack(piano)