Strudelify
Compagno di scuola cover art

1999 · Lilly

Compagno di scuola

Antonello Venditti

KeyC majorTempo58 bpm
0:00/0:00
// Compagno di scuola — Antonello Venditti
// 58 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: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 87 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(58/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 B@2 C D E F G H G I J K L M N O P O Q R Q O S T Q U V O P O Q R Q O S W X@8 Y@8 Z@5 AA AB@2 AC@8 AD@3 AE@8 AF@3 AG@4
>`.pickRestart({
  A: "c4@2 ~@8 c4 ~ c5 [e4,g4] [e4,g4,b4]@2, [c2,c3]@11 c4 [c2,c3]@4, [e4,g4]@8 [e4,g4]@8 [e4,g4]@7 e4@3 ~@6, ~@2 c4@4 c4@4 ~ g4@2 c5@3", // Em C Em
  B: "[~@16 [f4,a4]@6 ~@4 c4@2 [c4,f4]@3 ~@21 c4@2 ~@2 c5@2 [e4,g4]@2 [e4,g4,b4]@4, [f2,f3]@23 ~ [f2,f3,a4]@8 [c2,c3]@22 g4@4 c5@6, [f4,a4]@8 [f4,a4]@8 ~@7 f4@5 ~@3 c4@4 ~ c4@8 c4@8 ~@2 c4@10, ~@4 c4@8 c4@10 c4@4 g4@5 ~ [e4,g4]@8 [e4,g4]@8 [e4,g4]@7 e4@3 ~@6, ~@7 [c2,c3]]/2", // F F5 Em F C F Em C
  C: "~@20 c4@2 g4 ~@5 [c4,f4]@4, [f2,f3]@23 ~ [f2,f3,a4]@8, [f4,a4]@8 [f4,a4]@8 [f4,a4]@7 f4@3 g4@6, ~@2 c4@4 c4@4 ~ c4@3 ~@2", // F5 F
  D: "~@10 c4 ~ c5 ~ [e4,b4]@2, [c2,c3]@23 e4@5 ~@4, [e4,g4]@8 [e4,g4]@8 [e4,g4]@7 c4@9, ~@2 c4@4 c4@4 ~ g4 [c2,c3]@4, ~@13 [g4,c5]@3", // E5 C Em C C5
  E: "~@20 c4@2 ~@4 c4@2 [c4,f4]@3 ~, [f2,f3]@23 f3@8 ~, [f4,a4]@8 [f4,a4]@8 [f4,a4]@7 f4@5 ~@4, ~@4 c4@8 c4@8 ~@2 c4@2 [f2,a4]@7 ~, ~@26 g4@5 ~", // F5 F
  F: "~@20 c4@3 ~ c5@2 ~@2 [e4,b4]@4, [c2,c3], [e4,g4]!2 g4@2, ~@4 c4@8 c4@8 ~@3 c4@9, ~@16 e4@7 e4@3 c5@6", // E5 C Em
  G: "~@7 c4, [f2,f3], [f4,a4]!4, ~ c4@2 c4@2 c4@2 ~", // F
  H: "~@12 c5 [c4,e4] [c4,e4,b4]@2, [c2,c3], [e4,g4]@8 [e4,g4]@8 [e4,g4]@7 [e4,g4]@3 [g4,c5]@6, ~@2 c4@4 c4@4 c4@3 ~@3", // C Cmaj7 C Em C5
  I: "~@7 c4, [c2,c3], [e4,g4]!4, ~ c4@2 c4@2 c4@2 ~", // C Em
  J: "~@28 c4@3 ~, [f2,f3]@31 ~, [f4,a4]@8 [f4,a4]@8 [f4,a4]@8 [f4,a4]@7 ~, ~ c4@2 c4@2 c4@2 ~", // F
  K: "~@8 g4@2 [c4,g4] ~ c5 ~ [e4,b4]@2, [c2,c3], [e4,g4]@8 [e4,g4]@8 e4@7 g4@8 ~, ~@4 c4@8 c4@8 ~@2 c4@9 ~, ~@23 e4@3 c5@6", // C5 E5 C Em
  L: "~@12 [f4,a4]@3 ~, [f2,f3]@15 ~, [f4,a4]!3 ~, ~@2 c4@4 c4@4 c4@5 ~", // F
  M: "~@7 a3, a2, [c4,e4]!4, ~ a3@2 a3@2 a3@2 ~", // C
  N: "~@8 [d4,g4]@3 ~ [g4,b4]@4, g2@31 ~, [b3,d4]@8 [b3,d4]@6 b3@17 ~, ~@4 g3@8 g3@19 ~, ~@22 d4@9 ~", // G5 G Bm
  O: "~@7 g3, [c2,c3], [c4,e4]!4, ~ g3@2 g3@2 g3@2 ~", // C
  P: "~@7 a3, [f2,f3], [c4,e4]@8 [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 ~, ~ a3@2 a3@2 a3@2 ~", // F C
  Q: "~@28 a3@3 ~, [f2,f3]@31 ~, [c4,e4]@8 [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 ~, ~ a3@2 a3@2 a3@2 ~", // F C
  R: "~@28 g3@3 ~, [c2,c3], [c4,e4]@8 [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 ~, ~ g3@2 g3@2 g3@2 ~", // C
  S: "~@28 a3@3 ~, [f2,f3], [c4,e4]@8 [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 ~, ~ a3@2 a3@2 a3@2 ~", // F C
  T: "~@28 g3@3 ~, [c2,c3]@31 ~, [c4,e4]@8 [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 ~, ~ g3@2 g3@2 g3@2 ~", // C
  U: "a3 ~@6 a3, a2, [c4,e4]!4, ~ a3@2 a3@2 a3@2 ~", V: "~@6 b3!2, g2, [b3,d4]!3 [d4,g4], ~ g3@2 g3@2 g3@3",
  W: "a3@4 ~@23 a3@4 [g2,b3,d4], a2@31 ~, [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 [c4,e4]@8 ~, ~@4 a3@8 a3@7 a3@8 ~@5", // G C
  X: "[~@23 b3@4 b3@4 ~@27 g3@4 ~@28 a3@3 ~@28 g3@4 ~@27 a3@3 ~@28 g3@3 ~@28 a3@3 ~@28 g3@3 ~@5 a3@3, ~@3 g3@8 g3@8 g3@12 [c2,c3]@31 [f2,f3]@31 ~ [c2,c3]@31 [f2,f3]@30 ~ [c2,c3]@31 [f2,f3]@30 ~ [c2,c3]@31 [f2,f3,c4,e4]@7, ~@7 [b3,d4]@8 [b3,d4]@8 [d4,g4]@8 [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 [c4,e4]@8 [c4,e4]@8 [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 ~ [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@8 [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 [c4,e4]@8 [c4,e4]@7 [c4,e4]@8 [c4,e4]@7 ~ [c4,e4]@8 [c4,e4]@7 [c4,e4]@8 [c4,e4]@7 ~ [c4,e4]@8 [c4,e4]@7 c4@8 [c4,e4]@7 ~@8, ~@35 g3@8 g3@8 g3@7 ~@8 a3@8 a3@8 a3@8 ~@8 g3@8 g3@8 g3@7 ~@8 a3@8 a3@8 a3@7 ~@8 g3@8 g3@7 g3@8 ~@8 a3@8 a3@7 a3@8 ~@8 g3@8 g3@7 g3@8 ~@11, ~@234 e4@7 ~@15]/8", // C F C F C F C Fmaj7 …
  Y: "[~@20 a3@3 ~@28 g3@3 ~@28 a3@3 ~ a3@4 ~@22 a3@4 ~@23 b3@4 b3@4 ~@26 g3@3 ~@27 a3@3 ~@26 g3@3 ~@16 [c4,e4]@4 a3, ~ [c4,e4]@8 [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@8 [c4,e4]@7 [c4,e4]@8 [c4,e4]@7 ~ [c4,e4]@7 [c4,e4]@8 [c4,e4]@7 [c4,e4]@8 [b3,d4]@8 [b3,d4]@7 [b3,d4]@8 [d4,g4]@8 [c4,e4]@7 [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@7 [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 [c4,e4]@7 [c4,e4]@8 [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@7 [c4,e4]@8 [c4,e4]@7 ~@5, ~@5 a3@7 a3@8 ~@4 [c2,c3]@30 ~ [f2,f3]@30 ~ a2@30 g2@31 [c2,c3]@30 ~@3 a3@8 a3@7 a3@7 ~@8 g3@8 g3@7 g3@7 ~@8 a3@7 a3@7 ~@2, ~@28 g3@8 g3@7 g3@8 ~@8 a3@8 a3@7 a3@8 ~@8 a3@7 a3@8 a3@7 ~@8 g3@7 g3@8 g3@12 ~@3 g3@7 ~ g3@7 g3@7 ~@4 [f2,f3]@30 [c2,c3]@30 [f2,f3]@20]/8", // C Bm G5 C F C F C …
  Z: "[~@6 a3@3 ~@28 g3@3 ~@27 a3@3 ~@27 g3@3 ~@28 a3@3 ~@27 g3@2, ~@3 [c4,e4]@7 [c2,c3]@30 [f2,f3]@30 ~ [c2,c3]@30 [f2,f3]@30 ~ [c2,c3]@28, ~@10 [c4,e4]@8 [c4,e4]@7 [c4,e4]@8 [c4,e4]@7 [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@7 [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 [c4,e4]@8 [c4,e4]@8 [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@7 [c4,e4]@8 [c4,e4]@8 [c4,e4]@5, ~@14 g3@7 g3@8 g3@8 ~@7 a3@8 a3@7 a3@8 ~@8 g3@7 g3@7 ~ g3@7 ~@8 a3@8 a3@7 a3@7 ~@9 g3@7 g3@8 g3@7 ~@2]/5", // C F C F C
  AA: "~@29 a3@3, ~@2 [f2,f3]@29 ~, ~@2 [c4,e4]@8 [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@7, ~@6 a3@8 a3@7 a3@7 ~@4", // F C
  AB: "[a3@3 ~@23 a3@4 ~@23 b3@4 b3@3 c5@2 d5@2, a2@15 g2@15 c2@2, [c4,e4]@7 ~ [c4,e4]@7 [c4,e4]@8 [c4,e4]@7 [b3,d4]@7 ~ [b3,d4]@7 [b3,d4]@8 [d4,g4]@7 ~@4, ~@4 a3@7 a3@8 a3@7 ~@8 g3@7 g3@8 g3@11 ~@4]/2", // C Bm G5
  AC: "[[g3,e5]@2 f5@2 ~ d5@2 [g3,e5]@2 f5@2 c5@2 d5@2 [g3,e5]@2 f5@2 ~ d5@2 e5@2 f5@2 ~@11 [a3,e5]@2 f5@2 ~@11 [a3,e5]@2 f5@2 ~@13 f5@2 ~@11 [g3,e5]@2 f5@2 ~@13 f5@2 c5@2 ~@11 f5@2 ~@13 f5@2 ~@13 f5@2 ~@13 f5@2 ~@12 f5@2 ~@13 f5@2 ~@13 f5@2 ~@13 f5@2 ~@11 [a3,e5]@2 f5 ~ [c4,e4,a4]@7 [c4,e4,a4]@7 [c4,e4,a4]@7, ~@4 [c4,e4]@4 ~@3 [c4,e4]@4 ~@7 g3 ~@3 [f2,f3]@29 ~ [c2,c3]@29 ~ [f2,f3]@30 [c2,c3]@30 [f2,f3]@29 [c2,c3]@29 ~ [f2,f3]@29 ~ a2@21, ~@4 c5@2 ~@13 c5@2 ~@5 [c4,e4,c5]@6 f5@7 ~@6 [a3,e5]@5 d5@5 ~@3 d5@5 c5@4 [g3,e5]@4 ~@4 [g3,e5]@4 [c4,e4]@7 [c4,e4,c5]@6 f5@5 [a3,e5]@5 ~@3 [a3,e5]@5 d5@6 ~@2 d5@4 f5@5 [g3,e5]@4 ~@3 g3@4 [c4,e4,c5]@7 ~ [c4,e4,c5]@5 f5@6 [a3,e5]@4 ~@3 [a3,e5]@6 d5@5 ~@2 d5@6 [c4,e4,c5]@4 g3@4 ~@3 [g3,e5]@5 d5@5 ~@3 d5@5 [c4,e4,c5]@7 ~ [c4,e4,c5]@4 a3@3 [c4,e4,c5]@6 ~@23, ~@28 d5@6 [c4,e4,c5]@7 [c4,e4,c5]@6 f5@7 ~@6 [g3,e5]@4 [c4,e4]@7 [c4,e4,c5]@5 f5@4 d5@5 ~@3 d5@5 [c4,e4,c5]@8 [c4,e4]@5 f5@6 [a3,e5]@4 ~@3 g3@4 [c4,e4,c5]@8 [c4,e4,c5]@4 e5@5 d5@6 ~@2 d5@5 [c4,e4,c5]@7 ~ [c4,e4,c5]@5 f5@6 [a3,e5]@3 ~@4 [g3,e5]@6 d5@6 ~ d5@6 [c4,e4,c5]@7 [c4,e4,c5]@6 f5@5 [a3,e5]@4 ~@3 e5@6 d5@4 ~@23, ~@30 [a3,e5]@5 d5@5 ~@3 d5@6 [c4,e4,c5]@6 ~ [c4,e4,c5]@6 f5@3 d5@6 ~@2 d5@5 c5@7 ~@5 [a3,e5]@5 d5@7 ~ d5@5 [c4,e4,c5]@8 [c4,e4,c5]@4 e5@5 d5@6 ~@2 d5@3 f5@6 [g3,e5]@4 ~@4 [a3,e5]@5 d5@6 ~@2 d5@5 [c4,e4,c5]@6 ~ [c4,e4,c5]@6 f5@5 e5@4 [c4,e4,c5]@6 f5@5 [g3,e5]@4 ~@4 [a3,e5]@5 d5@6 ~ d5@4 f5@7 ~@24]/8", // C A5 C A5 Am C F C …
  AD: "[~ [c4,e4,a4]@7 [b3,d4,g4]@7 [b3,d4,g4]@7 ~ [b3,d4,g4]@7 [b3,d4,g4]@7 ~ [b3,d4,g4]@7 [b3,d4,g4]@7 [b3,d4,g4]@2 [b3,d4,g4]@2 [b3,d4,g4]@2 [b3,d4,g4]@2 [b3,d4,g4]@2 [b3,d4,g4] [b3,d4,g4]@2 [b3,d4,g4] ~@12 g3@4 ~@11 g3@3, ~@8 g2@58 ~ c3@29, ~@67 [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@7 [c4,e4]@7, ~@71 g3@7 ~@7 g3@7 ~@4]/3", // Am G C
  AE: "[~@11 a3@4 ~@11 a3@4 ~@11 a3@4 ~@10 a3@4 ~@11 g3@4 ~@11 g3@3 ~@12 g3@3 ~@11 g3@4 ~@11 a3@4 ~@11 a3@3 ~@12 a3@3 ~@11 a3@3 ~@12 g3@4 ~@11 g3@3 ~@12 g3@3 ~@11 g3@4 ~@11 a3@4 ~@3 a3@2, f2@30 [d4,f4]@7 [d4,f4]@7 ~ [d4,f4]@7 [d4,f4]@7 [b3,d4]@7 ~ [b3,d4]@7 [b3,d4]@7 [b3,d4]@7 ~ [c4,e4]@7 [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@7 [c4,e4]@7 [c4,e4]@7 ~ [d4,f4]@7 [d4,f4]@7 [d4,f4]@7 ~ [d4,f4]@7 ~@4 g3@7 ~@7 g3@7 ~@8 g3@7 ~@8 g3@7 ~@8 a3@7 ~@9, [c4,e4]@8 [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@8 ~@3 a3@7 ~@7 a3@7 ~@4 g2@29 ~ c3@29 f2@29 ~@4 a3@7 ~@8 a3@7 ~@4 [b3,d4]@7 [b3,d4]@7 ~ [b3,d4]@7 [b3,d4]@7 ~ [c4,e4]@7 [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@7 [c4,e4]@8 [c4,e4]@7 [c4,e4]@5, ~@4 a3@7 ~@8 a3@7 ~@4 d3@30 ~@3 g3@7 ~@8 g3@7 ~@7 g3@7 ~@8 g3@7 ~@8 a3@7 ~@8 a3@7 ~@4 d3@29 g2@29 ~ c3@29 f2@16 ~@4]/8", // Dm Bm C Dm C Bm C
  AF: "[~@6 a3@3 ~@11 a3@4 ~@11 a3@4 ~@11 g3@4 ~@11 g3@3 ~@11 g3@4 ~@11 g3@2, ~@2 [c4,e4]@7 ~ d3@29 g2@29 c3@28, ~@10 [d4,f4]@7 [d4,f4]@7 [d4,f4]@7 ~ [d4,f4]@7 ~@4 g3@7 ~@7 g3@7 ~@8 g3@7 ~@8 g3@7 ~@2, ~@13 a3@7 ~@8 a3@7 ~@4 [b3,d4]@7 [b3,d4]@7 ~ [b3,d4]@7 [b3,d4]@7 [c4,e4]@7 ~ [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@5]/3", // C Dm Bm C
  AG: "[~@13 a3@4 ~@11 a3@3 ~@11 a3@4 ~@11 a3@4 ~@11 g3@3 ~@8 [b3,d4]@4 g3@2 ~ [g4,c5,e5]@26 ~@12, ~@2 f2@29 ~@4 a3@7 ~@8 a3@7 ~@4 [b3,d4]@7 [b3,d4]@7 [b3,d4]@8 ~@6 e4@26 ~@13, ~@2 [c4,e4]@7 [c4,e4]@7 ~ [c4,e4]@7 [c4,e4]@7 [d4,f4]@7 ~ [d4,f4]@7 [d4,f4]@7 [d4,f4]@8 ~@3 g3@7 ~@8 g3@7 ~@42, ~@6 a3@7 ~@7 a3@7 ~@4 d3@30 g2@29 ~@38]/4", // Bm C Bm C Dm
})).s("gm_piano").gain(0.45).pan(0.4)

// bass · fretless bass · "BASSO"
const bass = note(`<
  ~@14 A B C D C D C D E D C F A B C D C D C D E D A G@7 H@5 I@7 J@2 K L@8 M@4 N O@5 P Q@3 R@2 S@4
