Strudelify

Viaggerai (Mares de ti)

Ornella Vanoni

KeyF♯ majorTempo78 bpm
0:00/0:00
// Viaggerai (Mares de ti) — Ornella Vanoni
// 78 bpm, 4/4, key F# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: duplicate parts dropped: ch 11 distortion guitar (copy of ch 3 overdriven guitar, 0.333 beats late)
// note: Full arrangement: all 88 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(78/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 · acoustic guitar nylon
const acoustic_guitar_nylon = note(`<
  ~@5 A B ~ A C ~ D E D@2 E F G@2 H E I J K@4 L M N O P ~@3 Q R S T U V W X K@4 L M N O Y Z AA Z AB AC AD AE K@4 L M N O
  P ~@3 AF@2 ~ AG@2 ~@12
>`.pickRestart({
  A: "[d#3,b3,d#4]!3 [g#3,d#4,g#4]@2 [g#3,d#4,g#4] [g#3,d#4,g#4]@2 [b2,f#3,b3]!3 [f#3,c#4,f#4]@2 [f#3,c#4,f#4] [f#3,c#4,f#4]@2", // G#m G#5 B5 F#5
  B: "[b2,f#3,b3]!2 [e3,b3,e4]@2 [e3,b3] ~ d#3@10, ~@2 e4 ~@5", // B5 E5
  C: "[b2,f#3,b3]!2 [e3,b3,e4]@2 [e3,b3] ~ [d#3,g6]@10, ~@2 e4 ~@5", D: "[c#4,f#4]@4 ~@2 [c#4,f#4]@9 ~",
  E: "[c#4,g#4]@2 ~ [c#4,g#4]@4 ~", F: "[c4,g#4]@4 ~@2 [c4,g#4]@9 ~", G: "[c#4,g#4]@2 ~ [c#4,f#4] ~@2 [c#4,f4]@8 ~@2",
  H: "[c#4,f#4]@3 ~@3 [c#4,f#4]@8 ~@2", I: "[c4,g#4]@2 ~ [c4,g#4]@4 ~", J: "[c#4,g#4]@2 ~ [c#4,f#4] ~@2 [c#4,f4]@9 ~",
  K: "[~@10 [c#5,g#5]!3 ~ [c#5,f#5] [c#5,f#5]@5 ~@6 [c#5,f#5]!2 [c#5,f#5]@2 [c#5,g#5] [c#5,f#5]@3 ~@8 [c#5,f#5]!2 [c#5,g#5]!2 ~ [c#5,f#5]@3 ~@8 [c#5,g#5]!2 [c#5,g#5]@2 f#5 [c#5,f#5]]/4", // C#5 F#5 C#5 F#5 C#5 F#5 C#5 F#5
  L: "[c#5,f#5]@2 ~@8 [c#5,f#5]!3 [c#5,g#5] [c#5,g#5]@2", M: "~@10 [c#5,f#5]!2 [c#5,f#5]@2 [c#5,g#5]!2",
  N: "[c#5,g#5] ~@9 [c#5,g#5]!2 [c#5,g#5]@2 [c#5,f#5]@2", O: "~@10 [c#5,f#5]!3 ~ g#5 ~", P: "[c#5,f#5] ~@7",
  Q: "[c#4,f#4]@2 ~ c#4@2 ~@11", R: "~@3 [c#4,g#4] ~@2 [c#4,g#4]@2 ~ g#4 ~@2 [c#4,f#4]@2 [c#4,f#4] ~",
  S: "[c#4,f4]@15 ~", T: "[c#4,f#4]@3 ~@3 [c#4,f#4]@9 ~", U: "f#4@2 ~ f#4 ~@2 f#4@9 ~",
  V: "[c#4,g#4]@3 [c#4,g#4] ~@2 [c#4,g#4]@5 ~ g#4@3 ~, ~@12 c#4 ~@3", W: "[c#4,g#4]@2 ~ [c#4,f#4] ~@2 [c#4,f4]@10",
  X: "[b3,f#4]@3 f#4 ~@2 [b3,f#4]@7 ~@3", Y: "[c#4,g#4,c#5,f#5]@2 ~ [c#4,g#4] ~@2 [c#4,f#4]@7 ~@3",
  Z: "[g#3,d#4]@3 [g#3,d#4] ~@2 [g#3,d#4]@7 ~@3", AA: "[c#4,g#4]@3 [c#4,g#4] ~@2 [c#4,f#4]@6 ~@4",
  AB: "[c#4,g#4]@3 [c#4,g#4] ~@2 [c#4,f#4]@7 ~@3", AC: "[g#3,d#4]@3 [g#3,d#4] ~@2 [g#3,c#4]@7 ~@3",
  AD: "[c#4,g#4]@3 [c#4,g#4] ~@2 [c#4,f#4]@8 ~@2", AE: "[g#3,c#4,g#4]@2 ~ [g#3,c#4,g#4] ~@2 [g#3,c#4,g#4]@9 ~",
  AF: "[~@16 [c#4,d#4,f4]@5 ~ [a#3,f4]@9 ~, ~@15 a#3@5 ~@12]/2", // C# A#5
  AG: "[~@16 c#4@7 ~@9, ~@13 a#3@10 ~@9, ~@14 f4@9 ~@9]/2",
})).s("gm_acoustic_guitar_nylon").gain(0.36).pan(0.8)

