Strudelify

Tom Traubert's Blues (Waltzing Matilda)

Rod Stewart

KeyC majorTempo73 bpm
0:00/0:00
// Tom Traubert's Blues (Waltzing Matilda) — Rod Stewart
// 73 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: metre changes (4/4 at bar 1, 6/4 at bar 2, 4/4 at bar 4, 6/4 at bar 6, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 106 bars on a 48-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(73/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
const piano = note(`<
  A@2 B@8 C@6 D@7 E@4 F@8 G@8 H I J K L@5 M@5 N@7 O P@8 Q@5 R@5 S T@4 U V W X U V W X U Y Z@8
>`.pickRestart({
  A: "[~@31 [g3,c4,e4]@11 g3@6 g3@6 ~@13 [b3,d4]@11 ~@13 [g3,c4,e4]@5, ~@31 c3@24 d3@24 e3@17, ~@42 [c4,e4]@12 [g3,b3,d4]@12 ~ g3@6 ~@5 [g3,c4,e4]@12 ~@6]/2", // C Bm C G C
  B: "[g3@5 ~@14 [a3,c4]@10 ~ [a3,c4]@6 ~ [a3,c4]@5 ~@7 a3@6 [g3,c4,e4]@12 g3@12 ~@17 g3@6 ~ [f#3,a3]@12 [f#3,a3]@12 a3@11 [f#3,a3,c4]@12 ~@12 [g3,c4,d4]@12 ~ [g3,b3,d4]@15 [g3,b3,d4]@30 ~@3 [c4,f4,a4]@12 c4@5 c4@6 [c4,f4,a4]@12 [f4,a4]@12 ~ [c4,e4,g4]@12 [c4,e4,g4]@12 c4@6 ~@12 e4@6 [a3,c4,f4]@12 a3@6 a3@6 [c4,f4]@12 g3@5 g3@6 g3@6 ~ g3@5 [g3,c4,e4]@6, ~@6 [a3,c4,f4]@13 f4@18 g4@5 [a3,f4] c4@12 ~@12 e4@23 e4@13 d4@24 d4@23 ~@85 [f4,a4]@11 ~@49 e4@12 [d4,g4]@13 ~@46 [c4,e4]@12 ~@6, ~@7 f3@48 e3@48 d3@47 ~ g2@72 [f2,f3]@48 e2@49 ~@23 g2@24 ~@17, ~@29 g#4@26 ~@12 c4@17 c4@18 ~@13 c4@23 ~@120 c4@7 ~@30 g4@6 c4@18 ~@12 [c4,f4]@12 ~@12 [b3,d4]@12 ~@17, ~@30 a4@25 ~@24 g3@17 ~@54 [g3,c4,d4]@12 ~@108 e3@49 [d2,d3]@25 ~@22 c3@18]/8", // Am C F#m F#dim Gsus4 G F C …
  C: "[~ g3@6 g3@6 g3@6 g3@6 g3@6 [c4,f4,a4]@12 c4@5 c4@6 [c4,f4,a4]@12 [f4,a4]@12 ~ [c4,e4,g4]@12 [c4,e4,g4]@12 c4@6 ~@12 e4@6 [a3,c4]@12 [a3,c4]@12 [a3,c4]@12 [a3,c4]@12 ~@13 [f3,g3,b3]@13 ~@13 [g3,b3]@13 [g3,c4,e4]@12 [g3,c4,e4]@12 [g3,b3,d4]@12 g3@6 g3@6 [e2,e3,g3,c4,e4]@11 ~ g3, ~@7 [d3,d4,f4]@12 [e3,e4,g4]@12 [f2,f3]@48 e2@49 ~@47 g2@51 ~@62, ~@43 [f4,a4]@11 ~@12 c4@7 ~@5 e3@49 [d2,d3]@48 ~@52 [c2,c3]@24 [d2,d3]@24 ~@13, ~@103 e4@12 [d4,g4]@13 ~@160, ~@103 g4@6 c4@18 ~@136 [b3,d4]@12 ~@11 [c4,e4]@2]/6", // F C Am G7 G C G C …
  D: "[~@5 g3@6 [a3,c4,f4]@12 [a3,c4,f4]@11 ~ [g3,c4,e4]@12 [g3,c4,e4]@12 [g3,c4,e4]@11 ~ g3@11 ~ [a3,c4,f4]@11 [a3,c4,f4]@11 ~ [f3,g3,b3,d4]@13 [f3,g3,b3,d4]@12 [f3,g3,b3,d4]@12 f3@12 [c4,f4,a4]@12 c4@6 c4@6 [c4,f4,a4]@11 [f4,a4]@13 [c4,e4,g4]@12 [c4,e4,g4]@12 c4@6 ~@12 e4@6 [a3,c4,f4]@12 a3@6 a3@6 [c4,f4]@12 g3@6 g3@6 g3@6 g3@6 g3@6 g3@6 g3@6 g3@6 [e3,g3,e4,g4], ~@11 [f2,f3]@24 [e2,e3]@47 ~ [d2,d3]@23 g2@96 ~@31 c4@18 [d2,d3]@25 ~@60, ~@70 [c4,e4]@11 ~@62 [g3,b3,d4]@60 ~@24 g4@12 [d4,g4]@13 ~@11 [c4,f4]@12 ~@12 [b3,d4]@12 [c4,e4]@12 [c4,e4]@12 [d3,d4,f4]@12 ~, ~@155 [f2,f3]@48 [e2,e3]@49 ~@23 g2@24 c3@25 ~@12, ~@167 [f4,a4]@12 ~@11 c4@7 ~@30 e4@18 ~@91]/7", // F C F G7 F C F F5 …
  E: "[~@5 g3@6 [c4,f4,a4]@12 c4@6 c4@6 [c4,f4,a4]@11 [f4,a4]@13 [c4,e4,g4]@12 [c4,e4,g4]@12 c4@6 ~@12 e4@6 [a3,c4]@12 ~ a3@11 [a3,c4]@12 [a3,c4]@12 ~@13 [f3,g3,b3]@13 ~@11, ~@11 [f2,f3]@48 [e2,e3]@49 ~@47 g2@37, ~@23 [f4,a4]@12 ~@11 c4@7 ~@30 e4@18 ~@91, ~@83 g4@12 [d4,g4]@13 ~@11 c4@12 ~@61, ~@89 c4@18 [d2,d3]@48 ~@37]/4", // F C Am G7 F E F G5 …
  F: "[~@2 [g3,b3]@13 [g3,c4,e4]@12 ~ [g3,c4,e4]@11 [g3,b3,d4]@12 g3@6 g3@6 [g3,c4,e4]@12 g3@6 g3@6 ~ [a3,c4,f4]@12 [a3,c4,f4]@11 [g3,c4,e4]@12 [g3,c4,e4]@12 [g3,c4,e4]@12 [g3,c4,e4]@11 ~ [a3,c4,f4]@12 [a3,c4,f4]@11 ~ [f3,g3,b3,d4]@12 [f3,g3,b3,d4]@12 [f3,g3,b3,d4]@12 f3@12 [c4,f4,a4]@12 c4@6 c4@6 [c4,f4,a4]@12 [f4,a4]@12 [c4,e4,g4]@12 [c4,e4,g4]@12 c4@6 ~@12 e4@6 ~ a3@11 ~ a3@5 a3@6 ~ [c4,f4]@11 g3@6 g3@6 [c3,g3,c4,e4]@6 g3@3, ~@15 [c2,c3]@24 [d2,d3]@24 [e2,e3]@23 ~ [f2,f3]@24 [e2,e3]@47 ~ [d2,d3]@23 ~ g2@96 ~@30 c4@18 [d2,d3]@25 ~@32, ~@51 [b3,d4]@12 ~@12 [c4,e4]@12 ~@132 [g3,b3,d4]@60 ~@24 g4@12 [d4,g4]@13 ~@56, ~@231 [f2,f3]@48 [e2,e3]@49 ~@23 g2@24 ~@9, ~@81 [f4,a4]@4 ~@4 c4@2 ~@10 e4@6 ~@2 [c4,f4]@4 [c4,f4]@4 ~@4 [b3,d4]@4 ~@3]/8", // G C G C F C F G7 …
  G: "[~@3 g3@6 g3@6 ~@6 g3@6 g3@6 g3@6 [c4,f4,a4]@12 c4@6 c4@6 [c4,f4,a4]@12 [f4,a4]@12 [c4,e4,g4]@12 [c4,e4,g4]@12 c4@6 ~@12 e4@5 ~ a3@11 ~@19 a3@6 a3@6 a3@6 g3@6 g3@7 g3@6 g3@5 g3@3 ~@16 g3@5 [c4,f4,a4]@12 c4@6 c4@6 [c4,f4,a4]@12 [f4,a4]@12 [c4,e4,g4]@12 [c4,e4,g4]@12 c4@6 ~@12 e4@6 [a3,c4]@14 [a3,c4]@13 [a3,c4]@13 [a3,c4]@13 g2@4, ~@3 [c4,e4]@12 [d4,f4]@12 ~@24 [f4,a4]@12 ~@12 c4@6 ~@30 e4@18 ~@6 f4@23 ~ f4@12 ~@12 d4@27 ~@33 [f4,a4]@12 ~@48 e4@18 ~@63, ~@15 g3@6 ~@6 [e3,e4,g4]@12 ~@72 g4@12 [d4,g4]@11 ~@12 a3@18 ~@19 b3@13 b3@14 ~@4 g3@10 ~@85 c4@18 [d2,d3]@52 ~@5, ~@16 d3@12 ~@11 [f2,f3]@48 [e2,e3]@47 ~ [d2,d3]@48 g2@48 [f2,f3]@48 [e2,e3]@49 ~@56, ~@117 c4@16 ~@2 c4@17 ~ c4@18 [c4,f4]@13 ~@23 [a3,c4]@13 [b3,d4]@11 ~@36 c4@6 ~@30 g4@12 [d4,g4]@13 ~@56]/8", // F C F C Am C Dm F …
  H: "~@9 [f3,g3,b3]@14 ~@14 [g3,b3]@11", // G7 G
  I: "~@2 [g3,c4,e4]@12 ~ [g3,c4,e4]@11 ~ [g3,b3]@11 g3@6 g3@4, ~ [c2,c3]@12 d4@6 [b3,d4]@5, ~@9 [d2,d3]@7", // C G C Bm D
  J: "~@2 [g3,c4,e4]@12 g3@6 g3@6 ~ [a3,c4,f4]@12 [a3,c4,f4]@9, ~@2 [e2,e3]@23 ~ [f2,f3]@22, ~@7 [c4,e4]@6 ~@11", // C F E F C
  K: "~ [g3,c4,e4]@6 [g3,c4,e4]@6 [g3,c4,e4]@6 [g3,c4,e4]@5, ~ [e2,e3]@23", // C E
  L: "[~@2 [a3,c4,f4]@12 [a3,c4,f4]@11 ~ [f3,g3,b3,d4]@12 [f3,g3,b3,d4]@12 [f3,g3,b3,d4]@12 f3@12 [c4,f4,a4]@12 c4@6 c4@6 [c4,f4,a4]@12 [f4,a4]@12 [c4,e4,g4]@12 [c4,e4,g4]@12 c4@6 ~@12 e4@6 ~ a3@11 ~ a3@5 a3@6 ~ [c4,f4]@11 g3@6 g3@6 g3@6 g3@6 g3@6 g3@4, ~@2 [d2,d3]@23 ~ g2@96 ~@30 c4@18 [d2,d3]@25 ~@45, ~@62 [g3,b3,d4]@60 ~@24 g4@12 [d4,g4]@13 ~@12 f4@12 ~@45, ~@74 [f2,f3]@48 [e2,e3]@49 ~@23 g2@24 c3@22, ~@86 [f4,a4]@12 ~@12 c4@7 ~@29 e4@18 ~@6 [c4,f4]@12 c4@12 ~@12 [b3,d4]@12 [c4,e4]@12 [c4,e4]@10]/5", // F G7 F C F5 D G G5 …
  M: "[~@8 g3@6 g3@6 g3@6 [c4,f4,a4]@12 c4@6 c4@6 [c4,f4,a4]@12 [f4,a4]@12 [c4,e4,g4]@12 [c4,e4,g4]@12 c4@6 ~@12 e4@6 [a3,c4]@13 [a3,c4]@13 [a3,c4]@14 [a3,c4]@14 ~@15 [f3,g3,b3]@16 ~@16 [g3,b3]@16 ~, ~@2 [d4,f4]@12 ~@24 [f4,a4]@12 ~@12 c4@7 ~@29 e4@18 ~@124, ~@2 g3@6 ~@6 [e3,e4,g4]@12 ~@72 g4@12 [d4,g4]@13 ~@117, ~@3 d3@12 ~@11 [f2,f3]@48 [e2,e3]@49 ~@53 g2@63 ~, ~@104 c4@18 [d2,d3]@53 ~@65]/5", // F C Am G7 G Dm F Em …
  N: "[[g3,c4,e4]@12 [g3,c4,e4]@12 [g3,b3,d4]@12 g3@5 g3@6 [g3,c4,e4]@12 g3@6 g3@6 ~ [a3,c4,f4]@12 [a3,c4,f4]@11 [g3,c4,e4]@12 ~ [g3,c4,e4]@11 [g3,c4,e4]@12 [g3,c4,e4]@11 ~ [a3,c4,f4]@12 [a3,c4,f4]@11 ~ [f3,g3,b3,d4]@12 ~ [f3,g3]@12 [f3,g3,b3,d4]@12 f3@12 [c4,f4,a4]@11 c4@6 c4@6 [c4,f4,a4]@12 [f4,a4]@12 [c4,e4,g4]@12 ~ [c4,e4,g4]@11 c4@6 ~@12 e4@7 [a3,c4,f4]@12 a3@6 a3@6, [c2,c3]@24 [d2,d3]@23 [e2,e3]@23 ~@2 [f2,f3]@24 ~@71 g2@96 [e2,e3]@49 [d2,d3]@24, ~@36 [b3,d4]@12 ~@11 [c4,e4]@12 ~@24 [e2,e3]@47 ~ [d2,d3]@23 ~@13 [b3,d4]@12 ~@13 [g3,b3,d4]@60 ~@23 g4@12 [d4,g4]@13 ~@24, ~@36 [f2,f3]@8 ~@5 c4@3 ~@2 [c4,f4]@2, ~@227 [f4,a4]@12 ~@12 c4@7 ~@29 e4@18 ~@31]/7", // C G C F C F G7 Fsus2 …
  O: "[c4,f4]@12 g3@5 g3@6 g3@6 g3@6 g3@6 g3@6 g3, g2@23 c3@25, ~@12 [b3,d4]@11 [c4,e4]@12 [c4,e4]@12 ~", // F5 Bm C
  P: "[~@6 g3@5 ~ g3@6 g3@5 [c4,f4,a4]@12 c4@6 c4@6 [c4,f4,a4]@12 [f4,a4]@12 [c4,e4,g4]@12 [c4,e4,g4]@12 c4@6 ~@12 e4@6 [a3,c4]@12 ~ [a3,c4]@12 [a3,c4]@12 [a3,c4]@12 ~@12 [f3,g3,b3]@14 ~@17 [g3,b3]@18 ~ [g3,c4,e4]@12 [g3,c4,e4]@12 [g3,b3,d4]@12 g3@6 g3@6 [g3,c4,e4]@11 g3@6 g3@6 ~ [a3,c4,f4]@12 [a3,c4,f4]@11 ~@13 [g3,c4,e4]@11 [g3,c4,e4]@12 [g3,c4,e4]@11 ~ [d2,d3,a3,c4,f4]@11, [d3,d4,f4]@11 e3@12 [f2,f3]@48 [e2,e3]@49 ~@48 g2@61 ~@155, ~@12 [e4,g4]@11 ~@12 [f4,a4]@12 ~@12 c4@7 ~@29 e4@18 ~@271, ~@95 g4@12 [d4,g4]@13 ~@146 [b3,d4]@12 ~@11 [c4,e4]@12 ~@24 [g3,c4,e4]@12 ~@47, ~@102 c4@17 [d2,d3]@48 ~@63 [c2,c3]@24 [d2,d3]@24 [e2,e3]@23 ~ [f2,f3]@24 [e2,e3]@47 ~@11]/8", // F C Am G7 G C G C …
  Q: "[~ [a3,c4,f4]@11 ~ [f3,g3,b3,d4]@13 [f3,g3,b3,d4]@12 [f3,g3,b3,d4]@12 f3@12 [c4,f4,a4]@11 c4@6 c4@6 [c4,f4,a4]@12 [f4,a4]@12 ~ [c4,e4,g4]@12 [c4,e4,g4]@12 c4@6 ~@12 e4@6 [a3,c4,f4]@12 a3@6 a3@6 [c4,f4]@12 g3@5 g3@6 g3@6 ~ g3@5 g3@6 g3@6 ~@7 g3@4, ~@13 g2@96 [e2,e3]@49 [d2,d3]@25 ~@22 c3@25 [d3,d4,f4]@10, ~@50 [g3,b3,d4]@60 ~@24 g4@11 g4@13 ~@47 [c4,e4]@12 [c4,e4]@12 ~@11, ~@31 [f2,f3]@24 ~@15 c4@9 ~@6 [c4,f4]@6 g2@12 ~@17, ~@73 [f4,a4]@12 ~@12 c4@7 ~@30 e4@12 d4@13 ~@35 [b3,d4]@12 ~@23 g3@6 ~@5]/5", // F G7 F C F F5 E D …
  R: "[~@2 g3@6 g3@6 [c4,f4,a4]@11 c4@6 c4@6 [c4,f4,a4]@12 [f4,a4]@12 ~ [c4,e4,g4]@12 [c4,e4,g4]@11 c4@6 ~@13 e4@6 [a3,c4]@12 [a3,c4]@12 [a3,c4]@12 [a3,c4]@12 ~@13 [f3,g3]@14 ~@15 g3@16 [g3,c4,e4]@12 [g3,c4,e4]@12, ~@2 [e3,e4,g4]@12 [f2,f3]@48 ~@23 e4@13 d4@12 ~@130, ~@25 [f4,a4]@12 ~@12 c4@7 ~@5 [e2,e3]@49 [d2,d3]@48 g2@57 ~ [c2,c3]@24, ~@85 g4@12 g4@13 ~@130, ~@92 c4@18 ~@60 b3@14 ~@15 b3@16 ~@25]/5", // F C Am Fsus2 C Em F E …
  S: "[g3,b3,d4]@12 g3@6 g3@6 [g3,c4,e4]@11 ~ g3@6 g3@6, [d2,d3]@24 [e2,e3]@23 ~, ~@12 [b3,d4]@12 ~@11 [c4,e4]@12 ~", // G C D E Bm C
  T: "[[a3,c4,f4]@12 [a3,c4,f4]@11 ~ [g3,c4,e4]@12 [g3,c4,e4]@12 [g3,c4,e4]@11 ~ g3@11 ~ [a3,c4,f4]@11 [a3,c4,f4]@11 ~ [f3,g3,b3,d4]@13 [f3,g3,b3,d4]@12 [f3,g3,b3,d4]@12 f3@12 [c4,f4,a4]@12 c4@6 c4@6 [c4,f4,a4]@11 [f4,a4]@13, [f2,f3]@24 [e2,e3]@47 ~ [d2,d3]@23 g2@96 ~, ~@59 [c4,e4]@11 ~@62 [g3,b3,d4]@60, ~@3 [f2,f3], ~@156 [f4,a4]@12 ~@11 c4@7 ~@6]/4", // F C F G7 F E D C …
  U: "[c4,e4,g4]@2 [c4,e4,g4]@2 c4 ~@2 e4, [e2,e3], ~@4 e4@3 ~, ~@2 g4 [d4,g4], ~@5 c4@3", // C E G5
  V: "[a3,c4,f4]@2 a3!2 [c4,f4]@2 g3!2, [d2,d3]@25 ~@11 [b3,d4]@12, ~ [c4,f4] g2@2", // F F5 D Bm F5
  W: "g3!8, c3@25 ~@23, [c4,e4]!2 [d3,d4,f4] [e3,e4,g4]", // C Dm Em
  X: "[c4,f4,a4]@12 c4@6 c4@6 [c4,f4,a4]@11 [f4,a4]@13, [f2,f3], ~@12 [f4,a4]@12 ~@11 c4@7 ~@6", // F
  Y: "[a3,c4,f4]@14 a3@7 a3@8 [g2,b3,f4]@19, [d2,d3]@5 ~@3, ~@14 [c4,f4]@17 ~@17", // F G7 D F5
  Z: "[~@21 [g3,c4,e4]@12 [g3,c4,e4]@12 [g3,b3,d4]@12 g3@6 g3@6 [g3,c4,e4]@11 g3@6 g3@6 ~ [a3,c4,f4]@12 [a3,c4,f4]@11 ~@13 [g3,c4,e4]@11 [g3,c4,e4]@12 [g3,c4,e4]@11 ~ [a3,c4,f4]@12 [a3,c4,f4]@11 ~ g3@29 ~@2 e4@6 ~ g4@6 ~ c5@6 ~@2 e5@7 ~@2 g5@8 ~@3 c6@93 ~@30, ~@21 [c2,c3]@24 [d2,d3]@24 [e2,e3]@23 ~ [f2,f3]@24 [e2,e3]@47 [d2,d3]@23 ~ [g2,f3,b3,d4]@44 g4@7 g4@96 ~@49, ~@57 [b3,d4]@12 ~@11 [c4,e4]@12 ~@24 [g3,c4,e4]@12 ~@89 g3@23 c5@8 c5@96 ~@40, ~@218 c4@6 ~ c4@23 e5@10 e5@96 ~@30, ~@225 e4@6 ~ e4@27 g5@95 ~@30]/8", // C G C F C F C D …
})).s("gm_piano").gain(0.38)