>`.pickRestart({
  A: "a1@13 ~ e2@2 a1@12 e2@2 a1@2", B: "g1@16 g2@15 ~", C: "c2", D: "f2", E: "c2@13 ~ c2@2", F: "f2@7 ~",
  G: "[g1@15 g2@15 ~ c2@31 f2@31 ~ c2@31 f2@31 c2@31 f2@31 c2@6]/7",
  H: "[~@21 c2@4 f2@31 c2@31 f2@27 ~@4 a1@13 e2@2 a1@11 e2@2 a1@2 g1@12]/5",
  I: "[~@3 g2@15 ~ c2@29 f2@30 c2@30 f2@30 c2@30 f2@30 ~ c2@25]/7", J: "[~@2 c2@3 f2@30 ~ c2@28]/2", K: "~ f2@13 ~@2",
  L: "[a1@13 e2@2 a1@11 ~ e2 a1@2 g1@15 g2@14 ~ c2@14 ~ c2@14 ~ f2@30 c2@30 f2@30 c2@30 f2@30 c2@16]/8",
  M: "[~@9 c2@4 f2@29 ~ a1@12 e2@2 a1@11 e2@2 a1@2 g1@13 c2@2 d2 ~@2 c2@4 b1@4 c2@2 g2@14 g2 ~ g2 ~ g2 ~ g2 ~ g2 ~ g2!2 ~ g2, ~@89 d2@2 ~@37]/4",
  N: "~ g2 ~ c2@13 g2@2 c2@10 ~ c2@3",
  O: "[f2@13 c2@2 f2@7 e2@7 ~ d2@12 ~ d2 ~ d2@10 ~ d2@3 g2@13 d2@2 g2@2 d2@2 d3@2 c3@3 b2@2 a2@2 g2@2 c2@12 ~ c2 ~ c2@7 g2@7 f2@13 c2@2 f2@2 c2@2 f2@5 e2@5 ~ d2@11 ~]/5",
  P: "~ d2 d2@7 ~ a2@3 d2@4 g2@13 d2@2",
  Q: "[g2@5 d3@4 c3@2 b2@2 ~@2 c2@13 ~ c2@10 ~ c2@3 ~ f2@13 c2@2 f2@7 e2@7 ~ d2@12 d2 ~ d2@8, ~@14 g2 ~@33]/3",
  R: "[~@3 d2@4 g2@13 d2@2 g2@2 ~ d3@2 c3@4 b2@2 a2@2 ~ c2@12 ~ c2 ~ c2@7 ~ g2@5, ~@24 d2@2 ~@9 g2@2 ~@27]/2",
  S: "[~@2 f2@13 c2@2 ~ c2@2 f2@6 e2@5 d2@11 ~@2 d2 ~ d2@7 a2@4 d2@4 g2@13 d2@2 g2@5 d3@4 c3@2 ~ g1@2 c2@30 ~@8, ~@17 f2@2 ~@68 b2@2 ~@39]/4",
})).s("gm_fretless_bass").gain(0.52)

// chords · acoustic guitar steel · "STEEL GT"
const acoustic_guitar_steel = note(`<
  ~@9 A@6 B@6 C@5 D@7 E@3 F@8 G@4 H I J@7 K L M@6 N@4 O@3 P Q@2 R@2 S@6 T@2 U@2
