Strudelify

exodus this land is mine

Ernest Gold

KeyE♭ majorTempo76 bpm
0:00/0:00
// exodus this land is mine — Ernest Gold
// 76 bpm, 4/4, key Eb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: ch 2 "Cello" named as a string part, played on cello (its piano patch is not one)
// note: Transcription provider: pdmx. https://musescore.com/score/5900603; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 39 bars on a 48-step grid, each part at one level. Source detail keeps the original performance.
setcpm(76/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 · tremolo strings · "Hobo"
const tremolo_strings = note("<A@3 B C D@4 ~@7 E F G H I J K L M ~@14>".pickRestart({
  A: "[~@13 g3@6 c4@18 g4@6 f4@18 c4@6 eb4@6 f4@6 d4@9 bb3@3 c4@18 g4@6 bb4@18 a4@6 bb4@5]/3",
  B: "~ c5@6 a4@9 f4@3 g4@24 ~@5", C: "~ g4@6 bb4@6 d5@6 c5@9 g4@3 g4@17",
  D: "[~ c5@6 g4@6 c5@6 d5@9 g4@27 f4@6 g4@6 ab4@6 bb4@6 ~ g4@10 eb4@3 f4@7 g4@7 ~ eb4@11 c4@3 d4@51 ~@19]/4",
  E: "~@7 g3", F: "c4@3 g4 f4@3 c4", G: "eb4@2 f4@2 d4@3 bb3 c4@6 g4@2", H: "bb4@6 a4@2 bb4@2 c5@2 a4@3 f4",
  I: "g4@5 g4 bb4 d5", J: "c5@3 g4 g4@6 c5@2 g4@2 c5@2", K: "d5@3 g4@9 f4@2 g4@2",
  L: "ab4@2 bb4@2 g4@3 f4 eb4@2 f4@2 d4@2 bb4@2", M: "c5 ~",
})).s("gm_tremolo_strings").gain(0.19)

// chords · piano · "Choir Aahs"
const piano = note("<~@8 A B C D E F G H I J K L M N O P Q J K L M N O P R S T U V W@2>".pickRestart({
  A: "~@29 g3@19", B: "[c4,eb4,g4]@2 g4!2 [a3,c4,f4]@2 c4!2, ~@12 [c4,eb4]@11 ~@13 [a3,f4]@11 ~",
  C: "~@2 f4@2 [bb3,d4,f4]@3 bb3 [c4,eb4,g4]@4 g4@2 g4@2, [ab3,c4,eb4]@11 ~@25 [c4,eb4]@11 ~", // Bb Cm Ab Cm
  D: "[d4,g4,bb4]@4 ~@2 a4@2 ~@2 c5@2 [c4,f4,a4]@3 f4, ~@12 [d4,g4,bb4]@11 ~ [eb4,g4,bb4]@11 ~@13", // Gm F Gm Eb
  E: "[b3,d4,g4]@12 [b3,d4,g4]@11 ~ g4@6 g4@6 bb4@6 d5@6, ~@24 [b3,d4]@11 ~ [bb3,d4,g4]@11 ~", // G Bm Gm
  F: "[c4,e4,g4,c5]@3 g4 [c4,e4,g4]@4 ~@2 c5@2 ~@2 c5@2, ~@24 [c4,e4,g4]@11 ~ [c4,eb4,g4]@11 ~", // C Cm
  G: "[bb3,d4,g4,d5]@9 g4@3 [bb3,d4,g4]@11 ~ [bb3,d4,g4]@11 ~@7 g4@6, ~@36 [bb3,d4,f4]@11 ~", // Gm Bb
  H: "[c4,f4,ab4]@4 [bb3,d4,g4]@3 eb4 ~@2 g4@2 [g3,c4,eb4]@3 c4, ~@24 [bb3,d4,f4]@11 ~@13", // Fm Gm Cm Bb
  I: "[g3,b3,d4]@12 [g3,b3,d4]@11 ~ [g3,b3,d4]@11 ~ g3@6 g3@6, ~@36 [b3,d4]@11 ~", J: "c4@3 g4 f4@3 c4",
  K: "eb4@2 f4@2 d4@3 bb3 c4@6 g4@2", L: "bb4@6 a4@2 bb4@2 c5@2 a4@3 f4", M: "g4@5 g4 bb4 d5",
  N: "c5@3 g4 g4@6 c5@2 g4@2 c5@2", O: "d5@3 g4@9 f4@2 g4@2", P: "ab4@2 bb4@2 g4@3 f4 eb4@2 f4@2 d4@2 bb4@2",
  Q: "c5@4 ~@3 g3", R: "c5@6 [eb4,g4] d4, ~@3 c5",
  S: "bb4 c5 bb4 g4 [d4,f4,a4]@2 bb3@2 [d4,f4,a4]@2 bb3@2 [d4,f4,a4]@2 [bb3,g4]@2, [d4,a4] bb3 bb4@5 ~", // Dm Eb D5
  T: "[e4,g4,c5] [d4,d5] [eb4,g4] d4 [eb4,g4] [d4,eb5] [eb4,g4,d5] [d4,c5], ~@2 f5@3 ~@3", // C D Eb Ebmaj7 D7
  U: "bb4 c5 bb4 g4 [bb3,d4,f4]@2 a3@2 [bb3,d4,f4]@2 a3@2 [bb3,d4,f4]@2 [a3,g4]@2, [d4,a4] bb3 bb4@5 ~", // Bb A7 D5
  V: "[d4,e4,c5]@2 [g3,d5]@2 [a3,c4,eb4]@2 g3@2 [a3,c4,eb4]@2 [g3,f5]@2 [a3,c4,eb4,d5]@2 ~ c5, ~@2 g5@3 ~@2 g3", // C G5 Adim G7 Adim
  W: "[[b3,d4]@6 a3@6 ~ [b3,d4]@6 a3@6 [b3,d4]@6 ~ a3@6 [b3,d4]@6 a3@6 ~ [a3,b3,d4]@25 ~@20, d5@91 ~@5]/2", // Bm Bm7
})).s("gm_piano").gain(0.22)

// other · cello
const cello = note("<~@9 A B C D E F G F H@6 ~@2 I J K L M N O P Q R Q S T U>".pickRestart({
  A: "[c2,c3]@23 ~ [f1,f2]@23 ~", B: "[ab1,ab2]@11 ~ [ab1,ab2]@11 ~ [c2,c3]@23 ~",
  C: "[g2,g3]@23 ~ [eb2,eb3]@11 ~ [eb2,eb3]@11 ~", D: "[g2,g3]@23 ~ [g2,g3]@11 ~ [g2,g3]@11 ~",
  E: "[c2,c3]@34 ~@2 [c2,c3]@11 ~", F: "[g1,g2]@23 ~ [g1,g2]@23 ~",
  G: "[f2,f3]@11 ~ [f2,f3]@11 ~ [bb1,bb2]@11 ~ [bb1,bb2]@11 ~", // F Bb
  H: "[[c2,c3]@11 ~ [g2,g3]@11 ~ [g2,g3]@34 ~@2 [c2,c3]@23 ~ [g2,g3]@23 ~ [g2,g3]@11 ~ [g2,g3]@34 ~@2 [c2,c3]@23 ~ [g2,g3]@23 ~ [g2,g3]@46 ~@2 [g1,g2]@34 ~@2]/6", // C G C G C G
  I: "~ e3 f3@2", J: "ab3 g3", K: "g3@2 g3 a3", L: "b3@5 g3 bb3@2", M: "e4 c4", N: "bb3@2 bb3@3 g3 ab3 bb3",
  O: "c4 eb4", P: "eb4@3 eb4", Q: "g4!3 d4 g4@10 d4@2", R: "e4 bb4 c5@3 c5 bb4 g4", S: "e4@2 bb4@2 eb5@6 c5@2 g4@3 a4",
  T: "b4", U: "~@3 b4@40 ~@5",
})).s("gm_cello").gain(0.17)

// chords · pizzicato strings · "Tremelo Viool"
const pizzicato_strings = note("<A B C D E F G@2 H ~@30>".pickRestart({
  A: "~@19 [c4,eb4,g4] [c4,eb4,g4,c5] [eb4,g4,c5] [c4,eb4,g4] [c4,eb4,g4,c5] [eb4,g4,c5] [c4,eb4,g4] [c4,eb4,g4,c5] [eb4,g4,c5] [c4,eb4,g4] [c4,eb4,g4,c5] [eb4,g4,c5] [c4,eb4,g4,c5] [c4,eb4,g4] [eb4,g4,c5] [c4,eb4,g4,c5] [c4,eb4,g4] [eb4,g4,c5] [c4,eb4,g4,c5] [c4,eb4,g4] [eb4,g4,c5] [c4,eb4,g4,c5] [c4,eb4,g4] [eb4,g4,c5] [f4,a4,c5] [f4,a4,c5,f5] [a4,c5,f5] [f4,a4,c5] [f4,a4,c5,f5]", // Cm F
  B: "[a4,c5,f5] [f4,a4,c5] [f4,a4,c5,f5] [a4,c5,f5] [f4,a4,c5] [f4,a4,c5,f5] [a4,c5,f5] [f4,a4,c5,f5] [f4,a4,c5] [a4,c5,f5] [f4,a4,c5,f5] [f4,a4,c5] [a4,c5,f5] [f4,a4,c5,f5] [f4,a4,c5] [a4,c5,f5] [f4,a4,c5,f5] [f4,a4,c5] [a4,c5,f5] [ab4,c5,eb5]!2 ~ [ab4,c5,eb5]!2 ~ [c5,eb5,ab5]!2 ~ [c5,eb5,ab5]!2 ~ [bb4,d5,f5]!2 ~ [bb4,d5,f5]!2 ~ [d5,f5,bb5]!2 ~ [d5,f5,bb5]!2 ~ [c4,eb4,g4] [c4,eb4,g4,c5] [eb4,g4,c5] [c4,eb4,g4] [c4,eb4,g4,c5]", // F Ab Bb Cm
  C: "[eb4,g4,c5] [c4,eb4,g4] [c4,eb4,g4,c5] [eb4,g4,c5] [c4,eb4,g4] [c4,eb4,g4,c5] [eb4,g4,c5] [c4,eb4,g4,c5] [c4,eb4,g4] [eb4,g4,c5] [c4,eb4,g4,c5] [c4,eb4,g4] [eb4,g4,c5] [c4,eb4,g4,c5] [c4,eb4,g4] [eb4,g4,c5] [c4,eb4,g4,c5] [c4,eb4,g4] [eb4,g4,c5] [g4,bb4,d5] [g4,bb4,d5,g5] [bb4,d5,g5] [g4,bb4,d5] [g4,bb4,d5,g5] [bb4,d5,g5] [g4,bb4,d5] [g4,bb4,d5,g5] [bb4,d5,g5] [g4,bb4,d5] [g4,bb4,d5,g5] [bb4,d5,g5] [g4,bb4,d5,g5] [g4,bb4,d5] [bb4,d5,g5] [g4,bb4,d5,g5] [g4,bb4,d5] [bb4,d5,g5] [g4,bb4,d5,g5] [g4,bb4,d5] [bb4,d5,g5] [g4,bb4,d5,g5] [g4,bb4,d5] [bb4,d5,g5] [eb4,g4,bb4]!2 ~ [eb4,g4,bb4]!2", // Cm Gm Eb
  D: "~ [g4,bb4,eb5]!2 ~ [g4,bb4,eb5]!2 ~ [f4,a4,c5]!2 ~ [f4,a4,c5]!2 ~ [a4,c5,f5]!2 ~ [a4,c5,f5]!2 ~ [g4,b4,d5] [g4,b4,d5,g5] [b4,d5,g5] [g4,b4,d5] [g4,b4,d5,g5] [b4,d5,g5] [g4,b4,d5] [g4,b4,d5,g5] [b4,d5,g5] [g4,b4,d5] [g4,b4,d5,g5] [b4,d5,g5] [g4,b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5]!2 ~ [g4,b4,d5]!2", // Eb F G
  E: "~ [g4,b4,d5]!2 ~ [g4,b4,d5]!2 ~ [g4,bb4,d5]!2 ~ [g4,bb4,d5]!2 ~ [g4,bb4,d5]!2 ~ [g4,bb4,d5]!2 ~ [c4,e4,g4] [c4,e4,g4,c5] [e4,g4,c5] [c4,e4,g4] [c4,e4,g4,c5] [e4,g4,c5] [c4,e4,g4] [c4,e4,g4,c5] [e4,g4,c5] [c4,e4,g4] [c4,e4,g4,c5] [e4,g4,c5] [c4,e4,g4,c5] [c4,e4,g4] [e4,g4,c5] [c4,e4,g4,c5] [c4,e4,g4] [e4,g4,c5] [c4,e4,g4,c5] [c4,e4,g4] [e4,g4,c5] [c4,e4,g4,c5] [c4,e4,g4] [e4,g4,c5] [c4,e4,g4]!2 ~ [c4,e4,g4]!2", // G Gm C
  F: "~ [c4,e4,g4]!2 ~ [c4,e4,g4]!2 ~ [c4,eb4,g4]!2 ~ [c4,eb4,g4]!2 ~ [c4,eb4,g4]!2 ~ [c4,eb4,g4]!2 ~ [g4,bb4,d5] [g4,bb4,d5,g5] [bb4,d5,g5] [g4,bb4,d5] [g4,bb4,d5,g5] [bb4,d5,g5] [g4,bb4,d5] [g4,bb4,d5,g5] [bb4,d5,g5] [g4,bb4,d5] [g4,bb4,d5,g5] [bb4,d5,g5] [g4,bb4,d5,g5] [g4,bb4,d5] [bb4,d5,g5] [g4,bb4,d5,g5] [g4,bb4,d5] [bb4,d5,g5] [g4,bb4,d5,g5] [g4,bb4,d5] [bb4,d5,g5] [g4,bb4,d5,g5] [g4,bb4,d5] [bb4,d5,g5] [g4,bb4,d5]!2 ~ [g4,bb4,d5]!2", // C Cm Gm
  G: "[~ [g4,bb4,d5]!2 ~ [g4,bb4,d5]!2 ~ [bb4,d5,f5]!2 ~ [bb4,d5,f5]!2 ~ [bb4,d5,f5]!2 ~ [bb4,d5,f5]!2 ~ [ab4,c5] [ab4,c5,f5]@2 [f4,ab4,c5]@2 [ab4,c5] [f4,ab4,c5]@2 [ab4,c5,f5]@2 [ab4,c5] [ab4,c5,f5]@2 [g4,bb4,d5]@2 [bb4,d5] [g4,bb4,d5]@2 [bb4,d5] [g4,bb4,d5]@2 [bb4,d5,g5]@2 [bb4,d5] [bb4,d5,g5]@2 [bb4,d5,f5]@2 [d5,f5,bb5]@2 [d5,f5] [d5,f5,bb5]@2 [bb4,d5,f5]@2 [d5,f5,bb5]@2 [bb4,d5,f5]@2 [d5,f5,bb5]@2 [eb4,g4] [eb4,g4,c5]@2 [c4,eb4,g4]@2 [eb4,g4,c5]@2 [c4,eb4,g4]@2 [eb4,g4,c5]@2 [c4,eb4,g4]@2 g4 [g4,b4,d5] [b4,d5,g5] [g4,b4,d5] [b4,d5,g5] ~ [g4,b4,d5] [b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5], ~@19 f4@2 ~@3 f5@2 ~@3 f4@2 ~@3 g5@2 ~ g5@2 ~@3 g4@2 ~@5 bb4@2 ~@9 c4@2 ~@11 [eb4,c5]@2 ~@21]/2", // Gm Bb Ab Fm Ab Fm Ab Fm …
  H: "[b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5] ~ [b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5] [b4,d5,g5] [g4,b4,d5]@2 [g4,b4,d5]@2 [g4,b4,d5]@2 [g4,b4,d5]@2 ~ [g4,b4,d5]@2 [g4,b4,d5]@2 [g4,b4,d5]@2 [g4,b4,d5]@2 ~@19", // G
})).s("gm_pizzicato_strings").gain(0.2)

// other · flute
const flute = note("<~@12 A B C D E F ~@2 G@2 C D H I ~@2 G@2 J K ~@7>".pickRestart({
  A: "~@12 g4@6 f4@6 g4@11 ~ bb4@11 ~", B: "e4@23 ~@25", C: "~@12 g4@17 ~ bb4@6 ab4@6 g4@6", D: "f4@23 ~@25",
  E: "~@12 g4@17 ~ f4@6 f4@6 g4@6", F: "c5@11 ~ g4@11 ~@25", G: "[~@12 b4@6 b4@6 b4@11 ~ g4@23 ~@37]/2",
  H: "~@12 eb4@17 ~ g4@6 f4@6 eb4@6", I: "e4@11 ~ g4@11 ~@25", J: "~@12 bb4@17 ~ c5@6 d5@6 eb5@6", K: "f5@11 ~@37",
})).s("gm_flute").gain(0.16)

// other · string ensemble 1
const string_ensemble_1 = note("<~@9 A B C D E F G H A I C D E F J K A I C L M N O P Q R S T U V>".pickRestart({
  A: "g3 f3", B: "ab3 d3 g3@2", C: "g3@3 a3", D: "b3@3 d4", E: "e4@3 c4", F: "d4@3 bb3", G: "f4 d4@2 c4", H: "b3",
  I: "ab3 f3 g3@2", J: "f4 d4 ab3 bb3", K: "eb4", L: "b3@3 g4", M: "g4@3 eb4", N: "g4@3 d4", O: "c4 d4 c4 bb3",
  P: "eb4@3 g4", Q: "g4 f4@3", R: "e4 eb4@3", S: "d4 f4@3", T: "e4 a4@3", U: "g4", V: "~@3 b4@40 ~@5",
})).s("gm_string_ensemble_1").gain(0.13)

// other · string ensemble 1 · "String Ensemble 2"
const string_ensemble_1_2 = note("<~@9 A B C D E F G E H I C D E F J E H I C K L M N O P E@2 Q P R>".pickRestart({
  A: "eb3 c3", B: "c3 f3 eb3@2", C: "d3@2 eb3 c3", D: "d3@3 g3", E: "g3", F: "g3@3 d4", G: "c4 bb3@2 g3", H: "e3 c3",
  I: "c3 d3 eb3@2", J: "c4 bb3 c4 f3", K: "d3@3 d4", L: "c4", M: "d4@3 bb3", N: "ab3 bb3 ab3 f3", O: "g3@3 eb4",
  P: "d4", Q: "g3 c4@3", R: "~@3 d4@40 ~@5",
})).s("gm_string_ensemble_1").gain(0.13)

// bass · electric bass pick · "Fingered Bass"
const bass = note("<A@6 B@3 C D E F G H I J C D E F G H K G L M N O P Q R S T U T U V W>".pickRestart({
  A: "[~@19 c2@24 f2@24 ab1@12 bb1@12 c2@24 g1@24 eb2@12 f2@12 g1@24 g1@24 c2@24 c2@24 g1@24 g1@5]/6",
  B: "[~@7 bb1@12 f1@13 g1@13 bb1@15 c2@14 g1@34 ~@36]/3", C: "c2@4 ~@2 c2 ~ f1@8",
  D: "ab1@4 ~@2 ab1 ~ c2@4 c2@2 eb2@2", E: "g2@4 ~@2 g2 ~ eb2@8", F: "g2@4 ~@2 g2 ~ g2@4 g2@4", G: "c2@4 ~@2 c2 ~ c2@8",
  H: "g1@4 ~@2 g1 ~ g1@4 bb1@2 bb2@2", I: "f2@4 ~@2 f2 ~ bb1@8", J: "g1@4 ~@2 g1 ~ g1@8", K: "f2@4 ~@2 f2 ~ ab2@8",
  L: "c2@4 ~@3 c2 f1@8", M: "ab1@4 ~@3 ab1 c2@8", N: "g2@4 ~@3 g2 eb2@4 f2@4", O: "g2@4 ~@3 g2 ~@3 g1 g1@2 bb1@2",
  P: "c2@12 ~@9 c2 ~@2 c2@3 ~@3 c2@18", Q: "g1@12 ~@9 g1 ~@2 g1@3 ~@3 g1@12 ab1@3 bb1@3",
  R: "f1@12 ~@9 f1 ~@2 ab1@3 ~@3 ab1@6 bb1@6 bb1@6", S: "c2@12 ~@9 c2 ~@2 c2@3 ~@3 eb2@6 c2@6 eb2@6",
  T: "g2@4 ~@3 g2 d2@8", U: "c2@4 ~@3 c2 g2@8", V: "g2@13 ~@9 g2@3 d2@23", W: "~ g1@9 ~@6",
})).s("gm_electric_bass_pick").gain(0.17)

// drums · kick
const kick = s("bd").struct("<~@9 A@3 ~ B@11 C B@7 C D@5 E>".pickRestart({
  A: "~@2 x ~@2 x!2 ~", B: "x ~@2 x!2 ~@3", C: "x ~@6 x!2 ~@7", D: "x", E: "~ x ~@14",
})).gain(0.17)

// drums · rim
const rim = s("rim").struct("<~@9 A@3 B C@11 ~ C@7 ~ C@4 D E>".pickRestart({
  A: "x!2", B: "~@3 x", C: "~ x ~ x", D: "~@13 x ~@24 x ~@9", E: "~ x ~@14",
})).gain(0.28)

// drums · snare
const snare = s("sd").struct("<~@24 [~ x ~ x] ~@7 [~ x ~ x] ~@6>").gain(0.33)

// drums · hihat
const hihat = s("hh").struct(`<
  ~@9
  [x!8]!15
  [x!7 ~]
  [x!8]!7
  [x!7 ~]!5
  [x ~@5 x ~@6 x ~@5 x ~@5 x ~@6 x ~@5 x ~@9]
  [~ x ~@14]
>`).gain(0.28)

// drums · open hat
const open_hat = s("oh").struct("<~@24 [~@7 x] ~@7 [~@7 x]!5 [~@11 x] ~>").gain(0.22)

// drums · high tom
const high_tom = s("ht").struct("<~@24 [~@5 x!2 ~] ~@7 [~@5 x!2 ~] ~@6>").gain(0.39)

// drums · tambourine
const tambourine = s("tb").struct("<~@9 x!3 [~@3 x]!12 [~ x ~ x] [~@3 x]!7 [~ x ~ x] x!5 [~ x ~@14]>").gain(0.28)

// drums · cabasa
const cabasa = s("cabasa:4").struct("<~@9 A@3 B C@11 D C@7 D C@4 E F>".pickRestart({
  A: "x!2", B: "~@3 x", C: "~ x ~ x", D: "~@3 x!2 ~@6 x!2 ~@3", E: "~@13 x ~@24 x ~@9", F: "~ x ~@14",
})).gain(1.41)

// drums · shaker
const shaker = s("sh").struct(`<
  ~@24
  [~ x ~ x ~ x ~ x]
  ~@7
  [~ x ~ x ~ x ~ x]!5
  [~@6 x ~@12 x ~@12 x ~@11 x ~@3]
  [~ x ~@14]
>`).gain(0.28)

// drums · triangle
const triangle = s("triangles:30").struct("<~@9 A@3 B C@11 D C@7 D C@4 E ~>".pickRestart({
  A: "~ x!3 ~ x!3", B: "~@7 x", C: "x!2 ~ x!3 ~ x", D: "x!2 ~ x!3 ~ x!3 ~ x!3 ~ x",
  E: "x ~@5 x ~@12 x ~@5 x ~@6 x ~@11 x ~@3",
})).gain(1.94)

// drums · triangle
const triangle_2 = s("triangles:35").struct("<~@9 A@3 B C@11 D C@7 D C@4 E F>".pickRestart({
  A: "x!2", B: "~@3 x", C: "~ x ~ x", D: "~ x ~ x ~ x ~ x", E: "~@13 x ~@24 x ~@9", F: "~ x ~@14",
})).gain(1.94)

stack(
  tremolo_strings, piano, cello, pizzicato_strings, flute, string_ensemble_1, string_ensemble_1_2, bass, kick, rim,
  snare, hihat, open_hat, high_tom, tambourine, cabasa, shaker, triangle, triangle_2
)