Strudelify

Ik wil altijd bij je zijn (feat. Koos Alberts)

Corry Konings

KeyB majorTempo120 bpm
0:00/0:00
// Ik wil altijd bij je zijn (feat. Koos Alberts) — Corry Konings
// 120 bpm, 4/4, key B major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 121 bars on a 32-step grid, each part at one level. 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: edit a riff to change every repeat.

// bass · electric bass finger · "FINGERDBAS"
const bass = note(`<
  A B C D@2 E B F G H I J D K L M N O P Q@2 R N S T U V J W X Y M Z AA AB AC AD AE AF AG AH AI AJ AK@2 K AL M Z AM AD AN
  B AO AH AP AI AA AQ AO AR AS AT F N O P Q@2 R N S T U V J W X Y M Z AA AB AC AD AE AF AG AH AI AJ AK@2 K AL M Z AM AD
  AN B AO AH AP AI AA AQ AO AR AS AT F AT F AT F AT F AT F ~
>`.pickRestart({
  A: "b1@9 ~@3 b1@4 f#1@6 ~@2 f#1@7 ~", B: "b1@10 ~@2 b1@4 f#1@6 ~@2 f#1@7 ~", C: "c#2@10 ~@2 c#2@4 g#1@6 ~@2 g#1@7 ~",
  D: "f#2@10 ~@2 f#2@4 c#2@6 ~@2 c#2@7 ~", E: "f#2@5 ~ f#2@2 a#1@4 f#2@4", F: "b1@11 ~ f#1@4 g#1@8 a#1@6 ~@2",
  G: "b1@5 ~ b1@2 a1@7 ~", H: "g#1@11 ~ d#2@4 g#2@8 d#2@7 ~", I: "c#2@11 ~ c#2@4 g#1@6 ~@2 g#1@7 ~",
  J: "c#2@5 ~ c#2@2 e2@4 f2@4", K: "f#1@5 ~ f#1@2 g#1@4 a#1@4", L: "b1@5 ~ b1@2 f#1@3 ~ f#1@4",
  M: "b1@11 ~ f#1@4 g#1@8 a#1@7 ~", N: "b1@12 f#2@11 ~ f#1@8", O: "b1@12 f#2@11 ~ f#1@7 ~", P: "c#2@12 f#2@11 ~ f#1@8",
  Q: "c#2@3 f#2@3 f#1@2", R: "c#2@11 ~ f#2@12 f#1@8", S: "b1@11 ~ f#2@8 f#2@4 g#2@4 f#2@4", T: "b1@11 ~ f#2@12 a1@8",
  U: "g#1@3 d#2@3 g#2@2", V: "c#2@3 g#2@3 g#1@2", W: "f#2@12 c#3@11 ~ c#2@8", X: "f#2@3 c#3@3 f#2@2",
  Y: "b1@3 f#2@3 f#1@2", Z: "b1@5 ~ b1@2 f#1@4 b1@4", AA: "e2@5 ~ e2@2 b1@4 e2@4", AB: "b1@10 ~@2 b1@4 f#1@7 ~ f#1@8",
  AC: "b1@11 ~ f#1@4 g#1@8 a#1@8", AD: "b1@10 ~@2 b1@4 f#1@7 ~ f#1@7 ~", AE: "b1@10 ~@2 b1@4 c#2@7 ~ d#2@8",
  AF: "e2@10 ~@2 e2@4 b1@6 ~@2 b1@7 ~", AG: "e2@11 ~ e2@4 b1@7 ~ c2@8", AH: "c#2@11 ~ c#2@4 g#1@7 ~ g#1@7 ~",
  AI: "c#2@5 ~ c#2@2 g#1@4 c#2@4", AJ: "f#2@5 ~ f#2@2 c#2@3 ~ c#2@4", AK: "f#2@10 ~@2 f#2@4 c#2@7 ~ c#2@8",
  AL: "b1@11 ~ b1@4 f#1@7 ~ f#1@7 ~", AM: "e2@10 ~@2 e2@4 b1@7 ~ e2@8", AN: "b1@11 ~ b1@4 f#1@7 ~ g#1@4 a#1@4",
  AO: "g#1@3 d#2 g#2@2 d#2@2", AP: "c#2@10 ~@2 c#2@4 g#1@7 ~ g#1@7 ~", AQ: "b1@10 ~@2 b1@3 ~ f#1@6 ~@2 f#1@7 ~",
  AR: "c#2@11 ~ c#2@4 g#1@7 ~ c#2@8", AS: "f#2@5 ~ f#2@2 c#2@4 f#2@4", AT: "b1@11 ~ b1@4 f#1@6 ~@2 f#1@8",
})).s("gm_electric_bass_finger").gain(0.3)

