Strudelify

Anywhere for You

Backstreet Boys

KeyG majorTempo130 bpm
0:00/0:00
// Anywhere for You — Backstreet Boys
// 130 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 149 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(130/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 · synth bass 2
const bass = note(`<
  ~@3 A B C D E F G H I J K D E L K H M ~@7 N O P Q R S T E U B C D E F G H V D W X Y D C Z AA D AB AC AD AE AF E AG AH
  AI E AJ K AK AL O P Q R S T E U B C D E F G H V D W X Y D C Z AA D AB AM AN AO AP AQ AR AS AT AU AV AW AX AB AY AZ BA
  BB BC AB BD BE BF AB AX BG BH AB AV AW AX AB AY AZ BA BB BC AB BD BE BI@2 BJ@3 BK BL@5 BM@4 ~@2
>`.pickRestart({
  A: "~ g1", B: "c1", C: "e1@13 ~ e1@2", D: "f1@13 ~ f1@2", E: "g1", F: "c2@6 b1@8 a1 ~", G: "a1@4 a2 e2 c2 a1",
  H: "f1@6 ~ f1", I: "g1 d1", J: "c1@12 ~@2 c1 ~", K: "c1 e1", L: "c1@13 ~ c1 ~", M: "g1@7 ~ g1@7 ~",
  N: "~ f2 a#2 c3 a2 f2 c2 a#1", O: "a#1@12 ~@2 a#1 ~", P: "a#1@13 ~@3", Q: "a1@13 ~ a1 ~", R: "a1 ~",
  S: "g#1@13 ~ g#1 ~", T: "g#1@3 ~@13", U: "a1@8 b1@7 ~", V: "g1@7 g1", W: "g1@6 a1 b1", X: "c2 b1", Y: "a1@6 e1 c1",
  Z: "d1@15 ~", AA: "d1@5 ~ d1@2 e1@5 ~ e1@2", AB: "g1@13 ~ g1@2", AC: "c2@13 ~ c2 ~", AD: "c2 e2", AE: "f2@7 d2",
  AF: "g2", AG: "c2@13 ~ c1 ~", AH: "c1@7 c2", AI: "g1@13 ~ g1 ~", AJ: "c2@14 c1 ~", AK: "g1@14 g1 ~",
  AL: "~ f2 a#2 c3 a2@2 f2@2", AM: "c2@13 ~ g1@2", AN: "c2 ~ c2@2 ~@4 c2@6 ~@2", AO: "d2@13 ~ d2 ~", AP: "b1@5 d2@3",
  AQ: "a1@3 g2 e2 c#2 a1@2", AR: "g1@4 a1@3 ~", AS: "d2@6 d3@2 c#3@2 a2@2 f#2@3 ~", AT: "b1@3 d2@3 e2@2",
  AU: "a1@5 ~ a1@2", AV: "b1 c#2", AW: "d1", AX: "f#1@13 ~ f#1@2", AY: "a1", AZ: "d2@6 c#2@8 b1 ~",
  BA: "b1@4 b2 f#2 d2 b1", BB: "g1@6 ~ g1", BC: "a1@7 a1", BD: "a1@6 b1 c#2", BE: "d2 c#2", BF: "b1@6 f#1 d1",
  BG: "e1@15 ~", BH: "e1@5 ~ e1@2 f#1@5 ~ f#1@2", BI: "[b1@12 ~ f#1@2 d1@3 ~@14]/2",
  BJ: "[~ g1@14 g1@2 f#1@13 ~ f#1@2 e1@15]/3", BK: "~@2 b1 d2 g2 f#2 d2 a1",
  BL: "[g1 ~ g1@16 a1@17 g1@16 f#1@17 ~ f3@3 c3@2 a2@3 f2@3]/5", BM: "[c2@3 f1@3 e1@8 ~ e1@8 d1@37 ~@4]/4",
})).s("gm_synth_bass_2").gain(0.64)