// bass · fretless bass
const bass = note(`<
  ~ A B A@3 B A@2 C@2 D E C F G H F I C F G H J K L M N O P Q I B F R S T U C V W X R J K L M N O P Y S Z AA AB AC AD AA
  AE J K L M N O P Q AF AG AF AH AI@2 AH AJ AK@8 AL@4 ~
>`.pickRestart({
  A: "b1@5 ~ b1@10", B: "b1@5 ~ b1@9 ~", C: "b1@2 ~ b1@4 ~", D: "g#1@4 ~@2 g#1@9 ~", E: "c2@5 ~ c2@7 ~@3",
  F: "b1@4 ~@2 b1@9 ~", G: "g#1@2 ~ g#1@4 ~", H: "c2@4 ~@2 c2@9 ~", I: "b1@5 ~ b1@8 ~@2", J: "c#2@2 ~ b1@4 ~",
  K: "c#2@5 ~ b1@8 ~@2", L: "c#2@5 ~ b1@9 ~", M: "c#2@6 b1@9 ~", N: "c#2@5 ~ f#2@9 ~", O: "c#2@2 g#2 b1@5",
  P: "c#2@4 g#2@2 b1@9 ~", Q: "c#2@4 ~ b1@10 ~", R: "b1@5 ~ b1@7 ~@3", S: "b1@4 ~@2 b1@7 ~@3", T: "g#1@3 ~@3 g#1@7 ~@3",
  U: "c2@2 ~ c2@3 ~@2", V: "b1@3 ~@3 b1@6 ~@4", W: "g#1@3 ~@3 g#1@10", X: "c2@5 ~ c2@10",
  Y: "e2 f#2 f#2@2 e2 f#2 f#2@10", Z: "b1@5 ~ g#2@9 ~", AA: "b1@2 ~ b1@5", AB: "e2@5 ~ e2@6 e2@2 d#2@2",
  AC: "b1@5 ~ b1@7 ~ b1@2", AD: "g#2@5 ~ g#2@10", AE: "e2@5 ~ e2@8 ~@2", AF: "g#2@3 f#2@5", AG: "d#2",
  AH: "c#2@3 g#2@5 b1@3 f#2@5", AI: "[b1@3 e2@3 d#2@25 ~]/2", AJ: "~@3 e2@3 d#2@10",
  AK: "[~@8 f#2@6 c2@10 f#2@6 b1@10 f#2@6 c2@9 ~ f#2@6 b1@9 ~ f#2@6 c2@10 f#2@6 b1@10 f#2@6 c2@9 ~ f#2@6 b1@2]/8",
  AL: "[~@8 f#2@6 c2@10 f#2@6 b1@10 f#2@6 c2@9 ~ f#2@6 ~@2]/4",
})).s("gm_fretless_bass").gain(0.69)

