Strudelify
Come mai (feat. Fiorello) cover art

Nord Sud Ovest Est

Come mai (feat. Fiorello)

883

KeyF majorTempo73 bpm
0:00/0:00
// Come mai (feat. Fiorello) — 883
// 73 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 78 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(73/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 · fretless bass · "Bass"
const bass = note(`<
  ~@10 A B C D E F G H I J K L K M K L K N O P Q R O P Q S C D E F G H I J K L K M K L K N O P Q R O P Q S O P Q R O P Q
  S O P Q R O P Q T@2 ~
>`.pickRestart({
  A: "bb2@3 f2@3 bb1@8 ~@2", B: "c2@3 g2@3 c3@9 ~", C: "f2@4 ~@2 a2 ~ d2@4 ~@2 c2 ~", D: "bb1@2 ~ d2@2 ~ c2@9 ~",
  E: "f2@5 ~ a2 ~ d2@5 ~ a2 ~", F: "bb2@2 ~ f2@2 ~ c2@8 ~@2", G: "bb1@2 ~ d2@2 ~ bb1 ~ c2@7 ~",
  H: "d2@2 ~ f2@3 d2 ~ a1@6 ~@2", I: "bb1@2 ~ d2@2 ~ bb1 ~ bb1@7 ~", J: "c2@2 ~ e2@3 c2@2 c2@6 ~@2",
  K: "bb1@2 ~ bb1@2 ~ f2@5 ~ f2 g2 f2 ~", L: "bb1@2 ~ bb1@2 ~ f1@5 ~ f1 g1 a1 ~", M: "c2@2 ~ c2@2 ~ c2@5 ~ c2 e2 c2 ~",
  N: "g2@6 d2 db2 c2@3 g2 c3@3 ~", O: "f2@5 ~ f2 ~ e2@5 ~ e2 ~", P: "d2@2 ~ d2 c2@2 f1@6 ~@2 c2 ~",
  Q: "bb1@3 bb1!2 ~ bb1@2 f2@5 ~ f2@2", R: "g2@2 ~ g2!2 f2 d2 db2 c2@3 c2!3 g2 c2",
  S: "c2@2 ~ c2 c2@2 c2@2 f1@4 ~ f1 d2 c2", T: "[c2@2 ~ c2 c2@2 f1@26]/2",
})).s("gm_fretless_bass").gain(0.46)

// chords · acoustic guitar steel · "Folk  gt"
const acoustic_guitar_steel = note("<A B C D@3 ~@5 E@3 ~@64>".pickRestart({
  A: "~@7 c4 g4 ~@6 c4, f4@2 f3@2 c4@2 f4@2 ~ c4@2 g4@2 g3@3, ~ c4@2 f4@2 f3@3 ~@2 g3@2 c4@2 g4@2",
  B: "~@7 c4 ~@7 c4, f4 f3 c4 f4!2 f3 c4 f4, ~ c4@2 f4@2 f3@3 ~ c4@2 f4@2 f3@3",
  C: "~@7 c4 f4 ~@6 c4, f4@2 f3@2 c4@2 f4@2 ~ c4@2 f4@2 f3@3, ~ c4@2 f4@2 f3@3 ~@2 f3@2 c4@2 f4@2",
  D: "[~@7 c4 ~@6 f4@32 ~@2, g4 g3 c4 g4 f4 f3 c4@16 ~@2, ~ c4@2 g4@2 g3@3 ~ c4@2 f4@2 f3@32 ~@3]/3",
  E: "[~@13 [db5,d5]@32 ~@3, ~@9 g4@32 ~@7, ~@5 a4@16 ~@3, ~@11 bb4@32 ~@5, ~@3 c5@8 ~]/3", // Dmaj7
})).s("gm_acoustic_guitar_steel").gain(0.09).pan(0.2)

// chords · pad warm · "Warm pad"
const pad_warm = note("<A B C D E F G F H I J K ~@66>".pickRestart({
  A: "[c4,f4,a4]@8 [c4,e4,g4]@7 ~", B: "[bb3,d4,f4] [f4,a4]", C: "[d4,f4] [f4,a4]", D: "[e4,g4] a4, c4",
  E: "c4 d4, [a3,f4]", F: "[f3,bb3,d4]@3 [e3,g3,c4]@5", G: "[a3,c4,f4]@7 ~ [a3,d4,f4]@8",
  H: "[bb3,d4]@7 ~ [c4,e4]@8, g4", I: "[d4,f4,a4] [a3,c4,f4]", J: "[bb3,d4,f4]", K: "[c4,e4,g4]@15 ~",
})).s("gm_pad_warm").gain(0.11).pan(0.8)

