Strudelify

I Don't Like Monday's

The Boomtown Rats

KeyB majorTempo146 bpm
0:00/0:00
// I Don't Like Monday's — The Boomtown Rats
// 146 bpm, 4/4, key B 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, 3/4 at bar 5, 4/4 at bar 6, 3/4 at bar 7, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: duplicate parts dropped: ch 8 pizzicato strings (copy of ch 6 pizzicato strings)
// note: Full arrangement: all 157 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(146/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.

// bass · acoustic bass
const bass = note(`<
  ~@8 A@2 B C@5 D@8 E F G H@6 I ~@14 J@7 K@2 L M@3 N O P@3 ~@9 Q@7 ~@13 R@4 S T ~@2 U@4 V@3 W@4 X Y Z AA AB AC@6 ~@25
  AD@7
>`.pickRestart({
  A: "[~@10 d#1@5 ~ d#2@5 ~@2 d#1@5 ~ d#2@5 ~ d#1@5 ~@2 d#2@5 ~]/2", B: "d#1@5 ~ d#2@5 ~ b1@11 ~",
  C: "[b1@11 ~ b1@5 ~ b1@5 b1@5 ~ b1@5 ~ d#1@5 ~ d#2@5 ~ d#1@5 d#2@5 ~ d#1@5 ~ d#2@5 ~ d#1@5 d#2@5 ~ e2@23 f#2 ~@2 f#2 ~@7 e2 ~@2 e2 ~]/5",
  D: "[~@7 b2@11 ~ b2@12 d#2@12 ~ a#2@12 e2@6 b2@6 e3@6 ~ b2@6 f#2@11 ~ f#2@6 f#3@6 b2@11 ~@2 b2@12 d#2@6 d#3@6 d#2@6 ~ d#3@6 e2@6 e3@6 e2@6 e3@6 f#2@11 ~@2]/8",
  E: "f#2 f#3 e2 e3", F: "e2@6 ~ e3@6 f#2@6 f#3@5", G: "~ f#2@6 f#3@6 b2@11",
  H: "[~@2 b2@12 e2@24 ~ e2@6 b2@6 e3@6 b2@6 ~ e2@6 b2@6 e3@6 b2@6 e2@6 e3@6 ~ e2@6 e3@6 f#2@12 ~ f#2@12 ~ f#2@5]/6",
  I: "~ f#2@3 ~ f#2@7",
  J: "[~@7 b2@11 ~ b2@12 d#2@11 ~ d#2@12 e2@11 ~ e2@12 f#2@11 ~ f#2@12 b2@11 ~ b2@12 d#2@11 ~ d#2@12 e2@6 e3@6 e2@5]/7",
  K: "[~ e3@6 f#2@11 ~ f#2@12 e2@6 e3@6 e2@5]/2", L: "~ e3@6 f#2@6 f#3@6 f#2@5",
  M: "[~ f#3@6 b2@11 ~ b2@12 e2@23 ~ e2@6 b2@6 e3@5]/3", N: "~ b2@6 e2@6 b2@6 e3@5", O: "~ b2@6 e2@6 e3@6 e2@5",
  P: "[~ e3@6 f#2@11 ~ f#2@11 ~ f#2@5 ~ f#2@5 ~ f#2@13 ~@16]/3",
  Q: "[~@8 d#2@7 ~@5 d#2@7 ~@5 d#2@7 ~@5 d#2@7 ~@5 b1@7 ~@5 b1@7 ~@5 b1@7 ~@5 b1@7 ~@5 d#2@6 d#3@6 d#2@6 d#3@6 d#2@6 d#3@6 d#2@6 d#3@6 e3@12 ~@4]/7",
  R: "[~@13 e2@14 ~@2 e2@15 f#2@15 ~ e2@15 b2@14 ~ b2@6]/4", S: "~@2 g#2@7 ~ e2@14", T: "~ b2@14 ~@9",
  U: "[~@22 f#2@14 ~ f#2@15 f#2@23 ~@8 b1@13]/4", V: "[~@2 b1@14 a#1@13 ~ a#1@13 g#1@25 ~ f#2 ~@2]/3",
  W: "[f#2 ~@8 e2 ~@2 e2 ~@8 b1@6 b2@6 b1@12 ~ d#2@6 d#3@6 d#2@6 ~ d#3@6 e2@6 e3@6 e2@11 ~@2]/4", X: "f#2 f#3 f#2@2",
  Y: "e2@6 ~ e3@6 e2@6 e3@5", Z: "~ f#2@6 f#3@6 f#2@6 f#3@5", AA: "~ b2@23", AB: "~ e2@23",
  AC: "[~@2 e2@6 e3@6 e2@6 e3@6 e2@6 e3@6 e2@6 e3@6 e2@6 ~ e3@6 e2@6 e3@6 f#2@5 ~ f#3@5 ~@2 f#2@6 f#3@6 ~ f#2@6 ~ f#3@6 ~ f#2@13 ~@16]/6",
  AD: "[~@21 b1@125 ~@22]/7",
})).s("gm_acoustic_bass").gain(0.35)

