Strudelify

The Gang That Sang "Heart of My Heart"

The Four Aces

KeyE majorTempo132 bpm
0:00/0:00
// The Gang That Sang "Heart of My Heart" — The Four Aces
// 132 bpm, 4/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 74 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(132/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 C D E F G H I J K L M N O P Q R S T U F V H W X Y Z AA AB AC P AD AE AF AG E F V H AH AI U F M AJ AK P AL P AM ~ U
  F G H W AN Y Z AA AB AC P AO AP AQ AR AS AT AU@4
>`.pickRestart({
  A: "a2@4 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~ f#2@4 [f#3,a3,c#4,e4] ~ a2@4 [f#3,a3,c#4,e4] ~, ~ c#3 ~@2", // A F#m7
  B: "b2@4 [f#3,a3,b3,d4] ~ f#3@4 [a3,b3,d4] ~@5 [g#3,b3,d4,e4] ~ b2@4 [g#3,b3,d4,e4] ~, ~@2 e3 ~", // Bm7 E7
  C: "~@4 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~ f#2@4 [f#3,a3,c#4,e4] ~ a2@4 [f#3,a3,c#4,e4] ~, a2 c#3 ~@2", // A F#m7
  D: "b2@4 [f#3,a3,b3,d4] ~ f#3@4 [a3,b3,d4] ~@5 [g#3,b3,e4] ~ b2@4 [g#3,b3,e4] ~, ~@2 e3 ~", // Bm7 E
  E: "~@4 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~, a2 b2 c#3 e3", // A
  F: "~@4 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~, a2 g#2 f#2 e2", // A
  G: "~@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~ b2@4 [g#3,b3,e4] ~, b2 e2 g#2 ~", // E
  H: "~@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~ e2@4 [g#3,b3,e4] ~, b2 g#2 f#2 ~", // E
  I: "~@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~, e2 g#2 b2 g#2", // E
  J: "e2@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~, ~ e2 f#2 g#2", // E
  K: "~@4 [a3,c#4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~, a2 c#3 e3 c#3", // A
  L: "~@4 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~ e2@4 [a3,c#4,e4] ~, a2 g#2 f#2 ~", // A
  M: "~@4 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~, f#2 a#2 c#3 a#2", // F#7
  N: "~@4 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~ c#2@4 [f#3,a#3,c#4,e4] ~, f#2 e2 d2 ~", // F#7
  O: "~@4 [a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~@5 [a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~, b2 d#3 f#3 d#3", // B7
  P: "~@4 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~, b2 a2 g#2 f#2", // B7
  Q: "~@4 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~ f#3@4 [a3,b3,d#4] ~, b2 c#3 d#3 ~", // B7
  R: "~@4 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~ f#2@4 [f#3,a3,b3,d#4] ~, b2 a2 g#2 ~", // B7
  S: "~@4 [g#3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~ g#2@4 [g#3,b3,e4] ~, e2 a#2 b2 ~", // C#m E
  T: "~@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~ g#2@4 [g#3,b3,e4] ~, g#2 b2 e3 ~", // E
  U: "~@4 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~, a2 c#3 e3 c#3", // A
  V: "~@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~ b2@4 [g#3,b3,e4] ~, b2@6 e2@6 g#2@7 ~@5", // E
  W: "~@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~, e2 g#2 f#2 g#2", // E
  X: "~@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,f4] ~@5 [g#3,b3,f4] ~, e2 g#2 b2 d3", // E Fdim
  Y: "~@4 [g#3,b3,c#4,f4] ~@5 [g#3,b3,c#4,f4] ~@5 [g#3,b3,c#4,f4] ~@5 [g#3,b3,c#4,f4] ~, c#3 b2 a#2 g#2", // C#7
  Z: "~@4 [g#3,b3,c#4,f4] ~@5 [g#3,b3,c#4,f4] ~@5 [g#3,b3,c#4,f4] ~@5 [g#3,b3,c#4,f4] ~, c#2 f2 g#2 c#3", // C#7
  AA: "~@4 [a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~, f#3 e3 d#3 c#3", // A#dim F#7
  AB: "~@4 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~, f#2 g#2 a#2 f#2", // F#7
  AC: "~@4 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~, b2 c#3 d#3 c#3", // B7
  AD: "b2@4 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~ d#3@4 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~, ~@6 b2@7 ~@5 d#3@6", // B7
  AE: "~@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~ d3@4 [g#3,b3,e4] ~ b2@4 [g#3,b3,e4] ~, f#3 e3 ~@2", // E
  AF: "~@4 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~, a2 c#3 f#3 e3", // A
  AG: "~@4 [a3,b3,d4] ~@5 [a3,b3,d4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~, b2 f#2 e2 g#2", // Bm7 E
  AH: "~@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~, e2 g#2 b2 e2", // E
  AI: "~@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~, e2 e3 d3 b2", // E
  AJ: "~@4 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~, f#2 e2 d2 c#2", // F#7
  AK: "~@4 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~@5 [a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~, b2 d#3 f#3 d#3", // B7
  AL: "~@4 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~ f#3@4 [f#3,a3,b3,d#4] ~, b2@6 c#3@6 d#3@7 ~@5", // B7
  AM: "[g#3,b3,e4] ~@23, e2 ~@5", AN: "~@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~, e2 g#2 b2 d3",
  AO: "b2@4 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~ d#3@4 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~, ~ b2 ~ d#3", // B7
  AP: "~@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~, f#3 e3 d3 b2", // E
  AQ: "~@4 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~, a2 c#3 e3 f3", // A
  AR: "~@4 [a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~@5 [f#3,a#3,c#4,e4] ~, f#3 e3 d3 c#3", // A#dim F#7
  AS: "~@4 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~@5 [f#3,a3,b3,d#4] ~ d#3@4 [f#3,a3,b3,d#4] ~, b2 a#2 b2 ~", // B7
  AT: "~@4 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~@5 [g#3,b3,e4] ~, f#3 e3 c#3 b2", // E
  AU: "[~@4 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~@5 [a3,c#4,e4] ~ e2@4 [a3,c#4,e4]@6 ~@6 [a3,c#4,e4]@10 ~@2 [a3,c#4,e4]@27 ~@23, a2@6 g#2@6 f#2@7 ~@3 a2@4 ~@70]/4", // A
})).s("gm_piano").gain(0.38).pan(0.6)

// bass · acoustic bass · "ACOU BASS"
const bass = note(`<
  A B C D E F G H I J K L M N O P Q R S T K U V W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL H AM AN K AK M AO O AE Q AP
  AQ ~ K U V AR X AS AT AU AV AW AX AY AZ BA BB BC BD BE BF@3 ~
