Strudelify
Shake It Up cover art

Shake It Up

Shake It Up

The Cars

KeyC majorTempo151 bpm
0:00/0:00
// Shake It Up — The Cars
// 151 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: ch 4 "ORGAN LINES" named as an organ, played on drawbar organ (its piano patch is not one)
// note: duplicate parts dropped: ch 13 "INTRO BAS" synth bass 2 (copy of ch 1 "SYNTH LINE" clavinet)
// note: Full arrangement: all 130 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(151/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · "a, b" plays two voices at once.
// 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.

// other · piano · "SYNTH LINE"
const piano = note(`<
  ~@17 A B C D A E F G A E H I A E J K A B C D A E F G L M N O P Q R S T U V W T U X Y A B C D A E F G T U V W T U X Y A
  B C D A E F G L M N O P Q R Z T U V W T U X Y A B C D A E F G AA AB AC AD AA AB AC AD AA AB AC AD AA AB AC AD AA AB AC
  AD AA AB AC AD ~
>`.pickRestart({
  A: "~ c7 g6 e6 c6 g5 c6 e6", B: "g6 c7 g6 e6 c6 g5 c6 ~", C: "~@2 a6@2 e6@2 c6@2 a5@2 ~@2 c6@2 e6 ~, ~@5 e5@2 ~",
  D: "d6 f6 ~ a#5 ~ d6 f6 a#6, ~@4 a#6@4 f5@5 ~@3", E: "g6 c7 g6 e6 c6 g5 c6 e6",
  F: "~@2 a6@2 e6@2 c6@2 a5@2 e5@2 c6@2 e6 ~", G: "d6@2 f6@2 ~@2 a#5@2 f5@3 ~ f6@2 a#6@2, ~@4 a#6@4 ~@3 d6@2 ~@3",
  H: "~@2 a6@2 e6@2 c6@3 ~ e5@2 a5@2 c6@2, ~@9 a5@2 ~@5", I: "e6@2 a6@2 e6@2 c6@3 a5@2 ~ a5 ~ c6@2, ~@11 e5@2 ~@3",
  J: "~ a6 e6 c6 a5 e5 a5 c6", K: "e6@2 a6@2 e6@2 c6@2 a5@2 e5@2 a5@3 ~", L: "~ g6 ~ b5 g5 d5 g5 d6, ~ d6 ~@2",
  M: "e5@2 g5 ~ c6@2 e6@2 a6@2 e6@2 c6@2 e6@2, ~@2 a5@5 ~@9", N: "~@2 g6@2 d6@2 b5@2 g5@2 d5@2 ~ d6@2 ~, ~@6 g5 ~",
  O: "e5 a5 c6 e6 a6 e6 c6 e6", P: "~ g6 d6 b5 g5 d5 g5 d6", Q: "e5 a5 ~ e6 a6 e6 c6 e6, ~ c6 ~@2",
  R: "f5@2 a5@2 ~@2 f6@2 a6@2 f6@2 ~ f6 ~@2, ~@2 c6@2 ~@2 c6 ~",
  S: "g5@2 b5@2 ~@2 g6@2 b6@2 g6@2 ~ g6 ~@2, ~@4 d6@5 ~@3 d6@2 ~@2", T: "~ c6 g5 e5 c5 g4 c5 e5",
  U: "g5 c6 g5 e5 c5 g4 c5 e5", V: "~@2 a5@2 e5@2 c5@3 ~ e4@2 a4@2 c5@2, ~@9 a4@2 ~@5",
  W: "e5@2 a5@2 e5@2 c5@3 a4@2 ~ a4 ~ c5@2, ~@11 e4@2 ~@3", X: "~ a5 e5 c5 a4 e4 a4 c5",
  Y: "e5@2 a5@2 e5@2 c5@2 a4@2 e4@2 a4@3 ~", Z: "g5@2 b5@2 ~@2 g6@2 b6@2 g6!2 d6@2 ~@2, ~@4 d6@5 ~@7",
  AA: "c7 g6 e6 c6 g5 c6 e6 g6", AB: "c7 g6 e6 c6 g5 c6 ~@2", AC: "a6@2 e6@2 c6@2 a5@2 ~@2 c6@2 e6 ~ d6@2, ~@2 e5 ~",
  AD: "f6 ~ a#5 ~ d6 f6 a#6 ~, ~@2 a#6@4 f5@5 ~@5",
})).s("gm_piano").gain(0.2)