// chords · piano
const piano = note(`<
  A B@3 C@7 D@5 E@4 F G@5 H@8 I J@8 K@5 L@5 M@2 N@8 O P@8 Q@2 R@5 S@4 T@8 U@7 V@5 W@7 X@4 Y@3 Z@5 AA@4 AB@7 AC@8 AD@3
  AE@5 AF@8
>`.pickRestart({
  A: "~@23 c#6, ~@12 d#7@7 [f#5,a#6]@3 d#6@2, ~@13 c#7@7 g#6@4, ~@7 a#6 f#6 [g#5,a#5]@3, ~@15 g#6@2 [c#6,d#6]@4 f#6@3", // F# G#sus2 C#sus2
  B: "[~@16 f#2 [d#1,d#2,d#3]@19, a#5@2 d#5@2 c#6@4 [a#4,c#5]@4 a#3@3 [c#6,d#6]@3 f#5@3 a#4@4 a#3@2 f#3 d#3 c#3 a#2 g#2@3 ~@38, ~ g#6@4 [g#5,a#5]@4 g#4@4 g#3@3 a#5@4 c#5@3 d#4@3 g#3@8 ~@38, ~ [f#5,g#5]@2 d#6@3 f#5@4 f#4@4 f#6@5 d#5@5 c#4@10 ~@38, ~@2 f#6@5 d#5@4 [c#4,d#4]@3 [d#3,f#3]@3 g#5@5 [f#4,g#4]@12 ~@38]/3", // D# A#m C#sus2 G#sus2 F#sus2 C#sus2 D#m F#sus2
  C: "[~@9 [c#6,d#6]@9 ~ d#6@9 g#5@9 ~@11 [d#2,d#3] ~@2 [a#1,a#2] ~@9 d#5@9 ~ [c#5,d#5]@9 d#5@9 ~@11 [d#2,d#3] ~@2 [a#1,a#2] ~@2 d#2@6 ~@41 [c#4,d#4,g#4]@3 [b1,b2,b3,e4,f#4,a4]@12, ~@9 g#6@26 ~@36 g#5@19 [d#4,g#4,a#4,d#5]@19 ~@3 d#4@10 c#5@19 [c#4,d#4,g#4]@3 d#1@12 ~@12, ~@9 g#5@19 [d#5,a#5,d#6]@29 ~@4 f#5@10 g#4@9 [f#4,c#5]@26 ~@6 g#4@19 d#1@10 g#3@15 ~@12, ~@19 f#6@23 ~@12 [d#1,d#2]@43 ~@9 d#1@6 [d#2,a#4]@7 d#1@3 c#4@9 d#4@7 d#2@9 [c#4,d#4,g#4]@3 d#2@6 ~@12, ~@19 [f#5,c#6]@19 [c#5,f#5,g#5,c#6]@20 ~@3 [a#4,a#5]@19 f#5@29 ~@3 d#5@10 [f#4,a#4]@3 d#2@6 [a#3,f#4,a#4]@25 ~@12]/7", // C#sus2 D# A# C#sus2 D# A# C#sus2 Bsus4 …
  D: "[~@3 b3@3 e4@3 ~@20 [b1,b2]@5 ~@7 [c#5,d#5]@8 d#5@8 ~ g#4@8 ~ [c#4,f#4,g#4,c#5]@5 [c#4,f#4,g#4]@5 ~ [c#4,f#4,g#4]@3 [b3,e4,g#4]@5 ~ [b4,e5]@3 ~@11 [e4,g#4,b4]@3 [f#2,f#3,c#4,f#4,a#4,c#5] ~@2 [f#2,f#3,c#4,f#4,a#4,c#5]@2 ~@6 [e2,e3,b3,e4,g#4,b4] ~@2 [e2,e3,b3,e4,g#4,b4]@2, [b1,b2]@11 ~ [b1,b2]@5 ~ [b1,b2]@5 [b1,b2]@5 ~@13 g#4@17 [d#4,a#4,d#5]@23 e2@23 ~@16, ~@9 [b3,c#4,e4,f#4]@6 [b3,c#4,e4,g#4]@5 ~ [b3,c#4,e4,g#4]@5 [b3,c#4,e4,f#4]@9 ~@6 g#5@23 ~@23 b3@11 b3@6 ~@16, ~@49 f#5@23 c#5@9 ~@5 [e4,g#4]@4 [g#4,b4,e5]@6 [e4,g#4,b4]@5 ~@19, ~@49 [f#4,c#5]@17 ~@15 e3@11 ~ e3@12 ~@15]/5", // B C#sus2 C#sus4 E E5 E F# E …
  E: "[~@7 b2@12 ~@6 [b3,d#4,f#4]@6 ~@19 [a#3,d#4,f#4,a#4]@6 ~@19 b2@6 [f#2,f#3,c#4,f#4,a#4,c#5]@9 [f#2,f#3,b3,e4,g#4,b4]@6, ~@7 b1@25 ~@12 a#2@12 e3@12 e3@12 ~@16, ~@7 [b3,d#4,f#4]@18 ~@6 [a#3,d#4,f#4,a#4]@18 ~@7 [b3,e4,g#4,b4]@15 ~ [b3,e4,g#4,b4]@9 ~@15, ~@19 b2@12 [d#2,d#3]@25 e2@25 ~@15, ~@31 b2@6 ~@11]/4", // B D#m F# E B D#m E D#
  F: "[f#2,f#3,b3,f#4,a#4,c#5]@9 d#3@6 ~ f#3@6 b3@2, ~@3 [b2,d#4,f#4,b4]@5", // F# B
  G: "[~@4 f#3@6 ~@22 [d#4,f#4]@3 ~@18 b2@6 [f#2,f#3,c#4,f#4,a#4,c#5]@9 ~ [f#2,f#3,c#4,e4,g#4,b4]@6 [c#4,e4,g#4,b4]@6 [b3,e4,g#4]@3 ~@19 b2@6 f#2@9 f#2@2, ~ [d#4,f#4,b4]@9 d#2@25 e2@25 ~@15 [f#2,f#3]@9 e2@25 ~@11, ~@10 [a#3,d#4,f#4,a#4]@15 ~ [a#3,a#4]@9 [b3,e4,g#4,b4]@15 [b3,e4,g#4,b4]@9 ~@25 [g#3,b3,e4]@15 ~ [g#3,b3,e4]@9 [f#3,a#3,c#4,f#4]@11, ~@10 d#3@12 d#3@12 ~ e3@12 e3@12 ~@25 e3@12 e3@12 ~@12, ~@16 a#2@10 [d#4,f#4]@3 a#2@6 ~@6 b2@12 ~@37 b2@12 ~@18]/5", // D#m F# C#m7 E B F# D#m A# …
  H: "[~@4 [f#3,a#3,c#4,f#4]@9 [d#4,f#4,b4,d#5]@9 ~ [c#4,d#4,f#4,b4]@6 [d#2,d#3,c#4,d#4,f#4,a#4]@9 ~@22 g#3@3 ~@43 b2@6 ~@19 e3@6 [f#2,f#3,f#4,a#4,c#5]@12 ~ [f#2,f#3,f#4,a#4,c#5,d#5]@13 [f#2,f#3,f#4,a#4,c#5,e5]@7 [f#2,f#3,f#4,a#4,c#5,d#5]@7 ~ [f#2,f#3,f#4,a#4,c#5]@14, ~ f#2@12 [b2,b3]@15 ~@10 [e2,g#4]@25 e2@24 ~ e2@24 e2@12 ~ e2@12 ~@55, ~@38 b3@16 e4@9 ~@6 b2@12 b2@12 ~ b2@12 ~@86, ~@38 e4@13 e3@12 [g#3,b3,e4]@15 [g#3,b3,e4]@9 ~ [b3,e4,g#4]@15 [b3,e4,g#4]@9 [e4,g#4,b4]@15 ~ [b3,e4,g#4]@9 ~@55, ~@38 e3@6 b2@12 ~ [b2,b3]@6 e3@12 e3@12 ~ e3@12 e3@18 e3@12 ~@62]/8", // F# B D#m7 F# D#m7 F#7 D#m7 F# …
  I: "~ [b3,d#4,f#4]@6 ~@6 [b3,d#4,f#4]@3 [b3,d#4,f#4]@8, ~ [b1,b2]@9 [b1,b2]@14, ~@7 [b3,d#4,f#4]@6 ~@11", // B
  J: "[~ [a#3,d#4,f#4]@9 ~ [a#3,d#4,f#4]@6 [a#1,a#2,a#3,d#4,f#4]@9 [b3,d#4,g#4]@6 ~@7 [b3,d#4,g#4]@3 [b3,d#4,g#4]@9 [f#1,f#2,c#4,f#4,a#4]@9 [f#1,f#2,c#4,f#4,g#4]@6 [f#1,f#2,a#3,c#4,e4]@9 ~ [f#3,b3,d#4]@6 [f#3,b3]@3 [f#3,b3]@3 [f#3,b3,d#4]@3 [b1,b2,f#3,b3,d#4,f#4]@9 [a#3,d#4,f#4]@9 ~@7 [a#1,a#2]@9 [e1,e2,b3,e4,g#4]@18 [e1,e2,b3,e4,g#4]@5 ~@2 [e1,e2]@12 ~@3 [g#3,b3,e4]@9 [f#1,f#2,a#3,c#4]@3 ~@3 [f#1,f#2,a#3,c#4] ~@2 [f#1,f#2,a#3,c#4] ~@2 [f#1,f#2,a#3,c#4] ~@2 [f#1,f#2,a#3,c#4] ~@2, ~ [a#1,a#2]@15 ~@10 [g#1,g#2]@9 [g#1,g#2]@15 ~@26 [b1,b2]@15 ~@9 [a#1,a#2]@15 ~@47 [e1,e2]@12 ~@18, ~@32 [b3,d#4,g#4]@6 ~@28 f#4@25 ~@18 f#4@65 f#4@6 f#4@3 f#4@3 f#4@3 f#4@3, ~@109 [a#3,d#4]@15 ~@26 [g#3,b3,e4]@15 ~@27]/8", // D#m G#m F# F#sus2 F#7 B B5 B …
  K: "[[f#1,f#2,a#3,c#4] ~ [f#1,f#2,a#3,c#4] ~@2 [f#1,f#2,a#3,c#4]@2 ~@24 b2@6 [b3,f#4,b4,d#5]@7 [f#4,b4,c#5]@3 ~@6 [f#4,b4]@3 [d#2,f#4,a#4,d#5]@6 [d#3,f#4,a#4,d#5]@6 [f#4,a#4,c#5]@3 ~@9 e2@6 [e3,g#4,b4,d#5]@6 [g#4,b4,c#5]@3 ~@6 [f#4,a#4]@3 [f#2,f#3,c#4,a#4,c#5] ~@2 [f#2,f#3,c#4,a#4,c#5]@2 ~@6 [e2,e3,b3,e4,g#4,b4] ~@2 [e2,e3,b3,e4,g#4,b4]@2, f#4@2 f#4@3 f#4@32 ~@7 b2@6 b3@6 ~@12 d#2@6 d#3@6 ~@12 e2@6 e3@6 ~@16, ~@47 [f#4,b4,d#5]@6 ~@18 f#4@30 ~@3 f#4@3 f#4@13, ~@71 [a#4,d#5]@6 [g#4,b4]@6 ~@12 [g#4,b4,d#5]@6 ~@19]/5", // F# B F#sus4 B5 D#m F# Emaj7 C#7 …
  L: "[~@25 f#3@6 d#3@6 ~@12 d#3@6 [e3,e5]@6 ~@15 b4@3 [f#2,f#3]@3 [f#2,f#3]@3 [f#2,f#3]@3 [f#2,f#3,b3,e4,g#4,b4]@6 f#4@6 ~@3 b2@6 ~@9 [b3,d#4]@2, ~@7 b1@24 d#2@12 d#2@12 e2@6 e5@3 g#5@3 e2@12 ~@15 [f#2,f#3,b3,a#4,c#5]@9 b1@12 b1@5, ~@7 [b3,d#4,f#4]@15 f#4@57 f#4@15 ~@6 f#4@12 f#4@8, ~@7 b2@12 b2@12 ~@6 d#3@12 ~@6 [g#5,b5]@6 e3@9 b4@3 e3@6 ~@30 b2@11, ~@13 f#3@9 [b3,d#4]@9 [a#4,d#5,g#5]@9 [a#4,d#5,f#5]@6 [a#4,d#5]@9 b4@15 [g#4,e5]@9 [c#4,a#4,c#5]@9 ~@15 [b3,d#4]@9 [b3,d#4]@6 ~@2]/5", // E F# E B F# B G#m B …
  M: "[~@4 [b3,d#4]@3 d#3@6 ~@15 [a#3,d#4]@3 ~@15 e4@2, ~ b2@6 d#2@12 d#2@12 e2@9 e4@3 e3@5, ~@7 [a#3,d#4,g#4]@9 f#4@32, ~@13 d#3@12 d#3@6 e3@9 [b3,g#4]@8, ~@16 [a#3,d#4]@6 [a#3,d#4]@6 ~@3 [b3,e4,g#4]@6 b2@11]/2", // B D#5 D#sus4 E D#5 E
  N: "[~ [e2,g#4]@6 [f#2,f#3,a#3,c#4,f#4]@9 [f#2,f#3,a#3,c#4,f#4]@6 f#3@3 f#3@6 e4@6 ~@12 [b2,e4]@6 [f#2,f#3,a#3,c#4,f#4]@9 [f#2,f#3,a#3,c#4,f#4,g#4]@6 [f#2,f#3,a#3,c#4,g#4]@9 [b4,d#5,f#5]@9 [f#4,b4,c#5,e5]@6 [a#4,c#5,d#5]@9 g#4@6 ~@15 e3@3 e4@6 ~@18 e4@6 ~@18 e4@6 ~@9 e4@2, ~@22 f#4@33 ~@15 f#4@18 ~@6 f#4@93 e2@5, ~@22 [f#2,a#3,c#4]@9 [e2,g#3]@24 ~@48 [e2,b3]@24 [e2,b4]@15 e4@3 b2@6 [e3,g#4]@6 b2@6 e3@12 b4@17, ~@31 b3@9 g#4@3 e3@12 ~@24 [b2,b3]@24 e3@6 g#4@3 e4@3 e3@6 [b2,e4]@6 e3@6 e4@3 g#4@12 b3@9 e4@3 g#4@6 e4@3 b2@6 [e2,g#4]@6 e3@11, ~@31 e3@6 [b2,e4]@9 b3@9 ~@48 e4@6 b2@9 g#4@9 g#4@6 b2@6 e3@12 [e2,b4]@21 b3@9 e4@3 g#4@8]/8", // E F# E5 F# B F#sus4 D#7 F# …
  O: "~@4 b3@3 f#3@6 ~@6 [f#2,f#4,a#4,c#5,d#5]@5, ~ e3@6 [f#2,f#4,a#4,c#5]@12 ~@5, ~@13 f#3@11", // D#m7 F#
  P: "[~@7 [f#4,a#4,c#5,e5]@6 [f#3,f#4,a#4,c#5,d#5]@6 [f#2,f#3,f#4,a#4,c#5]@13 [b3,d#4,f#4]@6 ~@6 [b3,d#4,f#4]@3 [b3,d#4,f#4]@9 [a#3,d#4,f#4]@9 [a#3,d#4,f#4]@6 [a#1,a#2,a#3,d#4]@9 [b3,d#4,g#4]@6 ~@6 [b3,d#4,g#4]@3 [b3,d#4,g#4]@9 [f#1,f#2,c#4,f#4,a#4]@9 [f#1,f#2,c#4,f#4,g#4]@6 [f#1,f#2,a#3,c#4,e4]@9 [f#3,b3,d#4]@6 [f#3,b3]@3 [f#3,b3]@3 [f#3,b3,d#4]@3 [b1,b2,f#3,b3,d#4,f#4]@9 [a#3,d#4,f#4]@9 ~@6 [a#1,a#2]@9 [e1,e2,b3,e4,g#4]@16, ~ f#3@12 ~@25 [b3,d#4,f#4]@6 ~@27 f#4@33 ~@15 f#4@24 ~@18 f#4@31, ~@7 f#2@12 ~@13 [b1,b2]@9 [b1,b2]@15 [a#1,a#2]@15 ~@9 [g#1,g#2]@9 [g#1,g#2]@15 ~@24 [b1,b2]@15 ~@9 [a#1,a#2]@15 ~@25, ~@86 [b3,d#4,g#4]@6 ~@69 [a#3,d#4]@15 ~@16]/8", // F#7 D#m7 F# B D#m D#5 G#m F# …
  Q: "[~@2 [e1,e2,b3,e4,g#4]@5 ~ [e1,e2]@11 ~@4 [g#3,b3,e4]@9 [f#1,f#2,a#3,c#4]@3 ~@3 [f#1,f#2,a#3,c#4] ~@2 [f#1,f#2,a#3,c#4] ~@2 [f#1,f#2,a#3,c#4] ~@2 [f#1,f#2,a#3,c#4,f#4], ~@8 [g#3,b3,e4]@14 ~@10 f#4@6 f#4@3 f#4@3 f#4@3 ~, ~@5 [e1,e2]@3 ~@4]/2", // E F# E
  R: "[~@2 [f#1,f#2,a#3,c#4] ~@2 [f#1,f#2,a#3,c#4] ~@2 [f#1,f#2,a#3,c#4]@2 ~@31 a#3@3 ~@9 a#3@3 ~@9 [d#2,d#3,a#3,d#4,f#4]@6 d#4@6 d#4@3 [b3,d#4,f#4]@15 [b3,e4,f#4,g#4]@3 [b3,e4,f#4,g#4]@3 [b3,e4,f#4,g#4]@3 [b3,e4,f#4,g#4]@3 [b3,e4,f#4,g#4]@3 [b3,e4,f#4,g#4]@3 [b3,d#4,f#4]@6 [b3,d#4,f#4], ~@2 f#4@3 f#4@3 f#4@36 f#4@21 ~@55, ~@32 [d#2,d#3,d#4,g#4]@12 [d#2,d#3,d#4]@12 [d#2,d#3,a#3,d#4,g#4]@9 ~@6 [d#2,d#3,a#3,f#4]@9 [b1,b2]@23 ~ [b1,b2]@16, ~@32 a#3@9 ~@3 a#3@9 ~@67, ~@38 f#3@6 ~@6 f#3@6 ~@6 f#3@9 ~@49]/5", // F# D#m B E B G#5 D# D#sus4 …
  S: "[~@2 [b3,d#4]@4 ~@2 d#3@6 ~@39 a#4@3 [b3,g#4]@5 ~ [g#4,b4,e5]@3 ~@12 [e4,g#4,b4]@3 c#5@3 ~@9 c#4@3 c#5, ~@2 f#4@21 f#4@57 a#4@3 c#5@3 [f#4,a#4]@10, ~@2 d#2@3 d#2@3 d#2@3 d#2@3 e2@6 [f#2,f#3]@4, ~@14 d#3@12 d#3@12 d#3@9 a#4@3 d#3@6 e3@9 [g#4,b4,e5]@3 e3@12 f#5@9 [c#5,f#5]@7, ~@14 [g#4,c#5,d#5,g#5]@9 [c#5,d#5,f#5]@9 [d#4,g#4,a#4,d#5]@9 [c#4,g#4,a#4,c#5]@6 [c#4,g#4,c#5]@9 e4@4 ~ e4 b3@9 [e4,g#4,b4]@3 b3@6 c#4@12 ~@4]/4", // B E F# E F#5 G#sus4 D#m7 D#sus4 …
  T: "[~@5 [c#5,f#5]@3 ~@18 [f#5,f#6]@3 ~@21 [f#5,f#6]@3 ~@21 [f#5,f#6]@3 ~@21 [f#5,f#6]@3 ~@21 [f#5,f#6]@3 ~@21 [f#5,f#6]@3 [f#5,f#6]@3 ~@21 f#5@3 [f#3,c#5,f#5,a#5,c#6] ~@2 [f#3,c#5,f#5,a#5,c#6] ~@2 [f#3,c#5,f#5,a#5,c#6] ~@9, ~@2 f#4@18 b4@18 [b5,b6]@3 [c#6,c#7]@18 [f#5,f#6]@9 b4@18 [b5,b6]@3 [c#6,c#7]@18 [f#5,f#6]@9 b4@6 f#4@42 e5@3 [g#5,g#6]@3 b4@6 ~@16, ~@2 a#4@6 [b3,d#6,d#7]@18 f#4@18 b4@18 [b5,b6]@3 [c#6,c#7]@18 [f#5,f#6]@9 b4@18 [b5,b6]@3 [c#6,c#7]@21 [a#5,a#6]@3 [c#6,c#7]@6 [a#5,a#6]@3 a#4@6 ~@3 e5@3 [g#5,g#6]@3 [c#6,c#7]@15 ~@16, ~@11 [f#5,f#6]@12 [b5,b6]@6 [f#5,f#6]@3 [b3,d#6,d#7]@18 f#4@21 [b5,b6]@6 [f#5,f#6]@3 [b3,d#6,d#7]@18 f#4@21 [b5,b6]@6 [f#5,f#6]@6 [f#5,f#6]@9 d#5@12 ~@3 e6@21 ~@16, ~@14 [b5,b6]@3 [c#6,c#7]@18 [f#5,f#6]@12 [b5,b6]@6 [f#5,f#6]@3 [b3,d#6,d#7]@18 f#4@21 [b5,b6]@6 [f#5,f#6]@3 [b3,d#6,d#7]@24 [d#4,d#6,d#7]@24 [e4,b5,b6]@24 f#4@3 f#4@3 f#4@10]/8", // F#5 F# B C# F# B C# F# …
  U: "[~@26 [f#5,f#6]@3 ~@21 [f#5,f#6]@3 [f#5,f#6]@3 ~@21 f#5@3 [f#3,c#5,f#5,a#5,c#6] ~@2 [f#3,c#5,f#5,a#5,c#6] ~@2 [f#3,c#5,f#5,a#5,c#6] ~@22 [e2,e4,g#4,b4]@15 ~ [e2,e3,e4,g#4,b4,e5]@15 [f#1,f#2,f#3,b3,c#4,e4]@15 ~ [e2,e3,e4,g#4,b4,c#5,e5]@12, ~@8 [b3,d#6,d#7]@18 f#4@42 e5@3 [g#5,g#6]@3 b4@6 ~@29 [e1,b3]@31 ~@28, ~@11 [f#5,f#6]@12 [b5,b6]@6 [f#5,f#6]@6 [f#5,f#6]@9 d#5@3 [a#5,a#6]@3 a#4@6 ~@3 e5@3 [g#5,g#6]@3 [c#6,c#7]@15 ~@88, ~@14 [b5,b6]@6 b4@12 [d#4,d#6,d#7]@24 [e4,b5,b6]@24 f#4@3 f#4@3 f#4@54 f#4@28, ~@17 [c#6,c#7]@21 [a#5,a#6]@3 [c#6,c#7]@15 ~@3 e6@21 ~@88]/7", // F# E F#sus4 C#m7 B G# E5 F# …
  V: "[~@3 [c#4,d#4]@15 [b3,c#4,e4]@8 [d#3,g#3,b3,d#4]@8 e4@22 e4@6 ~ [e2,e3,b3,e4,g#4,b4]@2 ~@24 [e2,e3,b3,e4,g#4,b4]@2 ~@24 [e2,e3,b3,e4,g#4,b4]@2 ~@3, ~ f#4@39, ~@3 [b1,b4]@31 [e2,e3,g#3,b3]@29 ~@57, ~@3 b2@23 ~@94]/5", // C#sus2 C#m7 G#m E B E
  W: "[~@22 [f#2,f#3,f#4,a#4,c#5]@15 [f#2,f#3,f#4,a#4,c#5,d#5]@15 [f#2,f#3,f#4,a#4,c#5,e5]@8 [f#2,f#3,f#4,a#4,c#5,d#5]@8 [f#2,f#3,a#4,c#5]@8 ~@7 [b1,b2,b3,d#4,f#4]@15 [b1,b2,b3,d#4,f#4]@14 [a#1,a#2,a#3,d#4,f#4]@14 [a#1,a#2,a#3,d#4]@13 [g#1,g#2,b3,e4,g#4]@25 ~ [f#1,f#2,c#4,f#4,a#4]@3, ~@68 f#4@15 ~@43 f#4@39 ~@3]/7", // F# D#m7 F#7 D#m7 F# B D#m D#5 …
  X: "[[f#1,f#2,c#4,a#4]@2 ~@7 [e1,e2,b3,e4,g#4] ~@2 [e1,e2,b3,e4,g#4] ~@23 [d#4,f#4,b4]@10 ~@22 d#4@3 ~@19 b2@6, f#4@21 [b2,d#3]@25 d#2@25 e2@25, ~@21 [d#4,f#4,b4]@15 ~@16 a#2@9 [d#4,f#4]@4 a#2@6 e3@6 b2@9 [b3,e4,g#4,b4]@9 ~, ~@27 f#3@19 d#3@12 d#3@13 [b3,e4,g#4,b4]@12 e3@13, ~@33 b3@13 [a#3,d#4,f#4,a#4]@15 [a#3,a#4]@7 f#4@28]/4", // F# E B D#m E D#m A#
  Y: "[f#3@6 ~@9 [c#4,e4,g#4,b4]@9 ~@22 e3@3 [f#2,f#3,a#3,c#4,f#4]@9 [f#2,f#3,a#3,c#4,f#4]@6 ~@3 c#3@5, f#4@49 ~@23, f#2@3 f#2@3 e2@6 ~@4 [f#2,f#3,a#3,c#4,f#4]@2, [c#4,a#4,c#5]@9 [c#4,e4,g#4,b4]@6 ~@9 e3@10 [g#3,b3,e4]@6 e3@3 [g#3,b3,e4]@6 ~@23, ~@6 f#3@18 [g#3,b3,e4]@7 b2@18 ~@23]/3", // C#m7 F# C#m7 E
  Z: "[~ [d#4,f#4,b4,d#5]@9 [d#4,f#4,b4,d#5]@6 [d#2,d#3,d#4,a#4,c#5]@9 ~@22 g#3@3 g#4@6 ~@12 [e2,e4]@6 g#4@6 ~@12 [e2,e4]@6 g#4@6 ~@13 [e2,e4]@3, ~ [b2,b3]@15 f#4@40 [e3,g#4]@6 e2@3 e3@9 e2@6 [e3,g#4]@6 e2@3 e3@9 e2@7 [e3,g#4]@6 e2@6 ~@3, ~@25 e2@16 e4@3 [b2,b3]@6 e2@12 f#4@24 f#4@25 f#4@9, ~@25 b3@10 g#4@15 b4@24 b4@24 b4@22, ~@25 [e3,e4,g#4]@7 b2@6 e3@12 e4@15 g#4@9 e4@15 g#4@9 e4@16 [e3,g#4]@6]/5", // B D#7 E B E B E
  AA: "[e4@3 [f#2,f#3]@6 ~@13 [f#2,f#3]@6 ~ [f#2,f#3,f#4,a#4,c#5,e5]@7 [f#2,f#3,f#4,a#4,c#5,d#5]@7 [f#2,f#3,f#4,a#4,c#5]@14 [b3,d#4,f#4]@6 ~@6 [b3,d#4,f#4]@3 [b3,d#4,f#4]@9 [a#3,d#4]@9 [a#3,d#4]@6, ~@3 [f#4,a#4,c#5]@13 [f#4,a#4,c#5,d#5]@13 ~@34 [b3,d#4,f#4]@6 ~@27, ~@9 [f#2,f#3]@13 ~@35 [b1,b2]@9 [b1,b2]@15 [a#1,a#2,f#4]@15]/4", // F# F#7 D#m7 F# B D#5 F# D#m7 …
  AB: "[[a#1,a#2,a#3,d#4]@9 [b3,d#4,g#4]@5 ~@6 [b3,d#4,g#4]@3 d#4@6 d#4@3 [f#1,f#2]@6 ~@3 [c#4,f#4,g#4]@6 [f#1,f#2,a#3,c#4,e4,f#4]@9 [b1,b2]@6 ~@3 [b3,d#4]@6 ~@3 [b1,b2]@6 [a#1,a#2]@5 ~@3 [a#3,d#4]@6 ~@3 [a#1,a#2]@6 [g#1,g#2]@6 ~@3 [b3,e4]@6 ~@3 [g#1,g#2]@6 [f#1,f#2,c#4,f#4,a#4]@9 [f#1,f#2,c#4,d#4,f#4,a#4]@6 [f#1,f#2,c#4,e4,f#4,a#4]@9 [b1,b2]@6 ~@5 d#4@3 [b3,d#4,f#4]@3, f#4@32 ~@24 f#4@15 ~@9 f#4@14 f#4@33 ~@24 f#4@14 ~@3, ~@9 [g#1,g#2]@8 [g#1,g#2]@15 ~@6 [f#1,f#2]@9 ~@15 [b1,b2]@11 ~@12 [a#1,a#2]@11 ~@7 [b3,e4]@9 ~@6 [b3,e4,g#4]@9 ~@24 d#4@11 ~@6, ~@14 [b3,d#4,g#4]@6 ~@3 [b3,g#4]@9 [c#4,f#4,a#4]@9 ~@15 [b3,d#4]@9 ~@6 [b3,d#4,f#4]@9 [a#3,d#4]@8 ~@6 [a#3,d#4]@9 g#4@14 ~@34 b3@8 b3@6 ~@3, ~@109 [g#1,g#2]@11 ~@37 [b1,b2]@11]/7", // D#5 G#m F# C#sus4 F#7 B A# D#5 …
  AC: "[[b1,b2]@6 [d#2,d#3]@6 ~@6 d#4@3 ~@3 [d#2,d#3]@6 [e2,e3]@6 ~@6 e4@3 ~@3 [e2,e3]@6 [f#2,f#3,c#4,f#4,a#4]@8 [f#2,f#3,c#4,f#4,g#4]@6 [f#2,f#3,c#4,d#4,g#4]@9 [f#3,b3,d#4]@6 [f#3,b3]@3 [f#3,b3]@3 [f#3,b3,d#4]@3 [b1,b2,f#3,b3,d#4,f#4]@9 [a#1,a#2]@6 ~@3 [a#3,d#4]@6 a#3@6 a#3@3 [e2,e3]@5 ~@24 [e2,e3]@8 [e2,e3,b3,e4,g#4]@8 [f#2,f#3,c#4,a#4]@3 ~@3 [f#2,f#3,c#4,a#4] ~@2 [f#2,f#3,c#4,a#4] ~ [f#2,f#3,c#4,a#4] ~@2 [f#2,f#3,c#4,a#4] ~@2 [f#2,f#3,c#4,a#4] ~ [f#2,f#3,c#4,a#4] ~@2, ~@6 f#4@15 f#4@33 ~@14 f#4@24 ~@18 f#4@60 f#4@6 f#4@3 f#4@2 f#4@3 f#4@3 f#4@2 f#4@3, ~@6 d#4@11 ~@13 g#4@14 ~@72 d#4@9 ~@67, ~@6 a#3@9 a#3@6 [a#3,d#4]@9 e4@9 b3@6 [b3,e4,g#4]@9 ~@47 [a#3,d#4,f#4]@9 ~@15 [b3,e4,g#4]@11 [b3,e4,g#4]@11 ~ [b3,e4,g#4]@13 ~@31, ~@12 [d#2,d#3]@11 ~@7 b3@6 [e2,e3]@11 ~@30 [b1,b2]@14 ~@16 [a#1,a#2]@18 ~@5 [e2,e3]@11 ~ [e2,e3]@11 ~@39]/8", // B D# E F# F#sus2 B B5 B …
  AD: "[[f#2,f#3,c#4,a#4] ~@35, f#4]/3", // F#
  AE: "[~@52 a#3@7 ~@22 [b3,e5]@7 ~ [a#4,c#5,f#5]@3 [a#4,c#5,f#5]@3 ~ [a#4,c#5,f#5]@4 ~@13 f#4@7, ~ [d#5,f#5]@29 ~@8 d#5@3 f#5@7 d#5@11 b5@8 [b3,g#5]@3 b5@8 g#5@11 ~@11 c#5@8 ~ c#5@11, ~ b4@18 b4@11 ~@8 a#3@7 d#4@15 ~@3 e5@11 e4@15 ~@11 [a#4,f#5]@20, ~@16 f#4@11 f#4@62 f#4@15 f#4@9 ~@7, ~@23 d#4@7 [d#3,g#5]@29 e3@29 ~ [f#3,c#4]@31]/5", // E5 F# D#m E D#m G#5 F#5
  AF: "[~@24 b5@21 [b0,b1,b2]@125 ~@22, ~ [b3,f#4,b4,d#5,f#5]@14 ~@49, ~@22 b6@23 ~@147, ~@23 [d#6,f#6]@23 ~@146]/8", // B D#m
})).s("gm_piano").gain(0.4)

