Strudelify

Judas Maccabaeus HWV 63

Musik: G. F. Händel

KeyE♭ majorTempo112 bpm
0:00/0:00
// Judas Maccabaeus HWV 63 — Musik: G. F. Händel
// 112 bpm, 4/4, key Eb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: ch 1 "Violins 1" named as a string part, played on violin (its trumpet patch is not one); ch 4 "Violins 2" named as a string part, played on violin (its muted trumpet patch is not one); ch 7 "Violoncello" named as a string part, played on cello (its trombone patch is not one); ch 9 "Piano" named as a piano, played on piano (its pan flute patch is not one)
// note: Transcription provider: pdmx. https://musescore.com/score/391521; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 80 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(112/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.

// other · violin · "Violins 2"
const violin = note("<~@16 A B C D E B F G ~@28 H@2 I@2 J@2 K L@8 M@3 N O P@2 Q@6>".pickRestart({
  A: "g4@4 eb4@3 d4", B: "eb4!2", C: "d4 eb4 f4 g4 f4@2 eb4@2", D: "d4", E: "eb4@3 d4", F: "d4 eb4@2 d4", G: "bb3",
  H: "[~@10 g4@12 eb4@9 d4@3 eb4@3 g4 ~@2 g4 ~@2 g4 ~@2 eb4@2]/2",
  I: "[~ g4 ~@2 g4 ~@2 g4 ~@2 d4@3 eb4@3 f4@3 g4@3 f4@6 eb4@6 d4@3 bb3@3 d4@3 f4@3 bb4@2]/2",
  J: "[~ d4@3 f4@3 bb4@3 eb4@18 d4@6 g4 ~@2 g4 ~@2 g4 ~@2 g4 ~@2 bb4@2]/2",
  K: "~ g4 ~@2 g4 ~@2 g4 ~@2 ab4@3 bb4@3 g4@3 bb4@3 f4@2",
  L: "[~ bb4@3 eb4@3 bb4@3 bb3@24 eb4@3 d4@3 eb4@3 f4@3 eb4@6 eb4@6 d4@12 c4@12 f4@6 eb4@6 d4@6 c4@6 b3@24 c4@3 b3@3 c4@3 d4@3 c4@6 c4@6 f4@12 eb4@12 d4@6 g4@6 f4@2]/8",
  M: "[~@4 f4@6 f4@29 g4@12 eb4@9 d4@3 eb4@3 g4 ~@2 g4 ~@2]/3", N: "g4 ~@2 eb4@3 g4 ~@2 g4 ~@2 g4 ~@2 d4@3 eb4@3 f4@3",
  O: "g4 f4@2 eb4@2 d4 bb3 d4", P: "[f4@3 bb4@3 d4@3 f4@3 bb4@3 eb4@18 d4@6 g4 ~@2 g4 ~@2 g4 ~@2]/2",
  Q: "[g4 ~@2 bb4@3 g4 ~@2 g4 ~@2 g4 ~@2 d4@6 eb4@25 d4@14 bb3@67 ~@17]/6",
})).s("gm_violin").gain(0.4)

// other · cello · "Violoncello"
const cello = note("<~@16 A B C D E F G H I J K L M N O P ~@28 Q@5 R@8 S@7>".pickRestart({
  A: "eb4@4 bb3@3 ab3", B: "g3 bb3", C: "ab3 f3 bb3!2", D: "bb3", E: "bb3@3 ab3 bb3@2 f3@2", F: "g3!2",
  G: "ab3 bb3@2 f3", H: "g3", I: "eb3@4 g3@3 f3", J: "eb3 g3", K: "f3@3 eb3 d3@2 eb3@2", L: "bb2",
  M: "eb3 f3 g3 ab3 g3@2 bb2@2", N: "g3@2 eb3!2", O: "f2@2 g2 ab2 bb2@4", P: "eb3",
  Q: "[~@5 bb3@3 bb3@3 bb3@3 bb3@3 ab3@6 g3@6 b3@3 c4@3 ab3@3 g3@3 g3@12 g3@3 g3@3 g3]/5",
  R: "[~@4 g3@6 c4@12 c4@12 [g3,bb3]@6 eb4@3 d4@3 f3@6 ~@3 c4@3 [bb2,d4]@29 [eb3,eb4]@12 [g3,bb3]@9 [f3,ab3]@3 [eb3,g3]@12 [g3,bb3]@12 [f3,ab3]@6 ~@3 eb3@3 [d3,bb3]@6 [eb3,bb3]@6 [bb2,bb3]@24 eb3@3 f3@3 g3@3, ~@40 eb3@6 c4@9 ~@86 f3@6 ~@36 bb3@9, ~@26 f2@3 ~@67]/8", // Gm Bb Eb Gm Fm Eb Gm Fm …
  S: "[ab3@3 [g3,bb3]@6 [f3,bb3]@6 g3@12 eb3@6 eb3@6 [f3,ab3]@6 g3@5 ab3@5 ~@15 f3@14 [eb3,g3]@67 ~@17, ~@27 g3@12 ~@6 bb3@10 bb3@29 ~@84]/7", // Gm Bb5 Fm Eb
})).s("gm_cello").gain(0.3)

