Strudelify
Stranger On The Shore cover art

1993 · Reflections

Stranger On The Shore

Bilk

KeyC majorTempo114 bpm
0:00/0:00
// Stranger On The Shore — Bilk
// 114 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 107 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(114/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 · epiano2
const epiano2 = note("<A@3 B@6 ~@98>".pickRestart({
  A: "[~@50 a4@6 ~@18 a#5@3 ~ [c#5,a5]@18, [c2,c4,d4]@33 g5@4 e5@4 d5@4 c5@11 [a#4,c5,d5]@22 ~@18, ~ e4@25 c6@4 a5@26 a#5@18 ~@22, ~@2 g4@55 ~@14 a5@6 [a4,b4]@19, ~@22 c3@35 ~@39]/3", // F#m Csus2 A# Asus2
  B: "[~@9 d3@14 ~@42 c5@7 ~@28 g4@12 [g3,g4,b4,d#5]@64 ~@16, ~@9 d2@26 d5@7 c6@5 a5@4 g5@4 f5@5 d5@12 f4@41 ~@79, ~@9 [f4,a4,d5]@26 a4@38 g3@21 g3@18 ~@80, ~@23 d3@50 g2@73 ~@46, ~@29 d6@44 ~@14 g5@26 ~@79]/6", // Gaug Dm
})).s("gm_epiano2").gain(0.19).pan(0.8)

// chords · epiano2 · soft notes
const epiano2_soft = note("<A ~@2 B@4 ~@100>".pickRestart({
  A: "c3@21 ~@11", B: "[~@9 c5@26 f4@37 ~ b4@39 ~@16, ~@35 c5@30 ~@8 g4@27 ~@28]/4",
})).s("gm_epiano2").gain(0.1).pan(0.8)

// chords · trombone
const trombone = note(`<
  ~@6 A ~ B C D E F G H I J K L M N O P Q R S T U V W X Y Z AA AB AC AD AE AF AG ~@32 AH AI AJ AK AL AM AN AO AP@2 AQ AR
  AS AT AU@2 AV W AW AX AY AZ BA BB BC BD BE BF BG BH BI ~ BJ BK@2
>`.pickRestart({
  A: "~@11 g5@3 ~@2", B: "~@6 [g3,b3,c4,e4] ~@9 [g3,b3,d4,e4]@5 [g3,b3,e4] ~@10",
  C: "~@5 [f3,a3,c4,d4] ~@9 g3@5 ~ [f3,g3,b3,d4] ~@10", // Dm7 G7
  D: "~@5 [g3,b3,c4,e4] ~@10 [g3,e4]@5 [g3,a#3,c4,e4] ~@10, ~@15 a#3@5 ~@12", // Cmaj7 C C7
  E: "~@5 [a3,c4,d4,f4] ~@10 [g#3,d#4]@5 [g#3,c4,d#4,f4] ~@10", F: "~@5 [g3,a3,e4] ~@10 [a3,e4]@5 ~ [a3,c4,e4] ~@9",
  G: "~@5 [f#3,a3,d4] ~@9 [f#3,a3]@5 ~ [f#3,a3,d4] ~@10", H: "~@5 [f3,a3,c4] ~@9 [f3,a3,c4]@5 ~ [f3,c4] [a3,d4] ~@9",
  I: "~@5 [g3,b3,d4] ~@7 [g3,b3,d#4]@7 ~ [g3,b3,d#4] ~@7 [g3,b3,d#4] ~@2", // G Gaug
  J: "~@5 [g3,b3,e4] ~@9 [g3,d4]@5 ~@2 [g3,b3,d4,e4] ~@9", // Em G5 Em7
  K: "~@5 a3 [f3,c4,d4] ~@9 [f3,a3,b3,e4]@4 ~ [f3,a3,b3,d4] ~@10", // Dm7 Fmaj7 Bm7b5
  L: "~@5 [g3,b3,c4,e4] ~@10 [g3,e4]@5 [g3,a#3,c4] e4 ~@9, ~@15 a#3@5 ~@12", // Cmaj7 C C7
  M: "~@5 [a3,d4] [c4,f4] ~@9 [a3,c4]@4 ~ [a3,c4] ~@10", N: "~@5 a3 [g3,c4,e4] ~@9 [a3,e4]@5 ~ [a3,c4,e4] ~@9",
  O: "~@6 [g3,b3,d4,e4] ~@9 [g3,e4]@4 ~ [g3,a#3,c4,e4] ~@10, ~@15 a#3@5 ~@12", // Em7 C C7
  P: "~@5 [f3,a3,c4] ~@10 [f3,g3,b3,d4]@5 [f3,g3,b3] ~@10", // F G7
  Q: "~@5 [e3,g3,a3] ~@9 [e3,g3,a#3]@5 ~ [e3,g3,a#3,c4] ~@10, ~@5 c4@2 ~@25", // A7 Edim C7
  R: "~@5 [f3,a3,c4] ~@10 [a3,d4,f4]@5 [a3,c4,d4,f4] ~@10", S: "~@5 [b3,d4,e4,g4] ~@15 [a3,e4] [c#4,g4] ~@9",
  T: "~@5 [a3,c4,d4,f4] ~@10 [g3,b3,d4,f4]@5 ~ [g3,b3,d4] ~@9", U: "~@5 [g3,a3,c4,e4] ~@15 [g3,a#3,c4,e4] ~@10",
  V: "~@5 [a3,c4,f4] ~@9 [a3,d4]@5 ~ [a3,c4,d4,f4] ~@10", W: "~@5 [g3,b3,d4,e4] ~@15 [g3,a3,c#4,e4] ~@10",
  X: "~@5 [f#3,a3,d4] ~@10 a3@5 [f#3,a3,c4] ~@10, ~@15 f#3@5 ~@12", Y: "~@5 [g3,b3,d4] ~@15 [g3,b3,d#4] ~@10",
  Z: "~@5 [g3,b3,c4,e4] ~@10 [g3,b3,d4,e4]@5 [g3,b3,d4,e4] ~@9 [f3,a3]", AA: "~@13 [f3,g3,b3,d4] ~@7 [f3,g3,d4] ~@10",
  AB: "~@5 [g3,b3,c4,e4] ~@10 [g3,a#3,e4]@5 [g3,a#3,c4,e4] ~@10", // Cmaj7 Edim C7
  AC: "~@5 f3 [a3,d4] ~@14 [f3,g#3,c4,d#4] ~@10, ~@5 c4@2 ~@25", // D5 Fm7
  AD: "~@5 [g3,a3,c4,e4] ~@9 [g3,a3,e4]@5 ~ [g3,a3,c4,e4] ~@10", // Am7 A7 Am7
  AE: "~@5 [g3,b3,d4,e4] ~@15 [g3,a#3,c4,e4] ~@7 [g3,a#3,c4] ~@2", // Em7 C7
  AF: "~@4 a3 [f3,d4] ~@10 [f3,g3,b3,d4]@4 ~ [f3,g3,b3,d4] ~@10", // Dm G7
  AG: "~@5 [e3,g3,a3] ~@15 [g3,b3,d#4] ~@10, ~@5 c4@2 ~@25", // A7 Gaug
  AH: "~@5 [g3,b3,c4,e4] ~@10 [g3,b3,d4,e4]@5 [g3,b3,e4] ~@10", // Cmaj7 Em7 Em
  AI: "~@5 [f3,a3,c4,d4] ~@9 [f3,g3,b3,d4]@5 ~ [f3,g3,b3,d4] ~@10", // Dm7 G7
  AJ: "~@5 [g3,b3,c4,e4] ~@10 [g3,a#3,c4,e4]@5 [g3,a#3,c4] e4 ~@9", // Cmaj7 C7
  AK: "~@5 [a3,c4,d4,f4] ~@10 c4@5 [g#3,c4,d#4,f4] ~@10, ~@15 [g#3,d#4,f4]@5 ~@12", // Dm7 Fm7
  AL: "~@5 [g3,a3,c4,e4] ~@10 [g3,a3,c4,e4]@5 ~ [g3,a3,c4,e4] ~@9", // Am7
  AM: "~@5 [f#3,a3,d4] ~@10 [f#3,a3,c4,d4]@5 [f#3,a3,c4,d4] ~@10", // D D7
  AN: "~@5 [f3,a3,c4,d4] ~@9 [f3,a3,c4,d4]@5 ~ [f3,a3,c4,d4] ~@10", // Dm7
  AO: "~@5 [f3,g3,b3,d4] ~@9 [g3,b3,d#4]@5 ~ [g3,b3,d#4] ~@10", // G7 Gaug
  AP: "[~@5 [g3,b3,c4,e4] ~@10 [g3,b3,d4,e4]@2 ~@6 [f#3,a#3] ~@4 [f3,a3,c4,d4]@17 ~ [f3,a3,b3,e4]@5 ~ [f3,a3,b3,d4] ~@10, ~@12 d#4 ~@19]/2", // Cmaj7 Em7 F# Dm7 Fmaj7 Bm7b5
  AQ: "~@5 [g3,b3,c4,e4] ~@10 [g3,a#3,c4,e4]@5 ~ [g3,a#3,c4,e4] ~@9", AR: "~@5 [f3,a3,c4,d4] ~@15 [f3,a3,c4,d4] ~@10",
  AS: "~@5 [g3,a3,c4,e4] ~@9 [g3,a3,c4,e4]@5 ~ [g3,a3,c4,e4] ~@10", // Am7
  AT: "~@5 [g3,b3,d4,e4] ~@10 [g3,a#3,c4,e4]@5 ~ [g3,a#3,c4,e4] ~@9", // Em7 C7
  AU: "[~@5 [f3,a3,c4,d4] ~@9 [f3,b3,d4]@2 ~@7 [f3,g3,b3,d4]@4 ~ [e3,g3,a3,c4]@12 ~@4 [g3,a#3,c4,e4] ~@7 a#3 [c4,e4]@2 ~@8, ~@15 g3 ~@38 g3 ~@9]/2", // Dm7 Bdim G7 Am7 C7 C
  AV: "~@5 [a3,c4,f4] ~@10 [a3,d4,f4]@5 [a3,c4,d4,f4] ~@10", // F Dm Dm7
  AW: "~@5 [f3,a3,c4,d4] ~@10 [f3,g3,b3,d4]@5 [f3,g3,b3,d4] ~@10", // Dm7 G7
  AX: "~@5 [g3,a3,c4,e4] ~@15 [a#3,c4,e4]@2 ~@9, ~@21 g3 ~@10", // Am7 C7
  AY: "~@5 [a3,d4,f4] ~@9 [a3,c4,d4,f4]@5 ~ [a3,c4,d4,f4] ~@10, ~@5 c4@2 ~@25", // Dm Dm7
  AZ: "~@5 [g3,b3,d4,e4] ~@14 [a3,c#4] [g3,e4] ~@10", // Em7 A C
  BA: "~@5 [f#3,a3] ~@9 [f#3,a3,c4]@5 ~ [f#3,a3,d4] ~@10, ~@5 c4@2 ~@14 c4@2 ~@9", // F#m F#dim D
  BB: "~@5 [f3,g3,b3,d4] ~@15 [g3,b3,d#4] ~@10", BC: "~@5 [g3,b3,c4,e4] ~@10 [g3,b3,d4,e4]@5 ~ [g3,b3,d4,e4] ~@9",
  BD: "~@5 [f3,a3] [c4,d4] ~@9 [f3,g3,b3,d4]@5 [f3,g3,b3,d4] ~@10", // F Csus2 G7
  BE: "~@5 [g3,b3,c4,e4] ~@10 [g3,e4]@4 ~ [g3,a#3,c4,e4] ~@10, ~@15 [a#3,c4]@5 ~@12", // Cmaj7 C C7 A#sus2
  BF: "~@5 [f3,a3,c4,d4] ~@10 [f3,c4]@5 [f3,g#3,c4,d#4] ~@10, ~@15 [g#3,d#4]@5 ~@12", // Dm7 F5 Fm7 G#5
  BG: "~@5 [g3,a3,c4,e4] ~@10 [g3,a3,e4] ~@15, ~@8 c4 ~@7", // Am7 A7
  BH: "~@4 d4 [g3,b3,e4] ~@9 [g3,a#3,c4]@2 ~@15, ~@15 e4 ~@16", BI: "[f3,a3]@17 ~@15",
  BJ: "~@3 c4@2 ~ e4@2 ~@2 g4@3 a4@3 ~@5 a4@3 ~ a4@3 ~@4", BK: "[~@5 g4@44 ~@15]/2",
})).s("gm_trombone").gain(0.22).pan(0.1)

