Strudelify

Colors of the Wind

Vanessa Williams

KeyB♭ majorTempo84 bpm
0:00/0:00
// Colors of the Wind — Vanessa Williams
// 84 bpm, 4/4, key A# 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, 2/4 at bar 79, 4/4 at bar 79) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: Full arrangement: all 87 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(84/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.

// chords · epiano2 · "#FM.Piano"
const epiano2 = note(`<
  A@3 B@2 C D E F C G C H I@3 J K G C L M@3 N O P Q R S T@2 U V W X Y Z AA AB AC AD AE AF Y AG AH AI AJ AK AL AM AN AO
  AP@2 AQ AR AS AT AU AV AW AX@2 AY AZ BA BB BC@2 BD BE BF BG BH BI@8 BJ@3
>`.pickRestart({
  A: "[~@15 [bb4,d5]@4 [c5,f5]@3 ~ [c5,f5]@4 [bb4,d5]@4 [bb4,d5]@14 ~@2 [g4,bb4]@4 ~ [a4,d5]@3 ~ [a4,d5]@4 [g4,bb4]@4 [g4,bb4]@14 ~@2 g4@4 a4@4 a4@4 bb4@4, ~@15 bb3@32 g3@32 ~ [eb2,bb3,f4]@8 [d2,c4,f4]@8, ~@23 f4@24 ~@9 d4@24 ~@16]/3", // Bb F5 Bb Gm D5 Gm Ebsus2 Dm7
  B: "[~ [d4,bb4]@4 [c4,a4]@3 ~ [bb3,g4]@4 [a3,f4]@4 ~ [d4,g4]@4 [d4,g4]@4 ~ [c4,f4]@4 [d4,g4]@4 ~ [bb3,d4]@9 ~ [eb3,a3,c4]@17 ~, ~ g2@8 f2@9 [eb2,g3,bb3]@18 f2@28]/2", // Gm F Eb Dm G5 F5 G5 Bb …
  C: "~@2 [bb3,d4] [c4,f4]@2 [bb3,d4] [f3,c4] [d3,bb3], bb2@31 ~, ~@4 f3@19 ~@9", // Bb F5 Bb F5 Gm
  D: "~@4 [g3,bb3]@2 ~@8 f2 g2, g2@7 ~, ~@4 d3@15 ~ d3@11 ~, ~@12 [a3,d4]@12 [g3,bb3]@7 ~", // Gm D5 Gm
  E: "~@8 [bb3,d4]@4 [c4,f4]@8 bb2 ~ c3 ~ c4@4 bb3@4, bb2@19 ~ [bb3,d4]@4 ~@8, ~@4 f3@19 ~ [d3,f3]@8", // Bb F5 Bb Dm
  F: "~@2 [g3,bb3] [a3,d4]@5, g2, ~@4 d3@27 ~", // Gm D5
  G: "~@2 [g3,bb3] ~@4 d3, g2, ~@4 d3@15 ~ d3@7 ~@5, ~@3 [a3,d4]@3 [g3,bb3]@2", // Gm D5 Gm
  H: "~@4 d3@3 ~ c4 d4 [c4,f4]@2 [d4,g4]@2 [c4,f4]@2, d2, [a3,f4]@14 d3@9 ~ d3@8, ~@4 a2@27 ~, ~@4 g4 ~@3", // F5 G5 F5 Dm
  I: "[~@24 d3@6 ~@2 eb2@15 ~@13 f3@2 ~@2 [c3,eb4]@14 ~@2 [f2,a3,d4]@15 ~, [g2,d4,g4]@14 a3@17 ~ c4@24 bb3@8 ~@14 f3@17 ~, ~@8 d3@15 ~@7 g3@17 ~ f3@12 ~@2 g3@17 ~@17, ~@16 [d2,f4]@16 ~@16 d2@15 ~@33]/3", // Cm Dm G5 Dm
  J: "[g3,bb3]@4 [a3,c4]@3 ~ [a3,c4]@3 ~ [bb3,d4]@3 ~ [bb3,d4]@3 ~ [c4,d4,f4]@3 ~ [d4,g4]@2 c4@2 [c4,f4]@4, g2@15 ~ f2@15 ~", // Gm Am Bb Dm7 G5 F5
  K: "~@2 [bb3,d4] [c4,f4]@2 [bb3,d4] [f3,c4] [d3,bb3], bb2@31 ~, [d4,g4] ~@3, ~@4 f3@19 ~@9", // Bb F5 Bb F5 Gm G5
  L: "~@4 d3@3 ~ bb3@2 c4@2 d4@2 f4@2, d2, [a3,f4]@14 d3@9 ~ [d3,c4]@8, ~@4 a2@27 ~, ~@2 f4 ~", // Dm D7
  M: "[~@24 d3@6 ~@10 c4@8 ~@12 f3@2 ~@2 [c3,eb4]@14 d4@2 ~@4 c3 ~ f3 ~ [f2,eb3,bb3]@8, [g2,d4,bb4]@14 c4@15 ~ c4@9 ~@23 g3@17 ~ c4@15 ~, ~@8 d3@15 ~@73, ~@16 [d2,a4]@16 [eb2,g3,g4]@16 [d2,bb3,f4]@15 ~@17 [f2,a3]@8 ~@8]/3", // Cm Ebsus2 Gm D5 Eb Bb F
  N: "[bb2,d3,bb3]@15 ~ [a2,f3,d4]@15 ~", // Bb Dm
  O: "[d4,bb4]@4 d4 ~ [d4,a4]@5 ~ [d4,g4]@8 [f3,c4,f4]@3 ~ [f3,a3,d4]@8, g2@31 ~, ~@6 g3@13 ~@13", // Gm D5 G5 F5 Dm
  P: "[a3,d4]@7 ~ c4@4 d4@4 c4@8 bb3@7 ~, d3@15 ~ [eb2,g4]@15 ~, ~ f4 ~@2", // D5 Eb
  Q: "[g3,d4]@4 [d4,g4,bb4]@3 ~@13 [f3,d4]@4 [d3,bb3,d4,g4]@8, g2@3 ~, ~ d3@2 a4@3 ~@2, ~@8 [g4,bb4]@15 ~@9, ~@2 [g3,d4]@3 ~@3", // G5 Gm Dm Gm G5
  R: "a3 [bb3,bb4] [d4,d5] [f4,f5], d2, f4 ~", // Bb D F
  S: "[bb4,bb5]@11 ~ [a4,a5]@4 [g4,c5,g5]@7 ~ [f4,c5,f5]@7 ~, eb2@15 ~ eb2@15 ~", // Bb A C5 F5
  T: "[~@4 bb4@4 a4@2 ~@4 f3 ~ [eb2,c4]@8 ~@4 c4@4, [d2,d4,f4,c5]@16 g2@14 g3@17 ~ [d2,f3,bb3]@16, ~@20 f5@11 ~@33]/2", // Cm Dm7 Bb
  U: "~@3 c6 ~@3 bb4, [g2,d3,bb3]@31 ~, ~@8 f5@8 [f6,c7]@15 ~", V: "[c3,bb3,c4,f4]@14 d4 ~ c4@2 bb3@14, ~ [f2,eb3]",
  W: "[bb4,d5]@4 [c5,f5]@3 ~ [c5,f5]@4 [bb4,d5]@4 [bb4,d5]@12 g4 ~ a4@2, bb3@31 ~, ~@8 f4@23 ~", // Bb F5 Bb
  X: "[g4,bb4]@4 [a4,d5]@3 ~ [a4,d5]@4 [g4,bb4]@4 [c4,a4]@3 ~ [c4,g4]@4 [f2,a3,f4]@6 g3@2, g3@7 ~ f3@7 ~ eb2@7 ~@7 eb4 ~", // Gm D5 Gm F C5 F
  Y: "~@16 [f2,a3,c4]@15 ~, [bb2,f3,d4] ~, ~@12 f4@19 ~", // F Bb
  Z: "[g2,d3,bb3]@12 [eb2,eb3,g3,bb3]@10 f3@2 [g3,bb3,eb4]@3 ~ [g3,bb3,eb4]@4, ~@3 f2", // Gm Eb
  AA: "[f3,bb3,d4]@15 ~ [d4,g4]@4 [c4,f4]@7 ~ [c4,f4]@2 [d4,g4]@2, bb2@31 ~", // Bb G5 F5 G5
  AB: "~@8 d3@4 ~@4 [d4,g4]@7 ~ [gb3,d4,a4]@8, d2@3 ~, c4@14 d3@9 ~@9, [a3,f4]@3 [a3,f4] ~@4, ~ a2@5 ~@2", // G5 D Dm
  AC: "[g2,d4,bb4]@7 bb4 [f2,d4,a4]@8", AD: "[eb2,c4,g4]@15 ~ c4@8 ~@4 f3@2 f4@2, ~@16 [d2,f4]@15 ~, ~@3 bb3",
  AE: "~@12 f3@2 eb4@2 [bb3,d4]@7 ~ [a3,c4]@8, [c3,g3,eb4]@15 ~ f2@15 ~", // Bb Am Cm
  AF: "~@8 c4@3 ~ f4@3 ~ [c4,g4]@7 ~ [c4,f4]@8, [g2,g3,bb3]@16 a2@15 ~", // C5 F5 Gm
  AG: "[g2,bb3,d4]@15 ~ [bb3,f4]@8 [g3,eb4]@8, ~@16 eb2@15 ~", // Gm Bb5 Cm
  AH: "d4@8 [c4,f4]@3 ~ [c4,f4]@7 ~ [c4,f4]@7 ~ [c4,f4]@2 [d4,g4]@2, bb2@31 ~, [f3,bb3]@15 ~@17", // F5 G5 Bb5
  AI: "~@8 d3@4 f5@2 g5@2 [g4,d5] ~ [g4,d5]@2 [f4,c5]@4 [f4,c5]@2 [g4,d5]@2 [f4,c5]@4, d2, [a3,c4,f4]@14 d3@17 ~, ~@4 a2@27 ~, ~@3 c5 ~@4", // G5 F5 G5 F5 F
  AJ: "[g2,d4,bb4]@14 bb4@2 d4@7 ~ d4@7 ~, ~ [f2,a4]", AK: "[eb2,c4,g4]@15 ~ c4@8 bb3@7 ~, ~@16 [d2,f4]@15 ~",
  AL: "[c3,g3,bb3,eb4]@16 c4@8 bb3@7 ~, ~@16 [f2,f3,eb4]@15 ~", // Cm7 F7
  AM: "~@2 d3@2 ~ f4 ~ f4, [bb2,bb3,c4,f4]@16 [bb2,bb3,d4]@7 ~ [a2,a3,d4]@8, ~ f3@3 ~@4", // Bbsus2 Bb D5
  AN: "[d4,bb4]@4 [d4,a4]@2 ~@2 [d4,a4]@3 ~ [d4,g4]@3 ~ [d4,g4]@3 ~ [f3,c4,f4]@3 ~ [f3,a3,d4]@8, g2@31 ~, ~@6 g3@13 ~@13", // Gm D5 G5 F5 Dm
  AO: "[a3,d4]@7 ~ c4@4 d4@4 [bb3,f4]@8 [bb3,eb4]@8, d3@15 ~ eb2@15 ~, ~ f4 ~@2", // D5 Bb5 Eb5
  AP: "[[g3,d4]@4 [d4,g4]@3 ~ [d4,g4]@3 ~ [d4,g4]@8 [f3,c4,f4]@4 [d3,a3,d4]@6 ~@2 a4@11 ~ [f4,a4]@2 [d4,g4]@2 [c4,f4]@2 [f4,a4]@2 [d4,g4]@4 [c4,f4]@8, g2@3 ~ [d2,d3]@4, ~@4 d3@15 ~@12 [d4,f4]@13 ~@20, ~@8 g3@11 ~@11 c4@14 ~@20]/2", // G5 F5 D5 F G5 F5 F G5 …
  AQ: "[eb4,g4]@4 [eb4,g4,d5]@4 [eb4,bb4]@4 [eb4,g4,d5]@2 c5@2 [c4,f4,c5]@7 ~ [c4,f4,a4]@7 ~, [eb2,bb3]@15 ~ eb2@15 ~", // Eb Ebmaj7 Eb5 Ebmaj7 F5 F Eb5
  AR: "[c4,f4,a4]@7 ~ [c4,f4,a4,c5]@7 ~ [d4,bb4]@5 ~ [c4,a4]@5 ~ [c4,f4]@4, d2@15 ~ g2@15 ~", // F Gm F F5
  AS: "[c2,bb3,d4,eb4,g4] [d2,bb3,c4,f4]", // Cm7 Bb
  AT: "~@7 f4, [g2,d3,bb3]@31 ~, ~ f5@2 bb4, ~@9 [bb5,d6]@15 ~@8, ~@10 f6@6 c7@15 ~", // Gm Bb
  AU: "eb4@12 d4@3 ~ c4@8 bb3@7 ~, [c3,bb3]@15 ~ [f2,eb3]@16", // C7 F7
  AV: "f4@11 ~ f4@4 ~@12 c5@4, bb2@31 ~, [bb3,c4]@15 ~ c4@15 ~, ~@5 f4@3, ~@3 bb4", // Bbsus2
  AW: "[d2,c4,f4,a4]@15 ~ [f4,a4,c5]@12 bb4@4, ~@16 eb2@15 ~", // Dm7 F
  AX: "[[c4,f4,a4]@7 ~ [c4,d4,f4,bb4]@7 ~ [c4,f4,a4]@7 ~ [d4,f4,bb4]@7 ~@9 g4@4 eb4@4 bb4@4 eb4@4 bb4@4 eb4@3 ~, d2@15 ~ g2@15 c4@31 ~@2, ~@31 eb4@12 ~@21, ~@31 g4 bb4@15 ~@17, ~@32 ab2@31 ~]/2", // F Bb F Bb
  AY: "[f2,c4,eb4,g4,bb4]@15 ~ a4@12 g4 ~ a4 ~, ~@16 [f2,c4,d4,f4]@15 ~", // Cm7 Dm7
  AZ: "bb4@7 ~ c5@7 ~ f4@7 ~ f4@8, f2, [c4,eb4,g4]@15 ~ [c4,a4]@16", // Cm F
  BA: "~@25 a5@7, ~ g2@31, ~ [g4,bb4,d5,f5]@15 [d4,g4,bb4]@5 [d5,f5]@11, ~@13 g3@19, ~@5 a4@3", // Gm7 Gm Dm
  BB: "~ [d4,a4,e5]@15 ~ [bb3,g4,bb4,g5]@3 ~ [a3,f4,a4,f5]@3 ~ [c4,g4,c5,g5]@3 ~ [bb3,f4,bb4,f5]@3, [c5,f5]@15 ~@2 eb3@7 ~ f3@7", // Dsus2 Eb Dm C5 Bb5 F5
  BC: "[~@5 d3@15 ~@5 d3@6 ~@10 [bb3,bb4]@7 ~ [d4,d5]@7 ~ [f4,f5]@7, ~ g2@23 c5@8 a4@8 ~@24, ~ [g3,bb3,c4,f4]@20 c4@10 c4@16 ~@17, ~@22 f4@9 ~ [d4,f4]@16 ~@16, ~@33 [d2,d3]@31]/2", // Bb D F Gm7 Dm D
  BD: "~ [bb4,d5,bb5]@5 ~ [a4,c5,a5]@5 ~ [g4,c5,g5]@4 [g4,c5,g5]@7 ~ [f4,f5]@7, ~ eb2@15 ~ a2@15, ~@24 c5@7 ~", // Bb Am C5 F
  BE: "~ [d4,f4,c5]@6 [c4,f4,bb4]@5 ~ [c4,f4,a4]@4 [g2,bb3,d4,f4]@15, ~ d2@15 ~@16", // Dm7 Fsus4 F Gm7
  BF: "~ [c2,bb3,eb4,g4]@16 [d2,bb3,c4,f4]@15, d4 ~", // Cm7 Bb
  BG: "~@13 f4@3 ~ f4@14 ~, ~ [g2,d3,bb3]@31, ~ bb4@9 d6@15 ~@7, ~@7 a4@4 f6@13 ~@8, ~@9 [f5,bb5]@16 ~@7", // Gm Bb5
  BH: "~@29 f4@3, ~ [c3,bb3,eb4]@31", // Cm7
  BI: "[~ [d3,a3,bb3,c4,f4]@15 ~ [bb3,f4]@26 [bb3,g4]@4 ~ [c4,a4]@4 [g3,d4,f4,bb4]@9 ~ [a3,c4,f4]@10 [eb3,d4]@12 ~ c4@21 ~ [bb4,d5]@4 [c5,f5]@4 [c5,f5]@4 ~ [bb4,d5]@4 [bb4,d5]@13 g4@2 a4@2 [g4,bb4]@4 [a4,d5]@3 ~ [a4,d5]@4 [g4,bb4]@4 [g4,bb4]@14 ~@3 g4@4 a4@4 [f4,bb4]@4 ~ [f4,a4,c5]@4 [d4,bb4]@4 ~ [c4,a4]@4 [bb3,g4]@5 ~ f4@5 [eb2,g3,bb3,d4,g4]@11 [f2,bb3,c4,eb4,g4]@32 ~@2, ~@16 g3@35 ~@21 [bb3,f4]@33 ~@2 bb3@33 ~ g3@32 ~ eb2@17 [g2,f4]@9 f2@10 ~@46, ~@17 [eb3,d4]@34 ~@10 d3@11 ~@12 f3@22 ~@9 f4@24 ~@10 d4@24 ~ [bb3,f4]@8 d4@8 ~@15 [a3,d4]@5 ~@46]/8", // Dm7 Bb5 Eb F Gm7 F Ebmaj7 Bb …
  BJ: "[~@17 [d3,f3]@55 ~@24, ~@14 f4@57 ~@25, ~@15 [bb3,c4]@58 ~@23, ~@2 bb2@7 ~@3]/3", // Dm Bbsus2
})).s("gm_epiano2").gain(0.3)