// bass · contrabass
const bass = note("<~@16 A B C D E F G H ~@36 I@7 J@4 K@2 L@7>".pickRestart({
  A: "eb2@4 g2@3 f2", B: "eb2 g2", C: "f2@3 eb2 d2@2 eb2@2", D: "bb1", E: "eb2 f2 g2 ab2 g2@2 bb1@2", F: "g1@2 eb2 eb1",
  G: "f1@2 g1 ab1 bb1@4", H: "[eb1,eb2]",
  I: "[~@5 eb2@3 eb2@3 eb2@3 g1@3 bb1@6 c2@6 d2@3 eb2@3 f2@3 c2@3 g1@12 c2@3 d2@3 c2@3 bb1@3 a1@6 f2@6 g2@3 eb2@3 f2]/7",
  J: "[~@4 f1@6 bb1@29 eb2@12 g2@9 f2@3 eb2@12 g2@12 f2@9]/4", K: "[eb2 d2@2 eb2@2 bb1@8 eb2 f2 g2]/2",
  L: "[ab2@3 g2@6 bb1@6 g1@12 eb2@6 eb1@6 f1@6 g1@5 ab1@5 bb1@29 [eb1,eb2]@67 ~@17]/7", // Eb
})).s("gm_contrabass").gain(0.3)

// other · flute
const flute = note("<~@32 A B C D E F G H I J K L M N O P ~@4 Q@2 R S T U V W@2 ~@7 X@2 Y Z AA AB AC@6>".pickRestart({
  A: "g4 f4 g4 ab4 g4@2 g4@2", B: "f4 eb4", C: "ab4 g4 f4 eb4", D: "d4", E: "eb4 d4 eb4 f4 eb4@2 eb4@2", F: "c5 a4",
  G: "bb4@2 c5 bb4 a4@3 bb4", H: "bb4", I: "bb5@4 g5@3 ab5", J: "bb5 eb5", K: "f5 g5 ab5 bb5 ab5@2 g5@2", L: "f5",
  M: "g5 ab5 bb5 c6 bb5@2 bb5@2", N: "eb6 bb5", O: "ab5@2 g5 f5 f5@3 eb5", P: "eb5",
  Q: "[~@10 bb5@12 g5@9 ab5@3 g5@3 bb5 ~@2 bb5 ~@2 bb5 ~@2 g5@2]/2", R: "~ bb5 ~@2 bb5 ~@2 bb5 ~@16",
  S: "~@10 f5@3 d5@3 f5@3 bb5@3 d6@2", T: "~ f5@3 bb5@3 d6@3 ~@14", U: "~@10 bb5 ~@2 bb5 ~@2 bb5 ~@2 bb5 ~@2 eb6@2",
  V: "~ bb5 ~@2 bb5 ~@2 bb5 ~@2 ab5@3 bb5@3 g5@3 bb5@3 f5@2", W: "[~ bb5@3 eb5@3 bb5@3 eb5@24 ~@14]/2",
  X: "[~@5 bb5@4 g5@3 ab5 ~ bb4 eb5]/2", Y: "g5@3 bb5 c6 bb5@10 f5@3 g5@3 ab5@3", Z: "bb5 ab5@2 g5@2 ~ bb4 d5",
  AA: "f5@3 bb5 c6 bb5@10 g5@3 ab5@3 bb5@3", AB: "c6 bb5@2 bb5@2 ~ bb4 eb5",
  AC: "[g5@3 bb5 c6 bb5@10 ab5@6 g5@10 f5@22 eb5@7 eb5@67 ~@17]/6",
})).s("gm_flute").gain(0.4)

