Strudelify

Bill Bailey

Hughie Cannon

KeyG majorTempo100 bpm
0:00/0:00
// Bill Bailey — Hughie Cannon
// 100 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 94 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@4 B@2 C@2 D@3 E@7 F G@4 H@7 I J K@2 L M N@2 O P Q@7 R S T@3 U@6 V W@6 X Y@3 Z@3 AA AB@2 AC@4 AD AE@3 AF AG@5 AH AI
  AJ@3
>`.pickRestart({
  A: "[~@22 [g1,g2,g3,b3,d4]@22 ~ [c2,c3]@10 [b1,d4]@5 [a1,a2,e4]@7 ~@21 [d3,c4,f#4,a#4]@4 ~ b4@15 ~@20, ~@20 d3@24 [e3,g3,c4,e4]@11 g4@12 ~@25 g4@5 ~@31, ~@55 g3@8 ~@65, ~@55 b2@3 ~@2 c4@3 ~@4 [d4,g4,b4]@26 b3@5 ~@30]/4", // G C Bm A5 Daug C G
  B: "[~@10 [g2,d3,g3,b3,d4]@9 [c3,g3,c4,e4]@11 ~ g3@6 ~@27, [g1,d2]@19 c2@5 ~@6 g4@16 ~@18]/2", // G C G5
  C: "[~@23 a3 a#3 b3@6 [g3,c4,e4]@4 ~@13 b4@13 ~ g#2@2, ~@19 g2@12 c3@7 g4@3 ~@4 g2@15 ~@4, ~@22 g3@2 d4@8 ~@6 c#4@9 g4@13 ~@4, ~@39 [e3,a#3]@11 ~@14, ~@23 d4@7 ~@2]/2", // C Edim
  D: "[~@4 d5@9 ~@18 a4@2 g4 ~@29 [d3,f#3,c4,d4]@5 ~ [d3,a3]@4 ~@3 d3@3 ~@13 [d4,g#4,b4]@4, ~ [b3,d4]@10 ~@5 f#3@47 ~@26 d3@7, ~@3 b4@11 ~@4 [d4,f#4]@15 ~ f#4@34 [d4,f#4]@5 [c4,f#4,a4]@7 ~@16, ~@19 a4@11 a#4@3 ~@46 [e4,g4,c5]@17, ~@20 d5@13 ~@63]/3", // D7 D5 G#dim Bm D F#dim C
  E: "[~@5 f4@3 ~@16 [c4,d4]@3 ~@4 [c4,d4,f#4,a4]@3 ~ e4@3 [d4,g#4,b4]@5 a4@5 ~ a#3@5 ~ [a3,c4,f#4]@8 [d2,d3,c4,d4,f#4,d5]@6 ~ e3@7 [f3,c4,d4,g#4,d5]@7 ~ f#2@6 ~@2 d2@6 ~@33 g5@2 ~@2 f#5@2 f5@2 ~@7 g#4@3 ~@9 c4@3 c#3 d3@3 e3@4 g#4@4 ~ a4@6 ~@19 b4@4 ~@9 [f#4,a#4]@5 ~ b4@3 ~@2, ~ [e4,g4,c5]@8 ~@10 d2@8 [d4,f#4]@3 ~@4 c5@4 ~@62 [c4,e4]@14 [g3,d4]@24 ~@4 b3@8 ~@6 e4@6 [c4,f#4]@3 ~@16 d4@18 [g3,d4]@13 a#3@6 [b3,g4]@6, ~@24 f#3@11 g4@2 ~@6 e4@2 ~@24 [c4,d4,g4,b4,d5]@8 ~@7 [c4,d4,f#4,a4,d5]@17 [a#4,e5]@14 b4@23 ~@7 [d4,b4]@5 ~@3 g4@9 ~@4 g4@2 ~@14 [g4,b4]@18 g4@6 g2@9 ~@3 g3@3 ~@3, ~@28 a3@8 ~@12 a3@2 ~@4 g#3@2 ~@14 e2@4 ~@3 f2@4 ~@3 f#3@6 ~@9 f#3@17 ~@18 f#5 g5@2 ~@13 c5@12 ~@36 [d3,b3]@13 [c3,f#3]@8 ~@5, ~@112 g2@26 ~@59 g2@7 b4@10 ~@10]/7", // Csus2 D7 G#dim F#dim D7 Dm7b5 F# C …
  F: "~ [c#3,f#3,f#4,a#4]@7 ~ b4@8 a#3 ~@8 d3@2 c#3@2 ~ b2, a#3@7 ~ [g3,g4]@9 ~@3 d5@10 c3@2", // F# G
  G: "[a#2 ~@2 g#2 ~ g2@3 ~@4 [b3,d4,g4,b4]@4 [b3,d4,g4,b4]@4 ~ [c4,d4]@5 ~@14 a#2@2 ~ g#2 ~ g2@3 ~@3 [b3,f4]@4 [d4,f4]@3 [d4,f4,d5]@4 [a4,f5]@5 [c4,c5,a5]@4 g5 ~@12 [f4,d5]@4 ~@9 [g4,e5]@4 ~@9 [g#4,d5]@2 ~ a2@2 [g3,e4]@3 ~@2 d4@3 [e4,a4]@2 ~ e4@2, ~@2 a2@2 ~@7 d3@24 d3@4 b2@3 a2@2 ~@28 g5@6 f5 g5@3 [g4,e5]@6 [g4,e5]@9 ~@4 [g#4,d5]@9 ~@2 c5@5 ~@11, ~@20 [e4,f#4,a#4]@6 b4@29 ~@7 f4@18 [a4,f5]@8 ~@6 e4@7 ~@4 d4@9 ~@9 a3@5, ~@26 g4@24 [d4,g4]@4 ~ [b3,g4,b4]@7 ~@9 a5@2 ~@3 g3@12 ~@4 e3@10 ~@11 a4@5 [g#4,b4]@5 ~@5, ~@36 c#3@2 c3@6 ~@7 d3@11 ~@10 [b3,b4]@16 ~@7 c4@7 ~@6 e4@6 ~@11 c4@3]/4", // G Csus2 Bdim Dm F Dm C G#dim …
  H: "[~@2 [d#4,f#4]@2 ~ [e4,g4]@2 ~@6 d5@3 ~@16 [a#3,g4]@2 ~@6 d#5@3 ~ g4@5 ~@3 g2@3 d3@2 ~@2 [g4,b4]@3 b4@3 [g3,b4,g5]@4 ~ g4 [g4,b5]@4 [f#4,c#5,a#5]@3 [f4,c5,a5]@3 g#5@5 ~@2 e2@3 ~@5 f#2@2 ~ [d5,e5,a5,c#6]@4 ~@5 g#2 ~ b3@2 ~@19 g5@6 [c#4,a4]@3 ~@39 [c#4,a#4]@3 a4@24 [g1,g2] ~@4 [b3,d4,g4] ~@2 d4 [c4,e4] ~@4 [e4,g4] ~@3, [d4,f4]@5 ~@3 [c4,a4]@9 ~@6 c2@6 c#2@20 [c#2,c#3,g4]@6 d2 ~@42 d3@3 ~@2 e3@6 e3@6 e3@13 a3@11 ~@7 [c5,d5]@15 d1@22 ~@41, ~@11 [e4,c5]@6 e5@15 d#4@12 [d#5,g5]@11 ~@14 f4@2 b4@3 ~@7 [e4,b4]@10 ~@13 [d5,e5,a#5]@5 ~ [d5,e5,g#5,b5]@7 [c#4,e5,g5]@12 d4@9 ~@6 d4@5 [b5,d6]@34 ~@41, ~@27 c4@4 ~ c#3@17 ~@10 [d3,d4]@12 ~@20 [g#3,d5,e5,g#5,c#6,e6]@8 a3@2 ~@4 a#3@5 ~@4 a2@4 b5@12 [g4,b4,d5]@8 ~@7 f#4@31 [g3,d4,b4]@7 ~@41, ~@35 a4@3 a#4@7 ~@17 [b3,g4,d5]@9 d5 ~@27 e6@13 ~@4 b4@8 [a4,a5]@7 b5@3 ~@3 [g4,c#5,a5]@9 b4 f#5@36 ~@41]/7", // D#m Em D# G F# F A F#m …
  I: "~ [d4,g4,b4]@5 ~@2 [c4,a#4]@2 [g3,b4]@3 [b3,d4,g4,b4,d5] ~@5 g2 ~@4 [d3,d4] ~ d4 ~ [e3,c4,e4] ~ e4 ~, ~@10 [d4,g4] ~@21", // G C7 G D C G5
  J: "[g3,c4,e4,g4] ~@4 g2@9 [g1,g2]@8 d3 ~@4 [b3,d4] [b3,d4]@2 [c4,e4] c3, ~@5 [d3,d4,g4,b4]@18 ~@9", // C G Bm C G
  K: "[~ e4 [c4,e4,g4] c3 ~@4 g3 ~@2 a#4 ~ [d4,f4,b4]@2 f3@2 d5@2 [g#2,d4,f4,d5] ~@3 [d4,f#4,d5]@4 a2 ~@4 f#3@5 ~@2 d#3 e3@2 ~@2 [d#4,g#4]@4 f#3 ~@3 a2 ~@3 d2 ~@3 [e4,f#4,c5] ~ g#3@2, ~@7 [b2,d4,g4,b4]@3 ~@13 f#3@8 c4@3 ~@26 a3@2 ~@2, ~@23 c4 ~@7 [d4,f#4]@8 ~@9 [e4,a4]@7 ~@9]/2", // C Bdim Ddim D G#5 F#m7b5 G D …
  L: "[a3,f#4,c5] ~ g#3 ~ [a3,f#4,c5] ~ g#3 ~ [a3,e4,c5] ~@3 [a3,f#4]@2 g#3@2 [a3,f#4,c5]@4 [b3,e4,f#4,d5] ~@3 d2 ~@3 [a3,e4,f#4,c5] ~ g#3@2, ~@8 f#4@2 ~ g#3@2 ~@3 e4@2 ~@14, ~@12 c5 ~@19", // F#dim Am D F#dim Bm F#m7b5
  M: "[a3,f#4,c5] ~ g#3 ~ [a3,d4,f#4,c5] ~ b4 ~ a3@6 ~ d2 ~@4 [b3,e4,f#4,d5]@2 a#3@2 [e4,f#4,d5] ~ [a#3,c#5] [e4,f#4,d5] b3 ~ [a#3,c#5] [b3,e4,f#4,d5], ~@3 g#3 ~@3 a2 ~@8, ~@7 f#4@12 ~@13, ~@7 [d4,c5]@9 ~@8 b3@2 ~@6", // F#dim D7 Bm D A#m D A#m Bm …
  N: "[~ a#3 ~ [b3,e4,f#4,d5] ~ a#3@2 ~@8 [c4,e4,a#4,e5]@4 f#3@4 ~@2 [d4,g4,b4]@2 g2 ~@3 [f3,f4,g#4,b4]@4 g#2 ~@3 [e4,g4,c5]@2 ~@2 [a2,e4,g4,d5]@4 d3@4 [d2,c4,f#4,a4] ~@3 g2@4 [g3,b3,d4] d4@2 g3 [c2,c3,c4,e4], ~@7 [b3,e4,f#4,d5]@8 ~@16 d4@3 ~@13 c4 ~@16, ~@11 d3@12 d3@8 ~@8 g3@8 ~@8 g1 ~@8]/2", // Bm C7 G Fdim C Asus4 D7 G …
  O: "~@3 [c2,c3,g3,c4,e4,g4] ~@3 [d4,g4,b4]@2 ~ c#4 [f#4,a#4] ~@2 a2@2 ~@2 [a1,a2,c4,d4,f#4,d5] ~@3 g1@3 [d4,g4,b4] e4 ~ g1 ~@2 [c#4,a#4], ~@7 [b1,b2]@3 ~@2 [f#4,b4]@2 ~@13 [d4,g4,b4]@2 ~@3, ~@13 c4@2 ~@7 g2@7 ~@3", // C G F# D7 G F# B B5 …
  P: "[d1,d2,d4,b4] ~ [c#4,a#4] ~ [g1,f2,g2,g4] ~@3 [a1,a2] ~@3 [a#1,a#2] ~@2 [b1,b2] ~ d2 ~ [g1,g2] ~@3 [f4,g4,b4,d5,g5]@3 ~ [g4,b4,d5]@2 ~@2 [f3,b3,d4], ~@4 [d4,b4]@9 ~ [d4,g4,b4]@3 ~@6 [g3,b3,d4] ~@3 [g2,f4,g5] ~@4, ~@3 g4@4 ~@8 [f#4,a#4,f#5]", // G F# G7 A A# B G G7 …
  Q: "[~@2 [a4,f5]@4 [f3,b3,d4] ~@2 d5 [g2,f3,a4] ~@2 [f3,b3,d4,e5] ~@3 c2 ~@2 [g3,c4] a3 ~@2 [d4,e4,g#4,b4]@4 [b2,g#3] ~@2 g3@3 ~ [e3,g3]@2 ~ g3 a2 [c4,e4]@2 [a2,d4,f4] ~ [d#4,f#4] [e4,g4] ~@3 [c2,e4,g4,c5]@3 ~@2 c2 ~@2 c3@2 [g#2,e4] ~ [c#2,a#3] ~ a#3 c#2@2 ~@2 [c#2,d#4,g4] ~@2 [c#2,d#5]@2 ~@2 [d3,g4,b4,d5]@4 d2 ~ a#4 [f#2,f#3,e4,c#5] ~ [d#4,a4,c5]@2 [f2,f3] ~@2 [e2,e3] ~@3 f#2@2 ~@2 [g2,g3] ~@3 [g#2,g#3] ~@2 [a2,a3] ~@2 c#4 g3 ~@2 e2 c#5@3 [g3,a3] ~ a4 ~ [c4,a4]@2 ~ [f#3,f#4] ~ [c4,f#4]@2 [a2,f#3]@2 ~@3 d3 ~ [g2,g3,d4,g4]@4 d4 ~ d4 e4 ~ e4 ~ g4 ~ g4 [g4,b4]@4 [f#4,a#4] ~ [g4,b4]@2 ~@2 [b4,c#5] d5@4 g2@2 ~ b3@2 d4 ~ c4@2 e4 [e4,g4] ~ g4@2 b4@8 d4 a4 ~ g4 ~ f#4 ~ g4 f#4 ~ e4 ~ d4 ~ e4 d4@2 c4 ~ b3 c4 ~ b3@2 a3 ~ g3 [d3,a3] ~ g3@2 [g2,f#3] e3 ~ [d2,f#3] ~ d3 ~ f#3 a3, ~@2 d2 ~@5 f4@3 ~ [f#4,d#5]@2 ~@3 [e4,g4]@5 ~@8 [e4,a4]@9 ~@14 [g4,c5,e5]@4 ~@3 g4@2 ~@6 a#4@2 ~ [g4,a#4] ~@10 a#4@2 ~@4 [g#4,b4]@14 ~@22 b4@8 ~@26 a4 ~@17 g4@4 ~@44, ~@13 g4@2 ~@2 c5@8 ~@5 c4@5 c4@3 ~@23 c#3@13 ~@19 f#3 ~@25 [d3,f#4,d5]@4 ~@6 [a2,f#3,f#4]@4 ~@72 d3@2 ~@17, ~@35 a2 ~@2 e3@4 ~@3 c3@11 ~ c2 ~@3 d#4@2 [d#4,g4]@2 ~@23 d4@10 ~@8 [e4,g4,a4,c#5]@2 ~@3 [e4,g4,e5]@5 ~@3 e4 ~ e4@2 ~@5 c4@5 b3@2 ~@30 d4 ~@3 e4 ~@21 g3@10 ~@23]/7", // Dm Bdim Dm Bdim C5 E7 E Em …
  R: "~ d4 ~ f#4 [a3,g4] ~@6 a2@2 ~@2 f#3@3 a2 ~ [f#2,a2,c5] ~ [d2,c5,f#5,a5] ~@3 [f#3,c4,d4,c5,f#5,a5] ~ b5 [a2,f#3,a5,c6] ~@2, ~@4 a4@4 ~@3 c6 ~ c6 ~@2, ~@8 [f#3,c4,f#4]@5 ~ [c4,f#4]@2 ~@16", // A7 F#dim D7 F#dim Cdim
  S: "~ [f#3,c4,d4,c5,a5,c6] ~ b5 ~ [d2,a5] ~@2 [f#3,c4,d4,c5,a5] ~ b5@2 [a2,f#3,c5,a5,c6] ~@2 [c4,d4] ~@3 d2 ~@2 [c4,d4] f#3 ~ f#5 [a2,f#3,e5] ~@2 [c4,d4] f#3 ~, ~@5 c6@2 ~ c6@2 ~@4 [c5,d5,f#5,a5,d6]@4 ~ [e5,f#5,c6]@5 ~@2 c6@4 ~@2, ~@7 [f#5,b5], ~@14 d5 ~", // D7 D5 D7 F#dim Csus2 F#m7 Csus2 D7 …
  T: "[~ d2 ~@3 [f#3,c4,d4] ~@2 f#3@2 [c5,d5,f#5,a5,d6]@2 [f#3,c4,d4] ~@2 [f#5,d6]@4 [f#3,c4,d4,a5] ~@3 [e2,e3,c5,d5,d6] ~@2 [f3,c5,d5,g#5]@3 ~ [f#2,f#3] ~@2 [f#3,c4,d4]@2 ~@2 d2 ~@2 [f#3,c4,d4,e5,a5] ~@2 g2@2 c#4 a#3 [b3,d4] ~ [c#4,f#4] [d4,g4] ~ [c#4,f#4] g4 d4 a#4 ~ b4 a#4 f#4 ~ c#5 ~ d5@3 [c4,b4] [d3,f#3] d3@2 [g2,e3] ~ [a#5,c#6] [d4,b5,d6] ~ g5 [d2,a#5] f#5 [g5,b5] ~ [d4,d5] ~ f#5 [g2,e3,g5] d5 ~@2 [g3,d4,a#4,c#5] [b4,d5] ~ [d2,g4] ~ [f#4,a#4] [b3,b4] [g3,g4] d4, ~ [e5,f#5,c6]@7 a2 ~@5 a5@5 ~@3 g5@2 ~@11 [e5,a5,c6,e6]@5 ~@56, ~@15 d5@2 ~@2 [c5,d5,f#5]@2 ~@9 [c5,d5,f#5,a5,d6]@5 ~@25 b4@2 ~ b4 ~@32, ~@15 [d2,c5] ~@10 [f2,d6] ~@69]/3", // D7 D D7 C Dm7b5 F# D7 F#m7b5 …
  U: "[~ [g2,c#4,f#4] ~ d4 [d3,g3,b3] ~ [f#4,a#4] ~ [d2,g4] d4 ~ [d3,g3,b3,a#4,c#5] ~ b4 [g2,g4] ~ [c#5,f#5] ~ [g3,b3,d4,d5] b4 ~ [d2,f#5,a#5] ~ g5 [g3,d4,d5] b3 [a#5,c#6] g2 [d3,b5] ~@2 [g3,b3,d4] ~@3 [a2,a3,f5] ~@2 [f5,b5,d6] ~@2 b2 b3 ~@6 [g2,b5,d6,g6]@3 [g3,b3,d4,f4] ~ a5 [c3,g3] ~@2 [c4,e4] [g3,a3,g5] ~ c6 [b2,g#3,g#5,b5] ~@2 [g#3,d4,e4] ~ c6@2 a2 ~@2 [g3,c4,e4]@3 a2 ~ [d#5,f#5] [g3,c4,e4,e5] ~@3 e5@3 [c2,g4]@4 ~@3 c3@2 ~@2 c#2@2 ~ [d#5,g5] ~ c#5 c#2@2 g4@2 [c#4,d#4,g4]@3 d2@4 [d5,g5] [b4,d5,g5]@2 ~ [b4,d5] ~ [d3,b4]@2 [g2,g#2] ~@4 [d4,e4,g#4,c#5,e5] ~@2 f#2@2 e5 ~ d4@3 ~@7 a1 ~ [e4,g4,c#5,e5]@2 c#2@2 g2 [d4,f#4,d5]@4 d2@3 [d3,c4,e4,f#4,b4]@5 d2@2 g2@2 ~@2 a#3@2 d4 [c4,d#4] ~ d#4 ~ [d#4,g4] ~@2 a#4@3 ~ [f#4,a4] ~ a4 [g4,a#4] ~ a#4 [a#4,d5] ~@3, ~@3 g4@2 ~@3 b4@2 ~@2 d5@2 ~@4 g5@2 ~@2 b5@3 ~@3 d6@2 g5@2 ~@6 [a#2,a#3]@2 f5@5 [b3,d4,f4,f5]@7 ~@2 [e5,g5]@3 ~ e5@2 ~@4 e5@2 ~ [e5,a5]@8 ~@3 g5@2 g4@2 c3@6 ~ c3@2 c5@3 ~ c#3@10 ~@4 d3@10 ~@4 e3@8 ~ [g#2,e4,e5]@3 ~ a2@8 ~@3 c#3 ~@2 d3@7 d2@4 ~@3 g1 ~@27, ~@31 [b5,d6]@2 ~@2 [b5,d6]@3 ~@2 [b5,d6]@9 ~@5 [c6,e6]@5 ~@3 d6@4 ~@15 g5@12 ~@8 d#5@5 ~@22 c#5@5 ~@59, ~@90 [g4,e5]@3 ~ g#2@2 ~@10 [c#2,c#3]@2 ~@8 d2@2 ~ [d2,d5] ~@3 e2@5 [d4,e4,g#4,e5]@3 ~@9 [e4,g4,c#5,e5]@5 ~@5 c4 ~@17 d4 ~@7 g4@5 ~@11]/6", // F# G F# G5 G F#5 G Daug …
  V: "~@3 d4 ~ d4@2 [c4,d#4] d#4@2 [d#4,g4] ~ g4 ~ g4@4 ~@3 g3@2 a4 a#4@2 a4 ~ g3@2 f#4 g4, a#3@6 ~@8 a#4@10 ~@4 g4 ~@3", // Cm D#
  W: "[~ f#4@2 g3 f4@2 d#4 d4 ~ [g2,d#4]@2 d4 ~ c4 a#3 ~@2 a#3@2 a3@2 ~ [d2,f#3]@2 d3 e3 f#3 a3 ~ d4 ~@6 a3 ~@7 f#4@2 ~ d5@2 [d2,d3] ~ a4@2 ~ f#5@2 a5@2 d5 ~@2 a5@2 g4@2 ~ g5@2 c6@2 ~@3 [a3,g5]@2 ~ [d4,a5]@2 ~ g5 e4 c5@2 f#4@2 c5 e5@2 c5@2 ~@3 c5@2 ~ [d3,c4] ~ a5@2 [a2,f#3] d5@2 [d2,a4] ~@2 f#4@2 a4 ~ [a3,d4] f#4@2 [f#3,a3] ~ d4 ~@2 c4@2 a2 ~@5 [f#2,f#3] ~@2 d3 ~@3 [a#3,g4]@2 [d4,g4]@2 c3@4 [d#4,g4]@3 a#3@4 f#3@2 ~ [a2,a3] ~@3 [d2,d3,c4]@3 ~ g1 ~@3 d4!2 ~ [c4,d#4] ~ d#4 [d#4,g4] ~ g4 ~ g4@2 ~ f#4@2 a4 g4 a#4!2 ~ [a#4,d5] ~@3 g5!2 ~ [d#5,f#5] ~, ~@3 g4@2 ~@11 c4@2 ~@3 g3@2 ~@8 a3@4 a4@5 ~ a4@2 ~@3 a4@3 ~@7 a4@7 ~@2 c5@5 ~ c5@5 ~@2 c5@2 ~@6 e4 ~@3 [d4,f#4,d5]@6 ~@20 a3@3 ~ a3@5 a4@3 f#4@2 ~@21 f#4@7 ~@15 a#4 ~ a#4@2 ~@8 d5@5 ~@2, ~@22 d3 ~@9 d4@4 ~ d4@5 d5@4 ~@3 f#5@2 ~@2 d5@3 ~@3 [d4,f#4,f#5]@4 [d#4,c6]@6 ~ [g4,a#5]@4 ~ a#5@2 ~@6 f#5 ~@11 d5@2 ~@3 f#5@3 ~@2 d5@2 ~@16 [d2,d3,f#4]@4 ~@3 [g2,g3]@6 ~@8 a#2 ~@6 c4@4 ~@4 g2@7 ~@26, ~@34 f#4@2 ~@3 [f#3,f#4]@4 a2@4 ~@56 d3@2 ~@12 f#3@3 ~ c4@5 ~ c4@3 ~@7 c4 ~@3 d4 ~@2 d4@3 ~ d4@10 ~@5 a#3@3 ~@10 a4 ~@15]/6", // Cm D A7 D5 D7 D D5 F#m …
  X: "f#5 g5 ~ g5 ~ [f#5,a5] a5 ~ g5 ~@6 g3@5 a5 ~ g5!2 ~ [g4,f5] ~ f5 d#5 ~@2 d5, ~@8 a#5@13 ~ [b4,d5]@3 ~@7", // F#m G7 Bm
  Y: "[f4 d5 ~ [g3,b3,b4] b4 ~ g#4 ~@3 [f3,g4] g4 ~ [g2,f3]@2 ~ [c3,d#4]@3 d4 ~ d4 ~ c3@2 d#4 d3@4 d#3@3 ~@5 g3@2 ~ d#4 ~@2 [c2,c3]@3 [d#5,g5]@2 ~@2 g4 [d#4,g4]@2 c4@2 ~@2 c3 ~@2 g5 ~@5 [c#3,d#4]@2 a#3 ~@4 g5 ~@2 a#4@2 g4 d3 d2 a#3 ~ d#2@3 ~@4 g4 g4@2 ~ g3, ~@13 f4 ~ f4@2 ~@3 b2@3 d#4 ~@2 f4 ~@3 g4@10 ~ g4@6 ~@2 c5@2 ~@11 d#5@2 a#4@4 ~@8 d5@2 ~@10 g5@2 d#2@2 ~@2 [d#2,d#3,c#4]@2, ~@34 [g3,c4,d#4]@5 ~ c4@2 ~@8 c4@3 ~@4 c#2@2 ~@4 c#2@2 ~@2 c#2 ~@3 [d2,d3]@9 ~@9 c#5@2 ~@5, ~@37 c3@3 g2@6 ~@8 c3 ~@2 c#3@9 g4@2 ~@13 d4@3 d#3@9 ~@3]/3", // G Fsus2 G7 Cm C D# C#sus2 D#7 …
  Z: "[~ d2@4 ~@3 d2@2 ~ [d3,c4,d#4]@2 g3@2 d3@2 ~ [d3,g3]@2 ~@2 [d2,d3]@2 ~ d2@2 ~@2 a1 [c#4,f#4,a#4] ~ b4 ~@2 [d4,f4,g#4,b4] ~@2 [g#1,g#2,d4,f4,g#4,b4]@2 ~ [a1,a2] ~@3 [d1,d2] ~@2 [e1,e2] a#1 ~ [f#1,f#2] ~ d2 ~ [g1,g2] ~ [a#4,c#5,d#5,f#5,a#5] [b3,c4,d4,e4,b4,d5,e5,g5,b5] a5 ~@2 [d2,a#4,c#5,f#5,a#5] ~@2 [a3,b3,d4] ~ [a#4,c#5,d#5,f#5,a#5] [g2,b5] [e3,b4,a5] ~@2 [g3,d4,e4,a#4,c#5,d#5,f#5,a#5] b5 [b4,a5] d2 ~@2 d5 [a3,b3,d4,e4,b4,a5,b5] ~@2 [g2,e3,a#4,c#5,f#5,a#5] ~ [a5,b5] [b3,d4,e4] ~ [a#4,c#5,d#5,f#5,a#5] [b4,d5,e5,g5]@2 ~@2 [g3,b3,d4,e4,a#4,c#5,d#5,f#5,a#5] b5 ~ [g2,a2,e3], ~ d3@10 ~@14 d3@3 g2@4 ~@8 [c4,d4]@5 ~@5 [c4,d4,f#4,d5]@2 ~@11 [d5,e5,b5]@2 g3@2 ~@7 g5@2 ~@3 [e5,g5]@2 ~ d#5@3 g3@2 ~ [d2,b5] ~@7, ~@5 [g3,a#3,d4]@2 d#4@3 ~@10 [a3,c4,d4]@9 ~@2 [d4,g4]@2 ~@7 [f#4,d5]@9 ~@13 d#5@2 [b4,g5]@2 ~@2 [d5,e5,g5]@2 ~@3 [d5,e5]@2 ~@2 [a#4,a#5]@2 ~@4 [d5,e5]@3 ~@7 [d5,e5]@3, ~@6 c4@3 ~ g3@2 ~@3 [a#3,d4]@6 ~@6 d2@2 g1@2 ~@4 [g#1,g#2]@2 ~@47 [b4,g5]@2 ~@8 [b4,g5]@2]/3", // Cm G5 D F# Ddim G#dim A D …
  AA: "~ d#5 [g3,b3,d4,e4,d5,b5] g5@2 ~ [d2,a#4,c#5,d#5,f#5] b5 ~ [g3,b3]@2 [a#4,c#5,d#5,f#5,a#5] [g2,e3,d5] [b4,b5] ~@2 [g3,b3,d4,a#4,c#5,d#5,f#5,a#5] [b4,d5,e5,g5,b5]@2 d2 ~@2 [g3,b3,d4,b4,d5,b5]@3 [g#2,a#4,a#5] ~ [b4,f5,g#5,b5]@2 [d4,f4] a#4@2, ~ [a#4,c#5,a#5]@2 ~@4 [d5,e5,g5]@2 [d4,e4] ~@3 g5@2 ~@15 a#5 ~, ~@2 [b4,e5]@2 ~@2 a#5@2 b4@2 ~@2 e5@2 ~@7 [a#4,c#5,d#5,a#5]@4 ~@4 g#3@2 ~", // Em7 D#m7 G D#m7 Em7 B Gmaj7 Em7 …
  AB: "[[g#2,a#2,b4,f5,g#5,b5] ~@2 [b4,f5,b5]@2 ~ a2 f#3 ~@2 [f#3,c4,d4,b5] [c5,d5,f#5,a5,c6]@2 d2 ~ b5 [f#3,c4,d4,d5,f#5,a5,b5] ~@3 [a2,f#3] ~@2 [f#3,c4,d4] ~@2 d2@3 [f#3,c4,d4] ~ f#6@2 [c6,d6]@2 ~ [f#3,c4,d4,f#6] ~@2 g6@2 ~ [c4,e4] [g3,d4,g6] ~@2 g#6@2 ~ [a3,c4,d4,g#6] ~@2 f#2 a6 ~@2 [f#3,c4,d4,c6,d6] ~@2 a#6@2 ~ [b3,d4,f4] a#6, ~@2 a#4@2 ~@2 [f#5,c6]@4 ~@10 [f#5,a5]@9 d6@2 ~@2 d7@4 ~ d7@3 [c6,d6]@3 d7@5 ~@2 d7@2 ~ d7@3 ~ d7@2 ~ d7@2 ~, ~@3 [g#3,d4] ~@2 [c5,d5]@2 ~@8 [c5,c6]@2 ~@2 [a4,c5]@5 [a4,c5]@5 ~@3 d2 ~ [c6,d6]@2 ~@2 e2 ~@6 f2 ~ [c6,d6]@3 ~@4 a6@2 ~@2 g2 ~@2 d6@2]/2", // Fdim Bdim Bm D7 D D7 Csus2 D7 …
  AC: "[~@2 [g#2,b6] d6@2 [g#3,d4,f4] ~@2 [a2,a6,c7] ~@2 [f#3,c4,d4]@3 [d2,d3] ~@2 [f#3,c4,d4] ~@2 [d3,d5,d6] c5@2 ~ [d3,c5,d5,f#5,a5,d6]@3 [e2,e3,c5,g5] ~@3 [f2,c5,d5]@2 ~ [c5,d5]@3 d3@4 ~@6 g1@3 ~ [f#3,a#3] [d3,g3,b3] ~@3 g3 [a#3,c#4,f#4] [d4,g4] ~ [c#4,f#4,a#4] ~ [d4,g4,b4] ~@2 [g4,b4,d5]@4 ~@3 [d3,f#3,b3,c4,d5,c6] ~@2 g2 ~ e5 [g3,b3,d4,e4] ~@3 [d2,d#5,g5,a#5] ~@2 [g3,b3,d4,e4,d5,g5,b5,d6] ~@2 [g2,e3,d5] ~@2 [b3,d4,e4] [g3,c5,a5] ~ e5 e2 ~@2 [g3,a3,b3,d4,e4] ~@2 [b2,d3] ~ [c#5,f#5,c#6] [b3,d4,e4,d6] e5 ~@2 [d2,e2,c#5,d#5,f#5] ~@2 [g3,a3,b3,d4,e4,d5,g5,b5,d6] ~@2 [g2,d5,b5] [e3,b4,g5] f#5 [b3,d4,e4] ~@3 [d2,e2] ~@2 [g3,b3,d4,e4,g4] ~@2 [g2,a2,e3], ~ d7@4 b6@2 d7@2 ~@11 f#5@3 ~@11 [f#5,a5,d6]@7 ~@3 g2@8 ~@3 d4@2 ~@2 b3@2 ~@2 [a#4,c#5]@3 ~@5 f#5@5 ~@12 [g5,b5]@2 ~@3 g5@6 ~@3 a#5@2 ~@4 [a#5,c#6]@2 ~@14 b4@2 ~@2, ~@8 f#3@3 ~@5 [c5,d5,f#5,a5,c6,d6]@3 a5@5 ~@26 c#3@2 ~@2 [f#3,a#3]@3 ~@7 f#4@3 ~@5 [c5,d6]@3 ~@2 [d5,g5,b5,d6]@2 ~@3 [c#5,c#6]@2 ~@9 [b4,d5]@3 ~ [a4,b4,d5]@3 ~@16 [a4,c5,a5]@2 ~ [g4,b4,g5]@7 ~@2, ~@21 d2 ~@2 d2 ~@5 [f3,g#5]@3 ~ [f#2,f#3] ~@6 [d2,d3,c5,d5,f#5,a5,d6]@11 ~@49 g2@3 [g3,d5,g5,b5]@2 ~@12 g3@2 ~@8]/4", // G#m Ddim Am D7 D D7 D D7 …
  AD: "~ [d5,g5,b5,d6] [b3,d4,e4,d5,g5,b5,d6] ~@2 [c#5,f#5,a#5,c#6] [g5,b5,d6]@2 ~ [g3,b3,d5,g5]@3 ~ d5@3 [g3,d4,f4,d5,g5]@3 [a2,a3] ~@2 b3@2 ~@2 [c3,c4] ~@2 [g3,c4,e4]@3, ~@2 g3@2 ~@2 [d2,d5] ~@2 b5@10 ~@6 e6@6 ~, ~@9 [d4,e4,f4] ~@3 a5@6 ~@2 [g5,d6,g6]@3 ~@2 [g5,c6]@6, ~@13 g2 ~@8 b2 ~@9", // G Em7 F# G G7 A C D …
  AE: "[[b2,e5] ~@2 [g#3,d4,e4]@4 [e5,g5,a5,c6]@2 ~@2 [e6,f6,g6] [b5,c6,d6] [f5,g5,a5] [b4,c5,d5,e5] [f4,g4,a4] [d4,e4] [a3,c4] g3 [d3,e3] [b2,c3] a2 [c1,d1,c2] ~@4 [d#4,d#5]@2 ~ [e4,e5]@4 ~@4 [g2,e3,g4,e5]@3 ~@2 e5@2 [g3,g4,a4]@3 ~@2 [a#4,a#5]@2 ~ [a4,c#5,a5]@5 g4@3 [c#4,d#4] ~@4 d#6@3 ~@4 d#7@3 ~@5 c#7@2 [d2,d3] [d6,g6,b6,d7] ~ [d6,g6,b6,d7] ~ [g2,g3,g6,b6]@3 [g2,g3,d6,g6,b6,d7] ~ [g2,g3,d6,b6,d7] ~ [g2,g3,d6,g6,b6,d7], [d5,g#5,b5,d6]@7 [a2,a3,d6] ~@10 f3@2 ~@9 c5@3 ~@5 [a4,c5,g5]@4 ~@4 [c5,e5,g5]@8 ~@5 [c#5,d#5]@18 c#7@2 g6@5 ~@5 [d6,d7] ~@4 g6@2 ~, ~@30 g3@2 ~@21 [c#2,c#3]@2 ~@6 a#3@12 g7@10 ~@13, ~@30 c4 ~@14 [c4,e4] ~@12 g5@11 g6@7 [g3,a#3,c#4,d#4]@8 ~@12, ~@61 g3@2 ~@6 [c#2,c#3,g5,c#6,d#6]@15 ~@12]/3", // E5 E7 Am7 Em Bm F Cmaj7 F …
  AF: "~@2 [e6,a#6,c#7] ~ [f#3,e6,a#6,c#7] f#2 ~ [f#2,f#3,a#6]@2 [f2,f3,d#6,a6] ~ [f2,f3,c7] [d#6,a6] ~ [d#6,a6,c7]@3 [e2,e3,d6,g#6,b6] ~@4 [d5,e5]@5 ~@2 [d5,e5]@3, ~@2 [f#2,f#3]@2 ~@2 c#7@3 c7@2 ~@21, ~@7 e6 ~@6 [f2,f3] ~@7 [f#2,f#3,e6]@10", // A#dim F#7 F# F7 F5 D#dim Adim E7 …
  AG: "[[g2,d5,e5,a#5,e6]@3 ~@2 e6@2 g#2@2 ~@4 a2@2 ~ a2@2 ~@5 [g3,a3]@2 ~@3 [g2,g5]@3 [c2,b4,g5,b5]@4 ~@2 [a4,a5]@2 [b4,e5,b5]@3 ~@2 [a4,a5]@3 ~ [d2,d3,c5,d5,b5]@12 a5 ~@7 d1@3 ~@7 f1 ~@2 d5@2 [a4,d5]@2 ~ [b4,d5]@4 ~ [c5,e5]@3 [b4,d5]@4 ~@5 g4@2 ~ [f4,g4]@2 d4@3 [d#4,g4]@2 e4@2 ~ c4@2 d4@2 ~@3 e4@3 ~@10 g5@8 [d2,d3] ~@3 [b3,d4] ~@2 [c4,e4] ~ e4 ~ [e4,g4] ~@3 [g4,b4], g3@5 [d5,e5,g#5,b5]@5 ~@2 a4@3 [b4,e5,g5]@6 g5@7 ~@19 [f#5,d6]@14 ~@20 g4 ~@4 a#4 ~@12 [b4,d5]@2 d5@3 ~@17 c4@6 ~@33, ~@7 g#3 ~@7 [a1,b5]@3 ~@3 [a4,e5,a5]@11 ~@43 g2@16 ~@3 b2@14 ~@3 c3@16 [c#2,c#3]@18 ~@15, ~@23 [c#4,e4] ~@7 [c3,d#5]@6 ~@2 [c#2,c#3]@8 ~@13 [d2,c5,e5,f#5,b5]@18 g1@5 ~@11 b1@11 ~@6 c2@10 ~@5 [a#3,g4]@4 ~@30, ~@100 a4@2 [a4,b4]@2 ~@9 g4@13 d#4@18 ~@6 d4@2 ~@8]/5", // Em7b5 Gsus2 G Cmaj7 A E5 A G …
  AH: "~@2 [f#4,a#4]@2 ~@2 [g4,b4] ~@2 b4@2 ~@2 [c#5,e5] ~@3 [c#5,e5] ~ c#5@2 ~ [c5,d#5] [c#5,e5] ~@3 f#5@2 ~ [c4,c5,f#5] ~, ~@8 d5@2 ~@8 e5@2 ~@7 d5 ~@4", // F# G C#m Cm C#m Cdim
  AI: "~ [d3,c4] ~ e5 ~ [f#3,c4]@2 ~ [g3,b3,b4,g5] ~@3 [c4,g4,e5]@3 [b3,d5] g4 ~@2 [a3,e4,f#4,c5]@3 g3 [d4,g4,b4] ~@2 [f#3,c4,a4]@3 ~ [c4,g4] ~, [c5,f#5] ~ f#5 ~@13, ~ f#3@2 ~@2 [d3,c5] ~@24 e3@2", // D7 F#dim G C Bm F#m7b5 G F#dim …
  AJ: "[~ [c3,e4]@4 [g3,d4]@2 ~ [g3,c#4]@2 ~ c3@2 [f#3,a#3] ~ [d2,f#2]@2 ~ g3@2 ~@5 [g1,g2,f4,g4,d5,g5]@64 ~@7, ~ [g3,c4]@3 ~ b2 ~@4 [a3,c4]@2 ~ a3@4 ~@7 b4@64 ~@8, ~@11 d2 ~@2 [c3,f#3,a#3]@3 [g2,b3]@2 ~@77]/3", // C G5 Gdim F# D G7 C5 Am …
})).s("gm_piano").gain(0.64)

// chords · piano · "A.PIANO 1" · soft notes
const piano_soft = note(`<
  ~@2 A@2 B@3 C@4 D@2 ~ E@2 F@2 G@6 H I J K@3 L ~ M N O P ~ Q R S T U ~ V ~@4 W X Y Z AA AB AC AD AE ~@2 AF ~@2 AG AH ~
  AI AJ ~@2 AK AL@2 AM AN AO AP AQ AR AS AT AU AV AW AX AY AZ BA BB ~ BC@2 BD ~@2