// chords · string ensemble 1 · "STRINGS"
const string_ensemble_1 = note(`<
  A B C@2 D E F G H I J@6 K L@2 M@3 N O@2 P Q@6 R S@6 T@5 U V@4 W@5 X@8 Y@2 Z L@2 M@3 N O@2 P Q@6 R AA@6 T@5 U V@4 W@5
  AB@8 Y@2 AC@8 ~
>`.pickRestart({
  A: "[d#5,b5]@4 ~@2 [d#5,b5]@4 ~ [d#4,d#5,b5]@5 [d#4,d#5,a#5]@5 ~ [d#4,d#5,a#5]@5 [d#4,d#5,a#5]@5, ~@5 d#4@5 ~@22", // G#m D#5
  B: "[d#4,b4,g#5]@6 ~ [b4,g#5]@4 ~ [b4,g#5]@4 ~ [b4,f#5]@15, ~@6 d#4@5 d#4@4 ~ d#4@15 ~", // G#m E B5
  C: "[[c#4,c#5,e5]@23 ~ [c#4,g#5,b5]@7 ~ c#4@29 ~@3, ~@31 [f#5,a#5]@31 ~@2]/2", // C#m C#7 F#
  D: "[f#4,f#5,a#5]@5 ~ [f#4,f#5,a#5]@4 ~ [f#4,f#5,a#5]@4 ~ [e4,e5,g#5]@5 ~ e5@4 ~ [e4,e5,g#5]@5, ~@21 [e4,g#5]@4 ~@7", // F# E
  E: "[d#4,d#5,f#5]@5 [d#4,d#5,f#5]@5 ~ d#5@5 a#3@7 a#3@8 ~, ~@10 [d#4,f#5]@5 ~ [c#5,e5]@16", // D#m C#m
  F: "[b3,b4,d#5]@23 ~ [f#5,a#5]@8, ~@23 f#4@8 ~", G: "[d#4,b4,g#5]@15 ~",
  H: "[b5,d#6]@4 ~@2 [b5,d#6]@4 ~ [b5,d#6]@4 ~ [a5,c#6]@4 ~@2 [a5,c#6]@4 ~ [a5,c#6]@5, b3 a3", // B A
  I: "[g#5,c6]@10 ~@2 [g#5,c6]@3 ~ [g#5,c6]@14 ~@2, g#3", // G#
  J: "[[e4,c#5,e5]@23 ~ f#4@7 ~ g#4@16 [e4,e5,g#5]@8 [f4,f5,a5]@7 ~ a#5@5 [f#5,a#5]@4 ~@2 [f#5,a#5]@4 ~ [f#5,a#5]@7 ~ [f#4,f#5]@7 ~ a#4@22 ~ [a#4,f#5]@8 ~ [d#5,b5]@62 ~@2, ~@23 [d#5,f#5]@8 [e5,g#5]@15 ~@17 f#5@5 ~@27 [f#5,a#5]@23 ~@74, ~@64 f#4@22 ~@41 [d#4,b4]@58 ~@7]/6", // C#m E F F# D#m G#m D#m E …
  K: "~@3 d#4", L: "[g#4@23 a#4@8 [e4,g#4]@24 [d#4,f#4]@9]/2",
  M: "[[c#4,e4]@30 ~@2 g#4@23 [f#4,a#4]@8 [g#4,b4]@12 ~ [f#4,a#4]@4 ~ [a#4,c#5]@7 [f#4,a#4]@8, ~@31 e4@22 ~@43]/3", // C#m F# G#m F# A#m F#
  N: "g#4@23 ~ d#4@7 ~, d#4@22 ~ f#4@9", O: "[[b3,d#4]@30 ~ [b4,d#5]@24 [a4,c#5]@9]/2", P: "[g#4,c5]@15 ~",
  Q: "[[c#5,e5]@23 [d#5,f#5]@8 [e5,g#5]@15 ~ [e4,g#4]@8 [f4,a4]@8 [f#4,a#4]@24 [e4,g#4]@8 [e4,f#4]@15 ~ [f#4,d#5]@8 [e4,a#4]@8 [d#4,b4]@61 ~@4]/6", // C#m D#m E F F# E Esus2 D#m …
  R: "[d#4,f#4]@23 [c#4,e4]@8 ~", // D#m C#m
  S: "[[e4,g4]@23 [d#4,f#4]@8 [c#4,e4]@13 ~@12 c#5@7 ~@24 [d#4,f#4]@7 ~@2 [d#4,f#4]@23 [c#4,e4,d#5,b5]@8 [b3,d#4,d#5,b5]@24 ~ [a#3,c#4]@7 [g#3,b3]@12 [e4,g#4]@3 ~@2 [e4,g#4]@16, ~@31 [d#5,f#5]@24 e5@8 [b4,d#5]@31 ~ [d#5,b5]@24 ~@32 [d#5,a#5]@8 [e5,g#5]@32 ~, ~@22 [b3,d#4]@21 ~@53]/6", // Em D#m C#m D#m C#m7 B A#m G#m …
  T: "[~@23 [e4,g#4]@6 ~@2 [e4,g#4]@24 [d#4,f#4]@7 ~@2 a#4@23 [e4,g#4]@8 ~@24 [b4,g#5]@8 ~ c#5@30 ~@2, ~@31 [c#5,e5]@63 ~ f#5@25 ~@7 a#5@30 ~@3, ~@63 f#4@23 ~@9 [d#4,f#4]@13 [c#4,e4]@44 ~@8, ~@48 a#4@11 ~@21]/5", // E D#m E C#m D#m C#m
  U: "[c#4,e4,c#5,e5]@23 [c4,d#4,c#5,e5]@8 [d#4,f#4,e5]", // C#m D#m
  V: "[~@12 [c#4,e4]@7 ~@7 [c#4,e4]@5 ~ [b3,d#4]@55 ~@8 [d#4,f#4]@24 ~ c#4@7 [e4,g4], c#5@23 e5@8 ~@97, ~@20 [c#4,e4]@4 a#4@7 [b4,d#5]@63 ~@25 e4@7 ~@2]/4", // C#m B D#m Em C#m B
  W: "[~@23 [d#4,f#4]@8 [c#4,e4]@16 ~ [b3,d#4]@7 [c#4,e4]@8 ~ b5@29 ~@26 [c#4,e4]@8 ~ c6@31 [c#4,e4], g5@31 f#5@32 [d#4,f#4]@30 ~@2 [d#4,f#4]@25 ~@7 [c4,d#4]@31 ~@2, ~@96 b5@33 ~@31]/5", // D#m C#m B C#m D#m Cm
  X: "[~@23 [d#4,f#4]@8 [e4,g#4]@30 ~@3 c#6@31 [g4,b4,b5]@32 ~ f#5@31 ~ g#5@30 ~ [c#4,e4,g#4,b5]@32 [c#4,f#4,a#4,a#5]@32 ~, c#6@61 ~@2 [e4,g#4]@31 ~@33 [d#4,f#4]@32 [c4,g#4]@31 ~@66]/8", // D#m E G C#m7 F# E D#m Fm
  Y: "[[d#4,b4]@31 ~, b5@57 ~@7]/2", Z: "f#4@23 ~ d#4@8",
  AA: "[[e4,g4]@23 [d#4,f#4]@8 [c#4,e4]@13 ~@12 c#5@7 ~@24 [d#4,f#4]@7 ~@2 [d#4,f#4]@23 [d#5,b5]@7 ~ [b3,d#4,d#5,b5]@24 ~ [a#3,c#4]@7 [g#3,b3]@12 [e4,g#4]@3 ~@2 [e4,g#4]@16, ~@31 [d#5,f#5]@24 e5@8 [b4,d#5]@31 ~ [d#5,b5]@23 ~@33 [d#5,a#5]@8 [e5,g#5]@32 ~, ~@44 [b3,d#4]@42 ~@33 [c#4,e4]@11 ~@62]/6", // Em D#m C#m D#m G#m B A#m G#m …
  AB: "[~@23 [d#4,f#4]@8 [e4,g#4]@30 ~@3 c#6@31 [g4,b4,b5]@32 ~ f#5@31 ~ g#5@30 ~ [c#4,e4,g#4,b5]@32 [f#4,a#4,a#5]@33, c#6@61 ~@2 [e4,g#4]@31 ~@33 [d#4,f#4]@32 [c4,g#4]@31 ~@33 c#4@30 ~@3]/8", // D#m E G C#m7 F# E D#m Fm
  AC: "[[d#4,b4]@31 ~]/2", // G#m
})).s("gm_string_ensemble_1").gain(0.25).pan(0.4)

