Strudelify

Let Me Call You Sweetheart

Leo Friedman

KeyE♭ majorTempo100 bpm
0:00/0:00
// Let Me Call You Sweetheart — Leo Friedman
// 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 58 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@3 C@2 D@2 E F@3 G H@8 I J@5 K@3 L@7 M@4 N@6 O@7 P@4>".pickRestart({
  A: "~@24 ab5@3 ~ eb6@2 ~ eb6, ~@14 ab2@7 [eb4,f4,ab5,f6] c4 f6@4 [c4,eb4,f4,ab4,eb5,ab5]@5, ~@15 eb3@15 [eb5,ab5]@2, ~@15 ab5 [c6,f6] [f5,ab5] f6 ab5 f5 ab3@11, ~ f3", // Fm7 Ab5 F5 Fm
  B: "[d5 d6 ~@2 d6@2 ~@9 g5@2 g6 g3@2 ~ eb5@2 [bb3,g4,bb4]@5 ~@4 [db2,f5]@2 ~ [ab2,f3]@2 ~@7 e5@2 [e3,d5]@2 ~@4 [eb4,g4,a4]@2 ~@7 a5@2 [c4,eb4,g4,a4,c5,g5,c6]@4 ~@2 [bb1,bb2] ~@6 ab5@2 ~@2 [f4,ab5]@5 [eb4,g5,c6,eb6]@4 ~@2 [ab3,eb4,f4]@5, gb3@17 [bb2,eb3,c6,eb6]@2 ~@10 [bb3,eb4,bb4]@6 ~@6 [ab3,db4]@5 ~@11 a3@9 ~@8 [ab3,f4,d5]@5 ~ [bb3,d4]@2 ~@3 [a3,g4]@3 ~@3 b5 ~@4, [a2,eb3,a5]@2 ~ d5@3 a4@4 c6@7 g5@17 ab5@10 c2 ~@7 [f2,c3] ~@7 g5@3 ~@5 d5@6 ~@4 bb5@7 ~@5 eb6@2 ~@4, ~@4 c6@4 d5@3 eb6 [eb4,a4,eb5,a5]@5 ~@11 g4@6 ~ b4@5 [f4,b4]@5 ~ bb4@5 ~ c5@5 g4@6 ~@5 [ab4,bb4]@11 d6@2 ~@8 f6@2 gb5@2 ~@3, ~@6 d5 d6@10 ~@6 [eb5,bb5]@11 ~ eb5@11 g5 ~@11 [eb4,c5]@5 ~@6 d4@2 ~@9 [ab3,d5] ~@15]/3", // Eb Db E7 Am7b5 Bb Fm Cm Fm7 …
  C: "[[eb4,b5]@2 ~@2 eb4 ~ f5@2 ~ c6@2 [ab3,bb4,bb5]@2 ~ a5@2 [ab3,ab4,ab5]@2 ~@4 [bb2,g3,g4]@3 g4@2 eb4@3 [eb4,eb5]@2 ~ eb5@2 eb5@2 ~ eb5@5 ~@4 [d4,d6]@2 [ab3,d4,f4] ~@2 [eb2,g5] ~ [bb2,g3,c6,g6] ~@7 [bb4,eb5]@2, gb5@4 ~ bb5@5 ~@11 g5@16 [c6,eb6]@11 ~ [d6,f6]@5 eb6@10, ~@5 bb4@2 ~@7 a4 ~@6 eb5@6 bb3@6 bb3@5 bb1 ~@5 c4@5 [bb3,f5]@2 ~@9 [bb3,eb4,g4,bb5]@4, ~@6 bb3@5 [f3,c4,d4] ~@4 bb2 ~@2 eb2@2 ~@11 [eb4,g4,bb4,bb5]@5 ~ ab5@11 ~@5 g5@5 ~ eb5@2 ~@2, ~@6 g4 ~@13 [gb4,gb5]@2 ~@5 g3@11 bb2@2 ~@3 [eb4,f4,eb5]@5 ~@11 bb4@2 g5@3]/2", // Abm Absus2 Ab Eb D Ddim Eb C7 …
  D: "[~ [bb3,eb4,bb4]@2 ~ a4@2 ~ [a4,eb5,g5,a5]@5 ~@6 [g3,b3,b4]@2 ~@4 ab2@2 ~@3 [f4,c5]@3 c5@2 ~@4 ab5@2 [g2,e3]@2 ~@11 c5 ~@2 [eb3,c5,f5,a5]@4 [c4,db4] [eb3,a3,d4] ~@2, ~ eb5@5 ~@6 bb4@2 ~@2 g5@4 ~@3 f5@11 [f4,ab4,f5]@6 e5@6 c5@5 [bb3,g5]@4 ~ [f2,c6] ~@7, ~ [c4,g4] ~@5 [eb3,g3]@2 ~@3 [bb3,eb4,eb5,g5,bb5]@6 b5@5 ~ [ab5,c6]@16 [bb5,c6]@15 ~@9, ~@13 g3@5 ~@11 ab3@11 ~@5 bb3@4 e5@6 ~@9, ~@29 eb4@6 [c4,eb4]@5 ~@5 e4@9 ~@7 eb4@2 ~]/2", // Eb5 Am7b5 G F5 C F7 Dbmaj7 D …
  E: "f4 ~ [a3,eb4,g4] ~@2 a4 ~ [f2,a4,c5] ~@2 d5@2 ~ [a3,c5,eb5] ~@2 [d5,f5]@2 [c4,eb4,a4] ~@2 f5@2 bb2@2 ~@4 [ab3,d4] ~@2, ~@7 eb3@2 ~@9 [eb5,g5]@2 ~@3 bb1 ~@4 [bb3,f4]@2 ~@2", // Am7b5 F Adim Dm Adim Abdim Eb Bb5
  F: "[~@2 [bb3,d5,ab5]@2 ~ [db5,db6]@2 ~ d5@5 ~@3 bb5@2 [ab3,c4,eb4] bb3 ~@2 f5 ~ [bb1,bb2] ~@9 [bb3,d4,ab4,d5,ab5]@4 bb5 ~ d2 ~@7 [a3,gb5]@2 ~@6 [bb2,g3]@2 ~@14 e2@2 ~@4 [e4,bb4]@3 ~@5 bb2@2 [f2,d3,ab4,bb4,d5] ~@2 c6 bb5 bb5@2 ~, [d5,ab5]@2 [d4,ab4] ~@5 d3@2 ~@3 [ab3,bb3,d4,f4,d5]@5 eb5@2 ~@4 f5@16 ~@5 [c4,d4]@5 [c4,gb4,gb5,d6]@4 [eb2,c6]@2 ~@6 [bb3,c4,eb4,g4]@5 [bb3,eb4,g4,eb5]@5 ~@6 g3@5 [bb3,db4,db5]@5 ~@8, ~ [bb5,d6]@3 ~@4 [ab5,bb5,d6]@10 [ab5,c6,eb6]@5 f6@2 ~@4 [d5,ab5] [bb5,d6] ab5 d5@2 ~@6 [c5,d5,gb5]@6 d5@5 [d4,d5]@5 [g5,bb5]@14 g5@18 [f5,bb5]@2 ~@6, ~@8 f2 ~@15 d6@5 [bb3,d4]@4 [bb5,d6]@6 ~ c6@13 db6@2 b5@2 ~@8 bb4@7 db5@6 [bb3,db4]@3 [e4,bb4]@7 ~@8, ~@24 c6@2 ~@3 [ab3,f4]@10 ~@6 gb3@10 ~ f5@13 f5@3 bb5@16 ~@5 c6 ~@2]/3", // Bb7 Db Ab Bb Bb7 D Eb Edim …
  G: "ab5@2 f5 ~@2 d5 ~@4 bb4 ~@2 a4 ~ ab4 ~@2 [bb2,ab3,f4] ~@2 [eb2,gb4]@2 g3@5 ~ g3@3, ~@23 g4@9, ~@23 bb2 ~@4 [bb3,eb4]@4", // Bb7 Ebm Eb5
  H: "[g4@2 bb4@3 bb4@2 ~ [bb1,bb2]@2 ~@4 ab3@2 [ab3,f4]@3 ~@3 [eb2,g4]@2 [bb2,g3,g4]@2 ~@4 [bb4,eb5]@3 bb4@2 bb4@2 ~ bb4@2 [g2,db3,f3]@2 ~@4 g5@3 g5@2 [eb5,g5,b5]@4 [eb3,ab5]@2 [ab2,f3]@2 ~@3 f4@3 [f4,ab5]@2 ~ ab5@3 ab5@2 c5@5 ~ [c4,c5]@5 [bb3,c4,g4,c5,g5,bb5]@4 ~@28 [ab4,c6]@5 f5 [c6,f6] ~@4 f4@3 ~@2 [c4,eb4,ab4,eb5,c6,eb6]@5 ~ [a2,d5,a5] ~@4 [a3,eb4,d5] ~@2 [gb4,c6]@2 [eb4,eb5,a5,eb6]@2 ~@2 [eb3,eb6]@2 [bb2,g3,g6] ~@5 [c4,eb4]@5 ~@5 ab4@6 ~@6 [e4,e5]@5 [f2,eb3]@2 ~@9 f3@4 d4@2 bb1 ~@5 [bb3,d4]@6 [ab3,bb3,ab4]@5 ~ g3@5 d5@5 ~ [a4,c5]@5 [d4,bb4] [bb3,ab4] ~@4 [ab3,c4]@6 [bb2,f4,ab4] ~@4 [eb2,g3], ~@2 [bb3,c4,eb4,g4]@5 c5@16 ~@17 [a4,a5]@11 ~@6 ab5@8 ~@2 [eb4,f4,ab4,c5]@5 ~ [g5,bb5]@6 e4@10 f6@3 ab3@11 f6@2 [eb6,eb7]@3 c7@3 ab6@10 ~@3 f5@2 f5@11 ~@3 [d5,a5]@3 [gb4,a5]@2 ~@3 [c4,gb4,a4] ~@10 [g4,bb4]@6 ~@3 e5@8 e4@5 [bb3,g4,db5,g5]@5 ~@7 [a3,c4,eb4]@11 ~ ab4@11 ~@5 [eb4,g4,bb4]@11 ~@24, ~@7 eb4@6 [f3,c4,eb4,ab4]@11 ~@6 [bb3,eb4,g5,bb5]@5 [bb3,eb4,g4]@5 ~@11 [b3,db4,f4] ~@5 c5@5 [c4,eb4,c5]@6 c4@5 g2 ~@4 bb3@6 ~@6 c3@31 f3@16 ~ [eb3,gb3]@2 ~@25 [bb3,eb4,g4,bb4]@5 [bb3,db5]@9 c4@8 [g4,a4]@12 ~@6 bb4@16 ~@23 a4@2 ~@10, ~@8 eb5@16 [eb5,g5]@6 ~@7 bb5@3 [eb5,g5]@5 ~@12 c6@16 c6@15 ~ c6@6 f6 eb4 ab6@3 [f4,c7]@3 f7@18 ~@4 f6@12 ~@2 d6@2 c6@3 ~@10 [g5,eb6]@2 ~@3 [eb5,g5,bb5]@11 [bb4,ab5]@17 c5@17 d5@17 eb5@5 ~@30, ~@8 ab4@5 ~@6 [ab3,bb3,d4,f4,bb4,d5,f5]@5 ~@6 g3@10 ~@6 [g3,bb3,db4,f4,bb4,eb5,bb5]@5 [g3,b4]@2 ~@9 ab3@10 ~ e3@2 ~@3 g3@10 ~ [f2,f5]@24 f6@7 ~ ab2@2 ~@3 c6 eb4@3 f4@7 ~@5 d6@2 ~@26 c3@2 ~@4 [g3,ab4]@11 ~@17 bb2@2 ~@27 [gb3,eb4]@2 ~@21]/8", // Bb Db Eb Eb5 Gm7b5 Ebaug Ab5 Db …
  I: "~@5 eb4@6 bb3@5 [bb1,c4] eb4 ~@2 c4@7 [d4,f4]@5, ~@5 g4@11 ~@2 c4@2 ~@12, ~@19 eb4@8 ~@5", // Bbsus2 Dm
  J: "[~ g4@2 ~@10 [g3,bb4]@5 a3@6 [g3,bb3]@6 b3@5 c4@6 ~@3 eb4@3 [c4,ab4,c5]@5 ~ e3@5 ~@6 [c4,g4,bb4,c5]@6 [f2,a3,c4]@2 ~@20 f5@5 ~@3 [g4,eb5]@3 [bb1,bb2]@2 ~@7 bb4@2 ~ [e3,bb4]@5 ~ ab3@3 ~@5 [c4,ab4]@3 [ab3,ab4,c5,eb5]@6 [bb2,c5,d5,f5]@2 ~@10 [ab3,bb3,d4]@5 ~ [d2,a2]@2 ~@2, eb4@19 ~@16 ab3@2 ~@7 ab3@9 g2@17 ~@8 a4@11 [bb4,g5]@8 [g4,eb5] c4 f5@4 bb4@6 bb3@5 [bb3,db4,e4,g4,db5]@6 f4@6 ~@6 [eb4,g4]@2 ~@26, ~ eb2 ~@5 [bb2,bb3]@12 ~@11 eb2 ~@4 ab1 ~@16 bb3@6 g3@11 ~ eb3@6 eb3@8 f5@8 ~@5 eb4@6 ~@5 f4@12 ab4@9 ~@9 ab4@6 ~@11 d5@2 ~@3, ~@12 g4@7 ~@33 c4@9 [bb3,e4]@9 ~@6 f4@5 eb4@11 a4@11 [ab4,d5]@17 [bb4,d5]@12 ~@12 bb4@12 c5@4, ~@81 c5@5 [f2,c5,a5]@17 ~@6 [f3,ab3,d4]@11 bb2@2 ~@4 [f3,bb3,d4,f4]@6 [g3,c4] ~@5 ab3@12 ~@10]/5", // Gm Fm C7 F Cm Bb Edim Fm …
  K: "[~@14 [eb3,bb3]@3 c5@2 ~@6 bb3@3 g4@2 ~ e3@2 ~@8 bb3@3 [bb3,g4]@2 ~ f4@2 ~ c5@2 ~@3 f4@2 ~@3 d4@2 ~@3 d4@2 ~ c4@2 ~@3 [bb2,ab3]@6 ~@11 [g3,bb3]@6, ~@8 c4@4 b4@2 g4@6 ~@10 db4@6 ~@10 d4@14 ~@2 c4@2 ~@7 bb3@8 ~@5 bb2@12, ~@10 db5@3 ~@34 f3@6 ~@2 ab4@8 ~@24 eb3@9, ~@11 c5@2 bb4@6 bb4@11 [g4,bb4]@3 ~@13 [ab4,bb4]@2 ~@4 [ab3,bb4]@10 ab3@5 ~@12 g3@11 ~@6, ~@57 [bb3,f4]@5 ~ bb2@7 ~@9 eb2@17]/3", // Eb5 Eb Bb7 Gm Absus2 Bb5
  L: "[[bb2,ab3,eb4]@5 ~ f3 ~@4 gb4@5 ~ [eb2,c4,eb4]@2 ~@10 [g3,bb3,eb4]@5 ~ [a2,gb3,d4,gb4]@5 ~ [g3,g4]@5 [ab3,d4,ab4,b4]@6 [ab2,eb3]@2 ~@13 bb4@2 [e4,g4]@6 [g3,e4,g4,b4]@4 e4@2 [bb3,e4,g4,bb4] ~@4 ab4@4 ab3@2 ~ eb4@5 [eb4,ab4,c5]@6 ~ eb4@5 ab4@5 ~@4 eb3@2 [ab2,f3]@2 ~@4 [c4,eb4,f4]@4 c5@2 [c4,eb4,f4,ab4,c5,eb5]@6 [a2,eb3,gb3]@2 ~@3 [c4,eb4]@4 a3@2 [a3,c4,eb4,gb4,c5,eb5]@5 bb1 bb2@2 ~@3 [bb3,eb4,g4]@5 ~@4 db5 ~ db5@5 ~@6 bb3@4 ~@12 [a3,eb4,g4,a4,c5,f5] c4 ~@4 bb1 ~@4 d5@2 ~@6 eb4@2 [eb5,g5] [eb4,g4]@3, c4@3 ~@2 [c4,d4]@6 a2@2 ~@4 bb2@17 a4@6 ~ bb2@2 ~@9 c5@6 [eb3,c5,ab5,c6]@11 e3@2 ~@21 ab4@6 [c4,f4]@12 c5@11 eb5@12 ~@6 d5@16 [eb5,g5]@16 ab5@16 ~@3 c4@2 g4@2 a4 c5 eb5@4 ~@8 ab4@2 [ab3,bb3]@2 d5 ab5 bb5 [ab3,bb3,d4,f4,d5,d6]@5 bb3@4, ~@5 f4@2 ~@4 d2 ~@5 g4@6 [g4,bb4]@12 ~@5 [db4,bb4]@6 ~@6 ab4@17 [bb4,c5]@12 c5@2 ~@3 f5@35 f5@18 ~@31 ab4@2 ab4@15 eb3@14 ~@4 bb2@15 ~@4, ~@63 [ab3,eb4,f4]@5 ~ g2 ~@16 f2@2 ~@5 ab3@17 ~@6 [bb3,ab4]@5 f4@6 ab3@12 ~@5 gb3@11 ~@6 [g3,bb4]@10 e5@7 [g3,c4,e4,g4,db5,e5,g5]@10 ~ a3@9 g5@3 ~@8 bb4@11 [bb5,eb6]@2 ~@2, ~@64 c4@5 ~@17 c5@12 ~@6 [bb3,g4,ab4]@6 c4@2 ~@3 g4@6 c5@9 ~@9 [gb4,c5]@11 ~@5 g4@6 ~@6 [bb3,eb4,g4]@5 c1 ~@16 f2@2 eb4@8 ~@8 d4@3 f3@10 ~@4]/7", // Ebsus4 Cm Eb D G Abdim Ab5 Em …
  M: "[~@5 [d5,d6]@2 [a3,c4,eb4,gb4,c5,gb5,c6]@3 d6 ~ [ab3,d5,ab5]@2 ~@3 [c3,gb3,a3,a4,a5]@3 ~@3 [bb2,ab4,d5,f5]@2 ~ g4 ~ [eb1,eb5,g5] ~ [eb5,g5]@2 ~@2 [g4,eb5]@2 ~ eb5@2 ~@3 eb5 ~@2 eb6 [eb5,ab5]@2 ~@9 [d6,f6] g5 [eb1,eb2] ~@7 [bb4,eb5]@2 ~@2 [g5,bb5]@2 ~ [g5,bb5] [g1,a4] [g2,d5] ~@8 [g5,bb5] [g3,b3,db4,f4,b4] ~@3 b5 [ab1,c5,f5] ~@3 c6@2 ~ c6@2 ~@6 c6 g2 c5 ~@4 [c5,e5]@2 ~@4 c5@2 f5 [a5,c6] [c5,f5] a5 c6 ~ a5, f6@7 ~@5 [d4,f4,bb5] ~@4 [d5,gb5]@5 ~ ab5@5 ~ g4@3 [g4,eb5]@2 bb2@5 [bb4,eb5] bb5 bb4@2 eb5@2 ~@4 [ab3,f4]@4 [f5,bb5] [ab3,bb3,d4,f4,d6] f6@2 ~@3 [eb6,g6]@15 ~@2 [ab5,a5]@4 [bb4,eb5] [g5,bb5] bb4@3 ~@3 [b4,eb5]@2 ~@2 c6@2 ~@2 [c5,f5]@3 [c5,f5]@2 c5@2 c6@2 bb5@5 bb5@3 ~@2 [c5,e5]@3 ~@2 c5@2 ~@3 [c5,f5]@2, ~@2 [bb3,eb4,g4,eb5,eb6]@5 ~@5 bb3@5 ~@6 [f3,ab3] ~@4 eb2@11 [g3,bb3,eb4]@5 [bb1,bb2,ab5]@2 ~@3 [eb5,ab5]@2 [eb5,ab5]@5 [f5,bb5]@3 ~@2 g5@4 [bb4,eb5] [g5,bb5]@3 [g5,bb5] [bb4,eb5]@3 [bb4,eb5]@3 ~ gb5@2 gb5@5 eb5@2 eb5@2 [g5,b5]@3 ~ ab5@7 ~@2 c6@2 f5@2 [c5,f5]@2 ~@2 c6@3 c6@3 c6@2 [bb5,c6]@5 ~@6, ~@33 g5@2 ~ g5@8 ~ c6@2 ~ [c6,eb6]@2 [c6,eb6]@8 ~@7 [bb3,eb4]@5 [bb3,eb4,g4]@5 ~@3 a4@8 ~@8 [c5,f5]@3 [c4,eb4]@5 [c4,eb4,ab4]@5 ~@3 [c5,e5]@3 [bb3,e4]@5 [bb3,c4,e4,g4,e5]@5 ~@5, ~@34 g3@3 g4@7 ~@5 [c4,eb4]@9 ~@6 g3@11 ~@5 g5 [g3,bb3,db4,f4]@5 ~@5 ab2@2 ~@4 ab3@10 [e3,e5]@2 ~@4 g3@10 [f2,eb3]@2 ~@3]/4", // D Adim Abdim Gbdim Bb7 Eb Cm Ab5 …
  N: "[~@3 c5@2 ~@8 [a5,c6]@2 ~@9 [a5,c6]@2 ~ [ab5,bb5] [d5,d6] ~ bb5 [d5,ab5]@2 ~@8 [db5,g5]@2 [bb5,db6] [bb1,d5] d6 ~@11 [eb5,a5]@2 f5 bb5 [d6,f6] ~@12 [d2,d5]@2 [gb3,d5,gb5,a5]@5 ~@6 [c4,d4,gb4,c5,c6]@4 [eb2,b4,b5]@2 [g3,bb4]@3 ~@2 [f4,g4,eb5]@4 [eb4,c5,g5,c6]@2 [bb3,c4,eb4,g4] ~@2 [ab2,b2,c5,c6]@2 [e2,bb2,d3,bb4]@2 ~@3 [g3,bb3,db4,bb4,g5,bb5]@4 ~@2 [bb3,db4]@2 ~ [bb2,c6]@2 [c5,d5]@5 bb3@3 ~@6 ab6@2 [bb1,bb2,d6,f6,ab6,bb6]@5 ~ [a3,c4,gb4,eb5,gb5]@3 ~@2 [ab3,bb3,ab4,d5,f5,ab5]@2 ~ bb2 bb4 ~ [g4,bb4]@2 ~@3 [eb4,bb4]@3 [eb4,bb4]@2 ~@4 eb5 ~ [ab5,c6]@3 ~@5 f5@2 ~@3 [eb2,g5]@2 g6 [bb2,g3,eb6]@2, ~ eb3@25 d5@2 ~ ab5@2 ~@2 [bb5,d6]@2 d6@4 [db5,g5] [bb5,db6]@3 ~@5 d6@3 d6@9 ~@2 f5@2 f5@8 [d5,ab5] [bb5,d6]@3 [c5,c6]@6 [d4,a5]@3 a3 db5@7 bb2 ~@15 c3 ~@15 d3@2 ~@3 [ab3,f4,c5,d5]@17 ~@10 [eb2,bb2,eb3]@16 ~ bb2@2 ~@3 [c4,eb4,eb5,ab5]@10 ~@3, ~ c4@5 c5 f5 a5 [c5,f5]@2 c6 [a3,c4,eb4]@4 [a5,c6] c5 c4@10 ~@6 [ab3,d4,f4]@10 ~@5 [ab3,f4]@4 a3 [c6,eb6] [a3,eb4,gb4]@5 [bb1,bb2]@2 ~ d6@3 f3@11 ~@4 [c4,gb5]@4 [gb5,db6]@8 [g5,bb5]@9 ~@7 [g5,bb5]@4 c6@5 ~ bb5@5 ~ [ab5,bb5]@23 ~@9 eb5@5 [eb5,g5]@6 eb5 g5@5 bb1 ~@17, ~ [c5,f5]@3 ~@2 f4@6 [c5,f5]@3 [c5,f5]@2 f4 [a3,eb4,f5] [a5,c6] [c5,f5] a5 c6 [f3,a3,eb4,c5,f5]@5 [bb1,bb2]@2 ~@4 bb3@4 bb5 [g3,bb3,db4,e4,eb5]@5 [bb2,ab5]@2 ~@4 [bb3,d4]@10 ~@3 f6@13 ~@5 d5@12 eb5@5 ~@21 [bb4,g5]@3 ~@8 d4@4 d6@2 f6@5 ~@5 [a4,a5]@3 ~@6 g4@2 g5@2 ~ g5@2 ~ [bb3,g4]@5 [bb3,eb4,g4,bb4,bb5]@5 eb6@5 [c6,eb6]@11 g5@3, ~@2 a5@3 a5 [a3,eb4]@4 a5@2 g4@16 ~@2 d6@3 ~ [d5,ab5]@2 [d5,ab5]@8 ~@3 [d5,ab5]@2 [d5,ab5]@3 [d5,ab5]@3 [eb5,a5] [c6,eb6]@4 ~@2 bb5@4 [ab3,bb3,d4,d5,d6] ab5 d6 [d5,ab5] [bb5,d6] [ab3,bb3,d4,f4]@5 a2@3 ~@3 d6@11 ~@3 bb4@7 ~ [bb4,g5,bb5]@3 ~@7 e4@3 ~ [e4,c6]@2 [e4,g4] ~@4 f2 ~@7 bb3@3 [bb3,d4,ab4]@11 eb4@5 [d4,f4] ~@8 [g4,bb4]@2 g3@10 eb5@2 ~@2 [eb5,ab5]@2 [ab3,f4]@5 [ab3,bb3,d4,f4,f5,bb5,d6,f6]@5 ~@3]/6", // Am Absus2 D Ddim Dbdim Bbm Bb Ebdim …
  O: "[~@4 [g5,bb5]@2 ~@2 bb4@3 ~ db3@2 [g2,f3,g3]@2 ~@4 db4@4 ~ [g3,b3,db4,b4]@3 ~ eb3 [ab2,c5,ab5] ~ [c5,ab5]@2 ~@3 [c5,ab5]@2 ~@2 [c4,eb4,ab4]@2 ~ c5 e5 ~@5 c6 ~@10 f2@2 ~ ab3@2 ~@6 f5 ~@2 c6@2 ~@2 f6 f6@2 ~@5 ab7 ~@20 [c4,eb4,f4,ab4,eb5,c6,eb6]@5 a5 d6 [a2,d5,a5]@2 ~ [d5,a5]@2 ~@7 [c4,eb4,gb4,a4,eb5,a5,eb6]@5 [g5,eb6]@2 bb1 g5@5 ~@4 [g5,bb5]@2 ~@6 b4@3 [db2,ab2]@3 ~@8 b4@4 [e5,g5]@2 ~@2 e3@4 f1 ~@10 c6 ~@4 [f4,a4]@3 ~@4 [d4,ab4]@3 ~@4 d5 ~@3 d6 d6@2 ~@2 [d4,f4,ab4,bb4,d6,d7]@6, ~@3 g3@8 bb4@2 ~ [a4,a5]@11 [eb5,b5]@4 ~ eb3@2 ~@3 eb4@5 ~@6 [e5,bb5,c6] c5 [bb5,c6]@2 bb5@2 [bb3,c4,e4] e5 c5@3 [bb3,c4,e4,g4]@3 ab5@2 ab5@8 c5 f4@2 [ab4,c5]@10 [ab6,c7] f6 c7@2 f7@8 f5@20 ~@6 a3@4 [gb4,a5] c6@8 ~@8 [bb3,eb4]@7 [bb3,eb4,g4,bb4,eb5]@7 ~@7 ab3@7 ~ c2 ~@13 c4@9 [eb4,c5,c6,a6,c7]@3 ~@5 bb2@11 bb5@3 [ab6,bb6]@8, ~@3 [bb3,eb4]@4 [g5,bb5]@6 ~ [eb5,g5]@5 ~@5 g5@5 ~@2 c6@2 ~ c6@2 [ab3,c4]@7 ~@4 e3@15 c3@13 f5@3 [f5,ab5]@18 ~ f6@6 [c4,eb4,f4]@3 eb6@3 ~@6 c6@2 ~ [c6,d6]@3 d6 [gb4,d5] d6@11 ~ [eb6,g6]@2 ~@5 eb5@2 [bb4,eb5]@3 [bb4,eb5]@2 ~@7 [eb5,f5,ab5]@15 ~@8 [eb4,g4,c5]@6 eb4@2 g4@11 ~@4 [bb4,d5]@6 [ab3,bb3]@16, ~@3 [bb4,eb5]@3 [bb4,eb5]@2 [bb3,c4,eb4,g4,eb5]@5 ~@6 [g3,bb3,eb4,bb4,eb5,g5,bb5]@6 f4 ~@4 f3@12 ~@4 g2@13 f5@2 f6@2 ~@4 ab3@12 c6@17 c6@11 f6@8 ~@7 [c4,eb4]@3 d5@9 ~@7 bb4@2 [g5,bb5]@2 ~@3 bb5@8 b4@11 ~@12 a4@9 f5 g5 a5@8 ~@4 bb1 ~@2 d4@3 bb4@2 d5@14, ~@35 [c5,ab5] [f4,c6]@3 c6@4 ~@2 g5@4 [c5,e5]@2 [c5,e5] [g3,c6]@9 ~ f5@6 eb4@28 ab2@2 ~@5 ab3@12 ~ [eb3,gb3]@19 ~ bb2@2 ~@4 g3@14 ~@4 f3@11 [g2,bb4]@8 ~@5 a3@7 c6 f6 g6@5 ~@8 ab4@6 ab5@12]/7", // Gm G7 Dbm7b5 Ab Fm Ab Fm7 D5 …
  P: "[~ ab5 ~ eb6 ~@15 eb5@4 eb5@3 [g2,eb5]@3 ~ [bb3,eb5]@5 eb4@4 eb4@5 ~@14 g3@2 ~@13 g6 ~@3 [g7,bb7]@36 ~@15, ~ eb5@2 [ab1,ab2]@23 ~@9 f2@2 ~@2 eb3@14 ~ [eb4,g4]@6 bb3@3 eb4@13 eb7@37 ~@15, ~@2 c6@2 ab5@2 [eb5,ab5]@2 eb6@2 [c6,eb6] ab5 eb5 [c6,eb6] ab5 eb5 eb6@2 eb6@8 ~@22 eb2@16 g4 bb4 g4@47 ~@15, ~@3 eb5@2 [c6,eb6]@2 c6@2 [eb5,ab5]@2 c4@15 [eb3,g5,bb5,eb6]@9 [c3,eb5]@18 ~ bb2@59 ~@15, ~@11 [eb4,ab4]@6 [eb5,ab5]@2 [eb4,ab4,c5,ab5,c6]@7 ~@9 ab4@9 [ab3,eb4,ab4,c5]@9 ~ [bb4,eb5]@7 g3@6 eb5 g5 bb5 g5 eb6@3 [g6,bb6]@39 ~@15]/4", // Cm Eb5 Gm Ab Eb Ab5 Cm Ab5 …
})).s("gm_piano").gain(0.56)

