Strudelify
We'll Be Together cover art

1987 · ...Nothing Like the Sun

We'll Be Together

Sting

KeyF majorTempo120 bpm
0:00/0:00
// We'll Be Together — Sting
// 120 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 132 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(120/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 · percussive organ · "ORGAN 2"
const percussive_organ = note(`<
  A B C ~ D E F ~ G ~ H ~ I ~ J ~ K ~@2 L@2 M@2 N@3 O ~ P Q R ~ S ~ T ~ U ~ V ~ W ~@2 L@2 M@2 N@3 X ~ Y ~ Z ~ AA AB AC@8
  ~@2 AD AE AF AG AH AI AJ AK AL AM AN ~ AO ~ AP ~ AO AQ AR AS AT AU AV AW AX AY ~@4 AZ@2 BA@2 BB@2 BC@8 BD@2 BE@8 BF@8
  BG@2
>`.pickRestart({
  A: "~@8 [a4,c5] ~ [bb4,db5] ~@3 [bb4,b4] ~, ~@7 d5", B: "[a4,b4,c5] [f4,g4] [d4,e4] [a3,b3,c4] [d3,e3,f3,g3] c3 ~@10",
  C: "[f5,g5,c6,d6,f6]@4 [f5,g5,c6,d6,f6]@2 e6 [b5,c6,db6,d6] [f5,g5,a5] [c5,d5,e5] [a4,b4] ~@5", // Fsus2 F C Asus2
  D: "[f5,g5,c6,d6,f6]@4 [f5,g5,c6,d6,f6]@2 e6 [b5,c6,d6] [e5,f5,g5,a5] [c5,d5] b4 ~@3 [g6,ab6] a6", // Fsus2 Bm Fmaj7 Csus2 Abmaj7
  E: "c7 [a6,c7] a6 [a6,c7] [ab6,c7] [ab6,a6] g6 ~ g6 [g6,ab6] f6 ~ [f6,c7]@4, ~@4 c7 ~@3", // Am Ab Amaj7 Abmaj7 F5
  F: "[f5,g5,c6,d6,f6]@4 [f5,g5,c6,d6,f6]@3 [c6,d6,e6] [g5,a5,b5] [c5,d5,e5,f5] ~@6", // Fsus2 C G Dm7
  G: "[f5,g5,c6,d6,f6]@3 ~ [c6,d6,f6]@2 [c6,d6,e6] [a5,b5] [f5,g5] ~@7, ~@4 [f5,g5] ~@11", // Fsus2 Dm7 C Asus2 Fsus2
  H: "[f5,g5,c6,d6,f6]@3 ~ [c6,d6,f6]@2 e6 [b5,c6,d6] [e5,f5,g5,a5] d5 ~@6, ~@4 [f5,g5] ~@11", // Fsus2 Dm7 Bm Fmaj7 Fsus2
  I: "[f5,g5,c6,d6,f6]@3 ~ [f5,g5,c6,d6,f6]@2 e6 [b5,c6,d6] [e5,f5,g5,a5] [c5,d5] ~@6", // Fsus2 Bm Fmaj7 Csus2
  J: "[f5,g5,c6,d6,f6]@3 ~ [f5,g5,c6,d6,f6]@3 [c6,d6,e6] [f5,g5,a5,b5] [d5,e5] ~@6", // Fsus2 C G7 Dsus2
  K: "[f5,g5,c6,d6,f6]@3 ~ [f5,g5,c6,d6,f6]@3 [d6,e6] [g5,a5,b5,c6] [d5,e5,f5] ~@6", // Fsus2 Dsus2 Cmaj7 Dm
  L: "[~@9 f5 b5@2 [a5,c6]@2 b5@2 [f5,a5]@4 ~@12, ~@5 g5@5 ~@6]/2", // Am F
  M: "[~@9 f5 b5@2 c6@2 b5@2 f5@4 ~@12, ~@5 g5@5 ~@6, ~@3 a5@2 ~@3]/2",
  N: "[~@9 f5 b5@2 [a5,c6]@2 b5@2 [f5,a5]@4 ~@10 [db5,g5,c6]@4 [a5,b5] [b4,c5,d5,e5,f5,g5] [b3,c4,d4,e4,f4,g4,a4] ~@11, ~@5 g5@5 ~@14]/3", // Am F C Asus2 Cmaj7 Bm7b5
  O: "[f5,g5,c6,d6,f6]@3 ~ [f5,g5,c6,d6,f6]@2 ~ [c6,d6,e6] [a5,b5] g5 ~@6", // Fsus2 C Asus2
  P: "[f5,g5,c6,d6,f6]@3 ~ [f5,g5,c6,d6] ~ [d6,e6] [a5,b5,c6] [f5,g5] ~@5 g6 [ab6,a6], ~@2 f6 ~@5", // Fsus2 Dsus2 Am Fsus2 Amaj7
  Q: "c7 a6 [a6,c7]!2 c7 [a6,c7] a6@2 [g6,ab6] g6 f6@2 [f6,c7]@4, ~@8 c7@3 ~@5", // Am Abmaj7 F5
  R: "[f5,g5,c6,d6,f6]@3 ~ [g5,c6,d6] ~ e6 [b5,c6,d6] [f5,g5,a5] ~@7, ~@2 [f5,f6] ~@5", // Fsus2 Gsus4 Bm F
  S: "[f5,g5,c6,d6,f6]@3 ~ [f5,c6,f6]@2 [d6,e6] [a5,b5,c6] [e5,f5,g5] ~@7, ~@4 [g5,d6] ~@11", // Fsus2 F5 Dsus2 Am Em G5
  T: "[f5,g5,c6,d6,f6]@3 ~ [f5,g5,d6] ~ [c6,d6,e6] [f5,g5,a5,b5] e5 ~@7, ~@2 [c6,f6] ~@5", // Fsus2 G7 C G7 F5
  U: "[f5,g5,c6,d6,f6]@2 ~@2 [f5,g5,c6,d6] ~ [d6,e6] [g5,a5,b5,c6] [d5,e5,f5] ~@7, ~@2 f6 ~@5", // Fsus2 Dsus2 Cmaj7 Dm
  V: "[f5,g5,c6,d6,f6]@2 ~@2 [f5,g5,c6,d6,f6]@2 e6 [b5,c6,d6] [g5,a5] ~@7", // Fsus2 Bm Gsus2
  W: "[f5,g5,c6,d6,f6]@2 ~@2 [c6,d6,f6]@3 [c6,d6,e6] [f5,g5,a5,b5] e5 ~@6, ~@4 [f5,g5] ~@11", // Fsus2 Dm7 C G7 Fsus2
  X: "[g5,c6,d6,f6]@2 ~@2 [f5,g5,c6,d6,f6]@2 ~ [c6,d6,e6] [a5,b5] [f5,g5] ~@6, f5 ~@15", // Gsus4 Fsus2 C Asus2 Fsus2
  Y: "[f5,g5,c6,d6,f6]@2 ~@2 [f5,g5,c6,d6,f6]@2 e6 [c6,d6] [a5,b5] g5 ~@6", // Fsus2 Csus2 Asus2
  Z: "[f5,g5,c6,d6,f6]@3 ~ [c6,d6,f6]@2 ~ [b5,c6,d6,e6] [e5,f5,g5,a5] [c5,d5] ~@6, ~@4 [f5,g5] ~@11", // Fsus2 Dm7 Cmaj7 Fmaj7 Csus2 Fsus2
  AA: "[f5,g5,c6,d6,f6]@3 ~ [f5,g5,c6,d6] ~ [d6,e6] [b5,c6] [f5,g5,a5] ~@5 g6 [ab6,a6], ~@2 f6 ~@5", // Fsus2 Dsus2 Cmaj7 F Amaj7
  AB: "c7 a6 [a6,c7]!2 c7 [a6,c7] a6 [a6,c7] [b6,c7] [g6,a6] [e6,f6] [b5,c6,d6] [g5,a5] f5 ~@2", // Am Cmaj7 Gsus2 Fmaj7 Bm Gsus2
  AC: "[~@8 [eb5,f5,a5,c6]@12 ~@2 [d5,e5,ab5,b5]@14 ~@2 [eb5,f5,a5,c6]@14 ~@2 [e5,ab5,b5,d6]@3 ~@7]/4", // F7 E7 F7 E7
  AD: "~@8 [f5,g5,c6,d6,f6]@3 ~ [f5,g5,c6,d6,f6]@3 [d6,e6]", AE: "[a5,b5,c6] [d5,e5,f5,g5] ~@14",
  AF: "~@6 c6 d6 [c6,d6,f6]@2 ~@2 [c6,d6,f6]@2 e6 [a5,b5,c6,d6], ~@8 [f5,g5] ~@3 [f5,g5] ~@3", // Dm7 D7 Fsus2
  AG: "[e5,f5,g5] ~@5 g5!2 [a5,c6] ~ [bb5,db6] ~@3 [bb5,b5] ~, ~@7 d6", // Em Am Bbm Bmaj7
  AH: "~@6 c6 d6 [f5,g5,c6] c6 ~@2 [f5,g5,c6,d6] ~ [c6,d6,e6] [g5,a5,b5], ~@4 [d6,f6] ~ f6 ~", // Fsus2 C G Dm
  AI: "f5 ~@5 g5!2 [a5,c6] ~ [bb5,db6] ~@3 [bb5,b5,d6] ~", // Am Bbm Bb
  AJ: "~@6 c6 d6 [f5,g5,c6,d6,f6]@2 ~@2 [f5,g5,c6,d6] ~ [d6,e6] [a5,b5,c6], ~@6 f6 ~", // Fsus2 Dsus2 Am
  AK: "[f5,g5] ~@5 g5!2 [a5,c6] ~ [bb5,db6] ~@3 [bb5,b5] ~, ~@7 d6", // Fsus2 Am Bbm Bmaj7
  AL: "~@6 c6 d6 [f5,g5,c6,d6,f6]@2 ~@2 [c6,d6,f6]@2 e6 [b5,c6,d6], ~@12 [f5,g5] ~@3", // Fsus2 Dm7 Bm Fsus2
  AM: "[f5,g5,a5] e5 ~@4 g5!2 [a5,c6] ~ [bb5,db6] ~@3 [bb5,b5] ~, ~@7 d6", // F Am Bbm Bmaj7
  AN: "~ f5 [f5,g5,b5]@2 [a5,c6]@2 b5@2 [f5,a5]@3 ~@5, ~@6 g5@5 ~@5", // G7 Am F
  AO: "~ f5 b5@2 [a5,c6]@2 b5@2 [f5,a5]@4 ~@4, ~ g5@5 ~@2", AP: "~ f5 b5@2 c6@2 b5@2 f5@4 ~@4, ~ g5@5 ~@2, ~ a5@2 ~",
  AQ: "~@6 [db5,g5,c6]@4 [a5,b5] [c5,d5,e5,f5,g5] [c4,d4,e4,f4,g4,a4,b4] b3 ~@2", // C Asus2 C Cmaj7
  AR: "~@6 c6 d6 [c6,d6,f6]@3 ~ [f5,g5,c6,d6] ~ [d6,e6] [a5,b5,c6], ~@8 [f5,g5] ~@3 f6@2 ~@2", // Dm7 Fsus2 Dsus2 Am Fsus2
  AS: "[d5,e5,f5,g5] ~@5 g5 a5 [a5,c6] ~ [bb5,db6] ~@3 [bb5,b5] ~, ~@7 d6", // Em7 Am Bbm Bmaj7
  AT: "~@6 c6 d6 [g5,c6,d6,f6]@2 ~@2 [f5,g5,c6,d6] ~ [c6,d6,e6] [g5,a5,b5], ~@8 f5 ~@3 f6@2 ~@2", // Gsus4 Fsus2 C G
  AU: "[d5,e5,f5] c5 ~@4 g6 [ab6,a6] c7 [a6,c7] a6 [a6,c7] c7 [a6,c7] a6 [a6,c7]", // Dm Amaj7 Am
  AV: "[g6,ab6] g6 f6 ~ [f6,c7] ~ c6 d6 [f5,g5,c6,d6,f6]@2 ~@2 [f5,g5,c6,d6] ~ [c6,d6,e6] [g5,a5,b5], c7@3 ~@9 f6@2 ~@2", // Abmaj7 F5 Fsus2 C G
  AW: "f5 ~@6 a5 [a5,c6] ~ [bb5,db6] ~@3 [bb5,b5] ~, ~@7 d6", // Am Bbm Bmaj7
  AX: "~@6 c6 d6 [c6,d6,f6]@2 ~@2 [f5,g5,c6,d6] e6 [c6,d6] [f5,g5,a5,b5], ~@8 g5 ~@3 f6@2 ~@2", // Dm7 Fsus2 Csus2 G7
  AY: "e5 ~@5 g5 a5 [a5,c6] ~ [bb5,db6] ~@3 [bb5,b5] ~, ~@7 d6", AZ: "[~ c6@3]/2", BA: "[~@3 a5, ~ [f4,c5,d5,f5]@3]/2",
  BB: "[~ [d5,f5,c6]@3]/2", BC: "[~@12 a5 [d5,f5]@3, ~ [f4,g4,c5]@15, ~@10 [d5,f5]@7 ~ [d5,f5]@7 ~@7, ~@2 c6 ~]/8",
  BD: "[~@3 a5, c6@3 ~, ~ [d5,f5]@3]/2", // Dm
  BE: "[~@13 [f5,a5]@3, ~ f5@11 d5@4, ~ d5@7 d5@3 c5@5, ~@8 c6@10 a5@7 ~@7, ~@7 [f4,g4]@9]/8", // F Fsus2
  BF: "[~@5 c6@4 ~@2 a5@2 [d5,f5,c6]@3, ~ g4@15, ~@2 c5@16 [d5,f5]@7 ~@7, ~@2 [f4,d5,f5]@15 ~ [f4,c5]@14]/8", // Dm7 Dm F5
  BG: "[~ [f4,g4,c5]@2 ~]/2", // Fsus2
})).s("gm_percussive_organ").gain(0.22).pan(0.3)

