Strudelify

In the Still of the Nite

The Five Satins

KeyF majorTempo120 bpm
0:00/0:00
// In the Still of the Nite — The Five Satins
// 120 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 124 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(120/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@4 B@7 C@5 D@6 E@6 F@8 G@4 H@4 I@6 J@8 K@7 L@2 M@7 N@3 O@6 P@8 Q@7 R@5 S@4 T@8 U V@8
>`.pickRestart({
  A: "[~@125 g4@3, ~@25 [f2,c3,f3,a3,c4]@34 ~@24 f2@29 a4@16, ~@43 f4@16 ~@7 f4@25 ~@20 ab4@5 ~@12, ~@47 g4@10 g4@34 ~@20 g4@14 ~@3, ~@51 a4@39 [db3,a3,db4,e4]@24 ~@14]/4", // F A
  B: "[~@34 [d3,f3,bb3,d4]@19 ~@8 g4@5 ~ a4@8 ~@28 bb3@16 ~@100 [gb2,db3]@5, a4@35 ~@22 f4@9 ab4@5 ~@5 f4@27 ~@16 bb3@16 g4@22 bb3@16 f3@5 f4@26 f4@20, ~@3 g4@31 ~@19 db4@8 ~@42 f3@33 ~@4 bb3@6 f4@18 f2@14 c4@5 g4@5 a4@36, ~@10 f4@24 ~@19 d4@19 ~@31 [db3,db4]@17 db4@42 c3@3 c4@4 c3@25 g4@30, ~@28 f2@26 ~@43 f2@24 a4@5 g4@4 a4@35 a3@31 ~@18 [f2,c3]@10]/7", // Bb Gb5 Db F5
  C: "[~@128 c4@5 ~ c4 ~@18 a4@6 c5, [f3,b3,d4]@26 [b3,db4]@15 a4@27 [f3,d4]@17 ~@4 f4@16 ~@5 f4@24 eb4@4 ~@2 g2@20, ~ [g2,d3]@26 d4@22 ~@10 d4@4 g1@23 ~@7 g4@12 g4@29 ~ e4@9 [e4,c5]@16, ~@21 g3@7 a4@10 g4@6 g4@25 ~@16 d4@14 [bb3,d4]@34 ~ c2@26, ~@27 f4@17 ~@5 f4@20 [g2,bb3]@31 a4@34 a4@10 a4@4 c3@12]/5", // Bdim Bsus2 Dm G5 C Bb Gm
  D: "[~@71 bb4@6 ~@25 e4@5 ~@10 f3@4 ~@6 e3@4 ~@3 a2@2 ~@21 c5@4 ~@26 c5@4 bb2, ~@2 c3@8 ab4@9 c6@4 ab6@2 c7@2 e7@3 ab7@4 c8@43 c5@30 e4 f2@4 c3@9 [f2,f3] [d4,d5]@4 e2@5 [e3,d4,e4,e5]@6 [d2,e4,e5]@24 ab4 a4@20 [f3,f4,d5]@10, ~@4 e3@9 c5@9 e6@55 f2@16 a3@44 ~@4 a2@16 f3@5 a3@5 c4@25, ~@6 ab3@10 e5@45 a4@16 e4@11 f3@19 a4@30 c5@10 a4@6 d3@9 c5@4 f4@11 a3@15, ~@9 e4@8 ab5@60 c4@5 c3@16 c4@39 a4@10 [d4,f4,d5]@17 g4@28]/6", // F D E7 Dsus2 Dm
  E: "[~@38 d4@4 ~@15 g2@4 ~@30 e4@4 e4@5 ~@14 c3@4 ~@19 c4@5 f4@5 f4@4 ~@5 a3@4 ~ f4@4 e3@4 [e3,e5]@4 a2 ~ [d4,a4]@9 ~@5 d3@3, ~@4 bb1@52 d5@5 c2@44 e3@4 a4@4 bb4@5 c5@38 f3@4 [e3,a3,d4,d5] [e2,c4]@4 f4@4 e4 ~@14 [d4,f4,a4,d5]@8, ~@4 [d4,f4,bb4]@9 f4@14 f3@6 bb3@14 [bb3,d4,bb4]@14 bb4@10 [e4,g4]@5 c3@14 bb4 bb3@27 f2@29 f2@27 ~ [d2,e4,c5,e5]@17, ~@9 bb2@4 d4@5 bb2@29 d5@5 c5@10 d5@19 e3@9 d5 g4@9 [e4,g4,c5]@18 [f4,a4]@9 [a3,c4] f3@19 a3@4 c3@23 ~@18, ~@13 bb4@10 d3@39 [e4,g4]@4 c3@5 c5@15 g3@32 c4@5 c3@9 a3@10 [c3,a4]@5 c4@4 f4 a4@22 ~@18]/6", // E D5 Dsus2 C Dm Bb Em C …
  F: "[~@6 a3@4 f4 ~@25 bb2@3 ~@28 bb3 d4@5 d4@8 ~@44 c4@5 ~@18 g4@4 ~@15 c4@9 c4@14 ~@63 c2@3, ~ [d4,ab4,a4,d5]@10 [d4,f4]@14 [f4,a4]@9 d4@5 [f3,f4,bb4] d5@9 f4@42 d5@3 e4@26 g3@5 d5@10 c5@5 g3@12 f2@57 ~ f2@44 ~@2, ~@5 g4@5 d3@24 d5@5 bb1@15 [f3,bb3,d4]@4 d3@5 f3@5 bb3@13 bb3 d4@13 c2@48 ab4 [a4,c5]@8 f4@43 f3@28 ~ f3@30 ~@2, ~@16 f3@14 c5@9 bb3@5 bb2@4 bb4@34 d5@5 c5@8 g4 d5@9 c5@5 c3@5 e3@33 c3@10 c3@46 ~@10 a3@13 ~ a3@15 a3@13, ~@20 a3@5 [d4,d5]@5 a3@23 bb2@37 bb3@61 ~@11 f3@5 a3@5 ~@19 c4@28 c3@14 c4@15 c4@8]/8", // D Dm F Bb5 Bb Am D
  G: "[~ d2@5 e2@5 [f2,c4]@15 ~@45 a3@9 a3@5 ~@6 db3@7 ~@26 f2@4, ~@11 a3@24 g4@7 g4@29 [db4,e4]@14 [db4,e4]@30 db3@13, ~@26 f2@12 a4@34 ~@13 a3@15 db3@2 g4@26, ~@27 f4@15 ~@9 f4@10 c4@5 f2@44 f4@18, ~@27 c4@4 c3@11 f3@14 f3@15 db3@14 a4@12 ~ a4@30]/4", // F5 Dbm
  H: "[~@2 d3@10 ~@48 db3@9 ~@40 bb3@10 ~ f2@8, ~@2 f3@29 [d4,a4]@19 bb3@5 f2@20 bb3@15 g4@14 db3@9 ~@6 [c3,a3,c4]@9, ~@2 [bb3,d4]@14 [bb3,d4]@9 g4@11 g4@24 f3@60 ~@8, ~@12 d3@19 bb3@14 d3@15 [bb3,db4]@14 ~ db4@15 db3@4 bb3@5 [db4,f4]@21 ~@8, ~@21 f4@11 ~@9 f4@20 ~@9 db3@5 a4@6 g4@4 a4@36 ~@7]/4", // D5 F Bb Bbm Db
  I: "[c4@6 c3@4 ~@7 c3@4 ~@23 [gb2,db3]@5 b3@10 b3@5 ~@42 bb3@10 ~@45 g2@4 ~@24 e3@3, ~@6 [c4,f4]@15 f2@18 f2@10 g2@42 f3@10 d3@20 f3@15 [f3,a4]@15 d3@9 c4@4 ~ [c2,eb4]@27, ~@10 c3@6 a4@5 c4@9 [c4,f4]@19 d3@15 f4@13 f3@3 g4@4 a4@22 g2@25 g4@10 g4@23 ~ a4@19 ~ a4@7, ~@13 g4@8 g4@28 d4@15 [b3,d4]@42 d4@15 d4@43 ~@7 c3@9 c3@12, ~@26 c3@9 c3@14 f3@15 a4@5 d3@19 g4@19 ~@9 bb3@10 f4@20 f4@20 e4@9 [e4,c5]@17]/6", // Gb5 F5 F Cm F5 Bm C
  J: "[~@98 [a3,c4]@5 ~@2 a3@2 ~ [c4,f4,a4]@4 f4 c4@4 ~@5 [c4,f4]@4 ~@5 e3@4 e4 [e3,e4]@4 a3@3 ~@7 [f3,a3,d4]@5 f3@4 f3@5 ~@6 a3@6 a3@4 ~@15 bb2@4 ~@9 d4 [d4,f4]@5 ~@14 bb3 ~@9 bb4@5 ~@9 [g2,d5]@4, c5@10 e4@8 ab5@9 c7@3 e7@3 ab7@4 c8@29 a4@11 bb4@2 c3@4 c5@29 a4 f4@4 c4 a3@4 a4@4 [e2,e3,a3,c4,f4] [d4,d5]@14 ~@4 d3@5 [a4,d5]@5 d3@15 c4@15 d5@4 f3 c5@9 bb1@44 [bb3,d4,f4,bb4,d5]@4 c5@8 ~, ~@3 c3@9 ab4@8 c6@62 a4@10 c3@39 f4@4 e5@5 c5@30 [d4,f4]@10 f3@4 d4 [d3,a3,f4,a4]@14 [d4,f4,bb4]@10 bb4@14 f3@5 [d4,f4] bb3@5 d4@3 f3@19, ~@6 e3@8 c5@8 e6@61 f2@15 [f4,a4]@5 c4@4 a3@5 f2@28 [d2,e4,e5]@60 ~@4 bb2@10 bb2@42, ~@8 ab3@9 e5@7 ab6@59 [c4,f4]@15 f3@42 a4@9 ~ f4@5 [a3,d4]@9 [a4,d5] [f3,a3]@2 g4@33 ~@8 bb3@6 [bb3,d4,f4]@5 d3@37]/8", // Am F F5 E Dm G5 Fmaj7 D …
  K: "[~@10 [c4,e4]@5 ~@14 e4 ~@10 e4@5 ~@4 e4@4 ~ [c4,e4]@4 ~@10 f4@4 [a3,c4,f4] c4@4 c4@4 ~ f4@4 c4@5 c4@4 [c4,a4]@5 ~@5 e3@4 ~@3 a2@2 ~@10 [a3,d4,f4]@5 [d4,f4]@4 ~@5 a3 ~@4 a3@5 a3@4 ~@5 [d4,f4] ~@8 [bb2,d5]@5 ~@10 f4@4 ~@9 f3@2 ~@3 bb3 d4@4 ~@4 f3 ~@4 [bb3,d4] ~@4 c5@4 d5@2, ~ c2@29 [ab3,e4]@5 g3@5 [a4,c5]@5 [ab3,bb3]@4 a4@4 [c3,bb4]@5 c5@42 [e2,a3,d4,d5]@14 e4@24 [a4,c5] a3 g4@3 [c4,d4,f4]@9 a3 f3@4 [d3,a4,d5] [d4,f4]@4 [f3,c5]@9 bb1@42 [bb4,d5] [bb3,d4,f4]@10, ~ d5@14 c3@4 e3@39 f2@24 [c3,a4]@9 a3@4 c3@5 [e3,a4] c4@22 d3@6 [d3,a3]@4 [f3,d4,f4,d5]@5 ab4@33 [d4,f4,bb4]@9 bb4@20 [bb3,f4]@4 d4@5 f3@15, ~ [e4,g4]@9 g4@48 [a3,c4,a4]@9 f3@19 [f2,f3]@23 [e4,a4,c5,e5] e3@4 c5 a4@4 a2@53 ~@4 bb2@9 bb2@39, ~@5 c3@5 c5@5 [g3,e4] c4@8 g3@5 bb3 d5@28 f4@5 c3@9 a4 [a3,f4]@8 a3@5 f4@14 f4@15 [d2,e5]@58 ~@7 [bb3,d4]@6 [bb3,d4,f4]@4 d3@34]/7", // C F Dm Bb Dbm Am Absus2 C7 …
  L: "[~@12 g3@5 ~@9 g3 ~@4 e4 ~@4 g3@5 e4@4 ~@9 c3@4 ~ f2@5, ~@3 [c2,bb4]@56 c4 ~@4, ~@3 [e4,g4,d5]@14 c3@14 c4 bb3@29 ~@3, ~@7 c3@10 f4@15 [e4,g4]@9 [g3,c5]@4 e3 [c4,e4]@4 g4@8 f4@6, ~@12 c5@6 [g3,c4]@4 e3@9 d5@27 a3@2 ~@4]/2", // C7 Em7 Em C5 C C5
  M: "[~@4 a3@5 a3@5 ~@48 f3@4 f3@5 ~ f3@4 ~@14 d3@5 ~@9 bb2@4 ~@53 g2@4 ~@10 c3@5 ~@14 [c4,bb4]@6 bb4@8 ~@12 c3@4, c3@14 a3@8 f2@14 a3 g4@14 f4@49 a2@8 ~@5 bb2@10 bb2@9 f3@5 bb3@5 f3@5 bb3@5 f3@4 g5 g4@8 [e4,c5]@25 g3@4 bb3@14 bb4@2 [bb3,a4]@5 g4@4 f4@5, ~@9 f4@18 a3@5 c4@5 e3@4 a3@5 e3@6 d2@57 bb1@56 g4@15 c3@5 e3@39, ~@9 f3@9 c4@5 f3@13 [e2,d4]@13 bb2@2 f3 a3@14 a2@15 d3@4 a2@10 [d3,a4,a5]@14 ~@9 [f4,bb4,d5,f5]@47 bb4@5 g2@54, ~@9 c4@9 c3@32 a2 d4 d3@14 [a3,d4]@5 d3@5 [f3,a3,d4]@33 [g4,g5]@19 d3@38 c2@58]/7", // C7 C Bbmaj7 E7 D5 Bb D5 Dm …
  N: "[~@31 a3, ~ f4@58 f2@24 a3@4 f3@9, ~ f2@49 a3@14 c3@32, ~ c4@14 f3@5 a3@5 c4@10 a3@10 c3@9 c2@42, ~ a3@9 c3@30 c4@28 f3@5 a3@5 c4@18]/3",
  O: "[~@2 a3@4 c2@5 [d2,d3]@4 e3 ~@31 [f3,a5]@4 ~@24 c4@5 a4@10 a4@4 ~@18 a4@4 a4@5 ~@24 bb2@4 ~@10 bb3@5 ~@24 bb2@4, ~@2 c4@10 ~@8 f3@11 f3@10 f3@3 g5@7 g5@19 a3@10 [f2,db3]@41 [f4,db5,g5]@15 ~@13 bb4@2 ~@3 f5@10 bb4@3 [d4,g5]@3 f5@9 f4@5 bb4@8, ~@6 c3@10 ~@4 [f2,a3,c4]@32 f2@13 f3@15 [db5,e5]@14 a5@10 g4@8 [db5,g5]@4 [g4,a5]@10 f5@24 d5@9 g5@5 [bb3,d5,a5]@28, ~@21 c3@32 ~@3 c3@26 ~@12 [a3,eb5,e5]@41 [bb1,f4,bb4]@16 ~@4 f3@37, ~@37 f5@16 ~@7 f3 [a4,c5,f5]@21 ~@12 [a4,db5]@5 db4@37 ~@14 [d3,db5]@42]/6", // D F Db Gm7b5 G5 F Dbm Dbdim …
  P: "[~ bb4@9 ~@36 bb4@5 ~@4 c3@5 ~@15 [a4,c5]@4 ~@2 [a4,g5]@3 ~ [f4,g5]@4 ~@19 [gb2,db3]@4 ~ gb2@4 f3@6 ~@9 d4@4 ~@10 b3@5 ~@33 f4@4 ~@29 bb3@5 ~@5 c5@4 ~@10 c3@5 ~@4 [e3,a5]@5 g3, ~ bb1@22 g5@3 [bb3,a5]@4 g5 db4@5 f4@5 db4@5 [bb3,db5,f5]@5 bb4@9 f2@15 f5@4 c4@20 f2@4 c3@9 db3@5 g2@29 d4@5 b3@4 [f4,f5] d4@18 g2@38 [f4,f5]@19 g5@5 ~@5 c6@15, ~ f4@14 [bb4,db5,a5]@5 f3@40 f4@15 a3@42 d3@14 [f3,b3,a4,a5] f5@4 d4@2 g4 g5@2 [a4,a5]@19 b3@5 f4@4 d3@10 d3@52 eb5@2 ~@2 a5@11 c3@10, ~ db5@10 bb2@49 [a4,c5]@10 f3@24 f4@4 [a4,c5,f5]@19 f4@14 d5@15 [f3,g4,g5]@28 [bb4,d5]@14 f4@5 [bb3,f5]@4 [g4,g5]@5 [d4,a4,a5]@5 [g4,g5]@25 c2@24, ~@10 bb4@5 db3@46 ~@4 c3@16 c5@3 [a4,a5]@5 [a4,c5] [g5,a5]@27 [b4,d5]@6 f3@4 b4@47 f4@10 ~@4 [f3,bb4,d5]@44 e5@9 e5@9 ~@6]/8", // Am A7 Fsus2 Gb5 A5 Bbmaj7 Bbm F …
  Q: "[~@64 c3@4 ~ f4@9 [a3,c4,f4]@5 f4 ~@9 f3@5 c4@5 ~@9 [e3,c4]@4 ~ e3@4 [e3,e4,e5]@5 d3@5 ~@4 [a3,d4,f4]@5 ~@9 a3 ~@10 a3@2 ~@16 d5@4 ~ bb2@4 ~@4 d4 [bb3,d4,f4]@4 ~@9 f3 ~@4 bb3 ~@4 f3@4 [d3,f3]@4 bb2, ~@3 c3@12 ab4@19 c8@20 a4@9 bb4@5 a4@15 [f3,a3,c4] [f4,a4]@4 c4@5 a3@5 [f3,f4]@5 c4@4 [f3,a3]@5 [e2,d4,d5]@4 [f3,a3,c4,f4]@10 [a3,d4]@9 ~@5 a3@5 f3@4 d5 a3@2 g4@21 [c3,a3,c4,f4,c5]@4 [bb2,d4]@5 bb3@9 bb4@20 bb3@13, ~@3 [ab5,c6]@10 e4@4 c5@2 e5 ab5@2 c6@2 e6@2 ab6@42 c4@10 c3@48 [d2,e4,e5]@57 bb1@41, ~@3 c5@7 ab3@17 c7@3 e7@39 c5@58 ~@8 [a4,d5]@14 ab4@19 [a3,d4,f4,a4,d5] d3@14 [d4,f4,bb4]@9 ~@4 bb3 [f3,d4,f4]@4 d3@5 f3@4 [d4,f4]@14, ~@7 e3@25 ab7@37 f2@29 [f2,a4]@29 ~@4 d3@9 [d3,d4,f4]@10 a4@4 [d3,c4,d4,f4]@8 a3@3 f3@19 ~@3 bb2@9 bb2@27 ~]/7", // F C E Dm Bb Dm F E7 …
  R: "[~@9 [g2,bb3,d5,e5]@4 ~ c3@4 ~@4 [g3,f4]@5 ~@9 g3@4 ~ g3@4 ~@18 bb3@4 f3 ~@8 [f3,a3,c4,f4]@4 c4 c4@4 c4@5 [a3,c4]@5 c4@4 ~@5 c3@4 ~ e3@4 e3@4 e3 e3@4 ~@6 d3@4 f4 f4@4 ~ a3@4 a3@4 ~ a4@4 ~@5 a3@4, [d4,f4,bb4]@13 d5@14 f4@27 [e3,a4,d5] c3@3 g4 g3@3 [c3,f4]@5 f2@14 a3@9 c3@10 f3@8 c4@5 [f3,c4,f4]@10 [d2,f5]@37, [bb3,d5]@9 ~@4 [c2,bb4]@54 [a3,c4,f4]@9 ~@5 a4@28 [e2,g4,g5]@13 d4 f4@9 d3@14 [d4,f4]@5 [d3,d4,f4,a4]@9, ~@4 [d3,c5]@9 [e4,g4]@9 c5@18 bb3 [c3,c4,e4,d5]@4 g3@4 e4 c4@4 bb3 e4@13 f3@8 ~@5 f3@14 a3@4 c4@4 a3@6 d5@2 ~@6 e4@5 d3 [a4,d5]@9 d4@5 [f3,d5]@23, ~@5 f3@9 ~@4 c3@4 [e4,g4]@5 c3 [g3,c4]@3 e3@10 g4@8 c5@20 ~@3 c3@9 f4@14 [f2,f4]@15 ~@3 a3@9 a3@15 [d4,f4,a4]@9 a3@9 ~@5]/5", // Em7b5 G7 F Am Bb Dsus2 F5 Dm …
  S: "[~@5 [d3,a3]@4 a3 ~@4 bb2@4 ~ bb2@4 bb2@4 ~@10 f3@4 bb3@5 ~@37 c3@4 ~@15 [c4,bb4]@4 ~@16 g4@4 ~ f4, f3@18 ~ [f3,bb3,d4,d5]@8 [d5,f5]@6 [bb3,d4]@13 [bb2,f3,bb3] d4@4 f4@22 [e4,c5]@23 c4 g3@4 [c3,bb3]@5 [c4,bb4]@5 c2@3 bb4 bb3@2 a4@9 e2@2, ~ d4@9 [d3,a3,d4,f4]@9 bb1@54 g4@14 c4 c3@4 e3@36, ~@5 [a4,d5,f5,a5]@13 ~ [g4,g5]@8 [bb2,f4,bb4]@5 d3@23 bb4@4 bb3 d4@4 [g4,g5]@4 g2 bb2@59, ~@14 c3@59 [c2,c4,bb4]@5 g2@50]/4", // D5 C7 Bb Dm Bb Bb5 C C7 …
  T: "[~@54 [e2,e3,d4]@5 a3@6 ~@8 a3@5 ~@32 a2@5 ~@5 bb2@5 d4@4 ~@10 bb3@4 ~@24 g2@4 ~@29 bb4@6 ~@10 a4@14 ~@20 c4@6, ~@3 f4@42 f3@5 a3@9 e4@56 [bb1,a4]@48 [f4,bb4,d5]@8 c4@4 ~@5 e4@11 e3@22 bb4@17 f4@24 ~@2, ~@3 c4@14 a3@5 c4@10 f2@27 d2@28 [a3,d4,f4] a4@4 a3@23 d5@28 [f3,f4]@6 d3@23 c2@60 ~@24, ~@3 a3@5 c3@51 d3@10 a2@4 d4@5 a3@4 f3@14 f4 [a2,d4]@4 d2@5 [c4,f4,a4,c5]@9 f4@14 bb4@24 f3@5 bb2@14 f4@23 g3@5 [bb3,e4]@32 ~@13 a3@11, ~@4 f2@22 a3 f3@9 a3@5 c4@19 ~@5 a3@8 d3@42 d4@10 bb2@4 [d3,d4,f4]@5 f3@9 [bb3,d4]@30 ~@3 g2@56 ~@3 c3@21]/8", // E7 Bbmaj7 Bb Dm F D5 F Bbdim …
  U: "~@27 a2@5, ~@4 a3@9 f3@19, ~@9 [c3,c4]@23, ~@13 a3@10 [e3,a3]@9, ~@9 [e2,g4]@7", // C A5 Em
  V: "[~@71 bb2@5 ~@28 bb3@10 ~@35 bb3@5 ~@41 f4@51 ~@10, f4@19 a3@9 d2@10 d4@5 [c2,a4]@14 g4@23 d3@10 bb3@5 d4@20 ~@44 a3@24 ~@5 a3@58 ~@10, d2@14 f3@34 c3@5 bb3@8 f4@53 c4@59 f3@11 ~ f3@61 ~@10, d4@9 d3@46 d4@21 bb2@39 ~@3 g2@62 f2@12 c4@54 ~@10, ~@5 a2@52 bb1@58 ~@50 g3@18 c3@63 ~@10]/8", // F
})).s("gm_piano").gain(0.29)

// chords · piano · "A.PIANO 1" · soft notes
const piano_soft = note(`<
  ~@6 A ~@5 B@2 ~ C@2 ~ D ~@2 E ~ F ~@2 G H@2 I J K L@4 ~ M N@4 ~ O ~@3 P ~@6 Q R S T ~ U V ~@2 W X Y@3 ~ Z ~@3 AA AB@3
  AC@2 ~ AD@2 ~@3 AE ~@3 AF@3 ~ AG@2 AH@2 AI AJ ~@4 AK@3 AL@2 AM ~@3 AN@4 AO@2 AP@4 ~@2
