Strudelify
Grace and Beauty cover art

Piano Rags

Grace and Beauty

Scott James

KeyA♭ majorTempo100 bpm
0:00/0:00
// Grace and Beauty — Scott James
// 100 bpm, 4/4, key G# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 72 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(100/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@2 E F@2 G@3 H@3 I@2 J@2 K@2 L@2 M N@3 O@2 P Q R S T U@3 V W@3 X Y@3 Z AA@2 AB AC AD@2 AE@3 AF AG AH@2 AI@2 AJ
  AK@2 AL AM AN AO@2 AP AQ AR@2
>`.pickRestart({
  A: "~@23 c4 ~ eb4 ~@4 bb3@2, ~@23 c3@2 ~@3 ab4@2 bb4 ~, ~@24 eb3@2 ~ [f3,f4]@4 ~, ~@29 ab3@2 ~", // F
  B: "[c4,c5] ~ [eb4,eb5] ~ [f4,f5] ~ [g4,c5,eb5,g5]@4 [f4,ab4] c5 ~ eb4@10 ~@2 c6@2 eb6@2 ~ [g4,db5]@2, ~@6 ab4@3 ~@2 f5@2 ~@11 c5@4 ~ [eb5,g5,db6]@3, ~@6 f4 ~@5 [ab4,c5,eb5]@11 [gb4,eb5,gb5,f6]@5 ~@2 bb4 ~", // C Eb F Cm Fm Gdim Eb7 Ab …
  C: "~@8 [a3,f5]@2 c5@2 eb5@2 ~@2 [bb3,db4,eb4] ~@4 [eb2,eb3] ~ eb3 ~ [ab2,ab3,c4] ~ eb4@2 [eb3,ab3,c4] ab4 ~, ~@8 [gb3,c4,eb4,gb4]@6 [g4,db5]@7 ~@8 f4@2 ~", // Dm Eb7 Eb Ab Cdim Gdim
  D: "[~ [eb2,eb3,c5] eb5@2 f5@2 ab5@2 [ab2,ab3] ~@3 ab5@2 ~@3 [ab2,ab3] ~@2 [gb2,gb3] eb5@2 ~ [f2,f3] ~@3 d4 ab5@2 ~ [ab3,d4] ~ ab5@2 [e2,e3,bb4] ~ ab5@2 [ab4,c5]@3 ~ [c4,f5]@2 [g4,db5,eb5]@2 [eb3,bb3,db4] ~@2 eb5 [eb2,eb3,g4,db5] ~@3 [ab2,c4] ~@2 [eb3,c4] [ab3,f4] ab4@2 [eb2,eb3,bb4], ~@8 f5@4 ~@7 ab5@2 c5 ~ ab5@2 ~@25 f5@2 ~@12, ~@24 d5@4 ~@3 d5@3 ~@2 db5@2 ~@2 [eb2,eb3] ~@3 ab3 ~@11 ab3@2 eb4@3 ~@3]/2", // Cm Ab Gb F Abdim Edim Ab F5 …
  E: "~ c5@2 [ab3,c4] ab5@2 ~ [ab2,ab3] ~@3 ab5@2 ~ [ab2,ab3] ~@2 eb5 [a2,a3,c5,eb5] ~ eb3 ~ [bb3,f4] ~@3 [g3,bb3,eb4,ab4] ~ [g4,bb4]@2 bb1 ~, ~@3 eb5@2 ~ c5@3 ~@2 c4 ~@10 g4@2 ~@8, ~@7 f5@4 ~@2 f5@2 ~@7 bb4@4 c5@2 ~@4", // Ab Adim Bb5 Eb Gm
  F: "[c6 ~ [d4,d5,ab5] ~@2 eb2 [db5,g5,bb5]@3 eb4 ~@2 g5 [bb2,bb3] ~ f6@2 [g2,bb2,g3,g5,db6,eb6] ~ eb3 ~ [ab2,ab3,c4] eb4 ~ [eb3,ab3,c4,f4] ~ ab4@2 [eb2,eb3,bb4] ~@3 [eb3,ab3,c4] ab5@2 [c5,f5]@4 [ab3,c4] ~ [c5,f5]@2 [ab2,ab3] ~ ab5@2 [c5,eb5]@2 ab5@2 [b4,d5]@4 ab5@2 ~ [ab3,d4] [f3,b3] ~@2 [bb4,db5]@2, ~ bb5@2 ~@3 eb3 ~@3 c6@2 bb5@2 ~@17 eb5@2 ~@6 ab5@2 ~@16 [b4,d5]@3 ~ ab5@2 ~, ~@11 db5@2 ~@17 c5@2 ~@3 [ab2,ab3] ~@11 [gb2,gb3] ~@3 [f2,f3] ~@10 [e2,e3] ~]/2", // Ddim Gdim Bb Eb7 Ab Fm7 Eb5 Ab …
  G: "[ab5@2 [ab4,c5]@3 ~ [eb3,c4,ab4,f5] ~@2 [eb3,ab3,c4] ~ d5@2 eb5@4 [ab4,c5,f5] ~ c6@2 ~ f5@2 c5 ~@2 f4@2 c4 ~ ab3@2 f3 ~ c3@2 ~ f2@2 c5 ~ db5 ~ d5 ~ [c5,eb5]@3 ~ [ab3,c4,d5] ~@2 eb2 ~ f5 ~ [eb3,c4,c5,g5] ~@3 [g3,bb4,db5,bb5]@4 ~@4 [ab4,c5,eb5,ab5]@4 [eb2,eb3] ~@3 [ab1,ab2,c4] ~ eb4@2 [ab3,c4,f4] ~ ab4@2 [eb2,eb3,bb4] ~ c5@2 [eb3,c4] ~ ab5@2 [c5,f5]@3, ~@2 [eb2,eb3] ~@3 ab3@2 [ab4,c5,eb5]@3 ~@2 eb2@2 ~@2 [d2,d3]@4 ~@16 ab2@2 ~@7 [eb2,eb3] ~@5 c5@2 ~@7 [eb3,bb3,db4]@8 [ab3,c4] ~@23 [ab2,ab3] ~@2, ~@13 eb3 ~@7 ab5@2 ~@3 ab4@2 ~@23 eb5@3 ~@35 eb5@2 ~@5]/3", // Ab Fm7 Ab Fm Cm Dm7b5 Cm Gdim …
  H: "[~ [eb3,ab3,c4] ~@3 ab2 ~@2 [gb2,c5,eb5]@2 db3 ~ [b4,d5]@4 [b3,d4]@2 [b4,d5]@2 [f3,ab3,b3,d4] ~@2 e3 db5@2 ~ [ab4,c5]@4 ~@4 [eb3,g3,db4] ~@3 [eb3,g4,db5]@3 ab1 [ab2,c4] eb4@2 [eb3,ab3,c4,f4] g4 ab4@2 ~@3 c4 eb3 ab5@2 [ab2,ab3] bb2 ~@2 [eb3,ab3,c4] ~ [c5,f5]@2 [a2,a3] ~ eb5!2 [gb3,eb4,c5] ~@3 [g4,bb4]@4 [g3,bb3,eb4,c5] ~@2 bb1 ~ c6 ~ [ab3,bb3,d4,d5,ab5] ~@3 [db5,g5,bb5]@4 [db4,eb4,c6] ~@2 [bb2,g3], ~ ab5@2 [c5,eb5]@4 ab5@2 ~@2 ab5@3 ~@2 ab5@4 ~@2 ab5@2 e2 ~@2 [eb2,eb3] ~@3 [eb3,c4,ab4]@2 [g4,db5,eb5]@4 ~ [eb2,eb5]@3 ~@9 [eb2,eb3,bb4]@4 eb5@2 ~@5 ab5@2 ~@16 [g4,bb4]@3 ~@2 bb5@2 ~@8 [db5,g5,bb5]@2, ~@4 ab3@2 ~@2 gb3 ~@3 [f2,f3] ~@10 bb4@2 ~ ab5@3 ~@3 [c5,f5]@2 ~@3 f5@5 ~@10 c5@4 ~ [c5,f5]@5 ~@11 [bb2,g3] ~@14 [eb2,eb3] ~@3 bb3@2 ~@2]/3", // Ab Cdim Bm Fdim Ab Eb7 Ab Fm7 …
  I: "[~ f6@2 [g3,bb3,db4,eb4,g5,db6,eb6] ~@3 [ab2,ab3,c4] eb4@2 [eb3,f4] ab3 ab4 ~ [eb2,bb4] ~ c5 [eb3,ab3,c4] ~ ab5@2 [c5,f5]@4 [eb3,ab3,c4] ~ [c5,f5]@2 [ab2,ab3] ~ ab5@2 [c5,eb5]@2 ~@2 [f2,f3] ~@2 d4 ab3 ~@2 [f3,ab3,b3,d4] ~ ab5@2 [bb4,db5]@2 ~@2 [eb2,eb3] ~@4 [ab4,c5,eb5]@2 [eb3,ab3,c4] ~@2 eb2 eb3, ~@17 eb5@2 ~@2 [ab2,ab3] ~@3 ab5@2 ~@6 [gb2,gb3] ~ ab5@2 b4@5 d5@3 ~@5 ab5@2 ~@3 [c4,ab4,f5]@2 ~@4 d5@3, ~@36 d5@5 ab5@2 b4@3 ~@2 [e2,e3] ~@2 [ab4,c5]@5 [eb3,ab3]@2 ~@4 eb5@2]/2", // Eb7 Ab Ebsus2 Eb5 Ab F5 Ab F5 …
  J: "[e5@2 [d2,d3,ab4,c5,f5] ~@19 ab2@2 f2@2 c5 db5 ~ d5 ~ [c5,eb5]@3 ~ [ab3,c4,d5] ~@2 eb2 ~ f5@2 [eb3,c4,c5,g5] ~@4 eb3@7 [ab3,c4,ab4,c5]@3 ~@5 [eb5,bb5,db6,eb6] ~, ~@4 c6@7 ab4@2 f4@2 c4@9 ~@13 c5@3 ~@24, ~@6 ab5@11 ab3@7 ~@22 [g3,db4,bb4,bb5]@5 ~@13, ~@8 f5@16 ~@12 eb5@3 ~@7 d5@2 ~@6 [eb5,ab5]@5 ~@5, ~@9 c5@9 f3@2 c3@7 ~@4 [eb2,eb3] ~@32]/2", // Dm7b5 Cm Dm7b5 Cm Ab Eb7 Gdim Ab5 …
  K: "[[e5,bb5,db6,e6]@2 [bb3,eb4] ~ f6 ~ bb1 ~@3 [bb3,db4,eb4] ~ db5 [eb2,f4,bb4,db5,f5] ~@3 [bb3,db4,eb4] ~ g5@2 [eb2,eb3] ~@3 [db2,db3] ~@2 [c2,c3] [d3,eb5,ab5,c6,eb6] ~@2 [ab3,c4] ~@2 f6 [eb2,eb3] ~@3 [ab3,c4] ~@2 [bb4,db5,bb5] [ab2,ab3] [d5,b5]@2 [ab3,c4] ~ c6 [c3,c4] ~@3 b2 db3 eb3@2 [bb2,g4,db5,eb5,g5] ~ [bb4,bb5]@2 [bb3,db4,f4] ~, ~@4 [bb5,db6]@3 ~@9 [gb4,bb4]@2 ~ [g4,db5,eb5]@4 ~@7 ab5@3 ~ c6@3 ~@12 eb5@2 ~@13, ~@5 f5@2 ~@8 gb5@2 gb3@2 ~@12 [e5,c6,e6]@3 ~ [f5,d6]@3 ~@2 eb3@2 ~@12 [b3,ab4,d5,ab5]@3 ~ bb3@4 ~@2]/2", // Bbdim Eb5 Eb7 Bbm Eb7 Eb Db C …
  L: "[f5 eb2 ~@3 [db4,e4,f4,bb4] ~@3 [db3,g4,db5,g5] ~@4 [f4,f5]@2 eb3@2 ~@2 [db2,db3] ~ ab2 [c3,g4] [c5,db5,g5] ~@2 ab3@2 eb4@2 c3@2 ~@2 [d4,d5]@2 ~@2 [c3,c4] ~@3 [b2,b3]@4 [eb5,ab5,eb6]@4 [d5,ab5,d6]@2 eb3@2 [bb2,eb5,g5,bb5,eb6] ~ [g5,e6]@2 [bb3,db4,f4] ~@3 [eb2,eb3], [f4,db5]@2 ~@3 [bb3,ab4,ab5]@2 ~@4 [bb4,bb5]@4 ~@3 db5@3 ~@4 c5@4 [ab4,eb5]@5 ~ ab4@4 [ab4,c5,eb5]@8 ~@14 bb5@3, ~@12 f4@2 ~@5 g5@2 ~@18 eb4@2 ~@21 f5@2, ~@13 [bb3,db4]@2 ~ eb2 ~@3 g4@2 ~@4 [ab4,eb5,ab5]@4 ~ c4 ~@3 [b2,b3] ~@11 [c3,c4]@2 ~@2 [b2,b3] ~@12]/2", // Bbm Dbdim F Db C5 C D C …
  M: "~@3 [gb3,db4,e4] ~ db5 ~ [bb2,g3,f4,bb4,db5,f5] ~@2 [gb3,bb3,db4,f4] ~@4 [eb2,eb3] ~@2 [db2,db3] ~@3 [c2,c3,eb5,ab5,c6,eb6] ~@2 [ab3,c4] ~@2 [f5,f6]@2 eb3 ~, ~@9 [gb4,bb4,db5,gb5]@3 ~ g5@4 ~@7 [e5,ab5,c6,e6]@3 ~@5", // Gb7 Gm7b5 Gbmaj7 Eb Db Ab F Gb …
  N: "[~ [ab3,c4] eb3 ~@2 [ab3,bb4,db5,bb5] [ab2,bb2] [d5,b5]@2 [eb3,ab3,c4] ~ c6 [ab2,ab3] ~ bb5@2 [gb2,gb3,c5,c6] ~@3 [f2,f3,bb4,db5,bb5] ~@2 [ab3,db5] ab4 ~@2 ab4 [db2,db3,f4] ~@2 [d2,f4] e2 ~@2 [eb2,eb3,eb4] ~@3 [eb3,ab3,c4] ~@3 [eb2,eb3] ~@2 [db4,g4,bb4]@2 ~@2 [c4,ab4]@4 f4 ~@2 eb3@2 f5 ~ [eb2,eb3,g4] ~ eb3@2 [ab4,c5,eb5,ab5]@2 ~@2 eb4 ~ eb5 [eb4,eb5]@3 ~ eb5 a2 eb3@2 [bb2,g3,eb5,eb6] ~ [e5,bb5,db6,e6]@2 [g3,bb3,db4,f4] ~@2 [bb1,bb2] ~@2 f6 [bb3,db4,f4,bb6] ~ db7 eb2 [g3,f6,bb6,f7], ~@11 [c5,eb5]@3 ~@17 [d3,ab4,bb4]@3 ~ c5@5 ~@5 eb5@2 ~@9 eb4@2 ~@3 eb5@2 ~@6 eb5@2 ~@5 [a3,eb6]@2 db6 ~@7 [f5,bb5,db6,f6]@3 ~@7, ~@35 ab4@2 ~ [eb4,ab4,eb5]@2 ~ [eb4,g4,c5]@4 ~ [eb2,eb3]@4 ab2 ~@3 f3@4 ~@7 [ab2,ab3]@12 ~@19, ~@70 eb4@2 ~@3 eb3@2 ~@19]/3", // Ab Bbm7 Absus2 G Ab Gbdim Bbm Db5 …
  O: "[~@2 db4 e4 [g6,db7,eb7]@2 [bb2,g3] ~ g6 [bb3,db4,f4,g5,eb6] [g3,db6] ~ [d3,eb3,ab5,bb5] [ab2,ab3,eb5,ab5,eb6] ~ [ab5,e6]@2 [eb3,ab3,c4] ~ [f5,f6]@2 [eb2,eb3]@3 [eb3,ab3,c4] ~@2 d3 [ab2,ab3,bb5,bb6] ~@3 [eb3,c4] ~ [c6,c7] ~ ab2@3 ~ [a2,a3,ab5] ~ [eb3,ab4,ab5] [bb2,g3,g4,db5,eb5,g5] ~@3 [bb3,db4,f4] ~ [f4,db5,f5]@2 [bb1,bb2] ~ db5@2 [ab3,bb3,db4,f4,ab4,ab5] ~ db5 [eb2,g4,g5] [g3,db5] ~@2 [db4,f4] ~, ~ [gb6,gb7]@2 ~ g7 ~@14 c6@6 ~@5 b6@3 ~@29 bb3@2, ~@2 bb3@2 ~@11 [ab3,e5] ~@15 [b5,d6]@2 ~@3 ab3@2 ~ ab4@2 ~@5 [bb4,bb5]@2 ~@13 [bb4,bb5]@2 ~]/2", // Eb7 Eb Eb7 Gdim Ebsus4 Ab5 Dbm Ab …
  P: "[f4,db5,f5]@2 [eb2,eb3] ~@2 [db3,g4,g5] db2 ~ eb5 c3 ~@3 c4@2 ~ [c3,c4] ~@3 [b2,b3,d4,d5]@3 ~ [c3,c4]@2 ~@2 [b2,a3,b3]@4, ~@4 eb5@2 ~@5 [ab4,eb5]@4 [ab4,eb5]@2 ~ ab4@5 ~ [eb4,ab4,eb5]@8, ~@8 ab3 ~@7", // Db Eb Dbdim C Bm C B7 Ab5
  Q: "[eb5,ab5,eb6]@4 [ab5,d6]@2 ~ bb2 [g3,eb5,g5] ~@2 [bb3,db4,f4] ~ [bb5,db6,f6]@2 bb1 ~@2 [bb3,db4,f4,bb6] ~ db7 eb2 [g3,bb6,f7] ~@3 [bb3,db4,f4,gb6,gb7] ~ g7 bb2 g3 ~, [c3,c4]@2 ~@2 [b2,d5] ~@3 eb6@2 [e5,g5,bb5]@2 ~@5 f6@2 ~@6 db7@2 ~ [g6,db7]@2 ~@2", // Ab5 Abdim Cm Bbm Gm7 Gbmaj7 C Bm …
  R: "~ [bb3,db4,f4] ~ eb5 ~ [ab1,bb1,ab2,bb2,eb5,ab5,c6,eb6] ~ [e5,ab5,c6,e6]@2 [ab3,c4] ~ f6 [eb2,eb3] ~@3 [ab3,c4] ~ bb4 ~ [ab2,ab3,bb4,db5] ~@2 [eb3,c4] ~ [c5,c6]@2 [ab2,ab3] ~ bb5 ~ [gb2,gb3,c5,c6], ~@11 f5@3 ~@2 eb3@2 ~@2 bb5@2 [d5,b5]@2 ~@8, ~@23 ab3@2 ~@7", // Bbm Ab Eaug Ab Eb Ab Bbm7 Cm …
  S: "~@2 bb5 [f2,f3,bb4] ~@2 [ab4,db5,ab5] f3 ~@3 [db2,db3,f4,ab4] ~@2 [d2,d3,f4,ab4] bb4 ~@2 [eb3,eb4] ab4 ~@2 [ab3,c4] ~@2 eb2 ~ eb5 ~ [eb3,g4,bb4] ~ eb3, ~@18 c5@4 ~@2 [g4,c5]@3 ~@2 [g3,db4]@2 ~", // Bb5 Db5 Db Ddim Eb Ab Eb C5 …
  T: "~ [ab2,ab3]@2 ~ f3 ~@2 eb3@2 ~ f5 [eb2,eb3,g4] ~@3 [ab2,ab3,ab4,c5,eb5,ab5]@4 ~@5 [ab2,ab5,c6,eb6]@4 ~@4, ~ [c4,ab4]@4 f4@2 ~@4 eb5@2 ~@19, ~@6 eb4@2 ~@16 [ab1,ab6] ~@7", // Ab Eb Ab Fm Ab
  U: "[[ab2,ab3,c4] ~ eb4@2 [eb3,ab3,c4] ~ ab4 ~ [eb2,eb3] ~@2 [eb3,ab3,c4] ~@3 f5@4 ab5@2 ~@2 [ab2,ab3] ~@3 [gb2,gb3,c5] ~ ab5@2 [f2,f3] ~@3 ab5@3 ~ [ab3,d4] ~ ab5@2 [bb4,db5]@2 ~ [eb2,eb3] ~@3 [c4,ab4,f5]@2 ~@2 [eb3,g3,db4] ~ f5@2 [eb2,eb3,g4,db5,eb5] ~@3 [ab1,ab2] eb4@2 c4 ~@3 [eb2,bb4]@2 c5@2 [ab3,eb5]@2 ~@2 [ab2,ab3] ~@3 [eb3,ab5]@2 ~ [a2,a3] ~ eb5 ~ [gb3,c4,eb4,c5,eb5] ~@3 [bb2,g3] ~@3, ~@8 c5@2 eb5@3 ~@2 ab2 ~@11 eb5@2 ~@2 d5@3 ~ d4 ~@7 [e2,e3] ~@2 c5@4 ~@3 db5@3 ~@11 ab4@5 ~ c4 ~@2 [c5,f5]@6 ~ [c5,f5]@3 ~@6 bb4@4, ~@11 f5@2 ~ ab5@2 ~@6 f5@3 ~ ab5@2 ~@17 ab5@2 ~@28 ab5@3 ~@18, ~@46 ab4@2 ~@4 [g4,eb5]@3 ~@7 c4@2 ~ [eb3,ab3,f4]@7 ~@8 [ab3,c4]@2 ~@10 g4@2 ~@2]/3", // Ab Eb Ab Gbdim F Abdim Bbm Eb …
  V: "[eb4,c5] ~ [g4,bb4]@2 ~@2 c6 [bb3,d4] [d5,ab5] ~@2 [eb2,eb3,bb5]@4 [eb4,c6] ~ g5@2 ~@3 [eb2,eb3,g5,db6,eb6] ~@3 [ab1,ab2,c4] d4 eb4@2 [ab3,c4,f4] ~, ~@7 bb5@2 ~@8 bb5@4 f6@2 ~@9, ~@17 db5 ~ [bb3,db4,eb4]@4 ~@9", // Cm Gm Bb Ddim Eb5 Cm Eb7 Ab …
  W: "[ab4@2 [eb2,eb3,bb4] ~@2 [eb3,ab3,c4] ~@3 ab3 ~@5 f5@2 [ab2,ab3] ~ ab5@2 [c5,eb5]@2 ab5@2 [f2,f3] ~@3 [d4,ab5]@2 d5@4 ~ [bb4,db5]@2 ~ [eb2,eb3] ~@3 [eb3,c4,f5]@2 [ab4,c5,eb5]@2 [eb3,ab3,c4] ~@2 [eb2,eb3] ~ e5@2 [d2,ab4,c5,f5] ~ c6@2 ~@5 ab4@2 f4@2 c4 ~@2 f3@2 ~@2 ab2@2 f2@2 c5 ~@2 d5 ~ [c5,eb5]@3 ~ d5 ~@2 eb2 ~ f5 ~ [eb3,ab3,c4,c5,g5] ~, ~@4 c5@4 ~@13 [gb2,gb3] ~@14 [e2,e3] ~@2 c5@6 ~@4 d5@3 ~@2 d3@2 ~@4 f5@5 ~@7 c3@7 ~@4 [eb2,eb3] ~@3 [ab3,c4]@2 c5@2 ~@5, ~@5 eb5@2 ~ ab5@3 ~@3 ab5@2 ~@9 d5@4 ~@6 ab5@2 ~ ab5@2 ab4@5 ~@5 eb5@2 ~@6 ab5@4 c5@3 ~@4 ab3@4 ~@7 db5@2 ~@6 eb5@2 ~@6]/3", // Eb5 Ab Cm F Ddim Bbm Eb F7 …
  X: "~@2 [g3,bb4,eb5,bb5]@4 ~@4 [ab3,ab4,c5,eb5,ab5]@2 ~@7 [ab4,ab5]@2 [bb4,bb5]@2 [f4,f5] ~ [ab4,ab5]@3 ~ [gb4,gb5] [eb4,eb5] ~, ~@2 [eb3,db4]@8 c4 ~@21", // Eb Ab Bb F Ab Gb Eb Eb7
  Y: "[~@3 c5@4 bb4 ~ ab3@3 f4 gb4 ~ g4 ~@5 [ab2,ab3,db4,f4] ~@3 gb3 [ab2,eb4] ~@3 [ab2,f3,bb3,db4] ~@3 [eb3,ab3,c4]@2 ~@7 eb5@5 ~@5 [db2,db3] ~@3 [ab3,db4] ~ ab5@2 f5@2 ab5@2 [ab3,db4,bb4,f5] ~@2 eb2 [gb3,c5,gb5] ~ [gb5,ab5]@2 [c4,eb4,gb4] ~ ab4 ab2 gb3 ~ d6 [ab3,eb4,gb4,eb6] ~@2 [db2,e6] [eb2,f6] f3 ab6 ~ [ab3,bb3,db4,f4] ~ ab6@2 [ab1,bb1,c6,f6] ~@2 f4, ~@2 c4@4 ~ bb3@2 ~@34 [ab1,ab2,ab4,c5,ab5]@8 e5@2 ~@43, ~@8 ab4@3 ~@6 ab4@26 ~@5 d5@4 f5@3 ~@12 ab5@3 ~@5 ab5@3 ~@10 [db6,f6]@2 ~@4 ab6@2, ~@49 eb5@4 ~@4 db5@2 ~@2 ab1 ~@34]/3", // Db Ab5 Bbm7 Ab Db Db5 Bbm7 Gbdim …
  Z: "[ab3,bb3,db4,bb5] ~ eb2 [gb3,c6] gb6 ~@2 [eb4,gb4] ~@2 [ab2,gb3] ~@3 [eb4,gb4,eb5]@2 e5 ~ [db3,db4] ~@2 [bb3,f4] ~@3 bb2@2 ~@2 b3@2 e3, ~@3 ab6@2 ~ [bb5,ab6]@2 ~ [ab5,gb6,ab6]@2 ~@2 d5@4 ~ f5@4 ~ [db5,f5,ab5,bb5]@6 ~@3, ~@20 ab5@3 ~@2 bb3 ~@3 b2 ~@2", // Bbm7 Gbdim Ebm Ab7 Ebm Db Bb5 Bb7 …
  AA: "[~ [c3,c4,b5] c6@2 [ab3,f4] ~@3 [ab2,ab3] ~@2 [f2,f3]@3 ~ [g2,g3,e5] ~ g5 ~ [bb3,e4,bb5] ~@2 c2 ~ c6@2 [bb3,e4,g5] c6 ~ f5@3 ~@2 f6 ~@2 [c4,f4,ab4,f7]@4 ~@2 e5@2 [db2,db3,f5] ~ ab5@2 [ab3,db4,f4] ~@2 gb1 f5@2 ~ [ab3,db4,e4,bb4,f5] ~@2 eb2 [gb3,c5,gb5] ~@2 [ab3,eb4,gb4], ~@6 [f5,c6,f6]@4 ~@11 [e5,g5,bb5,db6]@2 ~@6 c4@6 f6@7 ~@22, ~@29 f3 ~@2 f5@10 eb5@2 ~@7 ab5@2 ~@2 ab5@2 ~ ab5@2 ~@4, ~@33 [ab3,ab5]@9 ~@11 ab1 ~@10, ~@33 f4@4 ~@4 d5@2 ~@9 c5@2 ~@8 [bb4,gb5,ab5]@2]/2", // Cmaj7 Db Ab F C Bbdim Edim Fm …
  AB: "~ [ab4,gb5,ab5]@2 [ab2,gb3] ~@2 [ab3,eb4,gb4,eb6] ~ e6 ~ [db2,gb6] ~ ab6@2 [ab3,db4,f4] ~@2 ab1 [c6,f6]@2 ~ [ab3,db4,f4,bb5] ~ f6 eb2 [gb3,c6,gb6,ab6] ~@2 [eb4,gb4] ~ [ab5,gb6,ab6]@2, ~@5 d6@2 ~@3 f6@2 ~@2 [db6,f6]@2 ab6@2 ~@2 ab6@2 ~@5 [bb5,gb6,ab6]@2 ~@3, ~@14 ab3 ~", // Ab7 Gb5 Db F5 Bbm7 Ab7 Ebm Ab7 …
  AC: "[ab2,gb3] ~@2 [eb4,gb4,eb5] ~ e5 ~ [db3,db4] ~@2 [db4,f4]@2 [db5,f5,ab5,db6]@2 b2 ~@3 [b3,eb4,f4,bb4,bb5]@3 [db5,ab5] [bb3,ab4] ~@2 [db4,eb4]@2 [gb4,db5,eb5]@2 gb2 [bb2,eb5] ~, ~@2 d5@2 ~@3 f5@5 ~@5 db5@3 ~@4 db5@3 ~@2 gb3@2 ~, ~@9 ab5@3 ~@11 gb5@3 ~@6", // Ab7 Ebm Db Bmaj7 Db5 Bb7 Dbsus2 Ebm7 …
  AD: "[[gb2,gb3,a4,a5]@2 db3 ~ [f2,f3] ~@2 [db4,e4,f4] ~ f5@2 [ab2,gb3,gb4,c5]@2 ~ gb4 [ab2,gb3,c5,eb5] ~@3 [db3,db4] ~@2 [ab2,ab3] gb3 ~@3 [ab2,f3] ~@2 gb3 ~@2 d3 [f2,f3] [g2,ab2] ~@2 [db4,f4,gb5] [ab3,bb3] ~@2 [ab1,c6] ~@3 [ab3,bb3,db4,f4,bb4] ~ ab5 eb2 [gb3,c5,gb5] ~@2 [ab3,c4,eb4,gb4] ~ [gb5,ab5]@2 [ab2,gb3] ~ d6 [eb4,gb4,eb6] ab3 e6 db2, [db5,eb5]@5 ~ [ab4,db5,ab5]@4 ~ gb5@3 ~@16 d5@2 eb5@2 f5@4 ~@3 ab5@2 ~@2 ab5@2 ~@5 [gb5,bb5]@3 c5 ~@8, ~@7 bb3@2 ~@9 [f4,db5]@8 [g2,g3]@2 ~ db3@2 gb2@2 e5@2 ~@3 [db5,f5,db6]@3 ~ c5@2 ~@2 bb5@2 ~@2 c6@2 ~@12]/2", // Gbm F Db Ab7 Db Ab Db F …
  AE: "[f6@2 ab6@2 [ab3,bb3,f4,g4] ~@2 [c6,f6]@2 ~@2 [ab3,bb3,db4,e4,f4] ~ ab6 eb2 [gb3,c6,gb6,ab6] ~@2 [eb4,gb4] ~ [ab5,gb6,ab6]@2 [ab2,bb2,gb3,ab3] ~@2 [eb4,gb4,eb5] ab3 e5@2 [db2,db3] ~@2 [bb3,db4]@2 db5@2 [bb2,bb3] ~@2 db5 [b2,b3] ~ e3 [c3,c4,b4,f5,b5] ~@3 [ab3,c4,f4]@2 ~ [ab2,ab3] ~@3 [f2,g2,f3,g3]@4 [g2,g3,e5] ~@2 [bb3,c4,e4] ~ [db5,g5,db6]@2 [b1,c2] ~@2 [bb3,d4,e4] ~ [f2,c6] ~ ab3 ~@4 f6 ~ [c4,f4,ab4,f7]@4 ~ eb5 eb2 f5 [db2,db3] ~@2 [ab3,db4,f4,db5] ~ ab5@2 [c5,f5]@2, f3 ~@3 [db6,f6]@2 ab6@2 ~@2 ab6@2 ~@19 ab5@3 [f5,ab5,bb5]@6 ~@2 ab5@3 ~@4 [f5,c6,f6]@9 ~@2 g5@2 bb5@5 c6@2 ~@6 [ab3,ab5]@8 ~@11 ab1 ~, ~@7 ab1 ~@3 [bb5,f6]@2 ~@4 [bb5,gb6,ab6]@2 ~@5 d5@2 ~@3 f5@3 f4 ~@12 [c5,f5,ab5,c6]@4 ~@19 g5@2 ~ f5@3 f5@9 d5@2 e5@2 ~@2 ab5@2 f5@2 ~@3, ~@75 [c4,f4]@3 f6@5 ~@13, ~@76 c6@7 ~@13]/3", // Gm7 F5 Bbm7 Ab7 Ebm Ab7 Ebm Db …
  AF: "ab5@2 [ab3,db4,e4,f4] ~@2 [eb2,gb3] c5 ~@2 [ab3,eb4,gb4] ~ [ab4,bb4] [ab2,gb3] bb2 ~ [c6,d6] [ab3,c4,eb4,gb4,c6,d6,eb6] ~@2 [db2,eb2] [f3,f6] ~@2 [ab3,db4,f4] ~ ab6@2 [ab1,c6,f6] ~@2 [ab3,f4] f6, ~@2 bb4@2 ab5@2 ~ ab5@2 ~@2 [gb5,ab5]@2 ~@5 e6@2 ~@2 ab6@2 ~@5 ab6@2 ~, ~@8 [bb4,gb5]@2 ~@13 [db6,f6]@2 ~@5 [db4,bb5]@2", // Db Ebm Ab7 Absus2 Ab7 Csus2 Ab7 Dbsus2 …
  AG: "~ [eb2,f6,gb6] [gb2,gb3,c6] ~@3 [ab3,eb4,gb4] ~@2 [ab2,gb3] ~@2 gb4 [eb4,eb5] e5 ~ [db3,db4] ~ ab5@2 ~@3 [b2,b3] ~@3 [eb4,f4,db5,f5,bb5]@3 ~ [bb2,ab3,bb3,ab4,db5,ab5], ~@4 [bb5,ab6]@2 ~@2 [ab5,gb6]@2 ~ d5@2 ~@3 f5@2 ~@2 [bb3,db4,f4]@2 ~@10, ~@5 gb6@2 ab6@2 ~@12 [f5,ab5,db6]@8 ~@3, ~@21 db5@5 ~@6", // Ebm Gbdim Ab7 Eb Db B Bbm Bbm7 …
  AH: "[~@2 [bb3,db4,eb4] ~ [gb4,db5,eb5]@2 gb2 eb5 ~ [gb2,a5]@2 db3 ~ [f2,e3,f3] ~@2 [bb3,db4,e4]@2 f5 ~ [ab2,ab3,gb4,c5]@3 ~ [ab2,ab3]@3 ~ f4@2 ~@10 [ab4,c5]@2 ~ [eb2,eb3] ~@3 [eb4,gb4] ~ [bb4,c5]@2 [ab2,gb3] ~@2 [gb4,ab4] [ab3,eb4,c5,eb5] ~ eb2 [gb3,bb5,ab6] ~ bb5@2 [ab3,c4,eb4,gb4] ~, ~ [gb4,db5,gb5]@3 ~@2 gb3@2 ~ [db5,eb5]@5 ab5@4 ~@2 gb5@5 ~@2 db5@8 ~ db2@7 ab4@2 ~@19, ~@9 [gb3,a4] ~@5 ab4@4 ~@4 [gb4,c5,eb5]@3 ~@2 db3@7 [db3,db5,f5,ab5,db6]@7 eb5@4 ~@18, ~@31 [ab2,ab3]@11 ~ ab5@9 ~ ab5@3 ~@4 db6 ~@3]/2", // Eb7 Ebm7 Gbm Fmaj7 Bbdim Ab7 Ab Eb …
  AI: "[ab6@2 [c6,eb6]@3 [db4,gb4] [ab3,eb4,ab5] ~ db2 [eb2,f3,bb4] ~ [bb4,db5,f5]@2 [ab3,bb3,db4,f4] ~@2 ab4 [ab2,f5] ~@3 bb5@3 bb5@2 ~ [ab3,db4,f4] ~ ab6@2 [c3,c4,db6,f6] ~@4 eb3 ~ [ab3,c5] ab2 ~@2 [ab3,c4,f4]@2 ~ g2 ~@3 [bb3,db4,f4,db5,bb5]@2 ~ c2 [c5,c6]@2 ~ [bb3,c4,e4] [c5,g5]@2 [c3,bb3]@2 ~ [bb3,c5,g5,c6] d5, ~@2 ab5@2 ~@5 ab5@4 ~@2 ab5@11 [db6,f6]@2 ~@3 ab5@2 ~@5 c6@2 [f5,ab5]@4 [f5,db6]@8 ~@4 c6@4 ~@4, ~@2 [ab2,gb3] ~@13 db5@2 ~@2 [ab3,bb3,db4,f4]@7 ~@17 db5@5 ~@12 [db5,db6]@2 ~, ~@24 [db2,ab6]@4 ~@7 [bb2,bb3]@2 ~@7 bb5@3 ~@4 bb5@2 ~@2 b5@2 ~@7]/2", // Cm Gb5 Ab5 Ebsus2 Bbm Bbm7 Db Dbmaj7 …
  AJ: "~@2 f3@2 ~@2 g3@2 [ab2,ab3]@2 ~ [bb2,bb3] ~ [c3,c4] ~@2 [f3,f4] ~@3 [ab2,ab3,db5,f5,ab5]@3 ~ [ab2,gb3,eb5,ab5]@2 ~@2 [f3,bb4,db5] ~ eb3@2, ~@2 [f5,c6,f6]@11 ~@11 c5 ~@7, ~@2 f2 ~@3 g2 ~@21 [ab2,ab5]@2 ~@2", // Ab Bb C F Db Ab7 Bbm F5 …
  AK: "[[ab2,gb3] ~@2 [eb4,gb4] ~ ab5@2 [eb2,ab4,eb5,gb5] ~@3 [ab3,eb4,gb4] ~ e3 ~ [ab2,gb3,bb5,eb6,ab6] ~@2 gb4 [ab3,eb4] ~@2 [c6,gb6]@2 ~@2 gb3 db3 ~ [f2,f3,ab5] ~@3 [ab3,bb3,db4,f4] ~ ab5@2 [ab1,ab4,db5,f5] ~@2 [bb3,db4,e4,f4] ~@3 [db2,db3] ~@3 db4@2 ~ [db3,db4,db6,f6] ~@3 [b2,db3,b3] ~@3 [bb2,bb3,gb4,db5] ~@2 [a2,a3,g4,db5,g5] [e5,f5], ab5@4 ~@13 [bb5,gb6]@3 ~@10 bb4@5 ~@5 ab3@2 ~@2 ab6@2 [db6,f6]@3 ~ ab6@2 ~@12, ~@2 [bb4,gb5]@3 ~@17 [ab2,ab3] ~@3 gb2@2 ~@3 [db5,f5]@4 ~@9 bb5@5 ~@2 ab5@2 ~@6 gb5@2 ~@3, ~@47 [ab3,f4]@2 ~@15]/2", // Ab7 Ebm Ab7 Ebm Ab5 Cdim Fm Bbm7 …
  AL: "~@2 [ab2,ab3,ab4] ~@3 [ab2,gb3,a4,c5,eb5,a5] ~ db3 ~ [f2,f3,ab4,db5,ab5] ~ [a4,a5] [eb2,eb3] ~@3 [d2,d3] ~@2 [ab3,ab4,d5,f5]@3 ~ [eb2,eb3,db5] ~@2 [bb3,db4,f4]@3 [ab4,f5] [ab2,ab3], ~@2 [db5,ab5]@3 ~ gb2@2 ~@7 [bb4,d5,f5,bb5]@4 ~ [bb3,d4] ~@3 f5@6 ~@2, ~@13 [db5,bb5]@2 [gb4,c5]", // Ab Ab7 Db A Eb D Ddim Eb7 …
  AM: "~@2 [ab2,gb4,c5,eb5]@3 ~@15 eb6 [eb2,eb3,c6] eb6 ~@2 [ab3,c4,eb4,gb4] ~@2 c6 [ab1,ab5,eb6] ~@2, ~ ab5@2 ~@3 [db3,db5]@8 [db2,db3,db5,f5,ab5,db6]@8 ~@10, ~@2 ab3@4 f4@13 c6@2 ab6@4 ~@2 ab6@3 ~@2, ~@10 [ab2,ab3]@11 bb5@2 [bb5,c6,eb6]@4 ~@2 gb6@2 ~", // Ab7 Cm Ab7 Ab5 Db Ab Cm7
  AN: "[c4,eb4,gb4] ab3 ~@2 [eb2,db3,eb3,bb6,c7] ~ eb7@2 [ab3,c4,eb4,gb4] ~@2 [ab2,gb3,ab6,c7,gb7] [bb2,eb7] ~@2 [ab3,eb4,gb4] ~@2 db2 [f3,g3,ab5] ~@2 [ab3,bb3,db4,f4] ~ ab6@2 [ab2,f3,ab5,db6,f6] ~@2 [ab3,bb3,db4,f4,g4] ~@2, ~@4 ab7@2 [bb6,c7,gb7]@4 ab7@2 ~@7 ab6@4 ~@9, ~@21 [ab5,f6]@3 ~@8", // Cdim Eb7 Ab7 Eb5 Ab7 Fm Bbm7 Db …
  AO: "[~ db2 ~@2 [bb3,db4,f4] ~@3 [c3,c4,ab6,db7,f7] ~@3 [bb2,bb3]@2 ~ [g2,g3] f3 [db5,f5,bb5]@2 [bb3,db4,f4,g4] ~@2 [db5,f5,db6]@4 [g3,bb3,db4,f4,db5,f5,bb5]@2 ~ [c5,c6]@2 ~@2 [g3,c4,e4] [c5,g5]@2 [g2,e3] ~ db5 [g3,bb3,c4,e4,c5,d5,g5,bb5] ~@3 f3@2 ~ [g2,g3] bb2 [ab2,ab3]@2 ~ [bb2,bb3] [c3,c4] b3 ~@2 [f3,f4] ~@3 [ab2,ab3,db5,f5,ab5]@3 ~, ~ [bb6,ab7]@5 ~@15 bb5@5 ~@2 bb5@2 ~ b5@2 bb3@2 ~@4 c6@2 ~@2 [f5,c6,f6]@10 ~@11, ~@3 [db7,f7]@3 ~ ab7@2 ~@13 g2 ~@6 [c2,c3] ~@2 c6@4 ~@2 db6@2 ~@3 f2 ~@20]/2", // Bbm Dbmaj7 Bb G Bbm Gm7b5 Db Gm7b5 …
  AP: "[ab2,db5]@2 ~ f3 [ab2,ab5]@2 eb3@2 [ab2,gb3,bb4] ~@2 [ab3,c4,eb4,gb4] ~@2 [ab4,c5] [eb2,eb5] ~ [ab5,bb5] [ab3,eb4,gb4,c6] ~ eb6 ~ [ab2,gb3,bb5,c6,eb6,gb6,ab6] ~@2 [eb4,gb4] ~ ab6@2 [ab3,bb5,c6,eb6,gb6] ~@2, [gb3,eb5] ~@3 c5 ~@3 ab5@2 c5@3 ab5@3 ~@8 [bb5,c6,gb6]@3 ~@5, ~@9 bb4@3 ~@13 ab3@2 ~@2 ab2@2 ~", // Db5 Ab Ebm Ab7 Ab Eb Absus2 Ab7 …
  AQ: "[gb2,ab2,gb3] ~ [db3,bb4] ~ [f2,f3,bb4,ab5] ~@2 f4 [ab3,bb3,db4] ~@2 [ab2,ab3,ab4,db5,f5] ~@3 [db4,f4] ~ bb5 [db2,bb5] eb2 [bb5,db6,f6]@2 [db4,f4] ~@2 [bb3,f6] db3 ~@2 [b2,a3,b3] ~@2, ~@4 db5@5 ~ ab5@3 ~@5 ab6@2 ~@4 ab6@2 ~@6, ~@6 [bb4,f5,ab5]@3 ~@6 ab3@2 ~@5 bb3@2 ~ [ab5,db6]@2 ~@5", // Gbsus2 Gb Bb7 Bbm7 Db Gb Bbm Db …
  AR: "[~ [bb2,bb3,gb4,ab4,db5,gb5] ~@2 [a2,a3,g4,g5] ~@3 [ab3,ab4,db5,f5,ab5]@3 ~ [gb2,a4,db5]@2 db3@2 [f2,f3,ab4,c5,eb5,ab5] ~ [a4,a5] [eb2,eb3] ~@2 [d2,d3] ~@2 [bb3,d4] d5 ~@2 [eb2,eb3,g4,a4,db5] ~@3 db4@2 ~ [ab2,ab3]@2 ab5 [gb4,c5,eb5]@3 ~ [db3,f4] ~@3 [ab1,ab2]@4 [db2,db5,ab5,db6]@9 ~@4, ~@4 db5@2 ~@2 ab2 ~@3 [gb3,e5,a5] ~@8 [bb4,d5,f5,bb5]@3 f5@3 ~@2 f5@6 [ab4,c5]@4 ~@25, ~@25 [ab3,ab4]@2 ~@4 bb5@4 f5@2 ~@6 db5@8 ~@13, ~@32 [bb3,f4]@2 ~@5 [ab2,ab3]@4 ~@8 [db1,f5]@3 ~@10]/2", // Gb A7 Db Gbm Fm7 A Eb D …
})).s("gm_piano").gain(0.56)

// chords · piano · "A.PIANO 1" · soft notes
const piano_soft = note(`<
  ~@2 A B@2 C D E F G H I J K L M ~ N O P Q R S T U V W X Y Z AA AB AC AD@2 AE AF AG@2 AH ~ AI AJ AK AL AM AN AO AP AQ
  AR AS AT AU AV AW AX AY AZ BA BB BC ~ BD BE BF BG BH BI BJ ~@2