// chords · string ensemble 1
const string_ensemble_1 = note(`<
  ~@40 A@3 B ~@27 C@3 D ~ E F ~ G H I ~@8 J ~@3 J ~ K@3 L@2 M N O@3 P@2 Q@2 R@4 S T U V W X@3 Y@3 ~@3 Z AA AB AC AD AE
  AF AG AH@5 AI ~@15
>`.pickRestart({
  A: "[~@17 [e5,g#5]@6 [d#5,f#5]@6 ~ [c#5,e5]@12 [b4,e5]@12 [a#4,c#5]@3 ~@3 [a#4,c#5] ~@2 [a#4,c#5] ~@2 [a#4,c#5] ~@2 [a#4,c#5] ~@2]/3", // E D#m C#m E5 A#m
  B: "[a#4,c#5] ~ [a#4,c#5] ~@2 [a#4,c#5]@2 ~@17", // A#m
  C: "[~@20 [e5,g#5]@6 [d#5,f#5]@6 [c#5,e5]@12 [b4,e5]@12 [a#4,c#5]@3 ~@3 [a#4,c#5] ~@2 [a#4,c#5] ~@2 [a#4,c#5] ~@2 [a#4,c#5]]/3", // E D#m C#m E5 A#m
  D: "~@2 [a#4,c#5] ~@2 [a#4,c#5] ~@2 [a#4,c#5]@2 ~@14", E: "~@17 [e5,g#5] ~ [d#5,f#5] [c#5,f5] ~ [b4,d#5] [a#4,c#5]",
  F: "~ [g#4,b4] [f#4,a#4] ~ [f4,g#4] [d#4,f#4] ~ [c#4,f4] [b3,f#4] ~@15", // G#m F# Fm D#m C# B5
  G: "~@14 [d#5,g#5] ~@2 [d#5,g#5] ~@2 [d#5,g#5] ~@2 [d#5,f#5]", // G#5 D#m
  H: "~@2 [d#5,f#5] ~@2 [d#5,f#5] ~@2 [a#4,d#5] ~@2 [a#4,d#5] ~@2 [a#4,d#5] ~@2 [a#4,c#5]@4 ~@2 [a#4,c#5]", // D#m D#5 A#m
  I: "~@2 [a#4,c#5] ~@2 [a#4,c#5] ~@2 [g#4,b4]@3 ~@13", // A#m G#m
  J: "~@8 [c#5,f#5,a#5,c#6] ~@2 [c#5,f#5,a#5,c#6] ~@2 [c#5,f#5,a#5,c#6] ~@9", // F#
  K: "[~@5 [b4,e5]@15 [c#5,e5]@23 d#5@4 e5@4 [c#5,d#5]@15 [c#5,e5]@6, ~@43 [b4,c#5]@7 ~@22]/3", // E5 C#m C#sus2 C#m Bsus2
  L: "[~@2 d#5@7 ~ [e5,g#5,b5]@22 ~@7 [e5,g#5] ~@8]/2", M: "~@17 [e5,g#5] ~@6", N: "~@19 [e5,g#5] ~@4",
  O: "[~@22 c#5@15 [c#5,d#5]@15 [c#5,e5]@8 [c#5,d#5]@8 c#5@3 ~]/3", P: "[~@11 [f#4,b4,d#5]@26 ~@3 [f#4,a#4,d#5]@8]/2",
  Q: "[~@6 [f#4,a#4,d#5]@7 ~@6 [g#4,b4,e5] ~@3 [g#4,b4,e5]@22 [a#4,c#5,f#5] ~@2]/2", // D#m E F#
  R: "[[a#4,c#5,f#5] ~@8 [g#4,b4,e5] ~@2 [g#4,b4,e5] ~@8 [d#5,f#5]@24 ~ [d#5,f#5,g#5]@6 [d#5,f#5] ~@2 [d#5,f#5] ~@2 [d#5,f#5,g#5]@3 [d#5,f#5]@9 ~ [e5,g#5]@6 [e5,f#5] ~@2 [e5,g#5] ~@5 g#5@3 ~ [e5,f#5]@6, ~@83 [e5,f#5]@6 ~@7]/4", // F# E D#m G#7 D#m G#7 D#m E …
  S: "[c#5,f#5]@9 [e5,f#5,g#5]@14 ~", T: "~@10 [e4,g#4,b4]@13 ~", U: "~@10 [f#4,a#4,c#5]@13 ~",
  V: "~ [b4,d#5]@12 [a#4,c#5]@11", W: "~ [g#4,b4]@18 ~@5", X: "~ [e5,g#5]@2 ~@9",
  Y: "[~@3 c#5@12 ~ [c#5,d#5]@13 [c#5,e5]@7 [c#5,d#5]@7 c#5@8 ~@21]/3", // C#sus2 C#m C#sus2
  Z: "~@8 [d#5,f#5]@3 [b4,d#5] ~@2 [b4,d#5] ~@2 [b4,d#5]@4 ~@2 [b4,d#5]", // D#m B
  AA: "~@2 [b4,d#5] ~@2 [b4,d#5] ~@2 [d#5,f#5]@3 [a#4,d#5] ~ [a#4,d#5] ~@2 [a#4,d#5]@4 ~@2 [a#4,d#5] ~", // B D#m D#5
  AB: "~ [a#4,d#5] ~@2 [a#4,d#5] ~@2 [e5,g#5]@3 [b4,e5] ~@2 [b4,e5] ~@2 [b4,e5]@4 ~@2 [b4,e5] ~", // D#5 E E5
  AC: "~ [b4,e5] ~@2 [b4,e5] ~@2 [c#5,f#5] ~@2 [c#5,f#5] ~@2 [c#5,f#5] ~@2 [d#5,f#5]@4 ~@2 [d#5,f#5] ~", // E5 F#5 D#m
  AD: "~ [d#5,f#5] ~@2 [e5,f#5] ~@2 [d#5,f#5]@3 [b4,d#5] ~@2 [b4,d#5] ~ [b4,d#5]@4 ~@2 [b4,d#5] ~@2", // D#m Esus2 D#m B
  AE: "[b4,d#5] ~@2 [b4,d#5] ~@2 [d#5,f#5]@3 [a#4,d#5] ~@2 [a#4,d#5] ~@2 [a#4,d#5]@4 ~@2 [a#4,d#5] ~@2", // B D#m D#5
  AF: "[a#4,d#5] ~@2 [a#4,d#5] ~@2 [e5,g#5]@3 [b4,e5] ~@2 [b4,e5] ~@2 [b4,e5]@4 ~@2 [b4,e5] ~@2", // D#5 E E5
  AG: "[b4,e5] ~@2 [b4,e5] ~@2 [c#5,f#5] ~@2 [c#5,f#5] ~@2 [c#5,f#5] ~ [d#5,f#5]@4 ~@2 [d#5,f#5] ~@2 [d#5,f#5]", // E5 F#5 D#m
  AH: "[~@2 [e5,f#5] ~@8 b4@18 a#4@12 d#5@6 c#5@6 [e4,b4]@9 ~@2 [e5,g#5]@6 [d#5,f#5]@6 [c#5,e5]@11 [b4,e5]@11 [a#4,c#5]@3 ~@3 [a#4,c#5] ~@2 [a#4,c#5] ~ [a#4,c#5] ~@2 [a#4,c#5] ~@2 [a#4,c#5] ~ [a#4,c#5] ~@2, ~@11 f#5@29 ~ f#4@12 ~@67]/5", // Esus2 E5 E D#m C#m E5 A#m
  AI: "[a#4,c#5] ~@7", // A#m
})).s("gm_string_ensemble_1").gain(0.45)