>`.pickRestart({
  A: "~@2 g4@5 g4 ~@24", B: "[~@22 b3@15 ~@27]/2", C: "[~@29 e3@7 ~@28]/2", D: "~@5 c3@2 ~@9", E: "~@12 a3@5 ~@15",
  F: "~@10 d4@5 ~@17", G: "~@14 c4@5 ~@13", H: "[~@10 e4@4 ~ a3@23 ~@5 a3@9 ~@12]/2", I: "~@17 f3@5 ~@10",
  J: "~@13 f3@10 f3@9", K: "~@2 c3@5 ~@9, c4@29 ~@3, g3@3 ~",
  L: "[~@2 c4@37 ~@19 a3@14 ~@4 c3@15 ~@19 c3@16 ~@2, ~@44 a3@14 ~@14 a3@14 ~@5 c4@14 ~@23, ~@53 f3@14 ~@6 f4@26 ~ f4@26 ~@2]/4",
  M: "~@2 c4@3 c4@4 ~@23", N: "[~@30 g4@8 ~@18 a3@25 ~@14 f2@24 ~@9]/4", O: "~@17 db3@7 ~@8", P: "~@6 f4@21 ~@5",
  Q: "~@3 a3@9 ~ d4@9 ~@10", R: "~@21 a3@4 ~@7", S: "~@3 d5@6 ~@7 f4 ~@15", T: "~@11 f3@2 ~@19",
  U: "~@13 e4@4 g3@10 ~@5", V: "~@9 c4@2 ~@5", W: "~@7 d4@4 ~@21", X: "~ f3@3 ~@4",
  Y: "[~@27 g3@9 ~@15 g3@9 ~@4 f3@9 ~@23, ~@60 c4@13 ~@23, ~@15 a3@2 ~@7]/3", Z: "~@3 a3@8 ~@21", AA: "~ c4@3",
  AB: "[~@15 f3@19 ~@14]/3", AC: "[~@15 e2@37 ~@12]/2", AD: "[~@39 d5@15 ~@10, ~@25 a4@14 ~@25, ~@35 bb2@14 ~@15]/2",
  AE: "~@25 f4@4 ~@3", AF: "[~@30 bb3@11 ~@17 e5@10 ~@28]/3", AG: "[~@29 e3@19 ~@16]/2", AH: "[~@26 f3@11 ~@27]/2",
  AI: "f3@5 ~@27", AJ: "~@23 c4@5 ~@4", AK: "[~@29 f3@8 ~@4 f3@5 ~@9 f3@19 g3@14 g3@4 g3@4, ~@74 c3@9 ~@13]/3",
  AL: "[~@21 d2@16 ~@8 f3@14 ~@5, ~@11 ab4@26 ~@27]/2", AM: "~@24 f4@7 ~",
  AN: "[~@41 c4@4 ~ bb4@7 ~@14 c3@4 ~@29 f2@28, ~@3 c5@15 ~@14, ~@22 c3@39 g4@5 f4@4 ~@24 f4@34, ~@26 b2@45 f2@29 ~@28, ~@45 c4@26 ~@9 f3@29 ~@19]/4",
  AO: "[~@33 a3@24 ~@7, ~@12 d4@7 ~@13]/2",
  AP: "[~@22 f3@13 ~@45 bb3@5 ~@5 bb3@30 ~@8, ~ f2@24 c2@32 ~@7, ~@35 f3@16 ~@14 c3@54 ~@9, ~@36 g4@15 ~@24 g3@26 ~@27, ~@23 g2@4 ~@8 e3@25 ~@4]/4",
})).s("gm_piano").gain(0.17)

stack(piano, piano_soft)