// bass · synth bass 1 · "SYN BASS 1"
const bass = note(`<
  ~@2 A B C D E B C F G H G I J K L M N O P O Q O R@2 S T S U J V W X Y K Z AA Y K Y AB AC AD AE AD AE AD AF@2 AG AH Y
  AI Y AJ AK AL AM AN AO AP AQ AR AS AT AU AV AW AV AX AV AY AV AZ AV BA AV BB BC BD BC BD BC BD BE BF AV AY AV AZ AV BA
  AV BG ~@3 BH BI BJ BK BL BM@2 BN BO BP BQ BR BL BP BQ BS BT BU BV BW BX BI BQ BY BZ CA CB CC ~@6
>`.pickRestart({
  A: "[d1,d2] ~ d1@2 [d2,d3]@2 [d1,d2]@2 [c2,c3]@2 [c1,c2] ~@3 [d1,d2]@2, ~@2 d2 ~ c3 ~@11", // D C D
  B: "d2@2 ~@4 [f1,f2]@3 ~@5 [c2,c3] [d2,d3], d3 ~@15", // F C D
  C: "[d1,d2] ~ [d1,d2]@2 [d2,d3]@2 [d1,d2]@2 [c2,c3]@2 [c1,c2] ~@3 [d1,d2]@2", // D C D
  D: "d2@2 ~@4 [f1,f2]@2 ~ [f1,f2] [g1,g2]@2 [ab1,ab2]@2 [a1,a2]@2, d3 ~@15", // F G Ab A
  E: "[d1,d2] ~ d2@2 [c3,d3] ~ [d1,d2]@2 c2@2 [c1,c2] ~@3 [d1,d2]@2, ~@2 d1 ~ d2@2 ~@2 c3 ~@7", // D Csus2 D C D
  F: "d2@2 ~@4 [f1,f2]@2 [g1,g2]@2 [ab1,ab2]@2 [a1,a2]@2 [f2,f3] [d2,d3], d3 ~@15", // F G Ab A F D
  G: "[d1,d2] ~ [d1,d2] ~ d3@2 d2@2 c3@2 c2@2 ~@2 [d1,d2] ~, ~@4 d2 ~ d1 ~ c2 ~ c1 ~@5", // D
  H: "d3@2 d2@2 [b1,b2]@2 [f1,f2]@2 ~@6 [c2,c3] [d2,d3], d2 ~ d1 ~@13", // B F C D
  I: "d3@2 [d1,d2]@2 [b1,b2]@2 f2@2 ~ [f1,f2] [g1,g2]@2 [ab1,ab2]@2 [a1,a2]@2, d2 ~@5 f1 ~@9", // D B F G Ab A
  J: "[d1,d2] ~ [d1,d2] ~ [d2,c3] ~ d2@2 c3@2 [c1,c2] ~@3 [d1,d2] ~, ~@4 d3@2 d1 ~ c2 ~@7", // D D7 C D
  K: "d3 d2 [b1,b2] [f1,f2] ~ [g1,g2] [ab1,ab2] [a1,a2], d2 ~ d1 ~@13", // B F G Ab A
  L: "[d1,d2]@3 ~ [d2,c3] ~ d2@2 c3@2 [c1,c2] ~@3 [d1,d2] ~, ~@4 d3@2 d1 ~ c2 ~@7", // D D7 C D
  M: "d3@2 [d1,d2] ~ [d1,d2]@2 [f1,f2]@2 ~@2 [g1,g2]@2 ab2@2 [a1,a2] [d1,d2], d2 ~@11 ab1 ~@3", // D F G A D
  N: "[g0,g1] ~ g0@2 g2@2 g1@2 f2@2 f1@2 ~@2 [g0,g1] ~, ~@2 g1 ~ g1 ~ g0 ~ f1 ~ f0 ~@5", // G
  O: "g2@2 [g0,g1] ~ [f1,f2]@2 [c1,c2]@2 ~@2 [db1,db2]@2 [d1,d2]@2 [f1,f2] [g1,g2], g1 ~@15", // G F C Db D F G
  P: "[g0,g1] ~ g0@2 g2@2 g1@2 f2@2 [f0,f1] ~@3 [g0,g1] ~, ~@2 g1 ~ g1 ~ g0 ~ f1 ~@7", // G F G
  Q: "[g0,g1] ~ [g0,g1] ~ [g1,f2] ~ g1@2 f2@2 [f0,f1] ~@3 [g0,g1] ~, ~@4 g2@2 g0 ~ f1 ~@7", // G G7 F G
  R: "[[g0,g1] ~ g0@2 g2@2 [g0,g1] ~ [f1,f2]@2 g1@2 ab1@2 [a1,ab2] ~@3 [f2,g2] [d2,e2] [g1,a1,b1,c2] [d1,e1,f1] c1 ~@9, ~@2 g1 ~ g1 ~@5 g2 ~ ab2 ~ a2@4 ~@14]/2", // G F Amaj7 Fsus2 Dsus2 Cmaj7 Dm
  S: "[d1,d2] ~ [d1,d2]@2 [d2,c3] ~ d2@2 [c2,c3]@2 [c1,c2] ~@3 [d1,d2] ~, ~@4 d3@2 d1 ~@9", // D D7 C D
  T: "d3@2 [d1,d2] ~ [b1,b2]@2 [f1,f2]@2 [d1,d2] ~ [g1,g2]@2 [ab1,ab2]@2 [a1,a2]@2, d2 ~@15", // D B F D G Ab A
  U: "d3@2 ~@4 [f1,f2] ~ [g1,g2]@2 [ab1,ab2]@2 a2@2 [f2,f3] [d2,d3], d2 ~@11 a1 ~@3", // F G Ab F D
  V: "[d2,d3] ~ [d1,d2] ~ [b1,b2]@2 [f1,f2]@2 [d1,d2] ~ [g1,g2]@2 [ab1,ab2]@2 [a1,a2]@2", // D B F D G Ab A
  W: "d2 ~ d1@2 [d2,d3]@2 d2@2 [c2,c3]@2 [c1,c2] ~@3 [d1,d2] ~, ~@2 d2 ~ c3 ~ d1 ~@9", // D C D
  X: "[d2,d3] ~ [d1,d2] ~ [b1,b2]@2 [f1,f2] ~ d2 f2 [ab2,ab3] [ab2,a2,ab3,a3] [f2,f3]@2 [d2,d3]@2", // D B F Ab Amaj7 F D
  Y: "[d1,d2] ~ [d1,d2] ~ [c2,c3]@2 ~@2 [c2,c3]@2 [c1,c2]@2 ~@2 [d1,d2] ~", // D C D
  Z: "[d1,d2] ~ [d1,d2] ~ [c2,c3]@3 ~ [c2,c3]@2 [c1,c2]@2 ~@2 [d1,d2]@2", AA: "~@6 [f1,f2]@3 ~@7",
  AB: "[d2,d3]@2 ~ d1 [b1,b2]@2 [f1,f2]@2 ~ d1 [g1,g2]@2 [ab1,ab2]@2 [a1,a2]@2", // D B F G Ab A
  AC: "[g0,g1] ~ g1@2 [f1,f2]@3 ~ f2@2 [f0,f1]@2 ~@2 g0@2, ~@2 g0 ~@5 f1 ~@5 g1 ~", // G F
  AD: "[f1,f2]@2 ~@2 [f1,f2]@2 [c1,c2]@2 ~@2 [db1,db2]@2 [d1,d2]@2 [f1,f2] [g1,g2]", // F C Db D F G
  AE: "[g0,g1] ~ [g0,g1]@2 [f1,f2]@2 ~@2 [f1,f2]@2 [f0,f1]@2 ~@2 g0@2, ~@14 g1 ~", // G F
  AF: "[[g0,g1] ~ [g0,g1]@2 [f1,f2]@3 ~ f2@2 [g1,g2] ~ ab1@2 [a1,a2]@6 ~@12, ~@8 f1 ~@3 ab2 ~ ab2 ~@17]/2", // G F G A
  AG: "[d1,d2] ~ d2@2 [c2,c3]@3 ~ [c2,c3]@2 [c1,c2]@2 ~@2 [d1,d2] ~, ~@2 d1 ~@13", // D C D
  AH: "[c2,c3]@2 d1 ~ [b1,b2]@2 [f1,f2]@2 [d1,d2]@2 [g1,g2]@2 [ab1,ab2]@2 [a1,a2]@2", // C B F D G Ab A
  AI: "[c2,c3]@2 ~@2 [b1,b2]@2 f1@2 [g1,g2]@2 [ab1,ab2]@2 a1@2 [f2,f3] [d2,d3], ~@6 f2 ~@5 a2 ~@3", // C B G Ab F D
  AJ: "[c2,c3]@2 ~ [d1,d2] [b1,b2]@2 [f1,f2]@2 ~ [f1,f2] [g1,g2]@2 [ab1,ab2]@2 [a1,a2]@2", // C D B F G Ab A
  AK: "[d1,d2] ~ [d1,d2] ~ [c2,c3]@2 ~@2 [c2,c3]@2 c2@2 ~@2 [d1,d2] ~, ~@10 c1 ~@5", // D C D
  AL: "[c2,c3]@2 ~ [d1,d2] [b1,b2]@2 [f1,f2] ~@2 [d2,d3] [g2,g3] [g2,ab2,g3,ab3] [f2,f3]@2 [c2,c3] [d2,d3]", // C D B F D G Abmaj7 F …
  AM: "~@8 f2 ~ f2@2 f3@2 f2@2", AN: "e3@2 f3 ~ f2@2 e2 ~ e2@2 d3@2 e3@2 d3@2",
  AO: "e3@2 d3@2 b2@2 eb3@2 f2@2 f3@2 e3 f3 f2 ~", AP: "e3@2 f3 ~ f3@2 e3@3 ~@7", AQ: "~@8 f2 ~ f2@2 f3 ~ f2@2",
  AR: "e3@2 f3@2 f2@2 e2 ~ e2@2 d3@2 e3@2 d3@2", AS: "e3@2 d3@2 b2@2 eb3@2 f2@2 f3 ~ e3 f3 f2@2",
  AT: "e3@2 f3 ~ f3@2 e3@3 ~@2 [f1,f2] [g1,g2] f1 [ab1,ab2] [f1,f2]", // F G Ab F
  AU: "[a1,a2] [f1,f2] [c2,c3] f1 [f2,f3]@2 [d2,d3] [c2,c3] d1@2 d1@2 [c2,c3]@3 ~, ~@8 d2 ~ d2 ~@5", // A F C F D C
  AV: "[c2,c3]@2 [c1,c2]@2 ~@2 [d1,d2] ~ [c2,c3]@2 ~@2 [b1,b2]@2 [f1,f2]@2", // C D C B F
  AW: "~@2 [g1,g2]@2 [ab1,ab2]@2 [a1,a2]@2 [d1,d2] ~ [d1,d2] ~ [c2,c3]@2 ~@2", // G Ab A D C
  AX: "[g1,g2]@2 [ab1,ab2]@2 [a1,a2]@2 [f2,f3] [d2,d3] [d1,d2] [d2,d3] [d1,d2]@2 [c2,c3]@2 ~@2", // G Ab A F D C
  AY: "~@2 [g1,g2]@2 [ab1,ab2]@2 [a1,a2]@2 [d1,d2] ~ d1@2 [c2,c3]@2 ~@2, ~@10 d2 ~@5", // G Ab A D C
  AZ: "[g1,g2]@2 [ab1,ab2]@2 [a1,a2]@2 [c2,c3] [d2,d3] [d1,d2] ~ [d1,d2] ~ [c2,c3]@2 ~@2", // G Ab A C D C
  BA: "~@2 [g1,g2]@2 [ab1,ab2]@2 a2@2 [d1,d2] ~ [d1,d2] ~ [c2,c3]@2 ~@2, ~@6 a1 ~@9", // G Ab D C
  BB: "[g1,g2]@2 [ab1,ab2]@2 [a1,a2]@2 [c2,c3] d2 [g0,g1] ~ [g0,g1] ~ [f1,f2]@3 ~, ~@7 d3@2 ~@7", // G Ab A C G F
  BC: "[f1,f2] [f0,f1] ~ g0 [f1,f2] ~ [f1,f2] [c1,c2], ~@6 g1 ~@9", // F C
  BD: "~@2 [db1,db2]@2 [d1,d2]@2 [f1,f2] [g1,g2] [g0,g1] ~ [g0,g1]@2 [f1,f2]@2 ~@2", // Db D F G F
  BE: "f2@2 [g1,g2] ~ ab1@2 [a1,a2]@6 ~@4, f1 ~@3 ab2 ~ ab2 ~@9", // G A
  BF: "[a1,a3] ~ [c2,c4] ~ [g1,g3]@2 [f1,f3]@2 [d1,d2] ~ [d1,d2]@2 [c2,c3]@2 ~@2", // A C G F D C
  BG: "[g1,g2] [ab1,ab2] [a1,a2]@2 ~@4", BH: "~@8 bb1!2 bb1@2 bb2@2 ~ bb2, ~@7 bb1",
  BI: "~ bb2 bb1!2 bb2 bb1 a1 ab1 g1!2 g1@2 g2@2 g1 g2", BJ: "~ g1 ab1 a1!2 c2 db2 d2 d1!2 d1@2 d2@2 d1 d2",
  BK: "~ d2 ~ d1 d2 d1 c2 d2 d1!2 ~@2 d2@2 d1 d2", BL: "g2 [g2,ab2] f2 d2 f2 c2 d2 f2 bb1!2 bb1@2 bb2@2 bb1 bb2",
  BM: "[~ bb2 bb1!2 bb2 bb1 a1 ab1 g1!2 g1@2 g2@2 ~ g2@2 g1 ab1 a1!2 c2 db2 d2 d1!2 d1@2 d2@2 d1 d2, ~@7 g1 ~@8]/2",
  BN: "~ d2 ~ d1 d2 d1 c2 d2 a1 a2 a1 bb1 b1 b2 b1 b2", BO: "c3 c2 c3 c2 d2 d3 f2 a2 bb2!2 bb1@2 bb2@2 bb1 bb2",
  BP: "~ bb2 bb1!2 bb2 bb1 a1 ab1 g1 ~ g1@2 g2@2 g1 g2", BQ: "g1!2 ab1 a1 c2!2 db2 d2 d1!2 d1@2 d2@2 d1 d2",
  BR: "~ d2@2 d1 d2 d1 c2 d2 d1!2 d1@2 d2@2 d1 d2", BS: "~ d2 d1!2 d2 d1 c2 d2 a1 a2 a1 bb1 b1 b2 b1 b2",
  BT: "c3 c2 c3 d2 f2 g2 a2 g2 bb2!2 bb1@2 bb2@2 ~ bb2, ~@7 bb1", BU: "~ bb2 ~ bb1 bb2 bb1 a1 ab1 g1!2 g1@2 g2@2 g1 g2",
  BV: "g1!2 ab1 a1!2 c2 db2 d2 d1!2 d1@2 d2@2 d1 d2", BW: "~ d2 d1!2 d2 d1 c2 d2 d1 ~ d1@2 d2@2 d1 d2",
  BX: "g2 [g2,ab2] f2 d2 f2 c2 d2 f2 g1 ~ bb1@2 bb2@2 bb1 bb2", BY: "~ d2 ~ d1 d2 d1 c2 d2 d1!2 d1@2 d2@2 d1 d2",
  BZ: "a1 a2 bb1 b1 b2 b2@2 c3 bb1!2 bb1@2 bb2@2 bb1 bb2", CA: "bb1 bb2 bb1!2 bb2 bb1 a1 ~ g1!2 g1@2 g2@2 g1 g2",
  CB: "~ g2 ~ g1 g2 g1 c2 d2 d1!2 d1@2 d2@2 d1 d2", CC: "~ d2 ~ d1 d2 ~@7 d2@2 ~@2",
})).s("gm_synth_bass_1").gain(0.27)