// chords · acoustic guitar steel · "+MANDOLIN"
const acoustic_guitar_steel = note(`<
  A B C D E F G H I 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 AJ AK AL AM AN AO AP AQ AR AS AT AG
  AU AV AW AX AY AZ BA BB BC BD BE BF BG BH AT Q R S T U V W X Y Z AA AB AC AD AE AF ~@2 AG AH AI AJ AK AL AM AN AO AP
  AQ AR AS AT AG AU AV AW AX AY AZ BA BB BC BD BE BF BG BI BJ AT BJ AT BJ AT BJ AT BJ ~
>`.pickRestart({
  A: "[d#5,b5]!3 ~ [d#5,b5]!3 ~ [d#5,b5]!4 ~ [d#5,b5]!3 [d#5,a#5] ~ [d#5,a#5]!4 ~ [d#5,a#5]!4 ~ [d#5,a#5]!3 [b4,a#5]", // G#m D#5 Bmaj7
  B: "~ [b4,g#5]!4 ~ [b4,g#5]!3 ~ [b4,g#5]!3 ~ [b4,g#5]!3 [b4,f#5] ~ [b4,f#5]!4 ~ [b4,f#5]!4 ~ [b4,f#5]!3", // E B5
  C: "[c#5,e5] ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5] c#5 e5 [c#5,e5]!3 c#5 e5 [c#5,e5]!3 ~ [g#5,b5] g#5 [g#5,b5] b5 [g#5,b5]!2 g#5 [f#5,b5]", // C#m G#m B5
  D: "a#5 [f#5,a#5]!2 f#5 [f#5,a#5] ~ [f#5,a#5]!4 ~ [f#5,a#5]!4 ~ [f#5,a#5] f#5 [f#5,a#5]!2 a#5 [f#5,a#5] f#5 a#5 [f#5,a#5]!3 f#5 a#5 f#5 ~@2", // F#
  E: "[f#5,a#5]!3 ~ [f#5,a#5]!3 ~ [f#5,a#5]!4 ~ [f#5,a#5]!3 [e5,g#5] ~ [e5,g#5]!4 ~ [e5,g#5]!4 ~ [e5,g#5]!3 [d#5,g#5]", // F# E G#5
  F: "~ [d#5,f#5]!4 ~ [d#5,f#5]!3 ~ [d#5,f#5]!3 ~ [d#5,f#5]!3 [c#5,e5] ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!3", // D#m C#m
  G: "[b4,d#5] ~ [b4,d#5]!4 ~ [b4,d#5]!4 ~ [b4,d#5] b4 d#5 [b4,d#5]!3 b4 d#5 [b4,d#5]!3 ~ [f#5,a#5] f#5 [f#5,a#5] a#5 [f#5,a#5]!2 f#5 [b4,a#5]", // B F# Bmaj7
  H: "g#5 [b4,g#5]!2 b4 [b4,g#5] ~ [b4,g#5]!4 ~ [b4,g#5]!4 ~ [b4,g#5] b4 [b4,g#5]!2 g#5 [b4,g#5] b4 g#5 [b4,g#5]!3 b4 g#5 b4 ~@2", // E
  I: "[b5,d#6]!3 ~ [b5,d#6]!3 ~ [b5,d#6]!4 ~ [b5,d#6]!3 [a5,c#6] ~ [a5,c#6]!4 ~ [a5,c#6]!4 ~ [a5,c#6]!3 [g#5,c6]", // B A G#
  J: "~ [g#5,c6]!4 ~ [g#5,c6]!3 ~ [g#5,c6]!3 ~ [g#5,c6]!4 ~ [g#5,c6]!4 ~ [g#5,c6]!4 ~ [g#5,c6]!3", // G#
  K: "[c#5,e5] ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5] c#5 e5 [c#5,e5]!3 c#5 e5 [c#5,e5]!3 ~ [d#5,f#5] d#5 [d#5,f#5] f#5 [d#5,f#5]!2 d#5 [e5,f#5]", // C#m D#m Esus2
  L: "g#5 [e5,g#5]!2 e5 [e5,g#5] ~ [e5,g#5]!4 ~ [e5,g#5]!4 ~ [e5,g#5] e5 [e5,g#5]!2 g#5 [e5,g#5] e5 g#5 [f5,a5]!3 f5 a5 [f5,a5]!2 f#5", // E F
  M: "a#5 [f#5,a#5]!2 f#5 [f#5,a#5] ~ [f#5,a#5]!4 ~ [f#5,a#5]!4 ~ [f#5,a#5] f#5 [f#5,a#5]!2 a#5 [f#5,a#5] f#5 a#5 f#5!4 ~ f#5!3", // F#
  N: "a#5 [f#5,a#5]!2 f#5 [f#5,a#5] ~ [f#5,a#5]!4 ~ [f#5,a#5]!4 ~ [f#5,a#5] f#5 [f#5,a#5]!2 a#5 [f#5,a#5] f#5 a#5 f#5!4 ~ f#5!2 [d#5,b5]", // F# G#m
  O: "~ [d#5,b5]!4 ~ [d#5,b5]!4 ~ [d#5,b5]!4 ~ [d#5,b5]!4 d#5 [d#5,b5] [e5,g#5]@2 [d#5,f#5,b5] [d#5,b5]!3 ~ [d#5,b5]!2 ~, ~@20 f#5@2 [d#5,b5] ~@5 [c#5,e5]@2 ~@2", // G#m E B G#m C#m
  P: "[b4,d#5]!2 ~ [b4,d#5]!3 ~ [b4,d#5]!4 ~ [b4,d#5]!4 ~ [b4,d#5]!4 ~ [b4,d#5]!4 ~ [b4,d#5]!4 ~", // B
  Q: "~ f#4!4 ~ f#4!3 ~ f#4!4 ~ f#4!4 ~ f#4!3 ~ d#4!4 ~ d#4!2 [d#4,g#4]", // G#5
  R: "~ g#4!4 ~ g#4!3 ~ g#4!4 ~ g#4!4 ~ g#4!3 ~ a#4!4 ~ a#4!2 [e4,g#4]", // E
  S: "~ [e4,g#4]!4 ~ [e4,g#4]!3 ~ [e4,g#4]!3 ~ [e4,g#4]!4 ~ [e4,g#4]!4 ~ [d#4,f#4]!4 ~ [d#4,f#4]!3", // E D#m
  T: "[c#4,e4]!4 ~ [c#4,e4]!4 ~ [c#4,e4]!3 ~ [c#4,e4]!4 ~ [c#4,e4]!4 ~ [c#4,e4]!4 ~ [c#4,e4]!3", // C#m
  U: "~ [e4,g#4]!4 ~ [e4,g#4]!3 ~ [e4,g#4]!3 ~ [e4,g#4]!4 ~ [e4,g#4]!4 ~ [f#4,a#4]!4 ~ [f#4,a#4]!3", // E F#
  V: "~ [g#4,b4]!4 ~ [g#4,b4]!3 ~ [g#4,b4]!2 [f#4,a#4] ~ [f#4,a#4]!2 [a#4,c#5]!2 ~ [a#4,c#5]!4 ~ [f#4,a#4]!4 ~ [f#4,a#4]!3", // G#m F# A#m F#
  W: "~ [d#4,g#4]!4 ~ [d#4,g#4]!3 ~ [d#4,g#4]!3 ~ [d#4,g#4]!4 ~ [d#4,g#4]!4 ~ [d#4,f#4]!4 ~ [d#4,f#4]!2 f#4", // G#5 D#m
  X: "[b3,d#4]!4 ~ [b3,d#4]!4 ~ [b3,d#4]!3 ~ [b3,d#4]!4 ~ [b3,d#4]!4 ~ [b3,d#4]!4 ~ [b3,d#4]!3", // B
  Y: "~ [b4,d#5]!4 ~ [b4,d#5]!3 ~ [b4,d#5]!3 ~ [b4,d#5]!4 ~ [b4,d#5]!4 ~ [a4,c#5]!4 ~ [a4,c#5]!3", // B A
  Z: "~ [g#4,c5]!4 ~ [g#4,c5]!3 ~ [g#4,c5]!4 ~ [g#4,c5]!4 ~ [g#4,c5]!4 ~ [g#4,c5]!4 ~ [g#4,c5]!2", // G#
  AA: "[c#5,e5] ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!2 [d#5,f#5] ~ [d#5,f#5]!4 ~ [d#5,f#5]", // C#m D#m
  AB: "[e5,g#5]!3 ~ [e5,g#5]!5 ~ [e5,g#5]!3 ~ [e5,g#5]!2 [e4,g#4]!2 ~ [e4,g#4]!4 ~ [f4,a4]!4 ~ [f4,a4]!3", // E F
  AC: "~ [f#4,a#4]!4 ~ [f#4,a#4]!3 ~ [f#4,a#4]!3 ~ [f#4,a#4]!4 ~ [f#4,a#4]!4 ~ [e4,g#4]!4 ~ [e4,g#4]!3", // F# E
  AD: "~ [e4,f#4]!4 ~ [e4,f#4]!3 ~ [e4,f#4]!3 ~ [e4,f#4]!2 [f#4,d#5]!2 ~ [f#4,d#5]!4 ~ [f#4,d#5] [e4,a#4]!3 ~ [e4,a#4]!3", // Esus2 D#m Edim
  AE: "[d#4,b4] ~ [d#4,b4]!4 ~ [d#4,b4]!4 ~ [d#4,b4]!4 ~ [d#4,b4]!4 ~ [d#4,b4]!3 ~ [d#4,b4]!4 ~ [d#4,b4]", // G#m
  AF: "[d#4,b4]!3 ~ [d#4,b4]!5 ~ [d#4,b4]!3 ~ [d#4,b4]!4 ~ [d#4,b4]!4 ~ [d#4,b4]!4 ~ [d#4,b4]!3", // G#m
  AG: "[d#5,f#5]!2 ~ [d#5,f#5]!4 ~ [d#5,f#5]!4 ~ [d#5,f#5]!4 ~ [d#5,f#5]!3 ~ [d#5,f#5]!2 [c#5,e5]!2 ~ [c#5,e5]!4 ~", // D#m C#m
  AH: "[b4,d#5]!4 ~ [b4,d#5]!4 ~ [b4,d#5]!4 ~ [b4,d#5]!4 ~ [b4,d#5]!3 ~ [b4,d#5]!4 ~ [b4,d#5]!3", // B
  AI: "[d#5,b5] ~ [d#5,b5]!4 ~ [d#5,b5]!4 ~ [d#5,b5]!4 ~ [d#5,b5]!4 ~ [d#5,b5]!3 ~ [d#5,b5]!4 ~ [d#5,b5]", // G#m
  AJ: "[d#5,b5]!3 ~ [d#5,b5]!5 ~ [d#5,b5]!3 ~ [d#5,b5]!4 ~ [d#5,b5]!4 ~ [d#5,a#5]!4 ~ [d#5,a#5]!3", // G#m D#5
  AK: "[e5,g#5] ~ [e5,g#5]!5 ~ [e5,g#5]!4 ~ [e5,g#5]!4 ~ [e5,g#5]!3 ~ [e5,g#5]!5 ~ [e5,g#5]!4", // E
  AL: "~ [e5,g#5]!5 ~ [e5,g#5] [d#5,f#5]!3 ~ [d#5,f#5]!4 ~ [c#5,e5]!3 ~ [c#5,e5]!3 [b4,d#5]!2 ~ [b4,d#5]!3 ~ [b4,d#5]", // E D#m C#m B
  AM: "[c#5,e5] ~ [c#5,e5]!5 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!3 ~ [c#5,e5]!5 ~ [c#5,e5]!4", // C#m
  AN: "~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]", // C#m
  AO: "[a#4,f#5]!2 ~ [a#4,f#5]!4 ~ [a#4,f#5]!4 ~ [a#4,f#5]!4 ~ [a#4,f#5]!4 ~ [a#4,f#5] [b4,g#5]!4 ~ [b4,g#5]!3", // D#m E
  AP: "[c#5,a#5]!2 ~ [c#5,a#5]!4 ~ [c#5,a#5]!4 ~ [c#5,a#5]!4 ~ [c#5,a#5]!4 ~ [c#5,a#5]!4 ~ [c#5,a#5]!3 ~", // F#
  AQ: "[c#5,e5]!2 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!4", // C#m
  AR: "~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5] [a#4,e5]!3 ~ [a#4,e5]!4 ~ [a#4,e5]!4 ~ [a#4,e5]", // C#m A#dim
  AS: "~ [b4,d#5]!4 ~ [b4,d#5]!4 ~ [b4,d#5]!4 ~ [b4,d#5]!3 ~ [d#5,f#5]@2 [e5,g#5]@2 [d#5,f#5]@4 [c#5,e5]@3 ~", // B D#m E D#m C#m
  AT: "[b4,d#5]!2 ~ [b4,d#5]!4 ~ [b4,d#5]!4 ~ [b4,d#5]!4 ~ [b4,d#5]!4 ~ [b4,d#5]!4 ~ [b4,d#5]!3 ~", // B
  AU: "[e5,g5]!4 ~ [e5,g5]!4 ~ [e5,g5]!4 ~ [e5,g5]!4 ~ [e5,g5]!3 ~ [d#5,f#5]!4 ~ [d#5,f#5]!3", // Em D#m
  AV: "[c#5,e5] ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [b4,d#5]!4 ~ [b4,d#5]!2 [c#5,e5] ~ [c#5,e5]!4 ~ [c#5,e5]", // C#m B C#m
  AW: "[d#5,f#5]!3 ~ [d#5,f#5]!5 ~ [d#5,f#5]!3 ~ [d#5,f#5]!4 ~ [d#5,f#5]!4 ~ [d#5,f#5]!4 ~ [d#5,f#5]!3", // D#m
  AX: "[d#5,f#5] ~ [d#5,f#5]!5 ~ [d#5,f#5]!4 ~ [d#5,f#5]!4 ~ [d#5,f#5]!3 ~ [d#5,f#5]!2 [c#5,e5]!3 ~ [c#5,e5]!4", // D#m C#m
  AY: "~ [c5,d#5]!5 ~ [c5,d#5]!4 ~ [c5,d#5]!4 ~ [c5,d#5]!3 ~ [c5,d#5]!5 ~ [c5,d#5]!3 ~ [c5,d#5]", // Cm
  AZ: "[c#5,e5] ~ [c#5,e5]!5 ~ [c#5,e5]!4 ~ [c#5,e5]!4 ~ [c#5,e5]!3 ~ [c#5,e5]!2 [d#5,f#5]!3 ~ [d#5,f#5]!4", // C#m D#m
  BA: "~ [e5,g#5]!4 ~ [e5,g#5]!4 ~ [e5,g#5]!4 ~ [e5,g#5]!4 ~ [e5,g#5]!4 ~ [e5,g#5]!4 ~ [e5,g#5]", // E
  BB: "[e5,g#5]!2 ~ [e5,g#5]!4 ~ [e5,g#5]!4 ~ [e5,g#5]!4 ~ [e5,g#5]!4 ~ [e5,g#5]!5 ~ [e5,g#5]!3", // E
  BC: "[g5,b5]!2 ~ [g5,b5]!4 ~ [g5,b5]!4 ~ [g5,b5]!4 ~ [g5,b5]!4 ~ [g5,b5]!4 ~ [g5,b5]!3 ~", // G
  BD: "[d#5,f#5]!2 ~ [d#5,f#5]!4 ~ [d#5,f#5]!4 ~ [d#5,f#5]!4 ~ [d#5,f#5]!4 ~ [d#5,f#5]!4 ~ [d#5,f#5]!4", // D#m
  BE: "~ [c5,g#5]!4 ~ [c5,g#5]!4 ~ [c5,g#5]!4 ~ [c5,g#5]!4 ~ [c5,g#5]!4 ~ [c5,g#5]!4 ~ [c5,g#5]", // Fm
  BF: "[c#5,e5,g#5]!3 ~ [c#5,e5,g#5]!4 ~ [c#5,e5,g#5]!4 ~ [c#5,e5,g#5]!4 ~ [c#5,e5,g#5]!4 ~ [c#5,e5,g#5]!4 ~ [c#5,e5,g#5]!3", // C#m
  BG: "[c#5,f#5,a#5] ~ [c#5,f#5,a#5]!5 ~ [c#5,f#5,a#5]!3 ~ [c#5,f#5,a#5]!4 ~ [c#5,f#5,a#5]!4 ~ [c#5,f#5,a#5]!5 ~ [c#5,f#5,a#5]!3 ~", // F#
  BH: "[c#5,f#5,a#5] [d#5,b5]!3 ~ [d#5,b5]!4 ~ [d#5,b5]!5 ~ [d#5,b5]!3 ~ [d#5,f#5]@2 [e5,g#5]@2 [d#5,f#5]@4 [c#5,e5]@4", // F# G#m D#m E D#m C#m
  BI: "[c#5,f#5,a#5] [d#5,b5]!3 ~ [d#5,b5]!4 ~ [d#5,b5]!5 ~ [d#5,b5]!2 ~@14", // F# G#m
  BJ: "~@10 [d#5,f#5] [e5,g#5] [d#5,f#5]@2 [c#5,e5]@2", // D#m E D#m C#m
})).s("gm_acoustic_guitar_steel").gain(0.15).pan(0.4)