// chords · trombone · soft notes
const trombone_soft = note(`<
  ~@6 A B C D E F G H I ~ J ~ K L K@2 M E N ~ O ~ P ~ Q ~ R S K ~ E T ~@34 C ~@15 K ~@5 U ~@7 V ~ W X ~
>`.pickRestart({
  A: "~@15 g4@6 ~@6 g4@5", B: "~@4 g5@6 g4@17 ~@5", C: "~@21 d4 ~@10", D: "~@15 [f3,b3,d4]@5 ~@12", E: "~@15 c4@5 ~@12",
  F: "~@4 [c4,f4] ~@3", G: "~@6 c4 ~@9 c4@5 ~@11", H: "~@16 d4@5 ~@11", I: "~@5 d4 ~@10 d4@4 ~@12",
  J: "~@5 c4 ~@10 e4@5 ~@11, ~@15 b3@5 ~@12", K: "~@16 c4@5 ~@11", L: "~@16 f4@4 ~ f4 ~@10", M: "~@5 d4 ~@15 d4 ~@10",
  N: "~@4 c4 ~@3", O: "~@22 f4 ~@9", P: "~@16 f4@5 ~@11, ~@15 c4@5 ~@12", Q: "~@16 [c4,d4]@5 d4 ~@10", R: "~@31 d4",
  S: "c4 ~@20 b3 ~@10", T: "~@30 e4 ~", U: "~@19 d4 ~@12", V: "d4@17 ~@15", W: "~@17 a4@3 ~@9 b4@3", X: "~ g4@3 ~@28",
})).s("gm_trombone").gain(0.13).pan(0.1)