// chords · pad warm · "Warm pad" · soft notes
const pad_warm_soft = note("<A@4 ~@74>".pickRestart({
  A: "[~@24 c4@7 ~ bb3@7 ~ c4@7 ~@9 f4@8, f3@63 ~]/4",
})).s("gm_pad_warm").gain(0.06).pan(0.8)

// chords · string ensemble 1 · "Strings"
const string_ensemble_1 = note(`<
  ~@12 A@2 B@2 C D E F G H G I G H J K L M N O P Q R S A@2 B@2 C D E F G H G I G H J K L M N O P Q R S L M N O P Q R T U
  V W X Y Z AA AB@2 ~
>`.pickRestart({
  A: "[a3@8 bb3@3 [g3,c4]@5, f4@31 ~, c4@11 ~@5]/2", B: "[a3@8 bb3@3 [g3,c4]@5, f4, c4@11 ~@5]/2",
  C: "[f3,bb3,d4] [g3,c4,e4]", D: "[a3,d4,f4] [f3,a3,c4]", E: "[f3,bb3,c4]", F: "[g3,c4,e4]",
  G: "[f3,bb3,d4]@3 [f3,bb3,d4]@3 ~@6 f5 g5 f5 ~, ~@3 [f3,a3,c4]@5", // Bb F
  H: "[f3,bb3,d4]@3 [f3,bb3,d4]@3 ~@6 c6 a5 f5 ~, ~@3 [f3,a3,c4]@5", // Bb F
  I: "[g3,c4,e4]@2 [g3,c4,e4]@3 ~@7 e5 f5 g5 ~, ~@5 [g3,c4,e4]@10 ~", // C
  J: "[f3,bb3,d4]@2 [f3,bb3,d4]@3 ~@7 f5 g5 f5 ~, ~@3 [f3,a3,c4]@5", K: "[g3,bb3,d4] [g3,c4,e4]",
  L: "[a3,c4,f4]@6 [a3,c4,f4]@2 [c4,e4,g4]@6 [c4,e4,g4] ~", M: "[d4,f4,bb4]@3 [d4,f4,bb4]@2 ~ [c4,f4,a4]@9 ~",
  N: "[d4,f4,bb4]@3 [d4,f4,bb4] [c4,f4,a4]@4", O: "[d4,f4,bb4]@7 ~ [e4,g4,c5]@8", P: "[c4,f4,a4] [c4,e4,g4]",
  Q: "[d4,g4,bb4]@3 [c4,f4,a4]@5", R: "[d4,f4,bb4] [c4,f4,a4]", S: "[c4,e4,g4] [a3,c4,f4]",
  T: "[c4,e4,g4]@8 ~@6 c5 [d5,e5], ~ [a3,c4,f4]", // C Dsus2 F
  U: "[a3,c4,f4]@6 [a3,c4,f4]@2 g5@4 ~@2 [c4,e4,g4] ~, f5@4 [c4,e4,g4]@3 ~, ~@3 c6", // F C
  V: "[d4,f4,bb4]@3 [d4,f4,bb4]@2 ~@7 a5@2 g5@2, f5@3 ~, ~@6 [c4,f4,a4]@9 ~", // Bb F
  W: "f5@2 ~ [d4,f4,bb4] c6@2 f5@2, [d4,f4,bb4]@3 ~ [c4,f4,a4]@4, ~ d6 ~@2", // Bb F
  X: "bb5 a5 g5 f5 [e4,g4,c5,g5]@4, [d4,f4,bb4]@7 ~@9", Y: "f5 c6 g6 c7, [c4,f4,a4] [c4,e4,g4]",
  Z: "[d4,g4,bb4,f6]@5 g6 f6@8 a6 g6, ~@3 [c4,f4,a4]@5", AA: "f6 d6 [c4,f4,a4,c6]@2, [d4,f4,bb4] ~",
  AB: "[g5@4 e5@2 [a3,c4,f4,f5]@25 ~, [c4,e4,g4]@3 ~@13]/2", // F C
})).s("gm_string_ensemble_1").gain(0.15)

