Strudelify

Lied ohne Worte Op.2

Oscar Franz Op. 2

KeyE♭ majorTempo64 bpm
0:00/0:00
// Lied ohne Worte Op.2 — Oscar Franz Op. 2
// 64 bpm, 3/4, key Eb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (1/4 at bar 1, 3/4 at bar 1) are rendered on a constant 3/4 grid of one bar per cycle
// note: sustain pedal (CC 64) lengthens the held notes
// note: Transcription provider: pdmx. https://musescore.com/score/6096034; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 93 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(64/3)

// 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
const piano = note(`<
  ~ A B C D E F G@2 H I J K ~ L M N O P Q R S T U V W X U V Y Z AA AB AC AD AE AF ~@4 AG AH AI AJ AK AL AM AN AO AP AQ
  AR AS AT AU AV AW AX ~ AY AZ BA BB BC BD BE BF BG BH BI BJ BK BL@2 BM BN BO BP ~ AF BQ BR BS BT BU BV BW BX ~@4
>`.pickRestart({
  A: "~@10 ab4 ~", B: "~@4 eb4@4 ab4@4 c5@4 ~ [c5,eb5]@5 [bb3,f4,bb4,db5]@2, c3@2 [db3,a3,gb4], ab4 ~@5, ~ ab3@15 ~@8",
  C: "[c4,eb4,ab4]@2 [f3,d4,ab4]@2 ~@2 db5@2 bb4 ~ c5 ~, c5 ~, eb3 [eb2,eb3,db4,g4]@2", // Ab Ddim Eb7
  D: "ab2 ab1 ~, [eb3,c4,eb4,ab4]@5 ~@3", E: "~@2 [db3,ab3,e4]",
  F: "[c3,ab3,c4]@11 ~@5 [f3,ab3,db4]@2 ~@2 [eb3,ab3,c4]@2 ~@2, eb4@5 ~@3", // Fm Db Ab
  G: "[[d3,ab3,bb3,f4]@15 ~ [eb3,bb3]@15 ~@17, ~@16 eb4@23 ~@9]/2", // Bb7 Eb5
  H: "~@6 [bb2,ab3,bb3,d4] ~ [c3,g3,bb3,eb4] ~ [d3,f3,bb3,f4] ~", // Bb7 Cm7 Bb
  I: "[eb3,bb3,g4]@15 ~ [g3,e4,bb4]@4 [ab3,f4,ab4]@4, ~@2 c4", // Eb Edim Db
  J: "bb3@2 [a3,c4]@2 ~ f4, g4@19 ~@5, [bb2,eb4]@15 ~ [bb1,bb2,ab3,bb3,d4]@8", K: "[eb2,eb3,bb3,eb4]@15 ~ eb3@8",
  L: "~@12 eb3@3 ~ f3@3 ~ eb3@3 ~, ~@12 c4 ~@3 db4 ~@3 c4 ~@3", M: "~@3 d4 f4 d4 bb3 ab3 g3 bb3 eb4 g4, ~@2 eb3",
  N: "g3 bb3 eb4 g4 ab4 eb4 c4 ab3 ~@4, ab2 ab1 ~", O: "~@2 db4 f4 ab4 f4 db4 ab3 ab4 e4 db4 ab3, ~@2 [db2,db3]",
  P: "~ c4 e4 g4 c5 g4 e4 c4 ab3 bb3 db4 f4, [c2,c3]@15 ~ [db2,db3]@8", // C Db
  Q: "~ ab3 c4 eb4 ab4 eb4 c4 ab3 bb3 db4 eb4 g4, [eb2,eb3]@15 ~ eb2@8", // Eb
  R: "~ c5 ab4 eb4 d4 f4 [db4,eb4] g4 [ab3,c4,eb4,ab4]@4, ab2@2 bb2 eb3 ~@2", // Dbsus2 Ab
  S: "~ [bb3,eb4,g4]!3 [bb3,eb4,g4]@2 [bb3,eb4,g4]@2 [bb3,eb4,g4]@2 [bb3,eb4,g4]@2, [eb2,eb3]@2 [g2,g3]", // Eb G
  T: "~ [bb3,eb4,ab4]!3 [bb3,d4,ab4]@2 [bb3,d4,ab4]@2 [bb3,d4,ab4]@2 [bb3,d4,ab4]@2, [f2,f3]@23 ~", // Ebsus4 Bb7 F
  U: "~ [bb3,d4,ab4]!3 [bb3,d4,ab4]@2 [bb3,d4,ab4]@2 [c2,c3,bb3,eb4,ab4]@2 [d2,d3,bb3,f4,ab4]@2, [bb1,bb2]@5 ~@3", // Bb7 Ab Bb7 Bb
  V: "~ [a3,eb4,gb4]!3 [bb3,eb4,g4]@2 [bb3,eb4,g4]@2 [bb3,eb4,g4]@2 [bb3,eb4,g4]@2, [eb2,eb3]@23 ~", // Ebdim Eb
  W: "~ [b3,f4,g4]!3 [b3,f4,g4]@2 [b3,f4,g4]@2 [b3,d4,g4]@2 [b3,d4,g4]@2, [d2,d3]@15 ~ [g1,g2]@8", // G7 G D G
  X: "~ [c4,eb4,g4]!3 [c4,eb4,g4]@2 [c4,eb4,g4]@2 [g3,c4,eb4]@2 [g3,c4,eb4]@2, [c2,c3]@23 ~", // Cm C
  Y: "~@2 [c4,eb4,g4]@2 [c4,eb4,g4]@2 [c4,eb4,g4]@2 [c4,eb4,g4]@3 ~@5 [c4,eb4,g4]@4 [c4,eb4,g4]@4, [a1,a2], ~@8 [g5,g6]@5 [eb5,eb6]@11, ~@11 [f5,f6]@13, ~@3 [c4,eb4,g4] [g5,g6]@2", // Cm A G Eb F Cm G
  Z: "~@2 [bb3,eb4,g4]@2 [bb3,eb4,g4]@2 [bb3,eb4,g4]@2 [bb3,eb4,g4]@3 ~@5 [bb3,eb4,g4]@4 [bb3,eb4,g4]@4, [bb1,bb2], ~@8 [g5,g6]@5 [eb5,eb6]@11, ~@11 [f5,f6]@13, ~@3 [bb3,eb4,g4] [g5,g6]@2", // Eb Bb G Eb F Eb G
  AA: "~@2 [ab3,bb3,f4]@2 [ab3,bb3,f4]@2 [ab3,bb3,f4]@2 [ab3,bb3,f4]@3 ~@5 [ab3,bb3,f4]@4 [ab3,bb3,f4,c5,c6]@4, [bb1,bb2], ~ [f5,f6]@2, ~@11 [eb5,eb6]@13, ~@12 [ab3,bb3,f4] [c5,c6]@3 [d5,d6]@8", // Bb7 Fm Bb F Eb Bb7 C D
  AB: "~ [gb3,a3,eb4]!2 eb4 [g3,bb3,eb4]@2 [g3,bb3,eb4]@2 [g3,bb3,eb4]@2 [g3,bb3,eb4]@2, [eb2,eb3,a4,a5], ~ [gb3,a3]@3, ~ [bb4,bb5]@2", // Ebdim Eb Ebdim Gbm Bb
  AC: "~@3 [ab3,c4,g4] [ab3,c4,g4]@2 [ab3,c4]@2 [ab3,c4,f4]@2 [ab3,c4,f4]@2, [ab1,ab2]@2 [f5,f6], [g5,g6] [g5,g6]@2, ~@2 [ab3,c4,g4]@2 [ab3,c4,g4] [eb5,eb6]@19, ~ [f5,f6]@3 g4@4", // Abmaj7 Ab Fm Ab F G Abmaj7 Eb …
  AD: "~@3 [g3,bb3,f4] [g3,bb3,f4]@2 ~@2 [gb3,a3,c4,eb4]@2 [gb3,a3,c4,eb4]@2, [bb1,bb2]@2 [eb5,eb6], [f5,f6] [f5,f6]@2, ~@2 [g3,bb3,f4]@2 [g3,bb3,f4] [c5,c6]@19, ~ [eb5,eb6]@3 [g3,bb3,f4]@4", // Gm7 Gbdim Bb Eb F Gm7 C Eb …
  AE: "~@3 [f3,ab3,c4,eb4] [f3,ab3,c4,eb4]@2 [f3,ab3]@2 [f3,ab3,bb3,d4,d5,d6]@4, [bb1,bb2] [c4,eb4], [eb5,eb6] [eb5,eb6]@2, ~@2 [f3,ab3,c4,eb4]@2 [f3,ab3,c4,eb4] [c5,c6]@19, ~ [db5,db6]@7", // Fm7 Fm Bb7 Bb Cm Eb Fm7 C …
  AF: "~ eb6@3 [ab3,c4]@4 [bb3,db4]@4, [eb3,eb4], g3 ~@2, ~ [bb3,eb5]@7 ~@16", // Ab Bbm Eb Eb5
  AG: "f3 [ab3,db4] [ab3,db4,f4] [db4,f4,ab4] [f4,ab4,db5]@2 [ab4,db5,f5]@2 [db2,db3,ab4,db5,e5]@4, db3@5 ~@3, ~@2 f3@13 ~@9", // Db5 Db Dbm
  AH: "~ [e3,g3,c4] [g3,c4,e4] [c4,e4,g4] [e4,g4,c5]@2 [c4,e4,g4]@2 [db2,db3,ab3,bb3,f4]@4, [c2,c3]@5 ~@3", // C Bbm7 C
  AI: "eb3 [ab3,c4] [ab3,c4,eb4] [c4,eb4,ab4] [eb4,ab4,c5]@2 [ab4,c5,eb5]@2 [eb2,g4,bb4,db5,eb5]@4, eb2@5 ~@3, ~@2 eb3@13 ~@9", // Ab Eb7
  AJ: "~@11 [c4,c5]", // C
  AK: "c4@4 [ab3,c4,f4]@4 [ab3,c4,f4]@3 ~@5 [ab3,c4,f4]@3 ~@2 g5@3, [f2,f3]@19 ab5 [ab3,c4,f4]@4, c5@11 ab4@13, ~@3 [ab3,c4,f4] f5@2, ~@13 c5@11", // Fm F Fm
  AL: "~@4 [g3,c4,e4]@2 [g3,c4,e4]@2 [g3,c4,e4,c5,c6]@2 ~ [c5,c6], [c2,c3,f5], ~ [g3,c4,e4] g5@4, ~ e5@3, ~@5 [g3,c4,e4]", // C F5 C
  AM: "~@4 [bb3,c4,e4]@4 [bb3,c4,e4]@3 ~@5 [bb3,c4,e4]@3 ~@2 [g5,g6]@3, [c2,c3,c6]@19 [ab5,ab6] [bb3,c4,e4]@4, c5 c5@2, ~@11 [e5,e6]@13, ~@12 [bb3,c4,e4] [g5,g6]@3 [bb5,bb6]@8", // C7 G C Ab C7 E C7 G …
  AN: "~@4 [ab3,c4,f4]@2 [ab3,c4,f4]@2 [ab3,c4,f4,c5]@2 ~ c5, [f2,f3,g5,g6], ~ [ab3,c4,f4] [ab5,ab6]@4, ~ [f5,f6]@3, ~@5 [ab3,c4,f4]", // Fm Fsus2 Fm Ab F Fm
  AO: "~@8 [g3,db4,f4]@4 [g3,db4,f4]@4 [g3,db4,f4]@3 ~@2 bb4@3, [bb1,bb2,f5], ~@4 [g3,db4,f4]@4 bb4@11 c5@5, ~@3 db5@5 db5@4, ~@5 [g3,db4,f4]", // Gm7b5 Bb5 Gm7b5
  AP: "~@8 [ab3,c4,f4]@4 [ab3,c4,f4]@4 [ab3,c4,f4]@3 ~ f4 f4@3, [c2,c3,f5]@5 [ab3,c4], ~ [ab3,c4,f4] ab4@2 ab4@2, ~ c5@3, ~@19 g4@5", // Fm F5 Ab Fm
  AQ: "c4@2 ~@5 c4 [c4,eb4]@2 ~ g4, [c2,c3]@2 [c2,c3,ab4], ~ [e3,g3,bb3] db4@4, ~@3 c4@2 c4 bb3@4 [bb3,c4,eb4]@2, ~@2 [e3,g3,bb3] [e3,g3,b3]@3", // Cm C Fm Edim Cm7 Edim Em
  AR: "[ab3,c4,f4]!6, [f2,f3]", AS: "~ [ab3,c4,f4]!5, [f2,f3]@5 ~@3",
  AT: "~@2 [bb3,c4,e4]@2 [bb3,c4,e4,f5,f6]@2 ~ [e5,e6] [bb3,c4,e4]@2 [bb3,c4,e4]@2, [c2,c3]@5 ~@3, ~@3 [bb3,c4,e4] [g5,g6]@2", // C7 Bbsus2 E C7 C C7 G
  AU: "~ [bb3,c4,e4]!5, [eb2,eb3]@5 ~@3", // C7 Eb
  AV: "~@2 [ab3,c4,f4]@2 [ab3,c4,f4,g5,g6]@2 ~ [f5,f6] [ab3,c4,f4]@2 [ab3,c4,f4]@2, [f2,f3]@5 ~@3, ~@3 [ab3,c4,f4] [ab5,ab6]@2", // Fm F Fm F Fm Ab
  AW: "~ [ab3,c4,f4]!5, [f2,f3]@15 ~ [c2,c3]@8", AX: "~ [ab3,bb3,f4]!3 [g3,db4,f4]!2, [db2,db3]@15 ~ [bb1,bb2]@8",
  AY: "[ab3,c4,f4]@2 [ab3,c4]@2 ~ ab2 c3 f3 ~ g3 f3 c3, f2@5 ~@3, f3@2 [ab3,c4,f4] [c4,f4,ab4] [ab3,c4,f4] [ab3,c4]", // Fm Ab Fm Ab
  AZ: "~ [ab3,c4] [ab3,c4,f4] [c4,f4,ab4] [ab3,c4,f4] [ab3,c4], [f2,f3]@23 ~", // Ab Fm Ab F
  BA: "~@2 [bb3,c4,e4]@2 ~ e2 g2 bb2 c3 bb2 g2 e2, c2@5 ~@3, c3@2 [c4,e4,g4] [e4,g4,bb4] [c4,e4,g4] [bb3,c4,e4]", // C7 C Edim C C7
  BB: "~ [bb3,c4,e4] [c4,e4,g4] [e4,g4,bb4] [c4,e4,g4] [bb3,c4,e4], [c2,c3]@23 ~", // C7 C Edim C C7 C
  BC: "~@2 [ab3,c4]@2 g3 f3 e3 f3 [c3,ab3,c4,f4]@2 [ab2,ab3,c4]@2, [f2,f3]@2 [ab3,c4,f4] [c4,f4,ab4] ~@2", // Ab Fm Ab F Fm
  BD: "g2@23 ~", BE: "~@4 [eb3,ab3,c4,eb4]@2 [ab3,b3,d4] ~ [ab3,c4,eb4] ~ [ab3,c4,e4] ~",
  BF: "~ [f3,c4,eb4,f4]!5, a2@23 ~", // F7
  BG: "~@2 [eb3,bb3,d4,f4]@2 [eb3,bb3,d4,f4]@2 [bb3,db4,e4] ~ [bb3,db4,f4] ~ [bb3,db4,gb4] ~, bb2@23 ~", // Bb Bbdim Bbm Gb
  BH: "~ [g3,d4,f4,g4]!3 [g3,b3,f4,g4]@2 [g3,b3,f4,g4]@2 [g3,b3,d4,f4,g4]@2 [g3,b3,d4,f4,g4]@2, b2 [d2,d3] [g1,g2]", // G7 D G
  BI: "~ [g3,c4,eb4,g4]!3 [g3,c4,eb4,g4]@2 [g3,c4,eb4,g4]@2 [g3,c4,eb4]@2 [g3,c4,eb4]@2, [c2,c3]@23 ~", // Cm C
  BJ: "~ [bb3,d4,ab4,bb4]!3 [bb3,d4,ab4,bb4]@2 [bb3,d4,ab4,bb4]@2 [c2,c3,bb3,eb4,ab4,bb4]@2 [d2,d3,bb3,f4,ab4,bb4]@2, [bb1,bb2]@5 ~@3", // Bb7 Ab Bb7 Bb
  BK: "~ [c4,eb4,gb4,a4]!3 [bb3,eb4,g4,bb4]@2 [bb3,eb4,g4,bb4]@2 [bb3,eb4,g4,bb4]@2 [bb3,eb4,g4,bb4]@2, [eb2,eb3]@23 ~", // Cdim Eb
  BL: "[~@2 [c4,eb4,g4]@2 [c4,eb4,g4]@2 [c4,eb4,g4]@2 [c4,eb4,g4]@3 ~@5 [c4,eb4,g4]@4 [eb4,g4]@4 ~@2 [bb3,eb4,g4]@2 [bb3,eb4,g4]@2 [bb3,eb4,g4]@2 [bb3,eb4,g4]@3 ~@5 [bb3,eb4,g4]@4 [bb3,eb4,g4]@4, [a1,a2]@36 [bb3,eb4,g4] [eb5,eb6]@3 [g5,g6]@8, ~@8 [g5,g6]@5 [eb5,eb6]@19 [g5,g6]@3 [f5,f6]@13, ~@11 [f5,f6]@13 [bb1,bb2]@24, ~@3 [c4,eb4,g4] [g5,g6] c4@7]/2", // Cm Eb A Eb G Eb G F …
  BM: "~@2 [ab3,bb3,f4]@2 [ab3,bb3,f4]@2 [ab3,bb3,f4]@2 [ab3,bb3,f4,f5,f6]@3 ~@2 [c5,c6]@3 [ab3,bb3,f4,d5,d6]@4 [ab3,bb3,f4,c5,c6]@4, [bb1,bb2]@23 ~, ~@11 [eb5,eb6]@3 ~@10, ~@3 [ab3,bb3,f4] ~@2", // Bb7 C Bb7 Fm Bb Eb Bb7
  BN: "~ [gb3,a3,eb4]!3 [g3,bb3,eb4]@2 [g3,bb3,eb4]@2 [g3,bb3,eb4]@2 [g3,bb3,eb4]@2, [eb2,eb3]@23 ~, [a4,a5] [bb4,bb5] ~", // Ebdim Eb A Bb
  BO: "[g5,g6] ~@2 [ab3,c4,g4] [ab3,c4,g4]@2 [ab3,c4,g4]@2 [ab3,c4,f4]@2 [ab3,c4,f4]@2, [ab1,ab2]@23 ~, ~ [ab3,c4,g4]!2 ~@9, ~@3 [f5,f6]@2 [eb5,eb6]@3 [g5,g6]@8 [f5,f6]@8", // G Abmaj7 Fm Ab Abmaj7 F Eb G …
  BP: "[f5,f6] ~@2 [g3,bb3,f4] [g3,bb3,f4]@2 [g3,bb3,f4]@2 ~@4, [bb1,bb2]@23 ~, ~ [g3,bb3,f4]!2 ~@9, ~@3 [eb5,eb6]@2 [c5,c6]@3 [f5,f6]@8 ~@8", // F Gm7 Bb Gm7 Eb C F
  BQ: "~ [ab3,db4] [db4,f4] [f4,ab4] [ab4,db5]@2 [ab4,db5]@2 [ab4,db5,e5]@4, [ab1,ab2]@2 f4 f5@3, ~ f3@11, ~ ab3@5, ~ db4@3", // Db5 Db Fm Db5 Dbm Ab
  BR: "~ [ab3,c4] [c4,eb4] [eb4,ab4] [ab4,c5]@2 [ab3,ab4]@2 ab3@2 [eb3,ab3,c4,eb5]@2, [ab1,ab2], ~ eb3@3 eb4@8, ~ ab3@2 [eb3,c4,eb5] [f3,db4,ab4,db5,ab5]@2, ~ c4 c5@2", // Ab Cm Ab5 Ab Cm Db
  BS: "~ [ab3,bb3] [bb3,d4] [d4,f4] [d4,f4,ab4]@2 [d4,f4,ab4,c5]@2 [ab2,eb3,db4,g4,bb4,eb5]@4, [ab2,d3]@2 ~, ~ f3@7 ~@4, ~ ab3@3 ~@2, ~@3 bb3@5 ~@4", // Absus2 Bb Dm Ddim Dm7b5 Eb7 Abdim
  BT: "~ [bb3,db4,e4] [db4,e4,g4] ~ [c4,ab4]@2 c4@2 [gb3,ab3,c4,eb4]@4, [ab1,ab2]@2 [eb4,c5] [f4,ab4]@3, ~ g3@11, ~ bb3@5, ~ [db4,e4,g4,bb4]@3", // Bbdim Dbdim Fm Ab7 Ab Cm Fm Dbdim
  BU: "~ [ab3,db4] [db4,f4] [f4,ab4] [ab4,db5]@2 db5@2 [g4,bb4,db5,e5]@4, [ab1,ab2]@2 f4 [ab4,f5]@3, ~ f3@11, ~ ab3@5, ~ db4@3", // Db5 Db Fm Db5 Gdim Ab Db
  BV: "~ [ab3,c4] [c4,eb4] [eb4,ab4] [eb4,ab4]@2 ~@2 [ab3,bb3,d4,f4]@4, [ab1,ab2], ~ f3@11, ~ ab3@2 [c4,eb4,ab4]@3, ~@3 c4 c5@8", // Ab Cm Ab5 Bb7 Ab
  BW: "~ [bb3,db4] g4 [g4,bb4] [g4,bb4]@2 [db4,g4]@2 [db4,eb4,g4]@4, [ab1,ab2]@2 db5 bb4@3, ~ g3@11, ~ bb3@5, ~@2 db4 c4@9", // Bbm Gm Dbdim Eb7 Ab
  BX: "~@4 ab3@3 ~, [ab1,ab2,eb4,ab4], c4@2 ~, ~ c3@5, ~ eb3@2", // Ab5
})).s("gm_piano").gain(0.3)