// chords · drawbar organ · "ORGAN LINES"
const drawbar_organ = note(`<
  ~@25 A B C D A E F G H I J K L M N O P Q P R S R T P A U V W X Y Z AA H AB J AC AD AE AF AG AH AI AJ AK X AL N AM AN
  AO AP AQ H AR J AS P R S AT P R T P AU AV AW AX AY AZ N BA BB BC BD BE BF BG BH BI BJ BK Z BL BM BN BO BP BQ BR BS BL
  BT BU BV BW BX BY BZ CA BJ CB N CC CD
>`.pickRestart({
  A: "[c6,e6,g6]@3 ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6]@3 ~@3", // C
  B: "[c6,e6,g6]@3 ~@3 [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6] ~ [e6,g6] ~", // C Em
  C: "[e6,a6]@3 ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6] ~@3 [c6,e6,a6] ~, ~@5 a6 ~@2", // A5 Am C Am
  D: "[e6,a6]@3 ~ e6 ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6] ~ [c6,e6] ~", // A5 Am C
  E: "[c6,e6,g6]@3 ~ e6 ~ [c6,e6,g6]@3 ~ [e6,g6] ~ [c6,e6,g6] ~ e6 ~", // C Em C
  F: "[c6,e6,a6]@3 ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~, b6 ~@15", // Am
  G: "[c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6] ~ [e6,a6] ~", // Am A5
  H: "[c6,e6,g6]@3 ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6]@3 ~ [e6,g6] ~", // C Em
  I: "[c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6] ~ [c6,e6,g6] ~", // C
  J: "[c6,e6,a6]@3 ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~", // Am
  K: "[d6,f6,a#6]@3 ~ [f6,a#6] ~ [d6,f6,a#6]@3 ~ [f6,a#6] ~ [f6,a#6] ~ a#6 ~", // A# A#5 A# A#5
  L: "[c6,e6,g6]@3 ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6]@3 ~ [c6,e6] ~", // C
  M: "[c6,e6,g6]@3 ~ e6 ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6] ~ [c6,e6] ~", // C
  N: "[e6,a6]@3 ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~", // A5 Am
  O: "[d6,f6]@2 ~@2 [f6,a#6] ~ [d6,f6,a#6]@3 ~ [f6,a#6] ~ [d6,f6,a#6] ~@3", P: "[b5,d6,g6]@15 ~",
  Q: "[e6,a6]@7 ~, g6 ~@15", R: "[c6,e6,a6]@7 ~", S: "[d6,g6]@7 ~", T: "[a5,c6,f6]@15 ~",
  U: "[c6,e6,g6]@3 ~@3 [c6,e6,g6]@3 ~ [e6,g6] ~ [e6,g6] ~ [c6,g6] ~", // C Em C5
  V: "[e6,a6]@3 ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6]@3 ~ c6 ~", // A5 Am
  W: "[c6,e6,a6]@3 ~ e6 ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6] ~ [c6,e6] ~", // Am C
  X: "[c6,e6,g6]@3 ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~", // C
  Y: "[c6,e6,g6]@2 ~@2 [c6,e6,g6] ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6] ~ [e6,g6] ~", // C Em
  Z: "[e6,a6]@3 ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6]@3 ~ [e6,a6] ~", // A5 Am A5
  AA: "[c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6] ~ [c6,e6,a6] ~", // Am
  AB: "[c6,e6,g6]@3 ~ [e6,g6] ~ [c6,e6,g6]@3 ~ [e6,g6] ~ [c6,e6,g6] ~ [e6,g6] ~", // C Em C Em C Em
  AC: "[d6,f6]@3 ~ [f6,a#6] ~ [f6,a#6]@3 ~ [f6,a#6] ~ a#6 ~ a#6 ~", // Dm A#5
  AD: "[c6,e6,g6]@3 ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [e6,g6]@3 ~ [c6,e6,g6] ~", // C Em C
  AE: "[c6,e6,g6]@3 ~ [e6,g6] ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6] ~ e6 ~", // C Em C
  AF: "[c6,e6,a6]@3 ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6]@3 ~ [e6,a6] ~", // Am A5
  AG: "d6@2 ~@2 [f6,a#6] ~ [d6,f6,a#6]@3 ~ a#6 ~ [f6,a#6] ~ [f6,a#6] ~, f6 ~@15", // A#5 A# A#5
  AH: "[c6,e6,g6]@2 ~@2 [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6] ~ [c6,e6,g6]@3 ~", // C
  AI: "[c6,e6,g6]@3 ~ e6 ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6] ~ e6 ~", // C
  AJ: "[c6,e6,a6]@3 ~ [c6,e6,a6]@3 ~ [e6,a6] ~ [c6,e6,a6]@3 ~ e6 ~", // Am A5 Am
  AK: "[c6,e6,a6]@2 ~@2 [c6,e6,a6] ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6] ~ e6 ~", // Am
  AL: "[c6,e6,g6]@2 ~@2 [c6,e6,g6] ~ [c6,e6,g6]@3 ~ [e6,g6] ~ [c6,e6,g6] ~ e6 ~", // C Em C
  AM: "[c6,e6,a6]@3 ~ [c6,e6] ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6] ~ e6 ~", // Am C Am
  AN: "[c6,e6,g6]@3 ~ [c6,e6,g6]@3 ~ [e6,g6] ~ [e6,g6]@3 ~ e6 ~", // C Em
  AO: "[e6,g6]@3 ~ [e6,g6] ~ [c6,e6,g6]@3 ~ [e6,g6] ~ [e6,g6] ~ e6 ~", // Em C Em
  AP: "[e6,a6]@3 ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6]@3 ~@3", // A5 Am
  AQ: "[d6,f6]@2 ~@2 [f6,a#6] ~ [f6,a#6]@3 ~ a#6 ~ [f6,a#6] ~ [f6,a#6] ~", // Dm A#5
  AR: "[c6,e6,g6]@2 ~@2 [e6,g6] ~ [c6,e6,g6]@3 ~ [e6,g6] ~ [c6,e6,g6] ~ e6 ~", // C Em C Em C
  AS: "[d6,f6] ~@3 [f6,a#6] ~ [f6,a#6]@3 ~ [f6,a#6] ~ [f6,a#6] ~ f6 ~", AT: "[e6,a6]@15 ~",
  AU: "[c6,e6,g6]@3 ~ [e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6]@3 ~ [e6,g6] ~", // C Em C Em
  AV: "[c6,e6,g6]@3 ~ e6 ~ [c6,e6,g6]@3 ~ [e6,g6] ~ [c6,e6,g6] ~ [c6,e6] ~", // C Em C
  AW: "[e6,a6]@3 ~ [c6,e6,a6]@3 ~ [e6,a6] ~ [e6,a6]@3 ~ [c6,e6,a6] ~", // A5 Am A5 Am
  AX: "[c6,e6,a6]@3 ~ [e6,a6] ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6] ~ e6 ~", // Am A5 Am
  AY: "[e6,g6]@3 ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~", // Em C
  AZ: "[c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6]@3 ~ [e6,g6] ~ [e6,g6] ~ e6 ~", // C Em
  BA: "[c6,e6,a6]@3 ~ [e6,a6] ~ [c6,e6,a6]@3 ~ [e6,a6] ~ [c6,e6,a6] ~ [c6,e6,a6] ~", // Am A5 Am A5 Am
  BB: "[c6,e6,g6]@3 ~ [c6,e6,g6]@3 ~ [e6,g6] ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~", // C Em C
  BC: "[c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6] ~ e6 ~", // C
  BD: "[e6,a6]@2 ~@2 [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6]@3 ~ e6 ~", // A5 Am
  BE: "[d6,f6] ~@3 a#6 ~ [f6,a#6]@3 ~ a#6 ~ [f6,a#6] ~ a#6 ~", // Dm A#5
  BF: "[c6,e6,g6]@3 ~ [c6,e6,g6]@3 ~ [e6,g6] ~ [c6,e6,g6]@3 ~@3", // C Em C
  BG: "[c6,e6,g6]@3 ~ [e6,g6] ~ e6@3 ~ e6 ~ [e6,g6] ~ [e6,g6] ~", // C Em
  BH: "[c6,e6,a6]@3 ~ [c6,e6,a6]@3 ~ [c6,e6,a6] ~ [c6,e6,a6]@3 ~ e6 ~", // Am
  BI: "f6 ~@3 f6 ~ [f6,a#6]@3 ~ [f6,a#6] ~ [f6,a#6] ~ a#6 ~", // A#5
  BJ: "[c6,e6,g6]@3 ~ [c6,e6,g6]@3 ~ [e6,g6] ~ [c6,e6,g6]@3 ~ [e6,g6] ~", // C Em C Em
  BK: "[c6,e6,g6]@2 ~@2 [e6,g6] ~ [c6,e6,g6]@3 ~ [e6,g6] ~ [e6,g6] ~ [e6,g6] ~", // C Em C Em
  BL: "[d6,f6]@3 ~ [f6,a#6] ~ [f6,a#6]@3 ~ [f6,a#6] ~ [f6,a#6] ~ [f6,a#6] ~", // Dm A#5
  BM: "[c6,e6,g6]@3 ~ [c6,e6,g6]@3 ~ [e6,g6] ~ [e6,g6]@3 ~ [c6,e6,g6] ~", // C Em C
  BN: "[c6,e6,g6]@2 ~@2 [c6,e6,g6] ~ [e6,g6]@3 ~ [c6,e6,g6] ~ [e6,g6] ~ e6 ~", // C Em C Em
  BO: "[e6,a6]@3 ~ [c6,e6,a6]@3 ~ [e6,a6] ~ [c6,e6,a6]@3 ~ e6 ~", // A5 Am A5 Am
  BP: "[d6,f6,a#6]@3 ~ [f6,a#6] ~ [f6,a#6]@3 ~ [f6,a#6] ~ [f6,a#6] ~ [f6,a#6] ~", // A# A#5
  BQ: "[c6,e6,g6]@2 ~@2 [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [e6,g6]@3 ~ [e6,g6] ~", // C Em
  BR: "[c6,e6,g6]@2 ~@2 [c6,e6,g6] ~ [e6,g6]@3 ~ [e6,g6] ~ [e6,g6] ~ e6 ~", // C Em
  BS: "[e6,a6]@3 ~ [c6,e6,a6]@3 ~ [e6,a6] ~ [e6,a6]@3 ~ [c6,e6] ~", // A5 Am A5 C
  BT: "[c6,e6]@3 ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [e6,g6]@3 ~ e6 ~", // C Em
  BU: "[c6,e6,g6]@2 ~@2 e6 ~ [c6,e6,g6]@3 ~ e6 ~ [e6,g6] ~@3", // C Em
  BV: "[e6,a6]@3 ~ [e6,a6]@3 ~ [e6,a6] ~ [c6,e6,a6]@2 ~@2 [c6,e6,a6] ~", // A5 Am
  BW: "f6@2 ~@2 a#6 ~ [f6,a#6]@3 ~@3 [f6,a#6] ~ f6 ~, d6 ~@15", BX: "[c6,e6]@2 ~@2 [c6,e6,g6]@3 ~ [e6,g6] ~ e6 ~@5",
  BY: "[e6,g6]@3 ~ [e6,g6] ~ [e6,g6]@3 ~ e6 ~ [e6,g6] ~ e6 ~", // Em
  BZ: "[c6,e6,a6]@3 ~ [e6,a6]@3 ~ [e6,a6] ~ e6 ~@3 [e6,a6] ~", CA: "[d6,f6]@3 ~ a#6 ~ [f6,a#6]@3 ~ a#6 ~ [f6,a#6]@3 ~",
  CB: "[e6,g6]@2 ~@2 [e6,g6] ~ [c6,e6,g6]@3 ~ [c6,e6,g6] ~ [c6,e6,g6] ~ [e6,g6] ~", // Em C Em
  CC: "[d6,f6]@3 ~ [f6,a#6] ~ [f6,a#6]@3 ~ [f6,a#6] ~ [d6,f6,a#6]@2 ~@2, a#6 ~@15", CD: "[c6,e6,g6] ~@7",
})).s("gm_drawbar_organ").gain(0.2)