// bass · synth bass 1 · "Synth.Bas"
const bass = note("<~@2 A B@2 ~@12 C D E F G H I J K L M N O P Q R S T U ~@51>".pickRestart({
  A: "~@16 eb2@8 d2@7 ~", B: "[~ g2@8 f2@8 ~ eb2@17 ~ f2@26 ~@2]/2", C: "bb1@11 ~ bb1@15 ~ f1@3 ~",
  D: "g1@10 ~@2 g1@15 ~ f2 ~ f1@2", E: "bb1@11 ~ bb1@8 g1@3 ~ bb1@3 ~ c2@3 ~",
  F: "d2@10 ~@2 d2@3 ~ d2@3 ~ f2@3 ~ f2@3 ~ f2@4", G: "g2@11 ~ bb2@3 ~ d2@11 ~ d2@3 ~",
  H: "eb2@10 ~@2 eb2@3 ~ d2@3 ~ d2@3 ~ d2@3 ~ d2@4", I: "c2@11 ~ c2@2 d2@2 f2@11 ~ eb2@3 ~",
  J: "bb1@10 ~@2 bb1@3 ~ a2@3 ~ a2@7 ~ a2@4", K: "g2@11 ~ g2@14 ~@2 d2@3 ~", L: "d2@10 ~@2 d2@3 ~ eb2@10 ~@2 d2 ~ f2@2",
  M: "g2@11 ~ g2@7 ~ g2@3 ~ f2@3 ~ d2@3 ~", N: "d2@11 ~ bb2@2 d2@2 d2@3 ~ d2@7 ~ d2@4",
  O: "eb2@11 ~ eb2@3 ~ eb2@14 ~@2", P: "d2@10 ~@2 d2@3 ~ g2@11 ~ g2 ~ f2@2", Q: "eb2@11 ~ eb2@3 ~ d2@11 ~ d2 ~ f2@2",
  R: "g2@11 ~ g2 ~ bb2@2 bb2@5 ~ a2@2 g2@3 ~ g2 ~ d2@2", S: "c2@11 ~ c2@3 ~ f2@3 ~ f2@3 ~ f2@3 ~ f2@3 ~",
  T: "bb1@16 ~@12 bb2 ~ a2@2", U: "g2@7 ~ f2@5 ~ d1 ~@17",
})).s("gm_synth_bass_1").gain(0.2)

