Strudelify
Il mio nome e mai piu cover art

1999 · Il mio nome è mai più (1999-2024)

Il mio nome e mai piu

LIGABUE

KeyA minorTempo97 bpm
0:00/0:00
// Il mio nome e mai piu — LIGABUE
// 97 bpm, 4/4, key A minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 109 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(97/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
const bass = note(`<
  A B@2 C D E F E G H I J K H L M N O P Q R H I J S T U V W X Y Z W X AA AB I J K AC L M N O P Q R H I J S AD AE AF AG
  AH AI AJ AK AL AM AN AO AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD BE BF BG BH BI AF AG AH AI AJ AK AL AM AF BJ BK
  BL BM BN BO AM AF BJ BK BP BM BN BO BQ BR@2
>`.pickRestart({
  A: "~@13 a1 c2@2", B: "a1@2 g1@2 c2@2 a2@7 a1 c2@2", C: "a1@2 g1@2 c2@2 a2@7 c2 c2@2", D: "a1@2 g1@2 a1@2 e1 ~@9",
  E: "a1!8", F: "a1!5 a2@3", G: "a1@2 a2 g2 e2 g2 c3@2 a2@4 g2 a2 d2 e2", H: "a1 g1 a1 ~@2 g1 a1 g1 a1@2 ~@2 c2 a1@2 ~",
  I: "f1 ~ f1@2 ~@5 f1 g1@2 a1@2 c2@2", J: "c2 a1 c2@2 ~ a1 c2 a1 c2 ~@2 c2!2 d2@2 d2", K: "g1@2 g1@2 ~@2 g2 a2@5 g2@4",
  L: "f1@2 f1 ~@7 f1@2 ~ g1@2 ~", M: "c2 a1 c2@2 ~ a1 c2 a1 c2 ~@3 c2 d2@2 d2",
  N: "g1@2 g1 ~ g2 a2 c3 d3 d3@2 c3 ~ a2 g2 a2 ~", O: "a1@2 e2@2 f#2@2 g2@4 a2@5 ~",
  P: "f1@2 f1@2 f1@2 f1@3 f1 f1@2 f1@2 g1@2", Q: "c2@2 c2@2 ~@2 c2@3 c2 c2@2 c2@2 d2@2", R: "g2!2 ~ g2@5",
  S: "g1!2 ~ g1 ~ b1 d2 g2", T: "d2@3 g2 f#2@4", U: "d2@5 g2@3 f#2@8", V: "a1@2 a1@2 a1@2 a1@2 a1@2 e2@4 e2 d2",
  W: "f1!7 g1", X: "c2@2 c2@2 c2@2 c2@2 c2@2 c2@2 c2@2 c2 d2",
  Y: "g1@2 g1@2 g1@2 g1 a1 b1 ~ g#2 b2 d3@2 b2@2, ~@9 e2@2 ~@5", Z: "a1@2 a1 ~ a1@2 a1@2 a1 ~ a1 ~ a1 ~ a1 c2",
  AA: "g1@2 g1 ~ g1@2 g1 ~ g1@2 g2@2 g#1@2 g#2@2", AB: "a1@2 ~@10 c2 a1@2 g1",
  AC: "a1 g1 a1 ~@2 g1 a1 g1 a1@2 ~@2 c2 a1@2 g1", AD: "[d2,d3]@3 [g2,g3] [f#2,f#3]@4",
  AE: "[d2,d3]@2 [d2,d3]@3 [g2,g3]@3 [f#2,f#3]@8", AF: "a1 g1 a1@2 ~ g1 a1 ~ a1@2 ~ a1 c2!2 a1 g1",
  AG: "f1 e1 f1@2 ~ e1 f1 ~ f1@2 ~@2 e1 f1@2 ~", AH: "c2 b1 c2@2 ~ c2!2 b1 c2@2 ~@2 c2!3 a1",
  AI: "g1 f1 g1 ~@2 f1 g1@2 g1@2 g1@2 g#1@2 g#1 ~", AJ: "a1 g1 a1@2 ~ g1 a1 g1 a1 ~@3 c2 b1 a1 g1",
  AK: "f1 e1 f1@2 ~ e1 f1 e1 f1 ~@3 f1@2 g1@2", AL: "c2 b1 c2@2 ~ b1 c2 b1 c2 ~@2 g1 c2!3 a1",
  AM: "g1!2 g1@2 ~@2 g1@2 g#1 ~ e2 ~ d2 c2 a1 g1", AN: "a1 c2 a1@2 g3 ~ a3@4 g3@2 d3 c3 a2@2", AO: "~@15 g2",
  AP: "a2 c3 ~ c3 g3 c3 a3@4 g3@4 ~@2", AQ: "~@7 e2", AR: "a1@2 ~@6 c2@2 d2@2 c2@3 ~", AS: "~@6 c2@2 d2@4 c2@3 ~",
  AT: "~@6 c2@9 ~", AU: "~@5 e2@7 d2@4", AV: "~@3 c2@3 g1 a1", AW: "~@3 c2@2 ~ g1 e2", AX: "d2@4 ~@2 c2@5 ~ g1@2 a1@2",
  AY: "a1@2 ~@6 a1@2 c2@2 d2@3 ~", AZ: "a1 g1@3 ~@3 a1 c2 d2 e2@2 g1@4", BA: "a1@2 g1@2 ~@6 d2@3 c2@3",
  BB: "a1@2 g1@2 ~@3 a1 c2 d2 [d2,e2] ~ g1@4", BC: "a1@2 g1@2 ~@4 d2@3 c2@2 b1@2 ~", BD: "a1 ~ c2@2", BE: "f1@2 ~ c2@5",
  BF: "g1 ~@5 c2@9 ~", BG: "f1@2 ~@3 e2@3 d2@4 c2@3 ~", BH: "[d2,d3]@2 [g2,g3] [f#2,f#3]@4 ~",
  BI: "~ d2 e2 ~ d2 c2 a1 g1 a1 c2 ~ c2 g2 c2 a2@2", BJ: "f1 e1 f1@2 ~ e1 f1 ~ f1@2 ~ f1!2 ~ g1@2",
  BK: "c2 b1 c2@2 ~ b1 c2 b1 c2@2 ~ b1 c2 b1 c2 a1", BL: "g1 f1 g1 ~@2 f1 g1@2 g2@2 g2@2 g#2@2 g#2@2",
  BM: "a2 e2 a1@2 ~ g1 a1 g1 a1 ~@2 a1 c2 b1 a1 g1", BN: "f1 e1 f1@2 ~ e1 f1 e1 f1 ~@2 f1 f1@2 g1@2",
  BO: "c2 b1 c2@2 ~ a1 c2 a1 c2 ~@2 g1 c2!3 a1", BP: "g1 f1 g1 ~@2 f1 g1@2 g1@2 g2@2 g#1@2 g#2@2",
  BQ: "g1 f1 g1@2 ~@2 g1@10", BR: "[a1@31 ~]/2",
})).s("gm_electric_bass_finger").gain(0.68)

