Strudelify

Mr. Bad Guy

Freddie Mercury

KeyG minorTempo90 bpm
0:00/0:00
// Mr. Bad Guy — Freddie Mercury
// 90 bpm, 4/4, key G minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: ch 1 "Contra Bass/Bass Guitar" named as a bass, played on acoustic bass (its contrabass patch is not one); ch 11 "Orchestral Perc." named as a string part, played on string ensemble 1 (its piano patch is not one)
// note: Full arrangement: all 116 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(90/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 · "Contra Bass/Bass Guitar"
const bass = note(`<
  A B C@2 D@5 ~@64 E F@2 G H I H J E F@2 G H I H J E F@2 G H I H J E F@2 G H I H J E F@2 G H I H J E F ~
>`.pickRestart({
  A: "~ g1 ~@3 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1@2 ~",
  B: "~ g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~",
  C: "[~ g1@2 ~@2 bb1@2 ~@2 c2@2 ~@2 d2 ~@3 g2@47]/2",
  D: "[~ g1@2 ~@2 bb1 ~@3 c2@2 ~@2 d2 ~@3 g2@80 ~@32 f1@31, ~@97 f2@63]/5",
  E: "~ g1 ~@3 bb1 ~@3 g1 ~@3 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@2",
  F: "~ g1@2 ~@2 bb1 ~@3 g1 ~@3 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1 ~@3 bb1 ~@2",
  G: "~ g1@2 ~@2 bb1 ~@3 g1 ~@3 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@2",
  H: "~ g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@2",
  I: "~ g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@2",
  J: "~ g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~",
})).s("gm_acoustic_bass").gain(0.57)

// bass · synth strings 1 · "Contra Bass/Bass Guitar"
const bass_2 = note(`<
  ~@10 A B C D E F@2 G H I ~@5 A B C D E F@2 G H I ~@24 J K L M N O P@2 I Q R S T U ~@43
>`.pickRestart({
  A: "~ g1 ~@3 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@2",
  B: "~ g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@2",
  C: "~ g1 ~@3 bb1 ~@3 g1 ~@3 bb1 ~@3 g1 ~@3 bb1 ~@3 g1 ~@3 bb1 ~@2",
  D: "~ g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1 ~@3 g1 ~@3 bb1 ~@2",
  E: "~ g1 ~@3 bb1 ~@3 g1 ~@3 bb1 ~@3 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~",
  F: "~ f1@2 ~@2 a1@2 ~@2 f1@2 ~@2 a1@2 ~@2 f1@2 ~@2 a1@2 ~@2 f1@2 ~@2 a1@2 ~",
  G: "~ bb1@2 ~@2 bb1 ~@3 bb1@2 ~@2 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@2",
  H: "~ bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1@2 ~@2 bb1 ~@2",
  I: "~ ab1 ~@3 ab1 ~@3 ab1 ~@3 ab1 ~@3 ab1 ~@3 ab1 ~@3 ab1 ~@3 ab1 ~@2", J: "~@2 c3@11 ~ bb2@17 ~",
  K: "~ c3@11 ~ bb2@17 ~@2", L: "~ d3@10 ~@2 c3@18 ~", M: "~ d3@11 ~ c3@19",
  N: "~@2 f2@4 ~@3 f2@4 ~@4 f2@4 ~@5 f2@4 ~@2", O: "~ f2@4 ~@4 f2@3 ~@5 f2@3 ~@5 f2@3 ~@4",
  P: "~ bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@2", Q: "~ c2@11 ~ b1@12 bb1@7",
  R: "~ a1@16 ab1@8 g1@7", S: "~ g1@2 ~@2 g1@2 ~@2 g1@2 ~@2 g1@2 ~@2 g1@2 ~@2 g1@2 ~@2 g1@2 ~@2 g1@3",
  T: "~ c2@2 ~@2 c2@2 ~@2 c2@2 ~@2 c2 ~@3 c2 ~@3 c2 ~@3 c2 ~@3 c2@3",
  U: "~ f2@4 f1 ~@3 f1@2 ~@2 f1 ~@3 f1@2 ~@2 f1@2 ~@2 f1 ~@3 f1 ~@2",
})).s("gm_synth_strings_1").gain(0.57)