// bass · electric bass finger · "Synth.Bas"
const bass_2 = note(`<
  ~@35 A B C D E F G H I B J K L M N O P Q R S T U V W X Y Z AA AB AC AD AE AF@2 AG AH AI@3 AJ@2 AK@4 ~ AL@3 AM@3
>`.pickRestart({
  A: "~@16 eb1@7 ~ f1@7 ~", B: "bb1@11 ~ bb1 ~ f1 ~ f1@12 ~@2 f1 ~", C: "g1@9 ~ f1 ~ eb1@9 ~ f1@2 g1@3 f1 g1@4",
  D: "bb1@11 ~ bb1 ~ bb1@2 bb1@4 bb1@9 ~ f1@2", E: "d1@10 ~@2 d1 ~ d1@2 d1@5 ~ e1@2 gb1@7 ~",
  F: "g1@11 ~ g1@3 ~ f1@13 ~ f1 ~", G: "eb1@10 ~@2 eb1@3 ~ d1@15 ~", H: "c1@11 ~ c1 ~ g1@2 f1@15 ~",
  I: "g1@4 g1 ~ g1@2 g1@3 ~ g1@3 ~ a1@10 ~@2 f1 ~ a1@2", J: "g1@11 ~ g1 ~ f1@2 eb1@3 ~ eb1@3 ~ eb1 ~ g1 ~ g1@3 ~",
  K: "bb1@11 ~ bb1 ~ bb1@2 bb1@3 ~ bb1@9 ~ f1@2", L: "d1@10 ~@2 d1 ~ d1@2 d2 ~ d1 ~ d1@3 ~ d1@3 ~ f1@3 ~",
  M: "g1@11 ~ g1 ~ g1 ~ f1@15 ~", N: "eb1@10 ~@2 eb1 ~ eb1 ~ d1@7 ~ d1@3 ~ d1@3 ~", O: "c1@11 ~ c1 ~ c1@2 f1@13 ~ f1@2",
  P: "bb1@11 ~ bb1 ~ f1@2 bb1@3 ~ bb1@3 ~ a1@7 ~", Q: "g1@11 ~ g2@14 ~@2 d2 ~ g1@2",
  R: "d1@10 ~@2 d1@3 ~ eb1@10 ~@2 d1 ~ f1@2", S: "g1@11 ~ g2@5 ~ d2 ~ g1@7 ~ bb1 ~ c2 ~",
  T: "d1@9 ~ d2@2 c2 ~ d1@2 d1@3 ~ d1@7 ~ d1@4", U: "eb1@11 ~ eb1@3 ~ eb1@7 ~ eb2 ~ eb1 ~ eb1@4",
  V: "d1@10 ~@2 d1 ~ f1@2 g1@10 bb1 ~ bb1 ~ c2@2", W: "c1@9 ~ c1 ~ c1 ~ c1@2 d1@11 ~ d1@3 ~",
  X: "g1@11 ~ g1 ~ f1@2 g1 ~ g1 ~ bb2@3 ~ g2 ~ d2 ~ g1@4", Y: "c1@11 ~ c1 ~ d1 ~ f1@3 ~ f1@3 ~ f1@3 ~ f1@3 ~",
  Z: "bb1@11 ~ bb2 ~ a2 ~ g2@4 bb2 ~ a2 ~ g2 ~ bb1 ~ c2@3 ~", AA: "d1@11 ~ d1@3 ~ eb1@14 ~@2",
  AB: "d1@10 ~@2 d1 ~ f1@2 g1@11 ~ g1 ~ g1@2", AC: "ab1@11 ~ bb1@2 ab1@2 ab1 ~ ab1 ~ ab1@7 ~ g1@3 ~",
  AD: "f1@12 f2 ~ g2 ~ f2@11 ~ c2 ~ bb1@2", AE: "f1@11 ~ f1@3 ~ f1@7 ~ f1@3 ~@2 d1@3",
  AF: "[~ g1@4 ~@2 g1@4 ~@2 g1@3 ~ g1@11 ~ bb1 ~ c2@2 d2 ~ a1 ~ d1@6 ~@2 d1@3 ~ eb1@7 ~ f1@7]/2",
  AG: "~ g1@11 ~ bb2@3 ~ g2 ~ d2 ~ g1@11", AH: "~ d1@5 ~ d1@4 ~@2 d1@7 ~ d1@3 ~ d1@3 ~ d1@3",
  AI: "[~ eb1@9 ~@3 c2 ~ bb1 ~ a1@11 ~ f1 ~ g1@2 d1@10 ~@2 d1 ~ f1@2 g1@10 bb1 ~ bb1 ~ c2@2 c2@10 ~@2 c2 ~ c2@2 d2@12 ~@2 f1]/3",
  AJ: "[~ g1@4 ~@2 g1@4 ~@2 g1@11 ~ f2@2 g2@2 c2 ~ g2@2 c1@11 ~ c1 ~ c1 ~ c1@3 ~ c1@7 ~ c1 ~ db1]/2",
  AK: "[~ d1@11 ~ d1@3 ~ eb1@29 ~@2 f1@4 g1@8 ~ d1@9 ~@2 eb1@11 ~ f1@21 ~@23]/4",
  AL: "[~@12 f1@2 eb1@13 ~@2 eb1@2 g1@8 ~ f1@9 ~@2 eb1@9 ~ f1@32 ~@3]/3", AM: "[~@17 bb1@55 ~@24]/3",
})).s("gm_electric_bass_finger").gain(0.24)