// other · clarinet · "Bb Clarinet"
const clarinet = note("<~@32 A B C D E F G H I J K L M J N O ~@4 P@5 Q@4 ~@7 R@5 S@7>".pickRestart({
  A: "eb4 d4 eb4 f4 eb4@2 eb4@2", B: "d4 c4", C: "f4 eb4 d4 c4", D: "b3", E: "c4 b3 c4 d4 c4@2 c4@2", F: "f4 eb4",
  G: "d4 g4 f4!2", H: "f4", I: "g5@4 eb5@3 d5", J: "eb5!2", K: "d5 eb5 f5 g5 f5@2 eb5@2", L: "d5", M: "eb5@3 d5",
  N: "d5 eb5@2 d5", O: "bb4",
  P: "[~@10 bb4@12 g4@9 ab4@3 bb4@12 eb4@12 f4@3 g4@3 ab4@3 bb4@3 ab4@6 g4@6 f4@24 g4@3 ab4@3 bb4@3 c5@3 bb4@2]/5",
  Q: "[~@4 bb4@6 eb5@12 bb4@12 ab4@6 g4@3 f4@3 f4@9 eb4@3 eb4@24 ~@14]/4",
  R: "[~@5 eb5@4 bb4@3 ab4 g4@4 bb4@4 ab4@2 f4@2 bb4@2 bb4@2 bb4@8 bb4@3]/5",
  S: "[ab4@3 bb4@6 f4@6 g4@12 g4@12 ab4@6 bb4@25 f4@14 g4@67 ~@17]/7",
})).s("gm_clarinet").gain(0.4)

// other · clarinet · "Bb Clarinet"
const clarinet_2 = note("<~@32 A B C D E F G H I J K L M N O P ~@4 Q@7 R@2 ~@7 S@3 T@2 U@7>".pickRestart({
  A: "bb3!4", B: "ab3 g3", C: "b3 c4 ab3 g3", D: "g3", E: "g3!4", F: "c4!2", G: "bb3@2 eb4 d4 c4@3 c4", H: "d4",
  I: "eb5@4 bb4@3 ab4", J: "g4 bb4", K: "ab4 f4 bb4!2", L: "bb4", M: "bb4@3 ab4 bb4@2 f4@2", N: "g4!2",
  O: "ab4 bb4@2 f4", P: "g4",
  Q: "[~@10 g4@12 eb4@9 d4@3 eb4@12 eb4@12 d4@3 eb4@3 f4@3 g4@3 f4@6 eb4@6 d4@24 eb4@18 d4@6 eb4@12 eb4@12 d4@6 eb4@8]/7",
  R: "[~@2 d4@3 bb3@12 ~@7]/2", S: "[~@5 bb4@4 g4@3 ab4 bb4@4 eb4@4 f4 g4 ab4]/3",
  T: "[bb4 ab4@2 g4@2 f4@8 g4 ab4 bb4]/2", U: "[c5@3 bb4@6 bb4@6 eb5@12 bb4@12 ab4@6 g4@10 f4@22 eb4@7 eb4@67 ~@17]/7",
})).s("gm_clarinet").gain(0.4)