// bass · string ensemble 1 · "Low Strings"
const bass_3 = note(`<
  A B C@2 D@6 E F G H I J@2 K L M N O P Q R E F G H I J@2 K L M N O P Q S@2 T U V W X Y Z AA Z AA AB AC AD ~ AE AF ~ AG
  AH AI AJ AK AL AM AN AO AP AQ AR AS@3 AT AU AV AW AX AY AZ BA AT AU AV AW AX AY AZ BA AT AU AV AW AX AY AZ BA AT AU AV
  AW AX AY AZ BA AT AU AV AW AX AY AZ BA AT AU ~
>`.pickRestart({
  A: "~@17 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~",
  B: "~ g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~",
  C: "[~ g1@2 ~@2 bb1@2 ~@2 c2@2 ~@2 [d2,e2] ~@3 g2@47]/2", D: "[~ g1 ~@3 bb1 ~@3 c2@2 ~@2 d2 ~@3 g2@80 f2@64 d2@31]/6",
  E: "~ g1 ~@3 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@2",
  F: "~ g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1 ~@2",
  G: "~ g1 ~@3 bb1 ~@3 g1 ~@3 bb1 ~@3 g1 ~@3 bb1 ~@3 g1 ~@3 bb1 ~@2",
  H: "~ g1@2 ~@2 bb1 ~@3 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1 ~@3 g1 ~@3 bb1 ~@2",
  I: "~ g1 ~@3 bb1 ~@3 g1 ~@3 bb1 ~@3 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~",
  J: "~ f1@2 ~@2 a1@2 ~@2 f1@2 ~@2 a1@2 ~@2 f1@2 ~@2 a1@2 ~@2 f1@2 ~@2 a1@2 ~",
  K: "~ bb1@2 ~@2 bb1 ~@3 bb1@2 ~@2 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@2",
  L: "~ bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1 ~@3 bb1@2 ~@2 bb1 ~@2",
  M: "~ ab1 ~@3 ab1 ~@3 ab1 ~@3 ab1 ~@3 ab1 ~@3 ab1 ~@3 ab1 ~@3 ab1 ~@2", N: "~ c2@11 ~ b1@19", O: "~ bb1@12 a1@19",
  P: "~ g1@31", Q: "~ c2@31", R: "~ f2@31", S: "[~ [f2,f3]@61 ~@2]/2", T: "~ [eb2,eb3]@31", U: "~ [f2,f3]@31",
  V: "~@2 c2@11 [b1,b2]@12 [bb1,bb2]@7, ~ c3@11 ~@20", W: "~ [a1,a2]@12 [ab1,ab2]@12 [g1,g2]@7",
  X: "~ [eb2,eb3]@16 [f2,f3]@15", Y: "~ [bb1,bb2]@31", Z: "~ eb3@16 d3@15", AA: "~ [f2,f3]@12 [e2,e3]@19",
  AB: "~ [eb2,eb3]@3 ~@6 eb2@3 ~@4 [eb2,eb3]@3 ~@5 [eb2,eb3]@3 ~@4, ~@9 eb3@3 ~@20", // Eb
  AC: "~ [f2,f3]@3 ~@6 f2@3 ~@5 [f2,f3]@3 ~@4 [f2,f3]@3 ~@4, ~@9 f3@2 ~@21", AD: "~ bb2@15, ~ bb1@31, ~@2 ab2 ~@29",
  AE: "~ eb4@12 d4@2 ~@17", AF: "~ db4@12 c4@2 ~@17", AG: "~ bb2@12 a2@3 ~@16", AH: "~@2 eb4@9 ~@2 eb4@17 ~@2",
  AI: "eb4@10 ~@3 eb4@19", AJ: "~ f4@11 ~ e4@19", AK: "~ f4@11 ~ e4@18 ~",
  AL: "~@2 eb4 d4@4 ~@3 eb4@4 ~@4 eb4@3 ~@4 [eb4,f4]@3 ~@4", // Ebsus2
  AM: "~ [eb4,f4]@3 ~@5 [eb4,f4]@3 ~@5 [eb4,f4]@3 ~@5 [eb4,f4]@3 ~@4", AN: "~ [bb2,bb3]@15", AO: "~ [bb2,bb3]@31",
  AP: "~ [ab2,ab3]@15", AQ: "~ [c3,c4]@12 [b2,b3]@12 [bb2,bb3]@7", AR: "~ [a2,a3]@16 [ab2,ab3]@8 [g2,g3]@7",
  AS: "[~@16 g1@16 ~@17 c3@16 [f3,f4]@29 ~@2, ~ g3@64 ~@31, ~ g2@32 c4@61 ~@2]/3", // F
  AT: "~ g2 ~@3 [bb1,bb2] ~@3 [g1,g2] ~@3 [bb1,bb2] ~@3 [g1,g2] ~@3 [bb1,bb2] ~@3 [g1,g2] ~@3 [bb1,bb2] ~@2", // Bb G Bb G Bb G Bb
  AU: "~ g1@2 ~@2 [a1,bb1,bb2] ~@3 g1@2 ~@2 [bb1,bb2] ~@3 g1@2 ~@2 [bb1,bb2] ~@3 [g1,g2] ~@3 [bb1,bb2] ~@2, ~ g2 ~@7 g2 ~@7 g2 ~@14", // Bbmaj7 Bb G Bb
  AV: "~ g2@2 ~@2 [bb1,bb2] ~@3 [g1,g2] ~@3 [bb1,bb2] ~@3 [g1,g2] ~@3 [bb1,bb2] ~@3 [g1,g2] ~@3 [bb1,bb2] ~@2, ~ g1 ~@30", // Bb G Bb G Bb G Bb
  AW: "~ g1@2 ~@2 [bb1,bb2] ~@3 g1@2 ~@2 [bb1,bb2] ~@3 g1@2 ~@2 [bb1,bb2] ~@3 g2@2 ~@2 [bb1,bb2] ~@2, ~ g2 ~@7 g2 ~@7 g2 ~@7 g1 ~@6", // Bb
  AX: "~ g1@2 ~@2 [bb1,bb2] ~@3 g2@2 ~@2 [bb1,bb2] ~@3 [g1,g2] ~@3 [bb1,bb2] ~@3 g1@2 ~@2 [bb1,bb2] ~@2, ~ g2 ~@7 g1 ~@15 g2 ~@6", // Bb G Bb
  AY: "~ [g1,g2] ~@3 [bb1,bb2] ~@3 g1@2 ~@2 [bb1,bb2] ~@3 g1@2 ~@2 [bb1,bb2] ~@3 g1@2 ~@2 [bb1,bb2] ~@2, ~@9 g2 ~@7 g2 ~@7 g2 ~@6", // G Bb
  AZ: "~ g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 [bb1,bb2] ~@3 g1@2 ~@2 [bb1,bb2] ~@3 g1@2 ~@2 [bb1,bb2] ~@2, ~ g2 ~@3 bb2 ~@3 g2 ~@7 g2 ~@7 g2 ~@6", // Bb
  BA: "~ g1@2 ~@2 [bb1,bb2] ~@3 g1@2 ~@2 bb1@2 ~@2 [g1,g2] ~@3 [bb1,bb2] ~@3 [g1,g2]@2 ~@2 [bb1,bb2] ~@2, ~ g2 ~@7 g2 ~@3 bb2 ~@18", // Bb G Bb G Bb
})).s("gm_string_ensemble_1").gain(0.36)