// chords · drawbar organ · "ORGAN LINES" · soft notes
const drawbar_organ_soft = note(`<
  ~@25 A B C D A E ~ F@2 ~@2 G H I C J ~ K ~@2 L ~@3 M N O P ~ F Q ~ F R ~ S T U F V W X Y Z ~ AA C AB AC AD AE AF F E ~
  AG ~@2 L K ~@4 AH AI AJ AK C AL C AM AN AO AP AQ AR AS Z AT AU AV Q AW AX AY AZ BA BB BC BD AW BE BF BG BH BI BJ BK BL
  AU BM C BN ~
>`.pickRestart({
  A: "~@14 [c6,e6,g6] ~", B: "~@4 [c6,e6,g6] ~@9 c6 ~", C: "c6@3 ~@13", D: "c6@3 ~ [c6,a6] ~@9 a6 ~",
  E: "~@4 c6 ~@5 c6 ~@3 [c6,g6] ~", F: "~@14 c6 ~", G: "~@4 d6 ~@5 d6 ~ d6 ~ [d6,f6] ~", H: "f6 ~@14 g6",
  I: "~@4 [c6,g6] ~@9 g6 ~", J: "~ a#6@2 ~ d6 ~@5 d6 ~@5", K: "c6@15 ~", L: "b5@7 ~", M: "~@14 e6 ~",
  N: "~@4 [c6,e6,g6] ~@5 c6 ~ c6 ~ e6 ~", O: "c6@3 ~@12 [e6,a6]", P: "~@4 [c6,a6] ~@9 a6 ~", Q: "c6@3 ~@11 c6 ~",
  R: "~@4 c6 ~@5 c6 ~@3 c6 ~", S: "~ a#6@2 ~ d6 ~ d6@3 ~ d6 ~ [d6,f6] ~ [d6,f6] ~", T: "~@10 c6@3 ~@3",
  U: "~@4 c6 ~@9 [c6,g6] ~", V: "~@4 d6 ~@5 [d6,f6] ~ d6 ~ d6 ~", W: "f6 ~@15", X: "~@4 [c6,g6] ~@9 [c6,g6] ~",
  Y: "~@8 c6 ~@5 [c6,a6] ~", Z: "~@14 [c6,a6] ~", AA: "~@10 c6 ~@3 [c6,g6] ~", AB: "~@4 a6 ~@9 [c6,a6] ~",
  AC: "~@8 c6 ~ c6@3 ~ [c6,g6] ~", AD: "c6@2 ~@2 c6 ~@5 c6 ~ c6 ~ [c6,g6] ~", AE: "c6@2 ~@12 [c6,e6,a6] ~",
  AF: "a#6@2 ~@2 d6 ~ d6@2 ~@2 [d6,f6] ~ d6 ~ d6 ~", AG: "~@4 d6 ~ d6@3 ~ d6 ~ d6 ~ a#6 ~", AH: "~@4 c6@3 ~@7 c6 ~",
  AI: "~@4 [c6,g6] ~@5 c6 ~@3 g6 ~", AJ: "c6@3 ~@5 c6 ~ c6@3 ~@3", AK: "~@4 c6 ~@9 [c6,a6] ~",
  AL: "~@10 c6 ~ c6 ~ [c6,g6] ~", AM: "~@4 c6 ~@5 c6 ~@5", AN: "~@8 c6 ~@7", AO: "~@14 [c6,g6] ~",
  AP: "c6@2 ~@12 [c6,a6] ~", AQ: "[g#6,a#6] ~@3 [d6,f6] ~ d6@3 ~ [d6,f6] ~ d6 ~ [d6,f6] ~",
  AR: "~@8 c6 ~@5 [c6,e6,g6] ~", AS: "~@4 c6 ~ [c6,g6]@3 ~ [c6,g6] ~ c6 ~ c6 ~",
  AT: "d6 ~@3 [d6,a#6] ~ d6@3 ~ d6 ~ d6 ~ [d6,f6] ~", AU: "~@8 c6 ~@5 c6 ~", AV: "~@4 c6 ~@5 c6 ~ c6 ~ c6 ~",
  AW: "~ a#6@2 ~ d6 ~ d6@3 ~ d6 ~ d6 ~ d6 ~", AX: "~@8 c6 ~ c6@3 ~@3", AY: "~@6 c6@2 ~@4 c6 ~ [c6,g6] ~",
  AZ: "c6@2 ~@6 c6 ~@5 [c6,a6] ~", BA: "~@4 d6 ~ d6@3 ~ d6 ~ d6 ~ d6 ~", BB: "~@10 c6@3 ~ c6 ~",
  BC: "~@6 c6@2 ~@2 c6 ~ c6 ~ [c6,g6] ~", BD: "c6@2 ~@6 c6 ~ c6@2 ~@2 a6 ~", BE: "g6@2 ~@8 c6@3 ~ [c6,g6] ~",
  BF: "~@4 [c6,g6] ~@5 [c6,g6] ~ c6 ~ [c6,e6,g6] ~", BG: "c6@2 ~@2 c6@3 ~ c6 ~@7",
  BH: "~@4 f6 ~ d6@2 ~@2 [f6,a#6] ~ d6 ~ [d6,a#6] ~", BI: "g6@2 ~@6 c6 ~ [c6,g6] ~ [c6,e6,g6] ~@3",
  BJ: "c6@2 ~@2 c6 ~ c6@3 ~ [c6,g6] ~ c6 ~ [c6,g6] ~", BK: "~@4 c6@2 ~@2 c6 ~ [c6,a6] ~@3 c6 ~",
  BL: "~ a#6@2 ~ [d6,f6] ~ d6@3 ~ [d6,f6] ~ d6@2 ~@2", BM: "c6@2 ~@2 c6 ~@9 c6 ~", BN: "g#6 ~@3 d6 ~ d6@2 ~@2 d6 ~@5",
})).s("gm_drawbar_organ").gain(0.1)

