Strudelify

Berceuse

Chopin Frederic

KeyD♭ majorTempo120 bpm
0:00/0:00
// Berceuse — Chopin Frederic
// 120 bpm, 4/4, key C# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 131 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 B@2 ~ C D@6 E@3 F@8 G@4 H@3 I@6 J K@2 L@7 M@7 N@2 O@2 P Q@8 R S@8 T@7 U@2 V@8 W X@6 Y@8 Z@7 AA@3 AB@2 AC@3 ~@3 AD@3
  ~@4
>`.pickRestart({
  A: "~@11 ab3@21", B: "[~@40 ab3@21 ~@3, ~@31 db2@29 ~@4]/2", C: "~ f5@15",
  D: "[~@20 f5@8 ~@36 c5@9 eb5@10 ~@49 bb5@8 ~@28 eb5@18 eb5@6, eb5@28 eb5@27 bb4@15 ~@13 ab4@33 ~@24 ab5@30 ~@22, ~@10 ab5@19 ~@8 f5@20 ~@57 eb5@27 ~@9 [ab3,gb5]@21 ~@21, ~@38 ab3@19 ~@37 ab3@30 ~@17 db2@30 ~@21, ~@46 db5@12 ~@36 db5@23 ~@6 gb5@18 ~@18 f5@12 ~@21]/6", // Ab7
  E: "[~@25 bb4@9 ~@18 [ab4,f5]@8 ~@10 f5@9 ~@8 bb4@9, ~@5 [db5,f5]@31 ~@7 [bb4,ab5]@17 [bb4,eb5]@20 ~@16, ~@17 c5@17 [c5,eb5]@27 ~@18 [ab4,db5]@17]/3", // Db Bb7 Eb5 Cm Db5
  F: "[c5@9 ~@79 ab3@4 ~@9 db5@4 ~@13 ab4@5 [e5,ab5]@12 ~@4 ab4@29 ~ ab4@2 ~@8 ab4@8 ~@2 ab4@7 ~ ab4@8 [ab4,ab5]@8 ~@2 ab4@7 ~ [ab4,bb4]@9 ~ ab4@7 ~ [ab4,eb5]@9 ~ ab4@5, ~@9 gb4@38 db5@7 ~@2 c5@13 ab4@4 gb5@24 [f5,bb5]@8 gb5@18 ~@12 ab5@32 ~@10 ab5@10 ab5@9 ab5@9 ~@8 [db5,ab5] [db4,f4]@8 ab5@10 ab5@8 ab5@10 ab5@6, ~@9 eb5@14 ~@3 f4@11 eb4@14 eb5@26 ab5@29 ~@3 d5@14 ~@73 eb5@27 ~@9 c5@19 ~@5, ~@20 ab4@33 ~@7 gb5@8 bb5@10 ~@4 f5@10 eb5@13 gb4@30 ~@70 ab3@27 ~@24, ~@32 db5@10 [db4,f4]@10 ~@12 bb4@14 ~@10 db6@18 ~@8 [eb5,c6]@10 ~@12 f5@32 ~@20 f5@9 ~@8 f5@18 ~@33]/8", // E Ab Absus2 Ab5 Bb5 Db5 Db Cm
  G: "[~@5 ab4@7 ~ ab4@9 ~ ab4@8 ~ ab4@7 ~@2 ab4@7 ~ ab4@9 ~ ab4@7 ~ [db4,f4,ab4,f5]@9 ~@19 [gb5,g5]@11 ~@4 bb5@4 ~ ab5@2 ~@2 bb5@2 ~@6 ab5, ~@4 c5@18 [gb4,d5]@26 f5@10 bb5@19 ab4@10 ab4@11 ~@20 ab5@2 ~ ab5@2 ab5@2 ab5@2 ~, ~@4 ab5@8 db5@10 ab5@9 ab5@8 ab5@9 ab5@28 gb5@8 bb5@22 ~@2 ab5@4 ~@2 bb5@3 bb5@2 ~@3 bb5@2 bb5@2 bb5@2, ~@5 ab3@23 ~@3 [ab3,eb5]@18 ~@10 ab3@26 gb5@10 ~@11 f5@22, ~@12 ab5 [db4,f4]@13 ~@14 e5@9 ~@9 f5@8 g5@10 [gb4,ab5]@31 ~@21]/4", // Db Gmaj7 D Ab5 Db Gbsus2
  H: "[~@9 bb5@3 ~@53 c5@2 g4@2 ~@22 gb5@2 ~ g5@2, ~ g5@11 f5@9 e5@11 eb5@2 ab5@3 f5@2 c5@2 db5@3 gb5@14 [f4,a4]@2 bb4@2 eb5@5 gb4@16 c5@2 db5@2 eb5@2 f5@4 ~@3, ~@4 ab5@9 ~ gb5@9 f5@5 gb5@2 d5@16 eb5@3 ab3@25 bb4@4 ab4@15 ~@3, ~@6 db6@7 ~@3 c6@33 b4@2 c5@3 f5@2 db5@12 ~ ab4@7 [ab3,g4]@17 db2@3, ~@18 ab5@8 bb5@42 ~@4 c5@8 bb4@13 ~@3]/3", // F Abmaj7
  I: "[~@22 eb6@3 d6@2 ~@56 gb6@2 ~@29 ab5@5 ~@30 [gb5,bb5]@5 ~@30 c5@2 [db5,f5]@6, ab5@10 c6@2 b5@2 db6@2 [f4,c6]@2 d6@2 db6@5 gb4@30 ab6@3 f7@3 eb7@5 ab3@26 eb6@3 gb5@5 db6@3 c6@2 eb5@3 c6@3 bb5@8 [f5,ab5]@35 eb6@19 gb5@2 eb5 c5 f5 ab5 bb4 db5 eb5 gb5 ab4@3 ~@6, ~@3 a5@23 ~@3 eb6@38 f6@13 ab6@5 bb5@12 eb6@24 ~@10 ab3@28 ab5@3 db6@24 ~@6, ~@5 b5@3 bb5@18 ~ e6@4 f6@3 ab3@2 gb6@3 f6@2 g6@2 gb6@3 ab6@3 g6@37 ~ gb6@34 ~@22 f4@12 c6@7 bb5@4 gb5@2 c6@18 ~@6, ~@7 ab3@27 e6@34 db7@3 c7@2 bb6@2 db6@3 bb6@8 ~@4 f6@31 ~@10 [db6,f6]@25 ~@3 f5@6 eb5@3 ab5@3 db5@2 bb5@13 ~@6]/6", // Gb Db F5 Fm Db
  J: "~@19 [ab4,bb4]@5 f5@3 ~ bb4@4, ~@5 ab3@27, ~@5 c5@7 ~@4, ~@10 ab4@9 ~@13, ~@15 [db4,f4,db5,f5]@9 [eb4,db5]@8", // Absus2 Db Eb7
  K: "[~@4 bb4@4 ~@3 [gb4,bb4]@3 ~@6 bb4@6 ~@30 [d5,f5]@3 eb5 ~@2 [e5,g5]@2, f5@8 ~@6 eb5@12 ab4@8 g4@6 c5@3 [bb4,db5]@3 d5 [f4,b4]@9 gb4@8, ~ db5@7 db5@6 ~ c5@12 f4@10 ab4@12 eb5 c5@8 ~@6, ~@30 a4@4 bb4@3 ab3@23 ~@4, ~@31 gb4@6 b4@3 a4@13 [db5,e5]@5 ~ gb5@5]/2", // Gb Dm Em Bbm Fdim Dbm
  L: "[~@16 [bb5,db6]@3 b5 ~@26 bb6@3 ~@24 [gb6,bb6]@6 ~@27 ab5@7 ab5 ~@23 bb6@6 ~ bb6 ~@22 db5@7 db5 ~@23 c6@8 ~@4 f4@6 ~@3 ab5@5, ~ [ab3,f5]@12 [a5,c6]@6 d6@6 e6@3 f6@3 eb6@6 [db4,f4,f6,ab6]@3 [gb6,bb6]@3 [f6,ab6]@5 ~ eb6@13 ab6@3 bb6@4 bb5@10 ~ ab5@23 [f4,f6]@10 ~@13 eb5@17 ~ db2@20 [f4,ab5,f6]@10 [eb4,gb4]@21 [ab4,gb5]@11 eb5@18, ~ ab5@6 g5@12 ~@3 eb6@6 ab3@3 gb6@3 [e6,g6]@12 gb4@33 ~@23 db7@11 ~@3 c7@27 ~@12 [f5,db6]@19 ab5@10 ~@4 c5@19 ~@9 db5@8, ~@4 gb5@15 ~@6 db6@21 gb6 ~@2 ab6@7 [ab3,db6]@24 ~@11 ab3@32 ~@11 [gb5,eb6]@10 ~@4 e5@10 ab6@16 ~@3 f6@29 ab5@13 ~@5, ~@4 a5@3 bb5@3 [ab5,b5]@9 ~@3 c6@26 ~@4 bb6@4 ab6@3 [gb6,bb6]@3 c6@17 ab6@34 gb6@10 [c6,gb6]@21 db6@11 ab3@29 [ab3,ab5,eb6]@22 ~@11 [ab3,f4]@7]/7", // Bbm Gb Db Am Db Gb Fm F …
  M: "[~@4 ab4@6 ~ ab4 ~@22 bb6@7 [db6,bb6] ~@22 ab5@6 ~ ab5 ~@20 [gb5,eb6]@12 ~@20 c7@4 ~@7 [g6,bb6]@3 ~ g6@3 a6@3 [f6,ab6]@3 ~@6 [eb6,gb6]@3 ~@7 e6@2 ~@7 [b5,d6]@3 ~@6 [a5,c6]@3 ~@6 [g5,bb5]@3 [g5,bb5]@3 a5@2 ~ [f5,ab5]@3 ~@6 [eb5,gb5]@3 ~@10 [bb4,e5]@2, ~@2 [db4,f4,f5,db6]@9 [c4,gb4]@30 ~@11 ab3@30 ab6@22 db6@28 [ab6,b6]@6 bb6@4 gb6 ~@5 f6@4 e6@6 [eb6,gb6]@11 eb6@10 bb5@6 [a5,c6]@3 [ab5,b5]@9 gb4@16 eb5@3 [db5,f5]@3 eb5 c5@4, ~@11 gb5@11 c6@19 ~@10 [f5,db6]@4 ab6@6 [db4,f4,f6,db7]@9 ~ [gb4,gb6]@34 ~@15 ab3@32 ab3@9 [d6,f6]@2 db6@3 e6 db6@4 ~@5 d6@21 gb5 ~@5 ab5@21, ~@14 eb6@10 eb5@7 [gb5,eb6]@10 ~@4 e5@26 ~@4 eb7@30 ~@5 db7@33 ~@8 g6@19 c6@9 ab3@27 g5@18, ~@21 [ab3,gb6]@19 ~ db2@30 ~@15 c6@19 ~@23 [a6,c7]@15 ~@5 ab6@22 ~@6 b5@3 db6@19 ~@5 f5@4 e5@5 gb5@12]/7", // Gb Ebm Gm Fm Ebm Bm Am Gm …
  N: "[~@61 [eb5,gb5]@3, ~@3 ab4@12 ab3@24 f5@7 ab4@3 [eb5,gb5]@3 [d5,f5]@3 ab4@3 [d5,f5]@6, ~@7 gb5@24 [db5,f5]@3 gb4@30, ~@7 eb5@12 [db5,f5]@6 [db4,f4]@9 ab4@8 gb5 eb5@3 ab3@18, ~@11 [db5,f5]@4 ab4@7 [c5,eb5]@2 ab4@4 [c5,eb5]@10 ab5@26]/2", // Ebm Dm Db Cm
  O: "[~@15 ab4@2 ~@13 [eb5,gb5]@2, db2@16 [f5,ab5]@3 [f4,ab4]@4 [f5,ab5]@3 a5 gb5@7 a5@21 [e5,g5]@9, ab4@7 [e5,g5]@3 ab3@28 [f5,ab5]@3 ab4@4 [f5,ab5]@19, ~@3 eb5@27 gb4@34, ~@3 gb5@7 ab4@3 [e5,g5]@20 ~ gb5@14 g5@3 ab4@13]/2", // Ebm Fm Em Fm Em
  P: "~@2 db5@2 ~@5 f5@5 ab5@5 ~ ab5@4 ~ [ab5,db6]@5 [bb5,db6,gb6]@2, ~ f5@7 db5@16 f6@8, ~@4 ab5@3 f5@9, ~@7 db6@3 gb5@6, ~@19 eb6@13", // Db5 Gb
  Q: "[~@9 gb5@6 gb5@6 gb5@5 gb5@3 ~ gb5@3 [eb5,gb5,bb5]@6 [f5,ab5]@7 f5@4 ~ f5@3 ~ ab5@3 [ab5,db6]@4 [ab5,db6]@3 [db6,ab6]@4 [db6,ab6,db7]@5 eb6 ab6 ~@19 c6@5 ~@8 ab5@6 ~@8 bb4@2 ~@8 c5@2 ~@7 db5@3 ~@8 c5@2 ~@8 db5@2 ~@7 eb5@2 ~@55 a5@5 ~@21 ab5@2, ~@3 f6@26 [db5,bb5]@10 eb5@15 db6 f5@3 gb6@4 [f4,f6]@3 ab5@9 db7@17 [bb5,eb6]@4 [ab5,f6]@5 [eb5,c6]@4 bb5@10 ~@2 ab5@11 ab5@7 c5@10 bb4@22 ab5@8 ~@2 bb5@25 f5@10 ab3@2 eb6@10 e6@2 bb5@8 [ab5,f6]@17 ab5@2 f6@4, ~@9 eb6@31 ~@10 db6 ab3@36 ab6@27 ~@10 ab3@30 c5@15 f5@5 ~@4 f5@5 ab3@23 ab5@2 g5@2 gb5@5 a5@3 ab5@2 g5@14 ~@10 bb5@5 bb5@7, ~@15 c6@25 ~@6 ab5@5 bb5@24 ~@4 c7@35 ~@10 bb4@15 eb5@6 ~@5 db5@7 ab5@2 eb5@5 db5@9 [db2,db5]@12 c6@2 gb5@2 f5@3 [db4,f4,e5]@10 [c4,gb4]@32 ~@8 ab3@14, ~@21 [db5,bb5]@5 [c5,ab5]@14 ~@6 db5@29 ~@4 ab6@4 [db6,bb6]@31 ~@6 c5@9 db5@8 ab5@9 ~ ab5@8 ab3@19 ~@6 e5@3 eb5@11 db6@2 g5@3 gb5@4 ~ d6@30 ~@13 gb6@9]/8", // Ebm Fm Db5 Gb F Eb5 Db Cm …
  R: "~@4 f5@2 ~@3 ab5@2 ~@12 eb5@2 ~@4 eb6@2 gb5, bb5@2 bb5@7 gb4@2 f6 ab5@2 gb5 eb6@2 gb5@2 [ab3,ab5] f6@5 c6 eb5@2 gb5@3 ~, ~ gb6@31, ~@3 db6@13, ~@7 f5@25", // Ab
  S: "[~@3 f5@2 gb5 ~@26 eb5@2 ~@3 db5@2 ~@21 ab4@2 ~@3 a4@2 ~@25 eb5@2 ~@11 gb5@2 ~@7 ab5@2 ~@24 d6 ~ b6 ~@2 eb6@2 ~@8 f6@2 ~@3 gb6@4 ~@44 b4@3 ~@2 b4@2 a4@2 ~@2 b4@2 ~ b4@2 ~@3 b4@2 ~@2 a4@2 [a4,b4]@2 ab4@3 ~@3 ab4@2 ~@5 bb4 ab4@2 ~@3 ab4@2, f5@3 ~@4 gb5@21 c5 ab5@2 c5@3 c6 eb5@4 bb5 db5@2 eb5 c6@15 c5 db2@11 ab3@24 c6@2 e5 db6 ab3 e5@8 eb6 gb5@2 g5 e6@2 g5 db2@2 f6 ab5@2 a5 gb6 a5@2 ab3@27 e6 [ab3,db7]@2 e6@4 d7@7 gb6@2 g6@2 e7@3 db2@12 db7@2 c7 ab3@39 ab3@22 db2@9, ~ db6@4 ~ eb6@56 ~@5 gb5@3 bb4 g5@2 bb4 b4 ab5@2 b4 c5 [db4,f4] a5@2 c5 db5 bb5@2 db5@3 b5@6 eb5@28 bb5 g6 bb5@2 b5 ab6 b5@2 c6 f4 a6@2 c6 db6 bb6@2 db6@2 [eb4,gb4]@29 g6@2 ~ ab6@9 eb7@5 bb6@2 ab6@22 a4@4 ~@2 b4@2 ~@7 a4@3 a4@2 ~@7 a4@2 a4@3 a4@2 a4@3 ~@3 bb4@2 bb4@3, ~@9 db5@2 db5@3 ab3@12 f5@18 eb5@18 f5@26 [eb4,gb4]@12 f5@2 d6@2 f5@38 ~@2 d6@28 ~@8 e7@10 gb6 f6@2 e6 eb6 db6 c6 f4 bb5@14 ~@6 a4@3 a4@3 [a4,b4]@3 ~@3 b4@3 ~@6 ab4@2 ~@3 ab4@2 ab4@2 ~@4 ab4@2 ~@2, ~@10 bb5@4 f5 db6@2 f5@2 c6 eb5@3 f5 db6@22 bb4 gb5 bb4@2 db5 bb5@2 db5@3 ab5@6 ~ ab4@5 a4@20 d5@2 ~ d5@51 ~@5 c7@25 ~@4 f7@23 ab5 gb5 f5@2 e5 eb5 db5 c5@2 [c4,gb4]@40 ~@8]/8", // Asus2 Db5 Db Ebm Asus2 Cdim
  T: "[~@12 ab5!2 ~@6 ab6@11 bb4@2 ab4 ~@2 bb4@2 ~@15 ab5@2 ab5@2 ~@7 ab6@15 db7@3 ~@15 db7@2 ~@48 ab5@2 db6@2 ~@15 db6@2 ~ db6@2 ~@14 c5@2 ~@32 c5@5, bb4@9 f5@8 bb6@2 f4@12 gb4@11 gb4@5 eb5@2 gb5@2 bb5@6 ab5@23 ~@5 db7@4 db7@2 f6@2 db7 gb6@12 f6@2 c7@12 gb6@2 ab6@2 c6@2 g6@2 eb6 gb6@2 a5@2 f6@2 c6@2 eb6@2 ab5@2 gb6@2 gb5@2 c6@4 db2@26 f5 c6@2 db5@2 b5@2 f5 bb5@4 a5@14 a4@2 f5@2 c5@3 eb5@16, ~ ab4@4 ab4@27 ~@2 bb4@2 ~@3 bb4@21 bb6@20 ~@2 bb6@17 f6 db7@2 db6@2 db7@46 ~@6 ab5@32 ~@3 ab5@19 ab4@12 ~@2, ~@3 f4@3 db5@4 bb5@5 ab5@17 ~@3 ab4@3 ab4@2 ab4@4 ~ ab4@35 ~@7 ab6@22 db6@4 f6@2 bb6@35 ~@4 db6@4 db6@2 f5@2 db6@2 gb5@24 ~ gb5@6 g5@16 ~@13, ~@6 ab3@38 ab3@35 db2@32 b6@6 c6@2 a6@31 ~ bb5@17 f5@3 db5@2 [f4,db6]@15 ~@5 c5@4 eb5@2 gb5@12 ~@2 gb5@11]/7", // Db
  U: "[~@55 gb5@5 bb5@4, ~@6 db5@23 db5@14 ~@2 db5@17 ~@2, ~@18 ab3@26 ~@6 eb5@11 ~@3, ~@40 c5@21 ~@3]/2",
  V: "[~@2 bb4@6 ~@21 ab4@12 ~@22 gb5@13 ~@57 gb6@6 ~@25 c6@5 ~@25 eb5@8 ~@49 eb5@3 f5@2, ~@8 ab4@21 ~@12 gb4@28 ~@7 f4@23 ~ [f4,g5]@13 ~@11 gb5@5 c6@10 f6@16 f5@4 ab5 f4@9 bb5@34 ~@42 c5@3 db5@7 ~, ~@20 ab3@32 c5@25 ~@33 bb5@30 ~@5 eb6@25 ~@8 eb5@10 c5@15 ~@31 g4@21 ~, ~@47 ab4@31 ~@41 c5@20 ~@11 ab3@29 ~@4 bb4@20 ~@21 f4@13 ~@5 bb4@13 ~, ~@58 eb5@20 ~@17 ab5@10 ab5@8 ~ ab5@25 ~@11 db6@20 ~@3 gb5@29 ab4@35 ~ ab4@16 ~@2]/8", // Fsus2
  W: "~@6 bb5@5 ab5@21, ~ gb5@5 ~@10",
  X: "[~@11 g5@5 ~@44 gb5@4 ~@6 bb5@4 ~@60 db6@4 ~@29 ab4@7 db5@18, ~@16 ab5@11 ab5@6 eb5@3 bb4@4 c5@5 ~@2 ab4@10 eb5@7 [f4,f5]@11 ~@7 bb5@16 ab6@4 f6@4 eb6@12 c7@7 ab6@3 [f4,f6]@3 eb6@7 [gb4,c6]@13 eb5@4 db5@4 c5@4 bb4@11 ~@18, ~@20 c6@23 bb4@24 gb5@7 ~@4 ab6@7 ab6@7 ab6@3 c6@14 ~@5 db7@25 ~@5 ab5@30 ~@18, ~@23 bb5@21 ~@10 db5@20 [gb4,ab5]@35 ~@9 ab3@30 f5@26 ~@18, ~@30 gb5@14 ~@7 eb5@4 ab3@31 ~@2 db6@21 ~ db6@12 bb6@18 ~ bb5@33 ~@18]/6", // F Gbdim Gbsus2
  Y: "[~@3 f4@12 ~@31 b4@10 ~@14 db5@10 ~@134 ab4@8 ~@10 bb3@24, ~@15 b4@21 ab5@49 f5@39 ab4@23 ab5@5 b5@4 db6@29 ab5@4 eb5@5 gb5@4 f5@5 db5@19 bb4@34, ~@21 db5@20 eb5@15 b4@5 eb5@28 bb5@49 db5@33 ab3@5 eb6@47 ~@33, ~@27 f5@39 ab4@28 ab5@35 db5@4 b4@28 eb6@5 gb6@57 ~@33, ~@32 bb5@48 db5@18 eb5@11 f4@6 b4@5 eb5@23 f5@28 f6@52 ~@33]/8",
  Z: "[~@77 db6@5 ~@109 eb5@10 f5@22 f4, db5@21 b4@24 db4@4 db6@5 [gb4,gb6]@5 ab6@5 [bb3,bb6]@5 gb6@4 eb6@9 f6@37 ab3@3 c6@5 gb5@4 ab5@9 bb5@5 f5@9 bb5@48 ~@22, ~@6 [bb3,gb5]@20 bb4@10 gb5 bb3@4 ab5@41 db2@32 bb5@4 db6@55 ab5@29 ~@22, ~@11 ab5@16 db2@18 bb5@38 ~@4 eb6@5 bb5@4 c6@5 [c4,gb4]@4 db6@4 ab5 c4@26 c6@48 db5@18 ~@22, ~@16 bb5@16 db5@51 ~@9 ab3@8 eb6@49 gb5@10 ab5@9 f5@33 ~@23]/7", // Gb Bb Ebm Cdim
  AA: "[~@43 ab4@5, ~@9 eb5@31 eb5@56, ~@20 ab5@57 db5@19, ~@21 ab3@28 ~@9 db5@9 bb4@29, ~@30 f5@19 f5@47]/3",
  AB: "[~@15 gb4@16 ~, bb4@33 ~@31, ~@10 db5@23 ~@31, ~@19 ab4@14 ~@31]/2", AC: "[~@48 eb4@11 ~@37, ~@29 f4@55 ~@12]/3",
  AD: "[~@15 [gb3,c4,eb4]@64 ~@17]/3", // Cdim
})).s("gm_piano").gain(0.32)

// chords · piano · "A.PIANO 1" · soft notes
const piano_soft = note(`<
  A@2 B@2 C D@8 E@5 F@6 G@5 H@7 I@7 J K@2 ~ L@7 M@2 N@7 ~ O@4 ~@2 P@2 Q ~ R@5 S@6 T@3 U@6 V@2 W X@6 Y@6 Z@7 AA AB@3 AC@2
  AD@8 ~