// chords · acoustic guitar steel
const acoustic_guitar_steel = note(`<
  ~ A B@2 A C D E F G H I J K L M N K O P N G H I J Q R G H I J G H I S T H I J K L M N K O P N G H I J Q R G H I J G H
  I S U V W X G H Y Z K AA AB AC G AD AE J K AA AB AC Q R G H I J G H I S G H I J G H I S G H I J G H I S AF@2
>`.pickRestart({
  A: "[e2,a2]!16", B: "[e2,a2] ~ [e2,a2] ~ [e2,a2] ~ [e2,a2]!10",
  C: "[e3,a3,c4]!3 [e3,a3,c4]@2 [e3,a3,c4]!2 [e3,a3,c4]@2 [e3,a3,c4]!7", // Am
  D: "[e3,a3,c4]!3 [e3,a3,c4]@2 [e3,a3,c4]!6 [a3,c4,e4]!3 [a3,c4] [e3,a3,c4]", // Am
  E: "[e3,a3,c4]@2 ~ a3 [e3,a3,c4] [e3,a3,c4]@2 [e3,a3,c4]@2 [e3,a3,c4]!3 [a3,c4,e4]!4, ~ [e3,a3,c4] ~@6", // Am
  F: "a3 [e3,a3,c4]!6 [e3,a3,c4]@2 [e3,a3,c4]!3 [a3,c4,e4]!4", // Am
  G: "[a3,c4]@2 [a3,c4]@2 [c3,e3,a3,c4]@3 [c3,e3,a3,c4] ~ [c3,a3,c4] ~ [a2,c3] [c3,a3,c4]@3 [c3,e3,a3,c4], [c3,e3]@2 ~@2 [a2,e3] [c3,e3,a3,c4] ~@2", // Am F Am F Am C A5 Am
  H: "[f3,a3]@2 [f2,c3]@4 [f3,a3,c4] ~@2 f3 [f3,c4] ~@3 [f3,c4]@2, c4@5 ~@2 [f3,a3,c4]@2 a3@3 [f3,a3,c4]@2 ~@2, ~@8 c4@2 ~ [f2,c3]@2 a3@3", // F F5 F F5 F F5
  I: "e3@2 [g2,c3]@4 [e3,g3,c4] ~@2 e3 [e3,c4] ~@3 [e3,c4]@2, [g3,c4]@6 ~ [e3,g3,c4]@2 g3@3 [e3,g3,c4]@2 ~@2, ~@8 c4@2 ~ [g2,c3]@2 g3@3", // C5 C C5 C C5
  J: "g2@2 g2@2 [d3,g3,d4,g4]@3 [d4,g4] ~ [d4,g4] [d4,g4]@2 [d4,g4]@3 [g3,d4,g4], d3@4 ~@3 g3@8 ~, ~@8 d3@3 ~@5", // G5
  K: "a2@2 a2@2 [a3,c4,e4]@3 [a3,c4,e4] [e3,a3] ~@2 [a3,c4,e4] [a3,c4,e4]@3 [a3,c4,e4], e3@7 ~@2 [a3,c4,e4]@2 ~@5, ~@10 e3@3 ~@3", // Am A5 Am
  L: "~@2 [f2,c3]@2 [f3,a3,c4,e4]@3 [a3,c4,e4] ~ [a3,c4] [a3,c4,e4]@2 [a3,c4,e4]@2 [f3,a3,c4]!2, [f3,a3,c4,e4]@2 ~@2 [f2,c3] ~@3", // F5 Fmaj7 Am F Fmaj7 F5
  M: "[e3,g3,c4]@4 [e3,g3,c4]@3 [g3,c4,e4] ~ [g3,c4,e4] ~@2 [g3,c4,e4]!2 ~ [g2,c3], ~@8 g2@7 ~, ~@4 c3 [g3,c4,e4] ~ [g3,c4,e4], ~@11 c3@3 ~@2", // C C5 C
  N: "~@2 [b3,d4,g4]@2 [b3,d4,g4]@3 ~ [g3,d4,g4]!2 [g3,d4,g4]@2 [g3,d4,g4]!3 [b3,d4,g4], [b3,d4,g4] ~@7, ~ g3@7 ~@2 d3@6", // G G5 G
  O: "c3@2 c3@2 [f3,a3,c4]@3 [a3,c4] ~ [a3,c4] [f3,a3,c4]@2 [f3,a3,c4]@2 [f3,a3,c4]!2, f2@2 ~@2 [f2,c3] ~@3", // F Am F F5
  P: "[e3,g3,c4]@4 [e3,g3,c4]@3 [g3,c4,e4] ~ [g3,c4,e4] ~@2 [g3,c4,e4]!2 ~ [g2,c3], ~@8 g2@7 ~, ~@4 c3 [g3,c4,e4] ~ [g3,c4,e4], ~@11 c3@2 ~@3", // C C5 C
  Q: "[a2,d4]@2 [a2,d4]@2 [a3,d4,g4]@3 [d4,g4] ~ [d4,g4] d4@2 d4@3 [a3,d4,f#4], d3@4 ~@3 a3@8 ~, ~@8 d3@2 f#4@5 ~", // D5 Dsus4 G5 D
  R: "[a3,d4,g4]@2 ~@2 d3@3 [a3,d4,f#4]@4 [a2,d3] [a3,d4,f#4] a2 [a3,d4,f#4]!2, ~@2 [a3,d4,g4]@5 ~@9, ~@4 a2@7 ~@2 d3@3", // Dsus4 D D5 D Dsus4
  S: "g2@2 g2@2 [d3,g3,d4,g4]@3 [d4,g4] ~ [d4,g4] [d4,g4]@2 [d4,g4]@2 [b3,d4,g#4] ~, d3@4 ~@3 g3@7 ~@2, ~@8 d3@3 ~@5", // G5 G#dim
  T: "[c3,e3,a3,c4]@2 [e2,a2]!12 [c3,e3,a3,c4]@2", U: "[e3,a3,e4,a4]@12 ~@3 [e3,a3,c4,e4]",
  V: "[e3,a3,c4,e4]!2 [e3,a3,c4,e4]@7 ~ [e3,a3,c4,e4] ~ [e3,a3,c4,e4] ~@2 [e3,a3,c4,e4]", // Am
  W: "[e3,a3,c4,e4]!2 [e3,a3,c4,e4]@4 [e3,a3,c4,e4]@3 [e3,a3,c4,e4] [e3,a3,c4,e4]@4 ~ [e3,a3,c4,e4]", // Am
  X: "[e3,a3,c4,e4]!3 [e3,a3,c4,e4]@3 [e3,a3,c4,e4] [e3,a3,c4,e4]@2 [e3,a3,c4,e4]!7", // Am
  Y: "d3@2 [g2,b2]@4 [d3,g3,d4] ~@2 d3 [d3,d4] ~@3 [d3,d4]@2, [g3,d4]@6 ~ [d3,g3,d4]@2 g3@3 [d3,g3,d4]@2 ~@2, ~@8 d4@2 ~ [g2,b2]@2 g3@3", // G G5 D G5 G
  Z: "f2@2 f2@2 [c3,f3,c4,f4]@3 [c4,f4] ~ [c4,f4] [c4,f4]@2 [c4,f4]@3 [f3,c4,f4], c3@4 ~@3 f3@8 ~, ~@8 c3@3 ~@5", // F5
  AA: "~@2 [f2,c3]@2 [f3,a3,c4,f4]@3 [a3,c4,f4] ~ [a3,c4] [a3,c4,f4]@2 [a3,c4,f4]@2 [f3,a3,c4]!2, [f3,a3,c4,f4]@2 ~@2 [f2,c3] ~@3", // F5 F Am F F5
  AB: "[d3,g3,d4]@4 [d3,g3,d4]@3 [g3,d4,g4] ~ [g3,d4,g4] ~@2 [g3,d4,g4]!2 ~ [g2,b2], ~@8 g2@7 ~, ~@4 b2 [g3,d4,g4] ~ [g3,d4,g4], ~@11 b2@3 ~@2", // G5 G G5
  AC: "~@2 [a3,c4,f4]@2 [a3,c4,f4]@3 ~ [f3,c4,f4]!2 [f3,c4,f4]@2 [f3,c4,f4]!3 [a3,c4,f4], [a3,c4,f4] ~@7, ~ f3@7 ~@2 c3@6", // F F5 F
  AD: "[g3,b3]@2 [g2,d3]@4 [g3,b3,d4] ~@2 g3 [g3,d4] ~@3 [g3,d4]@2, d4@5 ~@2 [g3,b3,d4]@2 b3@3 [g3,b3,d4]@2 ~@2, ~@8 d4@2 ~ [g2,d3]@2 b3@3", // G G5 G G5 G G5
  AE: "c3@2 [f2,a2]@4 [c3,f3,c4] ~@2 c3 [c3,c4] ~@3 [c3,c4]@2, [f3,c4]@6 ~ [c3,f3,c4]@2 f3@3 [c3,f3,c4]@2 ~@2, ~@8 c4@2 ~ [f2,a2]@2 f3@3", // F F5 C F5 F
  AF: "[a3@3 ~, e3@11 ~@5, c4@9 ~@7]/2",
})).s("gm_acoustic_guitar_steel").gain(0.31)