// drums · snare
const snare = s("sd").struct(`<
  ~ A ~@7 A ~@7 A ~@3 A ~@11 A ~@3 A ~@3 A ~@5 A ~ A ~@7 A ~@14 A@2 ~@3 A ~@3 A ~@5 A ~ A ~@6 A@2 ~@3 A ~@3 A ~@3 A ~@2
  A@2 ~@3 A ~@3 A ~@3 A ~@4
>`.pickRestart({
  A: "x",
})).gain(0.51)

// drums · mid tom
const mid_tom = s("mt").struct("<~ A@3 B A@42 C D A@23 C A@14 C D A@7 C A@15 C A@15 E F>".pickRestart({
  A: "x ~@3 x!2 ~@2", B: "x ~ x!2 ~ x ~ x", C: "x ~@4 x ~@2 x ~ x ~ x ~ x ~", D: "~@8 x!3 ~@5", E: "x ~ x!2 ~ x ~@2",
  F: "x",
})).gain(0.41)

// drums · high tom
const high_tom = s("ht").struct("<~@32 A ~@14 B C ~@23 B ~@14 B C ~@7 B ~@15 B ~@16 D>".pickRestart({
  A: "~@6 x!2", B: "~@2 x!2 ~@4", C: "~@4 x!3 ~@9", D: "x",
})).gain(0.51)