// other · trumpet · "Bb Trumpet"
const trumpet = note("<~@24 A B C D E B F G ~@20 H@2 I@2 J@2 K L@2 M@2 N@2 O@3 P Q@2 R@2 S@7>".pickRestart({
  A: "g4@4 eb4@3 d4", B: "eb4!2", C: "d4 eb4 f4 g4 f4@2 eb4@2", D: "d4", E: "eb4@3 d4", F: "d4 eb4@2 d4", G: "bb3",
  H: "[~@22 bb4@6 bb4 ~@2 bb4 ~ bb4 bb4@12 ~@2]/2", I: "[~@10 bb4@9 bb4 ~ bb4 bb4@6 bb4 ~@2 bb4 ~@2 bb4@12 ~@2]/2",
  J: "[~@10 eb4@9 eb4 ~ eb4 eb4@6 d4@6 eb4@12 ~@2]/2", K: "~@13 bb4 ~ bb4 bb4@6 ~@2",
  L: "[~ bb3 ~ bb3 bb3@6 eb4@24 ~@14]/2", M: "[~@16 bb3 ~@2 bb3 ~ bb3 c4@6 ~@20]/2",
  N: "[~@7 g3 ~ g3 g3@6 g3 ~@2 g3 ~@2 g3@6 ~@20]/2",
  O: "[~@10 a4 ~@2 a4 ~ a4!2 ~@2 a4 ~@2 eb4@12 g4@6 eb4@6 f4@6 f4@6 ~@3 bb4 ~ bb4!2 ~@2 bb4 ~@2 bb4@2]/3",
  P: "~ ab4 ~ ab4 ~ ab4 ~@6", Q: "[~@3 bb4@6 bb4 ~@2 bb4 ~ bb4 bb4@12 ~@12 bb4@9]/2",
  R: "[bb4 ~ bb4 bb4@6 bb4 ~@2 bb4 ~@2 bb4@12 ~@12 eb4@9]/2",
  S: "[eb4 ~ eb4 eb4@6 d4@6 eb4@12 ~@12 d4@6 eb4@25 d4@14 bb3@67 ~@17]/7",
})).s("gm_trumpet").gain(0.4)

// other · french horn · "Horn"
const french_horn = note("<~@24 A B C D E F G H ~@8 A B C D E F G H ~@18 I@5 J@2 K@7>".pickRestart({
  A: "eb4@4 bb3@3 ab3", B: "g3 bb3", C: "ab3 f3 bb3!2", D: "bb3", E: "bb3@3 ab3 bb3@2 f3@2", F: "g3!2",
  G: "ab3 bb3@2 f3", H: "g3", I: "[~@10 bb3@6 g3@6 a3@6 c4@6 bb3@29 bb3@12 g3@9 ab3@3 bb3@12 eb3@12 f3@3 g3@3 ab3@3]/5",
  J: "[bb3 ab3@2 g3@2 f3@8 g3 ab3 bb3]/2", K: "[c4@3 bb3@6 bb3@6 eb4@12 bb3@12 ab4@6 g4@10 f4@22 eb4@7 eb4@67 ~@17]/7",
})).s("gm_french_horn").gain(0.3)

// other · french horn · "Horn"
const french_horn_2 = note("<~@24 A B C D E F G H ~@8 A B C D E F G H ~@18 I@5 J@2 K@7>".pickRestart({
  A: "eb3@4 g3@3 f3", B: "eb3 g3", C: "f3@3 eb3 d3@2 eb3@2", D: "bb3", E: "eb3 f3 g3 ab3 g3@2 bb2@2", F: "g3@2 eb3!2",
  G: "f3@2 g3 ab3 bb2@4", H: "eb3", I: "[~@10 g3@6 eb3@6 f3@6 f3@6 f3@29 eb3@12 g3@9 f3@3 eb3@12 g3@12 f3@9]/5",
  J: "[eb3 d3@2 eb3@2 bb2@8 eb3 f3 g3]/2",
  K: "[ab3@3 g3@6 bb3@6 g3@12 eb3@6 eb3@6 f3@6 g3@5 ab3@5 bb3@29 eb3@67 ~@17]/7",
})).s("gm_french_horn").gain(0.3)