>`.pickRestart({
  A: "bb4 ~@16 g3 ~@14",
  B: "[~@8 c5@4 eb3 [ab3,c4] ~ [c5,f5]@3 ~@7 b4@2 ~@2 [ab3,b3] ~@2 [f3,b3] ~@3 gb2 f2 ~@6 [eb3,ab4,c5] ~@19, ~@31 b4@3 ~@30]/2", // Ab F5 Abm Fdim Ab
  C: "~@3 eb3 ~@7 [eb3,ab3] ~ c5@3 ~@7 bb2 ~@8", D: "~@2 bb3 ~@6 ab3 db4 ~@6 a2 ~@4 bb2 ~@9",
  E: "~@8 eb3 ~@14 [c4,d4] [b3,e4] ~@7", F: "~@6 c5 ~@9 e5 ~@15", G: "~@9 b4 ~@8 d4 ~@13",
  H: "~@11 eb2 ~@13 [ab3,c5] ~@6", I: "~@16 [f3,ab3,b4] ~@15", J: "~@15 b3 ~@6 ab3 ~@9",
  K: "~@5 c4 ~@2 eb3 ~@4 ab4 ~@14 g3 ~@3", L: "~@11 c4 ~@10 bb2 ~@9", M: "~@9 [f3,b3] ~@6 f2 ~@7 c5 ~@6 db3",
  N: "~@27 gb3 ~@3 b2", O: "~@2 db4 ~@2 g5@2 ~@3 g3 ~@5 db5@2 ~@3 db3 ~@7 d2 ~@2", P: "~@14 b4@2 ~ c5@2 ~@5 db3 ~@7",
  Q: "~@4 d5 ~@10 db5 ~@6 [gb2,eb5] ~ [c2,eb2,eb5] ~@3 d4@2 ~@2, ~@27 c4@2 ~@3", // Ebm Cm
  R: "~@19 a3 ~@4 ab5 ~@2 e6 ~@2 [db6,f6]@2, ~@25 bb5@3 ~@4, ~@13 e5 ~@2", // Db
  S: "~@3 f4 ~@9 [db5,eb5]@5 ~@10 c6@2 eb2 ~, ~@13 g4@3 ~@16", T: "~@8 b4@2 ~@3 bb2 ~@18", U: "~@24 f4 ~@6 db3",
  V: "~@17 db6 ~@2 e4 ~@7 e4 ~@3", W: "~ db4 [g3,f4] ~@24 [db3,eb3] ~@4", X: "ab3 ~@26 eb5 ~@4",
  Y: "~@6 [eb2,db5] ~@2 g4 [c5,eb5,g5] ~@2 [eb3,ab3]@2 eb4@2 eb3 ~@2 a3 ~@11, ~@11 ab5@4 ~@17, ~@3 c5 ~@4", // Eb7 Cm Ab5
  Z: "~@4 [a3,b3] ~ eb3@2 bb5 ~ e6@2 ~@11 [a3,f6] ~@4 eb7@2 ~@2", AA: "~@11 c6@3 ~@8 [b4,eb5]@2 d4 ~ e5 ~@5",
  AB: "~@3 db5 ~@3 gb2 ~@9 a2 eb2 ~@2 eb5@2 ~ eb4@3 ~@5, ~@20 [eb4,ab4]@3 ~@9", AC: "~@7 gb4 ~@3 f5 ~@20",
  AD: "[~@4 f4@2 ~@9 c5@3 ~ [ab3,c4] eb3 ~ c5@3 ~@6 b4@2 ~@2 b3 ~ [b4,d5]@2 [f3,b3] ~@3 [f2,gb2] ~@7 c5@2 ~@8 bb1 ~@2, ~@25 eb3 ~@6]/2", // Ab Bm Fdim Gbmaj7
  AE: "~@9 [eb3,bb4] ~@22", AF: "bb3 g3 ~@2 db2 ~@3 ab3 ~@3 g5@3 [bb3,db4] ~@16, ~@11 db5@5 ~@16",
  AG: "[~@9 ab2 f5@4 [eb3,ab3,c4]@2 c5@3 ~@6 b4@4 [ab3,b3] ~@2 d4 [f3,ab3] ~@30, ~@9 c5@3 ~@19 b4@4 ~@29]/2", // Ab Abm Fm
  AH: "~@23 eb3 ~@8", AI: "~@26 c4 ~@5", AJ: "~@2 ab2@3 ~@18 ab5@2 f5 ~@3 c5 ~@2",
  AK: "~ bb3 ~@6 c5@2 ~ [bb4,gb5]@3 ~@3 c4 ~@3 g3 ~@10, ~@8 b4 ~@23", // Ebm
  AL: "~@2 f6 ~@4 [ab3,c4] ~@6 ab3@2 ~@5 [db4,db5] ~@10, ~@3 gb6 ~@12", AM: "~@4 c4 ~@8 b2 ~@3 e5 ~@14",
  AN: "~@2 c6@8 ~@7 f5@2 ~@5 f4 ~@7, ~@8 db5 ~@7", AO: "c4 ~@6 c4 ~@13 f6 ~@3 gb2 ~@3 c4 ~@2",
  AP: "~ bb2@3 [ab3,c4] ~@6 bb3 ~@10 db3 ~ gb4@3 ~@5", AQ: "~@31 ab2",
  AR: "~@5 c4 ~@6 f5 ~@5 [gb2,ab5] ~ c5@2 ~@2 bb5@2 ~@2 c4 ~@3", // Gbsus2
  AS: "~@3 db4 [db4,d4] ~@3 bb1 ~@9 c4 ab3 ~@6 c4 ~@2 eb2 ~@2", AT: "~@24 [b2,c3]@2 c6 ~@5", AU: "~@7 gb2 a3@11 ~@13",
  AV: "~@4 f5 ~ [gb2,gb5] ~ c4@2 ~@22", AW: "~@2 ab6@2 ~ c4 ~@4 bb2 ~@2 [ab3,c4] ~@5 f5@2 ~@2 c4 ~@3 b3@2 db5 ~@2",
  AX: "~@10 a4@2 ~@4 db5@3 ~@13",
  AY: "~@8 bb2@3 gb5@4 c4@2 eb5@2 [bb2,ab3] ~@3 [c4,gb5] ~@3 gb2 ~ [c6,gb6]@3, ~@11 c5@2 ~@2 ab3 ~@16", // Bb7 Cdim
  AZ: "~@2 gb6@4 ~@4 g3 ~@15 bb5@3 ~@2 db3, ~@25 eb2@3 ~@4", BA: "~@8 c5@3 ~@10 d5 ~@8 c3 ~",
  BB: "~@3 b5 ~@3 db3 ~@9 e4 ~@14",
  BC: "~@3 c4@2 ~@6 c4 bb5 ~@3 bb2 ~ c4 ~@3 ab5@3 ~ ab2 ~@3 ab2 ~, ~@17 eb6@2 ~@2 ab6@2 ~@9, ~@22 eb6 ~@9",
  BD: "~@31 gb3", BE: "~@19 bb2@2 ~ db6 ~@9, ~@18 bb5@3 gb6@5 ~@6", BF: "~@4 db7 ~@10 c4 ~@3 eb2 ~ db6@2 e4 ~@6 bb6 ~",
  BG: "~@5 g4 ~@26", BH: "~@21 db3 ~@10",
  BI: "ab5@2 ~@2 eb5 ~@6 eb5 ~@2 gb5@2 ~@2 c4 ~@6 c4 ~@6, ~@10 gb5@2 ~@12 eb6@3 ~@5",
  BJ: "~@5 g2 ~@9 [bb3,bb5] ~ db6@2 ~@7 c4 ~@5", // Bb
})).s("gm_piano").gain(0.32)

stack(piano, piano_soft)

More by Scott James