// chords · string ensemble 2 · "#St.Sl.St"
const string_ensemble_2 = note("<~@2 A@3 ~@19 B@2 C@7 D@2 E@7 F@8 G H@7 I@5 J@8 K@8 ~@2 L@6>".pickRestart({
  A: "[~@15 g4@4 a4@4 ~ a4@4 ~@8 a4@4 g4@4 f4@4 [eb3,d4,g4]@18 [f3,bb3,d4]@11 ~ eb3@10 ~@8, ~@15 f4@17 [g3,bb3]@9 ~@7 bb3@17 ~@12 [a3,c4]@12 ~@7, ~@15 [eb3,bb3]@8 [d3,c4]@9 d4@16 ~@48, ~@28 bb4@9 ~@3 [f3,a3]@10 ~@46]/3", // Ebmaj7 Bb Gm Am Eb5 D7 F
  B: "[bb2@15 a2@15 ~ g5@16 d4@4 [c4,f4]@4 d4@7 ~ [f3,c4,f4], ~@30 bb3@33 ~, ~@15 [bb4,d5]@9 ~@7 d2, ~@31 [g2,g4]@33]/2", // F5 Bb G
  C: "[~@7 a3@7 ~ c4@8 bb3@7 ~ [g2,bb3,d4,g4]@31 ~ a3@8 bb4@8 ~@8 f5@7 ~@13 a5@4 g5@8 ~@16 bb3@7 ~ a3@4 [bb3,d4]@11 ~@57 f5@7 ~ c3, ~@14 eb2@18 ~@30 d2@32 eb3@33 d3@16 f4@17 ~@11 bb4@4 d3@15 f4@33 ~, ~@15 [g3,g4]@17 ~@31 [c4,f4]@16 d4@16 g4@24 [f4,f5]@25 ~@15 c4@32 [g2,a3]@33, ~@71 [f3,bb3]@24 bb5@12 ~@4 c4@37 ~@10 eb3@16 bb3@48 [g3,c4]@2, ~@79 d5 [f4,bb4]@16 [bb3,d4]@15 a3@25 ~@6 g2@17 g3@15 f3@9 c5@33 ~@8]/7", // Gm Bb G F5 F Gsus2 Bb5 C5 …
  D: "[~@15 [f2,eb3,g3]@15 [bb2,f3]@18 ~@16, ~@7 bb4@42 ~@15, ~@15 bb3@33 ~@16]/2", // Cm Bb5
  E: "[~@30 bb3@17 [a3,c4]@15 ~ d4@12 [eb3,bb3]@19 ~@17 g4@15 ~ f4@16 g4@8 [gb3,a4]@7 ~ bb4@15 ~ a4@16 [eb3,c4,g4]@16 [d3,bb3,f4,bb4]@15 [g3,c4,eb4]@2, ~@30 f3@32 g3@33 ~@31 a3@33 ~@15 f3@17 ~@33, ~@62 bb3@11 ~@21 [f3,bb3]@32 d3@26 ~@6 g3@18 ~@48, ~@126 c4@17 d4@49 ~@32]/7", // Am Eb5 Gbm Cm Bb Cm Bb5
  F: "[~@15 bb3@8 a3@8 [d3,g3,bb3]@18 ~@14 d5@16 c5@16 bb4@31 d5@25 f5@40 bb5@16 a5@8 d5@8 [g4,g5]@16 [f4,f5]@8 bb4@8 eb5, ~@14 f4@17 ~@225, ~@7 d4@5 ~@116, ~@15 f3@16 ~@225]/8", // Gm G F
  G: "~@7 d5@7 c5@9 bb4@7 bb2@2",
  H: "[~@23 [a2,d5]@7 ~@5 [a4,a5]@8 [g4,g5]@8 ~@12 [c4,a4]@15 ~ [bb3,bb4]@15 ~@21 d5@4 ~@32 c6@7 ~ bb5@12 ~@4 g5@8 f5@7 ~@24 bb5@8 ~ [bb3,d4,eb4], ~@30 [bb4,bb5]@6 ~@26 d2@16 g4@15 ~ [g4,bb4]@32 [d2,f4,a4]@34 ~@14 f4@49 ~, ~@31 [d4,d5]@49 ~@14 d4@65 ~@12 a5@5 ~@14 [d3,a3]@16 [g2,bb3,d4]@17 ~, ~@31 g2@33 ~@14 eb2@17 g2@33 ~@30 eb3@33 f6@25 ~@6 [c3,g4]@2, ~@31 g4@12 ~@8 [f4,f5]@45 ~@23 f5@33 ~@6 [bb3,eb4,g4]@16 [c4,a4]@33 bb4@17]/7", // D5 A G F Bb Ebmaj7 Bb Gm …
  I: "[~@15 d3@15 ~@45 d4@4 c4@8 bb3@7 ~ [f3,c4,d4]@31 ~ [d3,a4,f6]@15 ~ a6@11 bb6@5 [d3,c4,f4,a4,c7], ~@14 [bb3,c4,f4]@16 [a3,bb3,f4]@32 bb3@18 ~@46 [c4,f4]@17 ~@17, ~@15 c6@39 bb5@73 ~@15 [f4,a4]@16 ~@2, ~@31 g2@31 eb4@13 ~@4 [f2,eb3,f3]@16 ~@65, ~@63 c3@17 ~@14 bb2@33 ~@16 [eb3,c5]@17]/5", // Dm7 Dm Dm7 Bbsus2 Bbmaj7 F5 F F7 …
  J: "[~@7 [d4,bb4,bb6]@7 ~ [c4,a4,a6]@7 ~ f6@7 ~@29 g2@4 ~@16 [d4,f4,a4]@15 ~@17 a6@8 f6@8 ~@32 [d3,f4,e5]@16 ~ g6@4 f6@3 ~ g6@4 f6@3 ~ [g5,g6]@10 [f5,f6]@6 [g5,g6]@4 f5@11 ~@8 bb5@9 d6@8 f6@7 [bb3,d4,bb4,d5], ~@14 g2@16 ab2@29 ~@4 f2@31 ~ f2@32 [g2,bb3]@21 a6@28 d5@16 ~@20 f6@20 ~@24, ~@22 d4@9 c4@63 c4@33 bb6@17 a4@33 ~@7 f3@9 ~@30 [d3,f4,c5]@33, ~@23 bb4@56 f6@32 [f4,a4]@16 bb4 d5@33 ~@14 [eb3,bb3,g4]@10 ~@6 [d4,bb4]@33 [a3,d4]@32, ~@31 [eb4,g4,g6]@49 ~@14 [eb4,g4,bb4]@18 ~@7 d4@39 c4@19 ~@6 [c4,a4]@9 [g2,f4]@33 ~@31]/8", // Gm F Dm G F G Bb Gm …
  K: "[bb6@5 ~ a6@6 g6@3 ~ g6@7 ~ f6@7 ~@32 [c3,eb4]@16 ~@40 f6@8 ~ bb5@31 ~@17 eb3@34 ~@2 bb4@10 ~@9 eb3@12 g3@13, eb3@15 a2@16 [d3,c5]@16 [g2,d4,f4]@17 ~@16 d3@17 ~@30 [c3,g3,eb4]@34 ~@15 bb5@28 ~@52, ~@5 a4@27 f6@24 bb5@33 ~@6 [g2,bb3]@33 ~@32 d3@18 ~@78, ~@5 c5@10 [a3,c4]@33 ~@31 [a3,c4,f4]@49 ~@47 [g3,d4,f4]@31 ~@6 d4@33 ~@11, ~@15 g4@8 f4@24 [g3,bb3]@34 ~@6 c6@33 ~@7 bb3@31 ~ [bb3,c4,f4,a4,c6]@18 ~@34 f4@21 ~@24]/8", // Cm D7 G7 Cm Gm Am F G7 …
  L: "[~@18 [a3,c4]@4 bb4@4 [c5,f5]@4 ~ bb5@4 [a4,c6]@4 ~ [g4,d6]@5 [f4,f6]@5 ~@11 g3@27 ~@5 bb5@74 ~@25, ~@13 f4@31 ~@7 f6@26 ~@115, ~@13 eb3@17 bb4@5 ~@4 [f3,a3]@12 ~@141, ~@13 g4@4 a4@5 d4@28 ~@10 bb3@27 ~@105, ~@14 [g3,bb3]@5 ~@11 [g3,bb3]@10 ~@10 [eb3,g3,d4]@11 ~@131]/6", // Am F5 Am G5 F Gm Ebmaj7
})).s("gm_string_ensemble_2").gain(0.25)

