Strudelify

We've Got the Power (Now Is the Time)

Gordon

KeyE minorTempo109 bpm
0:00/0:00
// We've Got the Power (Now Is the Time) — Gordon
// 109 bpm, 4/4, key E minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 111 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(109/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 · piano · "A.PIANO 2"
const piano = note(`<
  ~@4 A@2 B@2 C D E@2 F@2 ~ G H@2 I J@7 K@8 L M N O P@2 Q R S@2 T@2 U G V@2 I W@7 K@8 L M N O L M N O L M N X ~@8 L M N
  O L M N Y L M N O L M N Y L M N O L M N Z ~
>`.pickRestart({
  A: "[[e3,g4,b4,d5,e5]@27 ~@5]/2", // Em7
  B: "[~@4 e4 ~ a4@5 ~ [f#4,a4]@2 [e4,g4]@9 ~ [e4,g4,c5]@4 [f#4,a4,d5]@3 ~, ~@5 f#4@6 ~@21, ~@3 d5@4 ~@9]/2", // F#m Em C D
  C: "~@10 d6 g6 f#6 d6 a5 g5", D: "f#5@10 a5 d5@2 ~@3",
  E: "[~@8 [f#4,a4,d5]@3 [f#4,a4,d5]@3 [e4,g4,c5]@9 ~@7 g3 a3, ~@5 e3@24 ~@3, ~@3 [e4,g4,c5]]/2", // D C
  F: "[[g3,b3]@23 ~@9, e4@25 ~@7]/2", G: "~@12 [g4,e5]@3 ~", H: "[~@14 f#3 ~ e4@11 ~@5, [f#4,g4,b4]@15 g3@12 ~@5]/2",
  I: "~@4 [f#4,a4,d5]@3 [g4,c5]", // D C5
  J: "[~@8 [b3,d4]@4 [c4,e4]@3 ~@13 [f3,a3,c4]@12 [g#2,g#3,b3,d4,f4]@4 e4 ~ [g#3,b3,d4]@7 ~ [a3,c4]@7 ~ [g#3,b3,d4]@3 ~ [a3,c4]@3 ~ [g#3,b3,d4]@3 ~ [a3,c4,e4]@3 ~ a#3@12 ~@2 [d4,f4]@2 [d#3,c4,f4,a4]@10 ~ c5 ~@2 [a3,d#4,f#4,c5] ~ [g2,a#3,d4,f4]@2, ~@8 g4@7 d3@25 ~@6 a2@32 a#2@16 ~@18, ~@15 [a3,c4]@13 ~@62 a#3@4 ~@10 [c4,e4,g4]@3 ~@5, ~@8 [d4,f4]@12 ~@19 [d4,f4]@7 ~@10]/7", // Bm C F G#dim Am G#dim Am G#dim …
  K: "[~@4 [g3,g4]@2 [f3,f4] ~ [g2,a#3,d4,f4]@6 [a2,a3,c4,f4]@11 ~ [a#2,a#3,d4,f4]@4 [c3,a3,c4,f4]@4 [c3,g3,c4,e4] ~ c4@3 ~@2 c4@2 c4@3 [a3,c4,f4]@3 ~ [g3,c4,e4] ~ [g3,c4,e4]@4 [c4,e4,g4]@3 ~ [a3,d#4,f#4]@2 ~@2 a#3@8 a#3@2 a#3@2 a#3 ~ [a2,a3,c4,f4]@12 [a#2,c4,f4,a4]@4 [c3,f4,a4,d5]@4 [c3,e4,g4,c5] ~ [c3,e4,g4,c5]@10 ~@4 [b3,b4]@3 [b3,b4]@3 [b3,b4]@3 [b3,b4]@3 [b3,b4] ~, ~@7 [g3,g4]@7 ~@22 c3@20 d3@4 ~@2 g2@16 ~@32 b2@18, ~@18 [g3,e4]@5 ~@32 [a3,c#4,f#4]@8 ~, ~@39 c4@2 ~@23 [d4,f4]@14 ~@50, ~@20 c5@3 ~@41]/8", // G F Gm7 F A# F C F …
  L: "~@2 [b3,d4,g4] ~ [b3,d4,g4] ~ [b3,d4,g4] ~ [b3,d4,g4]@3 [a3,d4,f#4] ~@4, e3@7 ~", // G D
  M: "~@2 [b3,d4,g4] ~ [b3,d4,g4] ~ [b3,d4,g4] ~ [b3,d4,g4]@2 ~ [a3,d4,f#4] ~@4, e3@7 ~", // G D
  N: "~@2 [b3,d4,g4] ~ [b3,d4,g4] ~ [b3,d4,g4] ~ [b3,d4,g4]@2 ~ [a3,d4,f#4]@2 ~ [b3,d4,g4] ~, e3", // G D G
  O: "[c3,e4,g4,b4] [b2,d4,f#4,a4] [a2,c4,e4,g4] [b2,d4,f#4,a4]", // Cmaj7 Bm7 Am7 Bm7
  P: "~@2 [b3,d4,g4] ~ [b3,d4,g4] ~ [b3,d4,g4] ~ [b3,d4,g4]@2 ~ [a3,d4,f#4]@4 ~, e3@15 ~", // G D
  Q: "~@2 [b3,d4,g4] ~ [b3,d4,g4] ~ [b3,d4,g4] ~ [e3,b3,d4,g4]@2 ~ [d3,d4,f#4,a4]@2 ~ [c3,e4,g4,b4] ~, e3@7 ~@9", // G Em7 D Cmaj7
  R: "[c3,e4,g4,b4]@15 ~", // Cmaj7
  S: "[~@16 [f#4,f#5]@3 [d4,d5]@3 [a3,a4]@4 [f#3,f#4]@4 [g3,g4]@2, [e3,g4,b4,e5]@27 ~@5, d5@9 ~@7]/2", // F# D A F# G Em
  T: "[e4@25 ~@7, b3@23 ~@9, g3 ~@15]/2", U: "~ a4, ~@6 a5@9 ~, ~@7 d5@9",
  V: "[[f#4,g4,b4]@15 ~ b5@12 ~@4, ~@15 [e5,g5]@13 ~@4]/2", // Gmaj7 Em
  W: "[~@8 [b3,d4]@4 [c4,e4]@3 ~@13 [f3,a3,c4]@12 [g#2,g#3,b3,d4,f4]@4 e4 ~ [g#3,b3,d4]@7 ~ [a3,c4]@7 ~ [g#3,b3,d4]@3 ~ [a3,c4]@3 ~ [g#3,b3,d4]@3 ~ [a3,c4,e4]@3 ~ a#3@12 ~@2 [d4,f4]@2 [d#3,c4,f4,a4]@10 ~ c5 ~@2 [a3,d#4,f#4,c5] ~ [g2,a#3,d4,f4]@2, ~@8 g4@7 d3@25 ~@6 a2@32 a#2@16 ~@18, ~@15 a3@13 ~@62 a#3@4 ~@18, ~@15 c4@3 ~@86 [c4,e4,g4]@3 ~@5, ~@8 [d4,f4]@12 ~@19 [d4,f4]@7 ~@10]/7", // Bm C F G#dim Am G#dim Am G#dim …
  X: "[c3,e4,g4,b4] [b2,d4,f#4,a4] [f2,c4,e4,g4] [d2,c4,e4,g4]", // Cmaj7 Bm7 C
  Y: "~@2 [c3,g3,b3,e4,g4]@3 [b2,f#3,a3,d4,f#4]@3 [f2,e3,g3,c4,e4]@3 [d2,a3,d4,f#4]@2 ~ [d2,a3,d4,f#4] [e2,g3,b3,e4,g4]", // Cmaj7 Bm7 C D Em
  Z: "~@2 [c3,g3,b3,e4,g4]@3 [b2,f#3,a3,d4,f#4]@3 [f2,e3,g3,c4,e4]@3 [d2,a3,d4,f#4]@2 ~@2 [e2,g3,b3,e4,g4]", // Cmaj7 Bm7 C D Em
})).s("gm_piano").gain(0.35).pan(0.3)