// chords · piano · "A.PIANO 1" · soft notes
const piano_soft = note(`<
  A B@3 C D E F G ~ H I J ~ K ~ L@2 M N O P Q@5 R S@2 T U V@2 W ~ X ~@2 Y@2 Z AA AB AC AD AE AF AG AH AI AJ AK AL AM ~@3
>`.pickRestart({
  A: "~@15 f5@2 ~@5 f5@2 [f5,c6]@8", // F5
  B: "[~@3 a5@3 ~@3 a5@3 [c4,gb4]@4 eb3 ~@7 c4@5 c4@5 ~ f5@11 [g2,e5] ~@16 a5@3 ~@9 [bb3,d4]@5 ~@16, ~@2 c6@2 ~@2 gb4@5 ~@12 eb4@5 ~@68, ~@2 a5 ~@29, ~@7 [c4,eb4]@5 ~@84]/3", // Cdim C Bb Cm
  C: "[ab3,b4]@2 ~@4 [g3,eb4]@2 ~@3 bb3 ~@16 eb5@2 ~@2, f4@5 ~ c4 ~@20 g4@5", D: "~@4 ab5@2 ~@6 ab3@5 ~@15",
  E: "bb5@7 g2@2 ~@9 [e4,f4] ~@5 c5@5 ~@3, g5@4 ~@3 a2 ~@16 f3@2 ~@6, ~@24 eb3 ~@7", // Fmaj7
  F: "f4@2 c5@6 ~@6 c4@5 c4@4 ~@9, ~@14 g3@9 ~@9", G: "~@13 [eb4,f4] ~@4 f4 ~@13", H: "~@19 a3@4 ~@9, ~@7 c5@5 ~@4",
  I: "~@3 c4@5 ~@11 g4@5 ~ ab5 ~@6", J: "~@8 c5 ~@23",
  K: "~@6 g5@2 ~ gb5 ~@15 eb3 ~@6, ~ eb5@2 g5@3 ~@26, ~ bb5 eb5@2 ~@12",
  L: "[~@10 eb4@4 ~ f4@5 [c4,eb4,f4]@5 ~@3 c6@2 ~ ab3@8 ab5@2 ~ c6@3 ~@7 c6@2 ~@10, ~@9 ab4@10 ~@45, ~@7 c5@5 ~@20, ~@14 eb4@5 ~@12 c4@5 ~@28]/2", // F7
  M: "~@5 c4@5 ~@22", N: "~@7 [g4,a4]@5 ~@7 ab3@5 d4@6 ~@2, ~@18 f3@11 ~@3", O: "~@7 [c4,c5] d5@2 ~@4 f3 ab3 ~@10 c4@6",
  P: "~@5 bb3@6 eb4@5 ~@16",
  Q: "[~@6 g3@6 ~@6 [gb2,gb3]@5 ~ g2@2 ~@4 g3@5 ~@6 c4@5 ~ eb4@5 ~@6 e3@11 ~@23 [a3,f4]@11 ~@23 ab3@5 ~@13 [bb3,f4,d5]@6 [f4,d5]@4 c5@2 d4@4, ~@41 eb3@12 ~@28 [a3,f4]@11 eb4@5 ~@63, ~@41 ab3@3 ~@32 c4@22 ~@62, ~@86 eb3@17 ~@41 [f3,ab4]@12 ~@4]/5", // Gb Dm Bb Dm Fm
  R: "~@2 [gb3,d4,a4,d5]@11 ~ c4@2 ~@4 g4@8 bb3@2 ~@2, ~@2 c4@6 ~@12 [g3,c4,eb4]@11 ~", // D Cm
  S: "[~ c5@3 [e4,g4]@8 e4@2 ~ bb3@5 f4 ~@14 ab3@6 ~@23, ~@4 [g3,db4]@11 ~@49, ~@4 bb4@3 ~@24 f4@7 ~@26]/2", // Em Gdim
  T: "~@11 [a3,d4]@5 ~@7 g3@6 ~@3", U: "~@7 b2 ~@2 c4 ~@2 c4@3",
  V: "[~@3 d3 ~@7 c4@4 bb4 ~@24 c5@5 ~@19, ~@23 c3@23 ~@18]/2", W: "~@3 f4@2 ~@27", X: "~@23 ab5@5 ~@4",
  Y: "[~@14 d5@8 ~@13 ab5@5 ab5@3 ~@7 bb5@3 ~@11, ~@29 bb5@13 ~@7 c4@5 ~@10]/2", Z: "c6@4 ~ c6@6 ~@21, ~@4 f5@3 ~@25",
  AA: "~@3 bb5@2 ~@7 bb5@4 ~ bb5@3 ~@2 c4@4 ab2 ~@5, ~@20 bb5@7 ~@5",
  AB: "bb3 ~@3 bb5@2 ~@17 a3@6 ~@3, ~@17 gb3@12 ~@3, ~@19 bb5@10 ~@3, ~@22 a5@7 ~@3",
  AC: "~@3 eb4@3 bb5@2 b5 ~@2 [bb2,d3]@2 ~@11 eb4 ~@7, ~@3 [a3,bb3,d4]@6 ~@23", AD: "~@3 c6@16 ~@13",
  AE: "~@12 db2 ~@10 d4 ~@6 f3 ~, ~@9 gb5@5 ~@18", AF: "~@14 gb5 ~@17",
  AG: "~@7 f4@2 [c5,ab5]@2 ~@2 b2 ~@12 f4@3 [c6,db6]@3, ~@9 f4 ~@4 ab5@14 ~@4, ~@10 g5@5 ~", // Fm Dbmaj7
  AH: "~@5 f4@2 ~@18 ab7@7, ~@3 c4@29", AI: "~@18 d5 ~@7 a5@2 c6@2 ~@2, ~@17 ab5@2 ~@6 c6@3 ~@4", AJ: "~@21 g5@7 ~@4",
  AK: "~@7 b2@3 ~@17 c5@5", AL: "~ f3", AM: "~@16 c6@3 ~@13",
})).s("gm_piano").gain(0.32)

stack(piano, piano_soft)