>`.pickRestart({
  A: "a2@6 g#2@6 f#2@5 ~ c#2@6", B: "b2@6 f#2@5 ~ e2@6 g#2@6", C: "a2 g#2 f#2 c#2", D: "b2 f#2 e2 g#2",
  E: "a2 b2 c#3 e3", F: "a2@6 g#2@6 f#2@5 ~ e2@6", G: "b2@6 e2@6 g#2@6 b2@5 ~", H: "b2@3 g#2@3 f#2@3 e2@2 ~",
  I: "e2@5 ~ g#2@6 b2@6 g#2@6", J: "e2@6 e3@5 ~ d3@6 b2@6", K: "a2 c#3 e3 c#3", L: "a2@2 g#2@2 f#2@2 e2 ~",
  M: "f#2 a#2 c#3 a#2", N: "f#2@6 e2@6 d2@6 c#2@5 ~", O: "b2 d#2 f#2 a2", P: "b2@6 a2@6 g#2@6 f#2@5 ~",
  Q: "b2@6 c#3@6 d#3@6 f#3@5 ~", R: "b2@3 c#3@3 d#3@3 b2@2 ~", S: "e2@6 a#2@6 b2@6 g#2@5 ~",
  T: "g#2@6 b2@6 e3@6 e2@5 ~", U: "a2 g#2 f#2 e2", V: "b2@3 e2@3 g#2@3 b2@2 ~", W: "b2@2 g#2@2 f#2@2 e2 ~",
  X: "e2 g#2 f#2 g#2", Y: "e2@6 g#2@6 b2@6 d3@5 ~", Z: "c#3 b2 a#2 g#2", AA: "c#2 f2 g#2 c#3",
  AB: "f#3@6 e3@6 d#3@6 c#3@5 ~", AC: "f#2 g#2 a#2 f#2", AD: "b2 c#3 d#3 c#3", AE: "b2 a2 g#2 f#2",
  AF: "b2@5 ~ b2@5 ~ b2@6 d#3@6", AG: "f#3@5 ~ e3@6 d3@6 b2@6", AH: "a2 c#3 f#3 e3", AI: "b2@3 f#2@3 e2@3 g#2@2 ~",
  AJ: "a2@6 b2@6 c#3@6 e3@5 ~", AK: "a2@6 g#2@6 f#2@6 e2@5 ~", AL: "b2@5 ~ e2@6 g#2@6 b2@5 ~",
  AM: "e2@3 g#2@3 b2@3 e2@2 ~", AN: "e2 e3 d3 b2", AO: "f#2 e2 d2 c#2", AP: "b2 c#3 d#3 b2", AQ: "e2 ~@5",
  AR: "b2@6 g#2@6 f#2@6 e2@5 ~", AS: "e2 g#2 b2 d3", AT: "c#3@6 b2@6 a#2@6 g#2@5 ~", AU: "c#2@3 f2@3 g#2@3 c#3@2 ~",
  AV: "f#3 e3 d#3 c#3", AW: "f#3@2 g#3@2 a#3@2 f#3 ~", AX: "b2@6 c#3@6 d#3@6 c#3@5 ~", AY: "b2@2 a2@2 g#2@2 f#2 ~",
  AZ: "b2@3 ~@3 b2@5 ~ b2@6 d#3@6", BA: "f#3@3 e3@3 d3@3 b2@2 ~", BB: "a2 c#3 e3 f3", BC: "f#3 e3 d3 c#3",
  BD: "b2 a#2 b2 d#3", BE: "f#3 e3 c#3 b2",
  BF: "[a2@5 ~ g#2@6 f#2@6 e2@4 a2@4 ~@2 b2@2 c#3@4 b2@2 a2@4 f#2@2 e2@4 a1@18 ~@8]/3",
})).s("gm_acoustic_bass").gain(0.44)

// chords · banjo
const banjo = note(`<
  A B C D E F G H I@2 J@2 K L M@4 N O P Q R S T@2 U@2 V@2 W@3 X Y Z AA@2 AB AC AD@2 AE AF AG@2 AH AI AJ AK AL ~ AM@2 AN
  AO AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD@4