// chords · string ensemble 2 · "#St.Sl.St" · soft notes
const string_ensemble_2_soft = note("<~@4 A ~@27 B@2 ~ C@2 D@2 ~@3 E@2 ~@3 F@2 G@3 ~@24 H I@3 ~ J K@5>".pickRestart({
  A: "~@2 f2@23 ~@7", B: "[~@31 bb3@16 ~@17]/2", C: "[~@31 d4@17 ~@16]/2", D: "[~@31 d4@32 ~]/2",
  E: "[~@23 c4@7 g2@17 ~@17]/2", F: "[~@31 bb4@16 a4@8 d4@9]/2", G: "[~@23 bb3@8 eb4@8 d4@7 c4@9 bb3@32 d4@8 ~]/3",
  H: "~@15 bb3@17", I: "[~@19 g3@9 ~ d3@10 [bb3,g4]@12 [f2,eb3,bb3,c4]@23 ~@22, ~@7 [c4,a4]@3 ~@14]/3",
  J: "~@21 bb3@5 c4@5 ~",
  K: "[~@18 bb3@10 ~ [f2,eb3]@27 ~@23 d3@56 ~@25, ~@28 eb4@27 ~@6 f6@74 ~@25, ~@76 [f3,c4]@59 ~@25, ~@77 bb2@58 ~@25, ~@39 [bb4,f5]@29 ~@12]/5", // F7 F5 Bb5
})).s("gm_string_ensemble_2").gain(0.15)