// chords · vibraphone
const vibraphone = note(`<
  A@2 B C D@2 E F G@2 H I J@2 K L M@2 N O ~ P Q@2 R S T U V@2 W@2 X Y Z AA D@2 E F G@2 H I AB AC AD AE AF AG AH AI AJ@2
  AK AL AM AN@2 AO AP AQ AR AO AS AT AU AV@2 AW@2 X Y Z AA D@2 E F G@2 H I AB AC AD AE AF AG AH AI AJ@2 AX@2 AY AZ BA BB
  BC BD BE BF BG@2 BH BI BJ@2 BK BL BM BN BO BP BQ BR BS BT BM BF BG@2 BH BI BJ@2 BK BL BM BN BO BU@2 BV BW BX@7 BY@5 ~
>`.pickRestart({
  A: "[c5 g4 c5 d5@2 g5@2 d5@2 g4 c5 d5@2 g5 d5 g4]/2", B: "c5 g4 c5 d5@2 g5@2 d5", C: "d5 g4 c5 d5@2 g4 c5 d5",
  D: "[[c3,a3,d4,f4]@4 [g3,c4,e4] ~@5 [g3,b3,d4]@4 ~@14 g4@4, c2@7 g3@4 g3@5, ~@3 [c4,e4]@4 e4@9, ~@3 g3@2 ~@2 c4@5 ~@4, ~@8 c3@7 ~ e2@8 [e2,c4]@8]/2", // Dm7 C G C
  E: "[c4,g4]@4 f4 ~@5 e4@6, a3, f2!2, ~@3 [c4,f4]@5", F: "[g2,a3,c4,e4]@4 [g2,g3,b3,d4]@3 ~",
  G: "[e4@3 ~@12 e4, [c3,g3,c4,f4,g4,c5] [b2,b3,d4,g4,c5] [a2,a4]@2, ~@3 e4@4 e4@7 [c4,g4]@2, ~@8 c4@5 a3@3, ~@8 a3@3 g3@5]/2", // Csus4 G A C5
  H: "~@2 f4 ~@3 e4@2, [f2,g4], e4@5 c4@3, c4 a3, [f3,a3]@3 [f3,f4]@5", // Fsus2 F
  I: "[g2,d3,g3,a3]@3 ~@4 b3, [b3,d4,e4] d3, ~@3 g2@5, ~@5 g3@3, ~@3 a3", // Gsus2 E7
  J: "[[c3,g3,c4,e4,f4]@4 [g3,e4] ~ g3@2 ~@22 e4@2, c2@7 e4@2 ~ c4@3 g3@3, ~@3 e4@3 c4@3 g3@2 e4@3 [c4,g4]@2, ~@3 c4@2 [g3,d4]@3 e2@8, ~ c3@3]/2", // C C5 G5
  K: "[a3,c4,f4,g4]@4 [a3,f4] ~@9 f4@2, f2, f3@3 f4@3 d4@2, ~@3 d4@2 [a3,e4]@3, ~@3 a3 f3@4", // F Dm A5
  L: "[g3,a3,c4,e4] [g3,a3,b3,d4], g2", // Am7 G
  M: "[[g3,e4]@2 [g3,e4] g3 ~@11 c4, c2@7 e4@4 c4@3 [g3,g4]@2, [c3,c4,f4]@3 e4@3 c4@4 g3@3 c3@3, ~@3 c4@2 [g3,d4]@4 c3@3 e4@4, ~ c3 e2@2]/2", // C G F5 G5
  N: "[a3,f4]@4 [a3,f4] ~ a3@2 ~@6 f4@2, f2, [f3,c4,g4]@3 f4@3 d4@2, ~@3 d4@2 [a3,e4]@3, ~ f3", // Dm Fsus2 A5
  O: "[g2,g3,a3,b3,d4]@8 [g2,g3,a3,b3,d4]@7 ~", P: "~@10 g3@2 a#3@3 ~",
  Q: "[~@14 c5@8 a4@4 f4@5 ~, [g2,a#2,d3,a#3]@15 ~]/2", R: "~ [d4,e4]@15, [c3,g3,c4]",
  S: "~@2 [f4,a4]@3 ~ [e4,g4]@4 [d4,f4]@5 ~", T: "[g2,d3,g3,a#3]", U: "~ f3 a#3 c4 a3@2 f3@2",
  V: "[[a#3,d4]@5 ~@2 f4@2 ~@4 d4@3, a#2@31 ~, [f4,a4]@6 d4@5 f4@5, ~@10 a#3@21 ~, ~@18 a4@13 ~]/2", // A# F
  W: "[c4@10 ~@4 e4@4 ~@4 c4@2 ~@4 e4@3 ~, a2@15 ~, [e4,g4]@12 c4@8 e4@6 c4@5 ~, a3@4 ~ a3@6 ~ a3@3 ~, ~@9 g4@2 ~@5]/2", // Em
  X: "c4@5 g#3 c4 g#3, g#2, [d#4,g4]@3 ~, g#3 ~", // D#
  Y: "[c4,d#4,g4] ~ [c4,d#4] ~@3 [c4,d#4] ~@3 c4@2 g#3@2 g#2@2, ~@10 d#4@4 c4 ~", Z: "[g2,g3,c4,d4,g4]",
  AA: "[a2,a3,c4,f4]@8 [g2,b3,d4,g4]@7 ~", AB: "~ c4@3 [f3,g3,a3,c4]@4, [f2,c3], [f3,g3,a3] ~",
  AC: "a3 [a3,d4]@3 a3@2 ~ b3, [g2,d3], [g3,b3] [g3,d4], ~@4 b3@3 ~, ~@3 a3", AD: "[c3,g3,c4,e4] [b2,g3,b3,d4]",
  AE: "e3 ~@5 a3@2, c4, a3@3 ~, a2!2, ~ e3@4 e3@3", AF: "g3 [g3,c4]@3 [f3,g3,a3,c4]@4, [f2,c3], [f3,a3] ~",
  AG: "e3@3 ~@3 e4@2, e2, e4@5 b3@3, b3 g3, g3@3 e3@5", AH: "d3@3 ~@4 d3, d2, d4@5 a3@3, a3 f3, f3@3 d3@3 d4@2",
  AI: "[d2,d3,f3,a3,d4] [e2,e3,g3,b3]", // Dm Em
  AJ: "[~ c4@3 [a3,c4]@4 [g2,a3,c4]@4 [g3,b3]@3 ~, [f2,c3]@23 ~@9, [f3,g3,a3]@8 [f3,g3]@15 ~@9]/2", // Am Am7 G F5 F Fsus2
  AK: "c3@2 ~ g3, [c2,g2,c4], g3@3 ~, e3@5 e3@3, ~ c3", AL: "[c2,g2,c3,e3,g3,c4] [e2,e3,g3,c4]",
  AM: "f3@5 ~ g3@2, [f2,c3,a3,c4], g3@3 ~, ~@5 f3@3", AN: "[[g2,d3,g3,a3,b3]@31 ~]/2",
  AO: "c3@5 ~@2 g3, c4, g3@7 ~, e3@3 e3, ~@5 c3@3", AP: "c3@3 ~@3 c4@2, c4@3 ~, g3@5 g3@3, e3!2, ~@3 c3@5",
  AQ: "g2@10 g2@4 [g3,a#3,d4] ~, [g3,a#3,d4]@7 ~", AR: "~@2 [g3,a#3,d4] ~@3 g3@2 ~@4 a#3@4, ~@3 [a#3,d4]@2 g3@3, ~ g2",
  AS: "[c3,e3,g3,c4] [e3,g3,c4,e4]", AT: "[g3,a#3,d4]@5 ~ a#3@2, f4@3 ~, g4@4 ~ g3@3",
  AU: "~ f3 ~ c4 a3@2 f3@2, [g2,d4,f4]@8 [a2,e4,g4]@7 ~, [a#3,g4]@3 ~@5", // G7 A7 D#
  AV: "[[a#3,d4]@5 ~@2 f4@2 ~@4 d4@3, a#2 ~, [f4,a4]@12 d4@6 a4@13 ~, ~@5 a#3@4 ~@2 f4@5]/2", // A# F
  AW: "[[a2,c4]@10 ~@4 e4@4 ~@4 c4@2 ~@4 e4@3 ~, [e4,g4]@12 c4@8 e4@6 c4@5 ~, a3@4 ~ a3@6 ~ a3@3 ~, ~@9 g4@2 ~@5]/2", // Am Em
  AX: "[c2,g2,c3,e3,g3,c4]/2", AY: "[d3,f#3,a3,d4]@4 d3@3 d3, ~ [f#3,a3,d4]",
  AZ: "b2@3 ~@4 b2, d4@3 d4, a3@5 a3@3, f#3!2, ~@3 b2@4 ~",
  BA: "[e3,a3]@3 [e3,a3]@2 e3@2 e3, a2, c#4@5 [a3,c#4]@3, ~@3 d4@5", BB: "[g2,d3,g3,b3]@4 a2@3 a2, ~ [e3,a3,c#4]",
  BC: "d3@3 ~@4 d3, d4@3 d4, a3@5 a3@3, f#3!2, ~@3 d3@4 ~",
  BD: "[f#3,a3,d4] ~ [f#3,a3,d4] ~@11 b2@2, b2@3 d4@5, ~@3 a3@3 a3@2, ~@3 f#3@2 f#3@3, ~@4 b2@3 ~", // D
  BE: "a2@3 ~@4 c#4, c#4@7 ~, a3@5 a3@3, e3!2, ~@3 a2@5", BF: "[g2,d3,g3,b3]@8 [a2,e3,a3,c#4]@7 ~",
  BG: "[[d3,b3,e4,g4]@4 [a3,d4,f#4] ~@5 [a3,c#4,e4]@4 ~@14 a4@4, d2@7 a3@4 a3@5, ~@3 [d4,f#4]@4 f#4@9, ~@3 a3@2 ~@2 d4@5 ~@4, ~@8 d3@7 ~ f#2@8 [f#2,d4]@8]/2", // Em7 D A D
  BH: "[d4,a4]@4 g4 ~@5 f#4@6, b3, g2!2, ~@3 [d4,g4]@5", BI: "[a2,b3,d4,f#4]@4 [a2,a3,c#4,e4]@3 ~",
  BJ: "[f#4@3 ~@12 f#4, [d3,a3,d4,g4,a4,d5] [c#3,c#4,e4,a4,d5] [b2,b4]@2, ~@3 f#4@4 f#4@7 [d4,a4]@2, ~@8 d4@5 b3@3, ~@8 b3@3 a3@5]/2", // Dsus4 A B D5
  BK: "~@2 g4 ~@3 f#4@2, [g2,a4], f#4@5 d4@3, d4 b3, [g3,b3]@3 [g3,g4]@5", // Gsus2 G
  BL: "[a2,e3,a3,b3]@3 ~@4 c#4, [c#4,e4,f#4] e3, ~@3 a2@5, ~@5 a3@3, ~@3 b3", // Asus2 F#7
  BM: "~ d4@3 [g3,a3,b3,d4]@4, [g2,d3], [g3,a3,b3] ~", // G G5 G
  BN: "b3 [b3,e4]@3 b3@2 ~ c#4, [a2,e3], [a3,c#4] [a3,e4], ~@4 c#4@3 ~, ~@3 b3", BO: "[d3,a3,d4,f#4] [c#3,a3,c#4,e4]",
  BP: "f#3 ~@5 b3@2, d4, b3@3 ~, b2!2, ~ f#3@4 f#3@3", BQ: "a3 [a3,d4]@3 [g3,a3,b3,d4]@4, [g2,d3], [g3,b3] ~",
  BR: "f#3@3 ~@3 f#4@2, f#2, f#4@5 c#4@3, c#4 a3, a3@3 f#3@5", BS: "e3@3 ~@4 e3, e2, e4@5 b3@3, b3 g3, g3@3 e3@3 e4@2",
  BT: "[e2,e3,g3,b3,e4] [f#2,f#3,a3,c#4]", BU: "[f#3@2 ~@11 b3@19, d4, b3@3 ~@5, b2 b2@3, ~ f#3@4 f#3@11]/2",
  BV: "~ a3@2 [a3,d4]@6 ~@4 a4@3, ~ [g2,d3]@15, ~ [g3,b3]@8 [g3,a3,b3,d4]@7", // D5 G5 G
  BW: "~ f#3@6 ~@6 f#4@3, ~ [f#2,g4]@15, ~ f#4@10 c#4@5, ~ c#4@8 a3@7, ~ a3@6 [f#3,d4]@9", // Gmaj7 D
  BX: "[~ e3@6 ~@39 [a3,b3]@4 ~@13 [a3,b3,c#4,e4]@4 [g3,a3]@12 [g3,a3]@4 [f#3,a3,d4]@13 [f#3,a3,d4]@5 [f2,f3,a3,d4]@8 [f2,f3,a3,d4]@2 ~, ~ e2@21 d4@2 g4@26 a2@17 [g2,d3,b3,d4]@17 ~@28, ~ e4@10 b3@5 e3@18 [a3,b3]@8 g3@8 [a3,b3,c#4]@12 ~@50, ~ b3@8 g3@11 b3@6 f#4@25 ~@61, ~ g3@6 e3@7 e4@14 d4@2 a3@2 g3@2 [g2,d4]@17 ~@8 e3@9 ~@15 f#2@18 ~@11]/7", // Asus2 A Gsus2 D Dm G Asus2 A …
  BY: "[[f2,f3,a3,d4]@3 [f2,f3,a3,d4]@3 [e2,e3,g3,b3,d4]@9 [e2,e3,g3,b3,d4]@8 d2@18 ~@20 d6@19, ~@23 d4@22 f#3@7 f#4@3 a4 d5 e5 f#5 a5@20 ~, ~@23 [f#3,a3]@20 d3 e3@6 d4 e4@29, ~@23 [a2,d3]@19 a2@7 a3@31, ~@41 d2@5 a3 d3@6 a4 d4@26]/5", // Dm Em7 F#m D5
})).s("gm_vibraphone").gain(0.08)