// chords · piano · "A.PIANO 2"
const piano_2 = note("<~@78 A B C D E F G H ~@25>".pickRestart({
  A: "[g1,g2] [g3,g4] [g1,g2] [g3,g4]@2 ~ [c1,c2,g3,g4] [c#1,c#2] [d1,c2,d2,g3,g4] [c#1,c#2] [d1,d2,g3,g4] ~ [g3,g4] ~ [d#1,d#2,g3,g4] ~, ~@11 [d#1,d#2]@2 ~@3", // G C5 C# Csus2 C# G5 G D#
  B: "~ [g3,g4] ~ [g3,g4]@2 ~ [f1,f2,g3,g4] [d1,d2] [f1,f2,a3,c4,g4]@3 [d1,d2] [f#1,f#2,a#3,c#4,g4]@3 [d1,d2], [e1,e2]!2 ~@6", // G Fsus2 D F D F# D E
  C: "[g1,g2,g3,d4,g4]@2 ~ [g3,g4] ~ [g3,g4] [c1,c2] [c#1,c#2] [d1,d2,g3,g4] [c#1,c#2] [d1,d2,g3,g4] d1 [g3,g4] ~ [g3,g4] [d#1,d#2], ~@2 [g1,g2]@2 ~@7 [d#1,d#2]@3 ~@2", // G5 G C C# G5 C# G5 G …
  D: "~ [g3,g4] ~ [g3,g4]@2 ~ [f1,f2,g3,g4] [d1,d2] [g#3,c#4,f4] ~ [g3,c4,e4] [d1,d2] [f3,a#3,d4] [g3,c4,e4] ~ [d1,d2,f3,a#3,d4], [e1,e2]@2 [e1,e2]@2 ~@4 [f1,f2]@2 ~@2 [f#1,f#2]@3 ~", // G Fsus2 D C# C D A# C …
  E: "c#1 [g4,g5] ~ [g4,g5]@2 ~ [c1,c2,g4,g5] [c#1,c#2] [d1,d2,g4,c#5,g5] [c#1,c#2] [d1,d2,g4,g5] ~ [g4,g5] ~ [d#1,d#2]@2, [g1,g2]@2 [g1,g2]@2 ~@7 [d#1,d#2]@3 [g4,g5] ~", // G C5 C# G C# G5 G D# …
  F: "~ [g4,g5] ~ [g4,g5]@2 ~ [f1,f2,g4,g5] [d1,d2] [d#1,c#5,c#6] ~ [c5,d5,c6,c#6] [d1,d2] [a#4,a#5] [c5,c6] ~ [d1,d2,a#4,a#5], [e1,e2]@2 [e1,e2]@2 ~@4 [f1,f2]@2 ~@2 [f#1,f#2]@3 ~", // G Fsus2 D D#7 D A# C Gm …
  G: "~ [g4,g5,a5] ~ [g4,g5]@2 ~ [c1,c2,g4,g5] [c#1,c#2] [d1,d2,g4,g5] [c#1,c#2] [d1,d2,g4,g5] ~ [g4,g5] ~ [d#1,d#2]@2, [g1,g2]@2 [g1,g2]@2 ~@7 [d#1,d#2]@2 ~ [g4,g5] ~", // Gsus2 G C5 C# G5 C# G5 G …
  H: "[e1,e2] ~ [c2,c3,b3,e4,g4]@3 [b1,b2,a3,d4,f#4]@3 [f1,f2,g3,c4,e4]@3 [d1,d2,a3,d4,f#4]@2 ~ [d1,d2,a3,d4,f#4] [e1,e2,b3,e4,g4]", // E Cmaj7 Bm7 C D Em
})).s("gm_piano").gain(0.5).pan(0.3)

