Strudelify
Psien (Poesy), Song for Voice & Piano, Op. 18 5 cover art

Psien (Poesy), Song for Voice & Piano, Op. 18 5

Edvard Grieg

KeyA minorTempo83 bpm
0:00/0:00
// Psien (Poesy), Song for Voice & Piano, Op. 18 5 — Edvard Grieg
// 83 bpm, 4/4, key A minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 91 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
// note: The whole transcription plays 22 ms behind the beat; the grid follows it, so its parts stay together.
setcpm(83/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, A@4 for four bars: edit a riff to change every repeat.

// chords · piano · "A.PIANO 1"
const piano = note("<~ A@6 B ~@12 C@4 D@8 E F G@3 H I@3 J@5 K@4 ~@4 L@8 M N O P Q R S@7 ~@16>".pickRestart({
  A: "[~@6 [a4,a5,a6,a7]@9 ~@2 [g#4,g#6] [e4,e5,e6,e7]@9 ~@2 [c4,c6] [a3,a4,a5,a6]@3 ~@2 [g#3,g#5] [e3,e4,e5,e6]@3 ~@2 [c3,c5] [a2,e3,a3,a4,e5,a5]@3 ~ [g#2,g#4]@2 [e2,e3,e4,e5]@2 ~@2 [c2,c3,c4,c5]@2 ~@18 a0@6 ~@21 a3@2 ~@22 [f2,f3]@3 [f3,a3,d4,a4]@2 [f3,a3,d4,f4,a4,d5,a5]@15 ~, ~@6 [c5,c7]@11 g#5 [g#4,g#6]@10 e7@14 [c3,c5] ~@2 [a2,a3,a4,a5]@9 a3@28 e3@5 a2@9 a4@2 c5@3 ~ e4@14 a5 c6@2 e6 a6 c7@2 f1@3 [f2,a2,d3]@17 ~, ~@6 [e5,e7]@11 g#7@11 [e4,e5,e6] [c5,c7] [c4,e4,c6,e6]@3 [a3,a4,a5,a6]@2 [g#4,g#6]@9 ~@4 [g#2,b2,g#4,b4]@6 a2@25 a2@5 a3@5 c3@12 ~@4 c5@3 a5@3 a4@3 e5@29 ~, ~@16 a7@28 ~@6 [e2,e3,e4,e5]@4 a1@23 ~ [a1,e2]@2 ~ c3@5 c4@4 e3@11 ~@3 a4@3 e5@3 c6@3 c5@30 ~, ~@16 [a4,a5,a6]@2 [b4,b6]@18 [g#3,b3,g#5,b5]@3 [e3,e4,e5,e6]@2 [c4,c6]@3 ~@2 [g#3,g#5]@8 a4@38 a3 c4@2 e4@6 c4@42 ~]/6", // A G# E C A G# E C …
  B: "~ [g#2,g#3]@2 [g#3,b3,e4,b4] [g#3,b3,e4,g#4,b4,e5,b5]@8, ~ g#1@11, ~ [g#2,b2,e3]@3", // G# E
  C: "[~@6 [a3,c4,e4,a4,c5,e5]@6 [a3,d4,f4,a4,d5,f5]@4 ~ [a3,b3,e4,g4,a4,b4,d5,g5] [a3,d4,f4,a4,d5,f5] ~@8 [a2,e3]@3 [a3,c4,e4,a4,c5,e5]@4 ~ [a3,d4,f4,a4,d5,f5]!2 ~@2 [a3,b3,d4,g4,a4,b4,d5,g5] ~@2 [a3,c4,e4,a4,c5,e5]@11 ~ [c4,e4,g4,c5,e5,g5]@6 [c4,f4,a4,c5,f5,a5]@4 ~ [c4,d4,f4,b4,c5,d5,f5,b5] [c4,a4,c5,f5,a5] ~@8 [c3,g3]@3 [c4,e4,g4,c5,e5,g5] ~@4 [c4,f4,a4,c5,f5,a5]!2 ~@2 [c4,d4,f4,b4,c5,d5,f5,b5] ~@2 [c4,e4,g4,c5,e5,g5]@6, ~@6 [a2,e3] ~@14 [a3,c4,e4,a4,c5,e5]@9 ~@24 [c3,g3] ~@14 [c4,e4,g4,c5,e5,g5]@9 ~@18]/4", // Am Dm Em7 Dm A5 Am Dm G …
  D: "[~@14 f3@2 ~@16 a3@2 ~@31 a4 ~@36 e4 ~@23 a4@2 ~@33 a5 ~@9 [a4,d6]@2 ~ [g#4,c5,d#5,g#5]@4 ~@5 [f2,f3,c4,d#4,a4]@3 [e2,e3,e4,a4,c5]@2 ~@4, ~@6 e4@7 b2@3 a3@9 d4 b3 f3 d3 g#2@5 c#4@8 c#2@8 e4 a#3 g3@3 a3@2 d4@4 f3@5 ~ a2@7 b3 a3 d5 f3@2 c3@2 g#3 c4@4 d#3 a3 b3@2 c5@8 g#3 b3 e4@2 ~ b3@4 d5@5 a4@3 g#3@7 b4 f4 d4@3 ~ e4@2 c#5@5 a#4 d5@9 g5 e5 a#4 g4@5 d5@3 [a3,c6,e6]@6 [d3,f5,a5]@4 a4 b4 [d5,b5] b4@4 f4@2 ~@17, ~@6 e2@5 d4@6 d4@2 b4@11 a4@8 a#3@2 d4@3 c#3@6 g4@4 c#3@5 f4@3 ~@2 c4@3 ~@2 d3@10 g#4@11 d#4@3 f#3 c4@3 [e2,b4]@5 g#4@5 g#4@2 f4@2 f4@3 d5@4 f4 b4 d5 f5@5 g#3@6 g5@3 e4@4 e6@11 e4@5 f5@3 ~ c5@4 ~@2 d4@10 ~@18, ~@7 b2@3 g#3@2 d2@6 g#1@12 a2@5 ~ [g2,a#4]@5 g4@3 g3 a#3 e4 g4 a#4@6 [d3,d5,f5]@5 a4@5 f4@2 ~@2 b4 f3 [a3,c5] b3 [d4,b4]@6 f#2@5 d#4@2 b2@5 ~ e3@3 d#4@3 e3@5 [e3,e5]@6 [d3,f5]@6 [g#2,b5]@12 [a3,a5]@6 a#4 g3@5 e5 [c#3,c#4]@11 [d4,d6,f6]@7 f4@5 ~ a3@11 [f#3,c4,d#4]@6 ~@12, ~@9 e3@3 f4@7 g#2 d3 f3 b3 d4 f4@7 e3@4 g4@2 e3@5 e5@18 [a2,c5,e5]@6 [d2,f4,a4]@13 ~ d#3@4 [f2,a4]@6 e2@5 f#4@7 ~@3 e4@4 b3@5 b4@2 d4@5 d5@5 ~@3 a4@3 a#5@5 g5@3 g4 a#4 e5 g5 a#5@6 ~ a4@4 a5@5 f5@2 ~@2 b5 f4 c6@8 ~@18]/8", // D5 G# F7 Am Dm G E5 Gm …
  E: "[e2,e3,b3,d4,g#4] ~@6 [a2,d#3,a5,e6]@2 [f5,c6] [e3,c4,e5,a5] c6 [f#3,a3,d4,b5] ~ g#5 [g#3,b3,e4,e5] ~@2 [a2,d#3,a4,e5]@2 [f4,c5] [e3,c4,e4,a4] ~ c5, ~@6 [c6,f6]@4 ~@7 [c5,f5]@4 ~@3", // E7 A F5 Am Bm7 E A F5 …
  F: "[f#3,a3,d4,b4] ~ g#4 [g#3,b3,e4] ~@5 [e3,c4,e4] ~ g#4 [a3,c4,a4] ~ [e4,b4] [g#3,a3,c4,a4,c5] ~ [a4,d#5] [g3,a3,c4,c5,e5] ~ [c5,g#5] [f#3,a3,c4,e5,a5] ~ [e5,b5], ~@5 c4@3 d#4@2 ~@14, ~@3 [a2,d#3,f4]@2 ~@7", // Bm7 E C Am E5 G# Adim Am7 …
  G: "[[f3,a3,c4,a5,c6] ~ a5 [e3,a3,c4,c6,e6] ~@8 [b5,d6,b6,d7]@2 ~@4 [g#5,b5,g#6,b6]@2 ~@4 [e5,g#5,e6,g#6] ~@5 [d5,f5,d6,f6]@2 ~@4 [b4,d5,b5,d6]@2 ~@4 [g#4,b4,g#5,b5]@2 ~@4 [e4,g#4,e5,g#5]@2 ~ [e2,e3,e5,e6]@3 [c6,f6] [a2,d#3]@2 [c4,e5,f5,a5,c6] e3 c6 [f#3,a3,d4,b5] ~ g#5 [g#3,b3,e4,e5] ~@4 [f4,c5] [e3,c4,e4,a4] ~ c5, ~@2 d#6@2 ~@2 [e2,e3]@5 [f5,e7]@3 ~@2 [a5,a6]@4 ~ [a5,b5]@4 ~@2 [g5,g#5]@4 ~@4 [f4,e6]@3 ~@2 [a4,a5]@4 ~ [a4,b4]@4 ~@6 [a5,e6] ~@16, ~@9 [e6,f6]@4 ~@4 [d5,c7]@3 ~@2 [f5,f6]@4 ~@2 [e5,e6]@4 ~ [e5,f5]@4 ~@4 [d4,c6]@3 ~@2 [f4,f5]@4 ~@15 [c5,f5]@4 ~@3, ~@10 [c6,c7]@4 ~ [c6,d6]@4 ~@4 [b4,a6]@3 ~@3 [g#4,g6]@3 ~@2 [c5,c6]@4 ~ [c5,d5]@4 ~@4 [b3,a5]@3 ~@16 [a2,d#3,a4,e5]@4 ~@2]/3", // F Am Bm G#m E Dm Bm G#m …
  H: "[f#3,a3,d4,b4] ~ g#4 [g#3,b3,e4] ~@2 [a2,d#3,f4]@2 ~ [e3,c4,e4] ~ g#4 [a3,c4,a4] ~ [e4,b4] [g#3,a3,c4,a4,c5] ~ a4 [g3,a3,c4,c5,d5,d#5] ~ [c5,g#5] [f#3,a3,c4,d#5,a5] ~ [d#5,b5], ~@5 c4@3 d#4@2 ~@14", // Bm7 E F7 C Am E5 G# Am7b5 …
  I: "[[f3,a3,c4,a5,c6] ~ [g5,d6] [d#3,g3,c4,c6,d#6] ~ [a5,g6] [d6,f#6]@2 ~@4 [a5,c6,a6,c7]@2 ~@4 [f#5,a5,f#6,a6]@2 ~@4 [d5,f#5,d6,f#6]@2 ~@4 [c5,d#5,c6,d#6]@2 ~@4 [a4,c5,a5,c6]@2 ~@4 [f#4,a4,f#5,a5]@2 ~@4 [d4,f#4,d5,f#5]@2 ~ d5@2 ~ [g3,c#4,d6] c6 a#5!2 a5 ~ a#5 a5 f#5 [f#4,a4,c5,d5] ~ [d#5,f#5] [g3,e5,g5] ~ [g5,a#5] [d4,e4,a#4,e5,d6] ~ [d#5,f#5], ~@6 [d2,d3]@5 [d#5,d7]@3 ~@2 [g5,g6]@4 ~ [g5,a5]@4 ~@2 [f5,f#5]@4 ~@4 [d#4,d6]@3 ~@2 [g4,g5]@4 ~ [g4,a4]@4 ~@2 d6 ~@2 d#6@3 d6@4 ~@11, ~@9 [d6,d#6]@4 ~@4 [c5,a#6]@3 ~@2 [d#5,d#6]@4 ~@2 [d5,d6]@4 ~ [d5,d#5]@4 ~@4 [c4,a#5]@3 ~@2 [d#4,d#5]@4 ~@7 [d4,a#4]@2 g5@2 ~@11, ~@10 [a#5,a#6]@4 ~ [a#5,c6]@4 ~@4 [a4,g6]@3 ~@3 [f#4,f6]@3 ~@2 [a#4,a#5]@4 ~ [a#4,c5]@4 ~@4 [a3,g5]@3 ~@11 [e4,g4,c5]@2 ~@9]/3", // F G5 Cm A7 D Am F#m D …
  J: "[[g3,e5,g5] ~ [g5,a#5] [d4,e4,a#4,e5,d6] ~@4 f6 ~ e6 ~ f6 [b4,d5,g5]@2 [c#5,e5,g5,a5,c#6] ~@2 [d4,b5,d6]@2 f6 [a4,b4,f5,b5,a6] ~@2 [d4,b5,d6]@2 [d6,f6] [a4,b4,f5,b5,a6] ~@6 [c7,d#7]@2 [b4,f5,a5] [a#6,c#7]@2 ~ [g#6,b6]@2 [g6,a#6]@2 ~ [f6,g#6]@2 ~ [d#6,f#6]@2 ~ [c#6,e6]@2 ~@5 [g#5,b5]@2 [b3,f4,a4] [f#5,a5]@2 ~@3 [d#5,f#5]@2 ~@6 [a4,c5]@2 [g#4,b4]@2 ~@6 [g2,g4] [g4,a4] ~@2 f3 ~@19 b4 [b4,c5] ~@9 d3, ~@6 [d4,g#4,a6,a#6]@3 a6@4 ~@17 [d4,b5,d6]@5 ~@19 [d2,d3,d6]@7 ~@17 g2@2 f3@2 f3@2 ~@2 [f3,f4]@3 ~ [g2,c5]@3 ~@3 g2@2 ~@3 d3@2 d3@2 [c4,c5]@3 ~@2 [f3,a4]@3 d3@2 d3@2 [c4,a5]@2 ~, ~@7 g6@2 [a4,f5,f6]@2 d6@2 e6 ~@3 [a#5,c#6]@3 d6@2 ~ [a#5,c#6]@4 ~@2 [a#5,c#6]@6 ~@18 c6@2 [a#5,c#6]@5 [g5,a#5]@2 ~ [f5,g#5]@2 e5@2 ~ [d5,f5]@2 c5@2 [b4,d5]@2 ~@4 c5@6 ~@4 a4@2 ~@3 [c4,f5]@2 ~ f5@10 ~@8 f5@4 ~@2, ~@32 [d7,f7]@3 ~ [b6,d7]@2 ~ [a6,c7]@2 ~@3 [f#6,a6]@2 ~ [e6,g6]@2 ~ [d6,f6]@2 ~ d#6@8 ~@3 g5@2 ~@3 [c#5,e5]@2 d#5@2 [a#4,c#5]@2 ~@6 [c4,a4]@3 ~@3 c4@2 ~@3 f3@2 f3@2 ~@2 f3@2 f3@2 g2@2 ~@3 d3@2 d3@2 c4@2 ~@3 f3@2 f3@2, ~@33 [a4,b4,f5,c#7,e7]@2 ~@19 b5@3 [a3,b3,f4,a5,c6]@4 ~@18 d3@2 ~@2 d3@2 d3@2 ~@2 d3@2 d3@2 ~@2 d3@2 d3@2 c4@2 ~@3 f3@2 f3@2 g2@2 ~@2 [f3,c5]@2 g2@2 ~@4]/5", // C Gm Em7b5 G A7 G Bm7b5 G …
  K: "[~@12 e5 f5 f3 ~@5 [f3,a5] c4 ~@2 a5 ~ a5 ~@21 g2 d3 ~@28 [b4,d6,f6,g6,d7]@4 ~@14, a5@10 ~ d3@2 [d3,e5]@2 c4@2 d3@2 [d3,b5]@2 ~ [f3,d5]@2 g2@2 f3@2 [f3,d5]@2 [g2,c6]@2 [f3,c6]@2 [f3,f5]@2 [g2,c6]@2 [f3,c6]@2 [f3,f5]@2 [g2,f6]@2 [f3,f6]@2 [f3,a5]@2 ~ g6@2 ~@3 a6@7 [d3,f3] a3 c4 d4 [f4,a4] c4 [d4,f4] a4 [c5,d5] f5 a5 c5 [d5,f5] [a5,c6] d6 f6 a6 [d5,f5,g5]@6 ~@12, g2@2 f3@2 f3@2 g2@2 f3@2 f3@2 g2@2 ~@2 [f3,f5]@3 ~@2 f5@2 ~@25 f6@2 ~ [c4,c6]@2 [d3,c6]@2 g2@26 ~@15, ~ d3@2 c4@2 d3@2 d3@2 [c4,f5]@3 ~@2 d5@3 ~ [g2,a5]@2 ~@3 [d3,f5]@2 [d3,b5]@2 [c4,f5]@2 [d3,f5]@2 [d3,d6]@2 [c4,a5]@2 [d3,a5]@2 [d3,d6]@2 [c4,a5]@2 [d3,a5]@2 [d3,g6]@2 [c4,c6]@2 [d3,c6]@2 ~ [f3,f6]@2 [f3,a5]@2 g1@27 ~@15, ~@56 c3 d3 f3 a3 c3@21 ~@15]/4", // F G7 Dsus2 G Dm C5 F5 F …
  L: "[~@12 b4@2 ~@24 [c4,c5,d5,f#5]@2 [c4,c5,d5,f#5,b5]@2 ~@10 g4@2 ~@6 [a#4,a#5]@2 ~@3 [g4,g5] ~@9 [g4,c5,c6]@3 ~@4 f#3@2 [g#4,g#5] ~@3 [f#5,f#6]@2 ~@10 g4@2 ~@22 f2@2 ~@8 [d3,c#5]@2 ~@10 d3@2 ~@22 [g3,e5]@2 ~@8 d5@3 ~@7 c4@2, ~@6 c3@10 e4@4 a3@6 c4 b4@7 d#4@8 ~@2 d3@2 a#3@2 [b3,g4,g5]@2 d4@4 ~@2 g3@6 [d3,c5,c6] [a#4,a#5] a#3@7 g3 [a#3,d#5,d#6]@2 c#4@4 ~ [d#5,a#5]@6 ~@6 [d6,a6]@12 ~@3 a#3@6 f2@6 g#3 e4 [a3,c5]@2 c3@4 ~@2 d3@6 ~@2 g2@6 a#3@8 g#2@8 [e3,e5]@2 [a2,c6]@8 [e4,g5]@4 [c3,c5]@8 f#4@12, ~@6 c5@6 f#3@4 a4 g4@2 ~@3 f4@2 [g#3,d5]@4 f4@8 [e4,g4]@6 ~ [d5,a5]@11 [c5,c6]@6 g2@4 [a4,a5]@2 ~@3 [c#3,f5,f6]@9 ~@2 d#3@5 ~ [d3,d5,d6]@4 ~@2 d3@2 a#3@2 [b3,g5,g6]@2 d4@5 ~ c3@4 [a3,a4]@4 c5@4 c3 d5@9 ~@6 [b3,b4]@4 d5@4 d3 e5@2 f#4@7 ~@2 e3@2 d4@8 ~@3 a5@8 ~@5 g4@5 b4@9, ~@8 g3@6 [g3,c5]@4 [c3,a4]@12 [c3,a4]@7 ~ [d3,d6]@4 [g2,a4,b4]@12 c3@12 [d#2,a#4,a#5]@12 ~@6 c4@4 [c4,f#4,a#4]@14 c5@8 [c3,b4]@4 ~@2 a#4@10 ~@4 c4@7 ~@3 c5@10 e5@6 [c4,c5]@6 ~@2 g3@2 d#4@7 ~@3 c4@8 ~@4 f3@4, ~@10 e4@5 b4@4 ~@2 e5@9 ~@2 g3@5 ~@3 f#4@14 ~@4 d#4@8 ~@2 a#2@10 [g#2,a#4,c5]@7 ~@5 [g2,a5,b5]@12 e2@12 [e2,e5]@12 [f#2,d5]@11 ~ [f#2,f#5]@6 [b3,d5]@4 g2@14 [b2,b5]@11 ~ [d3,a4]@10 ~@2 [g2,a4,d5]@6]/8", // D7 Bm A# G C5 G# F# Dmaj7 …
  M: "g4@5 ~@3 [c3,a#3,c4]@2 [c3,a#3,c4]@2 [a4,a5] ~ [c3,a3,c4]@2 [c3,a3,c4,c5,c6]@2 ~@4 [c3,g#3,c4]@2, b3@6 ~ [b4,b5]@2 ~ [c3,g#3,c4] ~, ~ [e2,c5,c6] f2 [e2,e5,e6], ~@7 [d5,d6]", // C7 A F Fm B Fm C E …
  N: "~@2 [c3,a3,c4]@2 [c3,a3,c4]@2 ~@2 [d3,c4,d4]@2 [d3,c4,d4]@2 ~@2 [d3,b3,d4,c#5,c#6]@2 [d3,b3,d4,d5,d6]@2 ~@4 [d3,a#3,d4] ~, [f2,c5,c6]@6 [f#2,d5,d6]@5 ~ [g2,b4,b5]@5 ~ [f#2,f#5,f#6]@5 ~, ~@10 [d3,a#3,d4] ~, ~@21 [e5,e6]@2 ~", // F D7 G Gm F5 D G F# …
  O: "~@2 [d3,b3,d4]@2 [d3,b3,d4] ~@3 [e3,d4,e4]@2 [e3,d4,e4]@2 ~@2 [e3,c4,e4]@2 [e3,c4,e4,c6,c7]@2 ~@4 [g3,d#4,g4]@2, [g2,d5,d6]@5 ~ [g#2,e5,e6]@6 [a2,c5]@6 [b2,b5,b6]@5 ~, ~@12 c6@4 ~@5 [a5,a6]@2 ~, ~@7 [e5,e6]@2 ~ [g3,d#4,g4] ~", // G E7 C Cm G5 C#m Am B …
  P: "~@2 [g3,e4,g4]@2 [g3,e4,g4,c5,c6]@2 [d2,d3,a4,a5]@2 [g3,c4,d4,g4]@2 [g3,c4,d4]@2 [f3,c4,d4,f4,d5,d6] ~ c4 [b4,b5] [f#3,c4,d4,f#4]@2 [g1,g2,a4]@2 [f3,b3,d4,f4]@2 [f3,b3,d4,f4,g4,b4,d5,g5] ~, [c3,g5,g6]@6 ~@8 [f3,d4,f4]@2 ~@4 [f#4,b4,d5,f#5] ~@3, ~@2 [e5,e6]@4 ~@4 g4 ~@7 a5 ~@5", // C D5 Gsus4 Dm7 B D7 Gsus2 Bdim …
  Q: "[f3,b3,d4,f4]@2 [f3,b3,d4,f4,f#4,b4,d5,f#5] ~ [f3,b3,d4,f4]@2 [f3,b3,d4,f4]@2 [f3,b3,d4,f4]@2 [f3,b3,d4,f4]@2 [e3,g3,c4,e4]@2 [e3,g3,c4,e4]@2 [e3,c4,e4,g4,c5,e5,g5]@2 [a1,a2] ~ [g3,c#4,e4,g4]@2 [c#4,a4,c#5,e5,a5] ~, [g#4,b4,d5,g#5] ~@3 [g4,b4,d5,g5] ~ [g#4,b4,d5,g#5] ~ [f#4,b4,d5,f#5] ~ [g4,b4,d5,g5] ~ [g#4,c5,e5,g#5] ~ [f#4,c5,e5,f#5] ~ g3 ~@3 [g#4,c#5,e5,g#5] ~ [g3,e4,g4]@2", // Bdim Bm Bdim C A C#dim A G#dim …
  R: "[g3,c#4,e4,g4]@2 [g3,c#4,e4,g4]@2 [g3,c#4,e4,g4]@2 [g3,g4,a#4,c#5,e5,a#5] ~ [c#4,e4,g4,g#4,c#5,e5,g#5] ~ [g3,c#4,e4,g4]@2 [f4,a#4,d5,f5,a#5] ~ [f3,a3,d4,f4]@2 [f3,a3,d4,f4,a4,d5,f5,a5]@2 [b1,b2]@2 [a3,d#4,a#4,d#5,f#5,a#5] ~ [a3,d#4,f#4,a4]@2, [a#4,c#5,e5,a#5] ~ [g#4,c#5,e5,g#5] ~ [a4,c#5,e5,a5] ~ [c#4,e4]@2 g3@2 [a4,c#5,e5,a5] ~ [f3,a3,d4]@2 [g#4,d5,f5,g#5] ~@5 [f#4,a4]@2 [b4,d#5,f#5,b5] ~", // C#dim Gdim C#m C#dim A# Dm B D#m …
  S: "[[g3,b3,e4,g4]@2 [b3,a#4,e5,g5,a#5] ~ [g3,b3,e4,g4]@2 ~@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4]@2 [b3,f4,a4,b4,a5,a6]@2 [b3,f4,a4]@6 a4@6 a4@6 a4@6 a5@6 a5@6 a4@6 [g2,d3,b3]@6 ~@7 c5@2 ~@4 c6@2 ~@4 c7@2 ~@2 [d6,f6,b6] c7 ~@21 b6 ~ [c2,c6,e6,g6,c7]@9 ~@9, [c5,e5,g5,c6] ~ [g3,e4,g4]@2 [b4,e5,g5,b5] ~ [d2,d3]@26 e6@2 f7@8 [b3,a5,a6]@2 [e5,e6]@34 [g3,d4,a4,b4,f5]@6 a6@12 f4@6 g1@17 b5@12 [d4,c7] [b3,b4,d6,f6,b6] c7 [g3,g4,d6,f6,b6] [f3,f4,c7] [d6,f6,b6] [d3,d4,c7] [b2,b3,d6,f6,b6] c7 [g2,g3,d6,f6,b6] [f2,f3,c7] [d6,f6,b6] [d2,d3,c7] [b1,b2,d6,f6,b6] c7 [g1,g2,d6,f6,b6] [f1,f2,c7] [d6,f6] [d1,d2,a6,b6]@11 ~@8, ~@8 c#5@20 g#6@2 a7@6 c#6@2 d7@12 d6@34 [d5,b5]@6 a5@12 [d3,f3,b3] c4 [d3,b3] f3 c4@22 [g4,d6,f6,b6] [f4,f5,c7] [d6,f6,b6] d5@29 ~@8, ~@8 c#6@2 d6@2 [e5,e6]@2 [f5,f6]@2 [g#5,g#6]@2 [a5,a6]@2 [c#6,c#7]@2 [d6,d7]@2 [e6,e7]@2 [f6,f7]@2 g#7@6 f6@2 c#7@10 [f5,f6]@2 [c#5,c#6]@36 g4@6 [d4,b4,f5]@6 [a3,a4]@17 [d4,f4,b4] [d5,f5,b5]@2 ~ [d5,f5,b5] c6 [d5,f5] [d6,f6,b6]@2 ~ [d6,f6,b6] c7@2 [d6,f6,b6] c7 g5@32 ~@8, ~@10 d5@20 a6@2 e7@6 d6@2 [g#5,g#6]@10 d5@4 [b4,a5,a6]@6 [g2,d3,a3,b3,f4]@6 [g3,d4,b4,f5,a5]@6 [g2,d3,a3,b3,f4]@12 f6@6 g3@12 g2@5 [d3,f3,b3] [d4,f4,b4]@2 ~ [d4,f4,b4] c5@48 ~@8]/7", // Em Bm7b5 G Bdim C Em D B7 …
})).s("gm_piano").gain(0.52)

// chords · flute
const flute = note(`<
  ~ A ~@6 B C D E ~@4 F@3 G ~@13 H@2 I ~ J@2 K ~@7 L@3 ~ M N O N ~@7 P Q R S ~@8 T@2 U@4 V@5 W X Y Z ~@2
>`.pickRestart({
  A: "~@3 [a5,a6] ~@8", B: "~@6 [c5,e5]@4 ~@2 [d5,f5]@4 ~ [b4,d5] [d5,f5] ~@2 [c5,e5]@3",
  C: "~@6 [c5,e5]@3 ~@2 [d5,f5]!2 ~@2 [b4,d5] ~@2 [c5,e5]@6", // C Dm Bm C
  D: "~@6 [e5,g5]@4 ~@2 [f5,a5]@4 ~ [d5,f5] [f5,a5]@2 ~ [e5,g5]@3", // Em F Dm F Em
  E: "~@6 [e5,g5]@3 ~@2 [f5,a5]!2 ~@2 [d5,f5] ~@2 [e5,g5]@6", // Em F Dm Em
  F: "[~@3 e5@3 f5@3 b5@6 a5@3 a#5@3 e6@6 f6@3 e6@3 a5 b5 c6]/3", G: "b5 d6 g#5@2 ~@4",
  H: "[~@12 [a4,c5]@17 ~@4 [c6,e6] ~@2 [b5,d6] ~@8 [f5,a5] ~@2]/2", I: "[e5,g#5] ~@8 [c5,e5] ~@2 [b4,d5] ~@11",
  J: "[~@12 [a4,c5]@17 ~@4 [a#5,d6] ~@2 [a5,c6] ~@8 [d#5,g5] ~@2]/2", K: "[d5,f#5] ~@8 [a#4,d5] ~@2 [a4,c5] ~@11",
  L: "[~@6 c6@12 f6@11 ~ a6@24 g6@3 ~@15]/3", M: "~@5 b5 a5@2", N: "g5 ~@3", O: "~@5 d6 a5@2", P: "~@3 g#5",
  Q: "a5@2 ~@7 a#5@3", R: "b5@2 ~@7 d#6@3", S: "e6 ~@5", T: "[~@3 c6@4 c6 b5 g5@4 g5 b5 c6!2 b5 g5!2 b5 c6!2 b5]/2",
  U: "[g5@2 g5@2 b5@2 g5@24 a5@23 ~ d6@8 d6@2 c#6@2 a5@8 a5@2 c#6@2 d6@2 d6@2 c#6@2 a5@2 a5@2 c#6@2 d6@2 d6@2 c#6@2, ~@6 c6@47 ~@43]/4",
  V: "[a5@2 a5@2 c#6@2 a5@24 g5@11 ~@49 f6@11 ~@13 [c6,f6]@3 ~@3, ~@6 d6@47 ~ e6@36 ~@30, ~@42 b5@23 ~ c6@35 ~@19]/5", // F5
  W: "~@6 [c6,f6] ~", X: "~@4 [c6,f6] ~@3", Y: "[c6,e6] ~@3 [c6,d#6] ~@3", Z: "[c6,e6] ~@7",
})).s("gm_flute").gain(0.24).pan(0.3)

// chords · oboe
const oboe = note(`<
  ~@8 A B C D ~@4 E@3 F ~@13 G H I ~ G J K ~@4 L M N@2 O@2 ~@12 P Q R S ~@8 T@2 U@4 V@5 W X Y Z ~@2
>`.pickRestart({
  A: "~@6 [a4,e5]@4 ~@2 [a4,f5]@4 ~ [a4,g5] [a4,f5] ~@2 [a4,e5]@3", // A5 Dm A7 Dm A5
  B: "~@6 [a4,e5]@3 ~@2 [a4,f5]!2 ~@2 [a4,g5] ~@2 [a4,e5]@6", // A5 Dm A7 A5
  C: "~@6 [c5,g5]@4 ~@2 [c5,a5]@4 ~ [c5,b5] [c5,a5]@2 ~ [c5,g5]@3", // C5 F Cmaj7 F C5
  D: "~@6 [c5,g5]@3 ~@2 [c5,a5]!2 ~@2 [c5,b5] ~@2 [c5,g5]@6", // C5 F Cmaj7 C5
  E: "[~@3 e4@3 f4@3 b4@6 a4@3 a#4@3 e5@6 [d5,f5]@3 [c5,e5]@3 a4 b4 c5, ~@11 f4]/3", F: "b4 d5 g#4@2 ~@4",
  G: "~@3 e4 a4 g#4 g4 f#4", H: "f4@3 e4@3 ~@3 f5 ~@2 f5 ~@8 b4 ~@2", I: "b4 ~@8 f4 ~@2 f4 ~@11",
  J: "f4@3 d#4@3 ~@3 d#5 ~@2 d#5 ~@8 a4 ~@2", K: "a4 ~@8 d#4 ~@2 d#4 ~@11", L: "~@6 c5 a4",
  M: "g4 [g4,a4] f4@2 a4@2 c5@3 f5@3 f5@9 c5@3", N: "[b4 [b4,c5] a4@2 c5@2 f5@3 a5@3 a5@19 ~@17]/2",
  O: "[~@2 [d5,f5]@9 ~@5]/2", P: "~@3 g#5", Q: "a5@2 ~@7 a#5@3", R: "b5@2 ~@7 d#6@3", S: "e6 ~@5",
  T: "[~@6 [c5,e5]@11 ~ a4@6 b4@5 ~ [c5,e5]@5 ~ [g4,d5]@5 ~ [c5,e5]@5 ~, ~@18 f5@11 ~@19]/2", // C G5 C
  U: "[[g4,d5]@5 ~ e5@36 f5@11 ~ [d5,f5]@11 ~ b4@6 c#5@5 ~ [d5,f5]@5 ~ [a4,e5]@5 ~ [d5,f5]@5 ~, ~@6 c5@47 ~@13 g5@11 ~@19]/4", // G5 Dm A5 Dm
  V: "[[a4,e5]@5 ~ [d5,f5]@47 ~ g5@24 ~@12 f5@11 ~@13 [f5,a5]@3 ~@3, ~@9 e5@6 ~@5, ~@78 a5@23 ~@19]/5", // A5 Dm F
  W: "~@6 [f5,a5] ~", X: "~@4 [f5,a5] ~@3", Y: "[e5,g5] ~@3 [d#5,f#5] ~@3", Z: "[e5,g5] ~@7",
})).s("gm_oboe").gain(0.24).pan(0.4)

// other · clarinet
const clarinet = note(`<
  ~ A ~@6 B C D E F@3 G H@3 ~@14 I@2 J ~ K@2 L ~@7 M@3 ~ N O P O ~@7 Q@4 ~@8 R@2 S@4 T@5 U V W X ~@2
>`.pickRestart({
  A: "~@3 e5 ~@8", B: "~@6 e4@4 ~@2 f4@4 ~ g4 f4 ~@2 e4@3", C: "~@6 e4@3 ~@2 f4!2 ~@2 g4 ~@2 e4@6",
  D: "~@6 g4@4 ~@2 a4@4 ~ b4 a4@2 ~ g4@3", E: "~@6 g4@3 ~@2 a4!2 ~@2 b4 ~@2 g4@6",
  F: "[~@6 e4@6 f4@6 b4@11 ~ a4@6 a#4@6 e5@12 f5@6 e5@6 a4@2 b4@2 c5@2]/3", G: "b4@2 ~ d5@2 ~ g#4@9 a4@3 c5@6",
  H: "[b4@4 ~@2 g#3@6 a3@6 [d4,f4]@12 c#4@6 d4@6 [g4,a#4]@12 [f4,a4]@6 [f4,a4]@6 [f4,a4]@5 ~, ~ d4@2 ~@2 g4@2 ~@5]/3", // Dm Gm F
  I: "[~@12 [a3,c4]@18 ~@3 [c5,e5] ~@2 [b4,d5] ~@8 [f4,a4] ~@2]/2", J: "[e4,g#4] ~@8 [c4,e4] ~@2 [b3,d4] ~@11",
  K: "[~@12 [a3,c4]@18 ~@3 [a#4,d5] ~@2 [a4,c5] ~@8 [d#4,g4] ~@2]/2", L: "[d4,f#4] ~@8 [a#3,d4] ~@2 [a3,c4] ~@11",
  M: "[~@6 c5@12 f5@11 ~ [c5,a5]@24 [b4,g5]@3 ~@15]/3", N: "~@5 b4 a4@2", O: "g4 ~@3", P: "~@5 d5 a4@2",
  Q: "[~@9 c5@4 ~@8 d5@4 ~@8 g5@4 ~@11]/4", R: "[~@3 c5@4 c5 b4 g4@4 g4 b4 c5!2 b4 g4!2 b4 c5!2 b4]/2",
  S: "[g4@2 g4@2 b4@2 g4@24 a4@23 ~ d5@8 d5@2 c#5@2 a4@8 a4@2 c#5@2 d5@2 d5@2 c#5@2 a4@2 a4@2 c#5@2 d5@2 d5@2 c#5@2, ~@6 c5@47 ~@43]/4",
  T: "[a4@2 a4@2 c#5@2 a4@24 g4@11 ~@49 f5@11 ~@13 [c5,f5]@3 ~@3, ~@6 d5@47 ~ e5@36 ~@30, ~@42 b4@23 ~ c5@35 ~@19]/5", // F5
  U: "~@6 [c5,f5] ~", V: "~@4 [c5,f5] ~@3", W: "[c5,e5] ~@3 [c5,d#5] ~@3", X: "[c5,e5] ~@7",
})).s("gm_clarinet").gain(0.26)

// chords · oboe
const oboe_2 = note(`<
  ~ A ~@6 B C D E F@3 G H@3 I ~@13 J K L ~ J M N ~@7 O@3 P@2 Q@2 ~@4 R S T U V W X Y ~@8 Z@2 AA@4 AB@5 AC AD AE AF ~@2
>`.pickRestart({
  A: "~@3 [a1,a2] ~@8", B: "~@6 [c4,e4]@4 ~@2 [d4,f4]@4 ~ [b3,d4] [d4,f4] ~@2 [c4,e4]@3",
  C: "~@6 [c4,e4]@3 ~@2 [d4,f4]!2 ~@2 [b3,d4] ~@2 [c4,e4]@6", // C Dm Bm C
  D: "~@6 [e4,g4]@4 ~@2 [f4,a4]@4 ~ [d4,f4] [f4,a4]@2 ~ [e4,g4]@3", // Em F Dm F Em
  E: "~@6 [e4,g4]@3 ~@2 [f4,a4]!2 ~@2 [d4,f4] ~@2 [e4,g4]@6", // Em F Dm Em
  F: "[~@6 e3@6 f3@6 b3@11 ~ a3@6 a#3@6 e4@12 f4@6 e4@6 a3@2 b3@2 c4@2]/3", G: "b3@2 ~ d4@2 ~ g#3@9 a3@3 c4@6",
  H: "[b3@2 ~ e3@3 f3@3 [d3,b3]@6 a3@3 a#3@3 [g3,e4]@6 [d4,f4]@3 [c4,e4]@3 a3 b3 c4, ~ b2@2 ~@2 e3@2 ~@4 f3]/3", // G C Dm C
  I: "b3 d4 g#3@2 ~@4", J: "~@3 e3 a3 g#3 g3 f#3", K: "f3@3 e3@3 ~@3 f4 ~@2 f4 ~@8 b3 ~@2", L: "b3 ~@8 f3 ~@2 f3 ~@11",
  M: "f3@3 d#3@3 ~@3 d#4 ~@2 d#4 ~@8 a3 ~@2", N: "a3 ~@8 d#3 ~@2 d#3 ~@11",
  O: "[~@6 c4@12 f4@11 ~ [c4,a4]@24 [b3,g4]@3 ~@15]/3", P: "[~@2 c3@4 f2@4 c2@3 ~@3]/2",
  Q: "[~@2 c3@2 g2@2 d#2@4 g#2@3 ~@3]/2", R: "~ a#3 a3 g#3", S: "a3 c4 b3 a#3", T: "b3 d4 c4 d#4",
  U: "e4@2 g4@2 f#4@2 f4 c#4", V: "e4 d4 c4@2 ~@2 c4@2", W: "d4@2 ~@7 f#3@3", X: "g3@2 ~@7 b3@3", Y: "c4 ~@5",
  Z: "[~@6 [c4,e4]@11 ~ a3@6 b3@5 ~ [c4,e4]@5 ~ [g3,d4]@5 ~ [c4,e4]@5 ~, ~@18 f4@11 ~@19]/2", // C G5 C
  AA: "[[g3,d4]@5 ~ e4@36 f4@11 ~ [d4,f4]@11 ~ b3@6 c#4@5 ~ [d4,f4]@5 ~ [a3,e4]@5 ~ [d4,f4]@5 ~, ~@6 c4@47 ~@13 g4@11 ~@19]/4", // G5 Dm A5 Dm
  AB: "[[a3,e4]@5 ~ [d4,f4]@47 ~ g4@24 ~@12 f4@11 ~@13 a2@3 ~@3, ~@9 e4@6 ~@5, ~@78 a4@23 ~@19]/5", AC: "~@6 a2 ~",
  AD: "~@4 a2 ~@3", AE: "a2 ~@3 a2 ~@3", AF: "a2 ~@7",
})).s("gm_oboe").gain(0.24)

// other · french horn · "FR.HORN"
const french_horn = note(`<
  ~ A ~@6 B C D E ~@4 F@3 ~@15 G ~@3 H ~@9 I@2 J@2 K@2 ~@20 L M N ~ O P Q ~@7 R@3
>`.pickRestart({
  A: "~@3 [a3,e4] ~@8", B: "~@6 a3@4 ~@2 a3@4 ~ a3!2 ~@2 a3@3", C: "~@6 a3@3 ~@2 a3!2 ~@2 a3 ~@2 a3@6",
  D: "~@6 c4@4 ~@2 c4@4 ~ c4 c4@2 ~ c4@3", E: "~@6 c4@3 ~@2 c4!2 ~@2 c4 ~@2 c4@6",
  F: "[~@3 [b3,d4]@2 e3!2 [g3,e4]@2 [f3,a3]!3]/3", G: "~@6 [e3,e4]@4 [e3,e4] ~@13", H: "~@6 [d3,d4]@4 [d3,d4] ~@13",
  I: "[~@6 [d4,f4]@24 [d4,f4] ~@17]/2", J: "[~@6 e4@12 f4@12 e4@11 ~@7]/2", K: "[~@3 d#4@3 d4@3 g4@6 d#4@5 ~@4]/2",
  L: "~@6 g3@12 a3@5 ~", M: "b3@5 ~ g3@3 ~@3 b3@3 ~@3 g3@3 ~@3", N: "b3@3 ~@3 g3@4 ~@14", O: "~@6 a3@12 b3@5 ~",
  P: "c#4@5 ~ a3@3 ~@3 c#4@3 ~@3 a3@3 ~@3", Q: "c#4@3 ~@3 a3@4 ~@14", R: "[~ c4@4 b3@4 ~@3]/3",
})).s("gm_french_horn").gain(0.31).pan(0.6)

// other · trombone
const trombone = note("<~ A ~@72 B@2 C ~ D@2 E ~@3 F G H@2 ~@3>".pickRestart({
  A: "~@3 [a3,a5] ~@8", B: "[~@3 [c4,c5]@5 ~ [g3,g4]@5 ~ [c4,c5] ~@2 [g3,g4] ~@2 [c4,c5] ~@2]/2",
  C: "[g3,g4] ~@2 [c4,c5] ~@8", D: "[~@3 [d4,d5]@5 ~ [a3,a4]@5 ~ [d4,d5] ~@2 [a3,a4] ~@2 [d4,d5] ~@2]/2",
  E: "[a3,a4] ~@2 [d4,d5] ~@8", F: "~ [c4,c5]@3", G: "~@3 [c4,c5]!3 [c4,c5]@17 ~",
  H: "[~@3 [c4,c5]!3 [c4,c5]@6 ~@6 [c4,c5]@8 ~@4 [c4,c5]@8 ~@4 [c4,c5]@6]/2", // C
})).s("gm_trombone").gain(0.63).pan(0.6)

// chords · trombone
const trombone_2 = note("<~ A ~@48 B@2 C@2 ~@20 D@2 E ~ F@2 G ~@3 H@2 I J K ~@2>".pickRestart({
  A: "~@3 [a2,e3] ~@8", B: "[~ g3@2 a3 g#3 g3@2 ~, ~ [c3,c4]@6 ~]/2",
  C: "[~ [c3,c4] [d3,a#3] [d#3,c#4]@2 [g#2,d#3,c4]@2 ~, ~ g3@4 ~@3]/2", // C Gm D#7 G#
  D: "[~@3 [c3,e4]@5 ~ [c3,g3,f4]@5 ~ [c3,g3,e4] ~@2 [c3,g3,f4] ~@2 [c3,g3,e4] ~@2]/2", // C Csus4 C Csus4 C
  E: "[c3,g3,f4] ~@2 [c3,g3,e4] ~@8", // Csus4 C
  F: "[~@3 [d3,a3,f4]@5 ~ [d3,a3,g4]@5 ~ [d3,a3,f4] ~@2 [d3,a3,g4] ~@2 [d3,a3,f4] ~@2]/2", // Dm Dsus4 Dm Dsus4 Dm
  G: "[d3,a3,g4] ~@2 [d3,a3,f4] ~@8", H: "~@9 [a3,c4,f4] ~@2", I: "~@6 [a3,c4,f4] ~@5",
  J: "[g3,c4,e4] ~@5 [f#3,c4,d#4] ~@5", K: "[g3,c4,e4] ~@11",
})).s("gm_trombone").gain(0.37).pan(0.6)

// chords · orchestra hit · "ORCH.HIT" · Am
const orchestra_hit = note("<~ [~@6 [a3,c4,e4,a4,a5] ~@17] ~@89>").s("gm_orchestra_hit").gain(0.64)

// chords · pizzicato strings · "ORCH.HIT"
const pizzicato_strings = note("<~@28 A B C ~@9 D E F ~@45 G H I>".pickRestart({
  A: "~@6 e2 ~@5 d2 ~@5 g#1 ~@5", B: "~@6 a2 ~@5 g2 ~@5 c#2 ~@5", C: "~@6 d3 ~@5 a2 ~@5 d2 ~@5", D: "~@21 d4 ~@2",
  E: "[g3,d4] ~@2 d4 ~@2 [d3,f4] ~@14 [a4,b4] ~@2", F: "[d4,b4] ~@2 [a4,b4] ~@2 [d4,b4] ~@5 [d4,b4,f5,a5] ~@11",
  G: "~@18 [a2,a3,c4,f4] ~@5", H: "~@6 [b2,g3,b3] ~@11 [b1,b2,f#3,a3] ~@5", I: "~@6 [e2,e3] ~@17",
})).s("gm_pizzicato_strings").gain(0.27)

// other · timpani
const timpani = note("<[~@6 a2!18] [a2!8 ~@16] ~@82 [~@9 a2 ~@2]!2 [~@6 a2 ~@5] [a2 ~@5 a2 ~@5] [a2 ~@11] ~@2>")
  .s("gm_timpani").gain(0.5).pan(0.4)

// other · string ensemble 1 · "STRINGS"
const string_ensemble_1 = note(`<
  ~@8 A B C D E F G H I@3 J K L M N O ~@3 P@3 ~ Q ~ R S Q ~ T U V W ~@2 X Y Z AA AB AC AD AE@2 AF@6 AG AH AI@2 AJ AK
  AL@3 AM ~@22
>`.pickRestart({
  A: "~@21 a3 ~@2", B: "a3 ~@2 b3 ~@2 a3@2 ~@10 a3@2 ~@3 a3", C: "a3 ~@2 b3 ~@2 c4@2 ~@13 c4 ~@2",
  D: "c4 ~@2 d4 ~@2 c4@2 ~@10 c4@2 ~@3 c4", E: "c4 ~@2 d4 ~@5 d4 ~@5 d4 ~@5 f4 ~@2",
  F: "~@3 f4 ~@5 g4 ~@5 g4 ~@5 a#4 ~@2", G: "~@3 a#4 ~@5 a4 ~@5 c5 ~@5 f4 ~@2", H: "~@9 d#4 ~@5 d#4 ~@5 e4 ~@2",
  I: "[~@3 e4 ~@4 d4 e4@2 g#4 a4@2 d4 f4@2 a4 b4@2 d4 f4 ~ b4@3 ~ f4 ~ b4@2 ~@2 a4 ~@2 d5 ~@2 a#4 ~ d5 e5@2 g4 a#4@2 e5@3 g4 a#4@2 e5 ~@2 f4 a4 ~@2 e5 ~@2 c5 ~@2 f5@3 ~@3, ~@26 d4@2 ~@4 g4@2 ~ c#5@2 ~ g4@2 ~@19 d5@2 ~ a4@2 ~ e5@2 ~@5]/3",
  J: "~@6 d#4@9 d#4@2 ~ [e4,a4]@3 ~@3", K: "d4 ~ c4 ~@5", L: "~@18 a3@2 ~@3 a3", M: "a3 ~@2 b3 ~@2 c4@2 ~@16",
  N: "~@18 c4@2 ~@3 c4", O: "c4 ~@2 d4 ~@20", P: "[~ d4@2 f4@2 g4@2 a#4@2 a4 c5 f4]/3", Q: "e4 ~@23",
  R: "~@6 d4 ~@8 a5 ~@2 g#5 ~@5", S: "~@3 e5 ~@2 d5 ~@8 a4 ~@2 g#4 ~@2 f4 ~@2", T: "~@6 c4 ~@8 g5 ~@2 f#5 ~@5",
  U: "~@3 d5 ~@2 c5 ~@8 g4 ~@2 f#4 ~@2 d#4 ~@2", V: "d4 ~@19 f#4 g4 ~ a4", W: "a#4 ~ f#4 g4 ~@20", X: "~@2 c4@5 c4",
  Y: "c4!2 d4@5 d4", Z: "d4@3 d4@3 f4@13 ~ f4!2 ~ f4",
  AA: "f4 ~ f4!2 ~ f4 a4 ~ a4 f4 ~ f4!2 ~ f4 a4 ~ a4 c5 ~ c5 a4 ~ a4", AB: "a4 ~ a4 c5 ~ c5 f5@3 ~@15", AC: "~@3 a3",
  AD: "b3 c4 ~@2", AE: "[~@5 d4@5 ~@6]/2",
  AF: "[~@15 c4@3 b3@12 c4@33 c5@3 b4@10 ~@2 c4@6 d4@6 g4@12 f#4@12 d4@10 ~@14 g#3@6]/6", AG: "a3 ~@2 a#3",
  AH: "b3 ~@2 d#4", AI: "[e4@6 d4@3 f4@6 g3 ~@8]/2", AJ: "~@3 a3 ~@8", AK: "~@3 b3 ~@5 d#4 ~@2",
  AL: "[~@6 c4@2 ~@10 b3@18 c4@5 ~ c#4@18 d4@5 ~ d#4@6]/3", AM: "e4@5 ~ f4@2 ~@16",
})).s("gm_string_ensemble_1").gain(0.33).pan(0.4)

// other · tremolo strings · "STRINGS"
const tremolo_strings = note("<~@74 A B C@3 D E@5 ~@6>".pickRestart({
  A: "~@3 c5@5 ~ g4@3", B: "g4@2 b4 c5!2 b4 g4!2 b4 c5!2 b4",
  C: "[g4!2 b4 c5 ~@5 g4@6 a4@12 [a3,f4] ~@2 d5!2 c#5 a4!3, ~@9 d5 ~@2]/3", D: "a4!2 c#5 d5!2 c#5 a4!2 c#5 d5!2 c#5",
  E: "[a4!2 c#5 d5 ~@5 a4@6 g4@6 b4@6 b4@6 c5@6 c5@6 c5@6 ~@9]/5",
})).s("gm_tremolo_strings").gain(0.56).pan(0.4)

// other · string ensemble 1 · "STRINGS"
const string_ensemble_1_2 = note(`<
  ~@8 A B C D E F G H I J K L M N O P Q ~@3 R@3 ~ S ~ T U V ~ W X Y ~@3 Z AA AB AC AD AE@2 AF@2 AG AH AI@7 AJ AK AL AM@3
  AN ~@6 AO AP ~@2 AQ AR AS AT AU AV AW AX AY AZ ~@2
>`.pickRestart({
  A: "~@21 e3 ~@2", B: "f#3 ~@2 g#3 ~@2 e3@2 ~@10 e3@2 ~@3 f#3", C: "f#3 ~@2 g3 ~@2 g3@2 ~@13 g3 ~@2",
  D: "a3 ~@2 b3 ~@2 g3@2 ~@10 g3@2 ~@3 a3", E: "a3 ~@2 b3 ~@5 g#3 ~@5 a3 ~@5 d4 ~@2",
  F: "~@3 d4 ~@5 c#4 ~@5 d4 ~@5 g4 ~@2", G: "~@3 g4 ~@5 f4 ~@5 f4 ~@5 a3 ~@2", H: "~@9 c4 ~@5 c4 ~@5 a4 ~@2",
  I: "~@3 g#4 ~@4 g#3 d4@2 e4 f4@2 a3 d4@2 f4 f4@2 b3 d4 ~ f4",
  J: "f4 ~@2 d4 ~ f4@2 ~@2 g4 ~@2 a#4 ~@2 g4 ~ a#4 a#4@2 e4 g4@2 a#4, ~@2 b3@2 ~@4 c#4@2 ~ a4@2 ~ d4@2 ~@8",
  K: "a#4@2 e4 g4@2 a#4 ~@2 d4 f4 ~@2 c5 ~@2 a4 ~@2 d5 ~@5, ~@11 a4@2 ~ e4@2 ~ c5@2 ~@5", L: "~@6 c4@9 c4@2 ~@7",
  M: "b3 ~ a3 ~@5", N: "~@18 e3@2 ~@3 f#3", O: "f#3 ~@2 g3 ~@2 g3@2 ~@16", P: "~@18 g3@2 ~@3 a3",
  Q: "a3 ~@2 b3 ~@2 g#3@3 ~@15", R: "[~ g#3 b3 d4@2 c#4 d4 g4@2 f4@2 a3]/3", S: "[b3,d4] ~@23",
  T: "~@6 b3 ~@8 d5 ~@2 d5 ~@5", U: "~@3 g#4 ~@2 g#4 ~@8 d4 ~@2 d4 ~@2 b3 ~@2", V: "b3 ~@2 e4 ~@20",
  W: "~@6 a3 ~@8 c5 ~@2 c5 ~@5", X: "~@3 f#4 ~@2 f#4 ~@8 c4 ~@2 c4 ~@2 a3 ~@2", Y: "a3 ~@23", Z: "~@6 f3@15 f3 ~@2",
  AA: "f3@3 f3@3 c4@15 c4 ~@2", AB: "c4@3 c4@3 c4@13 ~ c4!2 ~ c4",
  AC: "c4 ~ c4!2 ~ c4 f4 ~ f4 c4 ~ c4!2 ~ c4 f4 ~ f4 a4 ~ a4 f4 ~ f4", AD: "f4 ~ f4 a4 ~ a4 c5@3 ~@15",
  AE: "[~ g3@5 ~@2]/2", AF: "[~@5 c4 b3@4 ~@6, ~@5 d3@5 ~@6]/2", AG: "~@5 [d3,d4]@2 e3", AH: "f3@3 f#3@2 ~ g3@12 a3@6",
// … 72 more lines

More by Edvard Grieg