// other · lead 8 bass lead
const lead_8_bass_lead = note(`<
  ~@3 A B@2 C D E@2 F G H ~@22 I B@2 C D E@2 F G H ~@29 I B@2 C D E@2 F G H ~@18 J K@2 L M N@2 O P Q ~@8 J K@2 L M N@2 O
  P Q ~@19
>`.pickRestart({
  A: "~@8 c4@4 d4@3 ~", B: "[f4@4 e4 ~ e4@3 ~ d4@3 ~ e4@10 c4@4 g4@2 ~@2]/2", C: "g4@4 f4 ~ f4@4 e4@5 ~",
  D: "e4@6 ~ e4 d4@6 ~@2, ~@3 f4 c4@2 ~@2", E: "[f4@4 e4 ~ e4@4 d4@3 ~ e4@7 ~ c4 ~ c4@3 ~ g4@2 ~@2]/2",
  F: "g4@4 f4 ~ f4@6 e4@3 ~", G: "e4@5 ~@2 e4 d4@8, ~@3 f4 ~@4", H: "c4@15 ~", I: "c4 d4", J: "d4 e4",
  K: "[g4@4 f#4 ~ f#4@3 ~ e4@3 ~ f#4@10 d4@4 a4@2 ~@2]/2", L: "a4@4 g4 ~ g4@4 f#4@5 ~",
  M: "f#4@6 ~ f#4 e4@6 ~@2, ~@3 g4 d4@2 ~@2", N: "[g4@4 f#4 ~ f#4@4 e4@3 ~ f#4@7 ~ d4 ~ d4@3 ~ a4@2 ~@2]/2",
  O: "a4@4 g4 ~ g4@6 f#4@3 ~", P: "f#4@5 ~@2 f#4 e4@8, ~@3 g4 ~@4", Q: "d4@15 ~",
})).s("gm_lead_8_bass_lead").gain(0.35).pan(0.7)