// bass · synth bass 1 · "SYN BASS 1" · soft notes
const bass_soft = note("<~@25 A ~@75 B ~@3 C ~ D ~ C ~ D ~@3 E ~ F G H ~@3 I J K L M@2 N O P>".pickRestart({
  A: "~@6 b0 ~@9", B: "~@2 d1 ~@7 d1@2 ~@4", C: "~@2 d1 ~@13", D: "~@9 g1 ~@6", E: "~@2 bb1 ~@13", F: "~@9 d1 ~@6",
  G: "~@9 g1 a1 ~@5", H: "bb1 ~@15", I: "~@7 ab1 ~@8", J: "g1 ~ g1 ~@13", K: "d1 ~ d1 ~@2 d1 c2 d2 d1!2 d1@2 ~@2 d1 d2",
  L: "g2 [g2,ab2] f2 d2 f2 c2 d2 f2 bb1!2 bb1@2 bb2@2 bb1 bb2", // Abmaj7
  M: "[bb1 bb2 bb1!2 bb2 bb1 a1 ab1 g1!4 g2 ~ g1 g2@2 g1 g2@2 g1@2 c2 d2 d1!2 d1@2 d2@2 d1 d2]/2",
  N: "d1 d2 d1!2 d2@2 c2 d2 a1 a2 a1 bb1 b1 b2 b1 b2", O: "c3 c2 c3 c2 d2 f2 g2 a2 bb2!2 bb1@2 bb2@2 bb1 bb2",
  P: "~ bb2 bb1!2 bb2 bb1 a1 ab1 g1 ~@7",
})).s("gm_synth_bass_1").gain(0.09)