// chords · piano · "A.PIANO 2" · soft notes · E
const piano_soft = note(`<
  ~@78
  [~@11 d1 ~@4]
  ~@4
  [~@15 [e2,g#5]]
  [~@11 d1 f#5 ~@3]
  [~@2 g3@2 ~ f#3@2 ~ e3@2 ~@5 g3]
  ~@25
>`).s("gm_piano").gain(0.25).pan(0.3)

// bass · slap bass 1 · "SLAPBASS 1"
const bass = note(`<
  ~@4 A B C D E F G H A B C D E F G H ~@14 I@3 J I@2 K L A B A B C D E F G H ~@14 I@3 J I@3 J I@3 M ~@4 N O P Q I@3 J
  I@3 Q I@3 J I@3 Q I@3 J I@3 R ~
>`.pickRestart({
  A: "e1 ~ e1 ~@2 e1 ~ e1 e1@6 d2 e2", B: "~@2 e1 ~@2 e1 ~ e1 e1@7 ~", C: "e1!3 ~ e1!2 ~ e1 e1@6 ~@2",
  D: "~@2 e1@2 ~ e1 ~ e1 a1@4 b1@4", E: "e1 ~ e1@2 ~ e1 ~ e1 e1@5 ~ d2 e2", F: "~@2 e1@2 ~ e1 ~ e1 e1@7 ~",
  G: "e1!3 ~ e1!2 ~ e1 e1@7 ~", H: "e1 ~ e1 ~ e1!2 ~ e1 a1@8", I: "e1 ~ e1!3 ~ e1!3 ~ e1!3 b1 d2 e2",
  J: "c2@4 b1@4 a1@4 b1@2 ~ e2", K: "e1 ~ e1!3 ~ e1!2 e2@3 d2@3 c2@2", L: "c2@12 ~@2 d2 e2", M: "c2 b1 f1 d1",
  N: "g1 ~ g1 g2 ~@2 c1 c#1 d1 c#1 d1 d#1@3 ~ d#1", O: "e1 ~ e1 e2 ~@2 [e1,f1] d1 f1@3 d1 f#1@3 d1",
  P: "g1 ~ g1 g2 ~@2 c1 c#1 d1 c#1 d1 d#1@2 ~@2 d#1", Q: "e1@2 c2@3 b1@3 f1@2 ~ d1@2 ~ d1 e1",
  R: "e1@2 c2@3 b1@3 f1@2 ~ d1@2 ~@2 e1",
})).s("gm_slap_bass_1").gain(0.4).pan(0.6)