// drums · kick
const kick = s("bd").struct(`<
  ~@4 A B A C A B A B A B A C A B A B A B A B A B A C A B A B A B A B A B A C A B A B A B A C A B A B A B A C A ~@2 A B
  A C A B A@2 B A C A B A@2 B A C A B A@2 B A C A B A@2 B A C A B A@3 B A C A B A@3 B A C A B A B A B A C A B A B A B
  A@2 B A C A B A B ~ D B ~@16
>`.pickRestart({
  A: "x ~@6 x", B: "x", C: "x!2 ~@6", D: "x!2",
})).gain(0.64)

// drums · rim
const rim = s("rim").struct("<~@4 A@31 ~ A@17 B A@3 ~@2 A@33 B A ~ A@7 ~ A@28 ~@18>".pickRestart({
  A: "~ x", B: "~@4 x!2 ~@2",
})).gain(0.48)

// drums · hihat
const hihat = s("hh").struct(`<
  ~@4 A B A@2 C A@2 B A@2 C A@2 D A B C A C E C B A@3 B A F A E C@2 A B A@2 C A@2 B A B A@2 C A@2 B A B A@2 C A@3 B A@2
  C A@3 B A@2 C A@3 B A@2 C A@3 B A@2 C A@3 B A@2 C A@4 B A@2 C A@4 B A@2 C A@2 B A B A@2 C A@2 B A B A@2 B A@2 C A@2 B
  A ~@18
>`.pickRestart({
  A: "x ~@3 x ~@2 x", B: "x ~@2 x!2 ~@3", C: "x!2", D: "x!2 ~@2 x ~@3", E: "x!2 ~@2 x ~@2 x", F: "x!2 ~ x!2 ~@3",
})).gain(0.48)