>`.pickRestart({
  A: "[~@52 c4@8 ~@20 a4@13 ~@23 e4@10 ~@14 a4@11 ~@9 e4@28 ~@3 [d3,b3,d4], ~@29 e3@25 ~@8 [f3,a3]@28 ~@4 [e3,g3]@29 ~@3 [f3,a3]@26 ~@7 [e3,c4]@29 ~@4, ~@30 c3@25 ~@8 [c3,c4]@27 ~@5 c3@28 ~@4 c3@25 ~@40, ~@31 g3@25 ~@39 c4@12 ~ c4@15 ~@5 [c4,f4]@25 ~@5 a3@30 ~@2 g3@2, ~@31 c4 e4@23 ~@5 e4@4 f4@26 ~@6 e4@19 ~@77]/6", // G F Em F C F5
  B: "[~@24 g4@6 ~@2 [e3,e4]@29 ~@3 [f3,e4]@29 ~@3 e4@29 ~@3 e4@29 ~@3 e4@29 ~@2 [f3,a3], ~@14 g3@15 ~@2 [g3,c4]@30 ~ a3@30 ~@2 g3@30 ~@2 a3@30 ~@2 g3@30 ~@4, ~@15 [d3,b3]@15 ~@65 [c3,e3,c4]@29 ~@3 [f3,c4]@29 ~@3 [c3,e3,c4]@30 ~@3, ~@16 d4@15 ~@32 c4@30 ~@99]/6", // E Fmaj7 F C5 G C F5 C
  C: "[[c4,e4]@29 ~@3 [c3,e4]@30 ~@2 e4@29 ~@3 [c3,e4]@30 ~@2 e4@28 ~@4, ~@30 g3@30 ~@34 g3@30 ~@2 a3@29 ~@5, ~@31 [e3,c4]@30 ~@2 [c3,f3,a3,c4]@30 ~@2 [e3,c4]@30 ~@2 [c3,f3,c4]@29 ~@4]/5", // C F C F5
  D: "[~@32 d4@13 ~@11 g4@6 ~@2 e4@28 ~@4 [f3,e4]@29 ~@3 [c4,e4]@29 ~@3 [f3,e4]@29 ~@3 e4@29 ~@2 c4, ~@15 g3@7 ~ g3@7 ~ g3@15 ~ a3@15 ~ g3@15 ~ a3@15 ~@18, ~@31 [d3,b3]@14 ~@2 [d3,b3]@15 ~ [e3,c4]@29 ~@35 [c3,e3]@30 ~@34 [e3,c4]@30 ~@3, ~@48 d4@15 ~@32 c4@30 ~@34 c4@30 ~@35]/7", // Fmaj7 C Fmaj7 G C
  E: "[[f3,e4]@29 ~@3 e4@29 ~@3 e4@29 ~@3, ~@31 [e3,c4]@30 ~@2 [f3,c4]@30 ~@3]/3", // Fmaj7 C F5
  F: "[~@31 d4@13 ~@11 g4@6 ~@2 [e3,e4]@13 ~@3 [e3,e4]@13 ~@3 e4@13 ~@2 [f3,e4]@13 ~@3 e4@13 ~@3 e4@12 ~@3 [f3,e4]@13 ~@3 e4@13 ~@2 [e3,c4,e4]@13 ~@3 [e3,e4]@13 ~@2 [f3,e4]@13 ~@3 e4@13 ~@3 e4@5, ~@30 [d3,g3,b3]@14 ~@2 [d3,g3,b3]@15 g3@14 ~@2 g3@14 ~@2 a3@14 ~@2 [a3,c4]@14 ~ g3@14 ~@2 g3@14 ~@2 [a3,c4]@14 ~ [a3,c4]@14 ~@2 g3@14 ~ g3@14 ~@2 [a3,c4]@14 ~ a3@14 ~@2 g3@7, ~@47 d4@14 ~ c4@12 ~@4 c4@12 ~@4 [f3,c4]@15 ~@16 [e3,c4]@13 ~@3 [e3,c4]@13 ~@18 f3@12 ~@19 c4@12 ~@19 [f3,c4]@14 ~@2 [e3,c4]@6]/8", // E Fmaj7 C E Fmaj7 G Am F5 …
  G: "[~@10 [e3,e4]@13 ~@3 e4@13 ~@2 e4@13 ~@2 e4@13 ~@2 [e3,c4,e4]@13 ~@3 e4@13 ~@2 e4@13 ~@13, ~@9 [g3,c4]@14 ~ a3@14 ~ a3@14 ~ g3@14 ~@2 g3@14 ~ a3@14 ~ a3@14 ~@14, ~@25 [f3,c4]@14 ~ [f3,c4]@14 ~ [e3,c4]@13 ~@18 [f3,c4]@14 ~ [f3,c4]@14 ~@13]/4", // E C C5 F5 C F5
  H: "~@5 d4@3, ~@9 g3@7, ~@19 [d3,b3]@13", // G
  I: "~@11 g4@6 ~@2 e4@13, ~@2 [d3,g3,b3]@15 g3@14 ~, ~@3 d4@14 ~ [e3,c4]@12 ~@2", // G C
  J: "[~@2 e4@11 ~@4 e4@12 ~@3 e4@12 ~@2 [e3,e4]@13 ~@2 [e3,c4,e4]@12 ~@3 [f3,e4]@12 ~@3 e4@12 ~@3 [e3,c4,e4]@12 ~@4 e4@11 ~@4 e4@13 ~@2 e4@13 ~@2 [e3,c4,e4]@13 ~@3 e4@11 ~@4 e4@13 ~@2 e4@11, g3@14 ~ a3@14 ~ [a3,c4]@14 ~ [g3,c4]@14 ~ g3@14 ~ [a3,c4]@14 a3@14 ~@2 g3@14 ~ g3@14 ~ a3@14 ~ a3@14 ~@2 g3@14 ~ g3@14 ~ a3@14 ~ a3@13, ~ [e3,c4]@12 ~@3 [f3,c4]@14 ~ f3@12 ~@47 [f3,c4]@14 ~@17 [e3,c4]@13 ~@2 [f3,c4]@14 ~ [f3,c4]@14 ~@17 [e3,c4]@13 ~@2 [f3,c4]@14 ~ [f3,c4]@12]/7", // E C Fmaj7 C Am C5 Am C …
  K: "~@4 e4@13 ~@2 [e3,e4]@13, ~@2 g3@14 ~ g3@14 ~, ~@3 [e3,c4]@13 ~@2 c4@12 ~@2", // E C
  L: "~@2 e4@13 ~@2 e4@12 ~@3, a3@7 ~@9, ~ [f3,c4]@14 ~ [f3,a3,c4]@14 ~@2", // F5 F
  M: "[~@31 d4@12 ~@9 g4@6 ~@3 e4@13 ~@2 e4@11 ~@4 e4@12 ~@3 e4@12 ~@3 e4@13 ~@2 e4@11 ~@4 e4@12 ~@2 e4@12 ~@3 e4@12, ~@29 [d3,g3,b3]@13 ~@2 [d3,g3,b3]@14 ~ g3@14 ~ g3@14 ~ a3@14 ~ [a3,c4]@14 ~ g3@14 ~ g3@14 ~ a3@14 ~ [a3,c4]@14 g3@14, ~@45 d4@14 ~ c4@12 ~@3 c4@12 ~@3 c4@14 ~@16 c4@12 ~@3 c4@12 ~@3 c4@14 ~@15 c4@12 ~]/6", // G Am
  N: "[~@3 e4@11 ~@4 e4@12 ~@3 e4@12 ~@3 e4@12 ~@3 e4@11 ~@4 e4@12 ~@2 [f3,e4]@12 ~@3 [a3,c4,e4]@7 e3@3 ~@2 c4@2 [e3,a3,c4,e4]@4 [e3,a3,c4,e4]@3, ~ g3@14 ~ a3@14 ~ a3@14 ~ g3@13 ~@2 g3@13 ~@2 a3@14 ~ [a3,c4]@14 ~@9 [a3,c4,e4]@7 ~@7, ~@2 c4@12 ~@3 c4@14 ~ c4@14 ~ c4@12 ~@3 c4@12 ~@3 [f3,c4]@14 ~@15 e3@8 ~@3 e3@4 ~@7]/4", // Fmaj7 Am F5
  O: "[~ [e3,a3,c4,e4]@3 [e3,a3,c4,e4]@3 ~ d3@4 d3@3 [d3,g3,b3,d4]@4 [d3,g3,b3]@2 [d3,g3,b3,d4]@6 [d3,g3,b3,d4]@3 [d3,g3,b3]@4 [d3,g3,b3]@2 [d3,g3,b3] [d3,g3,b3,d4]@4 [d3,g3,b3,d4]@2 [d3,g3,b3,d4]@2 [d3,g3,b3]@4 [d3,g3,b3] [d3,g3,b3]@2 [d3,g3,b3,d4]@2 [d3,g3,b3]@2 [d3,g3,b3,d4]@2 [d3,g3,b3,d4] [d3,g3,b3,d4]@2 [d3,g3,b3,d4]@2 [d3,g3,b3,d4]@2 [d3,g3,b3,d4]@2 [c4,e4]@4 [e3,g3,c4,e4]@3 [e3,g3,c4,e4]@4 [e3,g3,c4]@2 [e3,g3,c4]@3 [e3,g3,c4]@2 [e3,g3,c4,e4]@4 [e3,g3,c4,e4]@3 ~ c4 [g3,c4]@2, ~@8 [g3,b3,d4]@7 ~@15 d4@7 ~@8 d4@7 ~@28 e4@5 ~@7 g3@2 ~@2, ~@31 [e3,e4]]/3", // Am G C C5 G E
  P: "[f3,a3,c4,e4]@4 [f3,a3,c4,e4]@4 [f3,a3,c4,e4]@3 [f3,a3,c4,e4]@2 [f3,a3,c4,e4]@4 [f3,a3,c4,e4]@2 [f3,a3,c4,e4]@5 [f3,a3,c4,e4]@4 [f3,a3,c4,e4]@2 [f3,a3,d4,f4]@2", // Fmaj7 Dm
  Q: "[~ [f3,a3,d4,f4]@4 [f3,a3,d4,f4]@4 [f3,a3,d4]@2 [f3,a3,d4]@3 [f3,a3,d4]@2 [f3,a3,d4,f4]@4 [f3,a3,d4]@2 ~@3 [a3,d4]@2 [g3,b3,d4,g4]@4 [g3,b3,d4,g4]@4 [g3,b3]@3 [g3,b3]@2 [g3,b3,d4,g4]@4 [g3,b3]@2 [g3,b3,d4] [g3,b3,d4]@2 [g3,b3,d4,g4]@2 [g3,b3,d4]@2 [g3,b3,d4]@3 ~ [g3,c4,e4]@3 [e3,g3,c4,e4]@4, ~@11 f4@5 ~@6 [f3,a3,d4,f4]@2 [f3,f4]@4 ~@28 e3@4 ~@4, ~@23 [a3,d4]@2 ~@10 [d4,g4]@5 ~@6 g4@3 ~@2 g4@5 ~@8]/2", // Dm D5 G C Dm F D5 G5
  R: "[[e3,g3,c4,e4]@4 [e3,g3,c4]@2 [e3,g3,c4]@3 [e3,g3,c4]@2 [e3,g3,c4,e4]@4 [e3,g3,c4]@2 [e3,g3,c4] ~@2 [g3,c4]@2 [f3,a3,c4,e4]@4 [f3,a3,c4,e4]@4 [f3,a3,c4]@3 [f3,a3,c4]@2 [f3,a3,c4,e4]@4 [f3,a3,c4,e4] [f3,a3,c4,e4]@4 [f3,a3,c4,e4]@2 [f3,a3,c4,e4]@2 [f3,a3,c4,e4]@3 ~ [d4,f4]@3 [f3,a3,d4,f4]@4 [f3,a3,d4,f4]@4 [f3,a3,d4], ~@6 e4@5 ~@4 e4@3 [e3,g3,c4]@2 ~@31 [f3,a3]@4 ~@9, ~@19 e4@3 ~@8 e4@5 ~@29]/2", // C C5 Fmaj7 F Fmaj7 Dm C F
  S: "[[f3,a3,d4,f4]@4 [f3,a3,d4,f4]@2 [f3,a3,d4]@3 [f3,a3,d4]@2 [f3,a3,d4]@2 [f3,a3,d4]@3 ~ [b3,d4,g4]@4 [g3,b3,d4,g4]@3 [g3,b3,d4,g4]@4 [g3,b3,d4,g4] ~ [g3,b3,d4,g4]@4 [g3,b3,d4] [g3,b3,d4,g4]@4 [g3,b3,d4,g4]@2 [g3,b3,d4,g4]@2 [g3,b3,d4,g4]@2 [g3,b3,d4,g4] ~ [c4,e4]@3 [e3,g3,c4,e4]@4 [e3,g3,c4,e4]@4 [e3,g3,c4] ~ [e3,g3,c4]@3 [e3,g3,c4]@2 [e3,g3,c4,e4]@4 [e3,g3,c4,e4]@3 [e3,g3,c4,e4]@2 [g3,c4] ~ [f3,a3,c4,e4]@4 [f3,a3,c4,e4]@3 [f3,a3,c4,e4]@4 [f3,a3,c4,e4]@2 [f3,a3,c4,e4]@3 ~ [f3,c4,e4] [f3,a3,c4,e4]@5 ~ [f3,a3,c4,e4]@3 ~@3 f4@3 [f3,a3,d4,f4]@4 [f3,a3,d4,f4]@4 [f3,a3,d4] [f3,a3,d4,f4]@4 [f3,a3,d4]@2 [f3,a3,d4]@3 [f3,a3,d4]@2 [f3,a3,d4,f4]@2 [a3,d4]@2 [a3,d4]@2 [g3,b3,d4,g4]@4 [g3,b3,d4,g4]@3 [g3,b3,d4,g4]@4 [g3,b3]@2 [g3,b3]@3 [g3,b3]@2 [g3,b3,d4]@2 [g3,b3,d4]@2 [g3,b3,d4,g4]@2 [g3,b3,d4]@2 [g3,b3,d4]@3 [e3,g3,c4,e4]@4 [e3,g3,c4,e4]@4 [e3,g3,c4]@3 [e3,g3,c4]@2 [e3,g3,c4,e4]@4 [e3,g3,c4]@2 [e3,g3,c4,e4]@3 [e3,g3,c4]@2 ~ c4 [e3,g3,c4,e4]@2, ~@6 f4@5 f4@5 g3@4 ~@40 e4@5 ~@27 a3@2 ~@9 [f3,a3,c4]@2 [f3,a3,d4]@4 ~@22 [f3,f4]@4 ~@53 [e3,g3]@2 ~@2, ~@104 e4@2 ~@18 f4@5 ~@19 [d4,g4]@5 g4@4 ~@2 g4@5 ~@8 e4@5 ~@9 e4@4 ~@2]/6", // Dm G C C5 Fmaj7 Dm D5 G …
  T: "[~@2 [a3,c4,e4]@3 [f3,a3,c4,e4]@4 [f3,a3,c4,e4]@4 [f3,a3,c4]@2 [f3,a3,c4,e4]@3 [f3,a3,c4,e4]@2 [f3,a3,c4,e4]@4 [f3,a3,c4,e4]@2 ~@2 [f3,e4]@3 [f3,a3,d4,f4]@4 [f3,a3,d4,f4]@4 [f3,a3,d4]@3 [f3,a3,d4]@2 [f3,a3,d4,f4]@4 [f3,a3,d4,f4]@2 [f3,a3,d4]@3 [f3,a3,d4]@2 [f3,a3,d4]@2 [f3,a3,d4]@3 ~ [d4,g4]@3, [g3,c4]@2 ~@25 [a3,c4]@4 ~@8 f4@5 ~@6 f4@5 f4@5 ~@4, ~ f3@4 ~@21 [f3,a3,c4,e4]@2 ~@32 [g3,b3]@4]/2", // Am Fmaj7 F Fmaj7 Dm G5 C5 Am …
  U: "[[g3,b3,d4,g4]@4 [g3,b3,d4,g4]@4 [g3,b3,d4,g4]@2 [g3,b3,d4]@3 [g3,b3,d4]@2 [g3,b3,d4,g4]@4 [g3,b3,d4,g4]@2 [g3,b3,d4,g4] [g3,b3,d4,g4]@2 [g3,b3,d4,g4] ~@2 c5@30 ~@7, ~@10 g4@5 ~@11 [c4,e4,g4]@30 ~@8]/2", // G C
})).s("gm_acoustic_guitar_steel").gain(0.19)

// chords · acoustic guitar steel · "STEEL GT" · soft notes
const acoustic_guitar_steel_2 = note("<~@16 A@2 B@4 ~@5 C@3 D@6 ~ E@8 F@3 ~ G H@7 I J ~@12 K ~@6 L ~@8>".pickRestart({
  A: "[~@31 c3@30 ~@3]/2", B: "[~@31 c3@29 ~@4]/2", C: "[~@31 c3@29 ~@3 c3@30 ~@3]/3",
  D: "[~@31 c3@30 ~@2 [c3,g3]@30 ~@2 [c3,a3]@29 ~@2 [c3,g3]@30 ~@3 [c3,a3]@30 ~@3]/6", // C5 F C5 F
  E: "[~@30 c3@15 ~ c3@15 c3@14 ~@2 c3@14 ~@2 c3@15 ~ c3@15 c3@14 ~ c3@14 ~@2 c3@14 ~@2 c3@14 ~ c3@14 ~ c3@14 ~@3 c3@14 ~ c3@14 ~ c3@8]/8",
  F: "[~@7 c3@14 ~@2 c3@14 ~ c3@14 ~ c3@14 ~@2 c3@14 ~@13]/3", G: "~@9 c3@7",
  H: "[~ c3@14 c3@14 ~ c3@14 ~ c3@14 ~ c3@14 ~ c3@14 c3@14 ~@2 c3@14 ~@2 c3@14 c3@14 ~ c3@14 ~@2 c3@14 ~@2 c3@14 c3@14 ~ c3@13]/7",
  I: "~@3 c3@14 ~ c3@14", J: "c3@14 ~@2 c3@13 ~@3", K: "~@3 [e3,g3]@4 ~@25", L: "~@15 [e3,g3]@3 ~@14",
})).s("gm_acoustic_guitar_steel").gain(0.1)

// chords · string ensemble 2 · "SLOWSTRIG"
const string_ensemble_2 = note(`<
  ~@13 A@3 B@8 C D@3 E@3 F G H@2 I@3 ~@2 J@2 ~ K@2 ~@2 L@8 M N O@2 P@6 Q@7 R@2 S@8 T@5