// chords · string ensemble 1 · "High Strings"
const string_ensemble_1 = note(`<
  ~ A B@2 C@5 D ~@3 E ~ F G H I J K@2 L@4 ~@4 M N O@2 P Q R S T U@3 V W@2 X Y Z AA AB AC AD@4 AE@2 AF AG AH@2 AI AJ AK
  AL AM AN AO AP@3 AQ@2 ~@24 AR@8 ~@11
>`.pickRestart({
  A: "~@17 g2 ~@3 bb2 ~@3 g2@2 ~@2 bb2 ~@2",
  B: "[~ g2 ~@3 bb2 ~@3 c3 ~@3 d3 ~@19 [g4,d5]@2 ~@6 [g4,d5]@2 ~@6 [g4,d5]@2 ~@6 [g4,d5]@2 ~@5, ~@17 g3@47]/2", // G5
  C: "[~ [g2,g4,d5] ~@3 bb2 ~@3 [c3,g4,d5] ~@3 d3 ~@3 [g4,d5] ~@7 [g4,d5] ~@7 [gb4,g4,c5]@16 [g4,b4]@3 ~@13 c5@16 [g4,b4]@3 ~@13 [f3,c5,f5]@62 ~, ~@17 g3@80 ~@63, ~@65 ab4@19 ~@76]/5", // G5 Csus2 G5 C G F5
  D: "~ [d3,d5,gb5]@31", E: "~@17 eb4@7 ~ d4@3 ~@4",
  F: "~ [f4,a4,c5]@2 ~@6 [f4,c5]@2 ~@6 [f4,a4,c5]@2 ~@6 [f4,a4,c5]@2 ~@5, ~@9 a4 ~@22", // F F5 F
  G: "~ [f4,c5]@2 ~@6 [f4,a4] ~@7 [f4,a4,c5] ~@7 [f4,a4,c5] ~@6, ~ a4 ~@7 c5@2 ~@21", H: "~ [d5,f5]@31",
  I: "~ [c5,eb5]@16 [bb4,d5]@15, ~ d5 ~@30", J: "~ [ab4,c5]@31", K: "[~ [c5,g5]@62 ~]/2",
  L: "[~ [c5,f5]@28 ~@4 e5 c6@63 ~@31, ~@31 c5@2 ~@95, ~@16 d5 g5@16 ~@31]/4", // F5
  M: "~ [f4,a4,c5]@2 ~@6 [f4,c5] ~@7 [f4,a4,c5]@2 ~@6 [f4,a4,c5] ~@6, ~@9 a4@2 ~@21", // F F5 F
  N: "~ [f4,a4,c5] ~@7 [f4,a4,c5] ~@7 [f4,a4,c5] ~@7 [f4,a4,c5] ~@6", // F
  O: "~ [f5,bb5] ~@3 [f5,bb5] ~@3 [f5,bb5] ~@3 [f5,bb5] ~@3 [f5,bb5] ~@3 [f5,bb5] ~@3 [f5,bb5] ~@3 [f5,bb5] ~@2", // Bb5
  P: "~ [eb5,ab5]@31", Q: "~ c6@12 d6@19", R: "~ eb6@12 f6@19", S: "~ g6@31", T: "~ c6@31",
  U: "[~ [a4,c5] ~ [a4,c5] ~ [bb4,d5] ~ [bb4,d5] ~ [a4,c5] ~ [a4,c5] ~ [bb4,d5] ~ [bb4,d5] ~ [a4,c5] ~ [a4,c5] ~ [bb4,d5] ~ [bb4,d5] ~ [a4,c5] ~ [a4,c5] ~ [bb4,d5] ~ [bb4,d5] ~ [a4,c5] ~ [a4,c5] ~ [bb4,d5] ~ [bb4,d5] ~ [a4,c5] ~ [a4,c5] ~ [bb4,d5] ~ [bb4,d5] ~ [a4,c5] ~ [a4,c5] ~ [bb4,d5] ~ [bb4,d5] ~ [a4,c5] ~ [a4,c5] ~ [bb4,d5] ~ [bb4,d5] ~ [c5,eb5] ~@3 [c5,eb5] ~@3 [c5,eb5] ~@3 [c5,eb5] ~ [c5,eb5] ~ eb5@2 ~@2 [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~@3 [c5,eb5] ~@2, ~ [f5,c6]@64 [bb5,eb6]@31, ~@81 c5 ~@14]/3", // Am Bb Am Bb Am Bb Am Bb …
  V: "~ [c5,f5]@2 ~@2 [c5,f5] ~ [c5,f5] ~ [c5,f5] ~@3 [c5,f5]@2 ~@2 [c5,f5] ~ [c5,f5] ~ [c5,f5]@2 ~@2 [c5,f5] ~@3 [c5,f5] ~ [c5,f5], ~ [c6,f6]@31", // F5
  W: "~ [g4,c5,g5,c6] ~@3 [g4,c5,g5,c6] ~@3 [g4,c5,g5,c6] ~@3 [g4,c5,g5,c6] ~@3 [g4,c5,g5,c6] ~@3 [g4,c5,g5,c6] ~@3 [g4,c5,g5,c6] ~@3 [g4,c5,g5,c6] ~@2", // C5
  X: "~ [bb4,eb5]@2 ~@2 [bb4,eb5] ~ [bb4,eb5] ~ [bb4,eb5]@2 ~@2 [bb4,eb5] ~ [bb4,eb5] ~ c5@2 ~@2 [c5,f5] ~ [c5,f5] ~ [c5,f5]@2 ~@2 [c5,f5] ~ [c5,f5], ~ [bb5,eb6]@16 [c6,f6]@15, ~@17 f5 ~@14", // Eb5 F5 Eb5 F5
  Y: "~ f5@16 bb4@3 ~@5 bb4@3 ~@4, ~ c6@31, ~@17 g5@15", Z: "~ eb5 eb5@15 d5@15",
  AA: "~ [c5,f5]@4 [c5,f5]@4 f5@2 ~@2 c5@4 c5@4 c5@4 c5@4 c5@3, ~@9 c5 ~@3 e5@19, ~@13 f5 ~@3 f5 ~@3 f5 ~@3 f5 ~@3 f5 ~@2", // F5
  AB: "~ [c5,g5,c6,g6]@6 ~@2 [c5,g5,c6,g6]@5 ~@3 [c5,g5,c6,g6]@6 ~@2 [c5,g5,c6,g6]@6 ~, ~ e5 ~@30", // C5
  AC: "~ [c5,f5] [c5,f5]@3 [c5,f5]@4 [c5,f5] ~@3 c5@4 c5@4 c5@4 c5@4 [c5,f5] ~@2, ~@13 e5@16 ~@3, ~@13 f5 ~@3 f5 ~@3 f5 ~@3 f5 ~@6", // F5
  AD: "[~@3 ab5@2 c5@2 ab5@2 c6@2 ab5@2 c5@2 ab5@2 c6@2 ab5@2 c5@2 ab5@2 c6@2 ab5@2 c5@2 ab5@2 db6@2 ab5@2 db5@2 ab5@2 [ab4,db5,db6]@2 ab5@2 db5@2 ab5@2 [ab4,db5,db6]@2 ab5@2 db5@2 ab5@2 [ab4,db5,db6]@2 ab5@2 db5@2 ab5@2 [f4,bb4,f5]@16 c5@2 ~@2 f5@2 c6@2 f6@2 g6@2 ab6@5 [a4,c5] ~@2 [a4,c5] ~@3 [a4,c5] ~@3 [a4,c5] ~@3 [a4,c5] ~@3 [a4,c5] ~@3 [a4,c5] ~@3 [a4,c5] ~@2, ~ [ab4,c5]@4 ~@4 [ab4,c5]@4 ~@4 [ab4,c5]@4 ~@4 [ab4,c5]@4 ~@4 [ab4,db5]@4 ~@44 f4@16 ~@31, ~@83 c5@14 ~@31]/4", // Db5 Bb5 Am Ab Db5
  AE: "~ [a4,c5] ~@3 [a4,c5] ~@3 [a4,c5] ~@3 [a4,c5] ~@3 [a4,c5] ~@3 [a4,c5] ~@3 [a4,c5] ~@3 [a4,c5] ~@2", // Am
  AF: "~ [f4,a4] ~@3 [f4,a4] ~@2 f4 a4 ~@3 [f4,a4] ~@3 [f4,a4] ~@2 [f4,a4] ~@3 [f4,a4] ~@4 [f4,a4] ~@2", // F
  AG: "~ [f4,a4] ~@3 [f4,a4] ~@3 [f4,a4] ~@2 f4 a4 ~@3 [f4,a4] ~@3 [f4,a4] ~@3 [f4,a4] ~@2 [f4,a4] ~@3", // F
  AH: "~ [eb5,eb6]@9 ~@3 [eb5,eb6]@17 ~@2", AI: "~ [f5,f6]@11 ~ [e5,e6]@18 ~", AJ: "~ [f5,f6]@11 ~ [e5,e6]@13 ~@6",
  AK: "~ [d4,bb5,d6]@4 ~@4 [c4,c6,eb6]@4 ~@4 [c6,eb6]@3 ~@5 [c6,eb6]@3 ~@4", // Gm Cm
  AL: "~ c6@2 ~@6 [c6,eb6]@2 ~@6 [c6,eb6]@2 ~@6 [c6,eb6]@3 ~@4", // Cm
  AM: "~ [f4,bb4,d5] ~@3 [f4,bb4,d5] ~@3 [f4,bb4,d5] ~@3 [f4,bb4,d5] ~@3 [f4,bb4,d5] ~@3 [f4,bb4,d5] ~@3 [f4,bb4,d5] ~@3 [f4,bb4,d5] ~@2", // Bb
  AN: "~ [f4,bb4,eb5] ~@3 [f4,bb4,eb5] ~@3 [f4,bb4,eb5] ~@3 [f4,eb5]@2 ~@2 [f4,bb4,d5] ~@3 [f4,bb4,d5] ~@3 [f4,bb4,d5] ~@3 [f4,bb4,d5] ~@2, ~@13 bb4 ~@18", // Ebsus2 F7 Bb
  AO: "~ [eb4,ab4,c5]@31", // Ab
  AP: "[~ c5@2 eb5@2 g5@2 bb5@2 c6@2 bb5@2 g5@2 eb5@2 c5@2 eb5@2 g5@2 bb5@2 c6@2 bb5@2 g5@2 eb5@2 c5@2 eb5@2 g5@2 bb5@2 c6@2 bb5@2 g5@2 eb5@2 c5@2 eb5@2 g5@2 bb5@2 c6@2 bb5@2 g5@2 eb5@2 bb4@2 d5@2 f5@2 ab5@2 bb5@2 ab5@2 f5@2 d5@2 bb4@2 d5@2 f5@2 ab5@2 bb5@2 ab5@2 f5@2 d5]/3",
  AQ: "[~ c5@2 d5@2 e5@2 d5@2 e5@2 f5@2 e5@2 f5@2 g5 ~ f5@2 g5@2 a5@2 f5@2 a5@2 c6@2 f5@2 f6@31]/2",
  AR: "[~ [g4,bb4,d5]@255]/8", // Gm
})).s("gm_string_ensemble_1").gain(0.37)