// chords · rock organ · "ORGAN 3"
const rock_organ = note("<~@77 A B@2 ~ C ~ D ~ E@2 ~@24>".pickRestart({
  A: "~@14 [c4,d4,e4,f4,g4,a4] [b4,c5,d5,e5,f5,g5,a5]", B: "[[g6,g7]@22 [c6,d6,e6,f6,g6,a6] ~@9, [b5,c6] ~@31]/2",
  C: "~@7 [e4,f4,g4,a4,b4,c5,d5] [e5,g#5,c#6,f6] ~ [g5,c6,e6] ~ [f5,a#5,d6] [g5,c6,e6] ~ [f5,a#5,d6]", // Em7 C# C A# C A#
  D: "~ [a4,b4,c5] [d5,e5,f5] [g5,a5,b5,c6,d6] [e6,a6] ~@11, ~ g6 ~@2", // Am Dm G A5
  E: "[~ g5 a5 a#5 b5 d6 e6 g6 a#5 b5 d6 e6 g6 a6 a#6 b6@13 [g6,a6,b6] [g5,a5,b5,c6,d6,e6,f6] [b4,c5,d5,e5,f5] ~]/2", // G G7 Bdim
})).s("gm_rock_organ").gain(0.35).pan(0.3)

// chords · string ensemble 2 · "SLOWSTRING"
const string_ensemble_2 = note(`<
  ~@3 A@5 B@4 ~@7 C D ~ E F@3 G@4 H@4 I@3 J K@3 L M@2 ~@2 N O ~@3 C D ~ E F@3 G@4 H@4 I@3 J I@3 J I@3 P ~@8 I@3 J I@3 ~
  I@3 J I@3 ~ I@3 J I@3 ~@2
>`.pickRestart({
  A: "[~@17 f#5@27 [e3,b3,d4,g4]@2 [e3,a3,d4,f#4]@14 [e3,a3,d4,f#4]@2 [e3,g3,c4,e4]@10 [a2,g3,c4,e4]@4 [b2,a3,d4,f#4]@4, ~@14 e6@29 ~@37, ~@15 [b5,d6]@28 ~@37, ~@16 g5@27 ~@37]/5", // Em7 D C Am7 Bm7 Bm
  B: "[[e3,b3,d4,g4]@14 [e3,b3,d4,g4] [e3,a3,d4,f#4]@7 [e3,a3,d4,f#4] [e3,g3,c4,e4]@5 [a2,c4,e4,g4]@4]/4", // Em7 D C Am7
  C: "~@2 [b3,d4,g4] [g3,c4,e4], ~ a2", D: "[d3,a3,c4,d4,f4]@7 ~", E: "~@7 [g#3,b3,d4]",
  F: "[~@2 [e3,a3,c4]@3 ~ [g#3,b3,d4]@3 ~ [a3,c4,e4]@3 ~ [a#3,d4,f4]@15 ~ [c4,f4,a4]@10 [c4,e4,g4]@3 ~ [d#4,f#4]@2 ~@2, ~@44 a3 ~@3]/3", // Am G#dim Am A# F C D#m
  G: "[f4@14 [a2,a3,c4,f4]@12 [a#2,a#3,d4,f4]@4 [a3,c4,f4]@3 ~ [g3,c4,e4] ~ [g3,c4,e4]@9 ~ [a3,c4,f4]@4 [g3,c4,e4] ~ [g3,c4,e4]@3 ~ [c4,e4,g4]@3 ~ [a3,d#4,f#4]@2 ~@2, f5 ~, ~@30 c3@26 d3@7 ~]/4", // F A# F C F C D#dim
  H: "[[g2,a#3,d4,f4]@14 [a2,a3,c4,f4]@12 [a#2,a#3,d4,f4]@4 [a3,c4,f4]@3 ~ [g3,c4,e4] ~ [g3,c4,e4]@9 ~ [b2,a3,f#4]@17 ~, f5@33 ~@31, ~@30 c3@15 ~@19]/4", // Gm7 F A# F C B7
  I: "[~@2 e4 ~ [e4,g4] ~ [e4,g4] ~ [e4,g4]@3 [d4,f#4] ~@6 [e4,g4] ~ [e4,g4] ~ [e4,g4] ~ [e4,g4]@3 [d4,f#4] ~@6 [e4,g4] ~ [e4,g4] ~ [e4,g4] ~ [e4,g4]@2 ~@4 [e4,g4] ~, [b4,b5]@43 [d4,f#4]@2 ~@3, ~@11 [d5,d6]]/3", // Em D Em D Em B D
  J: "[e4,g4,e5,e6]@4 [d4,f#4,d5,d6]@4 [c4,e4,c5,c6]@3 ~ [d4,a4,a5]@4, ~@11 f#4@3 ~@2", // Em D C D5
  K: "[~@2 [e4,g4] ~ [e4,g4] ~ [e4,g4] ~ [e4,g4]@3 [d4,f#4] ~@6 [e4,g4] ~ [e4,g4] ~ [e4,g4] ~ [e4,g4]@3 [d4,f#4] ~@6 [e4,g4] ~ [e4,g4] ~ [e4,g4] ~ [e4,g4]@3 [f#4,a4,d5,d6]@3 [g4,b4,e6] ~, [b4,b5]@43 ~@5]/3", // Em D Em D Em D Em B
  L: "[g4,b4,e5,e6]@15 ~", M: "[~ f#5@27 ~@4]/2", N: "~@8 a6 f#6 d6 a5 f#5 d5 a4 ~", O: "~@8 g6 e6 c6 g5 e5 c5 g4 ~",
  P: "[e4,g4,e5,e6]@3 ~ [d4,d5,d6]@4 [c4,e4,c5,c6]@4 [c4,e4,d5,d6]@4, ~@3 f#4@3 ~@10", // Em D C
})).s("gm_string_ensemble_2").gain(0.15).pan(0.4)