>`.pickRestart({
  A: "~@4 [e4,a4]@2 e4@4 [a4,c#5] ~@5 [f#4,a4]@2 [f#4,a4]@4 [a4,c#5] ~, ~@4 c#4@7 ~@5 c#4@7 ~, ~@4 c#5 ~ a4@3 ~@15, ~@6 e5 ~@9 c#5 ~ c#5 ~@5", // A5 A F#m A
  B: "c#5 b4 [f#4,b4]@2 [d4,f#4,b4]@2 b4@2 b4@2 [f#4,c#5] ~ [e4,g#4]@2 [e4,g#4,c#5] ~ [e4,g#4]@2 g#4@2 g#4@2 g#4@2, [d4,f#4]@2 c#5 ~ c#5 ~ [d4,f#4]@4 ~@2 b3@6 [b3,e4]@5 ~, ~@6 c#5 ~ c#5 ~ b4@2 c#5 ~@3 c#5 ~ c#5 ~ c#5 ~ c#5 ~", // B5 Bm F#5 E C#m E D E5
  C: "~@3 c#5 [c#4,e4]@2 [c#4,e4]@4 [e4,a4,c#5] ~@5 [c#4,f#4,a4]@2 [c#4,f#4]@4 [f#4,a4,c#5] ~, ~@3 a4@2 ~ a4@3 ~@9 a4@3 ~@3, ~@6 c#5 ~@9 c#5 ~ c#5 ~@5", // C#m A F#m F#5 F#m
  D: "c#5 [f#4,b4] [f#4,c#5] ~ [d4,f#4,b4]@2 [f#4,c#5] b4 [f#4,b4]@2 [f#4,b4]@2 c#5 g#4 c#5 ~ g#4@2 [e4,c#5] ~ g#4@2 g#4@2, d4@2 b4@2 c#5 ~@2 d4@5 [b3,e4]@2 ~ b3@8 ~, ~@8 c#5 ~ c#5 ~@3 g#4@2 c#5 ~@3 c#5 ~ c#5 ~, ~@15 e4@3 g#4@2 e4@4", // B5 F#5 Bm F#5 B5 C#m E5
  E: "[e4,a4]@2 [e4,a4] [e4,a4]@2 [e4,a4] a4@2 a4 a4@2 a4, c#4!2, ~@4 a3@13 ~ [a3,e4]@6, ~@2 e4 ~", // A5
  F: "[e4,a4]@2 [e4,a4] [e4,a4]@2 [e4,a4]@3 [e4,a4] [e4,a4]@2 ~, a3@11 ~, c#4@3 c#4@8 ~", // A5
  G: "[d4,f#4,b4]@4 [g#3,d4,f#4,b4]@2 [f#4,b4]@4 b4@2 b4@3 ~ [f#4,b4]@2 [f#4,b4]@4 [d4,f#4,b4]@2, ~ [g#3,d4] g#3@2, ~@5 f#4@3 ~@4, ~@6 d4@5 ~", // Bm G#m7b5 B5 Bm G#dim
  H: "[f#4,b4]@2 [f#4,b4] [d4,f#4,b4]@2 [f#4,b4] b4@2 b4 b4@2 [d4,f#4,b4], g#3!2, d4@3 ~@2 d4@6 ~, ~@6 f#4@5 ~", // B5 Bm B5 Bm
  I: "[[f#4,b4]@2 [f#4,b4] b4@2 b4 [d4,f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [d4,f#4,b4] [d4,f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [f#4,b4] [d4,f#4,b4]@2 f#4, [g#3,d4]@6 g#3@22 g#3@17 ~@3, ~@3 [d4,f#4]@3 ~@2 d4@3 ~@3 d4@4 d4@3 ~@3]/2", // B5 Bm B5 Bm B5 Bm G#dim D
  J: "[[e4,a4]@3 ~ [e4,a4]@2 [e4,a4]@4 [e4,a4]@2 [e4,a4]@4 [e4,a4]@2 [c#4,e4,a4]@4 [e4,a4]@2 [e4,a4]@4 [e4,a4]@2 a4@4 a4@2 [e4,a4]@4 [e4,a4]@2 [a3,c#4,e4,a4]@3 ~ c#4 ~, c#4 [a3,c#4] a3@3 a3@2 ~, ~@6 c#4@3 ~@2 c#4@3 ~ [c#4,e4]@3 c#4@3 ~@3]/2", // A5 A A5 A C#m
  K: "[c#4,f#4,a#4]@4 [c#4,f#4,a#4]@2 [c#4,f#4,a#4]@4 [f#4,a#4]@2 [f#4,a#4]@4 [f#4,a#4]@2 a#4@3 ~ a#4@2, a#3!2 a#3@2, ~@2 c#4 [c#4,f#4]", // F# F#5
  L: "[c#4,f#4,a#4]@4 [c#4,f#4,a#4]@2 [c#4,f#4,a#4]@4 [c#4,f#4,a#4]@2 [f#4,a#4]@4 [f#4,a#4]@2 [a#3,c#4,f#4,a#4]@3 ~ [a#3,c#4,f#4] ~, a#3 a#3@2 ~, ~@2 c#4 ~", // F#
  M: "[a4@3 ~ a4@2 [f#4,a4]@4 [f#4,a4]@2 [f#4,a4]@4 [f#4,a4]@2 [f#4,a4]@4 [f#4,a4]@2 [f#4,a4]@4 [f#4,a4]@2 [d#4,f#4,a4]@4 [d#4,f#4,a4]@2 [f#4,a4]@4 [f#4,a4]@2 [f#4,a4]@4 f#4@2 b4@3 ~ b4@2 [f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [d#4,b4]@4 b4 ~ [f#4,a4]@4 [f#4,a4]@2 [f#4,a4]@4 [f#4,a4]@2 [f#4,a4]@4 [f#4,a4]@2 [d#4,f#4,a4]@3 ~ d#4@2, b3@35 ~ b3@57 ~@3, [d#4,f#4] d#4!2 d#4@2 ~ d#4!2 [d#4,f#4] d#4!2 f#4 d#4!3 ~, ~@46 a4 ~@49]/4", // F#m D#dim F#m B5 G#m F#m D#dim D#m
  N: "g#4@3 ~ g#4@2 [e4,g#4]@4 [e4,g#4]@2 [e4,g#4]@4 [e4,g#4]@2 [b3,e4,g#4]@3 ~ [b3,e4] ~, [g#3,e4]@2 g#3@2 g#3@3 ~, ~@2 b3@4 b3@3 ~@3", // E E5 C#m
  O: "[f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [d4,f#4,b4] [d4,f#4,b4]@2 [d4,f#4], [g#3,d4]@6 [g#3,d4]@10 g#3@5 ~@3", // B5 Bm D G#dim
  P: "[e4,a4]@2 [e4,a4] [e4,a4]@2 [e4,a4] [e4,a4]@2 [e4,a4] [e4,a4]@2 [e4,a4], a3@3 [a3,c#4], c#4!3 ~", // A5 A
  Q: "[e4,a4]@4 [e4,a4]@2 a4@4 a4@2 [e4,a4]@4 [e4,a4]@2 [a3,c#4,e4,a4]@4 e4 ~, [a3,c#4] a3@2 ~, ~ [c#4,e4] ~@2", // A5 A C#m
  R: "b4@3 ~ b4@2 [f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 b4@3 ~ b4@2, [g#3,d4,f#4] g#3@3, ~ d4!2 [d4,f#4]", // B5 G#m7b5 D
  S: "[f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [d4,f#4,b4] [d4,f#4,b4]@2 [d4,f#4,b4] [g#3,d4]@2 [f#4,b4], g#3@16 g#3 ~@7, d4@10 ~@8 [f#4,b4]@3 ~ d4 ~", // B5 Bm G#dim B5
  T: "[b4@4 b4@2 [d4,f#4,b4]@4 [d4,f#4,b4]@2 [d4,f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [f4,b4]@4 [f4,b4]@2 [g#3,d4,f4,b4]@3 ~@3, [g#3,d4,f#4] g#3 g#3@3 [g#3,d4]!2 ~, ~@8 d4@4 d4@3 ~@9]/2", // Bm B5 Fdim G#dim G#m7b5 G#dim
  U: "[f4 ~ f4@2 [f4,b4]@2 [c#4,f4,b4]@4 [f4,b4]@2 [f4,b4]@4 [f4,b4]@2 [f4,b4]@4 [f4,b4]@2 [f4,b4]@4 [c#4,f4,b4]@2 [f4,b4]@4 [f4,b4]@2 [f4,b4]@4 [f4,b4]@2 [c#4,f4,b4]@3 ~ [c#4,f4] ~, g#3@17 ~ g#3@6 g#3@22 ~@2, [c#4,b4]@2 ~@3 c#4@4 c#4@5 ~ c#4@3 c#4@3 ~@3]/2", // Fdim C#7 Fdim C#7 Fdim C#7 C# C#7
  V: "[[f#4,a#4]@3 ~ [f#4,a#4]@2 a#4@3 ~ a#4@2 [f#4,a#4]@4 [f#4,a#4]@2 [f#4,a#4]@4 [f#4,a#4]@2 a#4@3 ~ a#4@2 [f#4,a#4]@4 [f#4,a#4]@2 [f#4,a#4]@4 [f#4,a#4]@2 [c#4,f#4,a#4]@3 ~ [c#4,f#4] ~, a#3@10 a#3@5 ~, ~@4 c#4 ~ c#4@12 c#4@6 [c#4,f#4]@6 c#4@6 c#4@6 ~@6, ~ f#4 ~@6]/2", // F# F#5
  W: "[b4@4 b4@2 b4@3 ~ [f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [d#4,f#4,b4]@4 [d#4,f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [d#4,f#4,b4]@4 [d#4,f#4,b4]@6 [d#4,f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [d#4,f#4,b4]@4 [f#4,b4]@6 [f#4,b4]@2 [f#4,b4]@3 ~ [b3,f#4] ~, b3@6 b3@17 ~, f#4@5 ~@31, d#4@6 d#4@6 d#4@6 ~@6 d#4@6 ~@12 d#4@6 d#4@6 ~@4 d#4@2 ~@4 d#4@5 ~@3]/3", // B5 B B5 B B5 B B5
  X: "[d4,f#4]@4 [f#4,b4]@2 [d4,f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [g#3,d4,f#4,b4]@3 ~ [d4,f#4]@2, g#3@3 ~, b4@3 ~@7 d4@8 ~@6", // D B5 Bm B5 G#m7b5 D
  Y: "[c#4,e4,a4]@2 [e4,a4] [c#4,e4,a4]@2 [c#4,e4,a4]@3 [e4,a4] [e4,a4]@2 e4, a3@21 ~ a4 ~, ~@16 c#4@7 ~", // A A5 A A5
  Z: "b4@3 ~ b4@2 [d4,f#4,b4]@4 ~@2 [e4,g#4]@4 [e4,g#4]@2 [b3,e4,g#4]@4 g#4 ~, [d4,f#4] ~ b3 ~", // Bm E D
  AA: "[a4@3 ~ a4@2 [c#4,e4,a4]@4 c#4@2 ~@4 [e4,a4]@2 [e4,a4]@4 [e4,a4]@2 [e4,a4]@4 [e4,a4]@2 [c#4,e4,a4]@4 [c#4,e4,a4]@2 [c#4,e4,a4]@4 [c#4,e4,a4]@2 [a3,c#4,e4,a4]@4 a4 ~, a3@8 a3@7 a3@6 ~@3, [c#4,e4]@3 ~@2 [e4,a4]@3 ~@16, ~@2 c#4!2 c#4 ~@3]/2", // A A5 A C#m A5
  AB: "g#3 ~@3 [e4,g#4]@2 [g#3,b3,e4,g#4]@4 [b3,e4,g#4]@6 [e4,g#4]@2 [e4,g#4]@4 b3 ~, b3@6 ~@10 b3@5 ~@3, [e4,g#4] ~@5, ~@2 g#3@4 ~@4 g#3@11 ~@3", // E
  AC: "[d4,f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [d4,f#4,b4] [f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [f#4,b4], g#3@11 ~ g#3@12, ~@2 d4@3 ~ d4@3 d4@3", // Bm B5 Bm B5
  AD: "[[f#4,b4]@4 [f#4,b4]@2 [g#3,d4,f#4,b4]@4 [g#3,d4,f#4,b4]@6 [d4,f#4,b4]@2 [d4,f#4,b4]@4 [d4,f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@4 [d4,f#4,b4]@2 [d4,f#4,b4]@3 ~ [g#3,d4,f#4]@2, [g#3,d4]@2 ~@4 g#3@9 ~, ~@12 d4@3 d4@5 ~@4]/2", // B5 G#m7b5 Bm B5 Bm G#m7b5 G#dim
  AE: "a4@2 a4 [c#4,e4,a4]@2 [e4,a4]@3 [e4,a4] [e4,a4]@2 [e4,a4], [c#4,e4]@3 ~@2 c#4@7, ~ a3@5", // A A5 C#m
  AF: "[c#4,e4,a4]@4 [c#4,e4,a4]@2 [c#4,e4,a4]@4 a4@2 a4@4 [c#4,e4,a4]@2 [c#4,e4,a4]@3 ~ c#4 ~, a3@2 a3@5 ~, ~@5 [c#4,e4]@3 ~@4", // A C#m
  AG: "[[c#4,f#4,a#4]@4 [f#4,a#4]@2 [f#4,a#4]@4 a#4@2 a#4@3 ~ [c#4,f#4,a#4]@2 [f#4,a#4]@4 [f#4,a#4]@2 [f#4,a#4]@4 [f#4,a#4]@2 [f#4,a#4]@4 [f#4,a#4]@2 [f#4,a#4]@4 [c#4,f#4,a#4]@2 [c#4,f#4,a#4]@4 [c#4,f#4] ~, a#3@15 a#3@8 ~, a#2 ~@3 c#4@6 [c#4,f#4]@6 ~@2 c#4@6 c#4@6 c#4@10 ~@8]/2", // F# F#5
  AH: "[b3,d#4]@2 [d#4,f#4,a4] [d#4,f#4,a4]@2 [d#4,f#4] [d#4,f#4]@2 [d#4,f#4,a4] [f#4,a4]@2 [f#4,a4], [f#4,a4] ~ b3@6, ~@5 a4@3 ~ d#4@3", // B D#dim D#m D#dim F#m
  AI: "[f#4,a4]@2 [f#4,a4] [d#4,f#4,a4]@2 [f#4,a4] [f#4,a4]@2 [f#4,a4] [f#4,a4]@2 [f#4,a4], b3, d#4@6 ~@4 d#4 ~ d#4@6 d#4@6", // F#m D#dim F#m
  AJ: "[d#4,a4]@2 a4 [d#4,f#4,a4]@2 [d#4,f#4,a4]@3 [d#4,f#4,a4] [f#4,a4]@2 [f#4,a4], b3@17 ~ [b3,d#4]@6, f#4 ~@3, a#2 ~@23", // D#dim F#m B
  AK: "[f#4,a4]@4 [f#4,a4]@2 [f#4,a4]@4 [f#4,a4]@2 [f#4,a4]@4 [d#4,f#4,a4]@2 [d#4,f#4,a4]@3 ~ d#4 ~, b3@7 ~, d#4@3 d#4@5 ~@4", // F#m D#dim
  AL: "[g#3,d4,f#4,b4] ~@7", // G#m7b5
  AM: "[a4@2 a4 [e4,a4]@2 a4 a4@2 ~ [c#4,e4,a4]@2 [c#4,e4,a4] [e4,a4]@2 [e4,a4] [c#4,e4,a4]@2 [e4,a4]@3 [e4,a4] [c#4,e4,a4]@2 ~, a3@17 a3@28 ~@3, [c#4,e4]@3 c#4@5 [c#4,e4,a4] ~@3 c#4@3 ~@2 c#4@4 ~@3, ~@5 e4@3 ~@16]/2", // A5 A A5 A A5 A C#m A
  AN: "[f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [g#3,f#4,b4], d4@2 d4!2, ~@4 g#3@7 ~ g#3@10 ~@2", // B5 G#m7
  AO: "[f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [f#4,b4] [d4,f#4,b4]@2 [d4,f#4,b4], g#3, d4 d4@2 ~", // B5 Bm
  AP: "[f#4,b4]@4 [f#4,b4]@2 [d4,f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@4 [d4,f#4,b4]@2 b4@3 ~ b4@2, [g#3,d4] g#3@2 [g#3,d4,f#4], ~@5 d4@3 ~@4", // B5 Bm B5 Bm G#dim G#m7b5
  AQ: "[d4,f#4,b4]@4 [f#4,b4]@2 [d4,f#4,b4]@4 [d4,f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [d4,f#4,b4]@3 ~ f#4 ~, g#3@4 g#3@3 ~, ~@2 d4 ~", // Bm B5 Bm B5 Bm
  AR: "[f4,g#4]@3 ~ [f4,g#4]@2 [f4,g#4]@4 [f4,g#4]@2 [f4,g#4]@4 [f4,g#4]@2 [g#3,f4,g#4]@3 ~@3, [g#3,b3]@2 b3@5 ~, ~ g#3@2 ~", // Fm C# G#m
  AS: "b4@3 ~ b4@2 [f4,b4]@4 [f4,b4]@2 [f4,b4]@4 [f4,b4]@2 [c#4,f4,b4]@4 c#4 ~, g#3@11 ~, [c#4,f4] c#4!2 ~", // Fdim C#7 C#
  AT: "[f#4,a#4]@4 [f#4,a#4]@2 [f#4,a#4]@4 [f#4,a#4]@2 [f#4,a#4]@4 [f#4,a#4]@2 a#4@3 ~ a#4@2, [a#3,c#4] a#3@3, ~ c#4@2 [c#4,f#4]", // F# A#m F#5
  AU: "a#4@2 a#4 [c#4,f#4,a#4]@2 [c#4,f#4,a#4] [f#4,a#4]@2 [f#4,a#4] [c#4,f#4,a#4]@2 a#4, a#3, [c#4,f#4]@6 ~@6 c#4@6 ~@4 f#4 ~", // F# F#5
  AV: "[f#4,b4]@4 [f#4,b4]@2 [d#4,f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 b4@3 ~ b4@2, b3@2 [b3,d#4] [b3,d#4,f#4], d#4 ~@3", // B5 B B5 B
  AW: "[f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [f#4,b4] [f#4,b4]@2 [f#4,b4] [d#4,f#4,b4]@2 [d#4,f#4,b4], b3, d#4!3 ~", // B5 B
  AX: "[f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@3 ~ [f#4,b4]@2 [d#4,f#4]@4 b4 e4, b3@11 ~, d#4@2 d#4@2 d#4@2 b4 ~", // B5 D#m
  AY: "[e4,g#4]@4 [g#4,b4]@2 [e4,g#4,b4]@4 [e4,g#4,b4]@2 [e4,g#4,b4]@4 [g#4,b4]@2 [g#4,b4]@3 ~ b3 ~, b3@7 ~, ~@16 e4@5 ~@3", // E G#m E G#m
  AZ: "[e4,a4]@4 [e4,a4]@2 [e4,a4]@4 a4@2 a4@4 [c#4,e4,a4]@2 [c#4,e4,a4]@4 a4 [a#3,a#4], a3@23 ~, c#4@3 c#4@5 ~@4, ~@5 e4@3 ~@4", // A5 A A#
  BA: "a#4@3 ~ a#4@2 [f#4,a#4]@4 [f#4,a#4]@2 [f#4,a#4]@4 [f#4,a#4]@2 [c#4,f#4,a#4]@4 ~@2, a#3@11 ~, c#4@17 ~@7, f#4 ~@3", // F#
  BB: "[f#4,b4]@4 [f#4,b4]@2 [b3,f#4,b4]@4 [f#4,b4]@2 [f#4,b4]@4 [f#4,b4]@2 [b3,d#4,f#4,b4]@3 ~ [d#4,f#4] ~, d#4!3 ~, ~@4 b3 ~@5 b3@8 ~@6", // B5 B D#m
  BC: "g#4@4 g#4@2 [b3,e4,g#4]@4 e4 ~ [d4,b4]@4 b4@2 [d4,f#4,b4]@4 f4@2, g#3@11 ~ g#3@9 ~@3, [b3,e4] ~ f#4 ~", // E G Bm E5
  BD: "[[e4,a4]@2 [e4,a4] [c#4,a4]@2 [c#4,a4] a4@2 [e4,a4] [c#4,a4]@2 [c#4,a4]@12 [c#4,e4,a4]@16 ~@9, a3@3 a3@10 ~@3, c#4@6 e4@9 ~@3 e4@28 ~@50, ~@2 c#4 ~@13]/4", // A5 F#m A5 F#m A
})).s("gm_banjo").gain(0.27).pan(0.8)

// chords · epiano1 · "E.PIANO 1"
const epiano1 = note(`<
  ~@4 A B@3 C D@3 ~@5 E F G@5 H I@3 ~@4 J@3 ~ A B@3 C D@3 ~@6 K L@2 M@3 N ~@7 O P@2 ~ O Q@4 ~
