Strudelify

Whirlaway

Allen Toussaint

KeyG minorTempo174 bpm
0:00/0:00
// Whirlaway — Allen Toussaint
// 174 bpm, 4/4, key G minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 78 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(174/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@8 B@7 C@7 D@2 E@8 F@2 G@2 H@8 I@4 J K@7 L@4 M@8 N@2 O P@3 Q@4>".pickRestart({
  A: "[~@6 [e5,g5]@2 ~ g4@3 ~@3 g4@2 a4@2 ~@2 g4 ~ [e5,g5]@2 ~@4 e5@2 ~@4 [bb1,bb2]@8 ~@10 eb5 e5@2 ~ [ab1,ab2]@7 ~ [g1,a4]@3 ~ g4 ~ g5@2 ~@4 eb5 e5@2 ~@3 c5@3 ~ d5 c5 a4@2 ~@10 eb5 e5@2 ~ [ab1,ab2]@6 g4 ~ a4@4 ~@2 eb5 e5@3 ~@2 [e5,g5]@2 ~@4 [bb1,bb2]@8 ~@2 [a1,a2]@8 eb5 e5@2 ~ [ab1,ab2]@6 g4@2 a4@4 g4 ~ [c4,c5]@2 ~@2 [c4,c5] ~ c5@2 ~ e4 e5@2 [e4,e5]@2 ~@2 [e4,e5] ~@2 [g4,g5]@2 ~ [g4,g5] ~@2, ~@6 eb5 ~@16 c2@8 ~@14 [a1,a2]@10 ~@16 [c2,c3]@8 ~@2 [bb1,bb2]@12 ~@2 [a1,a2]@8 ~@10 g1@2 ~@46 g1@2 ~@4 [c2,c3]@8 ~@2 [bb1,bb2]@8 [a1,a2]@7, ~@23 eb5 ~@4 g5@3 ~@22 g5@2 ~@16 eb5 ~@5 g5@3 ~@21 g5@2 ~@16 g5@3 ~@3 eb5 ~@23 g5@3 ~@40, ~@29 eb5 ~@27 g4@3 ~@45 g4@3 ~@45 g4@4 ~@16 c4 ~@18]/8", // Em Bb Ab Gsus2 Ab Em Bb A …
  B: "[g5@2 ~ [c5,b5] ~@2 c6@2 ~ [c5,c6] ~@2 bb4@2 ~ [a4,a5] ~ [gb1,gb2,g4]@4 ~@9 eb4@4 ~ [eb1,eb2]@10 ~@9 [eb4,g4]@4 g3@3 ~@3 g3 ~ d1@2 ~@3 [eb4,g4]@3 ~@3 [eb4,g4]@4 ~@2 c4@3 ~ d4 ~ a3@3 ~@9 [eb4,g4]@3 ~ g3@3 ~@3 g3 ~ [d1,d2,a3]@3 ~ g3@2 [e4,g4]@3 ~ g3 ~ [e4,g4]@3 ~@3 [bb1,bb2]@8 ~@10 [e5,g5]@3 ~ [ab1,ab2]@6 g4 ~ a4@4 ~@3, g4 ~@2 [ab1,ab2]@7 ~ [g1,g2,bb5]@4 ~@8 [f1,f2]@9 ~@14 [d1,d2]@11 ~@14 [f1,f2]@8 ~@2 [eb1,eb2]@12 ~@2 [d1,d2]@8 ~@16 [c2,c3]@10 ~@12 [a1,a2]@10 ~@10 g2@2 ~@5, ~@3 c6@2 ~ c5 ~@10 g5@2 ~@10 g4@4 ~ g3@2 ~@29 a3@3 ~@20 c4@2 ~@29 eb4 ~@5 eb4 ~@23 eb5 ~@3 g4@3 ~@5 g1 ~@6]/7", // Cmaj7 C A Gmaj7 Eb D5 Em Bb …
  C: "[gb5@2 [e5,g5] ~@2 [f5,a5] ~@2 [eb5,gb5]@2 ~ [e5,g5] ~@2 [f5,a5] ~@2 [eb5,gb5]@2 ~ [e5,g5] ~@2 [f5,a5]@2 ~ [eb5,gb5]@2 ~ [e5,g5] ~@2 [f5,a5] ~ [eb5,g5] ~ f5 c5@4 a4@2 ~ g4 ~@11 g2@6 [g3,d4,f4,g4] ~@2 g2@2 ~ [g3,d4,f4,g4]@5 ~@4 [g3,d4,f4,g4]@4 ~@2 [g3,d4,f4,g4]@5 ~@4 d2 ~@2 g2@6 [g3,d4,f4,g4]@4 ~@2 [d4,f4,g4]@2 ~@2 [a3,a4]@3 ~@2 [bb3,d4,f4,bb4]@3 ~@3 [a3,d4,f4,a4]@3 ~@10 [e1,e2] ~ [f1,f2] ~@2 [gb1,gb2] ~@2 g2@6 [g3,d4,f4,g4]@3 ~@3 [g3,d4,f4,g4]@3 [a3,d4,f4,a4]@3 ~@3 [g3,d4,f4,g4]@2 ~@2, eb5 ~@7 [bb1,bb2]@8 ~@10 ab1@6 ~@2 g1@11 ~@2 [g1,g2]@8 ~ g1@9 ~@3 g1@7 g2@7 ~@13 g1@9 ~@3 g1@27 ~@9 g1@9 g2@10 ~@6, ~@36 d5@2 ~@15 [g3,g4]@5 ~@31 [a3,d4,f4,a4]@5 ~@13 g3 ~@2 [d4,f4]@3 ~@15 [g3,d4,f4,g4]@15 ~@12 g1@10 ~@3]/7", // Em F Ebm Em F Ebm Em F …
  D: "[~@3 f4@2 ~@3 [a3,d4,f4,a4]@2 ~ [g3,d4,f4,g4]@3 ~@3 [g2,a3,d4,f4,a4]@3 ~@10 [e5,g5]@2 ~ g4@2 ~@4 g4@2 a4@3 g4 ~@2 [eb5,gb5], ~@2 [g3,d4,g4]@2 ~@19 c2@9 ~@3 [bb1,bb2]@10 ~@3, ~@30 eb5 ~@17]/2", // Dm G7 Dm Em Ebm G5 Bb
  E: "[~@2 [e5,g5]@2 ~ a5@2 ~ [eb5,g5]@2 ~ g5 c5 ~ a4@2 ~ [e4,c5]@6 ~@7 [d4,e4,bb4]@4 ~@5 [bb3,e4,g4]@4 ~@2 [d4,bb4]@2 ~@3 [c4,e4,a4]@3 ~@3 [ab1,ab2]@7 [c4,d4] ~@2 g1@2 g2 ~@8 [d4,bb4]@3 g4 ~@2 [c4,a4]@2 ~ [bb3,g4]@2 ~@10 [c4,e4,a4]@3 ~@9 a4@2 ~ [g1,g2] ~@2 [b1,b2] ~@8 [d4,e4,bb4]@4 ~@2 [c4,a4]@2 ~@2 g4@2 ~@4 [d4,e4,bb4]@2 ~@4 [c4,e4,a4]@3 ~@3 [ab1,ab2]@6 a4@2 [g1,bb3,g4]@4 ~@3 c2@7 ~ [bb1,bb2]@8 ~@2 [g4,g5]@2 ~ g5 ~@2, ~@5 f5 ~@2 [ab1,ab2]@13 ~@2 [c2,c3]@10 ~@3 [bb1,bb2]@8 ~ [a1,a2]@9 ~@2 [bb3,e4]@4 ~@6 [bb3,e4,g4]@5 [c2,c3]@10 ~@2 [bb1,bb2]@8 ~ a2@10 ~@2 [bb3,e4]@3 ~@3 c4 ~@2 [bb3,g4]@5 ~@17 bb3 ~@17 [bb3,g4]@4 ~@2 c4 ~@7 [c4,c5]@2 ~@23, ~@11 e5@2 ~@3 g4@2 ~@17 [c4,e4,a4]@2 ~@8 e4 ~@10 g4@6 ~ a4@2 ~@27 [d4,e4,bb4]@3 ~@9 g4@5 ~@44 e4@2 ~@21 [e4,e5]@2 ~@14, ~@93 a1@10 ~@2 [ab1,ab2]@7 ~@7 [c2,c3]@10 ~@2 [bb1,bb2]@8 ~@2 a1@9 ~@36 [a1,a2]@6]/8", // Em Eb C Em7b5 Edim Gm Am Ab …
  F: "[[g4,g5] ~@2 [c5,b5] ~ [c5,c6] ~@2 c6 c5 ~ [g1,g2,bb4,bb5]@3 a4 ~@2 [gb1,gb2]@5 ~@8 [g4,a4,eb5]@4 ~@2 [f4,a4,d5]@2 ~ [a4,c5]@2 ~@4 [g4,a4,eb5]@2 ~, ~@3 [ab1,ab2]@7 ~@7 g5 ~@21 eb4 ~@8, ~@3 c6@2 ~@12 g4@2 ~@4 [f1,f2]@10 ~@3 [eb1,eb2]@8 ~@4]/2", // G Cmaj7 C Gm Gb Am7b5 Dm Am …
  G: "[~@3 [f4,a4,d5]@3 ~@3 [c1,c2,c5]@5 f4 a4@2 [d2,eb4,a4,c5]@5 ~@7 [g4,a4,eb5]@3 c5 ~@2 [f4,d5]@2 ~@2 c5@2 ~@4 [g4,a4,eb5]@3, ~@8 [eb4,a4]@5 ~@4 d1@3 ~@3 [f1,f2]@10 ~@2 [eb1,eb2]@8 ~@5, ~@29 ab4 ~@9 eb4 ~@8]/2", // Dm C Adim Am7b5 Dm Am7b5 Ebdim F …
  H: "[~@3 f4@3 ~@2 [c1,eb4,a4,c5]@6 a4@2 ~ [eb4,a4,c5]@4 ~@8 [d4,e4,bb4]@3 ~ g4 ~ [c4,a4]@2 ~@2 g4@2 ~@4 [d4,e4,bb4]@2 ~@4 [c4,e4,a4]@3 ~@3 [bb3,e4,g4]@4 ~@2 a4 ~ bb3@3 [g1,g2] ~@8 [d4,e4]@3 g4 ~@2 [c4,a4]@2 ~@2 [e4,g4]@2 ~@4 [d4,e4,bb4]@2 ~@4 [c4,e4,a4]@2 ~@6 [g1,g2] ~@2 [e1,e2] ~@2 [f1,f2] ~@2 [gb1,gb2] ~@2 g2@6 [g3,d4,f4,g4]@2 ~ g2@3 ~@3 [g3,d4,f4,g4]@2 ~@4 [g1,g3,d4,f4,g4]@6 ~@4 g3@2 ~@4 [g3,d4,f4,g4]@3 ~@2 [a3,d4,f4,a4]@3 d2@3 g2@6 [g3,d4,f4,g4]@3 d2@2 ~ [g3,d4,f4,g4]@2 ~@2 [a3,d4,f4]@2 ~@4 d4@2 ~, ~@2 [a4,d5]@3 ~@9 d5 ~@2 d2@2 ~@4 c2@9 ~@3 [bb1,bb2]@9 ~ a2@10 ~@2 [ab1,ab2]@9 ~@5 [c2,c3]@10 ~@2 [bb1,bb2]@8 ~@2 [a1,a2]@10 ~@2 bb3@9 ~@5 g1@9 ~@3 g1@6 ~@12 [g1,d4,f4,g4]@3 ~@3 g1@7 ~@5 g1@9 ~@3 [g1,g2]@13, ~@29 eb4 ~@9 bb3 ~@25 [e4,g4]@5 ~@7 bb4@2 ~@4 e4 ~@3 bb3 ~@16 [e4,g4]@8 ~@22 e4 ~@38 e4 ~@9 a4 ~@4 [bb3,f4,bb4]@2 ~@2]/8", // Adim Em7b5 F Em7b5 Am Edim G Dsus2 …
  I: "[~@2 [bb3,d4,f4,bb4]@3 ~@3 [a3,d4,f4,a4]@2 ~ g2 ~@2 [e1,e2] ~@2 [f1,f2] ~ gb2 gb1 ~@2 g2@6 [g3,d4,f4,g4]@3 ~@3 [d4,f4,g4]@2 ~@2 [a3,d4,f4,a4]@2 ~@4 f4@3 ~@2 [a3,d4,f4,a4]@3 ~@3 [d4,g4]@2 ~ [a3,d4,a4]@3 ~@3 [g2,g3,d4,g4]@3 ~@7 d4 g4 c5@3 g4@2 ~ [d4,bb4]@6 g4@2 ~ [a1,a2,a4]@4, ~@11 [g3,d4,f4,g4]@11 ~ g1@9 g2@8 ~@5 g2@7 ~@4 g3 ~@18 e4@2 ~@15 c4@2 ~@2, ~@35 g3 ~@8 [g3,d4,g4]@3 ~@3 g1@6 ~@3 g1@6 ~@6 [c2,c3]@8 ~ [bb1,bb2]@10 ~@6]/4", // Bb Dm E F G7 Dm G5 D5 …
  J: "~@2 [bb3,g4]@3 [ab1,ab2]@4 eb4 ~ e4@2 ~ a3 ~@2 [f3,c4] ~@2 [e3,c4]@3 ~, ~@11 [g1,g2]@9 ~@4, ~@13 c4@2 ~@9", // Eb Ab F5 C G
  K: "[~@2 c4@2 ~ eb4@3 ~@3 g4@2 ~@2 [e4,c5]@2 g4@3 a4@2 ~ [ab1,ab2]@6 [c4,a4]@2 ~@2 bb3@4 ~@4 [g1,g2] ~@2 [b1,b2] ~@8 d4@3 ~@3 e4@2 ~ [e4,c5]@3 [a1,a2,g4]@3 a4@2 ~ [d4,bb4]@3 g4 ~@2 [c4,a4]@2 ~ g2@3 ~@3 [g1,g2]@2 ~ [a1,a2]@2 ~ [b1,b2]@2 ~@6 e4 d4@2 ~ eb4@2 ~ e4@2 ~ e4@3 [a1,a2,g4]@3 a4@2 ~ [d4,bb4]@3 g4 ~ a4@2 ~@2 [bb3,g4]@4 ~@2 a4@3 [g1,g2]@3 ~@3 c5@2 ~ [c4,c5] ~@2 [c4,c5] ~@2 [e4,e5]@2 ~ e5 ~@6 [g4,g5]@2 ~ g5 ~ [g4,g5], [c2,c3]@9 [bb1,bb2]@7 ~@13 g2@9 ~@9 [c2,c3]@7 ~@2 bb2@5 ~@107, ~@4 d4@2 ~@2 e4@3 ~@12 [d4,bb4]@4 ~@5 g4@5 ~ [c4,a4]@8 ~@4 c5@2 e4@2 ~@2 eb4@2 ~@22 [bb3,g4]@14 ~@5 g4@2 ~@9 c5@2 ~@12 c4 ~@9 c4@6 ~@3 c4 ~@24, ~@51 g4@2 ~@4 bb1@6 ~@8 [ab1,ab2]@7 ~@17 [c2,c3]@6 ~@3 [bb1,bb2]@6 ~@9 [ab1,ab2]@7 ~@2 g1@6 ~@9 [c2,c3]@7 ~@2 [bb1,bb2]@8 ~ [a1,a2]@7]/7", // C Ab F G B C A7 Gm …
  L: "[~@2 c6@2 ~ [c5,c6] ~@5 [g1,g2,bb4,bb5]@3 a5 ~@2 [gb1,gb2,g4]@4 ~@2 [f1,f2]@4 ~@2 g4@2 ~ ab4@3 a4@2 ~ f5@3 eb4@3 [f4,d5]@2 ~ [g4,eb5]@3 c5@2 [f4,d5]@2 ~@2 eb4@5 ~@3 [d1,d2]@3 ~@7 d5 ~ a4 g4@3 ab4@3 a4@2 ~ a4@3 [eb4,c5]@3 [f4,d5]@2 [g4,eb5]@2, ~@2 [ab1,ab2]@8 ~@18 a4@2 ~@2 [eb1,eb2]@8 ~ [d1,d2,c5]@5 ~ [db1,db2]@7 ~ [c1,c2,c5]@6 ~@10 [f1,f2]@6 ~@3 [eb1,eb2]@8 ~ [d1,d2]@7, ~@2 c5 ~@14 [c5,e5,g5]@2 ~@8 [c5,d5,f5]@2 ~@9 a4@5 ~@18 [f4,d5]@6 ~@7 f5@2 ~@10 f5@2 ~@8, ~@75 c5@2 ~@19]/4", // C Gm Gmaj7 F Dm Cm Dm D …
  M: "[~ c5@2 ~@2 f4@2 ~@6 [c1,c2]@3 ~@4 g1@2 ~@4 a4 ~ d4@3 ~@4 e4@2 ~ e4@3 ~@3 a4@2 ~ [d4,bb4]@3 g4 ~@2 a4@2 ~ [g1,g2]@6 ~@3 [g1,g2] ~@2 g1@2 ~@4 a4 ~@2 d4@2 ~ eb4@2 ~ e4@2 ~@7 a4@2 ~ d4@3 g4@2 ~ [c4,a4]@3 [c4,g4]@6 [e1,e2]@2 ~ [f1,f2] ~@2 [gb1,gb2] ~@2 g1@6 [g3,d4,f4,g4]@3 g1@4 ~@3 [g3,d4,f4,g4]@2 g1@3 [g2,g3,d4,f4]@7 g1@2 ~ [g2,f4]@3 ~@3 [g3,d4,g4]@3 ~@2 a4@4 d2 ~@8 e4 ~@2 d2@2 [d4,f4,g4]@2 ~@2 [a3,d4,f4,a4]@3 ~@3 g2@3, ~ [c1,c2]@10 ~@8 g2@2 ~@2 [c2,c3]@8 ~@2 [bb1,bb2]@8 [a1,a2,g4]@5 ~ [ab1,ab2]@8 ~@13 g2 ~@2 [c2,c3]@7 ~@2 [bb1,bb2]@6 a2@6 ~@9 g2@6 ~@12 g2@10 ~@3 g2@7 ~@10 [g3,d4,g4]@3 ~@3 g2@7 ~@30, ~@4 d5@2 ~ c5@15 ~@16 c5@2 ~@16 g4@5 ~@12 c5@2 g4@2 ~@10 a1@6 ~@2 [ab1,ab2,bb4]@5 ~@4 g1@4 ~@45 g1@10 ~@4 [g1,g2]@8 ~@4 [g1,g2]@9 [g1,bb3,d4,f4,bb4]@4, ~@8 eb4@15 ~@4 [e4,g4]@2 ~@3 eb4@3 ~@18 c4 ~@2 bb3@3 ~@3 [c4,a4]@8 ~@6 e4@2 ~@8 [e4,c5]@3 g4@5 ~@46 g4@5 ~@11 f4@5 [a3,d4,f4]@6 ~@6 [g3,d4,f4,g4]@3 ~@3 g3 ~@12]/8", // C Gm G F C5 E F Gb …
  N: "[~@2 [bb3,d4,f4,bb4]@4 ~@2 [a3,d4,f4,a4]@2 ~@4 [e1,e2] ~@2 [f1,f2] ~@2 [gb1,gb2] ~@8 [g3,d4,f4,g4]@2 ~ d2@2 ~ [g3,d4,f4,g4]@2 ~@2 [a3,d4]@5 ~ d2@2 ~, ~@2 [g1,g2]@11 ~@10 [g1,g2]@8 ~@4 [g1,g2]@10 ~@3, ~@11 [g3,d4,g4]@12 ~@16 [f4,a4]@3 ~@6]/2", // Bb Dm E F Gb G7 D5 G …
  O: "[g1,g2,g3,d4,g4]@5 d2@3 ~ [g3,d4,f4]@3 ~@3 [a3,d4,a4]@2 ~ [g3,d4] ~ g2 d2 ~ c4, f4@4 ~@5 g2@8 ~ g4@2 ~@4, ~@9 [g1,g4]@5 ~@3 g1@5 ~@2", // G5 G7 D5 G5 G
  P: "[[e4,g4,c5]@2 [c1,c2,c4,e4,g4,c5]@3 ~@3 [c1,c2,c4] ~@2 [bb3,e4,bb4]@2 ~ [e1,e2,bb3,e4,bb4]@3 ~@3 [e1,e2,e4] ~@2 [a3,f4,a4]@2 ~ [f1,f2,a3,f4,a4]@2 ~ f2 ~@2 [f1,f2,a3] ~@2 [c4,gb4,ab4]@2 ~ [gb1,gb2,ab3,c4,gb4,ab4]@2 ~@4 [ab3,ab4]@2 ~ [g1,g2,g3] ~@2 [g1,g3,g4]@2 ~@2 [gb1,gb2,gb3,gb4]@2 ~ [f1,g3,g4]@2 ~@2 [ab3,ab4]@3 ~ [eb1,eb2,a3,a4]@2 ~@2 [d1,d2,bb3,bb4]@2 ~, [c1,c2] ~@7 [e4,g4]@2 ~ [e1,e2] ~@8 [bb3,bb4]@2 ~ [f1,f2] ~@11 [gb1,gb2,ab3] ~@8 [gb1,gb2] ~@2 g4@2 ~ g2 ~@6 f2 ~@3 [e1,e2] ~@10]/3", // C Bbdim Edim E Dm F Ab7 Ab …
  Q: "[~ [db1,db2,b3,b4]@3 ~@2 [c2,c4,c5]@5 ~@7 db2 ~ [f3,b4,eb5,g5]@16 [e3,bb4,d5,gb5,a5]@48 ~@12, ~@5 c1@5 ~@9 [ab2,f4]@17 ~@60]/4", // Db7 C Ebaug D Db
})).s("gm_piano").gain(0.56)