// chords · string ensemble 2
const string_ensemble_2 = note(`<
  ~@27 A B C D A B C D ~@18 A B C D A B C D ~@12 E@4 ~@4 E@2 A B C D A B C D A B C D A B C D A B C D A B C D F@2
>`.pickRestart({
  A: "[a2,c4]", B: "[f2,a3]", C: "[c2,e3]", D: "[g2,b3]", E: "[a2@31 ~]/2", F: "[a2,c4]/2",
})).s("gm_string_ensemble_2").gain(0.46)

// chords · pad sweep
const pad_sweep = note("<~@73 A@4 ~@5 B ~@11 C D ~@3 E F G H I F G J K@2>".pickRestart({
  A: "[~@16 g3@16 f3@16 g3@15 ~, a3@63 ~]/4", B: "[d5,a5]", C: "~@5 e4@3", D: "a4@5 ~@11", E: "c5", F: "f4", G: "c4",
  H: "g4@3 g#4", I: "a4", J: "[g4,d5]@15 ~", K: "[[e4,a4]@7 ~]/2",
})).s("gm_pad_sweep").gain(0.42)

// other · distortion guitar
const distortion_guitar = note(`<
  ~ A B C D E@4 ~@3 F G H I J K L M N O P Q R S T U V W X U V W X Y ~@2 Z AA AB AC AD AE AF AG AH AI AJ Q R AK AL U V W
  X U V W X ~ AM ~ E ~@16 AN AO U V W X U V W X U V W X U V W X E@8 AP@2
>`.pickRestart({
  A: "~@2 g5 ~@3 g5 ~@3 g5 ~@2 g5!3", B: "~@2 g5 ~@2 g5!3 ~@2 g5 ~@2 g5 ~ g5",
  C: "~ g5!2 e5!3 ~ g5!2 e5!3 ~ [e4,b4] ~ [b4,e5]", // E5
  D: "[e4,b4] [b4,e5] ~ e5!4 [e5,b5] ~@2 e3 [e3,a3] ~ a3 ~ a3, ~@3 b4@3 b4@3 [e3,a3]@2 ~ [e3,a3]@2 [e3,a3]@2", // E5 A5
  E: "c4@2 g4 ~ a3 ~ e4@9 ~", F: "~@12 g4!2 e4!2", G: "e4!10 [a3,e4] e4!2 ~ e4 ~",
  H: "e4!8 [e4,d#6]!2 [a3,e4,d#6] [e4,d#6]!2 d#6 [e4,d#6] d#6", // Emaj7 A Emaj7
  I: "[e4,d#6]!10 [c4,e4,d#6] [e4,d#6]!2 d#6 [e4,d#6] d#6", J: "[g3,d#6] d#6!4 ~@11", K: "c4 d4!2 c4@2 d4 d4@2",
  L: "f3@2 ~@2 d4@3 ~@5 c4@2 c4@2, ~@2 g3@5 d4@5 ~@4, ~@5 f3@3", M: "g3!2 d4 d4@2 [g3,c4] ~ g3, ~@3 c4",
  N: "d4@5 ~ d4@5 c4!3 b3!2", O: "e4!4 a3 ~@5 [a2,e3] ~ [a1,e2] [a2,e3] ~@2",
  P: "e4!4 a3@2 ~@4 [f2,c3] ~@2 [f2,c3] ~ c3, f2@3 ~@13", Q: "~ e4!3 a3 ~@5 a2 ~@2 a2 ~ e4, [g2,e4] ~@7",
  R: "e4!4 a3 ~@5 [g2,d3] ~@2 [g2,d3] ~@2", S: "d3!5 ~@3 d3!5 ~@3",
  T: "[d3,g3] d3 [d3,g3] d3 [d3,g3] d3 ~@2 [d3,f#3] d3 [d3,f#3] d3 [d3,f#3] ~@3", U: "a2", V: "f2", W: "c3",
  X: "a2!8 g#2!8", Y: "a3!9 ~@7", Z: "~@15 e4", AA: "a3 e4!3 a3 ~@5 a2 ~ a2 ~ a3!2", AB: "e4!4 a3 ~@5 a2 ~ a2 ~@2 e4",
  AC: "a3 e4!3 a3!2 ~@4 a2!4 ~ c3, f2@3 ~@13", AD: "e4!4 ~@6 a2 ~@2 a2 ~ g3",
  AE: "a3@2 g4@2 c4 ~@5 g2 ~@2 g2 ~@2, ~@6 e4@9 ~", AF: "f2@15 ~", AG: "c4@2 g4 ~ g3 ~ e4@9 ~",
  AH: "d4@5 ~@3 e4@4 e4@4", AI: "a2@9 ~ a2 ~ a2 ~@3", AJ: "e4!4 a3@2 ~@4 f2 ~ f2 ~@2 c3, f2@3 ~@13",
  AK: "d3!7 ~ d3!6 ~@2", AL: "d3!6 e4@2 d3!4 [e2,e4]@4, e4@4 d4@3 ~ d4@4 d3 ~@3", AM: "c4@2 g4 ~ a3 ~ e4@8 ~@2",
  AN: "[g3,c4] [a3,d4] a4 d5@5", AO: "[g3,c4] [a3,d4] a4 f#5@2 d5@3", AP: "[a2,e3]/2",
})).s("gm_distortion_guitar").gain(0.23).pan(0.1)