// chords · piano · soft notes
const piano_soft = note(`<
  ~ A ~@2 B ~@2 C ~ D ~ C E@3 ~@5 F G ~@2 F H@2 I ~@4 J ~ K ~ J ~@3 J L@3 ~@5 M ~ N ~ M O@3 ~@5 P ~ Q ~ P R@2 S ~@5 T U
  ~@2 T V W@2 ~@4 X ~ Y ~ X ~ Y ~ X ~ Z@2 ~@7
>`.pickRestart({
  A: "~@25 g3@5 ~@18", B: "~@31 f#3@11 ~@6", C: "~@25 c4@6 ~@17", D: "~@7 g3@12 ~@29",
  E: "[~@31 [f#3,d4]@12 [f#3,d4]@12 [f#3,d4]@12 [f#3,d4]@12 [f3,g3,b3,d4]@13 d4@13 [f3,g3,b3,d4]@13 [f3,d4]@13 ~@13]/3", // D G7 Dm
  F: "~@5 c4@6 ~@37", G: "~@35 g3@12 ~",
  H: "[~@11 [f#3,d4]@12 [f#3,d4]@12 [f#3,d4]@12 [f#3,d4]@12 [f3,g3,b3,d4]@13 d4@13 [f3,g3,b3,d4]@11]/2", // D G7
  I: "~@2 [f3,d4]@13 ~@33", J: "~@11 c4@2 ~@3", K: "~@5 g3@4 ~@7",
  L: "[~@39 [f#3,d4]@14 [f#3,d4]@12 ~ d4@13 [f#3,d4]@13 [f3,g3,b3,d4]@13 d4@14 [f3,g3,b3,d4]@14 [f3,d4]@11, ~@65 f#3@13 ~@66]/3", // D G7 Dm
  M: "~@21 c4@5 ~@22", N: "~@3 g3@11 ~@34",
  O: "[~@26 [f#3,d4]@13 [f#3,d4]@13 [f#3,d4]@14 [f#3,d4]@14 [f3,g3,b3,d4]@15 d4@15 ~ [f3,g3,d4]@16 [f3,d4]@16 ~, ~@110 b3@17 ~@17]/3", // D G7 Dm
  P: "~@18 c4@5 ~@25", Q: "g3 ~@3",
  R: "[~@23 [f#3,d4]@12 ~ [f#3,d4]@11 ~ d4@11 ~ d4@11 ~ [f3,d4]@12 d4@12, ~@47 f#3@12 f#3@12 [g3,b3]@13 ~@12]/2", // D Dm G
  S: "~@3 [f3,g3,b3,d4]@16 [f3,d4]@18 ~@11", T: "~@4 c4@3 ~@17", U: "~@19 g3@5",
  V: "~@7 [f#3,d4]@6 [f#3,d4]@6 [f#3,d4]@5", // D
  W: "[~@2 [f#3,d4]@12 [f3,g3,b3,d4]@13 d4@13 ~ [f3,g3,d4]@14 ~ f3@16 ~@24, ~@40 b3@15 d4@16 ~@25]/2", X: "~@7 c4",
  Y: "~@2 g3 ~", Z: "[~@29 g3@39 ~@28]/2",
})).s("gm_piano").gain(0.19)