// chords · string ensemble 2 · "SLOWSTRING" · soft notes
const string_ensemble_2_soft = note("<~@12 A@4 B@4 C@2 ~@18 D ~@3 A@4 B@4 C@2 ~@57>".pickRestart({
  A: "[[e3,b3,e4,g4]@14 [e3,b3,d4,g4] [e3,a3,d4,f#4]@7 [e3,a3,d4,f#4] [e3,g3,c4,e4]@5 [a2,g3,c4,e4]@2 [b2,a3,d4,f#4]@2]/4", // Em Em7 D C Am7 Bm7
  B: "[[e3,b3,d4,g4]@14 [e3,b3,d4,g4] [e3,a3,d4,f#4]@7 [e3,a3,d4,f#4] [e3,g3,c4,e4]@5 ~@4]/4", // Em7 D C
  C: "[~@7 [d3,f3,a3,c4]@5 ~@4]/2", D: "~@14 e5 ~",
})).s("gm_string_ensemble_2").gain(0.1).pan(0.4)

// other · distortion guitar · "DISTORTION"
const distortion_guitar = note(`<
  ~@34 A B C D A E@2 F ~@24 A B C D A B C D A B C G ~@7 H I B C D A B@2 J I B C D A B@2 J I B C D A B@2 K ~
>`.pickRestart({
  A: "e2@13 b2 d3 b2", B: "e3 e2@12 b2 d3 b2", C: "e3 e2@15", D: "c3 b2 a2 b2",
  E: "[e3 e2@12 b2 d3 [b2,e3]@2 e2@7 e3@3 d3@3 c3 ~]/2", F: "c3", G: "c3 b2 f2 d2",
  H: "~@2 c3@3 b2@3 f2@3 d2@3 ~ e2, ~@7 d2", I: "e2@11 ~@2 b2 d3 b2", J: "e3@2 c3@3 b2@3 f2@3 d2@3 ~ e2, ~@7 d2",
  K: "e3@2 c3@3 b2@3 f2@3 d2@3 d2@2",
})).s("gm_distortion_guitar").gain(0.24).pan(0.6)

// other · electric guitar muted · "MUTED GTR"
const electric_guitar_muted = note(`<
  ~@4 A B C D E F G H A B C D E F G H I J I K L M ~@16 A B A B C D E F G H I J I K L M ~@53
>`.pickRestart({
  A: "~@2 d3 ~ d3!2 ~ d3!2 ~ e3!2 ~ d3 ~ d3", B: "~ d3!3 ~ d3 ~ d3!3 e3!2 ~ e3 ~ e3",
  C: "~ e3 d3!4 ~ d3!3 e3!2 ~ e3 ~ e3", D: "~ e3 d3 ~ d3!2 ~ d3!3 e3!2 ~ e3 ~ e3",
  E: "~@2 d3 ~ d3!2 ~ d3!3 e3!2 ~ e3 ~@2", F: "~@2 d3!7 ~@2 e3 ~@4", G: "~@2 d3 ~ d3!3 ~ d3 ~ d3!6",
  H: "d3!3 ~@2 d3 ~ d3 ~@2 e3!2 ~ e3 ~ e3", I: "~@2 g3 a3 c4!2 g3 a3 c4 ~ c4!2 ~@4",
  J: "~@2 g3 a3 c4!2 g3 a3 c4 ~ [d4,e4] ~ d4 ~@3", K: "~@2 g3 a3 c4!2 g3 a3 [d4,e4] ~ c4 a3 ~@4",
  L: "~@2 f3 ~ f3!2 ~ f3!2 ~ f3!2 ~@2 f3 ~", M: "~@2 f3 ~ f3!2 ~@2 f3 ~@7",
})).s("gm_electric_guitar_muted").gain(0.3).pan(0.6)