// other · distortion guitar · soft notes
const distortion_guitar_soft = note("<~ A B C D ~@7 E F G H I ~@18 J ~@15 K ~@57>".pickRestart({
  A: "~@5 g5 ~@10", B: "~@14 g5 ~", C: "~@14 b4 ~", D: "~@8 [e5,b5] ~@7", E: "~@11 d4 ~@4",
  F: "~ a3!9 ~ a3!2 [a3,e4] a3 [a3,e4]", G: "a3!10 ~ a3!2 [a3,e4] a3 [a3,e4]", H: "c4!10 ~ c4!2 [c4,e4] c4 [c4,e4]",
  I: "d4 [g3,d4]!4 [g3,d4,d#6]!5 ~@6", J: "~@9 a3!7", K: "~@14 d3 ~",
})).s("gm_distortion_guitar").gain(0.15).pan(0.1)

// chords · electric guitar clean
const electric_guitar_clean = note(`<
  ~@16 A B C D@2 ~@6 E F G H E F G I J ~@6 K@2 L D@2 ~@6 E F G H E F G I J ~@3 M N O P Q R S T@2 U V W Q R S X Y Z E F G
  H E F G I E F G H E F G I E F G H E F G I AA ~
>`.pickRestart({
  A: "~@15 e3", B: "[a3,c4,e4]@15 ~", C: "f3@2 g3@4 f3@2 g3@5 e3@2 c3",
  D: "[[e3,g3,c4]@13 ~@3 [d3,g3,d4]@16, ~@14 g2@5 ~@13]/2", E: "a2@2 a2!2 ~ a2!2 ~ a2@2 a2@2 c3@2 a2@2",
  F: "a2@2 a2!2 ~ a2!3 ~ a2 a2@2 c3@2 a2 ~", G: "a2@2 a2!2 ~ a2!2 ~ a2@2 a2@2 c3@2 a2 ~",
  H: "a2@2 a2@2 c3@2 a2@2 a2 ~ a2@2 c3@2 a2@2", I: "a2@2 a2@2 c3@2 a2@2 a2 ~ a2@2 d3@2 g#2@2", J: "a3@2 a3 ~@13",
  K: "[~@15 e3 [c4,e4]@15 ~, ~@15 a3@15 ~@2]/2", L: "f3@2 ~@2 d4@2 f3@2 ~@2 c4@3 e3@2 c3, ~@2 g3@4 ~@2 g3@5 ~@3",
  M: "[c4,e4]@2 ~ [c4,e4] ~@2 [c4,e4]@2 ~ [e4,a4]@3 ~@2 [d3,g3]!2", // C A5 G5
  N: "[a3,c4,f4]!2 ~ [a3,c4,f4] ~@2 [a3,c4,f4]@2 [a3,c4] [a3,c4,f4] [c4,f4] [a3,c4,f4]@2 [a3,c4,f4]!2 ~", // F Am F F5 F
  O: "[b3,d4,g4]!2 ~ [b3,d4,g4] ~@2 [d3,g3]@3 ~ [b3,d4,g4]@2 [b3,d4,g4]!4", // G G5 G
  P: "[a3,c4,f4]@2 ~ [a3,c4,f4] ~@2 [a3,c4,f4] ~@2 [a3,c4,g4] ~ [a3,c4,f4] ~@3 c4, ~@7 [a3,c4,g4]", // F Am7 F Am7
  Q: "[a3,c4,e4]@3 [a3,c4,e4] ~@2 [a3,c4,e4] ~@3 [a3,c4,e4] ~@2 [a3,c4,e4]@3", // Am
  R: "~@3 [c4,f4]@2 ~ [a3,c4,f4] ~ [c4,f4] [c3,f3] [c4,f4] [c3,f3] [c4,f4] [c4,f4]@3, f2@2 f3@3 ~@11, ~ c3@2 ~@13", // F5 F F5
  S: "[d3,g3]@2 ~ [g3,d4] ~@2 [d4,g4]@2 ~@2 [d4,g4] ~ [d4,g4] g3@2 ~, ~@4 [d4,g4] ~@3, ~@9 g3@2 g3@2 ~@3", // G5
  T: "[[f3,c4,f4]@3 [f3,c4,f4] ~@2 [c4,f4]@2 ~ [f3,c4,f4] ~@2 [c4,f4] [c4,f4]@2 e3 [c4,e4]@3 c4@3 e4 ~@2 [e4,a4]@3 ~@2 [g3,b3]!2, ~@12 f3@3 a3@15 ~@2, ~@19 e4 ~@2 c4@8 ~@2]/2", // F5 C A5 G
  U: "[b3,d4,g4]!2 ~ [b3,d4,g4] ~@2 [b3,d4,g4]@2 [b3,d4] [b3,d4,g4] [d4,g4] [b3,d4,g4]@2 [b3,d4,g4]!2 ~", // G Bm G G5 G
  V: "[a3,c4,f4]!2 ~ [a3,c4,f4] ~@2 [a2,f3]@3 ~ [a3,c4,f4]@2 [a3,c4,f4]!3 [a#3,c#4,f#4]", // F Dm F F#
  W: "[b3,d4,g4]@2 ~ [b3,d4,g4] ~@2 [b3,d4,g4] ~@2 [b3,d4,a4] ~ [b3,d4,g4] ~@3 d4, ~@7 [b3,d4,a4]", // G Bm7 G Bm7
  X: "[f3,c4,f4]@3 [f3,c4,f4] ~@2 [c4,f4]@2 ~ [f3,c4,f4] [a3,c4,f4] [c4,g4] [a3,c4,g4]!3 [c4,g4]", // F5 F C5 Am7 C5
  Y: "[f#3,d4]@2 ~@4 [c4,f#4]@2 ~ [d4,a4]@3 ~@3 [g3,b3]", // D Cdim D5 G
  Z: "~ [b3,d4,g4] ~ [b3,d4,g4] ~@2 [b3,d4,g4]@2 [b3,d4] [b3,d4,g4] [d4,g4] [b3,d4,g4]@2 [b3,d4,g4]!2 ~", AA: "a2@15 ~",
})).s("gm_electric_guitar_clean").gain(0.19).pan(0.9)