// chords · string ensemble 1 · "Strings" · soft notes
const string_ensemble_1_soft = note("<~@4 A B C B D E F G ~@66>".pickRestart({
  A: "c4 d4, [a3,f4]", B: "[f3,bb3,d4]@3 [e3,g3,c4]@5", C: "[a3,c4,f4]@7 ~ [a3,d4,f4]@8",
  D: "[bb3,d4]@7 ~ [c4,e4]@8, g4", E: "[d4,f4,a4] [a3,c4,f4]", F: "[bb3,d4,f4]", G: "[c4,e4,g4]@15 ~",
})).s("gm_string_ensemble_1").gain(0.08)

// other · pad halo · "Halo Pad"
const pad_halo = note("<~@12 A B A C A B A D ~@16 A B A C A B A D ~@34>".pickRestart({
  A: "~@8 c5 f4 g4 c5 f4 g4 c5 g4", B: "~@8 c5 f4 g4 c5 f4 g4 c5 ~", C: "~@8 c5 f4 g4 c5 f4 g4 c5@2",
  D: "c5 f4 g4 c5 f4 g4 e4 f4 c5 e4 f4 c5 e4 f4 c5 e4",
})).s("gm_pad_halo").gain(0.12).pan(0)

// chords · piano
const piano = note(`<
  A B C D E F G H I J K L M N O P Q R S T U@2 V W U@2 V X Y Z AA AB AC AD AE AF M N O P Q R S T U@2 V W U@2 V X Y Z AA
  AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR AS AT AU AV@2 ~
>`.pickRestart({
  A: "f5@2 c6 c6@4 f5 e5@2 c6 c6@3 ~ c5", B: "bb4@2 c6@2 a5!2 g5 a5@4 ~ g5@2 a5@2",
  C: "bb5@2 a5 a5@2 g5 a5 g5@2 f5 c5@3 ~ c5 f5", D: "a5@2 g5 g5@2 f5!2 ~ f5@5 ~@3",
  E: "[a3,c4]@6 a3 c4 [f3,a3]@6 f3 a3, [f2,f4] [d3,d4]", F: "[bb2,f3,bb3,d4]@2 ~ [bb2,f3,bb3,d4]@3 [c3,g3,c4]@10",
  G: "[a3,c4,f4]@5 [c4,f4,a4]@2 ~ [f3,a3,d4]@6 ~@2, f2 d3", // F Dm
  H: "[d4,f4] ~@2 [bb3,f4]@3 [c3,c4,e4,g4]@9 ~, bb2@3 ~@5, bb4@2 ~ d4 ~@12", I: "[bb2,d4,f4,bb4] [c3,c4,e4,g4]",
  J: "[d3,d4,f4,a4] [a2,a3,c4,f4]", K: "[bb2,bb3,d4,f4]@15 ~", L: "[c3,c4,e4,g4]@15 ~",
  M: "[c4,f4]@6 a3@2 [f3,a3,d4]@7 ~, a3@5 ~@11", N: "[f3,bb3]@2 ~ [f3,bb3,d4]@3 [e3,g3,c4]@9 ~",
  O: "[f3,a3,c4]@5 ~ [a3,c4,f4] ~ [f3,a3,d4]@6 ~@2", P: "f3@2 ~ f3@2 ~ [g3,c4,e4]@9 ~, [bb3,d4]@3 ~@5",
  Q: "[f3,bb3,d4]@7 ~ [g3,c4,e4]@7 ~", R: "[a3,d4,f4]@7 ~ [f3,a3,c4]@7 ~", S: "[f3,bb3,c4]@7 ~", T: "[g3,c4,e4]@13 ~@3",
  U: "[f3,bb3,d4]@2 ~ [f3,bb3,d4]@2 ~ [f3,a3,c4]@8 ~@2", V: "[f3,bb3,d4]@2 ~ [f3,bb3,d4]@2 ~ [f3,a3,c4]@7 ~@3",
  W: "[g3,c4,e4]@2 ~ [g3,c4,e4]@2 ~ [g3,c4,e4]@8 ~@2", X: "[d4,f4,bb4]@7 ~ [c4,e4,g4]@6 ~@2",
  Y: "[a3,c4,f4]@5 ~ [c4,f4]@2 [c4,e4,g4]@5 ~ [c4,e4,g4] ~, ~@6 a3 ~@9", // F F5 C
  Z: "[d4,f4,bb4]@2 ~ [d4,f4,bb4]@2 ~ [c4,f4,a4]@8 ~@2", AA: "[d4,f4,bb4]@5 ~ [d4,f4,bb4] ~ [c4,f4,a4]@7 ~",
  AB: "[d4,f4,bb4]@5 ~ [f4,bb4]@2 [e4,g4,c5]@7 ~, ~@6 d4 ~@9", // Bb Bb5 C
  AC: "[c4,f4,a4]@5 ~ [c4,a4] ~ [c4,e4,g4]@5 ~ [c4,e4,g4] ~, ~@3 f4 ~@4", // F C
  AD: "[d4,f4,bb4]@3 [d4,f4,bb4]@2 ~ [c4,f4,a4]@8 ~@2", AE: "[d4,f4,bb4]@5 ~ [d4,f4,bb4] ~ [c4,f4,a4]@5 ~ [c4,f4,a4] ~",
  AF: "[c4,e4,g4]@5 ~ [c4,e4,g4] ~ [a3,c4,f4]@7 ~", // C F
  AG: "f4@2 c4 f4 [f4,a4] g4 f4 ~@2 [c4,e4] ~ d4 [c4,d4,e4] d4 c4 ~, [f3,a4]@4 [f3,c4]@3 ~ e3@4 [e3,g4]@4, c4 ~@6 [c4,e4,g4]@2 g4@3 ~@4, ~@5 c4 ~@2", // F C F F5 Em C
  AH: "[d4,f4]@2 bb3 [bb3,d4,f4,bb4]@2 ~ [f3,c4,f4,a4]@4 c4 ~ [c4,f4,a4,c5] ~ [c4,f4,a4,c5] ~, d3@6 ~@5 f3@3 ~@2, bb3 ~@15", // Dm Bb F
  AI: "[bb3,d4,f4,bb4]@2 d4!2 bb3@2 d4@2 [f4,a4]@2 ~@3 [f4,a4] g4 f4, ~@3 [f4,bb4]@4 ~ f3@3 ~ f3@3 ~, ~@8 c4 ~@2 [c4,f4,a4]@2 c4@2 ~", // Bb F Bb5 F
  AJ: "[d4,g4,bb4] ~ [g4,bb4]@2 [g3,d4,g4,bb4]@2 [d4,g4,bb4] ~ [c4,e4,g4]!3 ~@4 g4, g3@4 ~@4 c3@3 [c4,e4]@2 c4@2 ~, ~@2 d4 ~@8 g4@3 e4@2, ~@12 c3@3 ~", // Gm C
  AK: "[c4,f4,a4]@2 c4 ~@3 f4 a4 [e4,g4]@2 c4 ~@3 [e4,g4] ~, f3@3 [c4,f4]@2 c4@3 c4 ~@2 [c4,e4,g4]@3 ~@2, e4 ~@2 a4@4 ~@6 c4@2 ~, ~ f3 e3!2", // F Em F5 C
  AL: "[d3,d4,f4]@3 bb3 [d3,bb3,d4,f4] ~ [f3,c4,f4,a4]@4 c4 ~ [c4,f4,a4,c5]@3 ~, bb3 ~@10 f3@3 ~@2", // Dm Bb F
  AM: "[bb3,d4]@3 d4 bb3@2 [d4,bb4] ~ c4@2 c4@2 [f3,f4,a4]@2 c4 ~, [f4,bb4]@6 ~@2 [f3,f4,a4]@4 c4 ~@3", // Bb Gm F Bb5 F
  AN: "[e4,g4]@2 c4 [e4,g4]@2 c4 [f3,c4,f4,a4]@4 c4 [c4,f4,a4,c5] [f3,c4,f4,a4]@2 [c4,f4,a4,c5] ~, c3@5 ~@11, c4 ~@2 c4 ~@8 c5 ~@3", // Em F
  AO: "[f3,f4,a4]@2 c4 ~@3 f4 a4 [c4,e4,g4] ~@5 e4 c5, c4 ~@2 [c4,f4,a4]@2 c4@2 ~@2 c4@2 c5@2 c4@3, ~@4 f3@4 c3@7 ~, ~@10 e4@2 g3@3 ~", // F C F
  AP: "[bb3,d4,f4,bb4]@2 [f4,a4] ~@2 f4 [f3,c4]@4 ~@2 [f4,a4] g4 f4 ~, ~@2 d4@2 bb3@2 ~@4 c4@2 c4@3 ~, ~@3 g4@2 ~ [f4,a4]@5 f3@4 ~", // Bb F F5 F
  AQ: "[bb3,f4,bb4]@2 d4!2 ~@2 c5 bb4 c4 ~ c4 ~@2 [f4,a4] g4 f4, d4 ~@2 f4@5 ~@8, ~@3 d5@2 d4@3 ~@3 [c4,f4,a4]@2 c4@2 ~, ~ bb3 [f3,f4,a4] f3", // Bb5 F
  AR: "[d4,g4,bb4]@2 d4@2 [d4,g4,bb4]@2 d4 ~ [c4,e4,g4] ~ [d4,e4] f4 ~ [c4,d4,e4] ~ e4, g3 c3, ~@5 c4 g3@2, ~@11 d4@2 g4@2 ~, ~@7 c4", // Gm C Dsus2 C
  AS: "[f4,a4]@2 c4!2 ~@2 f4 a4 [e4,g4]@2 c4 ~ g3@2 c4 ~, f3@4 f3@4 c3@7 ~, c4 ~@2 [f4,a4]@2 c4@3 g3 ~@2 [e4,c5]@5, ~@11 c4@2 ~@3", // F Em F C
  AT: "[bb3,f4,bb4]@2 a4 ~@2 f4 [f3,a4]@4 ~@2 a4 g4 f4@2, d4 ~ [d4,f4]@2 bb3@2 c4@3 ~ c4@2 c4@3 ~, ~@3 g4@2 ~ f4@7 ~@3, ~@11 f3@4 ~", // Bb5 F Dm
  AU: "~@2 d4@2 ~@2 d4@2 c4 ~ c4@2 [c4,a4] ~ c4@2, bb3@2 [f3,f4,a4,c5] [f3,c5], ~@2 [f4,bb4,d5]@2 ~@2 f4 ~", // F F5 Bb
  AV: "[[e4,g4,c5]@2 c4 ~ [g3,c4,e4,g4] ~ [f3,a3,c4,f4]@26, c3@5 ~@27, c4 ~@31]/2", // C F
})).s("gm_piano").gain(0.39)