>`.pickRestart({
  A: "[~@3 [g1,g2,b3]@26 [g2,d3]@4 ~@10 [d3,c4,d4,f#4,d5]@21, ~@29 g3@14 a#3@11 ~@10]/2", // G G5 D7
  B: "[~@31 d3@6 ~@10 [g1,g2]@37 ~@12, ~@30 [a3,c4]@19 ~@47, ~@31 [d2,d#4]@19 ~@46, ~@46 [b3,d4,g4,b4]@37 ~@13]/3", // G Am D#maj7 G
  C: "[~@15 d3@14 ~@5 f4@12 ~@15 b4@3 g#4 ~@22 d1@14 ~@5 d3 ~@21, ~@14 b3@15 ~ d3@13 ~@3 a2@14 c5@5 ~@63, ~@32 f3@12 ~@3 d3@18 ~@63, ~@51 c4@22 ~@55, ~@59 c#5@6 ~@63]/4",
  D: "[~@8 f#4@5 ~@11 d3@11 ~@8 c5@6 [d4,g4]@6 d3@8 ~, ~@2 [a4,c5,d5]@5 ~@9]/2", // G5 D7
  E: "[~@2 d3@15 ~@2 g4@23 ~@4 d5@8 [a2,g3]@10, ~@17 d3@25 [g#2,f3]@12 ~@10, ~@18 b3@24 b4@7 ~@5 e4@6 ~@4]/2", // A7 C#
  F: "[~@6 c4@2 ~@3 f3@4 f#3@2 ~@5 [d3,g3]@17 ~@9 c#3@5 ~@5 d3@4 ~@2, ~@10 b3@2 ~@3 c4@6 b3@17 ~@26, ~@5 g2@4 ~@5 g2@2]/2", // G5
  G: "[~ g2@3 ~@4 [d3,b3]@7 g3@2 a3 ~@2 b4@20 ~@18 d4@18 ~@14 f3@4 g3@12 ~@13 g2@14 g#3@12 ~@7 g#3@3 c3@9 ~@10 f4@3 [g4,c5]@14 ~, ~@6 g2@5 ~@7 [c4,d4]@19 ~@128 c2@15 ~@12, ~@18 b3@5 ~@35 b3@3 ~@58 c2@4 ~@10 b2@2 ~@15 b2@5 ~@10 c3@26 ~, ~@19 f#4@22 ~@151]/6", // G C5 Csus2
  H: "~@10 f#2 ~@5", I: "~@8 d5 ~@14 g#5@3 b2@5 ~", J: "~@7 g2 d3@4 ~ d3@10 ~@9",
  K: "[~@75 d2@3 ~@7 [b3,g4] ~ g4 ~@4 c4 ~@3, ~@15 c4@38 ~ [f#3,c4]@25 ~@17, ~@15 d3@11 ~@6]/3", // Em F#dim
  L: "~@8 f#4@2 ~@14 b3 ~ b3 ~@5, ~@8 f#3 ~@23", M: "~@19 [f3,c5] ~@4 c4@3 ~@5",
  N: "~@4 a2@3 d3 [c4,e4,g4]@2 ~@2 [f3,c4]@4 ~@2 a#2 ~@4 a2 ~@6 b4@2, ~@3 c4@2 ~@7 e3 ~@3 c4@6 ~@10", // C F5
  O: "e4 ~@2 b4 e4 ~@2 b4 ~@5 e4 ~@16 b4 ~", P: "e4 ~ b4 ~@17 [a3,a#3] ~ g#3 ~@9",
  Q: "~@3 d4 ~@11 [f#4,b4] ~@5 d2@2 ~@5 b3 g3 ~@2", R: "~@7 c#2 ~@18 a#4 ~@4 d#1", S: "~@8 b1 ~@9 c#5 ~@13",
  T: "~@3 f4@3 ~@19 g#3@3 ~@4", U: "a2 ~@31", V: "~@7 d3 ~@6 c#5 ~@8 d4 ~@8",
  W: "~@5 c5 ~ b5 ~@8 [f3,f#3] ~@15, ~@15 c6@3 ~@14", X: "~@19 d6 ~ a5@3 ~@8",
  Y: "~@4 d#2 ~@19 g4@3 ~ g4 ~@3, ~@24 f#4 ~@7", Z: "~@9 b3 ~@6 [g3,b3,e4] ~ c#5 ~ e5 b4@2 [b3,e4] ~@5 f3 ~@2",
  AA: "~@7 f#2 ~@24", AB: "~@3 a5 f5 ~@2 b3 ~@24", AC: "~@18 c2 ~@13", AD: "~@6 c#5@4 ~@12 g4@3 ~@7, ~@5 g5@3 ~@24",
  AE: "~@5 c#5 ~@7 a#1 ~@5 d#2 ~@3 c4@2 ~@7", AF: "~@16 g2 ~@2 g2 ~@12", AG: "~@6 f#2 ~@25",
  AH: "~@18 b2@4 ~@2 b2 ~@4 [b1,c#2] ~@2, ~@8 g4@3 ~@5", AI: "~@15 d#5", AJ: "~@8 g#4 ~@23", AK: "~@12 c#4 ~@19",
  AL: "[~@7 a#1 ~@11 c5@2 ~@2 d#5 ~@8 a5 c4 e4 ~@5 b3 ~@16 [e2,f#5] ~@3 d#5 ~@2, ~@31 f#5@2 ~@31]/2", // Esus2
  AM: "~ f#5@3 ~@2 [e2,b2] ~@9 e4 ~@5 g5@3 ~@4 b3 ~@2", AN: "~@3 g#5@3 ~@11 g5 ~@11 d7@2 ~",
  AO: "~ [e6,c7] ~@9 [f3,d6] ~@20", AP: "~@27 [d5,d6] ~@4", AQ: "~@6 f#2 ~@14 c#4@3 ~@8",
  AR: "~@9 [d5,c6]@2 ~@17 g5 ~@2 f5", AS: "~@2 [d3,c4] ~@12 c4 ~@16", AT: "f3 ~@15 b3@3 d#6 ~@2 a5 ~@9",
  AU: "~ e5@6 ~@10 b3 ~@14", AV: "~@3 [b2,e5] ~@12 d#5@5 ~@11", AW: "~@13 d#7@7 ~@4 a#2 ~@7, ~@5 [a5,f#6]@14 ~@13",
  AX: "~@3 g#2 ~@22 c#6@5 ~", AY: "~@13 b4@2 ~ b1 ~@15", AZ: "~@16 c6 ~@15", BA: "~@6 c#2 ~@9", BB: "~@12 g4@3 ~@17",
  BC: "[~@31 f#3@2 ~@29 e4 ~]/2", BD: "~@9 f#2 ~ a#3 ~@6 f#2 ~@13",
})).s("gm_piano").gain(0.32)

stack(piano, piano_soft)