>`.pickRestart({
  A: "[~@32 c5@31 [d4,b4]@30 ~@3, ~@31 [g4,a4]@62 ~@3, ~@31 e4@31 ~@34]/3", // G Gsus2
  B: "[g3@32 a3@32 g3@32 a3@31 g3@32 a3@32 g3@32 a3@33, [c5,e5]]/8", C: "g3",
  D: "[a3@27 ~@5 [a2,c5]@31 ~ g2@31 ~, ~@31 [g4,a4]@62 ~@3, ~@31 e4@31 ~ [d4,b4]@30 ~@3]/3", // Am Gsus2 G
  E: "[e5@11 d5@8 ~ f5@12 e5@11 d5@8 f5@12 ~@12 d5@8 f5@12 ~, c5@21 e5@4 ~@7, g4@24 ~@8 a4@31 ~ g4@31 ~]/3",
  F: "e5@11 d5@8 f5@11 ~@2, a4@31 ~", G: "~@3 c4@3 ~@5 b3@4 ~@5 c4@5 ~@2 a3@5, e3",
  H: "[~@4 e4@4 ~@3 d4@5 ~@3 c4@5 ~@11 c4@4 ~@4 b3@5 ~@3 c4@5 ~@3 a3@4 ~, f3@31 g3@32 ~]/2",
  I: "[~@3 e4@5 ~@3 d4@5 ~@3 c4@4 ~@9 [a2,c5]@31 ~ g2@30 ~@2, ~@31 [g4,a4]@61 ~@4, ~@31 e4@31 ~ [d4,b4]@30 ~@3]/3", // Am Gsus2 G
  J: "[~@29 a3@31 ~@4]/2", K: "[~@25 g3@31 ~@8]/2",
  L: "[~@22 a2@29 ~ [g2,b4]@29 ~ g5@30 a5@30 b5@30 [a3,c6]@29 d6@30 ~ e6@24, ~@21 [g4,a4]@59 ~@2 g4@22 ~@152, ~@21 [e4,c5]@29 ~ d4@29 ~@176]/8", // G Am Gsus2 C
  M: "~@11 c4@3 ~@4 d3@7 ~ e3@6, ~@10 e3@8 b3@4 ~@3 c4@4 ~@3", N: "~ a3@4 ~@3 e4@4 ~@4 d4@4 ~@4 c4@4 ~@4",
  O: "[~@7 e3@8 d3@7 ~ e3@7 a3@4 ~@4 e4@4 ~@3 d4@4 ~@3 c4@4 ~@8, ~@7 c4@4 ~@4 b3@4 ~@3 c4@4 ~@38]/2",
  P: "[[a2,e4,c5]@30 [g2,d4,b4]@29 ~@30 a5@30 ~ b5@30 [a3,c6]@29 d6@13, [g4,a4]@29 ~ g5@15 ~@51, ~@30 g4@11 ~@55, ~@61 c5@59 ~@72]/6", // Am G Am Gsus2
  Q: "[~@17 e6@87 ~@2 e5@8 d5@7 e5@7 d5@7 ~ e5@7 d5@7 e5@7 ~ d5@7 e5@7 d5@7 ~ e5@3 d5@4 c5@4 d5@3 ~ e6@29, ~@106 [a3,c4,e4]@28 ~ [g3,b3,d4]@59 ~@30]/7", // Am G
  R: "[~@8 d6@7 c6@15 a5@29 b5@5]/2",
  S: "[~@2 a5@8 g5@7 a5@7 e6@44 d6@8 c6@7 d6@37 c6@7 b5@8 a5@7 ~ e6@36 d6@7 c6@15 a5@30 b5@7 a5@7 g5@8 a5@3]/8",
  T: "[~@4 e6@44 d6@8 c6@6 d6@37 c6@8 b5@8 a5@7 [c5,e5]@28 ~@10]/5", // C
})).s("gm_string_ensemble_2").gain(0.28).pan(0.6)

// chords · string ensemble 2 · "SLOWSTRIG" · soft notes
const string_ensemble_2_soft = note("<~@37 A@4 B@3 C@4 ~ D@4 E@3 ~@4 F@4 G@3 ~@20>".pickRestart({
  A: "[~@31 g3@31 a3@32 g3@31 ~@3, ~@30 g4@31 ~@67, ~@31 c5@62 ~@35, ~@31 e5@11 ~@86]/4", B: "[~@28 g3@30 a3@31 ~@7]/3",
  C: "[~@25 a3@31 g3@31 a3@26 ~@15]/4", D: "[~@19 g3@29 a3@30 g3@30 ~@20, ~@19 c5@59 ~@50]/4",
  E: "[~@10 g3@30 a3@31 ~@25]/3", F: "[~@29 g3@29 a3@30 g3@30 ~@10]/4", G: "[~@19 g3@30 a3@30 ~@17]/3",
})).s("gm_string_ensemble_2").gain(0.12).pan(0.6)

// other · flute · "FLAUTO"
const flute = note("<~@14 A@2 ~@10 A@2 B@2 ~@6 C@2 ~@9 D@3 ~@9 E@2 ~@17 F@2 G@7>".pickRestart({
  A: "[e5 a5 b5 c6@2 b5 a5 b5]/2", B: "c6/2", C: "[e5@8 a5@8 b5@7 c6@16 b5@8 a5@8 b5@8 ~]/2",
  D: "[~@21 e5@8 a5@7 ~ b5@7 c6@15 ~ b5@7 a5@8 b5@7 ~@14]/3", E: "[e5@8 a5@7 b5@7 ~ c6@15 b5@7 a5@8 b5@7 ~@4]/2",
  F: "[~@14 e5@22 ~ f5@3 e5@4 a4@20]/2",
  G: "[~@2 f5@3 e5@4 a4@30 b4@28 ~ e5@22 f5@4 e5@3 a4@21 ~@2 f5@3 e5@4 a4@28 ~ b4@23 c5@3 d5@3 ~ c5@28 ~@10]/7",
})).s("gm_flute").gain(0.28).pan(0.3)

// chords · acoustic guitar steel · "STEEL GT"
const acoustic_guitar_steel_3 = note("<~@16 A@2 B C D E@2 F G@2 ~@12 H I J@2 K@2 L@4 ~ M@6 N ~@31>".pickRestart({
  A: "[~ g4@3 d4@2 c4@4 g4@2 d4@2 c4@4 g4@2 d4@2 c4@4 ~@2 d4@2 c4@4 ~@4 c4@3 ~@3 d4@2 c4@3 ~@3 d4@2 c4@3 ~@3 d4@2 c4@2, ~@12 b3@8 ~@6 g4@7 ~ g4@7 ~ g4@7 ~ g4@7 ~ g4@6, ~@9 e4@2 ~@5]/2",
  B: "~@4 d4@2 c4@3 ~@3 d4@2 c4@4 g4@2 d4@2 c4@4 ~@2 d4@2 c4@2, ~@2 g4@7 ~ g4@4 ~@12 g4@6, ~@3 b3@2 ~@3",
  C: "~@4 d4@2 c4@3 ~@5 c4@4 g4@2 d4@2 c4@4 ~@2 d4@2 c4@2, ~@2 g4@7 ~ g4@4 ~@12 g4@6, ~ e4@2 d4@2 ~@3",
  D: "~@2 g4@2 d4@2 c4@4 ~@2 d4@2 c4@3 ~@3 d4@2 c4@3 ~@3 d4@2 c4@2, ~@10 g4@7 ~ g4@7 ~ g4@6, ~@3 b3@2 ~@3",
  E: "[~@4 d4@2 c4@3 ~ g4@2 ~@2 c4@4 g4@2 d4@2 c4@4 ~@2 d4@2 c4@4 ~@2 d4@2 c4@3 ~@3 d4@2 c4@3 ~@3 d4@2 c4@3 ~@3 d4@2 c4@2, ~@2 g4@7 ~@17 g4@4 ~@4 g4@7 ~ g4@6 ~@2 g4@7 ~ g4@6, ~@4 e4@8 d4@7 ~@25 b3@8 ~@12]/2",
  F: "~@6 c4@3 ~@5 c4@3 ~@3 d4@2 c4@3 ~@3 d4@2 c4@2, ~@2 g4@7 ~ g4@7 ~ g4@7 ~ g4@6, ~ e4@2 d4@2 ~@3",
  G: "[~@4 d4@2 c4@3 ~ c4@2 d4@2 g4@4 d4@2 c4@2 d4@2 g4@2 d4@2 ~@2 d4@3 ~ g4@2 d4@2 c4@4 g4@2 ~@2 c4@2 ~@2 g4@2 d4@2 c4@4 d4@2 g4@2 d4@2, ~@2 g4@8 ~@2 b3@8 ~@8 a3@7 ~ e4@8 d4@8 ~@12]/2",
  H: "~@3 d4@2 c4@4 g4@2 ~@2 c4@4 g4@2 d4@2 c4@3 g4@2 d4@2 c4@4, ~ g4@5 ~@5 b3@8 ~@13",
  I: "g4@2 ~@2 c4@4 ~@4 c4@4 g4@2 d4 ~ c4@4 g4@2 d4@2 c4@4, ~ e4@3 g4@2 ~@10, ~@5 d4@4 ~@7",
  J: "[g4@2 d4@2 c4@4 ~@3 c4@4 g4@2 d4@2 c4@4 g4@2 d4@2 c4@4 g4@2 ~@2 c4@4 g4@2 ~@2 c4@4 g4@2 ~ c4@4 g4@2 d4@2 c4@4 g4@2, ~@8 g4@4 ~@21 e4@8 d4@8 d4@2 ~@13, ~@5 b3@4 ~@23]/2",
  K: "[d4@2 c4@4 g4@2 ~@2 c4@3 g4@2 d4@2 c4@4 ~@2 d4@2 c4@4 ~@4 c4@4 g4@2 ~@2 c4@4 g4@2 ~ c4@4 g4@2 d4@2 c4@4 g4@2 d4@2, ~@8 b3@8 ~@5 g4@7 ~ g4@4 ~@31, ~@31 e4@8 d4@8 d4@2 ~@15]/2",
  L: "[c4@4 g4@2 ~@2 c4@3 g4@2 d4@2 c4@4 g4@2 d4@2 c4@4 g4@2 ~@2 c4@4 g4@2 ~@2 c4@3 g4@2 d4@2 c4@4 g4@2 d4@2 c4@4 g4@2 d4@2 c4@4 ~@3 c4@4 g4@2 d4@2 c4@4 g4@2 d4@2 c4@4 g4@2 ~@2 c4@3 g4@2 ~@2 c4@4 g4@2 d4@2 c4@4 g4@2 d4@2 c4@2 ~@10, ~@6 b3@8 ~@15 e4@8 d4@7 ~@22 g4@2 ~@23 e4@8 d4@7 ~@22, ~@67 b3@8 ~@8 a3@7 ~@38]/4",
  M: "[~@22 d4@2 c4@3 ~ g4@2 ~@2 c4@3 g4@2 d4@2 c4@4 g4@2 d4@2 c4@3 g4@2 ~@2 c4@4 g4@2 ~@2 c4@3 g4@2 d4@2 c4@4 g4@2 d4@2 c4@3 g4@2 d4@2 c4@3 ~ g4@2 ~ c4@4 g4@2 d4@2 c4@4 g4@2 ~ c4@4 g4@2 ~@2 c4@4 ~@4 c4@3 g4@2 d4@2 c4@4 g4@2 d4@2 c4@3 g4@2 d4@2 c4@3 ~@4 c4@4 g4@2 d4@2 c4@4 g4@2 d4@2 c4@3 g4@2 ~@2 c4@4 g4@2 ~@2 c4@4 g4@2 ~ c4@3, ~@20 g4@4 ~@6 b3@8 ~@14 e4@8 d4@7 ~@23 b3@7 ~@8 d4@2 ~@5 e4@6 g4@2 ~@28 g4@2 ~@22 e4@8 d4@8 d4@2 ~@2, ~@119 d4@7 ~@23 b3@7 ~@36]/6",
  N: "~ g4@2 d4@2 c4@2 ~@25",
})).s("gm_acoustic_guitar_steel").gain(0.21).pan(0.6)

// chords · pad warm · "TAPPETO"
const pad_warm = note("<~@16 A B@2 C A C D C D E F G A E D C D E D E H@8 I@8 J@6 K L@8 M@5 N@7 O@4 P@4>".pickRestart({
  A: "[c4,e4,g4]@31 ~", B: "[[c4,f4,a4]@31 ~ [c4,g4]@31 ~, e4]/2", C: "[c4,e4,f4,a4]", D: "[c4,e4,g4]",
  E: "[c4,e4,f4,a4]@31 ~", F: "[c4,e4,a4]@31 ~", G: "[d4,g4,b4]@31 ~",
  H: "[[c4,e4,a4]@30 ~ [d4,g4,b4]@31 ~ [c4,e4,g4]@31 ~ [c4,f4]@31 [c4,e4,g4]@31 [c4,e4,f4,a4]@30 ~ [c4,e4,g4]@30 ~ [c4,e4,f4,a4]@30 ~ [c4,e4,g4]@6, ~@94 [e4,a4]@31 ~@131]/8", // Am G C F5 C Fmaj7 C Fmaj7 …
  I: "[~@25 [c4,e4,f4,a4]@29 g4 ~ [c4,e4,g4]@31 [c4,e4,f4,a4]@30 ~ [c4,e4,a4]@30 [d4,g4,b4]@29 ~@2 [c4,e4,g4]@30 [c4,e4,f4,a4]@29 ~ [c4,e4,g4]@17]/8", // Fmaj7 C Fmaj7 Am G C Fmaj7 C
  J: "[~@12 [c4,e4,f4,a4]@29 ~ [c4,e4,g4]@30 [c4,e4,f4,a4]@30 ~ [c4,e4,g4]@30 [c4,e4,f4,a4]@30 ~ [c4,e4,g4]@28]/6", // Fmaj7 C Fmaj7 C Fmaj7 C
  K: "~@2 [c4,e4,f4,a4]@29 ~", // Fmaj7
  L: "[[c4,e4,a4]@30 ~ [d4,g4,b4]@29 ~ [e4,g4,c5]@29 [e4,f4,a4,c5]@30 [e4,g4,c5]@29 ~ [e4,f4,a4,c5]@29 ~ [e4,g4,c5]@30 [e4,f4,a4,c5]@29 ~ [e4,g4,c5]@16]/8", // Am G C Fmaj7 C Fmaj7 C Fmaj7 …
  M: "[~@13 [e4,f4,a4,c5]@29 [e4,a4,c5]@29 ~@30 d5@30 [e4,g4,c5]@29, ~@72 [d4,g4,b4]@59 ~@29]/5", // Fmaj7 Am C G
  N: "[[e4,f4,a4,c5]@29 ~ [f4,a4,d5]@29 [g4,b4,d5]@29 ~ [e4,g4,c5]@29 [e4,f4,a4,c5]@29 [f4,a4,d5]@29 ~ [g4,b4,d5]@30 [e4,g4,c5]@17]/7", // Fmaj7 Dm G C Fmaj7 Dm G C
  O: "[~@12 [e4,f4,a4,c5]@29 [f4,a4,d5]@29 ~ [g4,b4,d5]@28 ~ [e4,g4,c5]@28]/4", // Fmaj7 Dm G C
  P: "[~@2 [e4,f4,a4,c5]@29 [f4,a4,d5]@29 ~ [g4,b4,d5]@29 [e4,g4,c5]@30 ~@8]/4", // Fmaj7 Dm G C
})).s("gm_pad_warm").gain(0.3).pan(0.4)

// drums · kick
const kick = s("bd").struct(`<
  ~@28 A ~@8 B ~@11 C ~@10 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 ~