// drums · mid tom
const mid_tom = s("mt").struct("<~@74 A ~@19 B ~@7 C ~@17 D ~@28>".pickRestart({
  A: "~@6 x!2", B: "~@3 x", C: "~@12 x!2 ~@2", D: "~@13 x!2 ~",
})).gain(0.56)

// drums · open hat
const open_hat = s("oh").struct(`<
  ~@5 A ~@2 A ~@2 B ~@2 A ~@4 B ~@2 A ~@2 A ~@3 A ~ C ~@2 A ~@2 A ~@2 A ~@2 B ~ A ~@2 A ~@2 B ~ A ~@2 A ~@3 A ~@2 A ~@3
  A ~@2 A ~@3 A ~@2 A ~@3 A ~@2 A ~@3 A ~@2 A ~@4 A ~@2 A ~@4 A ~@2 A ~@2 B ~ A ~@2 A ~@2 B ~ A ~@2 A ~@2 A ~@2 B ~@19
>`.pickRestart({
  A: "~@7 x", B: "~@3 x", C: "~@5 x ~@2",
})).gain(0.48)

// drums · high tom
const high_tom = s("ht").struct("<~@35 A ~@38 B ~@19 C ~@7 D ~@17 E ~@10 F ~@17>".pickRestart({
  A: "~ x!2 ~@2 x!3", B: "~ x!2 ~ x!2 ~@2", C: "x ~@2 x ~@4 x ~@7", D: "x ~@2 x ~@2 x ~ x ~@2 x ~@4",
  E: "x ~ x!3 ~ x ~ x ~ x!3 ~@3", F: "~ x ~ x",
})).gain(0.56)