// other · pad new age · "Fantasia"
const pad_new_age = note("<~@13 A@2 B@2 C D E F G F H F G F ~@10 A@2 B@2 C D E F G F H F G F ~@27>".pickRestart({
  A: "[~@12 f5 g5 f5 c6@5 ~@12]/2", B: "[~@12 f5 g5 f5 c6@2 ~@15]/2", C: "~@4 f5 g5 f5 c6@5 ~@4",
  D: "~@4 f5 g5 f5 c6 ~@4 f6 e6 c6 ~", E: "~@4 f5 g5 f5 c6 ~ f6 e6 c6 c7@2 ~@2", F: "~@12 f5 g5 f5 ~",
  G: "~@12 c6 a5 f5 ~", H: "~@12 e5 f5 g5 ~",
})).s("gm_pad_new_age").gain(0.19).pan(0.9)

// chords · distortion guitar · "Dist. gt"
const distortion_guitar = note(`<
  ~@27 A B C D E F G D H ~@15 A B C D E F G D H B C D E F G D H B C D E F G D I@2 ~
>`.pickRestart({
  A: "~ [c3,g3,c4]", B: "[f3,c4]@3 [f3,c4] [e3,c4]@4", C: "[bb3,d4]@3 [bb3,d4]@3 [f3,c4]@10", D: "[f3,bb3] [f3,c4]",
  E: "[g3,d4] [g3,c4]", F: "[f3,c4] [e3,c4]", G: "[bb3,d4]@2 [bb3,d4] [f3,c4]@5", H: "[g3,c4]@7 ~ [c3,f3]@8",
  I: "[[g3,c4]@6 [f2,c3,f3]@25 ~]/2", // C5 F5
})).s("gm_distortion_guitar").gain(0.22)