// other · overdriven guitar
const overdriven_guitar = note("<~@6 A@2 ~@23 B@2 ~@18 C D E F G H I J ~@9 K@2 ~@10 L@3 M N O P@2>".pickRestart({
  A: "[~@5 d5@2 b4@4 ~@5]/2", B: "[~@5 b4@2 ~, ~@7 d5@4 ~@5]/2", C: "d#5@5 ~ f#5 c#5 ~@4 c#5 ~ a#4 ~",
  D: "c#5@6 d#5 b4@2 ~@3 b4 a#4 g#4 d#4", E: "f#5@3 f#5 ~ f#5 ~ g#5@5 f#5 d#5 ~@2, g#5 ~@15",
  F: "c#5 d#5 g#4@6 ~@4 g#4 f#4 d#4 c#4", G: "d#4@2 c#4 b3@6 g#3 b3 c#4 d#4 c#4 f#4 ~",
  H: "g#4@4 ~@3 f#4 b4@3 g#4 c#5@3 ~", I: "d#5@6 ~ c#5 f#5@2 ~ e5 ~ d#5 ~ c#5", J: "f#5@15 ~", K: "[~@4 g#4@5 ~@7]/2",
  L: "[~@4 a#4@8 f#4 g#4 ~ f#4@5 a#3 g#3 ~ f#3@10 a#2 d#3 a#2 f#3 a#2 g#3 a#2 a#3@3 g#3 ~@2 f#3@2]/3",
  M: "~ d#3 [f#3,c#4] g#3 a#3@2 g3 ~ d#4@3 c#4 ~@4", N: "~@4 a#4 g#4 f#4 g#4@5 f#4 ~@3",
  O: "~@3 g#4@2 a#4 ~@2 g#4@3 a#4 ~@2 f#4@2", P: "[~@2 d#4 ~@2 a#4@17 ~@10]/2",
})).s("gm_overdriven_guitar").gain(0.36).pan(0.2)

// other · muted trumpet
const muted_trumpet = note(`<
  A B C D E ~@2 F ~@2 G@4 ~@12 H I ~@3 J K L@2 ~@11 H I ~@14 H I ~@7 M@2 N ~@4 O P Q R S@2 T U V@2
>`.pickRestart({
  A: "~@12 e5 d#5 ~@2", B: "~@11 d#4 ~@2 g#4@2", C: "~@12 a#4 ~ a#4 ~",
  D: "~ a#4 b4 ~@2 d#4 e4 b4 ~ b4 ~ a#3 a#4 ~ d#4 e4", E: "a4 g#4 ~@8 f#4 ~ g#4 ~ a4 g#4", F: "~@5 g#5@6 f5@5",
  G: "[~@12 b4 g#4 ~ g#4@12 f#4 ~@2 g#4@7 g#4 b4 c#5 d#5 ~ c#5 d#5 e5 f#5 a5 g#5@15 ~@2]/4", H: "~@11 d#4 f#4!2 g#4!2",
  I: "a#4 g#4 f#4@4 ~@10", J: "d#5@9 c#5 ~ g#4@5", K: "a4 g#4 a4@2 ~@11 d#5",
  L: "[c#5@6 d#5 c#5 g#5 f#5 d#5 c#5 a4 f#4@8 ~@11]/2", M: "[~@13 d#5 g#5 g#5@8 f#5 f#5@2 c#5@2 c#5@4]/2",
  N: "~ d#5@5 ~@10", O: "~@13 g#5 ~ g#5", P: "~ g#5 ~@2 a#5@2 f#5 ~ f#5@5 d#5 f#5 ~",
  Q: "~ g#5 ~ f#5 g#5@2 a#5 f#5@6 d#5 f#5 g#5", R: "g#5!2 ~ g#5 ~ f#5@8 ~@3",
  S: "[~ d#5 f#5 g#5 a#5 ~ g#5 f#5@6 d#5 ~ c#5@2 a#4 ~ g#4@2 f#4@3 ~@5 d#4 f#4 g#4]/2",
  T: "~ g#4@2 f#4 g#4@2 f#4 ~@6 a#4 f#4 ~", U: "g#4 f#4!3 ~ d#4 f#4 g#4 ~@8",
  V: "[~ a#4 ~ f#4 g#4 ~ a#4 f#4@11 ~@14]/2",
})).s("gm_muted_trumpet").gain(0.36).pan(0.8)

