Strudelify

Peacherine Rag

Scott Joplin

KeyE♭ majorTempo100 bpm
0:00/0:00
// Peacherine Rag — Scott Joplin
// 100 bpm, 4/4, key D# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 106 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@3 B@3 C D@4 E@3 F@4 G H I@4 J@2 K@4 L@2 M@3 N O@4 P@2 Q R@2 S T@2 U V W X@3 Y@2 Z@2 AA@3 AB@3 AC@6 AD@3 AE@2 AF AG@8
  AH@3 AI@2 AJ AK AL AM@2 AN@2 AO AP@8 AQ
>`.pickRestart({
  A: "[~@12 eb5@4 [f3,f5]@4 [g3,g5]@3 ~@10 [bb2,bb4]@8 ~ f3@3 [g3,g5]@3 [ab3,ab5]@4 ~@18 [c3,c5]@4 [c3,c5]@7 [b2,b4]@3 [c3,c5]@3 d5@4 [eb3,eb5]@5, ~@23 f5@18 f5@4 ~@7 [g3,g5]@22 ~@22, ~@31 bb4@6 ~@11]/3", // F G Bb G Ab C B C …
  B: "[~ [bb2,bb4]@3 ~@5 bb4@12 g4@3 ab4@3 a4@4 ~@7 [eb4,g4,eb5]@7 [g4,d5]@6 g4@7 g4@3 ~@3 eb4 ~@6 bb2 ~@2 c5@3 [g3,bb3] ~@2 g4@3 [eb3,g4,bb4]@6 ~ [g3,bb3] ~@5, ~@31 bb4@14 bb2@2 ~@4 c5@2 ~@5 bb4@5 ~@5 d5@9 eb4@2 ~@10 eb4@2 ~@5, ~@61 [g4,eb5]@8 ~@8 bb4@6 ~@6 [g4,eb5]@7]/3", // Bb Eb G5 Gm Eb Gm Cm
  C: "[g4,d5]@6 ~ bb3@6 ab4@2 ~ [ab4,d5]@7 ~@3 bb2@2 ~ bb4@3, bb2@2 ~@4 [eb4,g4,c5]@7 bb4@5 ~@5 [ab4,c5]@9, ~@7 g3@3 ~@22", // G5 Abdim Cm Ab
  D: "[~@3 g4@3 ab4@6 ~ ab4@6 ab4@6 ~@7 ab4@3 ~@3 [bb3,d4] ~@14 f5@3 [f3,ab4,d5,ab5]@6 ~ [bb3,d5]@6 gb3@6 [gb3,c4,eb4,a4,eb5,a5]@6 eb5@6 ~@3 f5@2 ~ g4@3 ~@6 a4@3 ~@6 [bb3,g4,eb5]@6 g4@6 [bb3,eb4,g4,c5]@5, f4@6 ~@6 d5@7 c5@16 d5@9 bb3@3 bb4@9 ~@6 ab5@13 ~@18 g5 ~@5 ab4@5 ~ bb4@12 d5@11, ~@19 bb2@2 ~@4 [ab3,d4,bb4]@10 ab4@6 [ab4,c5]@16 ~@6 ab4@12 ~@12 [g4,eb5]@5 ~@4 g4@8 ~@24, ~@25 ab4@7 f3@6 ~@6 bb2@12 ~@61 bb2@2 ~@9, ~@26 bb3@11 ~ ab3@12 [ab3,bb3,d4,d5]@6 ~@7 d4@5 ~@13 [g3,bb3,eb4,bb4,bb5]@11 ~ [bb3,eb4,bb4,eb5]@11 ~@24]/4", // Bb Ddim Bb Gbdim Eb Cm7 Bb7 Ab …
  E: "[~ eb3@2 ~@4 [g3,bb3] ~@5 bb2 ~@8 g4@3 [g4,g5]@6 g5@6 g2 ~@5 [f4,d5,f5]@6 [c3,g4,c5] ~@18 c5@6 [f4,c5,eb5,f5]@6 [f4,c5,eb5,f5]@6 ~@6 [gb4,c5,eb5,gb5]@4, ~ bb4@5 ~@4 d5@15 ~@24 eb5@2 ~@4 c6@18 ~@13 a3@10, ~ g4 ~@2 [g4,eb5]@8 ~@4 c5@9 ~@6 g4@12 ~@16 d6@15 ~@12 [gb4,c5,eb5,gb5]@6 ~@4, ~@19 [bb3,bb4]@6 b2 ~@36 [g3,c4,eb4,eb6]@12 [ab2,ab3]@13 a2@9]/3", // Gm G Dm C5 F7 Cdim Cm Cdim …
  F: "[eb3@2 ~ [bb2,g4,eb5]@3 ~@5 [bb4,bb5]@3 [bb4,ab5]@6 [bb3,e4,e5]@3 ~@3 [eb4,a4,g5]@3 g5@3 ~@3 eb5@3 [bb3,d4]@6 [ab4,f5]@8 ~@4 eb4 ~@14 [gb4,a4]@3 ~ g4@3 ~@3 [g3,bb3,eb4,g4] ~@5 [gb4,d5]@6 [gb3,d4] ~@2 eb2 ~@2 [bb2,g3] ~@5 [g3,bb3,eb4]@3 ~@3 [bb1,bb2] ~@4 eb4 [g3,bb3] ~@2 eb2@2 [bb2,g3] ~@5, ~@2 bb3@6 [g3,eb4]@6 [c3,e5]@2 ~@16 [f3,eb4]@6 ~@6 [bb3,d4]@3 ~@15 eb4@7 ab4@6 bb4@19 ~@5 bb4@9 [g4,d5]@9 ~@2 g4@4 ~@5, ~@2 g5@2 ~@2 [g4,eb5,g5]@9 ~@5 bb4@10 ~@35 g4@9 ~@7 eb5@2 ~@10 [gb4,c5]@6 g4@2 ~ [g4,eb5]@7 ~@5 c5@4 ~@10, ~@9 bb3@6 ~@5 g5@6 ~@3 a4@9 [ab4,f5]@2 ~@23 [g3,bb3]@12 ~@41 bb4@3 ~@3 bb4@6, ~@68 [bb2,f4]@6 ~ eb2 ~@11 bb1 ~@40]/4", // Eb Bb Bb7 Bbdim Am7b5 Bb Db Gbm …
  G: "[g3,bb3,c4,eb4] ~@2 bb4@3 [eb3,d5]@2 ~ gb2@3 [eb3,gb4,c5]@2 ~@2 d3@2 [ab3,ab4,bb4]@3 [ab4,bb4,d5]@2 [ab3,bb3] ~@2 ab4@3 [bb1,bb2] ~@2, [g4,eb5]@6 [g4,bb4]@7 ~@5 d4@12 ~@2, ~@6 bb3 ~@5 a3 ~@2 f2@3 ~@8 c5@6", // Cm7 Ebmaj7 Cdim Absus2 Bb7 Absus2 Bb Cm …
  H: "~@3 [ab3,bb3,d4] ~@2 g4@3 ab4@6 [ab3,bb3,d4] ~@3 c5 [bb1,bb2] ~@5 [bb3,d4] ~@2 bb2@2 ~, bb4@2 bb4@2 ~@5 d3@2 ~@4 d5@4 ~ d5@2 ~@4 ab3@2 ~@4, ~ c5@2 f4@3 ~@3 f4@20 ~@3, ~@9 f2 ~@5 ab4@3 ~@2 ab4@6 bb4@6", // Bb7 Bb
  I: "[d3@2 ~@3 [ab3,bb3,d4] ~@2 f4@3 bb1 ~@4 [d4,f4] ab3 ~ bb3@2 ~ [f3,ab3,bb3,d5] ~@4 [ab3,bb3,f4] d5@2 ~ f2@2 [ab3,ab4,d5]@2 ~ [gb2,f5]@3 [eb3,a4,eb5,gb5,a5]@3 [g2,gb5]@2 ~ bb3 ~@4 eb4@3 eb4@3 g4@3 ~@5 [gb4,a4]@3 [eb2,eb3] ~@5 [bb3,g4]@3 ~ d5 ~ [gb4,d5]@6 [gb3,c4,d4] ~@2 [eb2,bb4]@2 [bb2,g3] ~@5 [g3,bb3,eb4] ~@4 [bb1,bb2] ~@2 c5@3 [g3,eb4,bb4] ~ g4@3 [g2,g4,g5] [f3,b4,d5] ~@4 [b3,d4,f4] ~@5 b2 ~@3, [f4,ab4]@7 ~@4 bb2@5 [bb3,d5]@2 ~@4 d4@2 ~ ab4@4 ~@4 gb3 ~@5 a3 ~@4 eb5@6 [bb3,g4,eb5]@6 [bb3,eb4,bb4,eb5,g5]@11 ~@6 [g3,eb4] ~@5 [bb1,bb2] ~@48, f2 ~@2 [bb4,d5]@5 [ab4,c5]@9 ~@5 ab5@8 ~@3 ab5@6 ~@5 bb5@17 ab4@5 ~ bb4@6 ~@17 bb4@6 ~@11 bb3@2 ~@19, ~@14 bb4@4 ~ f5@5 ~@6 f5@3 ~@11 bb4@9 f5@14 ~@6 eb5@4 ~@41 [d5,g5]@6 ~@4, ~@59 g4@8 g4@2 ~@16 [gb4,c5]@3 ~@2 g4@2 ~ [g4,eb5]@5 ~ [g4,d5]@9 ~@10 [g4,b4]@10]/4", // Bb7 Dm Bb7 Abdim Gbmaj7 Ebdim Gmaj7 Gbm …
  J: "[~@2 [g4,d5]@2 ~@3 [c3,g4,c5] ~@11 [c4,eb4,g4,eb5,eb6]@5 c5@6 ~ f4@5 [ab3,c4,eb4,f4,c5,eb5,f5]@6 [gb3,c5]@2 ~@4 [c4,eb4] ~ gb5@3 [bb2,g3,g4] ~@8 [bb4,bb5]@2, ~@2 f5@5 eb5@12 ~@23 gb5@6 c5@2 ~@3 [eb5,g5]@2 ~@9, ~@2 [b3,d4] ~@10 [g3,c6]@11 ~@6 ab2@2 ~@10 a2 ~@16 [g3,bb3,eb4]@5, ~@16 [d5,d6]@8 ~@6 [c5,eb5,f5]@6 ~@9 gb4@8 ~@3 [g4,eb5,g5]@8]/2", // G5 C5 Cm Fm7 Gbdim Cm Eb Bb …
  K: "[c2 e5@3 ~@2 [bb4,e5,g5]@6 [f2,g4,a4,c5,g5] ~@5 [a3,c4,eb4] ~@2 eb5@2 [bb2,ab4,f5] ~@5 f5@6 [eb3,eb4] ~@5 [bb2,bb3] ~@5 [eb2,eb3] ~@4 f3@2 ~@4 c4@6 [a3,c4,eb4,f4,a4,eb5,f5]@6 [g4,a4,c5,eb5,g5]@5 [eb4,f4] [a3,f5] ~@4 c3 a3@5 [a3,c4,eb4,f4,c5,f5,a5,c6]@6 [eb3,d6]@2 ~@4 c6 ~@5 [bb1,bb2] ~@5 [bb3,bb4,d5,bb5]@3 ~@3 d5@5 [f3,bb3,d4,g4] ~@5, [bb4,ab5]@6 [bb3,c4] ~@5 eb5@3 [g4,g5]@4 ~@16 [g4,bb4,eb5]@15 ~@43 a5@6 ~@17 a5@2 ~@4 g5@2 ~@4, ~@17 f4@2 ~@33 f2 ~@5 c3@12 f2 ~@22 f2 ~@17 [f3,d4] ~@5 a4@2 ~@9, ~@117 f2 ~@10]/4", // Edim F Adim Bb7 Eb Bb Eb F7 …
  L: "[[bb2,bb3,g5]@2 ~@3 d4 e5@2 ~@3 f2 ~@2 g5@3 [bb3,d5,f5] ~@5 c3 ~@5 [a3,c4,eb4,f4,eb5,a5,eb6]@5 [eb5,a5,eb6]@6 [a3,c4,eb4,d5] ~@5 d6@2 ~@3 [a3,c4] b5@2 ~@6 f6@3 [c4,f5], d5 ~@2 [d5,f5]@3 bb3 ~@2 [d5,f5]@8 ~@17 f2 ~@5 d6@5 ~ c3 ~@2 c6@4 ~@2 [a5,c6]@9, ~@40 a5@2 ~@4 [eb5,a5]@7 ~ eb5@9 ~, ~@57 f2@7]/2", // Eb Bb F7 Ebdim Adim Am F5 Dm …
  M: "[~@5 bb3@6 [f3,bb3,d4,d5,bb5,d6]@5 ~ [d5,f5]@5 ~ a3@5 [bb2,f5]@2 ~ bb5@3 [f3,bb3] ~@10 [f3,bb3,f5] ~@11 [a3,c4,eb4,a4,c5,eb5,f5]@5 ~ [g4,a4,c5,eb5]@5 [eb4,a4,f5] ~@6 c3 ~@5 [f3,a3,a5]@5 [a5,d6]@6 eb4 ~@3, ~@5 bb2@2 ~@9 d6@11 ~ d5@18 ~@5 c3@12 f2 ~@22 f2 ~@9, ~@17 f2 ~@4 [d4,d5,f5,c6]@6 c6@6 a5@2 ~ bb5@10 ~@15 g5@7 ~@11 [eb4,eb5,c6]@6 eb5@3 ~@7, ~@43 f6@4 ~@49]/3", // Bb Dm Bb5 F7 Am7b5 F7 F D5 …
  N: "~@2 [bb2,bb3]@3 ~@2 [bb4,d5,bb5]@6 [a4,d5]@5 [bb3,d4,g4,g5] f3 ~@4 [bb2,bb3,g4,d5]@2 ~ f5@3 [bb3,d4,e5]@2, ~@7 [f3,bb3,d4] ~@5 a5@2 ~@9 g5@7 ~, ~@13 f2 ~@16 db5 ~", // Bb D5 Gm Em7b5 Bb
  O: "[~@4 f2 ~@2 bb4@2 [bb3,d4,c5] ~@2 [d5,f5]@3 eb2@2 eb5@3 [eb2,eb3,g4,eb5,g5]@3 [a4,a5]@3 ~@5 eb2@2 ~@2 a2@2 [d2,d3,f5]@2 ~@3 [d2,d3,f4,f5]@3 ~@3 eb2 ~ f5@2 ~@4 g2@2 [c2,e4,bb4]@2 ~@4 [c2,c3] ~ [e4,bb4,d5]@3 [f2,f3,eb4,a4,c5]@2 ~ bb4@2 [a4,c5]@2 ~@4 d4@6 [d3,f3,bb3,f4] ~@5 [d4,f4] ~@9 eb5 [c4,e5] ~@5 [a3,eb4,f4,g4,f5] ~ f5@2 ~ [c3,a4,eb5]@3 ~@3 [a3,c4,eb4,f4,a4,eb5,f5] ~@5 f1 ~, ~ f5@8 ~@20 g5@4 ~ [bb4,eb5]@3 ~@2 d5@7 ~@9 bb4@3 d5 ~@39 [b2,b3]@6 ~@10 c2 ~@13, ~ d5@5 d5@3 eb5@2 ~@4 eb5 ~@13 g4@8 f4 ~@7 [g4,g5]@4 ~ f4@8 ~@3 [e4,bb4,d5]@5 ~@8 eb4@6 ~@12 [d3,f3,bb3]@9 g3@2 ~@25, ~@4 d3@6 ~@5 [eb3,g5]@5 ~@6 [f2,f3]@5 eb3 ~@15 eb3@5 ~ [d2,d3]@5 c3@5 ~@11 [f2,f3] ~@5 [bb2,bb4]@23 c3@2 ~@23, ~@100 c5@3 ~@6 [a4,eb5]@2 ~@3 g5@6 ~@8]/4", // Bb Dm Eb A Dm C7 C Em7b5 …
  P: "[~@3 f4 [a3,c4,eb4] ~@2 c6@2 [eb5,a5,d6]@6 [a3,c4,eb4,eb5,a5,c6] ~@5 [bb1,bb2] ~@4 [f3,bb3,d4] d5@2 ~@3 [f2,d3] ~@4 [bb3,g4,d5,g5]@2 ~ d5@2 bb1 ~@3 f4@2 [e4,db5,e5]@3 [f4,d5,f5]@3 [f2,d3] ~@2 [g4,d5,g5]@2 [f3,bb3,d4,f4,f5] d5 ~@3, ~@5 eb5@4 [f2,eb3]@2 ~@18 f5@2 [a4,d5,a5]@6 [f3,d4] ~@5 [bb2,g4,g5]@6 ~@15, ~@6 a5@3 ~@17 bb4@4 bb5@2 ~@10 d5@6 [f3,bb3,d4] ~@15, ~@45 f5@3 ~@16]/2", // Adim D Adim Bb Dm Gm Dbm Dm …
  Q: "~ [c2,c3] ~@5 [a3,c4,eb4,f4] ~@2 a5 ~@2 [f1,a5,c6] ~@2 a5@2 [a3,eb4,f4] ~@2 a5@2 ~@7 c4@2, ~@7 eb6@3 ~@8 [d5,d6]@2 ~@4 [f2,eb3,d5,a5,d6]@8, ~@7 eb5@2 ~@4 [eb5,eb6]@6 ~@10 [a3,eb4,b5]@2 ~", // C F7 F F7 D Dm Eb B7
  R: "[~@3 f2 ~@4 f5 [a3,c4,eb4] ~@4 [bb1,bb2] ~@5 [d5,f5,bb5,d6]@2 ~ bb5@2 ~@3 bb5@3 [c5,d5,c6]@2 ~ f5@2 bb1 ~@3 bb5@2 [f3,bb3,d4,a5] ~@2 f5@2 ~@3 f6@3 [f3,bb3,d4,f5] ~@2 g3@3 c3 ~ a4@3, c6@9 ~@27 f5@2 ~@7 bb5@9 ~@10, ~@3 eb3@7 ~@10 [f3,bb3,d4] ~@4 [f2,d3,f5,d6]@6 [f3,a3,f5] ~@15 [f2,d3]@6 ~@11, ~@6 f6@4 ~@27 [c5,d5,c6]@6 ~@21]/2", // Adim Bb Csus2 Bbmaj7 Bb Dm F Dm …
  S: "[a3,c4,eb4] ~@2 f5@2 ~ a4@5 [a3,c4,eb4,f4,a4,c5,eb5,f5] ~@4 a3@6 [a3,c4,eb4,f5] ~@2 c5@2 [d5,f5,a5,d6]@5, c5@2 ~@3 [c5,eb5,g5]@6 ~@13 [f5,a5,c6]@3 f2 ~@4, ~@6 f2 ~@9 c3 ~@10 eb3@2 ~@3", // Adim F7 Dm Cm F
  T: "[~ [a3,c4,eb4,f4,c5,f5,a5,c6] ~@4 [bb1,bb2] ~@5 [f3,bb3,d4] ~@2 f5@2 d3@2 ~ d5@3 [g3,bb3,d4] ~@2 d5@2 [bb1,g5] ~@5 [f3,bb3,d4,e4,db5,e5]@3 ~@2 [d2,d3] ~@8 [f4,f5]@2 [g4,g5]@2 ~ eb5@3 [eb2,eb3,g4,eb5,g5]@3 [f5,a5]@3 f3@2, ~@9 [bb4,bb5]@5 ~@3 [a4,a5]@6 g5@3 ~@5 [f4,f5]@6 [f4,f5]@11 ~@11 a4 ~@4, ~@17 f2 ~@5 [f3,g4]@2 ~@3 [bb2,g4]@8 ~ d5@5 d5@8 ~@14, ~@45 [f3,ab3,bb3,d4,eb5]@5 [eb2,eb3]@6 ~@6 f2 ~]/2", // F7 Bb Gm Eb Bb D F G …
  U: "~ g5@2 [eb2,eb3]@2 ~ [a2,bb4,eb5]@2 ~ d2@2 ~@3 [d2,d3,f4,f5]@3 [g4,g5]@3 ~@8 bb4@2 d5 e4, ~ g4@7 [d3,f4,f5]@2 ~ d5@6 ~@3 [eb2,eb3]@4 d3@2 ~@4 [c2,c3,bb4]@2, ~@22 [f4,f5]@3 d2@6 ~", // Eb Dm G Dm Eb C7 F
  V: "~@3 [c2,c3] ~@3 d5@2 [f2,f3,eb4]@2 ~ bb4@2 ~ [f2,f3] ~@5 [d4,bb4]@11, ~ [e4,bb4,d5]@4 ~ bb4@3 a4 ~@5 c5@6 [bb2,bb3] ~@10", // C F7 F Gm Em7b5 Bb
  W: "~ ab4@10 ~@2 ab4 [eb2,eb3] ~@5 [bb3,eb4,eb5] g3 ~@4 [gb4,d5]@6, ~@11 bb4@3 ~@18, ~@12 a4@2 g4@9 ~@3 bb1 ~@5", // Eb Eb5 D
  X: "[[gb4,c5]@3 [eb2,bb4]@2 ~ [bb2,g3] ~@4 [bb3,eb4] g3 ~ g4@3 [bb1,bb2] ~@2 c6@3 [bb3,c4,eb4,g4] ~@5 g3@5 [eb5,g5,bb5,eb6]@3 g2@3 [eb3,d5,g5,bb5,d6]@3 [gb2,bb5]@2 ~ [eb3,c5,gb5]@2 ~ d3@2 [d5,f5,ab5,bb5]@3 [d5,f5,ab5,bb5,d6]@3 [ab3,bb3,d4,f4] ~@2 [d5,f5,bb5,c6]@2 bb1 ~@5 [bb3,d4] ~@2 g4@3 [f2,d3] ~@4 [ab3,bb3,ab4] ~@5 [ab4,c5]@2 ~@4 [ab3,bb3,d4] ~@4, [gb3,d4] ~@4 c5@2 ~@7 d5@9 bb5@3 ~@19 c6@6 ~@9 [c5,ab5]@6 c5@2 ab3@2 ~@15 bb1 ~@10, ~@6 bb4@6 ~@16 [bb2,bb5]@6 [bb3,c4,eb4,g4] ~@5 bb3 ~@5 a3 ~@4 ab3 ~@13 bb4@2 bb4@2 ~@5 ab4@5 d5@4 ~@8 bb4@5, ~@6 g4@2 ~ [g4,eb5]@5 ~@12 [eb2,g5]@9 ~@13 f2@3 ~@11 bb2@6 f4@28]/3", // Gbdim Eb5 Eb Eb5 Bb Cm7 Eb Ebmaj7 …
  Y: "[~ [f4,ab4]@2 ~@3 [ab3,bb3,d4] ~@2 f4@3 ~@5 [ab3,d4,f4] ~@2 [bb3,f5]@3 [f3,ab3,bb3,d4,ab4,f5]@2 ~@4 [d5,f5]@5 [bb3,d4]@6 [gb3,eb4,a4,a5]@3 ~@2 [g3,bb4,eb5,bb5] ~@8 [f5,f6]@3 [eb4,g4,bb4,g5,eb6,g6] ~@2 g4@2 ab4@2, d3@2 ~ [f4,ab4]@4 ~@2 [ab4,c5]@8 [bb3,d5]@2 ~@9 ab4@7 ~@29, ~ f2 ~@2 d5@5 ~@3 [bb1,bb2]@6 ~@11 [ab3,f4]@2 ~@3 f3 ~@29, ~@15 bb4@4 ~@4 [d5,ab5]@5 ab5@12 eb5@5 ~@19, ~@29 [bb3,d4] ~@10 c4 ~@4 [bb3,eb4,g4]@6 [bb3,eb4,g4,eb5,eb6]@7 ~@6]/2", // Fm Bb7 Ddim Bb5 Bb7 Dm Bb Ebdim …
  Z: "[~@2 eb2@2 g4@6 [g3,bb3,eb4] ~@5 [gb4,d5]@5 [gb3,d4] ~@2 eb2@2 ~ [g3,g4] ~@4 [bb3,eb4] g3 ~@4 [bb1,bb2] ~@4 [g3,bb3,eb4] [c4,bb4] ~ g4@3 [b2,g4,d5,g5] ~@5 [b3,d4,f4] ~@4 g2 ~@3, ~ [gb4,a4]@3 bb4@12 ~@5 c5@6 bb4@5 ~@3 d5@6 c5@4 ~@19, ~@4 g3 ~@5 [g4,eb5]@3 ~@3 bb1 ~@4 gb4@3 ~@3 bb2@2 ~ [g4,eb5]@5 ~ g4@8 ~@11 [g4,d5,g5]@9]/2", // Eb D G Eb5 Bb Eb C7 G …
  AA: "[~@2 [b3,f4,g4,b4,d5] ~@4 c3 [g4,c5] ~@10 [eb4,g4,eb5,eb6]@5 c5@5 ~ f5@6 ~@3 eb3@2 ~ a2@2 ~@3 [a2,a3,gb4]@3 eb3@2 ~ [g4,eb5,g5]@3 ~@5 [bb4,bb5]@2 ~ [bb4,e5]@5 [bb4,e5,g5]@5 ~ [f2,f3,g4,a4,c5,g5] ~@5 [f3,a3] ~ eb5@3 [bb3,d4,ab4,f5]@2 ~ eb5@2 [ab4,f5]@5, ~@2 f5@5 ~ eb5@11 ~@11 eb5 ~@16 [c5,eb5,gb5]@6 ~@10 ab5@6 ~@6 eb5@3 ~@18, ~@13 [g3,c6]@11 ~@5 ab3@6 ~@6 [a3,gb4,c5,eb5,gb5]@3 ~@9 bb3@5 [g3,bb3,eb4]@5 ~ c2 ~@31, ~@13 eb4@5 c4@6 ~@5 ab2@2 ~@5 [ab2,ab3,f4,c5,eb5,f5]@6 ~@11 bb2 ~@10 c3@2 ~@3 [c4,e4] ~@8 [g4,c5,eb5,g5]@4 ~@9 d4 ~@4, ~@16 [d5,d6]@8 ~@6 f4@2 ~@24 [g4,eb5,g5]@7 ~@6 bb3@2 ~@9 eb4@2 ~@9 bb3@2 ~@3]/3", // G7 C5 Eb D Cm Bb Bbdim Edim …
  AB: "[~ eb4 eb3 ~@4 bb2@6 [eb2,eb3,eb4,g4,db5,eb5]@7 ~@2 eb3@2 ~ ab2 ~@4 [ab3,c4] ~@3 ab4@2 eb3@2 ~@4 [ab3,c4] ~@7 a4@2 a3 [a2,a4,c5]@2 [eb4,db5]@3 [f2,f3]@3 ~@2 f2@2 ~ a4@2 ~ [d3,d4,f4,ab4,c5]@5 ~ [d2,d3,d4,f4] ~@4 [bb1,bb2]@2 ~@3 [bb1,bb2] ~@2 f4@3 [f3,d4,f4,ab4,c5]@5, ~ [g4,eb5]@6 bb3 ~@16 eb5@6 eb5@4 ~@2 c5@8 ab4@8 ~@3 a4@2 ~@4 c5@8 ~@6 [ab4,bb4]@2 ~@6 bb4@4 ~@9, ~@24 [ab3,eb4]@2 ~@4 eb3@2 ~@4 eb2 ~@2 eb5@13 ~@44, ~@39 [eb4,ab4]@4 ~@9 eb4@2 ~@7 [eb4,a4]@4 ~@12 [d4,f4,ab4,c5]@6 ~@2 ab4@6 ~@5, ~@41 eb3@2 ~@4 [a2,eb4,c5]@6 ~@10 f3 ~@5 d2@3 ~@19 f2@3 ~@2]/3", // Eb7 Ab Am Eb7 F Dm7b5 Dm Bb …
  AC: "[~ [f2,f3,d4] ~@4 bb1@2 ~@3 bb2 bb1 ~ f4@2 ~ [eb1,eb2,f4] ~@4 [eb3,db4] g3 ~@4 g2 ~@4 [eb3,g3,db4] ~@5 db5@6 [eb3,db4] ~ f4@2 ~ bb2 ~@2 [f4,db5]@3 [eb3,db4] ~ f4@3 [ab2,ab3]@2 ~@4 [e4,c5]@3 ~@2 [eb2,eb3] ~@2 [ab4,c5]@3 [eb3,ab3,c4] ~@2 [f4,c5]@2 [ab2,ab3]@2 ~@4 [eb3,ab3,c4,e4,c5]@3 ~@2 [eb2,eb3]@6 [eb3,ab3,c4] ~@5 ab2 ~@4 [eb3,ab3]@2 ~@3 [eb2,eb3] ~@5 [eb3,c4] ~@2 ab4@2 ~ c5@2 a4@3 [a2,a3,eb4,c5]@2 ~ [eb4,a4,db5]@2 [g2,g3]@3 a4@3 f2@2 ~ a4@2 [d3,d4,f4,ab4]@6 [d2,d3,d4,f4,ab4,bb4]@3 ~@2 [bb1,bb2]@2 ~ bb4@3 [bb1,bb2] ~ f4@3 ~ [f2,f3]@3 ~@2 [f2,f3,d4,f4,ab4,bb4]@3 ~@8 [bb1,bb2] ~ f4@2, ~ bb4@3 ~@2 bb2@5 ab4@2 ~@4 eb4@11 bb4@6 ~@2 g4@10 ~@3 g4@9 ~@12 [f4,c5]@4 ~@18 [f4,c5]@9 ~@2 ab4@4 ~@7 ab4@4 ~@48 ab4@2 ~@3 [f4,c5]@8 ~@8 ab4@2 ~@3, ~ [f4,ab4]@2 ~ [d4,f4,ab4,c5]@5 bb4@4 ~@4 db5@5 ~@3 f4@5 ~ [eb4,f4]@8 eb4@18 ~@4 eb4@10 ~@12 eb4@9 ~@11 eb3@2 [eb4,eb5]@6 [eb4,eb5]@7 ~ [eb4,ab4,c5]@5 ~@34 [d4,f4,ab4,c5]@4 ~@9 d4@3 ~@6 [d4,f4,ab4,c5]@4 ~@8, ~@26 g4@5 db5@5 ~@3 eb3@2 ~@9 bb4@5 ~@6 c5@6 ~@16 c5@6 ~@15 c5@2 ~@10 c5@3 eb5@8 ~@14 c5@7 ~ c5@9 ~@13 ab4@5 ~@9 bb4@4 ~@3, ~@39 eb2 ~@65 ab3@2 ~@4 c4 ~@10 ab3@2 ~@3 [a2,a3,eb4,a4]@3 ~@14 f3 ~@4 d2@2 ~@31 [bb1,bb2]@5 ~@5]/6", // Dm Ebsus2 Eb7 Db Eb7 Ab C Eb …
  AD: "[~ [eb2,eb3] ~@5 [eb3,g3,bb3,db4] ~@4 [g2,g3] ~@4 db4 [eb3,bb3] ~ g4@3 [eb2,eb3] ~@2 g4@2 [eb3,bb3,db4] ~@2 g4@3 bb2 ~@2 g4@2 eb3 ~@4 [ab2,ab3] ~@5 eb3 ~@2 [f2,f3]@3 ~@2 [eb2,eb3]@2 [f2,f3] ~@2 [g2,g3]@2 ~@6 eb5@2 ~@4 eb4@5 eb3 eb2@3 eb2@2 [ab1,ab2] ~@2 ab5@3 [eb3,ab3,c4] ~, ~ db5@9 g4@4 ~ db5@14 ~@5 db5@7 ~@47 [eb5,eb6]@7 ~, ~ eb4@6 ~@2 f4@2 ~ bb4@16 ~@38 [ab2,ab3]@12 ~@18, ~@15 f4@4 ~@4 eb4@2 ~@3 f4@2 ~@6 db4@4 ~@2 [c4,ab4]@25 ~@10 f4@2 ~@15 c6@2]/3", // Eb Eb7 G Eb5 Eb Eb7 Ab F …
  AE: "[~@3 eb3@2 ~ c6@3 [eb3,ab3,eb5,ab5]@2 ~ c6@2 a2 a5@2 eb5@3 [a3,c4,eb4] ~@2 a5@2 f2 ~@5 [a3,c4,f4] ~@2 a5@2 ab5 [c5,d5]@2 ab5@3 [bb4,f5,ab5,bb5]@2 ~ c5@3 ~@2 bb5@3 [bb1,bb2] ~@2 f5@2 [f3,c5,d5,f5,ab5]@2 ~ ab5@3, ~ eb6@8 eb6@6 c6@5 [a5,c6]@2 ~ db6@8 ~@27 c6@6, ~ [eb5,ab5,c6]@5 ~@3 c4 ~@13 eb5@5 [eb5,a5,c6]@5 ~@3 [f5,c6]@2 ~@7 [f5,ab5,c6]@8 ab5@3 ~@8, ~@3 eb2 ~@21 f3@6 eb4@2 ~@4 [d2,d3] ~@4 [ab3,bb3,d4,f4] ~@5 [bb1,bb2]@5 ~@5 f2 ~@5]/2", // Ab5 Adim F Csus2 Bb7 Bb Dm7b5 Am …
  AF: "[ab3,f5,ab5,bb5]@3 ~@2 [bb1,bb2] ~@4 [bb3,d4,f4] ab3 ~ f5@3 g3@5 ~@4 [eb3,g6]@2 [bb2,g3,bb6]@3 [f6,bb6,db7]@2, [bb3,d4,c5,d5] ~@2 [c5,d5]@8 ab5@16 ~@5, ~@3 [f5,ab5,c6]@4 ~ bb5@4 ~ eb2@11 f6@2 ~@6, ~@16 [bb2,eb5,f5,db6]@11 ~@5, ~@21 [g3,bb3,db4,f4]@5 ~@6", // Bb7 Bb Eb Bbm Bb Csus2 Fm Bbm …
  AG: "[[g3,bb3]@2 ~@2 eb2@2 [eb5,g5]@5 [bb3,f4] [db4,e4] ~@2 [eb3,g5]@2 [bb2,g3]@2 ~@3 [g3,bb3,db4,f4] ~@3 eb3@2 [ab3,eb5]@2 ~ eb5@2 [c4,e4,e5,c6]@3 [f5,c6]@3 [f4,ab4]@2 ~@3 [eb4,ab4]@2 ~ [f5,c6]@3 [eb4,ab4,eb5,c6]@2 ~ ab4@2 c6@2 ~@6 ab4@3 [ab4,c5] ~@4 ab2 eb3 ~@4 [ab3,c4,eb4,f4] ~@2 c6@2 [eb3,ab5]@2 ~@3 [c4,eb4,f4] ~@3 [eb3,ab5]@2 [eb5,a5]@2 ~@4 c6@2 [a5,db6]@2 ~@6 [a3,c4,eb4,f4] ~@2 ab5@2 ~ [d3,ab5]@2 ~ ab5@2 [ab3,bb3,d4,f4,bb4,f5,ab5,bb5]@3 ~@2 [bb1,bb2] ~@2 bb5@3 [bb3,d4,f4] ~@2 [bb2,f5]@2 [d3,c5,d5,f5,c6]@2 ~@4 ab5@2 [c5,f5,ab5,c6]@3 [bb1,bb2] ~ bb5@3 [ab3,bb3]@2 ~@4 g3@5 ~@4 [eb3,g4]@2 [bb2,g3,bb4]@2 ~@6 [eb2,g5]@3 [bb2,g3]@2 ~ g5@2 [bb3,db4,f4] ~@2 [eb3,g5]@2 [bb2,g3] ~@5 [g3,db4]@5 [ab2,ab3] ~@5 eb3@2 ~@3 [f2,f3] ~@2 [eb2,eb3]@2 ~@3 [c2,c3] ~@2 [ab1,ab2]@6 ~@4 [ab1,ab2,ab5,c6,eb6,ab6] ~@5 eb4@6 g4@3 ~@3 [bb3,db4] ~@2 [ab4,c5]@2, [db4,f4] ~@2 g5@3 db6@11 bb5@8 ~@3 c6@5 ab4@5 ~ c4 ~@2 [ab5,c6]@4 ~@6 eb5@3 e5 ~@2 [f5,c6]@9 ~@3 c6@3 ~@9 eb6@3 ~@8 c6@6 ~@5 f3@6 ~@4 [f5,c6]@2 ~@7 [f5,ab5,c6]@4 ~@9 ab5@5 ~@11 ab5@14 f4@3 ~@2 [g4,db5]@9 eb5@6 ~@4 db5@3 [db5,g5]@9 ~@54, ~@6 [bb2,g3] ~@4 g3@2 ~ f5@3 ~@3 [f5,db6]@4 ~ g5@3 ab2 ~@15 c5 ~@5 [c4,f4] ~@4 [e4,ab4,c5]@5 [f4,c5]@6 eb4@2 ~ [eb3,ab5]@2 [ab5,eb6]@5 ~ [eb5,ab5,eb6]@3 ~@5 [eb5,ab5]@5 eb5@3 ~@3 eb5@4 ~ eb5@5 ~ [eb5,a5,c6]@4 ~@3 d5@9 ~@40 [g3,bb3,db4]@6 ~@3 [f4,bb4]@9 ~@4 f5@2 ~@3 db6@12 ~@54, ~@71 [ab3,eb5]@2 ~@9 eb2 ~@4 ab3@2 ~@4 [a2,f3] ~@4 [a3,c4,eb4,f4,a5]@2 ~@3 f2@6 ~@6 c5@8 [c5,d5]@8 [ab3,ab5]@3 ~@7 [ab3,bb3,d4,bb4,f5,bb5]@4 ~@7 [d4,f4] ~@5 [bb2,eb5,db6]@11 ~@5 [g3,bb3,db4]@7 ~@14 bb3@6 ~@6 eb2 ~@37 [bb2,g3]@5 ~@6, ~@115 d2 ~@20 f2 ~@18 [eb2,f5]@14 ~@27 f4 ~@4 [c5,ab5]@27 ~@20 [g4,bb4]@8]/8", // Gm Eb Bb5 Dbm Eb Gm7b5 Ab5 C …
  AH: "[~ eb2 ~@4 [bb3,db4,f4] ~@2 f5@2 [bb2,db5,eb5] g3 ~@4 [bb3,db4,f4] ~@5 [eb2,eb3] ~@5 [g3,db4] ~@5 ab2 ~@7 [bb4,db5]@2 ~ [eb2,eb3,c5]@2 ~@4 [eb3,c4] ~ [db5,f5]@3 [ab2,ab3,c5,eb5] ~@5 [ab3,c4] ~@4 eb3 eb2 ~@4 [eb3,c5]@3 ~@3 [db2,db3,db5] ~@4 ab3 db4 ~@2 db5@2 db2 ~@2 ab5@2, [bb4,db5]@6 g5@5 ~@6 db5@12 eb4@5 ab4@11 ~@18 [c5,eb5]@8 ~@3 eb5@6 f5@2 ~ [db5,f5]@4 ~@9, ~@17 eb5@6 ~@14 c5@8 ~ eb5@6 ab5@5 ~@31 f5@8, ~@40 [eb3,ab3,c4]@5 ~@29 [ab3,c4] ~@16 db3@5]/3", // Bbm Eb7 Bbm Eb Gdim Bbm Cm Db …
  AI: "[[e3,db4] ab3 ~ ab5@2 ~ [c5,ab5,c6]@6 [ab3,c4,eb4,c5,ab5,c6]@5 a2 ~@8 eb3@2 [bb2,g3,bb4]@2 ~@6 bb5@2 ~ bb2 ~@6 bb5@3 [eb3,eb4] ~@4 g2 ~@2 [bb2,bb3]@3 [g5,bb5,eb6]@2 ~@2, bb5@5 ~@15 [eb5,eb6]@8 bb5@8 ~@6 d5@7 g4@5 ~ g3@6 ~@3, [bb4,e5]@3 ~@3 [ab2,ab3]@2 ~@15 [gb3,c4,eb4,d5,a5,d6]@5 ~@5 [g3,bb3,eb4,c6]@5 ~@6 [ab3,bb3,d4,f4]@5 eb5@11 [eb3,eb5]@4, ~@25 [c5,c6]@2 ~@4 g5@8 ab5@11 ~@10 eb2 ~@3]/2", // Dbm Fm Ab Eb Bb Eb Bbdim Ab …
  AJ: "~@5 eb3 ~ [bb2,g3] ~@5 [bb3,db4] ~@2 [ab4,c5]@2 ~ [bb4,db5]@5 bb3 db4 ~ [db5,f5]@3 [bb2,g4,eb5] ~, ~@2 eb4@11 ~@6 eb2 ~@12, ~@7 g4@2 ~ [g4,bb4]@5 ~@9 [eb5,g5]@3 ~@5", // Eb Bbm Ab Bbm Db Eb Gm Eb
  AK: "~@4 [bb3,db4,f4] ~@5 [eb2,eb3] ~@4 [eb3,g3,db4] ~@3 eb3@2 [ab3,ab4]@2 ~@3 [eb3,ab3,c4] ~@2 [bb4,db5]@3, ~@4 eb5@6 ~@5 eb4@4 ~@2 ab2 ~@2 [eb4,ab4]@8, ~@6 c5 ~", // Bbm Eb Eb7 Ab Bbm Ab5
  AL: "[eb3,c5]@2 ~@4 [ab3,c4] ~ [db5,f5]@3 [ab2,ab3,c5,eb5] ~@5 [eb3,ab3,c4] ~@5 [c2,c3] ~@5 [ab3,c4] ~@2, eb5@6 ab5@5 ~@6 [c5,eb5]@11 [c5,eb5]@2 ~@2, eb2 ~@5 eb3@2 ~@24", // Cm Ab Db Ab C Ab Cm
  AM: "[~@2 [db5,f5]@2 ~@6 f5@3 ~@3 ab5@2 b3 [d3,f3,ab3] ~ f5@3 [eb2,eb3,eb5] ~@5 [eb3,ab3,c4,c5]@5 ~@3 eb5@2 ~ [e2,e3]@2 bb4@3 [f2,f3,d4,ab4]@6 [f2,f3,d4,ab4]@3 bb2@2 [eb3,db4,g4,bb4]@2 ~@3 g3 g2, ~@2 [db2,db3] ~@2 [db5,f5]@5 b4@9 ~@5 c5@2 ~@3 eb5@6 ~@5 c5@2 ~@18 [db4,g4,bb4]@4, ~@7 db4@5 ~@6 g5@2 ~@44, ~@8 [f3,ab3]@4 ~ [d2,d3]@6 ~@16 [eb2,eb3]@6 ~@16 eb2 ~@6]/2", // Db Ddim Eb Ab E Ddim Eb7 Db …
  AN: "[~@2 eb3@2 [c4,eb4,ab4] ~@5 [eb4,eb5]@2 [eb4,eb5]@3 [eb4,eb5]@3 [eb3,eb4,eb5]@2 a2 [f4,f5] ~ [eb3,gb4,gb5]@2 ~ [bb2,g4,db5,eb5,g5] ~@4 [bb3,f4] ~@2 [c5,c6]@2 [db5,db6] [bb1,bb2,bb5] ~@4 [g3,bb3,db4,f4,g5,db6,g6] ~@2 [eb2,f5,f6]@2 [bb2,g3,eb5,eb6] [bb5,db6] ~ eb5@3 [g3,bb3,db4,f4] ~@8 db4@2, ~ eb4@2 ~ [ab2,ab3]@11 [ab2,ab3]@5 a3@2 ~@4 bb3@5 db4@2 ~@20 [eb5,bb5]@2 ~ eb5@5 eb5@3, ~@29 [bb4,bb5]@4 ~@20 [db6,eb6]@11, ~@29 [g2,f3,bb5]@3]/2", // Ab Eb F Ebm Eb7 Bb5 C Db …
  AO: "[g3,bb3,db4,f4] ~@4 [ab1,ab4] bb1 ~@2 [c6,d6]@2 [ab3,c4,eb4,f4] ~@2 [db5,db6]@2 [eb3,eb5,c6,eb6]@2 ~@4 [eb4,f4,gb6,ab6] ~@2 [eb3,f5,db6]@2 [ab2,f3,eb5,c6] ~@4, eb5@5 [ab2,eb5,ab5]@6 ~@5 eb2 ~@15, ~@8 c5@3 ~@11 [ab3,c4,ab5]@2 f6@3 eb6@2 ~@3", // Gm7b5 Ab Csus2 Fm7 Db Cm Fm7 Db …
  AP: "[~ [c4,eb4,f4] ~@4 eb2 ~@2 eb5@3 [ab3,c4,eb4,f4] ~@2 db2@2 [f3,f5,f6] ~@2 [f5,db6,f6]@3 [ab3,db4,f4]@2 ~ [f5,db6,f6]@2 ~@3 [ab5,ab6]@2 [e3,ab3,db4] ~@3 [eb3,ab6,a6]@2 [ab6,c7]@5 [c4,f4,c6] ~@7 [eb6,eb7]@3 [gb3,c4,eb4,d6,a6,d7] ~@2 [eb3,c6,c7]@2 [bb2,g3] ~@2 g6@3 [g3,eb4,c7] ~ bb6@2 ~ [bb3,ab6]@2 ~@6 bb6@2 [eb3,eb4] ~@7 [bb2,bb3,bb5]@3 [g5,bb5]@2 ~@3 eb4@3 [eb3,eb4]@2 [bb2,g3] eb5@2 [bb4,eb5]@3 f4 ~@2 c5@2 db5@6 [bb3,eb5]@2 [db5,f5]@3 [bb1,bb2,g4,db5,eb5] ~@5 [g3,db4,f4] ~@13 eb3@2 [ab3,eb4,ab4]@3 ~@5 [bb4,db5]@3 [eb3,c5]@2 ~@6 [db5,f5]@3 [ab2,c5,eb5] f3 ~@4 [ab3,c4,eb4,f4] ~@5 ab2 ~@2 eb4@2 [ab3,c4]@2 ~ ab2@2 ~ [db5,f5]@3 ~@3 [db2,db3]@3 [f4,f5]@2 d2 ~@2 [ab4,ab5]@2 [ab3,b3,g4,d5,g5] [d3,f3] ~ [f4,f5]@3 [eb2,eb4,c5,eb5]@2 ~@4 [eb3,ab3,c4] ~@7 eb5@3 [e2,e3,c5]@2 bb4@3 [f2,f3,d4,ab4]@5 ~ [f2,f3]@2 ~ bb2@2 [eb3,db4,g4,bb4]@2 ~@4 [g2,g3]@2 ~ eb4, ~ [c6,eb6]@11 eb6@5 ~@16 [bb5,bb6]@2 ~@9 [ab6,c7]@11 ~@5 bb6@6 ~@15 eb6@5 ~@6 eb6 ~@20 c5@2 ~@4 g5@17 ~@5 [g3,bb3,eb4]@5 ~@5 [c4,eb4]@6 ~@6 [ab3,f4,ab5]@7 ~@4 c5@6 ab3@5 [eb4,f4] ~@5 f4 ~@2 [f4,db5,f5]@6 ~@19 eb4@12 ~@9 d4@2 ~@7 [db4,g4,bb4]@7, ~ eb5@8 ~@3 [eb5,c6]@3 ~@24 [ab3,c6]@2 ~@3 [ab3,eb4]@2 ~@14 bb5@2 ~@12 d6@8 g5@10 eb3@8 ~@2 g4@2 ~@4 [bb3,db4]@6 ~@5 [db4,f4] ~@10 [g4,db5,eb5]@16 ~@3 [ab4,c5]@8 eb5@11 ~@6 eb5@11 [ab4,c5,eb5]@6 ~@9 b4@9 ~@10 [c5,eb5]@5 ~@16 ab4@5 ~@11, ~ ab3@2 ~@3 eb3@6 ~@5 [ab2,db6]@2 ~@4 bb3 ~@4 [db2,db3]@6 ~@5 ab2 ~@10 a2@6 ~@10 bb3@2 ~@3 bb2 ~@4 [ab3,bb3,d4,f4]@6 ~@5 [g2,a2,g3,a3,eb6]@5 [eb2,eb5]@11 ~@10 eb2 ~@16 bb3@2 ~@3 [eb2,eb3]@10 ~ ab2 ~@10 eb2 ~@33 [db2,db3]@5 ~@6 d3@5 ~@6 eb3 ~@10 [eb2,eb3]@6 ~@16 eb2 ~@9]/8", // F7 Fm7 F Db Ab Dbm Ab F5 …
  AQ: "~@2 ab3@2 ~@5 [eb2,eb3]@8 [ab1,ab2,ab5,c6,eb6,ab6]@13 ~@2, ~ [c4,eb4,ab4]@8 ~@7, ~@2 ab2 ~@29", // Eb Ab
})).s("gm_piano").gain(0.56)

// chords · piano · "A.PIANO 1" · soft notes
const piano_soft = note(`<
  A@3 B@2 C D E ~@2 F G@2 ~ H I@2 J K L M N O ~ P@2 Q@2 R@2 S T U V W X Y ~@2 Z AA AB AC AD ~ AE AF AG ~ AH AI AJ AK AL
  ~ AM AN AO AP@2 AQ AR@2 AS AT AU AV AW AX ~@2 AY AZ BA BB ~@3 BC BD ~@3 BE ~ BF BG@2 BH BI BJ ~@3 BK BL BM BN@2 BO BP
  ~@2 BQ ~ BR