// drums · kick
const kick = s("bd").struct(`<
  ~@12 A B A B A@4 C D C D C D C D E F E G E H E@2 A B A B A@4 C D C D C D C D E F E G E H E@3 F E G E H E@3 F E G E H E
  C ~@2
>`.pickRestart({
  A: "x ~@2 x!2 ~@3", B: "x ~@2 x ~@4", C: "x ~@2 x ~@2 x ~@9", D: "x ~@2 x ~@2 x ~@4 x ~@4",
  E: "x ~@2 x ~@2 x ~ x ~@5 x ~", F: "x ~@2 x ~@2 x ~@3 x ~@3 x ~", G: "x ~@2 x ~@2 x ~ x ~@4 x ~@2",
  H: "x ~@2 x ~@3 x",
})).gain(0.5)

// drums · snare
const snare = s("sd").struct(`<
  ~@12 A B A B A B A B C@9 D C E C F C G A B A B A B A B C@9 D C E C F C H C D C E C F C G C D C E C F C I ~@2
>`.pickRestart({
  A: "~@3 x", B: "~@15 x", C: "~ x ~ x", D: "~@4 x ~@6 x!2 ~@3", E: "~@4 x ~@6 x!2 ~ x!2", F: "~@3 x!2 ~@7 x ~@3",
  G: "~@4 x ~@6 x!3 ~@2", H: "~@4 x ~@5 x!4 ~@2", I: "~@4 x!2 ~@10",
})).gain(0.5)