// chords · pad halo
const pad_halo = note("<~@10 A@3 B@6 C@5 D@4 E@3 ~@4 F@3 G H@2 I@2 J K@4 L@4 ~@7 J K@4 E@3 M@6 N@6 O@8 ~>".pickRestart({
  A: "[~@16 g#4@31 ~, [f#3,b3]@47 ~, ~@3 f#4@8 ~@5]/3", B: "[f#4@15 ~@17 c4@31 ~ [c#4,f#4]@32, c#4@31 ~@65, ~ g#4@5]/6",
  C: "[f#4@15 ~@17 c4@31 ~@3 [a#4,a#5]@2 [g#4,g#5]@2 f#5@10, c#4@31 ~@33 c#4@15 ~, ~@4 g#4@13 ~@3, ~@32 f#4@3 ~@5]/5", // A# G#
  D: "[g#5@3 ~ a#4@2 [f#4,f#5]@10 g#5@4 [a#4,a#5]@2 ~@12 a#5@2 g#5@2 f#5@10 g#5@3 ~ a#4@2 [c#4,f#5]@10, c#4@53 ~@11, ~@16 g#4 ~@5 f#5@12 ~@17 a#5@2 ~@11, ~@32 g#4@4 ~@12 b3@7 ~@9]/4", // F# A# F#5
  E: "[g#5@2 a#5 [f#4,f#5]@5 g#5@2 [a#4,a#5] ~@6 a#5 g#5 f#4@5, g#3 c#4@7, ~@8 [g#3,g#4]@3 f#5@6 ~@2 f#5@4 ~, ~@32 [g#3,g#4]@5 ~@11]/3", // F# A# G#
  F: "[f#4 ~ c4, c#4@2 ~, ~ g#4@2]/3", G: "[b3,d#4,f#4]", H: "[f#4 g#4, c#4]/2", I: "[c4@16 b3@15 ~, f#4@31 ~]/2",
  J: "~ [a#4,a#5] [g#4,g#5] f#5@5, c#4@15 ~, f#4@3 ~@5", // A# G#
  K: "[g#5@3 ~ a#4@2 [f#4,f#5]@10 [g#4,g#5]@4 [a#4,a#5]@2 ~@12 a#5@2 g#5@2 f#5@10 g#5@3 ~ a#4@2 [c#4,f#5]@10, c#4@53 ~@11, ~@22 f#5@12 ~@17 a#5@2 ~@11, ~@32 g#4@4 ~@12 b3@7 ~@9]/4", // F# G# A# F#5
  L: "[g#5@4 a#5@2 [f#4,f#5]@10 g#5@4 [a#4,a#5]@2 ~@12 a#5@2 g#5@2 [f#4,f#5]@13 ~@13, g#3@3 c#4@21 ~@8, ~@8 [g#3,g#4]@3 f#5@6 ~@15, ~@32 [g#3,g#4]@5 ~@27]/4", // F# A# F# G#
  M: "[g#5@6 ~@10 c#4@16 g#4@6 f#4@10 ~@3 [g#4,g#5]@5 ~@3 f#4@5 [b3,b4]@6 [d#4,a#4,d#5]@26, c#5@47 ~ c#5@11 ~@37, ~@6 f#5@18 ~@14 f#5@12 ~@9 f#5@12 ~@25, ~@24 c#4@3 ~ [b3,b4]@4 ~@16]/6", // G# B D#5 B
  N: "[~@3 g#5@5 ~@3 f#4@5 b3@3 [e4,e5]@3 [d#4,a#4,d#5]@17 ~ c#4@6 c4@10 b3@16 c#4@6 c4@9 b3@9, c#5@11 f#5@12 ~@73, c#4@4 [b3,b4]@4 b4@3 ~@37]/6", // E D#5 B
  O: "[~@8 c#4@6 c4@10 b3@16 c#4@6 c4@9 b3@16 ~ c#4@6 c4@10 b3@16 c#4@6 c4@9 b3@9]/8",
})).s("gm_pad_halo").gain(0.15).pan(0.4)