// bass · contrabass · "Basgitaar"
const bass = note(`<
  A@5 B@5 C@5 D@6 E@4 F G H@3 I@5 J@5 K@4 L M N O@4 P Q R@4 S@2 T@7 U@8 V@4 W X@4 Y Z@2 AA AB@8 AC@7 AD@4
>`.pickRestart({
  A: "[~@31 c2@23 d2@25 e2@24 f2@47 e2@48 d2@42]/5", B: "[~@6 g2@70 ~@3 f2@47 e2@47 ~ d2@25 g2@23 c3@18]/5",
  C: "[~@6 d2@12 e2@12 ~ f2@47 e2@48 d2@49 g2@49 ~@3 c2@13]/5",
  D: "[~@11 d2@24 e2@24 f2@24 e2@47 d2@25 g2@47 ~ f2@47 e2@38]/6",
  E: "[~@10 d2@25 g2@23 c3@24 d2@12 ~ e2@12 f2@47 e2@38]/4", F: "~@5 d2@19", G: "~ g2@3",
  H: "[~@15 c2@23 ~ d2@24 e2@24 f2@24 e2@33]/3", I: "[~@14 d2@25 g2@47 ~ f2@47 ~ e2@47 d2@25 g2@23 ~ c3@9]/5",
  J: "[~@15 d2@12 e2@12 f2@47 ~ e2@47 d2@49 g2@24 a2@12 b2@12 ~@9]/5", K: "[~@39 e2@48 d2@53 g2@51 ~]/4",
  L: "~@2 c2@23 ~ d2@22", M: "~ e2@12 f2@11", N: "~ e2@23", O: "[~ d2@25 g2@47 ~ f2@47 ~ e2@47 d2@23]/4",
  P: "~@2 g2@23 ~ c3@22", Q: "~ d2@6 e2@6 ~@11", R: "[~@26 e2@48 d2@55 g2@59 ~@4]/4", S: "[c2@23 d2@24 e2@24 f2@25]/2",
  T: "[e2@47 d2@24 g2@47 ~@2 f2@47 e2@47 d2@25 g2@23 ~ c3@24 d2@12 e2@12 ~@25]/7",
  U: "[~@23 e2@48 d2@49 g2@57 ~@5 c2@23 d2@24 e2@24 f2@25 e2@47 d2@24 g2@35]/8",
  V: "[~@14 f2@47 e2@47 d2@25 g2@23 ~ c3@24 d2@11]/4", W: "~ e2@12 ~@35", X: "[~@13 e2@48 d2@49 g2@54 ~@4 c2@23 ~]/4",
  Y: "d2 e2", Z: "[f2@24 e2@47 d2@25]/2", AA: "g2@47 ~", AB: "[f2@47 e2@47 ~ d2@25 g2@23 c3@24 d2@12 ~ e2@12]/4",
  AC: "[f2@47 e2@47 ~ d2@30 g2@39 ~ c2@23 d2@24 e2@24 f2@25 e2@47 d2@24 g2@4]/7", AD: "[~@7 c2@48 ~@9]/4",
})).s("gm_contrabass").gain(0.3)