// chords · piano · "A.PIANO 1" · soft notes
const piano_soft = note(`<
  A@2 B C D@2 E ~@3 F ~ G ~ H@2 I J K L@2 M@4 ~ N ~@2 O@2 P Q R@2 S@4 ~@2 T U ~ V W X ~@2 Y Z AA AB AC AD AE AF ~@4 AG
  ~@3 AH ~@5 AI ~@3 AJ@3
>`.pickRestart({
  A: "[~@23 c3@8 ~@17]/2", B: "~@15 g4 f4 g2@3 ~@4", C: "e5 ~@11",
  D: "[~@17 g2@3 ~ g4 ~@6 g4 ~@19, ~@23 [c2,c3]@9 ~@16]/2", E: "~@17 g2@3 ~@4", F: "~@10 [c1,c2]@6 ~@2 d2@3 ~ g3 ~",
  G: "~@3 [c1,c2]@2 ~@3", H: "[~@21 g4 ~ [c2,c3]@7 ~@11 [a1,a2]@7]/2", I: "~ ab2@3 ~ g2@5 ~@2", J: "~@20 g2@3 ~",
  K: "~@11 g2@7 ~@6, ~@4 g1@5 ~@3", L: "[~@8 g2@7 ~@5 g2@7 ~@21]/2",
  M: "[~@33 g1@8 ~@6 c3@8 ~@16 [a1,a2]@6 ~@19, ~@21 g2@14 ~@61]/4", N: "~@15 e4 ~@8",
  O: "[~@8 g4 ~@12 a2@9 ~@11 g2@4 ~@3]/2", P: "eb2 ~ [c4,c5] ~@2 [c4,c5] ~@6 [e4,e5] ~@2 [e4,e5] ~@5 g4 ~@2, c3 ~@3",
  Q: "~@14 a5 ~@9", R: "[~@21 [d1,d2]@9 ~@9 d5 ~@8]/2",
  S: "[~@21 d1@10 ~ c2@6 ~@3 d1 ~@5 c3@9 ~@13 a1@10 ~@8 [c4,d4,e4] ~@8, ~@10 d2@5 ~@33]/4", T: "~@17 g2@4 ~@3",
  U: "~ g2 ~ g2 ~@4", V: "~ g1@5 ~@6, ~@2 g2@5 ~@17", W: "~@11 g1@9 ~@4", X: "~@8 g2@3 ~@13", Y: "~@17 [a1,a2]@4 ~@3",
  Z: "~@2 g4 ~@2 g1@9 ~@10", AA: "~@3 a4 ~@20", AB: "~@8 g1@3 ~@13", AC: "~@3 a4@2 ~@19, ~ c5 ~@10", AD: "~@4 g2@3 ~@5",
  AE: "~@11 e4 ~@2 [e4,e5] ~@6 g4 ~@2", AF: "~@8 [c5,c6] ~@5 a4 ~@9", AG: "~@3 c5@2 ~@19", AH: "~@5 e4!2 ~@17",
  AI: "gb1 ~@7 c5@2 ~@14", AJ: "[~@11 [c2,bb2]@49 ~@12]/3",
})).s("gm_piano").gain(0.32)

stack(piano, piano_soft)