// chords · pad halo · soft notes
const pad_halo_soft = note("<~@23 A B C D E F C G ~@12 A B C D E F C G ~@8 A B C D E F C G H I J ~@18>".pickRestart({
  A: "~@6 f#4@9 ~", B: "g#4@3 a#5@3 ~@10", C: "~@3 f#4@5", D: "~ a#4 g#4 [g#3,f#4]@5", E: "g#4@2 ~ f#4@5",
  F: "g#4@2 a#4 ~@5, d#4 ~", G: "~ a#4 g#4 ~@5", H: "d#4", I: "~ a#5", J: "g#5@5 ~@11",
})).s("gm_pad_halo").gain(0.08).pan(0.4)

// other · overdriven guitar
const overdriven_guitar_2 = note("<~@6 A B ~@24 C ~@18 D E F G H I@2 J@2 ~@8 K@2 ~@10 L M@2 N O P Q@2>".pickRestart({
  A: "~@3 d5", B: "~ b4@8 ~@7", C: "~@7 b4@8 ~, ~ d5@8 ~@7", D: "~@3 d#5@5 ~ f#5 c#5 ~@4 c#5",
  E: "~ a#4 ~ c#5@6 d#5 b4@2 ~@3 b4", F: "a#4 g#4 d#4 f#5@3 f#5 ~ f#5 ~ g#5@5 f#5, ~@3 g#5 ~@12",
  G: "d#5 ~@2 c#5 d#5 g#4@6 ~@4 g#4", H: "f#4 d#4 c#4 d#4@2 c#4 b3@6 g#3 b3 c#4 d#4",
  I: "[c#4 f#4 ~ g#4@4 ~@3 f#4 b4@3 g#4 c#5@3 ~ d#5@6 ~ c#5 f#5@2 ~ e5 ~]/2", J: "[d#5 ~ c#5 f#5@15 ~@14]/2",
  K: "[~@11 g#4@10 ~@11]/2", L: "~@7 a#4@8 f#4",
  M: "[g#4 ~ f#4@5 a#3 g#3 ~ f#3@10 a#2 d#3 a#2 f#3 a#2 g#3 a#2 a#3@3 g#3 ~]/2",
  N: "~ f#3@3 d#3 [f#3,c#4] g#3 a#3@2 g3 ~ d#4@3 c#4 ~", O: "~@7 a#4 g#4 f#4 g#4@5 f#4",
  P: "~@6 g#4@2 a#4 ~@2 g#4@3 a#4 ~", Q: "[~ f#4@3 ~ d#4 ~@2 a#4@17 ~@7]/2",
})).s("gm_overdriven_guitar").gain(0.11).pan(0.8)

// drums · kick
const kick = s("bd").struct("<~ [x ~@2 x ~@4]!74 [~@4 x ~@2 x]!11 [~ x] ~>").gain(0.5)

// drums · snare
const snare = s("sd").struct("<~@75 [~@4 x!2 ~@6 x ~@3] [~ x ~ x]!10 [~ x ~@2] ~>").gain(0.5)

// drums · low tom
const low_tom = s("lt").struct("<~ [x ~@2 x ~@4]!74 [~@4 x ~@2 x]!11 [~ x] ~>").gain(0.4)

// drums · pedal hat
const pedal_hat = s("hh").struct(`<
  ~ A B C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 A B C B@3 C B@3
  D E B@2 D E B@2 D F ~
>`.pickRestart({
  A: "~ x!2 ~ x!3 ~ x!3 ~ x!3 ~", B: "x!3 ~ x!3 ~ x!3 ~ x!3 ~", C: "x!3 ~ x ~ x ~ x ~ x ~ x ~ x ~",
  D: "x!3 ~ x!3 ~ x!3 ~ x ~ x ~", E: "x ~ x ~ x!3 ~ x!3 ~ x!3 ~", F: "x ~ x ~ x!3 ~ x!3 ~@5",
})).gain(0.5)

// drums · pedal hat · soft notes
const pedal_hat_soft = s("hh").struct(`<
  ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@5 A ~@3 A ~@3 B C
  ~@2 B C ~@2 B C ~
>`.pickRestart({
  A: "~@5 x ~@3 x ~@3 x ~@2", B: "~@13 x ~@2", C: "~ x ~@14",
})).gain(0.25)