// other · tuba
const tuba = note("<~ A B@8 ~@106>".pickRestart({
  A: "~ g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~@2 g1@2 ~@2 bb1@2 ~",
  B: "[~ g1@2 ~@2 bb1@2 ~@2 c2@2 ~@2 d2@2 ~@2 g2@48 g1@2 ~@2 bb1@2 ~@2 c2@2 ~@2 d2@2 ~@6 g2@76 f2@64 gb1@31]/8",
})).s("gm_tuba").gain(0.36)

// chords · string ensemble 1 · "Orchestra"
const string_ensemble_1_2 = note(`<
  ~@7 A@2 B ~@10 C D E F G ~@3 H I@6 J K L M N@3 O P Q R S T U@2 V W X Y@2 ~@10 Z@3 AA AB@4 ~@43
>`.pickRestart({
  A: "[~ [c4,f4,c5,f5]@30 ~]/2", B: "~ [d4,gb4,d5,gb5]@31", C: "~@2 c4@11 [b2,b3]@19, ~ c3@11 ~@20",
  D: "~ [bb2,bb3]@11 ~ [a2,a3]@19", E: "~ g3@10 ~@2 [g3,d4] ~ [g3,d4] ~ [g3,d4]@15, ~ g2@31", F: "~ [c5,g5,c6]@31",
  G: "~ [c5,f5]@28 ~@3", H: "~@17 [c4,eb4]@7 ~ [bb3,d4]@2 ~@5, ~@25 eb4 ~@6",
  I: "[~ [g3,bb3]@8 [d3,g3]@2 ~@6 [f3,c4,f4] ~ [g3,d4,g4]@2 ~@2 [g3,d4,g4]@2 ~@2 [g3,d4,g4]@2 ~@2 [g3,d4,g4]@2 ~@44 f2 ~ f2 ~ f2@16 [bb2,bb3]@64 [ab2,ab3]@31, ~@33 [f3,f4]@64 ~@95]/6", // Gm G5 F5 G5 Bb Ab F
  J: "~@5 [eb3,eb4] ~@3 [eb3,eb4]@4 [b2,b3]@19, ~ [c3,c4]@11 ~@20", // Eb B C
  K: "~@5 [eb3,eb4] ~@3 [eb3,eb4]@4 [a2,a3]@19, ~ [bb2,bb3]@12 ~@19", // Eb A Bb
  L: "~ g3@12 g3@2 g3@2 [g3,d4]@15, ~ g2@31, ~@13 d4 ~ d4 ~@16", M: "~ [c3,c4,c5,g5]@31",
  N: "[~@33 f5@32 [eb3,eb4,eb5]@31, ~ f4@64 ~@31]/3", O: "~ [c5,f5]@15, ~ [f3,f4]@31",
  P: "~@5 g4@2 ~@2 [g4,c5]@3 ~@9 [g4,c5]@3 ~@5 [g4,c5]@3, ~ [c3,c4]@12 [b2,b3]@12 [bb2,bb3]@7, ~@5 c5 ~@26", // C5 C B Bb
  Q: "~@5 [g4,c5] ~@3 [g4,c5]@2 ~@10 [g4,c5]@2 ~@6 [g4,c5] ~@2, ~ [a2,a3]@12 [ab2,ab3]@12 [g2,g3]@7", // C5 A Ab G
  R: "~@2 bb4@15 [f3,f4,c5,f5]@15, ~ [eb3,eb4,eb5]@16 ~@15", S: "~ [bb2,bb3,f4,bb4]@31",
  T: "~ eb5 eb5@14 d5 [d4,d5]@15, ~ eb4@15 ~@16, ~@2 bb4 ~@29", // D
  U: "[~ f5 [c5,f5]@11 ~@8 bb4@4 f4@4 c4@4 eb5 eb5@15 [d4,d5]@15, ~ f4@19 ~@44, ~@13 [e4,c5,e5]@20 eb4@16 ~@15]/2", // F5 D C
  V: "~ [f3,f4,c5,f5]@12 [e3,e4,c5,e5]@19", // F5 C
  W: "~ [eb3,eb5]@2 ~@6 [eb3,ab3,c4,ab4,eb5]@4 ~@4 [eb3,ab3,c4,eb4,ab4,c5]@3 ~@5 [ab3,c4,ab4,c5]@4 ~@3, ~ ab3 ~@23 [eb3,eb4]@2 ~@5", // Eb Ab Eb
  X: "~ [f3,ab3,db4,f4,ab4,db5]@3 ~@6 [f3,f4]@2 ~@6 db5@3 ~@4 [f3,ab3,db4,f4,ab4,db5]@2 ~@5, ~@9 [ab3,db4,ab4,db5]@3 ~@5 [f3,ab3,db4,f4,ab4]@3 ~@12", // Db F Db Db5 Db
  Y: "[~ bb3 bb4@15 c4 [c4,c5]@17 ~@29, ~ bb2@16 c3@17 ~@30, ~ [f3,bb3,f4]@16 ~@15]/2", // C Bb5
  Z: "[~@2 [bb3,f4,bb4]@63 ~ bb4 ~@29, ~@65 [ab3,eb4,ab4]@31]/3", AA: "~ [c4,c5]@11 ~ [b3,b4]@12 [bb3,bb4]@7",
  AB: "[~ [a3,a4]@16 [ab3,ab4]@7 ~ g4@19 ~ [d4,g4] ~ [d4,g4] ~ d4@16 ~@32 [f4,c5,f5]@28 ~@3, ~@25 g3@72 ~@31, ~@49 g4@49 ~@30, ~@65 c4@61 ~@2]/4", // A Ab G5 F5
})).s("gm_string_ensemble_1").gain(0.41)