>`.pickRestart({
  A: "[c#4,e4] ~ [c#4,e4,a4]@2, a4 ~@2", // C#m A
  B: "[~@9 c#4@3 ~@3 g#4@6 g4@2 g#4@7 ~@6, ~@3 e4@7 ~@2, ~@3 a4@2 ~@7, ~@2 d4@3 ~]/3", C: "[e4,g#4,b4] ~ [e4,g#4,b4]@2",
  D: "[~@9 g#4@3 ~@3 a4@6 b4@2 c#5@9 ~@4, ~@9 e4@23 ~@4, ~@3 b4@2 ~@7, ~@3 c#4@5 ~]/3", E: "~@11 [b3,b4]",
  F: "[e4,e5] [d#4,d#5] [d4,d5] [a#3,c#5]", // E D# D A#m
  G: "[[c#4,b4,e5]@3 [b3,g#4,d5]@3 [g#3,e4,b4]@3 g#4@3 [e4,a4]@3 ~@3 g#4@3 a4@3 ~@9 c#4@3 ~@3 g#4@6 g4@2 g#4@6 ~@7, ~@9 c#4@6 ~@3 e4@7 ~@8 e4@20 ~@7, ~@9 e3@2 ~@7 c#4@6 ~@9 a4@6 ~@21, ~@36 d4@17 ~@7]/5", // C#m7 G#dim E A5
  H: "[d4,e4,g#4,b4]@3 ~@3 a#4@3 b4@2 g#4, ~ [d4,e4], ~@6 g#4@5 ~", // E7 Dsus2
  I: "[~@6 d5@5 [c#4,c#5]@21 ~@4, ~@3 [f4,g#4]@13 ~@2]/3", // C# Fm
  J: "[b4@3 a#4@3 b4@3 f#4@3 a4@2 g#4@4 f#4@3 g#4@3 [c#4,a4]@9 ~@3, b3@2 ~, d#4@4 e4@7 ~]/3", // F#m
  K: "e5 d#5 d5 [e4,g4,a#4], [g#4,b4]@3 ~", // Edim G#m
  L: "[c#5 b4 b3@2 [c#4,a4] ~ g#4 a4, d4@2 ~ [c#4,e4], [f#4,a4]@2 e4@3 ~@3, ~@2 g#4 ~@5]/2", // F#m C#m F#m
  M: "[~@9 c#4@3 ~@3 g#4@6 g4@2 g#4 ~@12, ~@9 e4@16 ~@11, ~@3 a4@2 ~@7, ~@12 b3@13 ~@11]/3",
  N: "[d4,e4,b4]@3 ~@3 a#4@3 b4@2 g#4, ~ [d4,e4]", O: "[b3,d#4,f#4], b4@3 ~",
  P: "[a4@3 g#4@9 ~@6 g#4@4 [c#4,a4]@12 ~@14, e4@17 ~@7, d4@7 ~@9, ~@12 f#4@11 ~@25]/2", // F#m
  Q: "[a4@2 g#4@4 f#4@3 g#4@2 [c#4,a4]@7 [a3,c#4,e4,a4]@27 ~@3, e4@3 ~@5, d4@11 ~@37]/4", // F#m A
})).s("gm_epiano1").gain(0.3).pan(0.7)

// chords · rock organ · "ORGAN 3"
const rock_organ = note(`<
  A B C D E@2 F@2 G@2 H@2 I@3 J K@4 L M N@2 O@2 P@2 Q@4 R@2 S T U@2 V@4 W@2 X@2 Y@2 Z@2 AA ~ AB@2 AC@4 AD@2 AE@2 AF AG
  AH AI AJ AK AL AM AN@3 ~