// drums · crash
const crash = s("cr").struct(`<
  ~@4 A ~@6 A@2 ~@3 A ~@19 A ~@11 A ~@5 B ~@3 A ~@7 C A ~@6 D A ~@19 A ~@2 E A ~@2 A@2 ~@9 A@2 ~@4 A ~ A ~@9 D A ~@6 F
  ~@4 G ~@4
>`.pickRestart({
  A: "x", B: "x ~@2 x ~@4", C: "~ x", D: "x!2", E: "~@7 x", F: "~ x ~@6", G: "~@7 x ~@8",
})).gain(0.32)

// drums · ride
const ride = s("rd").struct("<~@144 [~@7 x!9] [x!16]!2 [x!15 ~] ~>").gain(0.16)

// drums · bongos
const bongos = s("bongo:18").struct(`<
  ~@36 A ~ B ~ B ~ C ~ D ~ C A ~ B E ~ F E ~@2 G ~@3 C ~ H ~ I J K C ~ I ~ I ~ I ~@3 I ~ B ~ I ~ I ~ I ~ F ~@2 I ~ B ~@3
  I ~ I ~ L M N ~ I ~ O B P ~ I@2 ~ I H ~ I ~ Q I ~@3 I ~ I ~ I ~ I ~@19
>`.pickRestart({
  A: "~@5 x ~@2", B: "~ x ~@6", C: "~ x ~@2", D: "~@2 x!3 ~@3", E: "~@3 x", F: "~ x!4 ~@3", G: "~ x!2 ~",
  H: "~ x ~@3 x ~@2", I: "x!2 ~@2", J: "~@5 x ~ x", K: "x", L: "~@2 x!2", M: "~@5 x!3", N: "~@3 x!2 ~ x ~",
  O: "x ~ x ~@2 x!3", P: "~ x ~ x ~@4", Q: "~ x!2 ~@5",
})).gain(1.26)