// other · electric guitar muted · "MUTED GTR" · soft notes
const electric_guitar_muted_2 = note(`<
  ~@6 A B@2 C D E ~@2 A B@2 C D E ~@4 F@2 ~@20 A B@2 C D E ~@4 F@2 ~@53
>`.pickRestart({
  A: "~@6 d3 ~@9", B: "~@6 d3 ~@7 e3 ~", C: "~ e3 ~@8 e3 ~@5", D: "~@7 d3 ~@8", E: "~@4 d3 ~ d3 ~@9", F: "f3 ~@15",
})).s("gm_electric_guitar_muted").gain(0.2).pan(0.6)

// other · electric guitar clean · "CLEAN GTR"
const electric_guitar_clean = note(`<
  ~@26 A B C D E F G H ~@24 A B C D E F G H ~@14 I J K L I M ~@7 M ~@7 M ~@7 N ~
>`.pickRestart({
  A: "[g3,g4]!3 ~ [g3,g4]!4 [g3,a3,g4] ~ [g3,g4]!4 [a3,a4]@2", // G Gsus2 G A
  B: "[a3,a4]!3 ~ [a3,a4]!2 a3 ~ [a3,a4] a3 [a3,a4]!4 [a3,c4,f4]@2", // A F
  C: "~@2 [g3,c4,e4] ~ [g3,c4,e4]@3 ~@2 [g3,c4,e4]!2 [c4,e4] [g3,c4,e4] [g3,e4] [a3,c4,f4]@2", // C F
  D: "~@2 [c4,c5] ~@2 [c4,c5] ~ c5 [c4,c5] ~ c5 ~ [c4,g4] g4 [g3,g4]!2", E: "[g3,g4]!3 ~ [g3,g4]!10 [a3,a4]@2",
  F: "[a3,a4]!14 [a3,c4,f4]@2", G: "~@2 [g3,c4,e4] ~ [g3,c4,e4]@4 ~ [c4,e4] [g3,c4,e4] ~ [g3,c4,e4]!2 [e3,e4]!2",
  H: "[e3,e4]!5 e4!2 [e3,e4]!9", I: "[g4,g5] ~ [g4,g5]!2 ~ [g4,g5] ~ [g4,g5]!3 ~ [g4,g5]!3 ~ [g4,g5]",
  J: "[g4,g5] ~ [g4,g5]!2 ~ [g4,g5] ~ [g4,g5]!2 ~ [g4,g5]!2 [c4,e4,g4] ~ [a#3,d4,f4] ~", // G C A#
  K: "[g4,a4,g5] ~ [g4,g5]!2 ~ [g4,g5] ~ [g4,g5]!3 ~ [g4,g5]!3 ~ [g4,g5]", // Gsus2 G
  L: "[g4,a4,g5] ~ [g4,g5]!2 ~ [g4,g5] ~ [g4,g5]!2 ~ [g4,g5] ~ [c4,e4,g4] ~ [a#3,d4,f4] ~", // Gsus2 G C A#
  M: "~@2 [b3,e4,g4]@2 ~ [a3,d4,f#4]@2 ~ [g3,c4,e4]@2 ~ [a3,d4,f#4]@2 ~ [a3,d4,f#4] [b3,e4,g4]", // Em D C D Em
  N: "~@2 [b3,e4,g4]@2 ~ [a3,d4,f#4]@2 ~ [g3,c4,e4]@2 ~ [a3,d4,f#4]@2 ~@2 [b3,e4,g4]", // Em D C D Em
})).s("gm_electric_guitar_clean").gain(0.2).pan(0.7)