// chords · tremolo strings
const tremolo_strings = note("<~@2 A@2 ~@153>".pickRestart({
  A: "[~@10 [d#6,f#6,a#6]@33 ~@5]/2", // D#m
})).s("gm_tremolo_strings").gain(0.25)

// other · pizzicato strings
const pizzicato_strings = note("<~@91 A@4 ~@62>".pickRestart({
  A: "[~@8 d#5@3 f#4@3 b4@3 c#5@3 ~@3 b4@3 f#4@3 f#4@3 d#5@3 f#4@3 a#4@3 c#5@3 ~@3 a#4@3 f#4@3 f#4@3 b4@3 e4@3 g#4@3 c#5@3 ~@3 g#4@3 e4@3 f#4@3 ~@16]/4",
})).s("gm_pizzicato_strings").gain(0.4)

// chords · string ensemble 1
const string_ensemble_1_2 = note(`<
  ~@13 A ~@26 B@3 C ~@27 D@3 E ~ F G H I J K ~@8 L ~@3 L ~ M@3 N@2 O P Q@3 R@2 S@2 T@4 U V W X ~ Y@3 Z@3 ~@3 AA AB AC AD
  AE AF AG AH AI@5 AJ ~@8 AK@7
>`.pickRestart({
  A: "~@5 g#4@3 ~@4",
  B: "[~@17 [e4,b4]@6 [d#4,a#4]@6 ~ [c#4,g#4]@12 [b3,g#4]@12 [c#4,f#4]@3 ~@3 [c#4,f#4] ~@2 [c#4,f#4] ~@2 [c#4,f#4] ~@2 [c#4,f#4] ~@2]/3", // E5 D#5 C#5 E F#5
  C: "[c#4,f#4] ~ [c#4,f#4] ~@2 [c#4,f#4]@2 ~@17", // F#5
  D: "[~@20 [e4,b4]@6 [d#4,a#4]@6 [c#4,g#4]@12 [b3,g#4]@12 [c#4,f#4]@3 ~@3 [c#4,f#4] ~@2 [c#4,f#4] ~@2 [c#4,f#4] ~@2 [c#4,f#4]]/3", // E5 D#5 C#5 E F#5
  E: "~@2 [c#4,f#4] ~@2 [c#4,f#4] ~@2 [c#4,f#4]@2 ~@14", F: "~@17 a#4 ~ g#4 f#4 ~ f4 d#4",
  G: "~ c#4 b3 ~ a#3 g#3 ~ f#3 b3 ~@2 b3 ~@2 f#4 ~@2 f#4 ~@2 b4@4", H: "~@8 f#4 ~@2 f#4 ~@2 f#4 ~@2 f#4@4 ~@2 f#4",
  I: "~@2 f#4@3 g#4 ~@8 [g#4,c#5] ~@2 [g#4,c#5] ~@2 [g#4,c#5] ~@2 [f#4,c#5]", // C#5 F#5
  J: "~@2 [f#4,c#5] ~@2 [f#4,c#5] ~@2 [d#4,g#4] ~@2 [d#4,g#4] ~@2 g#4 ~@2 [c#4,g#4]@4 ~@2 [c#4,g#4]", // F#5 G#5 C#5
  K: "~@2 [c#4,g#4] ~@2 [c#4,g#4] ~@2 [b3,e4]@3 ~@13", // C#5 E5
  L: "~@8 [f#4,a#4,c#5,f#5] ~@2 [f#4,a#4,c#5,f#5] ~@2 [f#4,a#4,c#5,f#5] ~@9", // F#
  M: "[~@5 g#4@15 [f#4,b4]@23 [e4,g#4]@8 [f#4,b4]@15 [f#4,b4]@6]/3", // B5 E B5
  N: "[~@2 [g#4,b4]@7 ~ [g#4,b4]@23 ~@6 [g#4,b4]@2 ~@7]/2", O: "~@17 [g#4,b4]@2 ~@5", P: "~@19 [g#4,b4]@2 ~@3",
  Q: "[~@22 [c#4,f#4]@15 [d#4,f#4]@15 [e4,f#4]@8 [d#4,f#4]@8 [c#4,f#4]@3 ~]/3", // F#5 D#m Esus2 D#m F#5
  R: "[~@11 [b3,d#4,f#4]@27 ~@2 [a#3,d#4,f#4]@8]/2", // B D#m
  S: "[~@6 [a#3,d#4,f#4]@7 b3@3 c#4@3 [b3,e4,g#4]@2 ~@2 [b3,e4,g#4]@22 [c#4,f#4,a#4]@2 ~]/2", // D#m E F#
  T: "[[c#4,f#4,a#4]@2 ~@7 [b3,e4,g#4] ~@2 [b3,e4,g#4] ~@8 [f#4,b4]@24 ~ [g#4,a#4]@6 [f#4,a#4]@2 ~ [f#4,a#4]@2 ~ g#4@3 f#4@9 ~ [g#4,b4]@6 [f#4,b4]@2 ~ [g#4,b4]@2 ~ f#4@3 g#4@3 ~ [f#4,b4]@6, ~@58 a#4@13 ~@12 b4@6 ~@7]/4", // F# E B5 G#sus2 F# G#m B5 G#m …
  U: "[a#4,c#5]@3 [b4,c#5]@5", V: "~@5 [g#3,b3]@7", W: "~@5 [a#3,c#4]@7", X: "~ b3@12 c#4@11", Y: "~ [g#4,b4]@2 ~@9",
  Z: "[~@3 f#4@12 ~ f#4@13 e4@7 d#4@7 [c#4,f#4]@9 ~@20]/3", AA: "~@11 f#4 ~@2 f#4 ~@2 f#4@4 ~@2 f#4",
  AB: "~@2 f#4 ~@2 f#4 ~@5 f#4 ~ f#4 ~@2 f#4@4 ~@2 f#4 ~", AC: "~@4 f#4 ~@2 b4@3 g#4 ~@2 g#4 ~@2 g#4@4 ~@4",
  AD: "~ g#4 ~@5 a#4 ~@2 a#4 ~@2 a#4 ~@2 [a#4,c#5]@4 ~@2 [a#4,c#5] ~", // A#m
  AE: "~ [a#4,c#5] ~@8 f#4 ~@2 f#4 ~ f#4@4 ~@2 f#4 ~@2", AF: "f#4 ~@2 f#4 ~@5 f#4 ~@2 f#4 ~@2 f#4@4 ~@2 f#4 ~@2",
  AG: "f#4 ~@2 f#4 ~@2 b4@3 g#4 ~@2 g#4 ~@2 g#4@4 ~@2 g#4 ~@2",
  AH: "g#4 ~@2 g#4 ~@2 a#4 ~@2 a#4 ~@2 a#4 ~ [a#4,c#5]@4 ~@2 [a#4,c#5] ~@2 [a#4,c#5]", // A#m
  AI: "[~@2 [a#4,c#5] ~@8 f#4@30 a#3@12 g#3@9 ~@2 [e4,b4]@6 [d#4,a#4]@6 [c#4,g#4]@11 [b3,g#4]@11 [c#4,f#4]@3 ~@3 [c#4,f#4] ~@2 [c#4,f#4] ~ [c#4,f#4] ~@2 [c#4,f#4] ~@2 [c#4,f#4] ~ [c#4,f#4] ~@2]/5", // A#m E5 D#5 C#5 E F#5
  AJ: "[c#4,f#4] ~@11", AK: "[~@21 b3@125 ~@22]/7",
})).s("gm_string_ensemble_1").gain(0.4)