// other · blown bottle · "Bttle Blo"
const blown_bottle = note("<~@5 A B C ~@8 D E ~@7 F@3 ~@3 A G ~@41 H I J@2 ~@9>".pickRestart({
  A: "~@31 f5", B: "d5@4 f5@3 g5 f5@4 d5@3 f5 d5@4 c5@3 d5 c5@4 bb4@4", C: "bb4", D: "~@15 f5 d5@4 f5@3 d5 f5@4 d5@4",
  E: "d5 ~", F: "[~@15 f5 d5@4 f5@3 c5 d5@7 c5@8 f5 d5@4 f5@3 c5 d5@25 ~@23]/3", G: "d5@4 f5@3 d5 f5@4 d5@4 d5@13 ~@3",
  H: "g4", I: "~@3 g4", J: "[~ a4@12 f5@4 c5 ~ c5 ~ [c5,d5]@2 d5@5 bb4@17 ~@19, ~@9 d5 ~@22]/2",
})).s("gm_blown_bottle").gain(0.21).pan(0.8)

// chords · electric guitar muted · "#Muted Gt"
const electric_guitar_muted = note(`<
  ~@17 A B@2 C D@2 E F@2 G H@4 I@2 J ~@2 K L M N O P Q R S T U V W X Y@2 Z AA AB@4 AC@3 AD@6 AE AF AG AH AI@2 AJ@2 AK
  AL@2 ~@9
>`.pickRestart({
  A: "d3 ~ bb3@2 bb3@2 c4@9 ~, ~ f3@3 f3@11 ~",
  B: "[~@8 d4@4 c4@2 ~@2 d3 ~ bb3@2 bb3@2 c4@9 ~, ~@14 bb3@3 f3@3 f3@11 ~]/2", C: "~@8 g4 f4 d4@2 d4@4",
  D: "[~@2 [g4,bb4]@13 ~ a4@14 ~@2 g3@11 ~ [bb3,d4]@2 [c4,eb4]@2 [bb3,d4]@15 ~, d4@15 [c4,f4]@15 c4@13 ~@21]/2", // Gm Bb Cm Bb F5
  E: "[g3,bb3,eb4]@15 ~ f3@8 eb3@7 ~", F: "[[f4,bb4]@4 [f4,bb4] ~@3 [f4,bb4]@16 ~@8 d4@31 ~, ~@31 [g3,bb3]@31 ~@2]/2",
  G: "~ a3 ~ bb3, c4 eb3, ~@19 c4@12 ~",
  H: "[~@4 [d4,g4,bb4]@7 ~ [d4,a4,bb4]@12 [d4,g4]@7 ~ [f4,a4]@8 f4@16 ~@8 g4@15 ~ g4@8 f4@7 ~ f4@14 ~ c4@5 [bb3,d4]@12, ~@31 a3@16 ~@32 [a3,c4]@15 ~ [a3,c4]@15 a3@5 ~@13, ~@32 c4@16 ~@15 d4@16 ~@32 f4@15 ~@2]/4", // Gm Bbmaj7 G5 F Bb Am
  I: "[[g3,c4]@15 ~ [f3,bb3]@14 ~@2 a3@23 ~@9, ~@15 [c4,f4]@13 ~@4, ~@31 bb3@25 ~@8]/2", // C5 Bb5 F5
  J: "[c4,g4]@15 ~ [g3,bb3]@15 ~, ~@15 eb3@15 ~@2", // C5 Gm
  K: "~@16 c4@15 ~, bb2@15 ~@17, ~@4 f3@27 ~, ~@8 c4@7 ~@17, ~@12 f4@19 ~",
  L: "~@8 [c4,f4]@3 ~ [d4,f4]@4 c4@4 bb3@3 f3 g3@3 ~ g3@4, ~@12 c4 ~@3 f4@8 ~@4 f3 ~@3", // F5 Dm
  M: "~@4 d4@4 [c4,f4]@23 ~, f3@31 ~", N: "~@4 c4 ~@3 c4 d4 c4 ~@3 c4@2 a3 c4 ~@4 f3@2 gb3@8, ~@19 d4@13",
  O: "bb3@4 g3@4 bb3@3 ~ bb3@3 ~ a3@3 ~ f3@3 ~ a3@8", P: "g3@4 ~@4 [g3,bb3]@3 ~ a3@2 a3@2 ~@2 bb3 ~@3 f3 ~ c4@4 d4@4",
  Q: "[g3,c4]@4 g3@3 ~ [g3,bb3]@8 f3@3 ~ f3@3 ~ [f3,c4]@3 ~ [f3,c4]@3 ~, c3@15 ~@17", // C5 Gm F5
  R: "~@14 g3 ~ g4@4 f4@4 c4@4 bb3@4, ~@2 c5 ~", S: "f3@4 ~@2 bb2@2 ~@12 bb3 ~@3 f3 ~@3 g2 ~@3, ~@8 [c4,f4]@23 ~",
  T: "g2 ~@5 g3 ~ [c4,f4]@3 ~ [d4,f4]@4 c4@4 bb3@3 f3 g3@3 ~ g3@4, ~@12 c4 ~@3 f4@8 ~@4 f3 ~@3", // F5 Dm
  U: "f3@4 f3 ~ bb3 ~ [c4,f4]@4 [c4,f4]@8 [bb3,f4]@10 ~@2", V: "~@4 c4 ~@3 f4 g4 f4 ~@4 c4 [d4,f4]@7 ~ c4 ~ bb3@2 g3@4",
  W: "g3@4 g3@4 bb3@4 g3@3 ~ a3@3 ~@3 a3 ~ [c4,f4]@4 [a3,d4]@4", // F5 D5
  X: "~@4 g3@4 c4@2 bb3@2 g3@2 ~@2 f3 ~@7 c4@4 bb3@4, ~@5 f3@3",
  Y: "[~@8 bb3@4 ~@2 bb3@2 ~@4 [f3,bb3]@3 ~ [f3,bb3]@3 ~ [f3,bb3]@3 ~ [c4,f4]@16 bb2@7 ~ a2@7 ~, ~@4 f3@12 ~@15 bb3@16 ~@17]/2", // Bb5 F5
  Z: "~@4 [d4,a4]@5 ~@3 [d4,g4]@4 ~@8 d4@7 ~, g3@16 ~@4 [bb3,f4]@9 ~@3", // D5 G5 Bb5
  AA: "d4@8 f4@7 ~ [bb3,f4]@8 eb4@7 ~, a3@13 ~@3 g3@16", // Bb5
  AB: "[d4@3 ~ [d4,g4]@3 ~ [d4,g4]@3 ~ [d4,g4]@7 ~ [c4,f4]@3 ~ d4@4 f4@3 ~@9 a3@4 c4@4 a3@4 c4@4 a3@6 ~@2 g4@15 ~ f4@7 ~ f4@6 ~@2 f4@14 ~@2 d4@4 [c4,f4]@4 [a3,d4]@3 ~ [c4,f4]@4, g3@16 ~@8 a3@7 a3@8 ~@40 [a3,c4]@15 a3@15 ~@2 a3@5 ~@12, ~@31 c4@4 ~ c4@8 ~@19 d4@16 ~@16 c4@15 ~@18, ~@4 [f4,a4] ~@11]/4", // G5 F5 D5 F5 Am F
  AC: "[[g3,c4]@15 ~ [f3,bb3]@14 ~@14 bb3 ~ bb3 ~@3 g3 ~ g3 ~@3 g3 ~@3 f4@3 ~ [g3,bb3]@15 ~ c4@8 bb3@7 [f3,bb3], ~@30 [c4,f4]@26 ~@7 eb4@17 ~@16, ~@31 bb3@11 ~@38 f3@15 ~, ~@32 a3@23 ~@24 eb3@15 ~@2]/3", // C5 Bb5 Gm Bb5 F5
  AD: "[c4@3 ~@25 f4@3 ~ [a3,c4]@15 ~ [c4,f4]@15 ~ [c4,f4]@15 ~ [a3,c4]@8 [bb3,d4]@7 ~ [eb4,g4]@30 ~@2 [c4,eb4,g4]@15 ~ [d4,f4]@14 ~@2 [bb3,eb4]@15 ~ [c4,f4]@16, f4@8 bb3@8 c4@15 ~@49 [g3,f4]@15 [ab3,c4]@31 ~ bb3@15 ~ a3@14 ~@2 g3@15 ~ a3@16 ~, ~@4 c4@7 ~ f4@15 ~@165, ~@20 bb3@11 d3@15 ~ [eb3,a3]@16 [d3,a3]@16 ~@113, ~@3 d4 ~@20]/6", // Am F5 Am Bb Eb Cm Dm Eb5 …
  AE: "~ d4@31, [d3,g3,bb3]@31 ~", AF: "~ e4@15 ~ [g3,bb3]@7 ~ [a3,c4]@7, [f3,a3,c4]@8 eb3@3 ~ f3@4",
  AG: "~@13 bb3@4 c4@4 ~@8 f4@3, [bb3,c4]@12 ~@9 bb3@11, ~ f4@20 ~@4 d4@7", AH: "~ [c4,f4]@30 ~, [d3,a3]@15 ~",
  AI: "[~ g4@15 ~ g4@7 ~ f4@6 ~ [c4,f4]@15 ~ [g3,bb3,d4,f4]@15 ~, d4@16 [a3,c4]@15 a3@15 ~@18]/2", // F5 Gm7 Am
  AJ: "[~ c4@14 ~@2 bb3@14 ~@2 a3@23 ~ f4@7, g3@15 ~ f3@15 [c4,f4]@26 ~@7, ~@32 bb3@21 ~@11]/2", // F5
  AK: "~ eb4@30 ~, [c3,bb3]@31 ~", AL: "[~ f4@15 ~@3 g3@32 ~@13, [a3,c4]@16 [d4,f4]@35 ~@13, ~@9 bb3@17 ~@6]/2",
})).s("gm_electric_guitar_muted").gain(0.2).pan(0.3)