// chords · brass section · "BRASS 1"
const brass_section = note(`<
  ~@23 A@6 B C@4 D@2 ~ E D@2 ~@8 F@2 ~@5 G@6 B H@4 D@3 E D@3 I D J ~ K L ~@3 M@2 N O D J ~ E D P ~ Q D J ~ E D P ~ Q D J
  ~ E D P ~ R ~
>`.pickRestart({
  A: "[~@14 [a#3,d4,f4]@16 [c4,f4,a4]@9 ~ [c4,e4,g4]@3 ~ [a3,d#4,f#4]@2 [f3,f4]@36 ~@12 [c4,f4] ~, ~@23 [a#3,d4]@7 ~@17 a3]/6", // A# F C D#dim F F5 A#
  B: "~@2 [g3,c4,e4] ~ [g3,c4,e4]@3 ~ [c4,e4,g4]@3 ~ [a3,d#4,f#4]@3 ~", // C D#dim
  C: "[[a#3,d4]@12 ~@22 e4 ~@27 [d4,d5] [e4,e5], f3@16 ~@7 b1@9, f4@15 f4@15 ~@2]/4", D: "~@13 [b3,b4] [d4,d5] [e4,e5]",
  E: "[g4,b4,e5]@3 ~ [f#4,a4,d5]@3 ~ [e4,g4,c5]@3 ~ [f#4,a4,d5]@3 [b4,e5]", F: "[[e4,f#4,g4,b4]@7 ~]/2",
  G: "[~@14 [a#3,d4,f4]@16 [c4,f4,a4]@9 ~ [c4,e4,g4]@3 ~ [a3,d#4,f#4]@2 ~@8 [c4,c5] d5 f4@10 ~@28 [c4,f4] ~, ~@23 f3@18 ~@7, ~@23 a#3@7 ~@17 a3, ~@46 [d4,f4]@9 d4@9 ~@32, ~@7 f5 ~@4]/6", // A# F C D#dim C F5 Dm
  H: "[~@6 [c4,c5] [c4,d5] [f4,f5]@12 ~@2 f4 [g3,g4] c4@6 f4@2 ~@2 [e4,b4,c5] ~ [c4,c5]@9 ~ [b3,b4]@11 ~ [b3,b4] ~ [d4,d5] ~ [d4,d5] [e4,e5], f3@11 f3@11 ~ b1@9, a#3@12 ~@12 b3 ~@9 c4@2 ~@28, [d4,f4]@7 d4@7 ~@10 c5@8 ~@32]/4", // C Csus2 F G Cmaj7 C B D …
  I: "~@12 [f#4,a4,d5]@3 [b4,e5]", J: "~@13 [f#4,a4,d5] ~ [g4,b4,e5]",
  K: "[g4,b4,e5]@3 ~ [f#4,a4,d5]@3 ~@7 f4 c5, ~@7 g4", L: "[d5,e5,g5] ~@15", M: "[~@12 [g4,g5]@13 ~@7]/2",
  N: "~@3 [g4,a4,d5,f5,g5] ~@12", O: "~@14 [f#4,a4,d5] [g4,b4,e5]", P: "~@13 [f#4,a4,d5] ~ [e4,g4,b4]",
  Q: "~@2 [b3,b4]@3 [d4,d5]@3 [e4,e5]@2 ~ [g4,g5]@2 ~ [a4,a5] [b4,b5]", // B D E G A B
  R: "~@2 [b3,b4]@3 [d4,d5]@3 [e4,e5]@2 ~ [g4,g5]@2 ~@2 [b4,b5]", // B D E G B
})).s("gm_brass_section").gain(0.43).pan(0.4)

// chords · brass section · "BRASS 1" · soft notes
const brass_section_soft = note("<~@31 A@2 ~@30 B@2 ~@8 C ~@3 D E ~@32>".pickRestart({
  A: "[~@14 c4@5 ~ [c4,e4]@8 ~@4]/2", B: "[~@7 c4@2 ~ e4@4 ~@2]/2",
  C: "[g4,b4,e5]@3 ~ [f#4,a4,d5]@3 ~ [e4,g4,c5]@3 ~@5", D: "~@8 [e4,g4,c5]@3 ~ [e4,g4,c5]@3 [a4,b4]", E: "f5 ~@15",
})).s("gm_brass_section").gain(0.29).pan(0.4)