// chords · string ensemble 1 · "Strijkers"
const string_ensemble_1 = note(`<
  A@7 ~@7 B@6 ~@7 C@3 D@7 E@7 F G@2 H@5 I@5 J K L@8 M@8 N@3 O@2 P@3 Q@4 R@4 S@3 T U@6 V@5
>`.pickRestart({
  A: "[~@31 [c4,e4]@23 b3@13 g4@12 e4@22 ~ f4@48 g4@24 c4@12 g4@12 ~@36 d4@10 ~@2 c4@25 ~@3 b3@39 ~@23, ~@54 d4@24 ~ g4@70 ~ e4@48 f#4@37 ~@101, ~@101 c4@49 ~@48 d4@33 ~@15 [g3,d4]@70 ~@20, ~@37 a4@4 ~@15]/7", // C G5
  B: "[~@36 c4@24 [d4,f4]@24 [e4,g4]@23 [f4,a4]@24 ~@23 c5@12 e4@10 ~@11 f4@8 e4@7 b3@47 ~@39, ~@35 e4@24 ~@72 e4@33 ~@14 d4@71 ~@39, ~@131 g4@29 ~@6 g4@21 ~@101]/6", // Dm Em F
  C: "[~@16 [c4,e4]@24 [d4,f4]@24 [e4,g4]@23 [f4,a4]@24 ~@23 c5@10, ~@7 [e4,g4]@2]/3", // C Dm Em F Em
  D: "[~@3 e4@10 ~@10 f4@8 ~ e4@7 b3@47 ~@2 [f4,a4]@46 [e4,g4]@49 [d4,f4]@48 [c4,e4,c5]@23 ~ [d4,d5]@12 [e4,g4,e5]@12 ~ c4@44 ~@2 [c4,e4]@10, ~@3 g4@21 ~@110 g5@97 ~@105, ~@15 d4@71 ~@168 f4@13 ~@12 f4@47 ~@10]/7", // F Em Dm C D Em C
  E: "[~@3 d4@6 ~@6 c4@20 ~@26 a4@12 f4@13 g4@26 a4@11 b4@12 f4@36 g4@11 e4@24 d4@13 c4@12 d4@26 e4@13 d4@14 [g3,b3,b4]@27 [a3,c4,c5]@13 ~ d5@10 ~, ~@9 e4@29 c4@49 ~@48 c4@82 ~@14 a3@51 ~@42 [b3,d4]@12, ~@39 f4@28 ~@19 d4@49 ~@201]/7", // G Am Bm
  F: "~@3 [c4,e4]@23 ~ [d4,f4]@21, ~ e5@12 f5@11", // C Dm
  G: "[~@3 [e4,g4]@23 [f4,a4]@24 ~@23 c5@13 [e4,g4]@10, ~ g5@12 g5@35, ~@17 e4@11 ~@4, ~@51 g4@29 ~@16]/2", // Em F Em
  H: "[~@11 f5@8 [e4,e5]@6 ~ b3@47 ~@7 c3@5 ~ f3@6 g3@5 a3@13 g3@5 f3@6 [e4,g4]@49 ~@24 b5@12 a5@12 [e3,c4,e4,c5]@22, ~ g5@9 f4@8 ~@7 d5@46 ~@50 g5@96 ~ g5 ~@21, ~@2 d4@71 ~@2 [f4,a4]@46 e3@44 ~@5 [f3,d4,f4]@48 ~@22]/5", // E Em C F Dm
  I: "[~@2 [d4,d5]@12 [e4,g4,e5]@12 f4@36 g4@11 ~ g5@18 f5@5 ~ e5@12 [c4,c5]@12 [d4,d5]@26 [e4,f#5]@13 ~ a5@14 g3 g3@28 ~@2 a3@16 [b3,d4]@16 ~, ~ f4@13 ~@12 c4@82 ~@68 [b3,b4]@31 ~@33, ~@26 [f3,a5]@47 e4@24 d4@13 ~@51 d4@15 ~ g5@62 ~, ~@74 e3@48 [d3,a3]@54 ~@30 [c4,c5]@17 d5@12 ~@5]/5", // D Em C D Esus2 Bm B F …
  J: "[c4,e4,e5]@23 ~ [d4,f4]@23 g5, ~@23 f5@24 ~", K: "[e4,g4]@23 [f4,a4,g5]@25",
  L: "[~@23 c5@12 e4@10 ~@2 g5@9 [f4,f5]@8 [e4,e5]@6 ~ b3@47 ~@7 c3@5 ~ f3@6 g3@6 a3@12 g3@5 f3@6 [e4,g4]@49 ~@24 b5@12 a5@12 [c4,e4,c5]@24 [d4,f4,d5]@12 [e4,g4,e5]@12 f4@36 g4@11 ~ g5@18 f5@5 ~ e5, e4@33 ~@14 d4@71 ~@2 [f4,a4]@46 e3@44 ~@5 f4@48 ~@48 c4@73, g4@29 ~@6 g4@21 ~@14 d5@46 ~@50 g5@96 ~ g5 ~@118 d4@2, ~@216 [f3,d4]@47 e3@47 ~ [f3,a5]@48 [e3,e4]@25]/8", // F E Em C Dm Em F Dm …
  M: "[~@11 [c4,c5]@12 [d4,d5]@24 ~ f#5@11 ~ a5@11 ~ [g3,b3]@27 [a3,c4,c5]@16 [b3,d4]@18 ~ [c4,e4,e5]@23 ~ [d4,f4]@23 ~ [e4,g4]@23 [f4,a4]@24 ~@25 d5@8 ~@8 f5@7 g5@9 [f4,f5]@8 [e4,e5]@6 ~ b3@47 ~@7 c3@5 ~ f3@6 g3@6 [e3,a3]@11, ~@23 [d3,a3]@48 b4@27 ~@17 d5@14 ~@101 e4@33 ~@2 g4@21 ~@64 [f4,a4]@34, ~@47 e4@12 d4@13 g5@60 ~@25 f5@24 g5@24 g5@70 ~@109, ~@230 g4@29 ~@3 e5@8 ~@30 d5@46 ~@38, ~@265 e4@10 ~@2 d4@71 ~@2 f3@11 ~@23]/8", // C D G Am Bm C Dm Em …
  N: "[~ g3@5 f3@6 e3 e3@24 d3@11 c3@12 ~@19 c3@6 ~ b2@11 ~ c3@5 d3@6 g5 c5@21 ~@2 [d2,d3,d4,f4,d5]@11, ~ d3@11 g5@96 ~@36, ~@12 [e4,g4]@49 f4@48 [c3,c4,e4]@24 ~@11, ~@61 d3@19 ~@5 b5@12 a5@12 ~@35, ~@62 [f3,d4]@47 e3@35]/3", // Dm Em C Dm
  O: "[~ [e2,e3,e4,g4,e5]@13 [f3,f4]@35 ~@6 d3@6 g5@18 f5@5 ~ e5@11, ~@7 c4@41, ~@7 a5@24 ~@11 d4@6, ~@14 f2@6 ~@29 e3@7 ~@5 e3@35, ~@50 g4@11 e4@24 ~@11]/2", // Em F
  P: "[~ d3@6 c3@6 d3 ~@24 [e4,f#5]@11 ~ a5@12 ~@26 [a3,c4,c5]@15 [b3,d4]@16 ~@2 c4@23, ~ [c4,c5]@12 a3@47 ~@2 [g3,b3,b4]@28 ~@13 d5@12 ~@5 [e4,e5]@24, ~@13 [d4,d5]@25 ~@11 d4@13 g5@57 ~@25, ~@14 d3@48 ~ g2@57 ~@24]/3", // Esus2 Am Bm C G E D
  Q: "[~ [d4,f4]@22 ~@13 c6@11 ~@12 a5@13 ~@24 d5@8 ~@8 f5@7 g5 ~@8 [f4,f5]@8 [e4,e5]@7 [b3,d5]@47 ~@2, f5@23 g5@12 ~@12 b5@12 ~@13 g5@46 ~@74, ~@25 [e4,g4]@23 [f4,a4,g5]@24 e4@33 ~@2 g4@21 ~@64, ~@72 g4@29 ~@3 e5@8 ~@80, ~@107 e4@10 ~@2 d4@71 ~@2]/4", // Dm F E Bm Em F
  R: "[~@6 c3@5 ~ f3@5 g3@6 a3@12 g3@6 f3@6 ~@24 [d3,e6]@12 [c3,g6]@12 ~@19 c3@5 ~ b2@12 c3@6 d3@5 ~ [c3,c4,e4,c5,e6]@23 [d2,d3,d4,f4,d5,f6]@12 ~ [e4,e5,e6]@12, c6@69 ~@27 f6@22 ~ b5@13 a5@12 ~@48, [f4,a4]@47 e4@49 ~@83 [e2,g4]@13, ~@47 e3@25 ~@23 d3@19 ~@30 e3@44 ~@4, ~@48 g4@45 ~@27 f6@23 g5@47 ~@2]/4", // Dsus2 C5 C Dm E F Em
  S: "[~@6 c3@5 ~ f3@5 g3@6 a3@12 g3@6 f3@6 [e4,g4]@49 ~@23 b5@13 a5@11 g5, [f4,a4]@47 g5@96 ~, ~@47 e3@44 ~@5 [f3,d4,f4]@48]/3", // Em F Dm
  T: "~@12 [e5,g5]@11 [d4,f4,d5,f5]@12 e5 [e4,e5]@12, e3@47 ~, [c4,e4,c5]@24 ~@11 [g4,c5]@13", // Em Dm E C C5
  U: "[[f4,a4]@47 [e4,g4]@49 f4@69 [c4,e4,e5]@23 f5 [d4,f4,f5]@23 ~@12 c6@12 b5@12 a5@12 ~ [e4,g4]@24 d5@3, ~@47 g5@117 ~@48 g5@12 ~@12 [f4,a4,g5]@24 g5@28, ~@96 d4@65 ~@52 [e4,g4]@24 ~@51]/6", // F Em C Dm Em F Em
  V: "[~@13 f5@7 g5 ~@8 [f4,f5]@8 [e4,e5]@6 ~ b3@25 [c2,c3,c4,c5]@143 ~@28, ~@5 e5@8 ~@30 d5@25 ~@172, ~@8 g4@21 ~@211, ~@8 e4@10 ~@2 d4@49 ~@171]/5", // F E C
})).s("gm_string_ensemble_1").gain(0.35).pan(0.3)