// chords · pad warm
const pad_warm = note(`<
  ~ A@4 B@4 C D E F C D E F G H I J C D E F K@2 ~@6 L M N D E F C D E F G O P Q C D E F K@2 ~@6 L M R@3 S G H J H G H J
  H T U T U G H J H K@2 ~@6 L M ~@6 L M ~@6 V M W@2
>`.pickRestart({
  A: "[a1@63 ~]/4", B: "[[a1,c4]@63 ~]/4", C: "[a2,e3]", D: "[f2,c3]", E: "[c2,e3]", F: "[g2,d3]", G: "[a2,c4]",
  H: "[f2,a3]", I: "[c3,e4]", J: "[g2,b3]", K: "[d3@3 g3 f#3@4 d3@3 g3 f#3@4, d2]/2", L: "~@6 b3@9 ~", M: "a3 g#3",
  N: "[a2,e3] ~@7", O: "f3@3 d4@3 c4@2, f2", P: "c4@3 d4@3 c4@2, c3", Q: "b3@2 d4 c4, g2", R: "[a2, e3 ~@23]/3",
  S: "[e3,a3]", T: "[a3,c4]", U: "[b3,d4]", V: "e5@5 ~ g5@7 ~@3", W: "[a3@5 ~@3]/2",
})).s("gm_pad_warm").gain(0.25)