// other · timpani
const timpani = note("<~@52 A@5 B@4 ~@6 C D@3 E@6 F@2 G>".pickRestart({
  A: "[~@10 eb3@12 eb3@6 eb3@6 eb3@12 eb3@6 eb3@6 bb2@9 bb2@3 bb2@6 bb2@6 bb2@12 bb2@6 bb2@6 bb2@12 bb2@2]/5",
  B: "[~@2 bb2@3 bb2@6 bb2@6 bb2@3 bb2@3 bb2@6 eb3@12 ~@7]/4", C: "~@10 bb2!14",
  D: "[bb2!15 eb3@12 eb3@6 eb3@6 eb3@12 eb3@6 eb3@6 bb2@9, ~@15 bb2 ~@56]/3",
  E: "[bb2@3 bb2@6 bb2@6 bb2@12 bb2@6 bb2@6 bb2@12 bb2@6 bb2@6 bb2@12 bb2@12 bb2@6 bb2@10 bb2@2 bb2 bb2@2 bb2@2 bb2@2 bb2@2 bb2@2 bb2@2 bb2 bb2@2 bb2@2 bb2@2 bb2@7 eb3@2 eb3@2 eb3@2 eb3@2 eb3@2 eb3@2]/6",
  F: "[eb3@2 eb3@2 ~ eb3@2 eb3@2 eb3@2 eb3@2 eb3@2 eb3@2 eb3@2 eb3@2 eb3@2 eb3@2 eb3@2 eb3@2 eb3@2 ~ eb3@2 eb3@2 eb3@2 eb3@2 eb3@2 eb3@2 eb3@2 eb3@2]/2",
  G: "eb3!3 ~@9",
})).s("gm_timpani").gain(0.45)

// other · timpani · soft notes
const timpani_soft = note("<~@40 A B C D E F G H ~@32>".pickRestart({
  A: "eb3 ~", B: "eb3@2 eb3!2", C: "bb2@2 bb2 eb3", D: "bb2", E: "bb2@2 bb2!2", F: "bb2!2", G: "bb2!2 bb2@2", H: "eb3",
})).s("gm_timpani").gain(0.2)