// chords · brass section
const brass_section = note(`<
  ~@41 A@2 ~ B ~@2 C@2 ~@4 D@4 E@2 F G@2 H I@2 ~@2 J@2 K@4 ~@4 L@2 ~ M@2 ~ N@2 ~@2 O P ~@2 Q@2 R@2 S ~@11
>`.pickRestart({
  A: "[~@13 [b4,f5] ~@7 [f4,g#4,f5,g#5]@2 ~@6 [e4,g4,b4,d5,e5]@19 [d4,e4,g4,b4,d5,e5]@5 [b3,e4,g4,b4,d5,e5,g5] ~@10, ~@13 a#5@2 ~@13 b3@24 ~@12, ~@29 g5@24 ~@11]/2", // Bdim Fm Em7
  B: "~@5 [a3,c4,e4,a4,c5,e5] ~@26", // Am
  C: "[~@4 [b3,d4,e4,g4,b4,d5,e5] g3 ~@15 [g3,b3,d#4,g4,b4,d#5,f5] ~@7 [g3,b3,c4,e4,g4,b4,c5,e5]@10 [d4,e4,f4] [a3,b3,c4] [f3,g3] [d3,e3] ~@21]/2", // Em7 Gaug Cmaj7 Dm Am Fsus2 Dsus2
  D: "[~@5 [b3,d4,e4,g4,b4,d5,e5] ~@7 [g3,a#3,c4,e4,g4,a#4,e5]@17 ~ [f3,a3,c4,d4,f4,a4,d5]@5 ~ [f3,a3,c4,d4,f4,a4,d5] ~@10 b4@2 ~@6 [f3,b3,d4,f4,a4,b4,d5]@4 ~ [a3,e4,g4,a4]@14 ~@2 [a#3,e4,g4]@18 [f3,f4]@32 ~, ~@47 [b3,e4,f4,a4,e5]@3 ~@11 [g3,c4]@34 ~@33, ~@38 a#4@9 ~@17]/4", // Em7 C7 Dm7 Bm7b5 A7 Edim F Esus4 …
  E: "[e3@18 ~@3 [a3,a4]@2 ~@6 [d3,d4]@14 ~@2 d3@2 [g3,g4]@4 ~@5 [a3,a4]@5 ~ [g3,g4]@2]/2", // A D G A G
  F: "~@5 [c4,c5]@3 [d4,d5]@3 ~@2 [d#4,d#5]@3 [e4,e5]@5 [g4,g5]@3 ~@8", // C D D# E G
  G: "[~@5 [f3,f4]@2 ~@14 [d4,d5]@2 ~@6 [e4,e5]@18 [a4,a5]@5 ~ [a4,a5]@2 ~@9]/2", H: "~@5 [d4,d5]@3 ~@13 [d4,d5]@3 ~@8",
  I: "[~@5 [d4,d5]@3 ~@5 [d#4,d#5]@18 ~ [g4,a4,c5]@4 f4 [d4,e4] [g3,a3,b3] [d3,e3,f3] [a2,b2,c3] ~@23, ~@31 e4@3 ~@30, ~@32 e5@3 ~@29]/2", // D D# Am7 Dsus2 G Dm Am
  J: "[~@23 [g#3,c4,d#4,f4,g#4,c5,d#5]@2 ~@4 [g3,a3,c4,e4,g4,a4,e5]@31 ~@4]/2", // Fm7 Am7
  K: "[~@31 [a3,a4,d5]@5 ~ [a3,c4,d4,d5]@2 ~@9 [f4,a4,b4,e5]@2 ~@6 [f3,b3,f4,a4,b4,d5]@4 ~ [e3,g3,a3,c4,e4,g4,a4,c5]@17 ~@7 [b3,d#4,g4,b4,d#5]@4 ~@4 [g3,c4,e4,g4,b4,c5,e5]@5 ~@30, ~@37 [f4,a4] ~@9 [f3,b3,e4]@3 ~@35 g3@2 ~@41]/4", // D5 D7 Fmaj7 Bm7b5 Am7 Baug Cmaj7 F …
  L: "[~@5 [d4,f#4,a4,b4]@2 ~@14 [d4,f#4,a4,c5]@2 ~@6 [d4,f4,a4,d5]@28 ~@7]/2", // Bm7 D7 Dm
  M: "[~@16 [b3,d4,e4,g4]@2 ~@5 [a#3,c#4,d#4,f#4]@4 ~@2 [a3,c4,d4,f4]@34 ~]/2", // Em7 D#m7 Dm7
  N: "[~@5 [f3,a3] ~@15 [f3,g#3] ~@9 [g3,a3,e4]@15 ~@18, ~@5 c4@2 ~@14 c4@2 ~@41]/2", // F Fm A7
  O: "~@5 [g3,g4]@3 [a3,a4]@5 c5@2 ~ [d4,d5]@5 [d#4,d#5]@3 [e4,e5]@5 [g4,g5]@2 ~", P: "[f4,f5] ~@7",
  Q: "[~@5 [c3,e3,g3,a3,c4,e4,g4,a4]@2 ~@14 [c3,e3,g3,a#3,c4,e4,g4,a#4]@3 ~@5 [f3,a3,c4,f4,a4,c5]@18 ~@17]/2", // Am7 C7 F
  R: "[~@5 [g3,d4,e4,g4,b4,d5,e5]@2 ~@6 [c#4,g4,b4,f#5]@3 ~@5 [g3,f4,g4,b4,c#5,f5]@3 ~@5 [c4,d4,f#4,a4,c5,d5,f#5]@20 ~@15, ~@12 [g3,f#4,c#5]@3 ~@5 c#4@4 ~@4 a3@20 ~@16]/2", // Em7 F#sus4 G7 D7 F#
  S: "~@5 [d4,d5] ~@15 [b3,d#4,g4,d#5] ~@7 [g3,b3,c4,e4,g4,c5] ~@2", // D Baug Cmaj7
})).s("gm_brass_section").gain(0.22).pan(0.7)

// chords · brass section · soft notes
const brass_section_soft = note(`<
  ~@41 A@2 ~@5 B ~@4 C@3 D@2 E ~@5 F ~@2 G@2 H@2 ~@12 I@2 ~@2 J ~@3 K ~ L ~ M ~@11
>`.pickRestart({
  A: "[~@13 [b3,f4,a#4]@2 ~@6 b4@2 ~@6 d4@19 ~@16, ~@21 b3 ~@42]/2", B: "~@6 a4 ~@4 c3 ~@20",
  C: "[~@5 g3 ~@7 c5@17 ~ c5@5 ~ c5 ~@9 f3@2 ~@12 c5@15 ~ c5@18 ~, ~@61 e3@33 ~@2, ~@61 f3@2 ~@33]/3",
  D: "[~@31 e4@19 ~@14]/2", E: "~@13 d4@2 ~@17", F: "~@5 c4 ~@26", G: "[~@23 f3 ~@5 c5@31 ~@4]/2",
  H: "[~@31 [c4,d4,f4,c5]@5 ~ c5@2 ~@17 d4@3 ~@5, ~@31 f3@6 ~@27]/2", I: "[~@31 c4@15 ~@18]/2", J: "~@13 c4@3 ~@16",
  K: "~@25 a#4@2 ~@5", L: "~@5 b3@3 ~@24", M: "~@5 [g3,b3,g4] ~@15 [g3,b4] ~@7 [b4,e5] ~@2",
})).s("gm_brass_section").gain(0.11).pan(0.7)