// drums · china
const china = s("cr").struct("<~@75 [~ x] ~@12>").gain(0.5)

// drums · bongos
const bongos = s("bongo:18").struct(`<
  ~ A B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B@3 C B C B@3 C B@3 D E
  F@3 E F@3 E F@2 ~
>`.pickRestart({
  A: "~@9 x ~@2 x ~@2 x", B: "x ~@8 x ~@2 x ~@3", C: "x ~@8 x ~@2 x ~@2 x", D: "x!2 ~@2 x ~@3 x ~@7",
  E: "~ x ~@2 x ~@2 x!2 ~@7", F: "~ x ~@2 x ~@3 x ~@7",
})).gain(0.78)

// drums · bongos · soft notes
const bongos_soft = s("bongo:18").struct(`<
  ~@2 A@3 ~ A@3 ~ A@3 ~ A@3 ~ A@3 ~ A@3 ~ A@3 ~ A@3 ~ A@3 ~ A@3 ~ A@3 ~ A@3 ~ A@3 ~ A@3 ~ A@3 ~ A@3 ~ A ~ A@3 ~ A@3 B ~
  B@3 ~ B@3 ~ B@2 ~
>`.pickRestart({
  A: "~@15 x", B: "~@7 x ~@8",
})).gain(0.26)

// drums · ht
const ht = s("ht").struct("<~ [~@9 x ~@2 x ~@3]!74 [~ x ~@2 x ~@11]!12 ~>").gain(0.2)

// drums · cabasa
const cabasa = s("cabasa:4").struct(`<
  ~
  [x ~ x!3 ~ x!3 ~ x!3 ~ x!2]!32
  [x ~ x!3 ~ x!3 ~@2 x!2 ~ x!2]
  [x ~ x!3 ~ x!3 ~ x!3 ~ x!2]!52
  [x ~ x!3 ~ x!3 ~ x ~@5]
  ~
>`).gain(2.01)

// drums · claves
const claves = s("clave:2").struct("<~ [~@2 x ~@2 x ~@10]!74 [~@10 x ~@2 x ~@2]!11 [~@5 x ~@2] ~>").gain(2.43)

// drums · triangle
const triangle = s("triangles:30").struct(`<
  ~ A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D E B C D A B C D A B C D A B C D A B C D A B C D A B
  C D A B C D A B A B C D A B C D F G E H F G E H F G E H ~
>`.pickRestart({
  A: "~ x ~@3 x ~ x", B: "~@5 x ~@2", C: "~@3 x ~ x ~@2", D: "~@5 x ~ x", E: "~ x ~@5 x", F: "~ x ~ x ~ x ~ x",
  G: "~ x ~ x ~@4", H: "~ x ~@6",
})).gain(1.3)

// drums · triangle · soft notes
const triangle_soft = s("triangles:30").struct(`<
  ~ A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B
  C D A B C D A B A B C D A B C D ~ E@2 F ~ E@2 F ~ E@2 G ~
>`.pickRestart({
  A: "~@3 x ~@4", B: "~ x ~@6", C: "~ x ~@5 x", D: "~ x ~ x ~@4", E: "~@5 x ~@2", F: "~@3 x ~ x ~ x",
  G: "~@3 x ~ x ~@2",
})).gain(0.43)

// drums · triangle
const triangle_2 = s("triangles:35").struct(`<
  ~ A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B
  C D A B C D A B A B C D A B C D E B A F E B A F E B A G ~
>`.pickRestart({
  A: "x ~@2 x!2 ~@3 x ~@3 x ~@3", B: "x!4", C: "x ~@3 x ~@3 x ~@2 x!2 ~@2 x", D: "x ~@3 x ~@2 x!2 ~@2 x!2 ~@3",
  E: "x ~@2 x!2 ~@3 x ~@2 x!2 ~@3", F: "x ~@2 x!2 ~@2 x!2 ~@3 x ~@2 x", G: "x ~@2 x!2 ~@2 x!2 ~@7",
})).gain(1.3)
// … 14 more lines

More by Ornella Vanoni