>`.pickRestart({
  A: "[db2@12 ~@9 [db4,f4]@8 ~@11 ab3@23 ~, ~@29 gb4@34 ~, ~@30 c4@33 ~]/2", // Db
  B: "[~@17 [db4,f4]@10 ~@12 ab3@25, ~@27 gb4@37, ~@7 c4@9]/2", C: "~@23 [db4,f4]@9, ~ db2@15, ~@7 ab3@9",
  D: "[~@11 ab3@18 ~@18 [db4,f4]@9 ~@9 ab3@18 ~@22 [db4,f4]@9 ~@10 ab3@17 ~@18 [db4,f4]@9 ~@19 c5@10 ~@21 [db4,f4]@9 ~@9 ab3@17 db2@3, gb4@28 ~@28 [eb4,gb4]@27 ~@31 [c4,gb4]@27 ~@27 gb4@30 ~@29 [eb4,gb4]@27 ~@2, ~ c4@28 db2@28 ~@26 db2@33 ~@53 c4@29 ~@58, ~@176 db5@21 db2@31 ~@28, ~@178 ab3@20 ~@11 ab3@22 ~@25]/8", // Db Ebm Cdim Ebm
  E: "[~@7 f4@9 ~@77 ab3@17 ~@19 [db4,f4]@9 ~@8 ab3@14, ~@7 ab3@25 g4@10 ~@41 gb4@27 ~@50, ~@8 [db4,f4]@10 ~@8 db2@16 ~@13 db2@14 ~@11, ~@12 eb4@10 ~@20 eb4@13 ~@14 c4@11, ~@33 ab3@22 ~@9 ab3@22 ~@38 ab3@15 ~@21]/5", // Db
  F: "[~ ab4@7 ~@20 [db4,f4]@11 ~@11 ab3@18 db2@3 ~@33 ab3@18 ~@29 c4@25 db2@16, ~@8 db2@31 [gb4,eb5]@29 ~@27 [eb4,gb4]@28 ~@69, ~@19 ab3@21 c4@29 ~@53 db2@32 ~@38, ~@39 ab5@10 ~@143]/6", // Db Ebm
  G: "[~@34 ab4@7 ~@7 ab5@3 ~@71 db4@9 ~ eb4@25 ~@3, ~@12 c4@29 db2@34 eb4@56 ~@29, ~@21 ab3@21 ~@12 ab3@31 ab3@28 ~@47, ~@64 [db4,f4]@13 ~@26 db2@28 ~@29, ~@74 gb4@57 ~@29]/5", // Db
  H: "[~@16 db4@9 ~@39 db7@4 ~@7 [db4,f4]@10 ~@10 ab3@25 ~@23 db4@11 ~@18 f5@5 ~@9 db2@30 ~@4 gb4@4, ~@25 c4@60 [c4,gb4]@36 ~@33 gb4@32 ~@38, ~@51 bb6@22 ~@82 eb4@31 ~@38, ~@54 db2@32 ~@34 db2@36 ~@9 ab3@20 ~@39]/7", // Db Cdim
  I: "[~@4 gb4@4 f5@6 ~@6 gb4@6 ~@21 db4@9 c4@27 ~@10 d6@17 ~@7 gb6@6 ~@11 ab6@9 ~@6 db7@17 ~ db4@10 ~@10 ab3@20 ~@17, ~@4 ab3@22 db2@31 ~@26 db2@27 c4@33 db2@34 [c4,gb4]@31 ~@16, ~@130 gb6@7 ~@7 f6@23 ~@57]/7", // Cdim
  J: "~@5 db4@9 ~@18", K: "[~@13 db2@29 ~@22]/2",
  L: "[~@33 c7@7 ~@20 a6@4 ~@5 [db4,f4]@9 [c4,gb4]@27 ~@20 f4@8 ~@10 ab3@19 ~@31 c4@31, ~@7 c4@33 f5@3 ~@81 db4@9 c4@30 ~@61, ~@18 ab3@23 db2@38 ~@26 db2@29 ~@28 db2@37 ~@25]/7", // Db Cdim
  M: "[~@49 e5@6 ~@9, ~@20 db4@13 ~@9 ab3@22, ~@15 c4@17]/2",
  N: "[~@25 [db4,f4]@10 ~@6 c6@6 ~ ab3@23 ~@23 db4@13 ~@4 eb6@4 eb6@3 ~ eb6@4 gb5@9 gb5@4 gb5@4 [c5,gb5]@5 ~@21 [db4,f4]@10 [eb4,gb4]@30 ~@18, ~ db2@34 gb4@37 ~@47 ab3@27 ~@78, ~@2 ab4@33 ab5@22 ~@62 c6@8 ~@9 db5@9 ~@79, ~@14 ab3@33 eb5@18 ~@6 db2@36 ~@38 [db2,ab4]@32 ~@47, ~@35 c6 eb4@36 ~@35 [eb4,gb4]@39 ~@78]/7", // Db Cdim Db Ebm Db5 Ebm
  O: "[~@27 ab5@7 ~@19 ab3@10 ~, ~@7 db2@61 db2@55 ~@5, ~@31 [db4,f4]@38 ~@19 [db4,f4]@37 ~@3, ~@41 c4@28 ~@28 [eb4,gb4]@28 ~@3]/4", // Db Ebm
  P: "[~@4 db4@10 ~@21 eb7@9 ~@20, ~@20 eb6@23 ~@21, ~@30 f6@13 ~@21]/2", Q: "~@6 db4@13 ~@13",
  R: "[~@20 db4@11 c4@49 ~@46 ab3@23 ~@11, ~@46 ab3@17 ~@17, ~@52 [db4,f4]@23 ~@5, ~@115 gb4@34 ~@11, ~@58 eb4@17 ~@5]/5", // Db
  S: "[~@62 ab4@8 f4@24 ~@21 ab3@22 ~@44 ab3@7 ab3@4, ~@2 ab3@33 ab3@36 ~@121, ~@13 db4@15 ~@42 db2@37 ~@30 db2@34 ~@21, ~@24 eb4@47 ~@23 [db4,f4]@13 ~@51 [db4,f4]@13 ~@21, ~@24 gb4@27 ~@5 gb4@15 ~@33 [eb4,gb4]@34 ~@30 eb4@24]/6", // Db Ebm
  T: "[~@5 gb4@8 ~@43 ab3@19 db2@21, ~@13 db2@36 ~@47, ~@12 ab3@13 ~@23, ~@36 db4@13 ~@47, ~@46 [eb4,gb4]@29 ~@21]/3", // Ebm
  U: "[db4@9 ~@10 ab3@23 ~@44 ab3@21 ~@21 [db4,f4]@11 ~@13 ab3@19 db2@21, ~@9 gb4@33 db2@33 eb4@33 ~@32 c4@32 ~@20, ~@10 c4@33 ~@10 ab3@25 ~@29 db2@34 ~@51, ~@64 db4@13 ~@41 ab3@25 ~@49, ~@74 gb4@34 ~@31 gb4@33 ~@20]/6", // Db
  V: "[db4@5 ~@16 db2@11, ~@10 eb4@35 ~@19, ~@22 ab3@23 ~@19]/2", W: "db4@5 ~@5 ab3@6, ~@5 eb4@11",
  X: "[~@34 db4@14 ~@50 [db4,f4]@9 ~@29 b4@10 ~@11 [db4,f4]@9 ~@9 ab3@17, ~@14 db2@63 db2@40 ab3@30 ab3@28 ~@17, ~@24 ab3@35 ab3@29 ab3@20 f4@33 ~@51, ~@48 db4@50 ~@10 db4@49 ~@9 [db4,f4]@26, ~@48 f4@35 f4@15 ~@9 b4@28 db2@57]/6", // Db
  Y: "[~@21 [db4,f4]@9 ~@19 b4@13 ~@19 [db4,gb4]@10 [db4,gb4]@50 gb4@9 db4@28 ~@14, db2@31 db2@30 ~@35, ~@7 b5@14 ~@43, ~@10 [db4,f4]@11 ~@43, ~@13 ab3@8 ~@43]/6", // Db Gb5 Db
  Z: "[~@59 c4@8 ~@16 gb5@22 ~@22 db4@10 ~@50 [db4,f4]@9 ~@10 ab3@18, ~@14 gb4@44 gb4@9 eb5@27 ~@130, ~@40 db2@64 ~ db2@63 db2@56, ~@50 ab3@28 ab3@28 ~@11 ab3@32 ~@28 ab3@28 ~@19, ~@68 [c4,gb4]@38 ~@31 [db4,f4]@50 ~@9 [db4,f4]@28]/7", // Db Cdim Db
  AA: "~@10 [db4,f4]@5 [db4,f4], db2, ~@5 ab3@11", // Db
  AB: "[~@50 [db4,f4]@11 ~@31 db2@4, ~@9 db5@64 ~@18 eb4@5, ~@10 ab3@19 db2@63 ~@4, ~@10 f4@15 ~@6 db4@17, ~@39 ab3@32 [ab3,ab4]@25]/3", // Db Ab
  AC: "[~@10 ab4@11 [db4,f4]@10 ~@30 db2@3, ~@10 ab3@31 ab3@23, ~@31 [db4,f4]@33]/2", // Db
  AD: "[~@16 [db4,f4]@13 ~@111 [db2,f3,db4]@116, ~@6 ab3@39 ~ ab3@210, ~@29 [db4,f4]@64 ~@163, ~@79 ab2@85 ~@92, ~@79 ab1@64 ~@113]/8", // Db
})).s("gm_piano").gain(0.16)

stack(piano, piano_soft)

More by Chopin Frederic