>`.pickRestart({
  A: "x", B: "~@31 x", C: "~@19 x ~@12", D: "~@7 x", E: "~@2 x ~@6 x ~ x ~@5 x ~@4 x ~@3 x ~@5",
  F: "~@7 x ~ x ~@5 x ~@4 x ~@3 x ~@7", G: "~@5 x ~ x ~@5 x ~@4 x ~@3 x ~@9", H: "~@3 x ~ x ~@5 x ~@4 x ~@3 x ~@11",
  I: "~ x ~ x ~@5 x ~@4 x ~@3 x ~@12 x", J: "~ x ~@10 x ~@3 x ~@12 x!2 ~", K: "~@4 x ~@4 x ~@3 x ~@12 x ~ x ~@3",
  L: "~ x ~@5 x ~@3 x ~@4 x ~@6 x ~ x ~@5 x", M: "~@4 x ~@3 x ~@12 x ~ x ~@4 x ~@3", N: "~ x ~@14",
  O: "~@3 x ~@4 x ~@7 x ~ x ~@4 x ~@5 x ~@2", P: "x ~@12 x ~ x ~@5 x ~@4 x ~@3 x ~",
  Q: "~@11 x ~ x ~@4 x ~@5 x ~@2 x ~@4", R: "~@8 x ~ x ~@5 x ~@8 x ~@6", S: "~@6 x ~ x ~@4 x ~@5 x ~@2 x ~@9",
  T: "~@3 x ~ x ~@10 x ~@3 x ~@11", U: "~ x!2 ~@5 x ~@4 x ~@3 x ~@12 x ~", V: "x ~@4 x ~@5 x ~@3 x ~@4 x ~@7 x!2 ~@2",
  W: "~@3 x ~@4 x ~@3 x ~@12 x ~ x ~@4", X: "x ~@2 x ~ x ~@5 x!2 ~@2 x", Y: "~@3 x ~@3 x ~@12 x ~ x ~@4 x ~@4",
  Z: "~@4 x ~@12 x ~ x ~@5 x ~@4 x ~", AA: "~@2 x ~@12 x ~ x ~@10 x ~@2 x", AB: "~@12 x ~ x ~@5 x ~@4 x ~@3 x ~@2",
  AC: "~@10 x ~ x ~@4 x ~@8 x ~@5",
})).gain(0.64)

// drums · snare
const snare = s("sd").struct("<~@60 A B C D E F G H I J K F L M N D O F P Q C R O S T B ~>".pickRestart({
  A: "~@2 x ~@3 x ~@10 x ~@14", B: "~@4 x ~@14 x ~@12", C: "~@2 x ~@14 x ~@14", D: "x ~@14 x ~@14 x ~",
  E: "~@13 x ~@13 x ~@4", F: "~@10 x ~@14 x ~@6", G: "~@8 x ~@14 x ~@8", H: "~@3 x ~@6 x ~@5", I: "~@3 x ~@14 x ~@13",
  J: "~ x ~@13 x ~@14 x ~", K: "~@7 x ~@24", L: "~@4 x ~@6 x ~ x!2 ~", M: "~@5 x ~@14 x ~@11", N: "~@3 x ~@13 x ~@14",
  O: "~@12 x ~@14 x ~@4", P: "~@13 x ~@8 x ~@9", Q: "~@5 x ~@13 x ~@12", R: "x ~@13 x ~@14 x ~@2",
  S: "~@9 x ~@14 x ~@7", T: "~@7 x ~@13 x ~@10",
})).gain(0.64)

// drums · low tom
// … 71 more lines

More by Antonello Venditti