>`.pickRestart({
  A: "[~@12 eb3@4 ~@8 f3@18 ~@21 bb2@11 ~@13 d3@3 ~@6]/3",
  B: "[~@9 bb2@12 ~@18 [g3,bb3]@6 ~@7 [g3,bb3] ~@5 eb3@5 ~, ~@31 eb3@14 ~@6 eb4@2 ~@11]/2", C: "[g3,bb3] ~@3 g4@9 ~@19",
  D: "~@13 f3@6 d4 ab3@5 ~@7, ~@13 bb3@12 ~@7", E: "[ab3,bb3,d4]@6 ~@7 [ab3,bb3,d4]@7 ~@12, ~@6 f3@13 ~@13",
  F: "~@9 eb3@2 ~@4 [g3,eb4]@6 ~@7 g3@4", // Cm
  G: "[~@7 eb4 ~@2 g4@9 [g3,eb4]@6 ~@6 [g3,b3,f4] ~@12 g3@5 ~@7 c4@6 ~@2, ~@31 b4@18 ~@15, ~@43 [b3,g4]@5 ~@7 [g3,eb4]@6 ~@3]/2", // Cm G7 Em Cm
  H: "~@9 bb4@2 ~@9 c4@2 ~@5 c4@3 ~@2, ~@26 f3@3 ~@3",
  I: "[c4@6 ~@3 eb5@3 ~@12 g3 bb3 ~@38, ~@9 [eb3,eb5]@12 ~@11, ~@18 g4@15 ~@31]/2", J: "~@21 c4 ~@10",
  K: "~@4 g2@3 ~@5 db3 ~@8 bb3@2 ~@9", L: "~@9 bb4 ~@10 c5@6 ~@6", M: "~@28 d4 ~@3", N: "~@2 f5 ~@8 eb3@3 ~@18",
  O: "~@14 eb5@2 ~@7 eb3@3 c5 ~@5", P: "[~@2 f4 ~@10 [c4,eb4]@6 ~@12 ab3@2 ~@9 eb5@6 gb3 ~@15, ~@13 c5@11 ~@40]/2",
  Q: "[~ c3 ~@4 e4 ~@8 [a4,c5,eb5]@4 ~@5 d5 ~ eb5@3 [ab3,bb3,d4,d5] ~@34, ~@12 f3@7 ~@10 ab4@6 ~@29, ~@29 f3@2 ~@33]/2", // Adim Bb7
  R: "[~@12 [c4,c5,eb5] ~@16 eb5@6 [a3,c4,eb4,eb5,a5] ~@17 d3 ~@4 d5 ~@5]/2", // Cm Adim
  S: "~@6 f3 ~@4 d3@2 ~@4 [f3,d4] ~@14, ~@5 db5@2 ~@25", T: "~@8 f4 ~@2 a5@2 ~@6 eb4 ~@11 [a3,eb4,f4]",
  U: "~@23 f3@5 ~@4", V: "~@2 [g3,d4] ~@4 [f2,d3]@6 d4 ~@11 f4@6 ~", W: "~@5 [f3,a3,c5,eb5] ~@22 [f3,a3,eb5,a5,c6] ~@3",
  X: "~@5 bb3@2 ~@6 d3 ~@5 d5 ~@10 f3 ~", Y: "~@9 f3 ~@22", Z: "~@4 d5@3 ~@6 [bb3,c4] ~@18", AA: "~@15 f4 ~@16",
  AB: "~@5 gb3 ~@14 bb2 ~@11", AC: "~@19 db6 ~@9 b4@2 ~, ~@27 c6@4 ~", AD: "~ c5@3 ~@5 f4 ~@16 bb5@2 ~@4, ~@25 d5@6 ~",
  AE: "a4@5 ~@14 c5@3 f4 ~@9, f4 ~@31", AF: "~@12 d5@5 ~@12 e5 ~@2", AG: "~@28 a4@3 ~",
  AH: "~@9 d5 c5 ~@4 [eb4,a4]@7 ~@5 [f2,f3] ~@4", AI: "~ [bb1,d4]@6 ~@9, ~ bb2@13 ~@18, ~ bb4@10 ~@21",
  AJ: "~@12 c4 ~@19", AK: "~@14 db3 ~@2 ab2@2 ~@13", AL: "~@15 d4 ~@11 ab4 ~@4", AM: "~@3 ab3 ~@10 f4 ~@17",
  AN: "~@3 bb2@2 ~@15 d5@2 a3 ~@9, ~@19 c5@2 ~@11", AO: "~ c4 ~@21 b4@9",
  AP: "[~@2 g3 ~@10 c5@11 ~@9 eb5@3 ~@8 eb5@3 ~@17, ~@13 c4@5 ~@12 c5@6 ~@28]/2", AQ: "~@14 a4@3 ~@15",
  AR: "[~@28 c5@3 eb4@5 eb4 ~@27]/2", AS: "~@19 d4@3 ~@10", AT: "~@9 d4@3 ~@20", AU: "~@13 g3 ~@10 g3 ~@7",
  AV: "~@3 [eb3,ab3,c4]@4 ~@25", AW: "~@12 c5@3 ~@17", AX: "~@7 eb4@2 ~@7", AY: "~@18 eb2 ~@12 ab2", AZ: "~@28 ab3 ~@3",
  BA: "~@15 eb5 ~@4 [f4,eb5] ~@11", BB: "~@2 eb2@2 ~@4 f5@2 ~@12 bb5 ~ bb2@3 ~@3 bb3@2",
  BC: "~@10 c6@3 ~@6 c6@2 ~ eb6@7 ~@3, ~@19 eb5 ~ c6@5 ~@6", BD: "~@8 eb2 ~@7", BE: "~@5 db6 ~@26",
  BF: "~@20 ab3 ~@10 eb3", BG: "[~@22 f4 ~@8 ab4@2 ~@31, ~@15 bb4 ~@16]/2", BH: "~@2 c4@5 ~@13 db3 ~@11",
  BI: "~@19 eb3@2 ~@3 f4 ~@5 [g3,db5] ~", BJ: "~@4 [g4,db5]@7 ~@10 eb4 ~@10", BK: "~@5 gb3 ~@20 ab3 ~@5",
  BL: "~@27 e3@5, ~@25 bb2@7", BM: "~@9 d5@3 ~@20",
  BN: "[~@15 eb2@2 ~@4 db4@2 ~@6 eb2@5 ~@2 ab3@2 ~ bb2 ~@8 bb2@8 ~@8, ~@45 c6@10 ~@9]/2",
  BO: "~@23 bb2@2 ~@7, ~@5 db3@2 ~", BP: "~@7 ab4 ~@13 db4@2 ~@9", BQ: "~@5 eb2@3 ~@24", BR: "~@2 db3 ~@29",
})).s("gm_piano").gain(0.32)

stack(piano, piano_soft)

More by Scott Joplin