// chords · electric guitar muted · "#Muted Gt" · soft notes
const electric_guitar_muted_2 = note(`<
  ~@28 A@2 B@2 ~@2 C ~@4 D ~ E F G H I ~ J K L M N ~@3 A@2 B@2 ~@10 O P@2 ~ Q ~ R S@2 ~@9
>`.pickRestart({
  A: "[~@30 bb3@17 ~@17]/2", B: "[~@31 eb3@15 ~ d3@16 ~]/2", C: "[bb2,f3]@15 ~", D: "~@6 a3 ~@5 a3 ~@19",
  E: "~@6 g3 ~@13 f3 ~@11", F: "~@4 bb3@3 ~@9 bb3@3 ~ bb3@3 ~@9", G: "g3@2 ~@2 g3 ~ g3 ~@5 g3 ~@3 f4 ~@15",
  H: "~@4 bb2 ~@25 f2 ~", I: "~@4 g3 ~@27", J: "~@6 a3 ~@5 d4@4 ~@16", K: "~@20 a3 ~@11", L: "~@7 f3 ~@8",
  M: "~@12 g3@2 ~@2 f3 ~@15", N: "~ d3 ~@2, ~ f3@3 ~@4", O: "g3", P: "[~@31 bb3@17 ~@16]/2", Q: "eb3@15 ~ d3@16",
  R: "g3@31 ~", S: "[~@19 eb3@32 ~@13]/2",
})).s("gm_electric_guitar_muted").gain(0.15).pan(0.3)

// other · orchestral harp · "Harp"
const orchestral_harp = note("<~@24 [~@16 g3 ~@2 f4 g4 bb4 ~ d5 f5 ~@7, ~@17 bb3@2 ~@13, ~@9 d4 ~@6] ~@62>")
  .s("gm_orchestral_harp").gain(0.2).pan(0.7)

// … 146 more lines

More by Vanessa Williams