// chords · piano · soft notes
const piano_soft = note(`<
  A B ~@3 C D ~ E F ~@3 G H I J K ~@19 L M N O ~@3 P ~@14 Q ~@5 R S ~@11 T U ~@8 V W X@3
>`.pickRestart({
  A: "~@8 eb4@3 eb4", B: "~@12 f4@4 ~ ab3@7, [db3,db4]@2 [db3,db4,e4], f4@6 ~@2 g4 ~@3, ~ ab3@15 ~@8",
  C: "[db3,ab3,db4,f4]@5 ~@3", D: "~@3 [ab3,c4] ~@2, ~@6 eb3 ~@5", E: "ab2 [ab1,ab3,c4] ~",
  F: "[bb2,ab3,bb3,d4]@11 ~@13", G: "~ f3 db4 ab3 f4 db4 ab3 f3 e4 db4 ab3 e3, db3@15 ~ db3@8",
  H: "~ ab3 c4 ab3 eb4 ab3 ~ ab3 ~ ab3 ~ ab3, c3@11 ~@13", I: "~ ab3 bb3 ~@9, d3@5 ~@3",
  J: "~@8 eb4 ab4 eb4 c4, ~@2 [ab2,gb3]", K: "~ ab3 ~@10, [db3,f3]@5 ~@3",
  L: "~@2 [f3,ab3,db4] ~ [ab3,db4,f4] ~ [db4,f4,ab4] ~ [f4,ab4,db5]@2 ~@2 [ab4,db5,f5]@2 ~@2 [ab4,db5,e5]@4 ~@4, db3@15 ~ db3@8", // Db Dbm
  M: "~@2 [eb3,ab3,c4] ~ [ab3,c4,eb4] ~ [c4,eb4,ab4] ~ [eb4,ab4,c5]@2 ~@2 [eb3,ab3,c4,ab4,c5,eb5]@2 ~@2 [f3,ab3,db4,db5]@2 ~@2 [eb3,ab3,c4,eb5]@2 ~@2, c3@11 ~@5 [ab4,ab5]@8", // Ab Db Ab
  N: "~@2 [f3,ab3,bb3] ~ [ab3,bb3,d4] ~ [bb3,d4,f4] ~ [d4,f4,ab4]@4 [f4,ab4,bb4]@4 [eb3,eb4,g4,bb4]@8, d3@5 ~@3", // Bb7 Bb Ddim Bb7 Eb
  O: "~ [g3,bb3,db4] [bb3,db4,g4] [db4,g4,bb4] [c4,ab4,c5]@2 [c4,f4,ab4]@2 [ab2,gb3,ab3,c4,eb4]@4, e3 f3 ~", // Gdim Fm Ab7
  P: "~ [c5,eb5,ab5] [ab4,c5,eb5] [eb4,ab4,c5] [bb2,d4,f4,ab4,c5]@2 [eb3,db4,eb4,g4,bb4]@2 [ab3,c4,eb4,ab4]@4, ab2 ~@2", // Ab Bb7 Eb7 Ab
  Q: "[c2,c3,ab3,c4,f4]@8 [c2,c3,bb3,c4,g4]@15 ~", R: "~ [eb3,bb3,db4,eb4]!5", S: "~ [eb3,ab3,c4,eb4] ~@4, ab2@23 ~",
  T: "~@4 [gb3,a3,c4,eb4]!2, ~@2 [eb5,eb6]", // Gbdim Eb
  U: "[eb5,eb6] ~@2 [f3,ab3,c4,eb4] [f3,ab3,c4,eb4]@2 [f3,ab3,c4,eb4]@2 [f3,ab3,bb3,d4,d5,d6]@4, [bb1,bb2]@23 ~, ~ [f3,ab3,c4,eb4]!2 ~@9, ~@3 [db5,db6]@2 [c5,c6]@3 [eb5,eb6]@8 ~@8", // Eb Fm7 Bb7 Bb Fm7 Db C Eb
  V: "~@7 ab3, ~@2 c4, ~@19 bb3@5", W: "~@7 eb3, [ab1,db4,f4]@19 f3@5, eb3@3 f3 g3@2, g3 eb4@2, ~ ab2@23",
  X: "[~@17 [e4,bb4]@7 ~@24 ab1@24, ab1@2 ~, [ab2,eb3,c4,g4]@2 [db3,db4] [c3,eb4,ab4,c5]@6, ~ eb4@23 ~@8 eb2@40, ~ ab4@2 ~@2 c2@4]/3", // Edim Abmaj7 Db Ab
})).s("gm_piano").gain(0.2)

stack(piano, piano_soft)