// chords · string ensemble 1 · soft notes
const string_ensemble_1_soft = note("<~@12 A@3 ~@65 B ~@37 C ~@3 D@2 ~@4 E@2 F G H I ~@23>".pickRestart({
  A: "[~@11 g#4@6 a#4@6 g#4@5 a#4@6 ~@6 a#4@6 g#4@5 a#4@6 ~@15]/3", B: "~@14 d#4 ~@9", C: "~ e4@18 ~@5",
  D: "[~@3 c#4@12 ~ d#4@13 f#4@7 f#4@7 ~@5]/2", E: "~@8 a#4@3 ~@13", F: "~ f#4 ~@20 g#4 ~", G: "~@4 g#4 ~@19",
  H: "~@4 [a#4,c#5] ~@2 a#4@3 ~@14", I: "~@2 a#4 ~@5",
})).s("gm_string_ensemble_1").gain(0.2)

// other · string ensemble 1
const string_ensemble_1_3 = note(`<
  ~@2 A@4 B@5 C@4 ~@19 D E F G H I@4 J ~@21 K L M N O@2 P@3 Q ~ R S T U ~@10 V ~@3 V ~ W@3 X@2 Y Z AA@3 AB@2 AC@2 AD AE
  AF AG AH AI AJ AK AL AM@3 AN@3 AO AP N AQ@2 AR AS AT AU AV AW@6 AX@2 ~@7 AY@7
>`.pickRestart({
  A: "[~@10 [d#2,d#3]@85 ~]/4", // D#
  B: "[[d#3,d#4] ~@2 [a#2,a#3] ~@2 [d#2,d#3]@44 ~@2 [d#3,d#4] ~@2 [a#2,a#3] ~@2 [d#2,d#3]@50 b2@11 ~]/5", // D# A# D# A# D#
  C: "[b2@11 ~ b2@5 ~ b2@5 b2@5 ~ b2@6 d#3@46 ~@15, ~@35 d#2@6 ~@55]/4",
  D: "~@7 b2@2 ~ b2 ~@2 b2@2 ~ b2 ~@2 b2@2 ~ b2 ~",
  E: "~ a#2@2 ~@2 a#2 ~@2 a#2@2 ~ a#2 ~@2 a#2@2 ~ a#2 ~@2 a#2@2 ~ a#2",
  F: "~@2 g#2@2 ~ g#2 ~@2 g#2@2 ~ g#2 ~@3 g#2@2 ~ g#2 ~@2 g#2@2 ~",
  G: "g#2 ~@2 f#2@2 ~ f#2 ~@2 f#2@2 ~ f#2 ~@2 f#2@2 ~ f#2 ~@2 f#2@2 ~",
  H: "a#2 ~@3 b2@2 ~ b2 ~@2 b2@2 ~ b2 ~@2 b2@2 ~ b2@2 ~ [b2,d#3]@2", // B
  I: "[~ f#3@2 ~ [a#2,c#4]@3 b3@2 ~ a#2@2 ~ a#2 ~@3 a#2@2 ~ a#2 ~@2 [a#2,c#3]@3 d#3@2 ~ e2@24 ~ e2@11 ~ e2@11 ~ f#2@3 ~@3 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2, ~ b2 ~@5 a#2 ~@18 a#2 ~@69]/4", // A#m F#
  J: "[f#2,f#3] ~ [f#2,f#3] ~@2 [f#2,f#3]@2 ~@17", K: "~@14 b2@2 ~ b2 ~@2 b2@2 ~ b2",
  L: "~@2 b2@2 ~ b2 ~@2 a#2@2 ~ a#2 ~@2 a#2@2 ~ a#2 ~@2 a#2@2 ~ a#2",
  M: "~@2 a#2@2 ~ a#2 ~@2 g#2@2 ~ g#2 ~@2 g#2@2 ~ g#2 ~@2 g#2@2 ~ g#2",
  N: "~@2 g#2@2 ~ g#2 ~@2 f#2@2 ~ f#2 ~@2 f#2@2 ~ f#2 ~@2 f#2@2 ~ f#2",
  O: "[~@2 f#2@2 ~ a#2 ~@2 b2@2 ~ b2 ~@2 b2@2 ~ b2 ~@2 b2@2 ~ b2@2 ~ [b2,d#3]@2 ~ f#3@2 ~ [a#2,c#4]@3 b3@2 ~ a#2@2 ~ a#2 ~@2 a#2@2 ~ a#2, ~@29 b2 ~@5 a#2 ~@12]/2", // B A#m
  P: "[~@2 [a#2,c#3]@3 d#3@2 ~ e2@23 ~ e2@11 ~ e2@11 ~ f#2@3 ~@3 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3], ~@5 a#2 ~@66]/3", // A#m F#
  Q: "~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3]@2 ~@14", R: "~@17 f4 ~ d#4 c#4 ~ b3 a#3",
  S: "~ g#3 f#3 ~ f3 d#3 ~ c#3 b2 ~@2 b2 ~@2 f#3 ~@2 f#3 ~@2 b3@4", T: "~@8 b2 ~@2 b2 ~@2 f#3 ~@2 b3@4 ~@2 f#3",
  U: "~ b2@2 ~@9", V: "~@8 [f#3,c#4,f#4] ~@2 [f#3,c#4,f#4] ~@2 [f#3,c#4,f#4] ~@9",
  W: "[~@5 e4@15 c#4@23 d#4@4 e4@4 f#4@15 e4@6]/3", X: "[~@2 d#4@7 ~ b3@22 ~@7 [e3,b3] ~@8]/2", Y: "~@17 [e3,b3] ~@6",
  Z: "~@19 [e3,b3] ~@4", // E5
  AA: "[~@22 [f#3,c#4,f#4]@14 ~ [f#3,c#4,f#4]@15 [f#3,c#4,f#4]@7 ~ [f#3,c#4,f#4]@7 ~ [f#3,c#4,f#4]@3 ~]/3", // F#5
  AB: "[~@4 [f#2,f#3]@2 ~@2 [f#2,f#3]@2 ~ [b2,d#3,f#3]@26 ~@3 [a#2,d#3,a#3]@8]/2", // F# B D#5
  AC: "[~@6 [a#2,d#3,a#3]@7 ~@6 [b2,e3,g#3] ~@3 [b2,e3,g#3]@22 [c#3,f#3,a#3] ~@2]/2", // D#5 E F#
  AD: "[c#3,f#3,a#3] ~@8 [b2,e3,g#3] ~@2 [b2,e3,g#3] ~@11", AE: "~@3 c#4 ~@2 d#4 ~@2 c#4@3 b3@3 ~@9",
  AF: "~@4 d#4 ~@2 d#4 ~@2 d#4@3 c#4@2 ~@2 d#4@3 ~@4", AG: "~@5 f#4 ~@2 e4 ~@2 f#4@3 e4@2 ~@2 f#4@3 ~@3", AH: "f#4",
  AI: "~@10 [e3,b3,e4]@13 ~", AJ: "~@10 [f#3,c#4,f#4]@13 ~", AK: "~ f#3@23", AL: "~ g#3@18 ~@5", AM: "~ [e3,b3]@2 ~@9",
  AN: "[~@3 [f#3,c#4,f#4]@12 ~ [f#3,c#4,f#4]@13 [f#3,c#4,f#4]@6 ~ [f#3,c#4,f#4]@7 [f#3,c#4,f#4]@8 ~@12 b2@2 ~ b2 ~@2 b2@2 ~]/3", // F#5
  AO: "b2 ~@2 b2@2 ~ b2 ~@2 a#2@2 ~ a#2 ~@2 a#2@2 ~ a#2 ~@2 a#2@2 ~",
  AP: "a#2 ~@2 a#2@2 ~ a#2 ~@2 g#2@2 ~ g#2 ~ g#2@2 ~ g#2 ~@2 g#2@2 ~ g#2",
  AQ: "[~@2 f#2@2 ~ a#2 ~@2 b2@2 ~ b2 ~@2 b2@2 ~ b2 ~@2 b2@2 ~ b2@2 ~ b2@2 ~ [b2,f#3] ~@2 [a#2,c#4]@3 [a#2,a#3] ~ a#2@2 ~ a#2 ~@2 a#2@2 ~ a#2@2, ~@26 d#3 ~@21]/2", // B5 A#m A#
  AR: "~ a#2@2 ~ [a#2,f#3] ~@2 [g#2,a#3]@3 [g#2,g#3] ~@2 g#2@2 ~ g#2 ~@2 g#2@2 ~ g#2@2, ~ d#3 ~@22", // D#m G#sus2 G#
  AS: "~ g#2@2 ~ [g#2,e3] ~@2 [f#2,g#3]@3 [f#2,f#3] ~@2 f#2@2 ~ f#2 ~@2 f#2@2 ~ f#3@2, ~ b2 ~@20 f#2 ~", // C#m F#sus2 F#
  AT: "~ f#2@2 ~ [a#2,a#3] ~@2 [b2,c#4]@3 [b2,b3] ~@2 b2@2 b2 ~@2 b2@2 ~ b2@2 ~, ~ g#3 ~@22", // A# Bsus2 B
  AU: "b2@2 ~ [b2,f#3] ~@2 [d#3,c#4]@3 [d#3,a#3] ~@2 d#3@2 ~ d#3 ~@2 d#3@2 ~ a#2@3, d#3 ~@20 d#3 ~@2", // B5 D#7 D#5
  AV: "d#3@2 ~ [d#3,f#3] ~@2 [e3,a#3]@3 [e3,g#3] ~@2 e3@2 ~ e3 ~@2 e3@2 ~ g#2@3, ~@21 e3 ~@2", // D#m Edim E
  AW: "[e3@2 ~ e3 ~@2 [f#3,g#3]@3 f#3@3 f#3@2 f#3@3 f#3@3 f#3@3 g#3 ~@2 [a#2,a#3] ~@2 [b2,c#4]@3 [b2,b3] ~@2 b2@2 ~ b2 ~@2 b2@2 ~ b2@2 ~ [b2,d#3]@2 ~ b2 ~@2 [a#2,c#4]@3 b3@2 ~ a#2@2 ~ a#2 ~@2 a#2@2 ~ a#2 ~@2 [a#2,c#3]@3 d#3@2 ~ e2@22 ~ e2@10 ~ e2@10 ~ f#2@3 ~@3 f#3@3 f#3@2 f#3@3 f#3@3 f#3@2 f#3@3, b2 ~@22 f#3@27 f#3@78 ~@16, ~@56 a#2 ~@17 a#2 ~@53 f#2 ~@2 f#2 ~ f#2 ~@2 f#2 ~@2 f#2 ~ f#2 ~@2]/6", // F#sus2 A# Bsus2 B A#m
// … 74 more lines