// bass · electric bass finger · "FINGERDBAS"
const bass_2 = note("<~@20 A B C D E F G H I J K L M N ~@18 O P Q R S T G H I J K L M N ~@45>".pickRestart({
  A: "d2 ~ d1@2 ~ d1 ~ d1 d1@7 ~", B: "d1 ~ d1 ~@2 d1@3 g#1@6 a1 ~", C: "~@2 a1 ~@2 a1 ~ a1 a1@7 ~",
  D: "a1 ~ a1 ~@2 a1 ~@2 a1@6 a#1@2", E: "~@2 a#1 ~@2 a#1 ~@2 a#1@8", F: "d#1 ~ d#1 ~@2 d#1 ~@2 d1@5 ~ g1 ~",
  G: "g1 ~ g1 ~ g1 ~ g1 f1 g1 ~ g1 ~ g1 ~ a1@2", H: "~@2 a1 ~ a1 ~ a#1@3 ~ a#1 ~ a#1 ~ c2@2",
  I: "~@2 c2 ~ c2 ~ c2 a#1 c2 ~ c2 ~ c2 ~ c2@2", J: "~@2 c2 ~ c2@3 ~ d2 ~ d2 ~ d2@2 g1@2",
  K: "~@2 g1 ~ g1 ~ g1 ~ g1 ~ g1 ~ g1 ~ a1@2", L: "~@2 a1 ~ a1 ~ d1@3 ~ d1 ~ d1 ~ c2@2",
  M: "~@2 c2 ~ c2 ~ c2 ~ c2 ~ c2 ~ c2 ~ b1@2", N: "~@2 b1 ~ b1 ~ b1 ~ b1 ~ b1 ~ b1@2 a1 b1",
  O: "d1 ~ d1 ~ d1@2 ~ d1!2 ~ d1 ~ d1@3 ~", P: "d1 ~ d1 ~ d1@2 ~ d1 g#1 ~ g#1 ~ g#1@2 a1 ~",
  Q: "a1 ~ a1 ~ a1@2 ~ a1!2 ~ a1 ~ a1@3 ~", R: "a1 ~ a1 ~ a1@2 ~ a1!2 ~ a1 ~ a1@2 a#1 ~",
  S: "a#1 ~ a#1 ~ a#1@2 ~ a#1!2 ~ a#1 ~ a#1@2 d#2@2", T: "~@2 d#2 ~ d#2@3 ~ d2 ~ d2 ~ d2@2 ~@2",
})).s("gm_electric_bass_finger").gain(0.4).pan(0.6)

// chords · epiano2 · "E.PIANO 2"
const epiano2 = note("<~@3 A@5 B@4 C@4 D@4 E@7 ~@14 F@3 C@4 D@4 E@7 ~@52>".pickRestart({
  A: "[~@16 [f#5,g5,b5]@20 ~@8 [d4,e4,g4,b4]@2 [d4,e4,f#4,a4]@14 [d4,f#4,a4]@2 [c4,e4,g4]@10 [a3,e4,g4,c5]@3 ~ [b3,f#4,a4,d5]@3 ~, ~@15 [d6,e6]@21 ~@44, ~@16 e3@25 ~@3 e3@25 ~@11]/5", // Gmaj7 Em7 D C Am7 Bm7 Dsus2
  B: "[~@28 [d4,g4,b4]@2 [d4,f#4]@13 ~ [d4,f#4,a4]@2 [c4,e4,g4]@9 ~ [e4,g4,c5]@7 ~, [e3,d4,g4,b4]@27 ~ e3@15 ~@21, ~@2 f#5@3 ~@3, ~@19 d5@20 ~@25, ~@11 a4@4 a4@5 ~@12]/4", // G D C Em7
  C: "[e3@25 ~@3 [b3,d4,e4,g4]@2 [a3,d4,e4,f#4]@14 [a3,d4,f#4]@2 [g3,c4,e4]@14 [g4,e5]@3 ~, ~@28 e3@25 ~@11]/4", // Em7 D C
  D: "[[e3,f#4,g4,b4]@27 ~ [d4,g4,b4]@2 [d4,f#4,a4]@13 ~ [d4,f#4,a4]@2 [c4,e4,g4]@9 ~ [b3,d4,g4]@3 ~ [g3,c4,e4]@3 ~, ~@28 e3@15 ~@21]/4", // Em G D C G C
  E: "[[a3,c4]@12 [f3,a3,c4]@12 f4@3 ~ e4 ~ [e3,g#3,b3,d4]@8 [e3,a3,c4]@8 [e3,g#3,b3,d4]@4 [e3,a3,c4]@4 [e3,g#3,b3,d4]@4 [a3,c4,e4]@4 a#3@8 a#3@4 a#3@2 [a#3,d4,f4]@2 [d#3,c4,f4,a4]@10 [c4,e4,g4]@3 ~ [a3,d#4,f#4] ~ [a#3,d4,f4]@5 ~@13, d3@12 [g#2,g#3,b3,d4]@3 a2@16 a#2@8 ~@5 d3@2 ~@10, [d4,f4]@7 ~@24 [d4,f4]@7 ~@18]/7", // Am F E7 Am E7 Am E7 Am …
// … 129 more lines

More by Gordon