// chords · string ensemble 1 · "STRINGS"
const string_ensemble_1_2 = note(`<
  ~@14 A B ~@14 C D ~@6 E@3 ~@5 C D ~@14 C D ~@14 C D ~@6 E@3 ~@5 C D ~@15 C D C D C D C D C ~
>`.pickRestart({
  A: "~@10 [d#5,f#5] [e5,g#5] [d#5,f#5] ~ e5 ~, ~@28 c#5 ~@3", B: "[b4,d#5]@29 ~@3",
  C: "~@20 [d#5,f#5]@2 [e5,g#5]@2 [d#5,f#5]@3 ~ [c#5,e5]@3 ~", D: "[b4,d#5]@31 ~",
  E: "[~@31 [e5,g#5]@8 [d#5,f#5]@8 [c#5,e5]@8 d#5@8 [c#5,e5]@33, ~@55 b4@6 ~@35]/3", // E D#m C#m
})).s("gm_string_ensemble_1").gain(0.25).pan(0.9)

// chords · marimba
const marimba = note(`<
  A B C D E F G H I J K L M@2 N O ~@16 P Q R S T U V W X Y Z AA AB AC AD AE AF AG T AH AF AI AJ AK AL AM AD AN AJ AO AD
  AF ~@16 T Q R S T U V W X Y Z AA AB AC AD AE AF AG T AH AF AI AJ AK AL AM AD AN AJ AO AD AF AD AF AD AF AD AF AD AF ~
>`.pickRestart({
  A: "~@6 [b4,d#5]@4 ~@2 f#4@3 ~ [b4,d#5]@3 ~@5 f#4@4 ~@4", // B
  B: "[b4,d#5]@2 ~@2 [b4,d#5]@3 ~@5 f#4@3 ~ [b4,d#5]@4 ~@4 f#4@3 ~@5", // B
  C: "[c#5,e5]@3 ~ [c#5,e5]@3 ~@5 g#4@3 ~ [c#5,e5]@3 ~@5 g#4@2 ~@6", // C#m
  D: "[c#5,e5]@2 ~@2 [c#5,e5]@3 ~@5 f#4@3 ~ [c#5,e5]@3 ~@5 f#4@3 ~@5", // C#m
  E: "[c#5,e5]@2 ~@2 [c#5,e5]@3 ~@5 f#4@3 ~ [c#5,e5]@3 ~@5 f#4@4 ~@4", // C#m
  F: "[a#4,c#5]@2 ~@2 [a#4,c#5]@2 ~@6 f#4@3 ~ [a#4,c#5]@3 ~@5 f#4@3 ~@5", // A#m
  G: "[b4,d#5]@2 ~@2 [b4,d#5]@3 ~@5 f#4@2 ~@2 [b4,d#5]@2 ~@6 f#4@2 ~@6", // B
  H: "[b4,d#5]@2 ~@2 [b4,d#5]@2 ~@6 f#4@3 ~ [b4,d#5]@3 ~@5 f#4@3 ~@5", // B
  I: "[b4,d#5]@2 ~@2 [b4,d#5]@3 ~@5 f#4@3 ~ [b4,d#5]@3 ~@5 f#4@2 ~@6", // B
  J: "[g#4,c5]@2 ~@2 [g#4,c5]@3 ~@5 d#4@3 ~ [g#4,c5]@3 ~@5 d#4@3 ~@5", // G#
  K: "[c#5,e5]@2 ~@2 [c#5,e5]@3 ~@5 g#4@2 ~@2 [c#5,e5]@3 ~@5 g#4@3 ~@5", // C#m
  L: "[c#5,e5]@2 ~@2 [c#5,e5]@3 ~@5 g#4@2 ~@2 [e4,g#4]@5 ~@3 [f4,a4]@4 ~@4", // C#m E F
  M: "[a#4,c#5]@2 ~@2 [a#4,c#5]@3 ~@5 f#4@3 ~ [a#4,c#5]@3 ~@5 f#4@3 ~@5", // A#m
  N: "[b4,d#5]@2 ~@2 [b4,d#5]@3 ~@5 f#4@2 ~@2 [b4,d#5]@4 ~@4 f#4@3 ~@5", // B
  O: "[b4,d#5]@2 ~@2 [b4,d#5]@3 ~@5 f#4@2 ~@2 [b4,d#5]@3 ~@5 f#4@2 ~@6", // B
  P: "~@4 [b4,d#5]@4 ~@4 f#4@3 ~ [b4,d#5]@5 ~@3 f#4@5 ~@3", // B
  Q: "[g4,e5]@3 ~ [g4,e5]@5 ~@3 b4@3 ~ [g4,e5]@6 ~@2 b4@6 ~@2", // C
  R: "[b4,d#5]@3 ~ [b4,d#5]@5 ~@3 f#4@3 ~ [b4,d#5]@6 ~@2 f#4@6 ~@2", // B
  S: "[b4,d#5]@3 ~ [b4,d#5]@4 ~@4 f#4@3 ~ [b4,d#5]@4 ~@4 f#4@5 ~@3", // B
  T: "[b4,d#5]@3 ~ [b4,d#5]@4 ~@4 f#4@3 ~ [b4,d#5]@5 ~@3 f#4@5 ~@3", // B
  U: "[b4,d#5]@3 ~ [b4,d#5]@4 ~@4 f#4@3 ~ [b4,d#5]@5 ~@3 f#4@4 ~@4", // B
  V: "[g#4,b4]@3 ~ [g#4,b4]@4 ~@4 e4@3 ~ [g#4,b4]@4 ~@4 e4@3 ~@5", // G#m
  W: "[g#4,b4]@3 ~ [g#4,b4]@3 ~@5 e4@3 ~ [g#4,b4]@4 ~@4 e4@4 ~@4", // G#m
  X: "[e4,g#4]@3 ~ [e4,g#4]@4 ~@4 c#4@3 ~ [e4,g#4]@4 ~@4 c#4@3 ~@5", // E
  Y: "[e4,c#5]@3 ~ [e4,c#5]@4 ~@4 g#4@3 ~ [e4,c#5]@5 ~@3 g#4@5 ~@3", // C#m
  Z: "[a#4,c#5]@3 ~ [a#4,c#5]@4 ~@4 f#4@3 ~ [a#4,c#5]@4 ~@4 f#4@5 ~@3", // A#m
  AA: "[a#4,c#5]@3 ~ [a#4,c#5]@3 ~@5 f#4@3 ~ [a#4,c#5]@4 ~@4 f#4@3 ~@5", // A#m
  AB: "[a#4,c#5]@3 ~ [a#4,c#5]@3 ~@5 f#4@3 ~ [a#4,c#5]@4 ~@4 f#4@4 ~@4", // A#m
  AC: "[a#4,c#5]@3 ~ [a#4,c#5]@3 ~@5 f#4@3 ~ [a#4,c#5]@4 ~@4 f#4@5 ~@3", // A#m
  AD: "[b4,d#5]@3 ~ [b4,d#5]@4 ~@4 f#4@3 ~ [b4,d#5]@4 ~@4 f#4@4 ~@4", // B
  AE: "[b4,d#5]@3 ~ [b4,d#5]@3 ~@5 f#4@3 ~ [b4,d#5]@3 ~@5 f#4@2 ~@6", // B
  AF: "[b4,d#5]@3 ~ [b4,d#5]@4 ~@4 f#4@3 ~ [b4,d#5]@4 ~@4 f#4@3 ~@5", // B
  AG: "[g4,e5]@3 ~ [g4,e5]@4 ~@4 b4@3 ~ [g4,e5]@5 ~@3 b4@3 ~@5", // C
  AH: "[b4,d#5]@3 ~ [b4,d#5]@3 ~@5 f#4@3 ~ [b4,d#5]@4 ~@4 f#4@4 ~@4", // B
  AI: "[g#4,c5]@3 ~ [g#4,c5]@4 ~@4 d#4@3 ~ [g#4,c5]@4 ~@4 d#4@3 ~@5", // G#
  AJ: "[c#5,e5]@3 ~ [c#5,e5]@4 ~@4 g#4@3 ~ [c#5,e5]@4 ~@4 g#4@4 ~@4", // C#m
  AK: "[c#5,e5]@2 ~@2 [c#5,e5]@3 ~@5 g#4@3 ~ [c#5,e5]@3 ~@5 g#4@3 ~@5", // C#m
  AL: "[c#5,e5]@3 ~ [c#5,e5]@4 ~@4 g#4@2 ~@2 [c#5,e5]@4 ~@4 g#4@2 ~@6", // C#m
  AM: "[g4,e5]@3 ~ [g4,e5]@4 ~@4 b4@3 ~ [g4,e5]@4 ~@4 b4@5 ~@3", // C
  AN: "[g#4,c5]@3 ~ [g#4,c5]@4 ~@4 d#4@3 ~ [g#4,c5]@4 ~@4 d#4@4 ~@4", // G#
  AO: "[c#5,e5]@2 ~@2 [c#5,e5]@4 ~@4 f#4@3 ~ [c#5,e5]@4 ~@4 f#4@4 ~@4", // C#m
})).s("gm_marimba").gain(0.3).pan(0.8)

