Strudelify

I Can't Help Myself

The Kelly Family

KeyD♭ majorTempo96 bpm
0:00/0:00
// I Can't Help Myself — The Kelly Family
// 96 bpm, 4/4, key C# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: duplicate parts dropped: ch 9 acoustic guitar steel (copy of ch 11 acoustic guitar nylon)
// note: Full arrangement: all 74 bars on a 48-step grid, each part at one level. Source detail keeps the original performance.
// note: Guitar parts that double another keep only their own notes (fills, solos): guitar program 25.
setcpm(96/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
const piano = note("<~@16 A B@3 ~@3 C@3 ~@5 D@5 ~@3 E@3 ~@3 F@5 G ~@3 H@5 ~@3 E@3 ~@3 I@3 ~@3>".pickRestart({
  A: "[eb4,gb4]@6 [f4,ab4]@12 [eb4,gb4]@11 ~ [db4,f4]@6 [db4,f4]@12", // Ebm Fm Ebm Db
  B: "[[eb4,ab4]@5 [f4,ab4]@6 ~ [f4,ab4]@6 [eb4,gb4]@11 [db4,f4]@6 [db4,f4]@24 ~ [db4,gb4]@5 ~ [bb3,gb4]@6 [db4,gb4]@6 [bb3,f4]@12 [bb3,f4]@12 [ab3,eb4]@42]/3", // Ab5 Fm Ebm Db Gb5 Ebm Gb5 Bb5 …
  C: "[~@30 [f4,db5]@5 [f4,db5]@6 [f4,db5]@12 [f4,ab4]@5 ~ [f4,db5]@6 [eb4,db5]@12 [f4,ab4]@12 [gb4,db5]@5 ~ [gb4,db5]@3 [gb4,db5]@3 [gb4,bb4]@6 [gb4,ab4]@6 ~ bb3@30, ~@113 gb4@31]/3", // Db Fm Db Eb7 Fm Gb5 Gb Gbsus2
  D: "[~@41 [ab4,eb5]@12 [ab4,f5]@12 [gb4,eb5]@11 ~ [f4,db5]@5 ~ [f4,db5]@12 [ab4,eb5]@6 ~ [ab4,f5]@11 [gb4,eb5]@12 [f4,db5]@5 ~ [f4,db5]@24 [gb4,db5]@6 [gb4,bb4]@6 [gb4,db5]@6 [gb4,db5]@5 ~ [f4,bb4]@6 [f4,f5]@12 [eb4,eb5]@42 ~]/5", // Ab5 Db Ebm Db Ab5 Db Ebm Db …
  E: "[~@35 [f4,db5]@6 [f4,db5]@12 [f4,ab4]@5 ~ [f4,db5]@6 [eb4,db5]@12 [f4,ab4]@12 [gb4,db5]@5 ~ [gb4,db5]@3 [gb4,db5]@3 [gb4,bb4]@6 [gb4,ab4]@6 ~ db4@30, ~@113 gb4@31]/3", // Db Fm Db Eb7 Fm Gb5 Gb Gbsus2
  F: "[~@41 [c4,eb5]@12 [db4,f5]@12 [c4,eb5]@12 [db4,f5]@12 [eb4,gb5]@11 ~ [db4,f5]@6 [eb4,eb5]@6 [db4,db5]@30 [gb4,gb5]@12 [ab4,f5]@6 [gb4,eb5]@11 ~ [f4,db5]@12 [f4,f5]@12 [eb4,eb5]@17 ~ [f4,f5]@6 [f4,db5]@5 ~ [f4,db5]@6 [f4,db5]@7]/5", // Cm Db Cm Db Ebm Db Eb Db …
  G: "~@3 [eb4,bb4]@3 [db4,ab4]@41 ~", // Eb5 Db5
  H: "[~@41 [ab4,eb5]@11 ~ [ab4,f5]@12 [gb4,eb5]@11 ~ [f4,db5]@6 [f4,db5]@12 [gb4,eb5]@6 [ab4,f5]@12 [gb4,eb5]@12 [f4,db5]@6 [f4,db5]@24 [gb4,db5]@6 [f4,bb4]@6 [gb4,db5]@6 [gb4,db5]@5 ~ [f4,bb4]@6 [f4,f5]@12 [eb4,eb5]@42 ~]/5", // Ab5 Db Ebm Db Ebm Db Ebm Db …
  I: "[~@47 [gb4,gb5]@12 [ab4,f5]@6 ~ [gb4,eb5]@11 [f4,db5]@13 [eb4,ab4]@54]/3", // Gb Db Ebm Db Ab5
})).s("gm_piano").gain(0.05)

// chords · string ensemble 2
const string_ensemble_2 = note(`<
  ~@20 A B A C A B D@2 ~@8 A B A C A B D@2 E@5 F G ~@8 A B A C A B H@2 I J I J K@3
>`.pickRestart({
  A: "[ab3,db4,f4]", B: "[bb3,db4,gb4]", C: "[c4,eb4,ab4]", D: "[c4,eb4,ab4]/2", E: "[f4 gb4 f4 gb4@2, [db4,bb4]]/5",
  F: "[eb4,ab4,c5]", G: "[f4,ab4,db5]@47 ~", H: "[c4,ab4,eb5]/2", I: "[bb3,gb4,db5]", J: "[c4,ab4,eb5]",
  K: "[[db4,ab4,db5]@47 ~]/3", // Db5
})).s("gm_string_ensemble_2").gain(0.3)

// other · acoustic guitar nylon
const acoustic_guitar_nylon = note(`<
  ~@20 A B A C A B C@2 A D B C A D B C A B A C A B C@2 D B D B@2 C A@2 D B C A D B C A B A C A B C@2 B C B C E@3
>`.pickRestart({
  A: "db3", B: "gb2", C: "ab2", D: "bb2", E: "[db2@47 ~]/3",
})).s("gm_acoustic_guitar_nylon").gain(0.48)

// chords · acoustic guitar nylon
const acoustic_guitar_nylon_2 = note("<~@37 A B C ~ D@2 ~ E F G H I ~@5 J K ~@4 L M N ~ O@2 ~@2 P ~@5>".pickRestart({
  A: "~@18 [bb3,db4]@4 ~@2 bb3@10 ~ [bb3,db4]@7 [b3,eb4]@4 ~@2, ~@23 db4@10 ~@15", B: "[b3,eb4]@5 ~@3",
  C: "~@12 c5@9 ~@3 bb4@6 ab4@14 ~@4, ~@5 eb4@13 ~@4 eb4@22 ~@4",
  D: "[~@17 [bb3,db4]@3 ~@4 bb3@10 ~ [bb3,db4]@6 eb4@4 ~@3 db4@24 ~@24, ~@23 db4@10 ~@14 bb3@25 ~@24]/2", // Bbm
  E: "~@3 f4@4 ~, ~@6 bb3@37 ~@5, ~@12 db4@31 ~@5", F: "~@9 gb4@11 ~@4, ~@3 gb3@16 ~@5, ~@6 db4@13 ~@5",
  G: "~@3 f4@3 ~@2, ~@6 bb3@31 ~@11, ~ db4@2 ~", H: "~@3 gb4@4 ~, ~ gb3@6 ~, ~@12 db4@29 ~@7",
  I: "~@3 gb4@4 ~, ~@6 gb3@37 ~@5, ~@2 db4@5 ~", J: "~@4 c4 db4 eb4@2", K: "f4@23 ~@25",
  L: "~@24 bb3@10 ~ [bb3,db4]@6 eb4@4 ~@3, ~@23 db4@10 ~@15", M: "[b3,eb4]@23 ~@25",
  N: "~@12 [ab4,c5]@9 ~@3 c5@5 ~ f4@17 ~, ~@23 ab4@6 bb4@17 ~@2", // Ab
  O: "[~@23 [bb3,db4]@10 ~@2 [bb3,db4]@6 eb4@4 ~@3 db4@29 ~@19, ~@47 bb3@30 ~@19]/2", // Bbm
  P: "~@18 c4@11 [bb3,db4]@6 ~ c4@10 ~@2, ~@17 ab3@13 ~@5 eb4@11 ~@2", // Bbm
})).s("gm_acoustic_guitar_nylon").gain(0.45)

// other · acoustic guitar steel
const acoustic_guitar_steel = note("<[~@24 db3@6 ~@6 ab3 ~@11] [~@24 bb2@6 ~@6 ab3 ~@11] ~@72>")
  .s("gm_acoustic_guitar_steel").gain(0.17)

// chords · acoustic guitar nylon
const acoustic_guitar_nylon_3 = note(`<
  A B C@2 D E F G D E F G D E F G D E F H@4 I@4 J@7 K@5 L@2 M@2 N@6 O@8 K@5 I@4 P@8
>`.pickRestart({
  A: "db3@12 ab3@25 ~@5 ab3@6", B: "bb2@12 ab3@25 ~@5 ab3@6", C: "[gb3@12 ~@3 gb3@3 db3@3 ab2@22 ~@5]/2", D: "db3@7 c3",
  E: "bb2@34 ~@2 bb2@5 ~ ab2@6", F: "gb3@11 ~ gb3@2 db3@2", G: "ab2@13 ~@5 ab2@3 eb3@3",
  H: "[ab2@26 ~@10 ab2@6 ~@6 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@5 db3 gb4@11 ~ [db3,gb3]@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@5 ~ [db3,gb3]@4 ~ db4 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@5 [eb3,ab3,c4], ~@42 eb3@5 [ab3,db4]@11 ~ [ab3,db4,f4]@6 ~@12 [ab3,db4,f4]@6 ~@6 [ab3,db4,f4]@7 db4 ~@10 [bb3,db4,gb4]@6 ~@12 [bb3,db4,gb4]@6 ~@6 [bb3,db4,gb4]@6 ab3@11 ~ [ab3,db4,f4]@6 ~@12 [ab3,db4,f4]@6 ~@6 [ab3,db4,f4]@7, ~@46 [db3,f3]@12 ~@7 [db3,f3,ab3]@12 ~@6 [db3,f3,ab3]@6 ~@6 [gb3,bb3]@12 ~@6 [db3,gb3,bb3]@12 ~@6 [db3,gb3,bb3]@6 ~@5 [db3,f3]@12 ~@7 [db3,f3,ab3]@12 ~@6 [db3,f3,ab3]@6 ~@7]/4", // Db Gb5 Db Ab Db5 Db Gb Db …
  I: "[[eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@5 ~ ab3@4 ~ ab3 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@5 db3 gb4@11 ~ [db3,gb3]@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@5 ~ gb3@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@5 ~ [eb3,ab3]@5 [eb3,ab3,c4], ~@11 [c4,eb4,ab4]@6 [eb3,ab3,c4]@12 [c4,eb4,ab4]@6 [eb3,ab3,c4]@6 [c4,eb4,ab4]@5 [db3,f3]@12 ~@7 [db3,f3,ab3]@12 ~@6 [db3,f3,ab3]@6 ~@6 [gb3,bb3]@12 ~@6 [db3,gb3,bb3]@12 ~@6 [db3,gb3,bb3]@6 ~ db3@54, ~@42 eb3@101 [eb3,ab3,c4]@12 ~@6 [eb3,ab3,c4]@12 ~@6 [eb3,ab3,c4]@6 ~@7, ~@47 db4@11 ~ [ab3,db4,f4]@6 ~@12 [ab3,db4,f4]@6 ~@6 [ab3,db4,f4]@7 db4 ~@10 [bb3,db4,gb4]@6 ~@12 [bb3,db4,gb4]@6 ~@6 [bb3,db4,gb4]@7 ~@11 [c4,eb4,ab4]@6 ~@12 [c4,eb4,ab4]@6 ~@6 [c4,eb4,ab4]@7]/4", // Ab5 Db Gb5 Ab5 Ab Db Gb Ab …
  J: "[ab4@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@5 ~ ab3@4 ~ ab3 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@4 ~ db4 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@5 [db3,bb3] gb4@11 ~ [db3,gb3]@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@5 ~ gb3@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@5 ~ ab3@4 ~ ab3 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@4 ~ db4 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@5 [db3,gb3,bb3], eb4 ~@10 [c4,eb4,ab4]@6 [eb3,ab3,c4]@12 [c4,eb4,ab4]@6 [eb3,ab3,c4]@6 [c4,eb4,ab4]@5 [db3,f3]@12 ~@7 [db3,f3,ab3]@12 ~@6 [db3,f3,ab3]@6 ~@5 [db3,f3]@2 ~@17 [db3,f3,bb3]@12 ~@6 [db3,f3,bb3]@6 ~@6 gb3@12 ~@6 [db3,gb3,bb3]@12 ~@6 [db3,gb3,bb3]@6 ~ db3@52 [db3,f3]@12 ~@7 [db3,f3,ab3]@12 ~@6 [db3,f3,ab3]@6 ~@5 [db3,f3]@2 ~@17 [db3,f3,bb3]@12 ~@6 [db3,f3,bb3]@6 ~@7, ~@42 eb3@149 [eb3,ab3,c4]@12 ~@6 [eb3,ab3,c4]@12 ~@6 [eb3,ab3,c4]@6 ~ eb3@102, ~@47 db4@11 ~ [ab3,db4,f4]@6 ~@12 [ab3,db4,f4]@6 ~@6 [ab3,db4,f4]@6 bb3@11 ~ [bb3,db4,f4]@6 ~@12 [bb3,db4,f4]@6 ~@6 [bb3,db4,f4]@7 db4 ~@10 [bb3,db4,gb4]@6 ~@12 [bb3,db4,gb4]@6 ~@6 [bb3,db4,gb4]@7 ~@11 [c4,eb4,ab4]@6 ~@12 [c4,eb4,ab4]@6 ~@6 [c4,eb4,ab4]@6 db4@11 ~ [ab3,db4,f4]@6 ~@12 [ab3,db4,f4]@6 ~@6 [ab3,db4,f4]@6 bb3@11 ~ [bb3,db4,f4]@6 ~@12 [bb3,db4,f4]@6 ~@6 [bb3,db4,f4]@7]/7", // Ab5 Db Gb Gb5 Ab5 Db Gb Ab …
  K: "[gb4@11 ~ [db3,gb3]@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@5 ~ gb3@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@5 ~ ab3@4 ~ ab3 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@5 db3 gb4@11 ~ [db3,gb3]@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@5 ~ [db3,gb3]@4 ~ db4 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@5 [eb3,ab3,c4], db4 ~@10 [bb3,db4,gb4]@6 [db3,gb3,bb3]@12 [bb3,db4,gb4]@6 [db3,gb3,bb3]@6 [bb3,db4,gb4]@6 [eb3,ab3,c4]@12 [c4,eb4,ab4]@6 [eb3,ab3,c4]@12 [c4,eb4,ab4]@6 [eb3,ab3,c4]@6 [c4,eb4,ab4]@6 db4@11 ~ [ab3,db4,f4]@6 ~@12 [ab3,db4,f4]@6 ~@6 [ab3,db4,f4]@7 db4 ~@10 [bb3,db4,gb4]@6 ~@12 [bb3,db4,gb4]@6 ~@6 [bb3,db4,gb4]@6 ab3@11 ~ [ab3,db4,f4]@6 ~@12 [ab3,db4,f4]@6 ~@6 [ab3,db4,f4]@7, ~@42 db3@52 [db3,f3]@12 ~@7 [db3,f3,ab3]@12 ~@6 [db3,f3,ab3]@6 ~@6 [gb3,bb3]@12 ~@6 [db3,gb3,bb3]@12 ~@6 [db3,gb3,bb3]@6 ~@5 [db3,f3]@12 ~@7 [db3,f3,ab3]@12 ~@6 [db3,f3,ab3]@6 ~@7, ~@90 eb3@149 ~]/5", // Gb5 Ab5 Db Gb5 Db Ab Gb Ab …
  L: "[[eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@5 ~ ab3@4 ~ ab3 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@5 [db3,gb3,bb3], ~@11 [c4,eb4,ab4]@6 [eb3,ab3,c4]@12 [c4,eb4,ab4]@6 [eb3,ab3,c4]@6 [c4,eb4,ab4]@5 [db3,f3]@12 ~@7 [db3,f3,ab3]@12 ~@6 [db3,f3,ab3]@6 ~@7, ~@7 eb3@9, ~@47 db4@11 ~ [ab3,db4,f4]@6 ~@12 [ab3,db4,f4]@6 ~@6 [ab3,db4,f4]@7]/2", // Ab5 Db Gb Ab Db
  M: "[gb4@11 ~ [db3,gb3]@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@5 ~ gb3@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@5 ~ [eb3,ab3]@5 [eb3,ab3,c4], db4 ~@10 [bb3,db4,gb4]@6 [db3,gb3,bb3]@12 [bb3,db4,gb4]@6 [db3,gb3,bb3]@6 [bb3,db4,gb4]@6 [eb3,ab3,c4]@12 [c4,eb4,ab4]@6 [eb3,ab3,c4]@12 [c4,eb4,ab4]@6 [eb3,ab3,c4]@6 [c4,eb4,ab4]@7, ~@7 db3@9]/2", // Gb5 Ab5 Ab Gb Ab
  N: "[ab4@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@5 ~ ab3@5 ~ [f4,bb4]@11 ~ [f3,bb3]@5 ~ [f4,bb4]@11 ~ [f3,bb3]@5 ~ [f4,bb4]@5 ~ bb3@5 bb3 gb4@11 ~ [db3,gb3]@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@5 ~ gb3@5 [bb3,db4] [f4,bb4]@11 ~ [f3,bb3]@5 ~ [f4,bb4]@11 ~ [f3,bb3]@5 ~ [f4,bb4]@5 ~ bb3@5 bb3 gb4@11 ~ [db3,gb3]@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@5 ~ [db3,gb3]@5 [gb3,bb3] gb4@11 ~ [db3,gb3]@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@5 ~ [db3,gb3]@5 [eb3,ab3,c4], eb4 ~@10 [c4,eb4,ab4]@6 [eb3,ab3,c4]@12 [c4,eb4,ab4]@6 [eb3,ab3,c4]@6 [c4,eb4,ab4]@6 [f3,bb3,db4]@12 [db4,f4,bb4]@6 [f3,bb3,db4]@12 [db4,f4,bb4]@6 [f3,bb3,db4]@6 [db4,f4,bb4]@6 [db3,gb3]@12 ~@6 [db3,gb3,bb3]@12 ~@6 [db3,gb3,bb3]@6 ~ db3@53 [db3,gb3]@12 ~@6 [db3,gb3,bb3]@12 ~@6 [db3,gb3,bb3]@6 ~@6 db3@12 ~@6 [db3,gb3,bb3]@12 ~@6 [db3,gb3,bb3]@6 ~@7, ~@42 eb3@245 ~, ~@90 f3@53 f3@12 ~@6 [f3,bb3,db4]@12 ~@6 [f3,bb3,db4]@6 ~ f3@102, ~@96 db4 ~@10 [bb3,db4,gb4]@6 ~@12 [bb3,db4,gb4]@6 ~@6 [bb3,db4,gb4]@6 ~@12 [db4,f4,bb4]@6 ~@12 [db4,f4,bb4]@6 ~@6 [db4,f4,bb4]@7 db4 ~@10 [bb3,db4,gb4]@6 ~@12 [bb3,db4,gb4]@6 ~@6 [bb3,db4,gb4]@7 db4 ~@10 [bb3,db4,gb4]@6 ~@12 [bb3,db4,gb4]@6 ~@6 [bb3,db4,gb4]@7]/6", // Ab5 Bb5 Gb5 Bbm Bb5 Gb5 Gb Gb5 …
  O: "[[eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@5 ~ ab3@4 ~ ab3 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@4 ~ [ab3,db4] f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@4 ~ db4 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@5 [db3,bb3] gb4@11 ~ [db3,gb3]@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@5 ~ gb3@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@5 ~ ab3@4 ~ ab3 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@4 ~ db4 f4@11 ~ [db3,f3]@5 ~ [db4,f4]@11 ~ [db3,f3]@5 ~ [db4,f4]@5 ~ [db3,f3]@5 [db3,gb3,bb3], ~@11 [c4,eb4,ab4]@6 [eb3,ab3,c4]@12 [c4,eb4,ab4]@6 [eb3,ab3,c4]@6 [c4,eb4,ab4]@5 [db3,f3]@12 ~@7 [db3,f3,ab3]@12 ~@6 [db3,f3,ab3]@6 ~@5 [db3,f3]@2 ~@17 [db3,f3,ab3]@12 ~@6 [db3,f3,ab3]@6 ~@5 [db3,f3]@2 ~@17 [db3,f3,bb3]@12 ~@6 [db3,f3,bb3]@6 ~@6 gb3@12 ~@6 [db3,gb3,bb3]@12 ~@6 [db3,gb3,bb3]@6 ~ db3@52 [db3,f3]@12 ~@7 [db3,f3,ab3]@12 ~@6 [db3,f3,ab3]@6 ~@5 [db3,f3]@2 ~@17 [db3,f3,bb3]@12 ~@6 [db3,f3,bb3]@6 ~@7, ~@42 eb3@197 [eb3,ab3,c4]@12 ~@6 [eb3,ab3,c4]@12 ~@6 [eb3,ab3,c4]@6 ~ eb3@102, ~@47 db4@11 ~ [ab3,db4,f4]@6 ~@12 [ab3,db4,f4]@6 ~@6 [ab3,db4,f4]@7 ~@11 [ab3,db4,f4]@6 ~@12 [ab3,db4,f4]@6 ~@6 [ab3,db4,f4]@6 bb3@11 ~ [bb3,db4,f4]@6 ~@12 [bb3,db4,f4]@6 ~@6 [bb3,db4,f4]@7 db4 ~@10 [bb3,db4,gb4]@6 ~@12 [bb3,db4,gb4]@6 ~@6 [bb3,db4,gb4]@7 ~@11 [c4,eb4,ab4]@6 ~@12 [c4,eb4,ab4]@6 ~@6 [c4,eb4,ab4]@6 db4@11 ~ [ab3,db4,f4]@6 ~@12 [ab3,db4,f4]@6 ~@6 [ab3,db4,f4]@6 bb3@11 ~ [bb3,db4,f4]@6 ~@12 [bb3,db4,f4]@6 ~@6 [bb3,db4,f4]@7]/8", // Ab5 Db Db5 Db Gb Gb5 Ab5 Db …
  P: "[ab4@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@5 ~ ab3@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@5 ~ gb3@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@11 ~ [eb3,ab3]@5 ~ [eb4,ab4]@5 ~ ab3@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@11 ~ [db3,gb3]@5 ~ [db4,gb4]@5 ~ gb3@5 ~ [eb4,ab4]@46 ~@2 f4@140 ~@4, eb4 ~@10 [c4,eb4,ab4]@6 [eb3,ab3,c4]@12 [c4,eb4,ab4]@6 [eb3,ab3,c4]@6 [c4,eb4,ab4]@6 [db3,gb3,bb3]@12 [bb3,db4,gb4]@6 [db3,gb3,bb3]@12 [bb3,db4,gb4]@6 [db3,gb3,bb3]@6 [bb3,db4,gb4]@7 ~@11 [c4,eb4,ab4]@6 ~@12 [c4,eb4,ab4]@6 ~@6 [c4,eb4,ab4]@7 ~@11 [bb3,db4,gb4]@6 ~@12 [bb3,db4,gb4]@6 ~@6 [bb3,db4,gb4]@7 ~@47 [ab3,db4]@140 ~@5, ~@42 eb3@53 [eb3,ab3,c4]@12 ~@6 [eb3,ab3,c4]@12 ~@6 [eb3,ab3,c4]@6 ~ eb3@53 [eb3,ab3,c4]@48 ~@145, ~@90 db3@53 [db3,gb3,bb3]@12 ~@6 [db3,gb3,bb3]@12 ~@6 [db3,gb3,bb3]@6 ~ db3@52 [db3,f3]@140 ~@6]/8", // Ab5 Gb5 Ab5 Gb5 Ab5 Ab Gb Ab …
})).s("gm_acoustic_guitar_nylon").gain(0.19).pan(0.4)

// drums · rim
const rim = s("rim").struct("<~@20 [~ x ~@2]!50 ~@4>").gain(0.54)

// drums · tambourine
const tambourine = s("tb").struct("<~@19 [~@3 x]!51 ~@4>").gain(0.6)

// drums · cabasa
const cabasa = s("cabasa:4").struct("<~@20 [x!8]!50 ~@4>").gain(1.83)

stack(
  piano, string_ensemble_2, acoustic_guitar_nylon, acoustic_guitar_nylon_2, acoustic_guitar_steel,
  acoustic_guitar_nylon_3, rim, tambourine, cabasa
)

More by The Kelly Family