// other · oboe · "Hobo"
const oboe = note(`<
  A@7 ~@32 B@3 ~@2 C D E F@2 ~@3 G@3 ~@2 H@5 ~@3 I@3 ~ J@2 K@4 ~@3 L@3 ~ M N O@3 ~@8 P@2 Q@3 R@6
>`.pickRestart({
  A: "[~@31 e5@23 d5@13 g5@12 g5@70 ~ g5@24 c5@12 g5@12 f#5@24 a5@24 c5@28 b4@42 ~@20]/7",
  B: "[~@39 f5@41 g5@5 ~ g5@48 ~@10]/3", C: "~ c5@12 d5@11", D: "~ e5@6 c6@6 b5@6 a5@5", E: "~ g5@23",
  F: "[~ g5@10 f5@8 e5@6 d5@46 ~@25]/2", G: "[~@26 f5@41 g5@5 ~ g5@48 ~@23]/3",
  H: "[c5@23 d5@24 e5@12 c6@12 b5@12 a5@12 g5@46 ~@2 g5@9 f5@8 e5@7 d5@46 ~@27]/5",
  I: "[~@23 f5@41 g5@5 ~ g5@48 ~@26]/3", J: "[~@38 c5@24 d5@23 e5@11]/2",
  K: "[~ c6@12 b5@12 a5@13 g5@46 ~ g5@9 f5@8 e5@7 d5@46 ~@37]/4", L: "[~@14 f5@40 g5@5 ~@2 g5@48 ~@35]/3", M: "~ c5",
  N: "d5@23 e5@13 c6@12", O: "[b5@12 a5@12 g5@46 ~ g5@9 f5@9 e5@6 d5@46 ~@3]/3",
  P: "[f5@47 g5@22 ~@3 g5@6 f5@6 e5@12]/2", Q: "[d5@67 ~@2 c5@24 d5@23 e5@12 c6@12 b5@4]/3",
  R: "[~@8 a5@13 g5@46 ~ g5@9 f5@8 e5@7 d5@25 c5@141 ~@30]/6",
})).s("gm_oboe").gain(0.3).pan(0.8)