// chords · marimba · "Mallet Perc."
const marimba = note(`<
  ~@7 A@2 B C ~@18 D@2 ~@8 E@2 F G ~@2 H I ~ J ~ K L ~@23 M N O P Q R S T S U V W Q X Y Z AA AB Q AC AD AE AF AG AH@2 AI
  Q AJ S AK AL AM AN AO AP AQ ~@4
>`.pickRestart({
  A: "~ [c5,f5] ~ [c5,f5] ~ [c5,e5] ~ [c5,e5] ~ [c5,f5] ~ [c5,f5] ~ [c5,e5] ~ [c5,e5] ~ [c5,f5] ~ [c5,f5] ~ [c5,e5] ~ [c5,e5] ~ [c5,f5] ~ [c5,f5] ~ [c5,e5] ~ [c5,e5]", // F5 C F5 C F5 C F5 C
  B: "~ gb5!13 ~ gb5!17", C: "gb5 ~@31",
  D: "[~@17 [f4,f5] ~ g5@2 ~@2 g5@2 ~@2 [g4,g5] ~@3 g5@2 ~@31, ~@19 g4 ~@3 g4 ~@7 g4 ~@32]/2", // F G
  E: "~ [a4,c5] ~ [a4,c5] ~ [bb4,d5] ~ [bb4,d5] ~ [a4,c5] ~ [a4,c5] ~ [bb4,d5] ~ [bb4,d5] ~ [a4,c5] ~ [a4,c5] ~ [bb4,d5] ~ [bb4,d5] ~ [a4,c5] ~ [a4,c5] ~ [bb4,d5] ~ [bb4,d5]", // Am Bb Am Bb Am Bb Am Bb
  F: "~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5]", // Cm
  G: "~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5]", // F5
  H: "~ [bb4,eb5] ~ [bb4,eb5] ~ [bb4,eb5] ~ [bb4,eb5] ~ [bb4,eb5] ~ [bb4,eb5] ~ [bb4,eb5] ~ [bb4,eb5] ~@2 [c5,f5]!2 ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5] ~ [c5,f5]", // Eb5 F5
  I: "~ [bb4,db5,d5] ~@3 [bb4,d5] ~ d5 ~ [bb4,d5] ~ [bb4,d5] ~ d5 ~ [bb4,d5] ~ [bb4,d5] ~ d5 ~ [bb4,d5] ~ [bb4,d5] ~ [bb4,d5] ~ [bb4,d5] ~ [bb4,d5] ~ [bb4,d5]", // Bb
  J: "~ [c5,f5] c5 [c5,f5] c5 [c5,f5] c5 [c5,f5] c5 [c5,f5] c5 [c5,f5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5]!2 c5 [c5,e5] c5", // F5 C
  K: "~ [c5,f5] c5 [c5,f5] c5 [c5,f5] c5 [c5,f5] c5 [c5,f5] c5 [c5,f5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5] c5 [c5,e5]", // F5 C
  L: "c5 ~@31", M: "~@9 [g3,bb3,g4,bb4] ~@15 [bb3,d4,bb4,d5] ~@3 [bb3,d4,bb4,d5] ~@2",
  N: "~@7 [bb3,bb4] ~ [g3,bb3,g4,bb4] ~@13 [d4,d5] ~ [bb3,d4,bb4,d5] ~@3 [bb3,d4,bb4,d5] ~@2", // Bb Gm D Bb
  O: "~@23 [g4,g5] ~@5 [g4,bb4,g5,bb5] ~@2", P: "~@5 [d5,d6] ~ [bb4,d5,bb5,d6] ~ [bb4,bb5] ~@3 [bb4,d5,bb5,d6] ~@18",
  Q: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@3 [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@6", // Bb F G D Bb F G
  R: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@3 [c5,c6] ~ [d5,d6] ~ [c5,c6] ~ [bb4,bb5] ~ [g4,g5]@2 ~@5", // Bb F G D C D C Bb …
  S: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@3 [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~@3 [g4,g5] ~@6", // Bb F G D Bb F G
  T: "~@3 [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [g4,g5] ~ [g4,g5] ~ [d4,d5] ~@3 [bb4,bb5] ~ [bb4,bb5] ~ [g4,g5] ~ [f4,f5] ~ [g4,g5] ~@6", // Bb F G D Bb G F G
  U: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@3 [c5,c6] ~ [d5,d6] ~ [c5,c6] ~ [bb4,bb5] ~ [g4,g5] ~@6", // Bb F G D C D C Bb …
  V: "~@5 [g4,bb4,g5,bb5] ~ [bb4,bb5] ~ [g4,bb4,g5,bb5] ~@7 [d5,d6] ~ [bb4,d5,bb5,d6] ~ [bb4,d5,bb5,d6] ~@3 [bb4,d5,bb5,d6] ~@3 [bb4,d5,bb5,d6] ~@2", // Gm Bb Gm D Bb
  W: "~@5 [g4,bb4,g5,bb5] ~ [g4,bb4,g5,bb5] ~ [g4,bb4,g5,bb5] ~@11 [bb4,d5,bb5,d6] ~ [bb4,bb5] ~ [bb4,d5,bb5,d6] ~@3 [bb4,d5,bb5,d6] ~@2", // Gm Bb
  X: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@3 [c5,c6] ~ [d5,d6]@2 [c5,c6]@2 [bb4,bb5]@2 [g4,g5]@2 ~@5, ~@21 [db5,db6] ~@10", // Bb F G D C D C Bb …
  Y: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@3 [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5]@2 ~@5", // Bb F G D Bb F G
  Z: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@5 [d5,d6] ~@3 [bb4,bb5] ~ [g4,g5] ~@6", // Bb F G D Bb G
  AA: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@7 [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [g4,g5] ~ [g4,g5] ~@2", // Bb F G D Bb F G
  AB: "~@5 [g4,bb4,g5,bb5] ~ [g4,bb4,g5,bb5] ~ [g4,bb4,g5,bb5] ~@5 [bb4,d5,bb5,d6] ~ [bb4,d5,bb5,d6] ~@3 [bb4,d5,bb5,d6] ~ [bb4,d5,bb5,d6] ~ [bb4,d5,bb5,d6] ~@6", // Gm Bb
  AC: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@3 [c5,c6] ~ [d5,d6]@2 [c5,c6]@2 [bb4,bb5]@2 [g4,g5] ~@6", // Bb F G D C D C Bb …
  AD: "~ [bb4,bb5] ~ [bb4,bb5] ~ [g4,g5] ~ [g4,g5] ~ [g4,g5] ~@3 [f4,f5] ~@3 [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@6", // Bb G F Bb F G
  AE: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@7 [c5,c6] ~ [d5,d6] ~ [c5,c6]@2 [bb4,bb5] ~ [g4,g5] ~@2", // Bb F G D C D C Bb …
  AF: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@5 [a4,a5] ~@12", // Bb F G D A
  AG: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~@3 [g4,g5] ~@3 [d4,d5] ~@7 [bb4,bb5] ~ [bb4,bb5] ~@3 [f4,f5] ~ [g4,g5] ~@2", // Bb F G D Bb F G
  AH: "[~@5 [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [g4,g5] ~ [g4,g5] ~ [d4,d5] ~@9 [c5,c6] ~ [d5,d6] ~ [c5,c6] ~ [bb4,bb5]@2 [g4,g5] ~@11 [bb4,bb5] ~ [f4,f5] ~ [g4,g5] ~ [g4,g5] ~ [d4,d5] ~@7 [bb4,bb5] ~ [f4,f5]]/2", // Bb F G D C D C Bb …
  AI: "~ [g4,g5] ~ [f4,f5] ~@3 [d4,d5] ~@9 [bb4,bb5] ~ [f4,f5] ~@3 [g4,g5] ~@5 [d4,d5] ~@2", // G F D Bb F G D
  AJ: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@3 [c5,c6] ~ [d5,d6]@2 [c5,c6]@2 ~@2 [g4,g5]@2 ~@5", // Bb F G D C D C G
  AK: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@3 [c5,c6] ~ [d5,d6]@2 [c5,c6]@2 [bb4,bb5]@2 [g4,g5]@2 ~@5", // Bb F G D C D C Bb …
  AL: "~@5 [bb4,bb5] ~ [bb4,bb5] ~ [g4,bb4,g5,bb5] ~@9 [d5,d6] ~ [bb4,d5,bb5,d6] ~ [bb4,d5,bb5,d6] ~ [bb4,d5,bb5,d6] ~@6", // Bb Gm D Bb
  AM: "~@7 [g4,bb4,g5,bb5] ~ [g4,bb4,g5,bb5] ~@7 [d5,d6] ~ [bb4,d5,bb5,d6] ~ [bb4,d5,bb5,d6] ~ [bb4,d5,bb5,d6] ~@3 [bb4,d5,bb5,d6] ~ [bb4,d5,bb5,d6] ~@2", // Gm D Bb
  AN: "~ [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~ [f4,f5] ~ [g4,g5] ~@3 [d4,d5] ~@3 [bb4,bb5] ~ [bb4,bb5] ~ [f4,f5] ~@3 [g4,g5] ~@3 [c4,d4,c5,d5] ~@2", // Bb F G D Bb F G Csus2
// … 242 more lines

More by Freddie Mercury