// other · overdriven guitar
const overdriven_guitar = note(`<
  ~ A B ~@2 A B ~@6 A B ~@5 C D ~@3 E F G H I J G H I K L ~@3 M B ~@4 N O P Q ~@2 R S G H I J G H I K T U V ~@17 W X G H
  I J G H I K G H I J G H I K G H I Y Z AA I K AB@2
>`.pickRestart({
  A: "~ a1!14 ~", B: "a1 ~@15", C: "~ [g2,d3]!14 ~", D: "[g2,d3] ~@15", E: "~@15 e3",
  F: "g3!8 [f#3,d4]!2 ~ [f#3,d4] ~ [f#3,d4] ~ [f#3,d4]", G: "a2@2 a2@2 c3@2 a2@2 a2@2 a2@2 c3@2 a2 ~",
  H: "a2 ~ a2@2 c3@2 a2@3 ~ a2@2 c3@2 a2 ~", I: "a2 ~ a2@2 c3@2 a2@2 ~@2 a2@2 c3@2 a2 ~",
  J: "a2@2 a2@2 c3@2 a2@3 ~ a2@2 c3@2 a2@2", K: "a2@2 a2@2 c3@2 a2@3 ~ a2@2 d3@2 e3@2", L: "[a2,e3]@2 [a2,e3] ~@13",
  M: "~ a1!12 ~ a1 ~", N: "c2@7 ~", O: "~ [g2,d3]!12 d3 [g2,d3] ~", P: "[a2,e3]!13 e3 [a2,e3] ~", Q: "[a2,e3] ~@15",
  R: "d3!16", S: "d3!8 [d3,d4]!2 d4 [d3,d4] ~ [d3,d4] ~ [d3,d4]", T: "~@2 a3 ~ a3!12", U: "a3!16",
  V: "a3!3 ~ a3 ~ a3 ~@9", W: "b3 c4@3", X: "~@6 g4!3 e4!7, d2", Y: "a2@2 a2@2 c3@2 a2@3 [a3,d4]!7",
  Z: "[g3,c4]!12 [g3,c4]@2 a2 ~", AA: "e5!12 e5@2 a2 ~", AB: "[a1@31 ~]/2",
})).s("gm_overdriven_guitar").gain(0.22).pan(0.8)