// chords · acoustic guitar steel · "A.Gitaar"
const acoustic_guitar_steel = note(`<
  A@7 ~@14 B@3 ~@2 C@4 D@2 ~@12 E F@2 G@2 ~@8 H@5 ~ I J K ~@2 L M@3 N O@5 P@5 Q R S@2 T@2 U V ~@7 W@3 X@5
>`.pickRestart({
  A: "[~@31 c5@6 ~@12 e5@5 ~@19 d5@6 e5@5 ~ d5@3 e5@3 ~@17 c5@7 ~@30 a4@5 ~@25 d5@6 c5@6 ~@5 c5@5 ~@7 a4@6 ~@31 d5@5 ~ c5@6 ~@6 c5@6 ~@6 b4@45 ~@20, ~@37 g4@21 ~@2 g4@35 ~@2 g4@11 ~@7 a4@12 g5@10 ~ f5@11 ~ e5@12 ~@7 e5@24 ~@6 d5@19 ~@5 d5@13 ~@29 d5@51 ~@20, ~@43 c5@11 d5@12 ~ b4@12 ~@12 g5@12 f5@18 c5@29 ~@13 c5@13 ~@41 a4@12 ~@6 a4@12 ~@89, ~@133 a4@9 ~@14 g4@22 ~@9 g4@13 ~@10 f#4@16 ~@3 f#4@18 ~@6 g4@19 ~@64]/7",
  B: "[~@11 f4@6 ~@6 f4@6 a4@6 b3@6 d4@6 g4@6 b3@6 e4@6 c4@6 d4@6 e4@4 ~@2 e4@3 b3@2 ~ e4@5 ~ e4@3 f4@3 c4@6 ~@37, ~@17 c4@13 ~@114]/3",
  C: "[~@11 b3@17 ~@3 b3@5 ~ c4@3 d4@4 b3@17 ~@2 e4@6 ~@7 e4@5 g4@7 d4@5 ~@12 g4@5 ~ e4@6 ~@6 e4@6 g4@5 ~ f4@6 ~@6 f4@6 g4@6 f4@6 c4@6 e4@6 g4@6 c4@5 c5@4, ~@69 c4@17 ~@7 b3@17 ~@7 c4@18 ~@6 c4@22 ~@29, ~@99 d4@11 ~@82]/4",
  D: "[~@3 b4@5 ~ a4@6 f4@5 ~@7 f4@6 a4@6 ~@6 d4@6 ~@6 d4@6 g4@23 ~@10, ~@20 c4@19 g4@19 ~@38, ~@51 b3@35 ~@10]/2",
  E: "~@2 e4@6 ~@7 e4@5 g4@7 d4@6 ~@11 g4@4, ~@9 c4@17 ~@7 b3@15, ~@19 d4@5",
  F: "[~@2 e4@6 ~@6 e4@6 g4@5 ~ f4@6 ~@6 f4@6 g4@6 f4@6 c4@6 e4@6 g4@6 c4@5 c5@6 ~ b4@5 ~ a4@4, ~@4 c4@9 ~@3 c4@11 ~@21]/2",
  G: "[~@2 f4@5 ~@7 f4@6 a4@6 ~@6 d4@6 ~@6 d4@6 g4@23 ~@23, ~@7 c4@19 g4@19 ~@51, ~@38 b3@35 ~@23]/2",
  H: "[e4@6 ~@6 e4@6 g4@6 d4@6 ~@12 g4@5 e4@7 ~@5 e4@7 g4@5 f4@6 ~@6 f4@6 g4@6 f4@6 c4@6 e4@6 g4@6 c4@6 c5@6 b4@5 ~ a4@6 f4@6 ~@6 f4@6 a4@6 ~@6 d4@6 ~@6 d4@7 g4@23 ~@25, ~@6 c4@17 ~@7 b3@17 ~@7 c4@18 ~@5 c4@22 ~@50 c4@19 ~@11 b3@35 ~@26, ~@36 d4@11 ~@120 g4@19 ~@54]/5",
  I: "~@24 f4@6 ~@5 f4@6 a4@7, ~@30 c4@13 ~@5", J: "b3@5 d4@7 g4@5 b3@6 ~ e4@5 c4@6 d4@6 e4@4 ~@3",
  K: "e4@3 b3@2 ~ e4@5 ~ e4@3 f4@3 c4@6 ~@24", L: "~@24 b3@17 ~@3 b3@4",
  M: "[~@2 c4@4 d4@4 ~ b3@24 ~@3 e4@6 ~@6 e4@6 g4@6 d4@6 ~@12 g4@5 e4@7 ~@6 e4@6 g4@5 f4@6 ~@7 f4@5 g4@6 f4@6 c4@5, ~@44 c4@17 ~@7 b3@17 ~@7 c4@18 ~@5 c4@22 ~@7, ~@74 d4@11 ~@59]/3",
  N: "~@2 e4@5 g4@6 c4@6 c5@6 b4@5 ~ a4@6 f4@6 c4@5",
  O: "[~ f4@6 a4@6 ~@6 d4@6 ~@6 d4@7 g4@23 ~ f2@3 ~@38 g4@6 ~@43 c4@6 ~@18 a4@6 ~@17 d4@6 ~@18 e4@6 ~@6 c4@5, ~@13 g4@19 ~@30 f4@12 f4@12 a4@23 g4@18 g4@6 a4@24 ~@25 d4@17 ~@12 c4@18 ~@11, ~@25 b3@35 ~@2 f3@47 e4@12 e4@18 g4@19 ~@6 c4@19 ~@10 g4@12 ~@12 d4@12 [d4,f4]@11, ~@68 c4@17 c4 f4@5 c4@22 ~@2 c4@30 e4@13 f4@12 f4@13 ~@5 f4@18 e4@17 ~@17, ~@80 g4@17 f4@12 e3@48 ~ d3@48 c3@34]/5", // Dm
  P: "[~@8 c4@5 ~@42 c4@6 ~@42 c4@6 ~ d4@6 ~@37 d4@5 ~@43 a4@8 d4@7 e4@6 ~@6 e4@6 g4@6, ~ [e4,g4]@12 ~ f3@47 e4@30 c4@6 e4@12 ~@7 d4@19 d5@24 ~@42 c5@14 ~@25, ~@14 f4@12 f4@18 g4@18 ~@5 c4@12 c4@6 f4@24 ~ f#4@12 f#4@18 d4@6 c5@12 ~@8 d4@12 d4@13 ~@3 d4@11 ~@17 c4@17 ~, ~@20 c4@29 f4@12 e3@48 ~ d3@49 g3@57 ~@24, ~@32 g4@6 a4@24 ~@11 g4@36 ~@19 a4@30 g4@14 g4@13 [g4,b4]@17 ~@38]/5", // Em G
  Q: "d4@6 ~@12 g4@5 ~ e4@6 ~@6 e4@6 g4@5 ~, ~@6 b3@17 ~@7 c4@18, ~@12 d4@11 ~@25",
  R: "f4 ~ f4 g4 f4 c4 e4 g4, ~@3 c4@11 ~@10",
  S: "[c4@5 c5@6 b4@5 ~ a4@6 f4@6 ~@6 f4@6 a4@6 ~@7 d4@6 ~@5 d4@7 g4@23 ~, ~@29 c4@18 g4@19 ~@30, ~@60 b3@35 ~]/2",
  T: "[f2@3 ~@21 c4@6 ~@11 g4@6 ~@43 c4@6, f3 e3, f4@2 f4@2 a4@4 g4@3 g4 a4@4, ~@3 c4@9 f4@3 c4@11 ~ c4@15 e4@6, ~@18 g4@18 f4@12 e4@11 e4@19 g4@18]/2",
  U: "~@19 a4@6 ~@17 d4@6, d3, f4@12 f4@13 ~@5 f4@18, ~@6 c4@19 d4@17 ~@6, ~@3 g4",
  V: "~@17 e4@6 ~@7 c4@6 ~@6 c4@5 ~, c3@47 ~, e4@17 ~@19 [e4,g4]@12, ~ c4@3 ~@4, ~@11 d4@12 [d4,f4]@12 ~@13", // Em Dm
  W: "[~@21 e4@6 ~@6 e4@6 g4@6 d4@6 ~@12 g4@5 e4@7 ~@6 e4@6 g4@5 f4@6 ~@7 f4@5 g4@6 f4@6 c4@7 e4@5 g4@6 c4@4, ~@27 c4@17 ~@7 b3@17 ~@7 c4@18 ~@5 c4@22 ~@24, ~@57 d4@11 ~@76]/3",
  X: "[~@2 c5@6 b4@5 ~ a4@6 f4@6 ~@6 f4@6 a4@6 ~@6 d4@6 ~@6 d4@7 ~ c6@142 ~@28, ~@26 c4@18 g4@19 ~@6 [c5,e5,g5]@144 ~@27, ~@14 b3@3 ~@43]/5", // C
})).s("gm_acoustic_guitar_steel").gain(0.35).pan(0.2)