// chords · electric guitar clean · "CLEAN GTR"
const electric_guitar_clean = note(`<
  A@2 B C@3 A@3 D B@2 C@2 A@2 ~@16 E F G E@3 H I J@2 K L K@2 M@2 E F E@3 N J@3 F E N J K E@2 ~@16 E F G E@3 H I J@2 K L
  K@2 M@2 E F E@3 N J@3 F E N J K E@10 ~
>`.pickRestart({
  A: "~@8 [f#3,b3,d#4] ~@15 [f#3,b3,d#4] ~@7", B: "~@8 [g#3,c#4,e4] ~@15 [g#3,c#4,e4] ~@7",
  C: "~@8 [f#3,a#3,e4] ~@15 [f#3,a#3,e4] ~@7", D: "~@8 [g#3,c4,d#4] ~@15 [g#3,c4,d#4] ~@7",
  E: "~@4 [f#3,b3,d#4] ~@7 [f#3,b3,d#4] ~@3", F: "~@4 [g3,b3,e4] ~@7 [g3,b3,e4] ~@3",
  G: "~@8 [f#3,b3,d#4]@2 ~@14 [f#3,b3,d#4] ~@7", H: "~@4 [g#3,b3,e4] ~@7 [g#3,b3,e4] ~@3",
  I: "~@8 [g#3,b3,e4] ~@15 [g#3,b3,e4] ~@7", J: "~@4 [g#3,c#4,e4] ~@7 [g#3,c#4,e4] ~@3",
  K: "~@4 [f#3,a#3,e4] ~@7 [f#3,a#3,e4] ~@3", L: "~@8 [f#3,a#3,e4] ~@15 [f#3,a#3,e4]@2 ~@6",
// … 52 more lines

More by Corry Konings