// other · overdriven guitar · soft notes
const overdriven_guitar_soft = note(`<
  ~ A ~@3 A ~@7 A ~@6 B ~@4 C D ~@12 E ~@6 F G ~@4 H ~@8 I ~ J K ~@44
>`.pickRestart({
  A: "~@15 a1", B: "~@15 [g2,d3]", C: "~@14 d3 ~", D: "~@10 [f#3,d4] ~ [f#3,d4] ~ [f#3,d4] ~", E: "~@13 a1 ~ a1",
  F: "~@13 g2 ~ [g2,d3]", G: "~@13 a2 ~ [a2,e3]", H: "~@10 d3 ~ [d3,d4] ~ [d3,d4] ~", I: "a3!2 ~ a3 ~@12",
  J: "~@3 a3 ~ a3 ~ a3!9", K: "a3!16",
})).s("gm_overdriven_guitar").gain(0.15).pan(0.8)

// drums · kick
const kick = s("bd").struct(`<
  A B C D E F@3 G F@7 E F@3 H F@4 I J K L M N K O M P Q F@5 R S F@3 H F@4 I T K L M U K O M P O V W X Y@2 Z Y F@2 Z E
  Y@2 Z Y F@2 Z E I AA K L M AB K O M P K L M AC K O M AD K L M AC K O M AE AF ~
>`.pickRestart({
  A: "~@11 x ~ x ~ x", B: "x ~ x ~@5 x ~@2 x ~ x ~ x", C: "x ~ x ~@5 x ~@2 x ~ x!2 ~", D: "x ~@7 x ~@2 x ~ x ~ x",
  E: "x ~ x ~@6 x ~ x ~ x ~ x", F: "x!2 ~@2 x!2 ~@2", G: "x ~ x ~@4 x ~@4 x ~@3", H: "x ~@3 x ~@2 x ~ x ~@6", I: "x!4",
  J: "x!2 ~ x!2 ~@2 x ~ x!2 ~ x ~@2 x", K: "x ~ x ~@5 x ~ x ~@4 x", L: "x ~ x!2 ~@4 x ~ x ~@5",
  M: "x ~ x ~@4 x!2 ~ x ~@3 x ~", N: "x ~ x ~@5 x ~@2 x ~@2 x ~", O: "x ~@2 x ~@4 x ~ x ~@5",
  P: "x ~@2 x ~@4 x ~@3 x ~ x ~", Q: "x ~@14 x", R: "x ~ x ~@5 x ~ x ~@2 x ~@2", S: "x ~ x ~@8 x ~@4",
  T: "x!2 ~@2 x ~@2 x ~ x ~@2 x ~@2 x", U: "x ~ x ~ x ~ x ~ x ~@2 x ~@2 x!2", V: "x ~@2 x ~@3 x ~@2 x ~@5",
  W: "x ~@2 x ~@4 x ~@2 x ~@4", X: "x ~@2 x ~@3 x ~@5 x ~@2", Y: "x!2 ~@3 x ~@2", Z: "x ~@2 x ~@6 x ~@5",
  AA: "x!2 ~ x ~ x ~ x ~ x ~@2 x ~@2 x", AB: "x ~@2 x ~@4 x ~@2 x ~@2 x ~", AC: "x ~@3 x ~@2 x ~@3 x ~@2 x ~",
  AD: "x ~ x ~@5 x!2 ~@2 x ~ x!2", AE: "x!2 ~ x ~@10 x ~", AF: "x",
// … 111 more lines

More by LIGABUE