// chords · epiano1 · "E.Piano"
const epiano1 = note(`<
  ~@2 A B@2 C@2 ~@3 D@8 E F@2 ~ G@5 H@8 I@2 J@7 K L M N O P@2 Q R@5 S T U@2 V@3 W@4 X Y@5 Z@3 AA AB@5 AC AD@3 AE@2 AF AG
  AE@2 AF AG AE@2 AH@7 ~@2
>`.pickRestart({
  A: "~@31 [f4,a4]@6 g4@6 f4@5, ~@31 g#4 ~@16", B: "[~@7 [e4,g4]@47 ~@42, c4@9 ~@7]/2",
  C: "[~@31 b4@47 ~@18, ~@7 c5@11 ~ c5@11 ~@66, ~@13 g4@64 ~@19, ~@25 d5@17 ~@54]/2",
  D: "[~@6 d4@13 e4@12 [c4,f4]@47 [c4,e4]@48 ~ [d4,f#4]@43 ~@6 g4@50 ~ [c4,e4]@25 [d4,f4]@23 [e4,g4]@22 ~@2 [c4,f4,g4]@24 [e4,g4]@46 ~ [c4,f4]@14, ~@58 d4@17 ~@53]/8", // F5 C D C Dm Em Csus4 Em …
  E: "~@10 [b3,d4]@25 ~@13", F: "[~@29 a5@30 ~@37, ~@11 a4@48 ~@37, ~@17 c5@42 ~@37, ~@23 d5@36 ~@37]/2",
  G: "[~@35 d4@12 e4@12 [c4,f4]@47 ~ [c4,e4]@48 [d4,f#4]@43 ~@31 [a3,c4]@11, ~@203 d4@37]/5", // F5 C D Am
  H: "[~@2 [b3,d4]@13 [c4,e4]@25 [d4,f4]@23 [e4,g4]@22 ~@2 [c4,f4,g4]@24 ~ [e4,g4]@46 ~ [c4,f4]@23 [b3,d4]@25 ~@24 a3@12 ~@6 c4@6 a3@12 ~@6 [c4,f4]@6 [g3,c4,e4]@12 ~ g3@11 ~@6 c4@6 e4@6 ~ e4@4 ~ [a3,c4,f4]@13 [a3,c4,f4]@11 ~ [g3,b3]@12 g3@6 g3@6 [g3,c4,e4]@8, ~@77 f4@8 ~@12 e4@8 ~@12 d4@4 ~@7, ~@231 c4@18 ~@6 [c4,f4]@18 ~@18 c4@18 ~@6 c4@11 ~@38 [b3,d4]@12 ~@8, ~@243 a3@12 ~@12 a3@12 ~@24 g3@18 g3@5 ~@58]/8", // Bm C Dm Em Csus4 Em F5 Bm …
  I: "[~ g3@2 g3@2 g3@2 g3@2 [g3,c4,e4]@4 [a3,c4]@14 a3@2 [c4,e4]@3, ~@3 [c4,e4]@12 [b3,d4]@13 ~@11 f4@48 ~@9]/2", // C Am C Bm
  J: "[~@15 e4@23 ~ c4@36 a3@6 c4@4 ~@2 [b3,d4]@25 [c4,e4]@12 [d4,f4]@11 ~@18 a5@27 ~@15 e5@6 g5@31 a4@26 ~@13 c5@12 [g4,b4]@28 [a4,c5]@14 [b4,d5]@11, ~@3 g3@33 ~@3 a3@30 ~@18 g3@48 ~@6 c5@43 ~@5 c5@43 ~@104, ~@9 c4@29 ~ f4@48 ~@48 a4@44 ~@4 g4@45 ~@36 a4@18 ~@54, ~@147 d5@36 ~@75 d5@14 ~@64]/7", // Bm C Dm G Am Bm
  K: "~@2 [c4,e4]@25 [d4,f4]@21", L: "~ [e4,g4]@11 ~ [c4,f4,g4]@11", M: "~ [e4,g4]@15", N: "~@2 [c4,f4]@23 [b3,d4]@23",
  O: "~@13 a3@6 ~@3 c4@2, ~@13 f4@11, ~@13 c4@9 ~@2, ~@19 a3@5",
  P: "[~@2 a3@12 ~@6 [c4,f4]@6 [g3,c4,e4]@12 ~ g3@11 ~@6 c4@6 e4@6 ~ e4@4 ~ [a3,c4,f4]@13 [a3,c4,f4]@9, ~ [c4,f4]@9 ~@9 e4@12 ~@17, ~@14 a3@12 ~@12 c4@18 ~@6 c4@11 ~@23, ~@50 g3@18 g3@5 ~@23]/2", // F5 C F F5
  Q: "~@3 [g3,b3]@12 g3@6 g3@6 [g3,c4,e4]@11 g3@6 g3@4, ~@2 d4@12 ~ [b3,d4]@12 ~@11 [c4,e4]@10", // G C Bm C
  R: "[~@2 g3@6 g3@6 [g3,c4,e4]@12 ~@18 a5@27 ~@15 e5@6 g5@31 a4@25 ~@14 c5@14 [g4,b4]@31 [a4,c5]@16 [b4,d5]@15 ~@2, ~@2 [b3,d4]@13 ~@11 a4@44 ~@4 g4@45 ~@36 a4@19 ~@66, ~@32 c5@43 ~@5 c5@43 ~@117, ~@19 d5@18 ~@37 d5@7 ~@39]/5", // C G Am Bm
  S: "[c4,e4]@24 [d4,f4]@23 ~", T: "[e4,g4]@22 ~ [c4,f4,g4]@24 ~", U: "[[e4,g4]@46 ~ [c4,f4]@24 [b3,d4]@25]/2",
  V: "[~@24 a3@12 ~@5 c4@6 ~@18 [c4,f4]@6 [g3,c4,e4]@13 g3@12 ~@5 c4@6 e4@6 ~ [g3,e4]@5 [a3,c4,f4]@13 [a3,c4,f4]@12, ~@24 f4@24 ~@36 e4@23 ~@37, ~@24 c4@17 ~@7 [c4,f4]@17 ~@19 c4@17 ~@6 c4@11 ~@26, ~@36 a3@11 a3@12 a3@12 ~@25 g3@18 ~@30]/3", // F5 C F F5
  W: "[[g3,b3,d4]@12 g3@6 g3@6 [g3,c4,e4]@11 ~ g3@5 g3@6 g3@6 ~ g3@6 [g3,c4,e4]@11 ~@18 a5@27 ~@15 e5@6 g5@31 a4@24, ~@12 [b3,d4]@12 ~@12 [c4,e4]@11 [b3,d4]@13 ~@11 a4@44 ~@4 g4@45 ~@28, ~@77 c5@43 ~@5 c5@43 ~@24, ~@83 d5@36 ~@73]/4", // G C Bm C Bm
  X: "~@12 c5@11 [g4,b4]@25, d5@13 ~@35, ~@3 a4@8 ~@13", // G
  Y: "[~@3 [a4,c5]@16 [b4,d5]@17 ~@2 [c4,e4]@24 [d4,f4]@23 ~ [e4,g4]@22 ~ [c4,f4,g4]@24 ~ [e4,g4]@46 ~ [c4,f4]@24 [b3,d4]@25 ~@10]/5", // Am Bm C Dm Em Csus4 Em F5 …
  Z: "[~@14 a3@12 ~@5 c4@6 ~ a3@11 ~@6 [c4,f4]@6 [g3,c4,e4]@13 g3@12 ~@5 c4@6 ~ e4@6 [g3,e4]@5 ~ f4@12 [a3,c4,f4]@12 [g3,b3,d4]@10, ~@7 f4@12 ~@18 e4@12 ~@23, ~@14 c4@17 ~@7 [c4,f4]@17 ~@19 c4@17 ~@6 c4@11 ~@36, ~@26 a3@12 ~@11 a3@12 ~@25 g3@18 ~@5 [a3,c4]@13 ~@22]/3", // F5 C F G F5 Am
  AA: "~@2 g3@6 g3@6 [g3,c4,e4]@11 ~ g3@6 g3@5 ~@7 g3@4, ~@2 [b3,d4]@12 ~@12 [c4,e4]@11 d4@11, ~@37 g3@6 ~@5, ~@19 b3@5", // C Bm C
  AB: "[~@2 [g3,c4,e4]@12 ~@17 a5@27 ~@15 e5@6 g5@31 a4@24 ~@12 c5@11 [g4,b4]@28 [a4,c5]@15 [b4,d5]@15 ~ [c4,e4]@24, ~@14 a4@44 ~@3 g4@45 ~@34 a4@16 ~@84, ~@19 c5@43 ~@5 c5@43 ~@130, ~@25 d5@36 ~@73 d5@13 ~@93]/5", // C G Am Bm C
  AC: "~ [d4,f4]@23 [e4,g4]@22 ~@2", AD: "[[c4,f4,g4]@24 [e4,g4]@46 ~ [c4,f4]@24 [b3,d4]@25 ~@24]/3",
  AE: "[a3@12 ~@6 c4@6 a3@12 ~@6 c4@5 [g3,c4,e4]@13 g3@12 ~@6 c4@6 e4@6 [g3,e4]@5 ~, f4@24 ~@17 f4@6 ~@13 e4@24 ~@12, c4@18 ~@6 [c4,f4]@18 ~@18 c4@18 ~@6 c4@11 ~, ~@2 a3@2 ~@2 a3@2 ~@4 g3@3 ~]/2", // C F5
  AF: "[a3,c4,f4]@13 [a3,c4,f4]@11 [g3,b3,d4]@12 g3@6 ~ g3@5, ~@3 [b3,d4]", // F G Bm
  AG: "~ [g3,c4,e4]@11 g3@6 g3@6 g3@6 g3@6 [g3,c4,e4]@12, ~@12 [c4,e4]@12 [b3,d4]@13 ~@11", // C Bm
  AH: "[[a3,c4,f4]@14 [a3,c4,f4]@15 [g3,b3,d4]@18 g3@12 ~@58 g4@23 g4@25 ~@71 [b3,d4]@96 ~@4, ~@47 b3@93 [c4,f4]@72 [c4,f4]@96 ~@28, ~@47 d4@22 e4@24 d4@96 ~@147, ~@59 g3@96 ~@181, ~@23 c4@8 f4@8 e4@16 [e4,g4]@32 ~@25]/7", // F G Bm F5 Em
})).s("gm_epiano1").gain(0.3).pan(0.9)