// other · string ensemble 1
const string_ensemble_1 = note("<~@39 A@7 B C@5 D@4 E@8 ~@8 F@7 G@3 H@5 I@8 J@3 K L@8>".pickRestart({
  A: "[~@31 g5@24 f#5@4 ~ f5@17 ~ g5@2 ~@4 f5@3 ~@5 e5@32 f5@34 e5@33 d5@23 ~ d5@2 f#5@3 a5@3 d6]/7",
  B: "~@7 c6@8 b5@7 ~ a5@8 g5",
  C: "[~@7 f5@8 e5@8 f5@7 ~ g5@23 f#5@6 f5@27 g5@8 e5@13 f5@3 e5@8 c5@5 f4@16 f5@10 c6@9 e5]/5",
  D: "[~@12 f5@3 e5@8 a5@5 g5@23 e5@11 ~ d5@16 g5@14 c6@34 ~]/4",
  E: "[~@4 f5@8 g5@3 a5@8 c6@6 g5@26 e5@8 d5@12 ~ d5@3 f5@8 g5@5 e5@26 ~ c5@8 f5@8 g5@8 a5@8 c6@7 b5@25 g5@7 f#5@17 a5@16 g5@8 f5@8 e5@8 d5@7 ~ c6]/8",
  F: "[[g4,g5]@22 ~ f#4@7 [f4,f5]@16 ~ g5@15 ~ e5@21 [g4,g5]@4 ~@2 [a4,a5]@3 ~@2 [a4,a5]@21 [g#4,g#5]@8 [g4,g5]@27 [e4,e5]@6 [a4,a5]@15 [f#4,f#5]@3 [d4,d5]@5 [d5,d6]@4 ~@4 [d5,d6]@11 [c5,c6]@8 [b4,b5]@8 [a4,a5]@8 [g4,g5], ~@22 f#5@7 ~@17 g4@16 e4@22 ~@140]/7", // G F G A G# G E A …
  G: "[~@7 [f4,f5]@8 [e4,e5]@8 [d#4,d#5]@8 [e4,e5]@16 [g4,g5]@5 ~@3 [f#4,f#5]@4 ~ [f4,f5]@19 [g4,g5]@15 [e4,e5]@2]/3", // F E D# E G F# F G …
  H: "[~@12 [f4,f5]@3 [e4,e5]@7 ~ [e4,e5]@5 [f4,f5]@34 [e4,e5]@65 [d4,d5]@32 [c4,c5]]/5", // F E F E D C
  I: "[~@12 e5@2 ~ c6@8 a#5@7 ~ [a4,a5]@32 [g4,g5]@32 [f4,f5]@31 [e4,e5]@16 [a#4,a#5]@15 ~@2 a5@31 [b4,b5]@16 [g4,g5]@17 [f#4,f#5]@29 [g4,g5]@4, ~@11 c5@2 ~ g5@2 ~@142 a4@33 ~@65]/8", // A G F E A# B G F# …
  J: "[~@4 [a4,a5]@3 [g4,g5]@5 [f4,f5]@7 ~ [e4,e5]@3 [d4,d5]@7 [c4,c5]@17 [e4,e5]@8 [d#4,d#5]@8 [d4,d5]@16 [g4,g5]@16 [e4,e5]]/3", // A G F E D C E D# …
  K: "~@7 [f4,f5]@8 [e4,e5]@8 [g4,g5]@5 [a4,a5]@4", // F E G A
  L: "[~@15 [c5,c6]@4 ~ [g#4,g#5]@4 ~@2 [f4,f5]@5 [e4,e5]@16 [a4,a5]@16 [e5,e6]@32 ~@53 e5@97 ~@11, ~@95 [d5,d6]@55 ~@106, ~@147 e6@97 ~@12]/8", // C G# F E A E D
})).s("gm_string_ensemble_1").gain(0.13).pan(0.7)

// bass · acoustic bass
const bass = note(`<
  ~@8 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z AA AB AC AD AE AF A B C D E F G H I J K L M N O P Q R S T U V
  W X Y Z AA AB AC AD AG AH A B C D E F G H I J K L M N AI P Q R S T U V W X Y Z AA AB AJ AK AL@5
>`.pickRestart({
  A: "c2@7 ~ d2@7 ~ e2@8 b1@5 e2@2 ~", B: "d2@8 a1@5 g#1@2 ~ g1@5 d2@2 ~ g2@5 d2@2 ~", C: "c2@8 d2@8 e2@8 c2@7 ~",
  D: "f1@8 g1@5 a1@2 ~ f1@5 g#1@2 ~ c2@5 f1@2 ~", E: "c2@7 ~ c2@5 g#1 ~@2 a1@7 ~ a1@5 c#2@2 ~",
  F: "d2@8 a1@7 ~ f#1@7 ~ a1@5 f#1@2 ~", G: "d1@7 ~ e1@7 ~ f1@8 f#1@7 ~", H: "g1@8 a1@7 ~ a#1@8 b1@8",
  I: "c2@7 ~ c2@7 ~ e2@7 ~ d#2@7 ~", J: "d2@7 ~ d2@5 f#1@2 ~ g1@5 d2@2 ~ g2@5 g1@2 ~",
  K: "c2@7 ~ c2@5 g1 ~@2 c2@7 ~ c2@5 f#1@2 ~", L: "f1@7 ~ a1@8 d2@7 ~ d2@6 ~@2", M: "c2@7 ~ c2@5 g#1@2 ~ a1@7 ~ a1@7 ~",
  N: "e2@7 ~ b1@7 ~ c2@7 ~ c#2@7 ~", O: "d2@8 f#1@8 g1@7 ~ g1@7 ~", P: "c2@8 a#1@7 ~ a1@7 ~ g1@5 f#1@2 ~",
  Q: "f1@7 ~ f1@7 ~ d2@7 ~ d2@7 ~", R: "e2@7 ~ e2@5 g#1 ~@2 a1@5 e2 ~@2 a2@5 a1@2 ~",
  S: "d2@8 a1@5 g#1@2 ~ g1@7 ~ b1@7 ~", T: "c2@8 g1@7 ~ c2@8 g1@7 ~", U: "f1@7 ~ f1@7 ~ d2@7 ~ d2@5 d#2 ~@2",
  V: "e2@7 ~ e2@2 ~ g1@2 g#1@2 ~ a1@5 e2@2 ~ a2@5 a1@2 ~", W: "d2@5 d2@2 ~ c2@7 ~ b1@7 ~ a1@7 ~",
  X: "g1@7 ~ f2@7 ~ e2@7 ~ d2@5 c#2@2 ~", Y: "c2@7 ~ c2@8 e2@7 ~ d#2@7 ~", Z: "d2@8 a1@5 g#1@2 ~ g1@8 d2@5 g1@2 ~",
  AA: "c2@8 c2@7 ~ c2@7 ~ c2@8", AB: "f1@7 ~ c2@5 f2@2 ~ f1@7 ~ c2@5 f2@3",
  AC: "c2@7 ~ c2@5 g#1@2 ~ a1@7 ~ a1@5 d#2@2 ~", AD: "e2@7 ~ e2@7 ~ c2@8 g1@5 c1@2 ~",
  AE: "d2@7 ~ d2@5 f#1@2 ~ g1@6 ~@2 g1@7 ~", AF: "c2@8 c2@7 ~ g1@5 d2 ~@2 g2@5 g1@3",
  AG: "d2@7 ~ d2@5 f#1@2 ~ g1@7 ~ g1@7 ~", AH: "c2@8 c2@7 ~ g1@5 d2 ~@2 g2@5 g1 ~@2", AI: "d2@8 f#1@8 g1@7 ~ g1@6 ~@2",
  AJ: "c2@8 b1@7 ~ a1@7 ~ a1@5 d#2 ~@2", AK: "e2@7 ~ e2@5 c#2@2 ~ c2@8 c2@7 ~", AL: "[d2@15 ~ g1@29 ~@3 c2@110 ~@2]/5",
})).s("gm_acoustic_bass").gain(0.3)