// drums · congas
const congas = s("conga:13").struct(`<
  ~@36 A ~ B ~ B ~ C ~ D ~ C E ~ B D ~ D@2 ~@2 F ~@3 C ~ G ~ C ~@2 C ~ C ~ C ~ C ~@3 C ~ H ~ C ~ C ~ C ~ D ~@2 C ~ H ~@3
  C ~ I ~ D ~ J ~ C ~ C B D ~ C@2 ~ C K ~ C ~@2 C ~@3 C ~ C ~ C ~ C ~@19
>`.pickRestart({
  A: "~@3 x", B: "~ x ~@2", C: "~ x ~@6", D: "~@5 x ~@2", E: "~@6 x!2", F: "~ x ~ x ~@4", G: "~ x ~ x",
  H: "~@2 x!2 ~@4", I: "~ x ~@3 x!3", J: "~ x!2 ~@5", K: "~@2 x!3 ~@3",
})).gain(1.54)

// drums · claves
const claves = s("clave:2").struct(`<
  ~@37 A ~ B ~ A ~ B ~ A ~ B ~ A ~ B ~ A ~ B ~@6 C ~@3 C ~@3 C ~@3 C ~ A ~ B ~ A ~ B ~ A ~ B ~ A ~ B ~ A ~@5 C ~@5 A ~ B
  ~ A ~ B ~ A ~ B ~ A ~ B ~@3 A ~ B ~ A ~ B ~@20
>`.pickRestart({
  A: "~ x!2 ~@5", B: "~ x ~ x ~@4", C: "~ x ~@6",
})).gain(1.57)

// drums · lt
const lt = s("lt").struct("<~@57 x ~@74 x ~@12 [~@9 x ~@6] ~@3>").gain(0.16)

stack(
  bass, vibraphone, lead_8_bass_lead, kick, rim, hihat, mid_tom, open_hat, high_tom, crash, ride, bongos, congas,
  claves, lt
)

More by Backstreet Boys