// other · french horn · "Horns"
const french_horn = note("<~@46 A@3 ~@9 B@4 ~@9 C D@3 ~@9 E@3 ~@13 F@6>".pickRestart({
  A: "[~@2 d4@12 c4@59 b3@48 ~@23]/3", B: "[~@47 d4@12 c4@59 b3@48 ~@26]/4", C: "~@37 d4@11",
  D: "[~ c4@59 b3@48 ~@36]/3", E: "[~@12 d4@6 c4@29 b3@24 ~]/3", F: "[~@20 d4@12 c4@59 b3@26 e4@144 ~@27]/6",
})).s("gm_french_horn").gain(0.4).pan(0.2)

// other · string ensemble 1 · "Strijkers"
const string_ensemble_1_2 = note("<~@98 A@8>".pickRestart({
  A: "[~@23 g5@7 ~ g5@6 ~ g5@5 ~@2 g5@10 f5@8 e5@6 c6@8 ~ c6@6 ~@2 c6@5 ~ c6@10 b5@8 a5@7 g5@8 ~ g5@7 ~ g5@5 ~@2 g5@8 f5@8 e5@7 d5@22 ~@2 g5@9 f5@9 e5@6 ~ c5@144 ~@27]/8",
})).s("gm_string_ensemble_1").gain(0.5)

stack(
// … 2 more lines

More by Rod Stewart