// drums · china
const china = s("cr").struct("<A B@3 C B@42 A@2 B@23 A B@14 A@2 B@7 A B@15 A B@15 D E>".pickRestart({
  A: "x!4", B: "x!8", C: "x!7 ~", D: "x!3 ~ x ~ x ~", E: "x",
})).gain(0.15)

// drums · ride bell
const ride_bell = s("rd").struct("<~@32 A ~@14 B C ~@23 B ~@14 B C ~@7 B ~@15 B ~@17>".pickRestart({
  A: "~@6 x!2", B: "x!2 ~@6", C: "x!3 ~@13",
})).gain(0.51)

// drums · tambourine
const tambourine = s("tb").struct("<~ A@3 B A@27 C A@14 D E A@23 D A@14 D E A@7 D A@15 D A@15 B ~>".pickRestart({
  A: "~ x ~ x", B: "~ x ~@2 x ~ x ~", C: "~@2 x ~@3 x!2", D: "~@6 x!2", E: "~@7 x",
})).gain(0.51)

// drums · bongos
const bongos = s("bongo:4").struct("<~@4 A ~@41 A ~ B ~@37 A ~ B ~@40 C>".pickRestart({
  A: "~@3 x", B: "~@7 x", C: "x",
})).gain(1.35)

stack(piano, drawbar_organ, drawbar_organ_soft, snare, mid_tom, high_tom, china, ride_bell, tambourine, bongos)

More by The Cars