>`.pickRestart({
  A: "[e5,a5]@11 ~ [e5,f#5]@9 ~@3, c#5@5 ~", B: "[f#5,a5,b5]@11 ~ [e5,g#5,c#6]@10 ~@2",
  C: "[c#5,e5,a5]@12 [c#5,e5,f#5]@11 ~", D: "[f#5,a5,b5]@11 ~ [e5,g#5,c#6]@11 ~",
  E: "[[e4,a4,c#5]@26 ~@2 [e4,a4,c#5] ~@5 [e4,c#5]@7 [b4,c5] [g4,a4] [e4,g4,a#4] ~@4, ~@33 a4@8 ~@7]/2", // A C#m Cmaj7 Gsus2 Edim
  F: "[e5@18 ~@4 e5@5 ~ f#5@2 f#5@4 g#4@2 [c#5,e5]@4 [b4,d5]@8, [g#4,b4]@27 ~ f5 ~@19, ~@18 d5@7 ~@3 d5@7 ~@13]/2", // C#m Bm G#m
  G: "[[g#4,b4,d5]@27 ~ [g#4,b4,d5] ~@5 [g#4,b4,d5]@8 ~@6]/2", // G#dim
  H: "[[a4,c#5,e5]@27 ~ [c5,d#5]@2 [c#5,e5]@3 [d5,f#5] ~@2 e5@3 a4@8 ~, ~@3 c#5]/2", // A Cm C#m D
  I: "[a#4@21 ~ [a#4,e5]@24 ~@2 [a4,b4,d#5]@24, f#4, c#5@23 ~@13]/3", J: "~@3 c#6@7 c6 b5@7 f#5@6, ~@3 a5@20 ~",
  K: "[[a4,d#5]@23 ~ [a4,d#5]@13 ~@2 [a4,b4,d#5] ~@32 d5@20 ~@4, b4@37 ~@10 e5@25 ~@24, ~@24 [g#4,b4]@23 ~]/4", // Adim B7 G#m
  L: "[a4,c#5,e5]", M: "~@4 a4 ~@4 [a4,c#5,e5]@13 ~@2",
  N: "[e5@18 ~@4 e5@17 ~ [g#4,b4,d5,e5]@7 ~, [g#4,b4]@13 ~@3, ~@6 d5@7 ~@3]/2", // E7 G#m
  O: "[[g#4,b4,d5,e5]@13 ~ g#4@4 [g#4,f5]@6, ~@7 [b4,d5]@5]/2", // E7 C# Bm
  P: "[[c#5,f5]@11 ~ f5@5 [d#5,f#5]@6 ~ [f5,g#5]@6 [d#5,f#5]@4 f5@11 ~@3, ~@3 c#5@8 ~]/2", // C# D#m Fm D#m
  Q: "[a#4@22 a#4@19 ~ [f#4,a#4,c#5]@3 ~ [f#4,a4,b4,d#5]@31 ~@5 g#5@8 f#5@4 ~@2, [f#4,c#5]@41 ~@41 [b4,d#5]@13 ~, ~@11 e5@11 ~@26]/4", // F# B7 F#5 B
  R: "[~ d#5@22 ~ g#4@22 ~@2, b4@15 ~, a4@22 ~ d5@22 ~@3]/2", S: "[a4,c#5]@3 ~@3 a4@6 e5@6 a4@4 ~@2, ~@6 c#5@17 ~",
  T: "~ d5 c#6 b5, [a4,b4] [e5,g#5]", U: "[~@23 e5@23 ~@2, [a4,c#5]@23 ~]/2",
  V: "[[g#4,b4,e5]@27 ~ [g#4,b4,e5] ~@4 [g#4,b4,e5]@13 ~ e5@22 d5@14 ~ e5@11 ~, ~@47 [g#4,b4]@48 ~]/4", // E G#m
  W: "[~ e5@17 ~@24 [a4,c#5]@5 ~, c#5@5 ~, ~ a4@40 ~@7, ~@21 e5@25 ~@2]/2", // A
  X: "[[f#4,a#4,c#5]@17 ~@5 e5@16 ~@2 [f#4,a#4,e5]@6 ~@2, ~@18 [f#4,a#4,c#5]@20 ~ c#5@6 ~@3]/2", // F# F#7 F#
  Y: "[[a4,b4,d#5]@27 ~ [a4,b4,d#5] ~@5 [f#4,a4,b4,d#5]@12 ~@2, f#4@2 ~]/2", // B7
  Z: "[[a4,b4,d#5]@15 ~ [a4,b4,d#5] ~@4 [f#4,a4,b4,d#5]@17 ~@2 [f#4,a4,b4,d#5]@5 ~@3, f#4@5 ~@7]/2", // B7
  AA: "~ [g#4,b4]@2 ~@21, d5 ~@11", // G#m
  AB: "[[a4,c#5,e5]@15 ~ [a4,c#5,e5] ~@5 e5@17 c#5@7 ~@2, ~@21 a4@25 ~@2, ~@21 c#5@16 ~@11]/2", // A
  AC: "[[g#4,b4,e5]@27 ~ d5@19 ~ d5@17 ~ d5@3 ~ e5@17 ~ [g#4,b4]@7 ~, ~@28 [g#4,b4]@37 ~ [g#4,b4]@21 ~ e5@5 ~@3]/4", // E G#m
  AD: "[[g#4,c#5,f5]@15 ~ [g#4,c#5,f5] ~@17 g#5@12 ~@2, ~@11 [c#5,f5]@12 ~]/2", // C#
  AE: "[[c#5,f#5]@13 ~@11 e5@15 ~ [c#5,e5,f#5]@6 ~@2, a#5@23 ~@25, ~@15 [c#5,f#5]@23 ~@10]/2", // F#5 F#7 F#5
  AF: "[b4,d#5,f#5]@21 ~ [b4,d#5,f#5] ~", AG: "~@6 [a4,d#5] ~@3 g#5@8 f#5@6, ~@5 [b4,d#5]@7",
// … 33 more lines