// drums · snare · soft notes
const snare_soft = s("sd").struct(`<
  ~@13 A ~ A ~ A ~ A@2 B A B A B A B ~@9 A ~ A ~ A ~ A@2 B A B A B A B ~@7 C ~@18
>`.pickRestart({
  A: "~@7 x", B: "~@14 x!2", C: "~@9 x ~@6",
})).gain(0.29)

// drums · clap
const clap = s("cp").struct("<~@12 A ~ A ~ A ~ A ~@17 A ~ A ~ A ~ A ~@35>".pickRestart({
  A: "~@7 x",
})).gain(0.21)

// drums · low tom
const low_tom = s("lt").struct("<~@35 A ~@23 A ~@3 B ~@3 A ~@3 B ~@6>".pickRestart({
  A: "~@14 x!2", B: "~@13 x ~@2",
})).gain(0.43)

// drums · hihat
const hihat = s("hh").struct(`<
  ~@12 A B C B D B D B A B D B D B D B ~@8 A B C B D B D B A B D B D B D B ~@26
>`.pickRestart({
  A: "~@3 x ~@2 x ~ x!2 ~@6", B: "x ~@2 x ~@2 x ~ x ~@2 x!2 ~@3", C: "x ~@2 x ~@2 x ~@2 x ~@6",
  D: "x ~@2 x ~@2 x ~ x!2 ~@6",
})).gain(0.29)

// drums · hihat · soft notes
const hihat_soft = s("hh").struct(`<
  ~@12 A B A B A B A B C D C D C D C D ~@8 A B A B A B A B C D C D C D C D ~@26
>`.pickRestart({
  A: "~@11 x ~@4", B: "~@13 x ~@2", C: "~@10 x!2 ~@4", D: "~@9 x ~@6",
})).gain(0.21)

// drums · open hat
const open_hat = s("oh").struct("<~@12 A ~ A ~ A ~ A ~ A@8 ~@3 A ~@4 A ~ A ~ A ~ A ~ A@8 ~@3 A ~@22>".pickRestart({
  A: "~@13 x ~@2",
})).gain(0.21)

// drums · crash
const crash = s("cr").struct(`<
  ~@12 A ~@2 B ~@4 A ~@7 A ~@3 A C ~@2 A ~@2 B ~@4 A ~@7 A ~@3 A C ~@2 A ~@3 D C ~ E A ~@3 D C ~ C ~@2
>`.pickRestart({
  A: "x", B: "~@7 x", C: "~@3 x ~@4", D: "x!2 ~@2", E: "~ x ~@2",
})).gain(0.36)

// drums · ride
const ride = s("rd").struct(`<
// … 19 more lines

More by 883