// chords · epiano2
const epiano2_2 = note(`<
  A@8 B@2 C@2 D@2 E@6 F@4 G H I@5 J@4 K@5 L@5 M@2 N@3 O@7 P@7 Q@5 R@3 S@2 T@3 U@3 V@3 W@5 X@2 Y@4 Z@5 AA AB@7
>`.pickRestart({
  A: "[~@50 a4@6 ~@18 a#5@3 ~ a5@27 d3@14 ~@42 c5@8 ~@27 g4@12 [g3,g4,b4,d#5]@48, [c2,c4,d4]@41 d5@4 c5@11 [a#4,c5,d5]@22 ~@27 [f4,a4,d5]@26 [a4,d5]@7 c6@5 a5@4 g5@4 f5@4 d5@14 g4@27 ~@60, c3@21 c3@5 c6@4 a5@26 a#5@18 ~@51 d6@44 ~@14 g5@26 ~@47, ~ e4@32 g5@4 e5@20 ~@14 a5@6 ~@42 d3@50 g3@21 g3@18 ~@48, ~@2 g4@55 ~@20 [a4,b4,c#5]@27 ~ d2@64 g2@73 ~@14]/8", // Gaug Csus2 A# Dm D5 A
  B: "[[c4,e4,g4,b4]@13 c3@2 [b3,d4,e4,g4]@8 ~ [b3,d4,e4,g4]@5 a3@10 a3@5 ~ a3@2 ~ [g3,b3,d4,f4]@8 [g3,b3,d4,f4]@7 ~, c3@12 ~@3 e3@14 [c4,d4,f4]@18 ~@17]/2", // Cmaj7 Em7 G7 Dm7
  C: "[g3@8 g3@5 g3@2 ~ [g3,a#3,e4]@8 [g3,a#3,c4,e4]@5 [a3,c4]@8 ~@3 d4@5 g#3@8 [g#3,d#4]@8 g3@2 ~, [b3,c4,e4]@15 ~@14 f3@16 [c4,f4]@18 ~, ~@29 d4@9 [a3,c4,f4]@8 ~@18]/2", // Edim C7 Am G#5 Cmaj7 F5 F
  D: "[[g3,a3]@8 ~@5 c4@2 ~ [a3,c4,e4]@8 [a3,c4,e4,g4]@5 a3@11 a3@5 [a3,c4,d4,f#4]@8 [a3,c4,d4,f#4]@8 f3@2 ~, [c4,e4]@15 ~@14 [c4,f#4]@16 ~@19, ~@8 g3@7 ~@49, ~@11 a3@4 ~@49]/2", // Gsus2 Am Am7 D7 C Cdim
  E: "[[f3,a3]@7 ~@6 a3@3 [a3,c4,d4,f4]@7 [a3,c4,d4,f4]@5 ~ [g3,b3,d4]@8 [g3,b3,d4]@8 g3@8 g3@3 [g3,b3,d#4]@4 ~@9 [b4,e5]@9 ~@2 [g3,b3,d4,e4,g4,b4,d5,e5]@6 ~@2 [f#3,c#4,d#4,f#4,a#4,d#5]@5 d4@8 ~@3 f4@5 [e4,f4,a4,b4,e5]@7 ~ [d#4,f4,a4,b4,d#5]@7 ~ [e4,b4,c5,e5]@9 ~@2 [b4,c5,e5,g5]@6 g4 ~ [e4,g4,a#4]@8 [e4,g4,a#4]@5 ~ [c4,f4]@8 ~@2 f4@8 ~@8 f3@8, ~@7 f3@21 ~@33 [g3,b3,c4,e4]@17 ~@15 [f3,a3,a4,c5]@15 ~ [f3,b3]@15 ~ [g3,b3,c4,g4]@17 ~@2 [a#3,e5]@13 ~ [f3,a3,a4]@20 ~@3 a4@10 ~, ~@7 a3@6 ~@32 [b3,d#4]@11 ~@45 d4@7 ~@58 c4@11 ~@2 f4@13, ~@8 [c4,d4]@8 ~@13 e4@16 ~@48 f4@11 ~@30 e4@9 ~@33 [d3,d4]@16]/6", // F Dm7 G Gaug E5 Em7 D#m7 Esus4 …
  F: "[~@5 [g4,a4,c5,e5]@9 g4 ~ [e4,a4,c5,e5]@8 [e4,a4,c5,e5]@6 ~@2 g4@5 g4@2 ~ [e4,d5]@4 ~ [g3,g4,a#4,e5] ~@7 [a#3,c4,e4,g4,a#4,c5,e5]@6 ~@2 [d4,f4]@9 ~ f4@4 ~@2 [e4,f4,g4,b4,e5]@6 ~@2 [d4,f4,g4,b4,d5]@6 ~@2 [c4,e4]@8 ~@2 e4@5 ~@15 g4@2 a#4@2 ~, [g3,c4,e4]@15 ~ a3@14 ~ d4@12 ~@27 d4@6 ~@17 [a3,g4,a4,c5]@16 [a#3,a#4]@17 ~@2, ~@32 [g3,b3]@12 ~ [a#3,c4,e4]@2 ~@14 [f3,a3,c4,a4,c5,d5]@15 ~ [f3,b3]@14 ~@2 [e3,g3]@34 ~, ~@32 [e4,b4,d5,e5]@7 [g4,e5]@4 ~@58 c4@8 e4@8 c4@9 ~@2, ~@109 g4@11 e4@6 ~@2]/4", // Am7 Am E7 Edim C7 Dm Em G7 …
  G: "[f4,a4]@6 ~@2 [f4,a4]@5 d4 ~@2 [f4,a4,c5]@7 ~ [d4,f4,a4,c5,d5]@7 ~, a3@31 ~, [f3,c4]@7 ~@9, d4@4 ~@2 d4@7 ~@2 [c4,d4]@7 ~@10", // F Dm7 F5 Csus2
  H: "[g3,e4,g4,b4]@8 [b3,d4,e4,g4,b4]@8 [f#4,g4,c#5,f#5]@7 ~ [e4,g4,c#5,e5]@7 ~, ~@16 [g3,c#4]@15 ~", // Em Em7 F# C#dim Gdim
  I: "[[d4,f4,a4]@7 ~ [d4,f4,a4]@7 ~ [e4,f4,a4,b4,e5]@6 ~@2 [d4,f4,a4,b4,d5]@5 e4@8 ~@3 [g4,a4,c5]@5 e4@8 ~@3 g4@5 ~@2 d4@6 ~@2 d4@7 ~@2 [a3,c4,d4,f4,a4,d5]@8 [a3,d4,f4,a4,d5]@5 f4@2 ~ [g3,b4,e5]@7 ~ [g3,d4,e4,g4,b4,d5]@5 g4 ~@2 [g4,a4,c#5,e5]@5 ~@3 e4@5 ~@2 d4@6 [f#4,a4] ~@2 d4@6 f#4 ~ [f#4,a4]@5 ~@4 d4@4 [g4,b4]@3, a3@15 ~ [f3,b3]@13 [g3,a3,c4,e5]@15 ~ [a#3,a#4,e5]@16 ~@2 a3@15 ~ f3@8 ~@8 [b3,d4,e4,g4,d5]@8 b3@7 ~ [g3,a3,c#4]@14 ~@2 f#3@30 ~@3, ~@29 [g4,a4]@11 ~@5 g4@11 ~@5 [a4,c5]@17 ~@39 [g4,a4,c#5,e5]@8 [f#4,a4,d5]@8 ~@17 [f#4,a4]@8 ~@2, ~@37 e4@7 ~@9 e4@8 f4@8 f4@8 ~@34 e4@6 ~@27 d4@9 ~@4 a#4 ~@2]/5", // Dm Esus4 Bm7b5 Am7 Dm7 Dm Em Em7 …
  J: "[~@8 [d4,d5]@5 ~@2 d#4@8 ~ [g4,b4,d#5]@5 ~@16 [g4,b4,c5,e5]@2 [g4,b4,d5,e5]@9 [g4,b4,d5]@5 ~@11 [f4,a4,c5,d5]@5 ~@8 b4@2 ~ [f4,a4,b4,d5]@5 d5@2 ~ e4@8 ~ g4@5 [c5,e5]@2 [g4,a#4,e5]@4 ~@2 [g4,a#4,c5,e5] ~ e4@6 [f4,a4] ~, [g3,b3]@29 ~@3 g3@30 ~@2 a3@16 b3@13 ~@3 g3@30 ~@2, d4@8 ~@15 d#4@6 ~@2 e4@30 [f4,a4,d5]@11 ~@5 [a4,b4,e5]@8 ~@8 [c5,e5]@17 ~@2 a#3@14 ~@2, ~@5 g4@8 [g4,b4,d#5]@11 ~@5 [g4,b4,c5,e5]@16 ~@2 d4@14 ~@32 [g4,b4]@11 [e4,b4]@14 ~@10]/4", // D Gaug Cmaj7 Em7 G Dm7 Bm7b5 C …
  K: "[~@6 [a4,c5,d5] ~@7 [d#4,f4,c5,d#5]@8 ~@2 [f4,g#4,c5,d#5]@5 [e4,g4]@8 ~@5 a4@3 c5@2 [g3,a3,e4,g4,a4,c5,e5]@6 ~@3 [a3,c4,e4,g4,a4,c5,e5]@4 ~ [e4,g4]@9 ~@2 g4@4 ~ e4@8 ~@3 [g4,a#4,e5]@4 ~ d4@8 ~@3 f4@5 f4 ~@2 [f3,b3,f4,b4,d5]@3 ~@5 [g3,b3,d4,f4,g4,b4,d5]@4 ~ [c4,e4]@9 ~@2 e4@5 [d#4,g4]@8 ~@3 g4@8, a3@13 ~@9 d#4@7 [g3,a3,c5,e5]@17 ~@15 [g3,b3,d4,b4,d5,e5]@15 ~ [g3,a#3,c4]@14 ~@2 [a3,a4,c5,d5]@17 ~ [g3,d4]@3 ~@11 [e3,g3,a3,g4,a4,c5]@16 ~@19, ~@6 f4@7 g#4@10 ~@6 a4@11 g4@6 ~@31 [g4,a#4,e5]@11 ~@13 d4@8 ~@25 c4@7 [b3,b4,d#5]@19, ~@37 e4@9 ~@24 e4@6 ~@9 e4@6 ~@2 f4@11 ~@8 g4 ~@36 d#4@11]/5", // D7 F7 Fm7 Em Am7 Em Edim Bdim …
  L: "[[g3,b3,e4,g4,b4,e5]@19 ~@2 [b3,d4,e4,g4,b4,d5,e5] ~@7 [f3,a3,c4,d4,f4,a4,c5,d5]@8 [d4,f4,a4,c5,d5] ~@6 [f3,b3,e4,b4,f5,a#5]@8 ~ [b3,e4,b4,f5,g#5]@7 ~ [g3,b3,c4,e4,b4,d5,e5,g5]@17 ~@7 [g3,a#3,e4,a#4,e5] ~@7 [a3,c4,d4,a4,c5,d5,f5]@7 ~ [d4,f4,a4,d5] f3@2 ~@5 [g#3,d#4,f4,g#4,c5] ~@7 [g#3,c4,d#4,g#4,c5,d#5,g5]@7 [g3,b3,d4,e4,b4,d5,e5,a5]@18 ~@2 [g3,a3,e4,e5,g5,a5]@5 [e5,g5] [c4,e4,c5,a5] ~@9, ~@37 a3@2 ~@46 c4@2 ~@14 c4@2 ~@6 d#5@2 ~@49, ~@102 a3 ~@47 a3@2 ~@8]/5", // Em Em7 Dm7 E Cmaj7 Edim Dm7 Dm …
  M: "[~@5 [d3,f#3,a3,d4,f#4] [b3,a4,b4] ~@6 [f#3,a3,c4,d4,f#4,a4]@8 [b3,d4,f#4,a4,b4] ~@7 [f3,a3,b3,d4,f4,a4,b4]@16 [f3,a3,b3,d4,g4,a4]@2 ~ [a3,d4,g4]@4 ~ [f4,g4] f3@2 ~@5 [f3,b3,e4,f4,a4,b4,e5]@2 ~, ~@45 [f4,d5]@7 ~ [a3,b3,d4,a4,d5]@2 ~@9]/2", // D B7 D7 Bm7 Bm7b5 G7 Dsus4 Fsus2 …
  N: "[~@5 [b3,d4,f4,b4,d5]@2 ~@6 [a4,b4,d#5]@10 [b3,d#4,f4,a4,b4,d#5]@5 ~ [g3,b3,c4,e4,g4,b4,c5,e5]@15 ~ [b3,d4,e4,g4,b4,d5,e5,g5]@7 ~ [c#4,d#4,f#4,a#4,c#5,f#5]@8 [a4,c5,d5,f5]@11 [f4,a4,c5,d5,f5]@5 [f3,b3,e4,f4,a4,b4,e5]@2 ~@14 d#5@2 e5, ~@5 [f3,a4] ~@6 f3@15 ~@58 [f3,b3,d4,f4,a4,b4,d5]@10 ~, ~@12 [b3,d#4,f4]@11 ~@38 [a3,d4]@16 ~@15 [d#4,g#4]@2 ~@2]/3", // Bdim B7 Cmaj7 Em7 D#m7 Dm7 Fmaj7 F …
  O: "[[g3,b3,e4,g4,b4]@5 [b3,c4,e4,g4,b4,c5,e5] ~@15 [g3,c4,e4,g4,a#4,c5,e5] ~@7 [a3,c4,d4,a4,c5,d5,f5]@7 ~ [c4,d4,a4,c5,d5,f5] ~@7 [c4,d4,f4,c5]@9 ~ [b3,d4,f4,b4]@7 ~@2 [g4,a4,c5]@14 g4 ~ [a3,c4,e4,a4,e5]@6 [c4,e4,a4,c5] ~@6 a#4 b4@15 [a4,a#4,d5,e5,a5]@7 ~ [g4,a#4,d5,e5,g5]@8 f4@9 a4@2 [f4,a4]@5 [f3,a3,b3,e4,f4,a4,b4,e5]@2 ~@6 [f3,a3,b3,d4,f4,a4,b4,d5] ~@7 [c4,e4]@9 ~@2 e4@4 ~@15 g4@3 ~@2 [f4,a4,c5]@7 ~ [f3,a3,c4,f4,a4,c5]@7 ~ [d4,f4,a4,c5,d5]@6 [f4,a4,c5,d5] ~ d4@5 ~ g4@2, ~@29 f3@8 a3@2 ~@6 [d3,f3,g#3,g#4]@17 ~ [a3,e4,e5]@15 ~@8 [a3,e5]@2 ~@5 [g3,b3,d4,e4,g4,d5,e5]@16 [a#3,d4,e4]@16 [a3,d4,c5,d5,f5]@16 ~@16 [e3,g3,a3,g4,a4,c5]@15 ~ [g3,a#3,g4,a#4,c5]@16 ~@2 a3@7 ~@10 [f3,a3]@12 ~@4, ~@125 a4@8 ~@33 c4@6 ~ e4@11 e4@5 ~@32 [a#4,d#5]@2 ~, ~@181 c4@8 ~@35]/7", // Em Cmaj7 C7 Dm7 Bdim Am7 Am Asus4 …
  P: "[[d5,e5]@5 ~ [g4,b4,e5] ~@7 g4@7 ~@6 e5@4 ~ [f4,a4,d5,f5]@7 ~ [f4,a4,c5,d5,f5]@6 f4 ~ [e4,f4,a4,b4,e5]@5 ~ [f4,a4,b4,d5] ~ d4@5 ~@3 [g3,a3]@5 ~ [g4,a4,c5,e5] ~ [g3,a3,c4,e4]@6 ~@2 [g3,a#3,e4,g4,a#4]@6 [g4,a#4,c5,e5] ~ [a#3,e4]@6 [f4,a4]@6 ~ [f4,a4,c5] ~ [a3,c4,d4]@6 ~@3 [a3,f4,a4,d5]@6 ~@2 [a4,c5,d5]@3 ~@2 [a#4,d#5]@2 ~ [b4,d5]@5 g4 ~@2 e4@5 [g4,a4,c#5,e5] ~@2 e4@5 [g4,c#5,f#5] ~ [a3,e4,g4,c#5,f5]@6 e5 ~ d#4 d4@5 [a4,c5,d5,f#5] ~ f#4@6 a4 ~@2 [a3,d4,a4,d5,f#5]@5 [a4,c5,d5] ~@2 f#4@5 c#5@2 ~ d5@2 ~ g4 ~@2 g5 ~ [d5,g5]@3 g4 ~ [c#5,g5]@2 ~ [d5,g5]@3 g4@2 c#5 g5 ~ [g3,b3,d4,d5,g5]@3 g4@2 [a#4,e5,f5]@2 ~, g3@30 ~ a3@7 ~@10 b3@13 ~@58 [a3,d4]@5 ~@19 a3@6 ~@43 [g3,b3,d4]@6 ~@2 [g3,b3,d4]@5 ~@3 [g3,b3,d4]@5 ~@11, ~@6 d5@2 ~ e4@12 [g4,f5]@9 ~@31 [g4,a4,e5]@8 ~@58 [e4,e5]@8 d4@5 ~@19 [f#4,a4,d5,f#5]@6 ~@10 f#4@6 ~@43, ~@13 c#5@17 ~@151 f#5@2 ~@6 g5@6 ~@2 c#5@2 ~@25, ~@13 f#5@7 ~@4 e4@6 ~@2 d4@15 ~@64 d4@7 ~@2 [c4,f4]@5 ~@99]/7", // Dsus2 Em Dm Dm7 Esus4 Bm7b5 Gsus2 Am7 …
  Q: "[e4@6 ~@2 e4@6 g4 ~ [g3,d4,e4,b4,d5,e5]@3 ~@5 [d#4,f#4,a#4,d#5]@4 ~@4 d4@5 ~@3 d4@4 ~ [f3,b3,e4]@6 ~@2 [f4,a4,b4,d5]@2 ~ [a4,b4]@4 ~ [g3,b3,e4,g4,b4,c5,e5]@9 e4 ~ [b4,d5,e5,a5]@4 ~ [g3,b3,c4,e4,b4,d5] ~@7 [g3,b3,c4,e4,b4,d5,e5] ~@7 [a3,c4,d4,f4,c5,d5,f5,a5]@7 ~ [c4,d4,f4,a5]@2 ~@6 [a3,c4,d#4,f4,c5,d#5,f5,g#5]@8 [f4,c5,d#5,f5,g#5] ~@7 [g3,b3,d4,e4,a4,d5,e5,g5]@16 [g3,c4,e4,a4,d5,e5] ~@2 [e4,d5]@5 [a3,c4,e4,d5,e5,g5]@2 ~@6 [g3,b3,d4,e4,a5]@2 ~, b3@19 ~@26 [f4,a4,b4] ~@7 b3@7 ~@41 [a3,c5,d5,f5] ~@15 [c4,d#4]@2 ~@22 a3@2 [a3,a4,e5]@5 ~@12, [g3,b4,c5,e5]@15 ~@9 [f#3,a#3,c#4]@5 ~@3 [f3,a3]@13 ~@10 d#4@5 ~@89 a4 ~@7 [b4,d5,e5] ~@2, g4@12 ~@4 g4 ~@12 [f4,a4,c5,d5]@8 [f4,a4,c5,d5]@7 ~ e5@2 ~@9 g4 ~@20 [e5,a5]@2 ~@6 a5@2 ~@54 g5@7 ~@12]/5", // Em7 D#m E Bm7b5 Asus2 Cmaj7 Bm7 Cmaj7 …
  R: "[~@5 [g3,b3,d4,e4,b4,d5,e5,a5]@6 ~@2 [a#3,d4,e4,a#4,d5,e5,a5]@11 [a#3,d4,e4,a#4,d5,e5]@7 ~ [c4,d4,c5,d5,g5]@8 [a3,c4,d4,f4,a4,c5,d5,g5]@7 ~ [g3,b3,d4,g4,c5,d5,g5]@3 ~@5 [g3,b3,g4,g#4,c5,d#5]@5 [g3,e4,g4,a4]@11 [c4,e4,g4,a4,c5]@8 [g3,b3,d#4,g4,b4,d#5]@8 [g3,b3,d#4,g4,b4,d#5]@6 ~@2, ~@13 g3@18 [a3,f4,a4]@7 ~@18 d4@3 ~@2 [a3,e5]@19 ~@16]/3", // Em7 A#maj7 Em7b5 Csus2 Dm7 G G#maj7 A7 …
  S: "[[g3,b3,e4,g4,c5,e5]@21 [e4,g4,b4,d5,e5] ~@7 [f3,a3,d4,f4,a4,c5,d5]@16 [f3,g3,b3,d4,g4,b4,d5]@18 ~, ~@21 [b3,d4]@2 ~@41]/2", // Cmaj7 Em7 Dm7 G7 Bm
  T: "[[g3,b3,e4,e5]@14 g4 ~ [a#3,a#4,e5]@6 [a#3,g4,a#4]@2 ~@13 f4@8 [f4,g#4,d#5]@9 ~@2 [f4,g#4,c5,d#5]@5 [e4,g4]@10 ~ g4@5 ~@11 a4@8, ~@16 g4@5 ~@8 [a3,a4]@16 g#3@16 [g3,a3,c4,a4,e5]@16 [e4,a4]@8 e4@11, ~@45 d#4@8 ~ d#4@8 ~@9 e4@6 e5@19, ~@13 [a3,c4]@3]/3", // Em A#dim D# Fm7 Em A Am7 A5 …
  U: "[~@5 [f#3,a3,d4,f#4,a4] ~@15 [f#3,f#4,a4,d5] ~@7 [f3,a3,c4,d4,f4,a4,d5]@15 ~ [a3,d4,a4,d5]@8 [a3,c4,d4,a4,d5]@8 [b3,d4,f4,a4,c5,d5]@15 ~ [b3,f4,a4,d#5]@18 ~, ~@5 [c4,d5]@2 ~@14 [a3,d4]@2 ~@22 f5@16 f3@34 ~, ~@76 d#4@19 ~]/3", // D Dm7 D5 D7 Bm7b5 B7 Csus2 D5
  V: "[[g3,b3,c4,e4,g4,b4,c5,e5]@15 ~ [b3,b4,d5,e5,g5]@2 ~@6 [a#3,f#4,a#4,c#5,d#5,f#5]@4 ~ [d4,f4,a4,d5,f5]@19 [f4,a4,b4,e5]@5 ~ [b4,d5]@7 ~@11 e4@7 ~ [e4,g4,a#4]@8 [e4,g4,a#4]@6 ~@2, ~@16 [g3,e4] ~@31 b3@13 [b3,c4,g4,b4,c5,e5]@18 ~@17, ~@53 [d4,f4,a4]@8 e4@11 ~@24, ~@62 g3@18 [g3,a#3,e5]@13 ~@3]/3", // Cmaj7 Em7 D#m7 Dm Fmaj7 Bm Edim C …
  W: "[~@5 [f3,a3,c4,f4,c5]@2 ~@9 [d3,f#3,f4,g#4,c5]@5 [d4,f4] d3 ~@8 [g3,a3,e4,g4,a4,e5]@14 g4@2 ~ [a3,e4,g4,a4,e5]@7 ~ [c4,g4,a4,c5,e5]@6 [g3,b3,g4,b4,d5,e5]@18 [e4,g4,a#4,c5,e5]@8 [a#3,e4,g4,a#4,c5,e5]@5 [a3,d4,f4,a4,d5]@8 ~ [a3,c5]@9 ~ [b3,e4,f4,a4,b4,e5]@4 ~@4 [b3,d4,f4,a4,b4,d5]@5 ~ [g3,a3,c4,g4]@15 c4@8 ~@8 a#4@3, ~@5 a4 ~@15 [f#3,g#4,c5]@2 ~@25 g3@13 ~@80 [e3,g3,a#3,c5]@19, ~@55 a3@6 ~@40 [c4,d4,f4,a4,d5]@9 ~@15 [e4,a4,c5]@15 ~ [g4,a#4]@14 g4@5, ~@141 e4@11 e4@8, ~@149 c4@10 ~]/5", // F Dm7b5 Dm A7 Am7 Em7 C7 Dm …
  X: "[~@5 f5@2 ~@6 g5@2 ~ a5@5 [a3,d4] [f3,c4] ~ c6@2 ~@3 f#5 ~@7 [e3,g3,b3] ~@7 [g3,f#4]@2 ~ f4@4 ~ [g3,e4]@7 d5@3 ~, [f3,a3,c4]@16 g#5 ~@13 g5@27 ~@3 c#5 ~@3, ~@37 d4@2 ~@6 c#4@17 ~@2]/2", // D5 F5 Em Gmaj7 C F
  Y: "[~@5 [a3,d4] ~@2 e5@4 ~@4 e5@2 ~@3 [f3,b3]@2 ~ g5@3 ~@2 d#5 ~@7 [g3,a#3,e4] ~@7 [g3,a#3,c4]@8 e4 ~@7 [g3,a#3,e4] ~ f5@4 ~@2 [f3,a3,e4] ~ g5@4 ~@3 [f3,a3,c4,d4] ~ g#5 a5@5 [f3,a3,c4,d4] ~ c6@4 ~ a#5 ~@7 [g3,b3]@2 ~@5 [g3,f#4]@2 ~ f4@4 ~@2 e4@2 g5@2 ~@4 e4 ~ f#5, ~@5 c4@2 ~@8 f5@3 ~@3 [a3,e4] ~@8 e5@25 ~@39 b5@25 ~@9, ~@37 [a3,c4]@2 ~@6 e4@6 ~@18 c4@2 ~@30 [d4,e4] ~@6 c#4@17 ~@3, ~@111 g3@14 ~@3]/4", // D5 Fdim Edim C7 Edim Fmaj7 Dm7 G …
  Z: "[~@5 [a3,f#4] [c4,d4] g5@5 ~@2 f#4 ~ a5@5 ~ b5@2 ~@5 f#5 ~@7 [g3,b3,d4] ~@7 d#4@8 d#4@8 [g3,c4,e4,g4,a4,c5,e5]@18 ~ [g3,b3,d4,e4,g4,d5]@4 ~@5 [g3,g4]@4 [f3,a3,d4,a4,d5]@7 ~ [a3,c4,d4,a4,d5,f5]@3 ~@5 [f3,b3,e4,f4,a4,b4,e5]@7 ~@2 [f3,b3]@7 ~@11 [a3,e4,g4,a4,e5]@6 ~@2 [a#3,e4,g4,a#4,e5]@8 [g3,a#3,c4,g4,a#4,e5]@7 ~, ~@16 g#5 ~@12 g5@32 ~@65 g3@17 ~@17, ~@45 [g3,b3]@16 ~@27 [b3,d4,e4,d5]@5 ~@24 [d4,f4,a4,b4,d5]@8 [a3,c4,e4,g4,a4,e5]@11 ~@24]/5", // D Csus2 G Am7 Em7 G Dm Dm7 …
  AA: "[a3,a4,d5]@8 [a3,d4,a4]@7 ~ [g#3,d#4,f4,g#4,d#5]@8 [g#3,d#4,g#4,c5,d#5]@7 ~", // D5 Fm7 G#
  AB: "[[g3,a3,e4,g4,a4,c5,e5]@7 ~ [a3,e4,g4,a4,c5,e5]@7 ~ [a3,e4,g4,c5,e5]@7 ~ [c4,e4,g4,a4,c5,e5]@4 ~ [b3,d4,e4,g4,b4,d5,e5]@16 [g3,a#3,e4,g4,a#4,c5,e5]@17 ~@2 [c5,d5]@17 ~@15 [d4,d5]@17 ~@56 d6@48 ~@7, ~@62 f4@19 ~@33 g4@15 [d6,g6]@4 e6@30 c6@54 ~@7, ~@63 [a3,a4]@18 [b3,f4,a4,b4,e5]@33 [g3,a3]@35 c7@64 ~@11, ~@115 [a4,c5]@22 c6@5 g6@64 ~@18, ~@124 c4@32 d7@61 ~@7]/7", // Am7 Em7 C7 Csus2 D G5 A Esus4 …
})).s("gm_epiano2").gain(0.14).pan(0.3)

// chords · epiano2 · soft notes
const epiano2_soft_2 = note(`<
  ~@3 A@4 ~@2 B C ~@3 D ~ E@2 F ~ G H ~ I J K L@2 M N@2 O@3 P@3 Q@2 R S T U@2 V W@2 ~ X@2 Y Z@2 AA@2 AB AC AD AE@4 AF ~
  AG AH@2 AI AJ AK AL@2 AM@2 AN@3 AO@2 AP AQ@2 AR AS AT@4 ~ AU T AV ~@2 AW ~ AX@3 AY AZ@6 ~
// … 78 more lines

More by Bilk