// chords · percussive organ · "ORGAN 2"
const percussive_organ_2 = note(`<
  ~@18 A@2 B@2 C D E@2 F G ~ H ~@6 I J ~@4 A@2 B@2 C D E@2 ~ K ~ L ~ L ~ M ~ N O@2 ~ N P@2 Q@2 R ~ S ~@6 T U@2 V@6 ~ W@2
  X Y ~ Z ~@5 AA AB AC AD@3 AE AF AG AE AC AH AI AG AJ AK AL AM AD AN AO AM AP AQ AR AG AS AT ~@6
>`.pickRestart({
  A: "[b4@2 c5 ~, [f4,g4]@3 ~]/2", B: "[[f4,g4,d5]@7 ~]/2", C: "[f4,g4,b4]", D: "[f4,g4,c5]@5 ~@3",
  E: "[[f4,g4,d5]@11 ~@3 [db5,g5,c6]@4 [a5,b5] [c5,d5,e5,f5,g5] [c4,d4,e4,f4,g4,a4,b4] b3 ~@10]/2", // G7 C Asus2 C Cmaj7
  F: "~@14 g5 [ab5,a5]", G: "c6 [a5,c6] a5 [a5,c6] c6 a5 a5@2 [g5,ab5] g5 f5 ~ f5@4, ~@6 c6 ~ c6@3 ~@5",
  H: "~@2 c6@2 c6@2 f5 ~ [ab5,a5] g5 f5 ~ [f5,c6]@3 ~, ~@2 f6 ~ f6 ~@3 c6@2 ~@6", I: "~@7 [g5,b5,f6]",
  J: "~@6 [f5,ab5,d6]@3 ~@7", K: "~ a5 [c6,f6]@2 [c6,f6]@2 ~@4 [a5,c6]@2 [a5,c6]@2 ~@2", L: "~@3 [c5,d5,f5]",
  M: "~ c6!2 ~@5, ~@2 f6 ~ f6 ~@11", N: "~@12 f5@2 g5 ~", O: "[g5 [g5,ab5] f5@2 d5@2 c5@16 d5@3 ~@7]/2",
  P: "[[g5,ab5] ~ c6 ~ [g5,ab5] g5 f5@15 ~@11, a5 ~@15]/2", // Abmaj7
  Q: "[~@4 [f5,g5,c6,d6,f6]@14 [d6,e6] [g5,a5,b5,c6] [e5,f5] ~@11]/2", R: "[g5,ab5] g5 ~@2 d5@12, c6, ~ f5@7",
  S: "~ [c5,d5,f5]@3 ~@4", T: "~@4 [a5,c6]@2 [a5,c6]@2 ~@4 [g5,ab5] g5 f5@2, ~@4 ab5 ~ ab5 ~@5 c6@4",
  U: "[~ b4@2 c5, ~ [f4,g4]@3]/2", // Fsus2
  V: "[~@8 [f4,g4,d5]@28 ~@4 [f4,g4]@15 ~ [f4,g4,c5]@10 ~@6 [f4,g4,d5]@11 ~@3 [db5,g5,c6]@4 [a5,b5] [c5,d5,e5,f5,g5] [c4,d4,e4,f4,g4,a4,b4] b3 ~@2, ~@5 b4@2 ~@5]/6", // G7 Fsus2 G7 C Asus2 C Cmaj7
  W: "[~@14 d6@2 c6@2 ~@2 [g5,ab5] g5 f5 d5 f5@3 ~@5, ~@7 f6@2 ~@7, ~@14 c6 ~@5 c6@7 ~@5]/2", // Abmaj7
  X: "~@3 d5 [f5,c6] ~ [g5,c6] ~ [ab5,c6] ~ [a5,c6] ~ [g5,ab5,c6] f5 [g5,c6] ~", // F5 C5 Ab Am Abmaj7 C5
  Y: "[f5,c6] d5 [g5,c6] ~ [f5,c6]@2 d5 c5 d5@3 ~@5", Z: "~ [c5,d5,f5] ~@2",
  AA: "~@8 [f5,g5,c6]@3 [f5,g5,c6] ~@2 [f5,g5,c6]!2", // Fsus2
  AB: "~@2 [f5,g5,c6] ~@2 [f5,g5,c6] ~ d5 [f5,g5,c6]@3 [f5,g5,c6] ~@2 [f5,g5,c6] [f5,g5]", // Fsus2
  AC: "~@2 [f5,g5,c6] ~@2 [f5,c6] ~ d5 [f5,g5,c6]@3 [f5,g5,c6] ~@2 [f5,g5,c6]!2, ~@5 g5@2 ~@9", // Fsus2 F5 Fsus2
  AD: "~@2 [f5,g5,c6] ~@2 [f5,g5,c6] ~ d5 [f5,g5,c6]@2 ~ [f5,g5,c6] ~@2 [f5,g5,c6]!2", // Fsus2
  AE: "~@2 [f5,g5,c6] ~@2 [f5,g5,c6] ~ d5 [f5,g5,c6]@3 [f5,g5,c6] ~@2 [f5,g5,c6]!2", // Fsus2
  AF: "~@2 [f5,g5,c6] ~@2 [f5,g5,c6] ~ d5 [f5,g5,c6]@2 ~ [f5,g5,c6] ~@2 [f5,g5,c6] [f5,g5]", // Fsus2
  AG: "~@2 [f5,g5,c6] ~@2 [f5,g5,c6] ~ d5 [f5,g5,c6]@2 ~ [f5,g5,c6] ~@2 [f5,g5]!2, ~@7 c6", // Fsus2
  AH: "~@2 [f5,g5,c6] ~@2 [f5,g5,c6] ~ d5 [f5,c6] ~ [g5,c6] ~ [ab5,c6] ~ [ab5,a5,c6] ~", // Fsus2 F5 C5 Ab
  AI: "g5 f5 d5 ~ g5 d5 f5 ~ [f5,g5,c6]@3 [f5,g5,c6] ~@2 [f5,g5,c6] [f5,g5]", // Fsus2
  AJ: "~@2 [f5,g5,c6] ~@2 [f5,g5,c6] ~ f5 [c6,d6,f6] ~ [c6,d6,f6] ~ c6 ~ [g5,a5] a5", // Fsus2 Dm7 Gsus2
  AK: "[c6,d6,f6] ~ [c6,d6] ~ c6 a5 c6 [d6,f6] c6 a5 [d6,f6]@2 c6 a5 g5 f5, ~@2 f6@2 ~@6 c6 ~@5", // Dm7 Csus2 Dm
  AL: "g5 f5 ab5 ~ [a5,c6]@2 g5 f5 [f5,g5,c6]@2 ~ [f5,g5,c6] ~@2 [f5,g5,c6]!2, ~@4 ab5 ~@11", // Am Fsus2
  AM: "~@2 [d5,f5,g5,c6] ~@2 [d5,f5,g5,c6] ~ d5 [f5,g5,c6]@2 ~ [f5,g5,c6] ~@2 [f5,g5,c6]!2", // Dm7 Fsus2
  AN: "~@2 [f5,g5,c6] ~@2 [f5,g5]@2 d5 [f5,c6] ~ g5 ~ ab5 ~ [ab5,a5,c6] ~, ~@5 c6 ~@10", // Fsus2 F5 Ab
  AO: "g5 f5 d5@2 g5 d5 f5 ~ [f5,g5,c6]@3 [f5,g5,c6] ~@2 [f5,g5,c6] [d5,f5,g5]", // Fsus2 G7
  AP: "~@2 [f5,g5,c6] ~@2 [f5,g5,c6] ~@2 [c6,d6,f6] ~ [c6,d6] ~ c6 a5 g5 a5, ~@5 f6 ~@2", // Fsus2 Dm7 Csus2
  AQ: "[c6,d6,f6] ~ [d6,f6]@2 c6 a5 c6 [c6,f6] ~ a5 [d6,f6]@2 c6 a5 g5 f5, ~@2 c6 ~@4 d6@2 ~ c6 ~@5", // Dm7 Dm F5 Dm
  AR: "g5 ~ ab5 f5 [a5,c6]@2 g5 f5 [f5,g5,c6]@3 [f5,g5,c6] ~@2 [f5,g5,c6]!2, ~@4 ab5 ~@11", // Am Fsus2
  AS: "~@2 [f5,g5,c6] ~@2 [f5,g5,c6] ~ d5 [f5,g5,c6]@2 ~ [f5,g5,c6] ~@3 f5", AT: "~@5 [f5,g5] ~@2 [f5,g5,c6]@2 ~@6",
})).s("gm_percussive_organ").gain(0.11).pan(0.9)

// chords · percussive organ · "ORGAN 2" · soft notes
const percussive_organ_soft = note("<~@51 A ~@47 B ~@5 B ~@4 B ~@13 C D E@2 F G ~@2>".pickRestart({
  A: "d6 ~@15", B: "~@15 c6", C: "~@14 [f5,g5] g5, ~@7 c6",
  D: "~@2 [f5,g5,c6] ~@2 c6 ~ d5 ~@3 [f5,g5,c6] ~@2 [f5,g5,c6]!2", // Fsus2
  E: "~@2 [f5,g5,c6] ~@2 [f5,g5,c6] ~ d5 [f5,g5,c6]@2 ~ [f5,g5,c6] ~@2 [f5,g5,c6]!2", // Fsus2
  F: "~@2 [f5,g5,c6] ~@2 [f5,g5,c6] ~@2 [f5,g5,c6]@2 ~ [f5,g5,c6] ~@2 [f5,g5,c6]!2", // Fsus2
// … 323 more lines

More by Sting