// chords · piano
const piano = note(`<
  A B C D E F G H I J K L M N O P A B C D Q R S T ~@16 A B C D Q R S T U V W X@8 Y@2 ~@7 Z@3 AA@2 AB@7
>`.pickRestart({
  A: "[eb3,eb4,g4,bb4]@4 [g3,bb3,eb4,g4]@3 [f3,ab3,d4,ab4]", B: "[eb3,g3,eb4,bb4] [g3,bb3,eb4]",
  C: "[d4,f4] [eb4,g4] [f4,ab4] [eb3,g4,bb4] [d3,bb3,f4,ab4]@2 [eb3,bb3,eb4,g4]@2, [f3,ab3] f3 ~@2", // Dm Eb Fm Eb Bb7 Eb Fm
  D: "[bb2,bb3,d4,f4]", // Bb
  E: "[eb3,g4] [f3,ab4] [g3,bb4] [ab3,eb4,c5] [g3,bb3,eb4,bb4]@2 [bb3,d4,f4,bb4]@2, [bb3,eb4]@3 ~@5", // Eb Fm Gm Ab Eb Bb Eb5
  F: "[g3,eb4,bb4,eb5] [eb3,g3,eb4,bb4]", // Eb
  G: "[f3,ab3,d4,ab4]@2 [g3,g4] [ab3,f4] [bb3,eb4]@2 ~ eb4, ~@2 [bb3,eb4]@2 f4@3 ~, ~@3 [bb2,f3,d4]", // Ddim G Db Eb5 Bb
  H: "[eb3,g3,bb3,eb4]", I: "[eb4,g4] [d4,f4] [eb4,g4] [f4,ab4] [eb3,bb3,eb4,g4]@2 [g2,bb3,eb4,g4]@2, [eb3,bb3]!2 ~@2",
  J: "[bb2,ab3,d4,f4] [c3,g3,c4,eb4]", K: "[d3,b3,f4,ab4] [eb3,c4,eb4,g4] [f3,ab3,d4,f4] [c3,g3,c4,eb4]",
  L: "[g2,g3,b3,d4]", M: "[c4,eb4] [b3,d4] [c4,eb4] [d4,f4] [c3,g3,c4,eb4]@2 [bb2,g3,c4,eb4]@2, [c3,g3] [d3,g3] ~@2",
  N: "[a2,c4,f4,c5] [f3,c4,eb4,a4]", // F F7
  O: "[g3,bb3,d4,bb4]@2 [eb4,c5] [d4,bb4] [f3,f4]@2 ~ [c4,bb4], ~@2 [eb3,g4]@2 [c4,a4]@3 ~, ~@3 [f2,f4]", // Gm Cm Gm F C7 Eb F
  P: "[bb2,d4,f4,bb4]", // Bb
  Q: "[eb3,g4] [f3,ab4] [g3,bb4] [ab3,c5] [g3,bb3,bb4]@2 [bb2,f3,d4,f4,bb4]@2, eb4@3 ~, bb3@3 ~@5", // Eb Fm Gm Ab Gm Bb
  R: "[g2,g3,eb4,bb4,eb5]@2 eb3 eb2, ~ [g3,eb4,bb4]", // Eb
  S: "[f2,ab3,d4,ab4]@2 [g2,g4] [ab2,f4] bb2@2 ~ eb4, ~ [bb3,eb4]@2 [bb2,f3,d4], ~@4 f4@3 ~", T: "[eb2,eb3,g3,bb3,eb4]",
  U: "[eb3,g3,bb4,eb5]@2 [eb3,ab3,c5,eb5] [eb3,g3,bb4,eb5]", V: "[f3,ab3,c5,f5,ab5]@3 [eb3,c4,eb5,ab5,c6]",
  W: "[d5,bb5] [eb5,g5] [eb3,ab3,ab4,eb5] [eb3,ab3,ab4,c5], [eb3,bb3] ~", // Gm Eb Ab5 Ab Eb5
  X: "[[eb3,g3,eb5,g5]@13 eb5@8 ~ d5@12 [eb3,eb4,eb5,g5]@12 [g3,bb3,eb4,g4]@9 [f3,ab3,d4,ab4]@3 [eb3,g3,eb4,bb4]@12 [g3,bb3,eb4]@12 [d4,f4]@3 [eb4,g4]@3 [f4,ab4]@3 [eb3,g4,bb4]@3 [d3,bb3,f4,ab4]@6 [eb3,bb3,eb4,g4]@6 [bb2,bb3,d4,f4]@24 [eb3,g4]@3 [f3,ab4]@3 [g3,bb4]@3 [ab3,eb4,c5]@3 [g3,bb3,eb4,bb4]@6 [bb3,d4,f4,bb4]@6 [g3,eb4,bb4,eb5]@12 [eb3,g3,eb4,bb4]@12 [f3,ab3,d4,ab4]@6 [g3,g4]@3 [ab3,f4]@3 [bb3,eb4,f4]@2, ~@13 [f3,ab3,f5]@21 ~@48 [f3,ab3]@6 f3@6 ~@36 [bb3,eb4]@9 ~@45 [bb3,eb4]@6 ~@2]/8", // Eb Ddim Eb Dm Eb Fm Eb Bb7 …
  Y: "[~@7 eb4@3 [eb3,g3,bb3,eb4]@24 ~@14, ~@2 [bb2,f3,d4]@3 ~@19]/2", // Eb Bb
  Z: "[~@5 [eb3,eb4,g4,bb4]@4 [g3,bb3,eb4,g4]@3 [f3,ab3,d4,ab4] [eb3,g3,eb4,bb4]@4 [g3,bb3,eb4]@4 [d4,f4] [eb4,g4] [f3,f4,ab4], ~@21 [f3,ab3]@2 ~]/3", // Eb Ddim Eb Dm Eb Fm
  AA: "[[eb3,g4,bb4] [d3,bb3,f4,ab4]@2 [eb3,bb3,eb4,g4]@2 [bb2,bb3,d4,f4]@8 [eb3,g4] [f3,ab4] [g3,bb4], ~@13 [bb3,eb4]@3]/2", // Eb Bb7 Eb Bb Eb Fm Gm Eb5
  AB: "[[ab3,c5]@3 [g3,bb3,bb4]@6 [bb2,f3,d4,f4,bb4]@6 [g2,g3,eb4,bb4,eb5]@12 eb3@6 eb2@6 [f2,ab3,d4,ab4]@6 g2@5 ab2@5 bb2@15 ~@7 eb4@7 [eb2,eb3,g3,bb3,eb4]@67 ~@17, ~@27 [g3,eb4,bb4]@12 ~@6 [bb3,eb4]@25 [bb2,f3,d4]@14 ~@84, ~@45 g4@10 f4@22 ~@91]/7", // Ab Gm Bb Eb Ddim Eb Eb5 Bb
})).s("gm_piano").gain(0.3)

stack(
  violin, cello, bass, flute, clarinet, clarinet_2, trumpet, french_horn, french_horn_2, timpani, timpani_soft, piano
)