Strudelify
Everything I Own cover art

Guitar Man

Everything I Own

Bread

KeyA majorTempo81 bpm
0:00/0:00
// Everything I Own — Bread
// 81 bpm, 4/4, key A major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 62 bars on a 48-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(81/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 · "NYLON GTR"
const acoustic_guitar_nylon = note("<A B@3 C@3 D@5 ~@10 E@6 F@4 ~@11 G@5 H I J K ~@10>".pickRestart({
  A: "~@24 [a4,c#5]@11 ~@8 a3@5, ~ e4, ~@4 a3@3 ~, ~@37 [a4,c#5]@11", // A
  B: "[~@2 d5@3 c#5@3 b4@3 ~@4 b4@3 c#5@4 b4@3 ~@3 [a4,c#5]@12 ~@8 a3@5 ~ d5@4 ~@3 b4@3 ~@4 b4@3 c#5@3 ~@3 e4@3 ~ [e4,a4,c#5]@12 ~@7 a3@5 ~@2 [e4,g#4,c#5]@11 ~@9 g#3@6 [f#3,f#4,a4,c#5]@11, ~@2 a3@23 ~@3 a3@17 ~@9 a3@25 ~@2 a3@17 ~@9 g#3@13 ~@24, ~@12 e4@10 ~@3 e4@30 ~@9 e4@8 ~@22 [e4,a4,c#5]@11 ~@15 [e4,g#4,c#5]@13 ~@11, ~@41 [a4,c#5]@13 ~@4 c#5@5 ~@11 b4@6 ~@64]/3", // A C#m F#m A C#m A
  C: "[~@2 a4@7 f#3@6 ~ e3@13 ~@6 e3@7 [d3,f#4,a4,d5]@13 ~@7 f#3@6 [f3,f4,a4,d5]@13 ~@7 f3@6 [e4,a4,c#5]@11 ~@9 e3@4 ~@3 e3@13 ~@6 e3@4, ~@2 [f#4,c#5]@11 ~@2 c#5@11 ~@81 c#5@11 ~@3 a4@11 ~@12, ~@16 e4@11 ~@2 [e4,a4,c#5]@11 ~@15 [f#4,a4,d5]@12 ~@14 [f4,a4,d5]@12 ~ e3@13 ~ [e4,a4]@11 ~ [e4,b4]@12 ~@2 [e4,g#4,b4]@10]/3", // D Dm A F#5 A D Dm A5 …
  D: "[~@3 [e4,a4,c#5]@12 ~@8 a3@6 [e4,g#4,c#5]@12 ~@8 g#3@6 [f#4,a4,c#5]@11 ~@9 f#3@5 ~@2 [e4,a4,c#5]@11 ~@8 e3@6 ~ [f#4,a4,d5]@11 ~@9 f#3@6 [f4,a4,d5]@12 ~@8 f3@6 ~ [e4,a4,c#5]@11 ~@8 e3@5 ~@2 [e4,a4,b4]@11 ~@2 [e4,g#4,b4]@11 ~@29, ~@3 a3@13 [e4,a4,c#5]@11 ~@2 g#3@17 ~@9 f#3@18 ~@9 e3@13 ~@13 d3@18 ~@8 f3@14 ~@13 e3@17 ~@9 e3@22 ~@31, ~@42 [e4,g#4,c#5]@11 ~@15 [f#4,c#5]@11 ~@16 [e4,a4,c#5]@11 ~@15 [f#4,a4,d5]@11 ~@16 [f4,a4,d5]@11 ~@15 [e4,a4,c#5]@11 ~@55, ~@69 a4@10 ~@161]/5", // A C#m F#m A D Dm A Esus4 …
  E: "[~@24 [e4,a4,c#5]@13 c#5@13 ~@12 b4@4 ~@9 [a3,a4,c#5]@12 ~@7 a3@6 [e4,g#4,c#5]@13 ~@6 g#3@6 [f#4,c#5]@13 ~@6 f#3@7 [e4,a4,c#5]@12 ~@7 e3@6 [f#4,a4,d5]@12 ~@7 f#3@6 [f4,a4,d5]@13 ~@6 f3@6 [e4,a4,c#5]@13 ~@6 e3@6 ~ [e4,a4,b4]@12 ~@6 e3@6 ~ [a3,e4,a4,c#5]@11, ~@24 a3@35 e4@13 e4@15 [e4,a4,c#5]@13 g#3@17 ~@8 f#3@17 ~@9 e3@18 ~@7 d3@17 ~@8 f3@18 ~@7 e3@17 ~@9 e3@17 ~@19, ~@37 [e4,a4]@19 a4@7 ~@6 b4@7 ~@37 [e4,g#4,c#5]@13 ~@12 [f#4,a4,c#5]@13 ~@12 [e4,a4,c#5]@13 ~@12 [f#4,d5]@13 ~@13 [f4,a4,d5]@13 ~@12 [e4,a4,c#5]@12 ~@13 [e4,g#4,b4]@12 ~@12, ~@50 d5@13 ~@225, ~@53 c#5@10 ~@3 c#5@9 ~@213]/6", // A C#m F#5 A D Dm A Esus4 …
  F: "[~@8 a3@6 [e4,g#4,c#5]@12 ~@7 g#3@6 [f#4,a4,c#5]@13 ~@6 f#3@6 ~ [f#4,a4,c#5]@12 ~@7 f#3@6 [g4,b4,d5]@12 ~@7 g3@6 [f#4,a4,d5]@12 ~ [f#4,a4,d5]@12 [e4,a4,c#5]@12 ~ c#5@12 ~ d5@3 ~@3 b4@3 ~@3 b4@3 ~@7 e4@3 ~, ~@2 [e4,a4,c#5]@12 g#3@17 ~@8 f#3@17 ~@9 f#3@17 ~@8 g3@17 ~@8 d3@18 ~@7 a3@50 ~@2, ~@27 [e4,g#4,c#5]@13 ~@12 [f#4,a4,c#5]@12 ~@13 [f#4,a4,c#5]@12 ~@13 [b4,d5]@12 ~@55 c#5@9 ~@3 c#5@9 ~@2, ~@103 g4@12 ~@38 [e4,a4]@20 ~@2 e4@7 ~@3 b4@6 ~]/4", // C#m F#m G D A C#m F#m Bm …
  G: "[~@43 [f#4,a4,c#5]@10 ~@2 [f#4,a4,c#5]@11 ~ [f#4,a4,c#5]@10 ~ [f#4,a4,c#5]@9 ~@3 [e4,a4,c#5]@10 ~@2 [e4,a4,c#5]@10 ~@2 [e4,a4,c#5]@11 ~ [e4,a4,c#5]@9 ~@3 [d4,f#4,a4,c#5]@10 ~@2 [d4,f#4,a4,c#5]@10 ~@2 a4@10 ~ [d4,f#4,a4,c#5]@10 ~@2 [d4,f#4,a4,c#5]@11 ~ [d4,f#4,a4,c#5]@10 ~@2 [d4,f#4,a4,c#5]@10 ~@2 [f#4,a4,c#5]@11 ~ [d4,f#4,b4]@7, ~@161 [d4,f#4,c#5]@10 ~@49 c#4@12 ~@8]/5", // F#m A Dmaj7 F#m Bm Dmaj7
  H: "~@4 [d4,f#4,b4]@11 ~ [d4,f#4,b4]@11 ~ [d4,f#4,b4]@10 ~@2 [d4,f#4,a4]@8", // Bm D
  I: "~@4 [d4,f#4,a4]@11 ~ [d4,f#4,a4]@11 ~ [d4,f#4,a4]@10 ~ [d4,f#4,b4]@9", // D Bm
  J: "~@3 [d4,f#4,b4]@11 ~ [d4,f#4,b4]@10 ~@2 [d4,f#4,b4]@10 ~@2 [e4,g#4,b4]@9", // Bm E
  K: "~@2 [e4,g#4,b4]@11 ~@2 [d4,f#4,a4]@10 ~ [d4,f#4,a4]@10 ~@12", // E D
})).s("gm_acoustic_guitar_nylon").gain(0.27).pan(0.3)

// bass · fretless bass · "FRETLESS"
const bass = note("<~@2 A@5 B@6 C@2 D E F G@2 H I@3 J@4 K@5 L M N@6 O@8 P@2 Q R S T U V@2 W X Y@2>".pickRestart({
  A: "[~@26 e3@7 a2@26 g#2@26 f#2@26 ~ e2@26 d2@24 ~@2 d2@26 e2@26 ~ e1@19 e2@4]/5",
  B: "[~@3 a2@26 g#2@27 f#2@26 e2@26 d2@24 ~@2 d2@27 a1@26 e2@11 ~@2 e2@3 f2@3 ~ f#2@6 b1@10 ~@3 b1@9 ~ c#2@2 ~ d2@12 ~ d2@7 ~@2 d2@2 ~ e2@11 ~@2 e2@9 b1@2]/6",
  C: "[~ e2@9 e2@3 ~ g#2@2 a2@3 ~ b2@3 d3@3 b1@10 ~@2 b1@9 c#2@2 ~ d2@11 ~@2 d2@8 ~ d2@2 ~ e2@12 e2@7 ~@2]/2",
  D: "e2@2 ~@2 d2@5 ~ d2@5 ~ c#2@5 ~ b1@5 ~ a1@10 ~ a1@8 ~", E: "a1 ~@2 b1@10 ~@2 b1@7 ~@2 b1@2 ~ e2@11 ~ e2@8 ~",
  F: "e2@2 ~ d2@5 ~ d2@5 ~ c#2@5 ~ b1@5 a1@10 ~@2 a1@7 ~@2 a1",
  G: "[~@2 b1@11 ~ b1@7 ~@2 b1@2 ~ e2@10 ~@2 e2@8 ~ e2@2 d2@5 ~ e2@5 ~ a2@3 e2@3 a2@2 ~ b2@3 a1@9 ~@3 a1@8 ~ a1 ~]/2",
  H: "~ b1@11 ~ b1@7 ~@2 b1@3 e2@11 ~ e2@10 ~", I: "[e2@11 ~ e2@11 ~ d2@18 d2@29 ~ a2@49 ~@2 a2@21]/3",
  J: "[~@4 g#2@25 f#2@26 e2@18 ~ e2@6 d2@23 ~@2 d2@18 ~ d2@6 e2@23 ~@3 e2@25 a2@11]/4",
  K: "[~@8 a2@6 g#2@25 f#2@23 ~@3 f#2@18 ~ f#2@6 g2@25 d2@18 ~ b2@6 a2@17 ~@2 a2@5 ~@2 a2@5 ~ a2@3 a1@3 e2@6 ~ f#2@5 ~ b1@11 ~@2 b1@8 ~ c#2@3 d2@11 ~ d2@7 ~@2 d2@2 ~]/5",
  L: "e2@10 ~@2 e2@8 ~ b1@3 e2@4 ~@2 e2@3 e2@3 g#2@3 a2@3 b2@3 d3@3",
  M: "b1@10 ~@2 b1@8 ~ c#2@2 ~ d2@10 ~@2 d2@7 ~@2 d2@2 ~",
  N: "[e2@4 ~@2 e2@3 e2@3 g#2@3 a2@3 b2@3 d3@3 d2@4 ~@2 d2@5 ~ c#2@5 ~ b1@5 a1@8 ~@2 a1 ~ a1@7 ~@2 a1@2 ~ b1@8 ~ b1 ~@2 b1@7 ~@2 b1@2 ~ e2@7 ~@2 e2@3 g#2@3 a2@3 b2@2 ~ d3@3 d2@5 ~ d2@5 ~ c#2@5 b1@5 ~ a1@8 ~ a1 ~@2 a1@7 ~@2 a1@3 b1@8 ~ b1 ~@2 b1@7 ~@2 b1@2 ~ e2@8 ~ e2@3 g#2@3 a2@3 b2@2 ~ d3@3 d2@5 d2@5 ~ c#2@5 ~ b1@5 ~ a1@8 ~ a1 ~@2 a1@7 ~@2 a1 ~@2 b1@8 ~ b1 ~@2 b1@7 ~@2 b1@2 ~ e2@3]/6",
  O: "[~@8 g#2@6 b2@6 e3@23 ~ d2@16 ~@2 d2@4 ~@2 d2@11 e2 f#2@6 g#2@5 a2@46 ~@2 f#3@18 f#3@4 ~@2 f#3@17 f#3@6 e3@16 ~@2 e3@5 ~ e3@16 ~@2 e3@6 d3@16 ~@2 d3@4 ~@2 d3@17 a2@6 d2@22 ~@2 d2@11 ~ c#2@12 b1@16 ~ b1@5 ~ b1@11 ~ b2@12 a2@8, ~@8 g2 ~@375]/8",
  P: "[~@10 a2@4 ~@2 a2@17 d2@6 g1@17 ~ g1@5 ~ g1@23 ~ e2@9]/2",
  Q: "~@2 e2@6 ~@3 e2@2 ~ d2@8 ~ d2@3 a2@3 d2@3 a2@2 ~ b2@3 a1@7 ~@2 a1",
  R: "~@2 a1@6 ~@3 a1@2 ~ b1@9 b1@2 ~ b1@7 ~@2 b1@3 e2@8 e2@2",
  S: "~ g#2@2 ~ a2@3 b2@2 ~ d3@3 d2@5 ~ d2@5 ~ c#2@5 ~ b1@5 ~ a1@9 e2@2",
  T: "~ a2@10 ~@2 b1@7 ~ f#2@2 ~ b2@10 ~@2 e2@7 ~@2 e2 ~@2",
  U: "e2@6 ~@3 e2@2 ~ d2@7 ~@2 d2 ~@2 d2 ~@2 d2@3 c#2@3 b1@3 a1@8 ~ e2@2 ~",
  V: "[a2@8 ~ a2@2 ~ b2@7 ~ f#2@2 ~ b2@7 ~@2 b2@2 ~ e2@8 ~ e2 ~@2 e2@6 b2@6 e3@11 ~ e3@12 d2@13]/2",
  W: "~@4 d2@5 ~ d2@24 a2@14", X: "~@4 e3@6 a3@12 a2@11 d2@15", Y: "[~@3 d2@4 ~@2 d2@12 b1@12 a1@48 ~@15]/2",
})).s("gm_fretless_bass").gain(0.44)

// chords · acoustic guitar steel · "STEEL GTR"
const acoustic_guitar_steel = note("<~@11 A@3 B@6 C@4 ~@7 D@2 E@2 F@6 G@3 ~@7 H I@4 J@4 K@2>".pickRestart({
  A: "[~@21 [d4,f#4,b4]@13 ~@6 b3@4 [d4,f#4,a4]@2 ~ [d4,f#4,a4]@13 ~@6 a3@6 [b3,e4,g#4,b4]@9 b3@4 [b3,e4,g#4]@6 ~@3 e4@3 [b3,e4,a4]@3 [b3,e4,a4]@6 b3@6 b3@3 ~ [b3,e4,g#4]@3 [d4,f#4,b4] ~@2 [d4,f#4,b4]@12 ~@6 b3@3 [d4,f#4,a4], ~@19 [d4,f#4,b4]@2 ~@13 [d4,f#4,b4]@12 ~@14 [d4,f#4,a4]@13 ~@12 b4@16 ~@43, ~@20 b3@20 ~@6 a3@20 ~@25 b3@6 ~@23 b3@20 ~@4, ~@47 g#4@3 ~@3 [e4,g#4]@5 ~@9 [d4,f#4,b4]@5]/3", // Bm D E Esus4 E Bm D Bm …
  B: "[~@2 [d4,f#4,a4]@12 ~@7 a3@5 ~ [e4,g#4,b4]@9 b3@3 b3@6 ~@3 e4@3 ~ [a3,d4,f#4,a4]@9 a3@3 a3@4 ~@28 a3@3 ~@21 b3@3 ~@21 b3@3 d4@2 a3@4 ~@2 a3@4 ~@2 a3@4 ~@8 a3@4 ~@2 a3@4 [e4,a4]@2 ~@6 a3@3 ~@21 b3@3 g#4@2 b3@4 ~@8 b3@4 ~@3 b3@3 ~@2 a3@4 ~@14 a3@3 ~@21 a3@2, ~ a3@20 ~@5 b3@10 ~@9 b3@6 ~@13 [d4,a4]@9 d4@26 [d4,f#4,b4]@6 [d4,f#4,b4]@6 [d4,f#4,b4]@6 [d4,f#4,b4]@6 [e4,g#4,b4]@6 [e4,g#4,b4]@6 [e4,g#4,b4]@6 [e4,g#4,b4]@7 ~@22 c#4@12 ~ c#4@5 [c#4,e4,a4]@7 ~@2 b3@6 b3@6 b3@6 ~@12 b3@5 ~@33 [c#4,e4]@6 [c#4,e4]@6 [c#4,e4,a4]@6 [c#4,e4,a4]@5, ~@15 [d4,f#4,a4]@12 ~@12 [e4,g#4,b4]@12 ~@13 f#4@35 ~@48 [f#4,a4]@6 ~@12 a4@5 [e4,a4]@6 ~ [e4,a4]@6 ~@35 b4@12 ~@35 a4@12 ~@11, ~@70 a3@6 c#4@9 a3@3 c#4@2 a3@6 ~@6 b3@6 b3@6 b3@6 ~@6 b3@6 b3@6 b3@6 ~@23 a3@6 ~@12 a3@6 ~@59 a3@6 a3@6 ~@6 a3@6 a3@6 a3@6 ~@2, ~@76 [e4,a4]@3 a3@3 [e4,a4]@5 [e4,a4]@6 [c#4,e4,a4]@7 ~@53 [d4,f#4,a4]@6 [d4,f#4,a4]@6 [d4,f#4]@19 ~@10 [d4,f#4,b4]@6 [d4,f#4,b4]@6 [d4,f#4,b4]@6 [d4,f#4,b4]@6 e4@6 e4@6 [e4,g#4,b4]@6 [e4,g#4,b4]@6 [d4,a4]@6 [d4,f#4,a4]@5 [d4,f#4,a4]@6 [d4,f#4,a4]@7 ~@22]/6", // D E D A5 D5 Bm E A …
  C: "[~@22 b3@3 ~@35 [e4,g#4,b4]@9 ~@3 a4@36 [a3,d4,f#4,a4]@11 ~ [e4,a4]@48 ~@24, ~ [f#4,b4]@12 b4@12 ~@12 [g#4,b4]@11 [g#4,b4]@12 ~@10 d4@38 ~@84, ~ d4@6 d4@6 [d4,f#4]@6 [d4,f#4]@6 [e4,g#4,b4]@6 [e4,g#4,b4]@6 e4@5 e4@6 e4@6 e4@6 ~@9 a3@39 ~@11 [a3,c#4]@49 ~@24, ~@4 b3@6 b3@6 b3@6 ~@6 b3@6 b3@6 b3@5 b3@6 b3@6 b3@14 f#4@37 ~@84]/4", // E D A5 B5 G#m D E A
  D: "[~@47 [d4,f#4,b4]@12 ~@10 [d4,f#4,a4]@2 [d4,f#4,a4]@13 ~@6 a3@6, ~@45 [d4,f#4,b4]@2 ~@12 [d4,f#4,b4]@11 ~@14 [d4,f#4,a4]@12, ~@46 b3@19 ~ b3@5 a3@19 ~@6]/2", // Bm D Bm D
  E: "[b3@8 b3@3 ~ [b3,e4,g#4]@6 ~@3 e4@3 [b3,e4,a4]@3 [b3,e4,a4]@6 [b3,e4,g#4]@6 b3@3 [b3,e4,g#4]@3 [d4,f#4] b4 ~ [d4,f#4,b4]@12 [d4,f#4,b4]@6 b3@3 [d4,f#4,a4] ~@2 [d4,f#4,a4]@12 ~@6 a3@5 b3, [e4,g#4,b4]@4 b4@5 ~@23, ~@18 b3@6 ~@23 b3@19 ~@5 a3@19 ~@6, ~@7 g#4@2 ~@19 [d4,f#4,a4]@4]/2", // E Esus4 E D Bm D E D
  F: "[[e4,g#4,b4]@9 b3@3 b3@6 ~@3 e4@3 [a3,d4,f#4,a4]@9 a3@3 d4@6 ~@26 a3@3 ~@21 b3@3 ~@21 b3@3 d4@2 ~@6 a3@4 ~@20 a3@3 [e4,a4]@2 ~@7 a3@3 ~@21 b3@3 g#4@2 b3@4 ~@2 b3@4 ~@2 b3@4 ~@3 b3@3 ~@20 a3@3 ~@21 a3@3 ~@21 b3@3 [e4,g#4,b4]@2 b3, ~@12 [e4,g#4,b4]@12 ~@12 f#4@35 ~@24 [e4,g#4,b4]@6 [e4,g#4,b4]@6 [e4,g#4,b4]@6 [e4,g#4,b4]@7 ~@4 f#4@6 ~@6 a4@6 [e4,a4]@6 [e4,a4]@6 ~@36 b4@12 ~@35 a4@12 ~@12 [f#4,b4]@12 b4@12 ~@3, ~@18 b3@6 ~@12 a4@12 c#4@11 [e4,a4]@3 a3@6 ~@6 b3@6 b3@6 b3@6 ~@6 b3@6 b3@6 b3@6 ~@5 a3@6 ~@6 a3@6 a3@6 a3@6 ~@6 a3@6 ~@6 b3@6 b3@6 b3@6 ~@29 a3@6 a3@6 a3@6 ~@6 a3@6 a3@6 a3@6 ~@6 b3@6 b3@6 b3@6 ~@6, ~@36 a3@4 ~@2 a3@6 [e4,a4]@3 a3@3 [e4,a4]@2 a3@4 c#4@5 [c#4,e4,a4]@7 ~@53 [d4,a4]@6 [d4,f#4,a4]@5 [d4,f#4]@19 ~@11 [d4,f#4,b4]@6 [d4,f#4,b4]@6 [d4,f#4,b4]@6 [d4,f#4,b4]@6 e4@6 e4@6 [e4,g#4,b4]@6 [e4,g#4,b4]@6 ~@23 [c#4,e4]@6 [c#4,e4]@6 [c#4,e4,a4]@6 [c#4,e4,a4]@6 ~@27, ~@44 d4@27 [d4,f#4,b4]@6 [d4,f#4,b4]@6 [d4,f#4,b4]@6 [d4,f#4,b4]@6 ~@24 [f#4,a4]@6 ~@17 c#4@12 c#4@6 [c#4,e4,a4]@7 ~@47 [d4,a4]@5 [d4,f#4,a4]@6 [d4,f#4,a4]@6 [d4,f#4,a4]@7 ~@23 d4@6 d4@6 [d4,f#4]@6 [d4,f#4]@6 ~@3]/6", // E D A5 E A5 B5 A5 A …
  G: "[~@32 [e4,g#4,b4]@9 ~@3 a4@35 ~ [d4,f#4,a4]@10 ~ [e4,a4]@45 ~@8, ~@2 b4@4 b3@5 b3@6 b3@6 b3@6 b3@14 f#4@36 ~@65, ~@3 [e4,g#4]@5 [g#4,b4]@12 [g#4,b4]@12 ~@10 d4@37 ~@65, ~@8 e4@6 e4@6 e4@6 e4@6 ~@9 a3@38 a3@10 ~ [a3,c#4]@46 ~@8]/3", // E D A5 E G#m A
  H: "~@20 [d4,f#4,a4]@4 ~@2 [d4,f#4,a4]@4 ~@2 [d4,f#4,a4]@5 ~ [c#4,e4,a4]@2 ~ a3@3 [e4,a4]@2 ~ a3", // D A A5
  I: "[~@2 [c#4,e4,a4]@2 ~ a3@3 [c#4,e4,a4]@2 ~ a3@2 ~@22 b3@2 ~@3 b3@4 ~@14 b3@3 d4@2 ~@31 a3@3 [e4,a4]@2 ~@7 a3@3 ~@20 b3@3 g#4@2 ~@19 b3@3 ~@21 a3@3 ~@9 a3@3, ~@14 [d4,f#4,b4]@6 [d4,f#4,b4]@6 [d4,f#4,b4]@6 [d4,f#4,b4]@6 e4@6 [e4,g#4,b4]@5 [e4,g#4,b4]@6 [e4,g#4,b4]@7 ~@2 a3@6 a3@6 a3@6 a3@6 a3@6 ~@6 a3@6 ~@6 b3@6 b3@6 b3@5 ~@6 b3@6 b3@6 b3@6 ~@6 a3@6 a3@6 a3@6 ~@6 a3@6 ~@3, ~@17 b3@6 b3@6 b3@6 ~@2 [g#4,b4]@6 ~@3 b3@6 b3@6 ~@3 [f#4,a4]@6 [d4,f#4,a4]@6 [d4,f#4,a4]@6 [d4,f#4]@19 ~@11 [d4,f#4,b4]@6 [d4,f#4,b4]@6 [d4,f#4,b4]@6 [d4,f#4,b4]@6 ~@23 [d4,a4]@6 [d4,f#4,a4]@6 [d4,f#4,a4]@6 [d4,f#4,a4]@7 ~@11, ~@79 a4@6 c#4@12 c#4@6 [c#4,e4,a4]@7 ~@22 e4@6 e4@6 [e4,g#4,b4]@6 [e4,g#4,b4]@6 ~@24 [c#4,e4]@6 [c#4,e4]@6, ~@85 [e4,a4]@6 [e4,a4]@6 ~@35 b4@12 ~@36 a4@12]/4", // A A5 Bm E G#m F#m D Bm …
  J: "[~@9 a3@2 ~@21 b3@3 ~@36 [e4,g#4,b4]@9 ~@3 a4@35 [a3,d4,f#4,a4]@10 ~@2 a4@44 ~@4 [a3,d4,f#4,a4]@14, [c#4,e4,a4]@6 [c#4,e4,a4]@5 d4@6 d4@6 [d4,f#4]@6 [d4,f#4]@6 ~ [e4,g#4,b4]@5 [e4,g#4,b4]@6 e4@6 e4@6 e4@6 e4@6 ~@9 a3@38 ~@10 a3@46 ~@18, ~@3 a3@6 ~@2 [f#4,b4]@12 b4@12 ~@12 [g#4,b4]@12 [g#4,b4]@12 ~@10 d4@37 ~@11 [c#4,e4]@45 ~@18, ~@7 b3@3 b3@3 b3@3 ~@3 b3@3 b3@3 b3@3 b3@3 b3@3 b3@7 f#4@18 ~@37]/4", // E D A D E B5 G#m C#m
  K: "[~@3 [a3,d4,f#4,a4]@5 ~ [a3,d4,f#4,a4]@10 ~@2 [a3,d4,f#4,a4]@9 ~@4 a4@47 ~@15, ~@31 [a3,c#4]@49 ~@16, ~@2 e4@3 ~]/2", // D A
})).s("gm_acoustic_guitar_steel").gain(0.33).pan(0.7)

// other · string ensemble 1 · "STRINGS"
const string_ensemble_1 = note("<~@26 A B ~@2 C@2 ~@2 D@6 E ~@10 F G H I J@2 ~@5>".pickRestart({
  A: "~@22 d4@9 e4@17", B: "~@2 d4@3 c#4@3 e4@22 ~@18", C: "[~@28 c#4@3 ~ d4@9 e4@13 ~@42]/2",
  D: "[~@6 f#4@12 e4@12 d4@15 e4@11 ~@16 f#4@29 e4@6 c#4@6 d4@12 f#4@12 e4@13 ~@17 a4@29 e4@6 c#4@6 d4@11 ~@7 f#4@6 [e4,g#4]@13 ~@16 f#4@27, ~@83 f#4@15 ~@46]/6", // E
  E: "~ e4@2 c#4@2 d4@4 f#4@4 e4@3", F: "~@14 f#4@29 ~ e4@4", G: "~@2 c#4@6 d4@11 f#4@12 e4@11 ~@6",
  H: "~@13 [f#4,a4]@30 e4@5", I: "~ c#4@5 d4@11 ~@7 f#4@6 [e4,g#4]@13 ~@5",
  J: "[~@12 [f#4,a4]@30 e4@5 c#4@6 d4@12 f#4@12 [e4,g#4,b4]@13 ~@6]/2", // F#m E
})).s("gm_string_ensemble_1").gain(0.28).pan(0.8)

// chords · string ensemble 2 · "SLOWSTRING"
const string_ensemble_2 = note("<~@23 A@4 B@5 ~@3 C@5 D@4 ~@3 E@8 F@5 ~@2>".pickRestart({
  A: "[~@77 e4@51 f#4@24 f4@26 [c#4,e4]@14, ~@9 a3@55, ~@27 c#4@98 ~@3 d4@51 ~@13]/4", // C#m
  B: "[~@24 g#3@12 ~ a3@25 ~@13 e4@12 ~@25 a4@23 ~@3 [b3,g4,b4]@24 ~ a4@25 ~ [c#4,e4]@46 ~@5, ~@11 b3@26 c#4@99 ~ d4@49 ~@54, ~@5 a3@4 ~@7, ~@87 f#4@49 ~@26 f#4@25 ~@53]/5", // Em C#m
  C: "[~@47 [a3,c#4,e4]@24 [f#3,d4]@23 ~ e4@23 d4@24 [c#4,e4]@24 [b3,d4,f#4]@23 [b3,e4,g#4]@24 ~@23 [e4,c#5]@4, ~@71 b3@47 f#3@20 ~@102, ~@94 g#3@24 a3@47 ~@48 [d4,f#4,a4]@27]/5", // A D C#m Bm E C#m D
  D: "[~@20 [f#4,d5]@23 [g#4,e5]@49 [f#4,d5]@47 [e4,c#5]@38 ~@15, ~@20 b4@72 a4@85 ~@15]/4", // D C#m D C#m
  E: "[~@41 [b4,d5]@46 [a4,c#5]@48 d4@47 [e4,g#4]@24 [f#4,d5]@24 [e4,c#5]@23 [f#4,d5]@24 [g#4,e5]@24 [f#4,d5]@23 [e4,c#5]@24 [f#4,d5]@24 [g#4,e5]@12, ~@41 f#4@141 ~@24 a4@47 ~@48 a4@47 ~@36, ~@135 b4@72 ~@46 b4@48 ~@47 b4@36]/8", // Bm A E D C#m D C#m D …
  F: "[~@12 [f#4,a4,d5,f#5]@24 [e4,a4,c#5,e5]@23 [f#4,d5,f#5]@24 [g#4,e5,g#5]@48 [f#4,f#5]@47 [e4,e5]@48 ~@14, ~@59 b4@69 ~@3 a4@94 ~@15, ~@131 d5@42 ~@67]/5", // D A D C#m F# E
})).s("gm_string_ensemble_2").gain(0.27).pan(0.4)

// other · string ensemble 2 · "SLOWSTRING"
const string_ensemble_2_2 = note("<~@24 A@4 B@4 ~@15 C@8 D@5 ~@2>".pickRestart({
  A: "[~@4 g#3@25 f#3@25 e3@25 f#3@25 ~ f3@25 e3@51 ~@11]/4",
  B: "[~@14 g#3@25 ~ f#3@6 c#3@6 f#3@6 g#3@6 a3@25 g3@26 f#3@25 a3@44 ~@8]/4",
  C: "[~@40 b3@48 a3@47 g3@48 e3@23 d3@12 c#3@6 b2@6 a2@23 b2@24 e3@24 d3@11 ~ c#3@6 b2@6 a2@23 b2@24 e3@12]/8",
  D: "[~@12 d3@12 c#3@5 b2@6 ~ a2@23 b2@24 e3@47 d3@48 a2@44 ~@18]/5",
})).s("gm_string_ensemble_2").gain(0.33).pan(0.6)

// drums · kick
const kick = s("bd").struct(`<
  ~@15 A B C D E F G ~ H I J K L M N O P Q G@2 R S T U V W ~@10 X Y Z AA AB AC ~@5
>`.pickRestart({
  A: "~@7 x ~@4", B: "~ x ~@7 x ~@6", C: "~@3 x ~@22 x ~@21", D: "~ x ~@11 x ~@10", E: "~@2 x ~@22 x ~@22",
  F: "~ x ~@23 x ~@22", G: "x!2", H: "~@27 x ~@18 x ~", I: "~@4 x ~@24 x ~@18", J: "x ~@6 x ~@24 x ~@15",
  K: "~@3 x ~@5 x ~@24 x ~@13", L: "~@11 x ~@19 x ~@5 x ~@10", M: "~@14 x ~@24 x ~@8", N: "~@10 x ~@6 x ~@24 x ~@5",
  O: "~@19 x ~@24 x ~@3", P: "~@22 x ~@24 x", Q: "~ x", R: "x ~@11 x ~@34 x", S: "~@23 x ~@23 x", T: "~@23 x ~@22 x ~",
  U: "~@11 x ~@11 x", V: "~@22 x ~@10 x ~@11 x ~@2", W: "~@7 x ~@7 x", X: "~@19 x ~@4", Y: "~@14 x ~@22 x ~@10",
  Z: "~@13 x ~@23 x ~@10", AA: "~@13 x ~@22 x ~@11", AB: "~ x ~ x", AC: "~@11 x ~@23 x ~@12",
})).gain(0.44)

// drums · rim
const rim = s("rim").struct("<~@23 A B C D E F G H I ~@30>".pickRestart({
  A: "~@5 x", B: "~@17 x ~@24 x ~@5", C: "~@19 x ~@24 x ~@3", D: "~@22 x ~@24 x", E: "~ x", F: "~ x ~@25 x ~@20",
  G: "~@4 x ~@24 x ~@18", H: "~@7 x ~@24 x ~@15", I: "~@9 x ~@24 x ~@13",
})).gain(0.44)

// drums · snare
const snare = s("sd").struct("<~@14 A B C D E F G H ~@10 I@3 J K@2 L M N O ~@9 P Q R@2 S T U ~@4>".pickRestart({
  A: "~@11 x ~ x ~@2", B: "~@13 x ~@2", C: "~@5 x ~@7 x ~@2", D: "~@15 x ~@22 x ~@9", E: "~@7 x ~@11 x ~@4",
  F: "~@4 x ~@3 x ~@28 x ~@10", G: "~@13 x ~@22 x ~@11", H: "~ x!2 ~@2 x!2 ~@9", I: "~@7 x", J: "~@5 x!2 ~ x!2 ~@6",
  K: "~@11 x ~@23 x ~@12", L: "~@5 x ~@11 x ~@6", M: "~@10 x ~@13 x ~@2 x ~@8 x ~@2 x ~@8", N: "~@3 x ~@7 x ~@4",
  O: "~@8 x ~@2 x ~@2 x ~@5 x ~@2 x ~@24", P: "~@10 x ~@2 x ~@2 x ~@7", Q: "~ x ~@11 x ~@10", R: "~ x ~@23 x ~@22",
  S: "x ~@4 x!2 ~@9", T: "x ~@22 x ~@23 x", U: "~@14 x ~@2 x ~@30",
})).gain(0.44)

// drums · low tom
const low_tom = s("lt").struct("<~@15 A ~@3 B ~@15 C ~@5 D ~@13 E ~ F ~@4>".pickRestart({
  A: "~@7 x ~@14 x ~@25", B: "~@13 x ~@5 x ~@28", C: "~@15 x ~@6 x ~", D: "~@26 x ~@14 x ~@6", E: "~ x",
  F: "~@23 x ~@24",
})).gain(0.44)

// drums · hihat
const hihat = s("hh").struct(`<
  ~@15 A B C D E F G ~ H I J K L M N O P Q R S T U V W X Y Z ~@9 AA AB AC AD AE AF AG ~@4
>`.pickRestart({
  A: "~@28 x ~@5 x ~@10 x ~@2", B: "~ x ~ x ~@3 x ~ x ~ x ~@3 x", C: "~@3 x ~@5 x ~@11 x ~@4 x ~@5 x ~@11 x ~@3",
  D: "~ x ~@2 x ~@5 x ~@2 x ~@2 x ~@7", E: "~@25 x ~@5 x ~@16", F: "~ x ~@5 x ~@11 x ~@5 x ~@5 x ~@16", G: "x",
  H: "~@27 x ~@5 x ~@6 x ~@5 x ~", I: "~@4 x ~@6 x ~@5 x ~@5 x ~@5 x ~@6 x ~@5 x ~@5",
  J: "x ~@6 x ~@5 x ~@5 x ~@12 x ~@11 x ~@3", K: "~@9 x ~@6 x ~@5 x ~@5 x ~@5 x ~@6 x ~@5 x",
  L: "~@5 x ~@6 x ~@5 x ~@5 x ~@12 x ~@10", M: "~ x ~@6 x ~@5 x ~@6 x ~@5 x ~@5 x ~@5 x ~@8",
  N: "~@4 x ~@5 x ~@6 x ~@5 x ~@5 x ~@12 x ~@5", O: "x ~@6 x ~@5 x ~@5 x ~@5 x ~@6 x ~@11 x ~@3",
  P: "~@3 x ~@5 x ~@5 x ~@6 x ~@5 x ~@5 x ~@12 x", Q: "~@5 x ~@5 x ~@6 x ~@5 x ~@5 x ~@5 x ~@5 x ~@5", R: "x!7 ~",
  S: "x!8", T: "x ~@5 x ~@5 x ~@34 x", U: "~@5 x ~@11 x ~@5 x ~@5 x ~@11 x ~@5 x",
  V: "~@5 x ~@17 x ~@5 x ~@10 x ~@5 x ~", W: "~@2 x ~@5 x ~@2 x ~@2 x ~@5 x ~@2 x",
  X: "~@4 x ~@11 x ~@5 x ~@4 x ~@11 x ~@5 x ~@2", Y: "~ x ~@3 x ~ x ~ x ~@3 x ~ x", Z: "~@3 x ~@10 x ~@5 x ~@27",
  AA: "~@19 x ~@2 x ~", AB: "~@7 x ~@2 x ~@5 x ~@2 x ~@2 x ~", AC: "~@7 x ~@5 x ~@5 x ~@11 x ~@5 x ~@5 x ~@4",
  AD: "~@13 x ~@5 x ~@11 x ~@4 x ~@5 x ~@5", AE: "~ x!3 ~@2 x!2", AF: "~@6 x ~@5 x ~@4 x ~@17 x ~@5 x ~@6",
  AG: "~@5 x ~@5 x ~@5 x ~@17 x ~@12",
})).gain(0.33)

// drums · hihat · soft notes
const hihat_soft = s("hh").struct("<~@19 A B ~@4 C D A E ~@8 F ~@14 G ~ H ~ I ~@5>".pickRestart({
  A: "~@43 x ~@4", B: "~@7 x", C: "~@19 x ~@4", D: "~ x ~@14", E: "~@23 x", F: "~@17 x ~@30", G: "~ x ~@4",
  H: "~@7 x ~@40", I: "~@29 x ~@18",
})).gain(0.22)

// drums · mid tom
const mid_tom = s("mt").struct("<~@15 A ~@3 B ~@15 C ~@5 D ~@13 E ~ F ~@4>".pickRestart({
  A: "~@10 x ~@8 x ~@28", B: "~ x ~", C: "~@35 x ~@5 x ~@6", D: "~@16 x ~@2 x ~@4", E: "~@9 x ~@6",
  F: "~@26 x ~@2 x ~@18",
})).gain(0.44)

// drums · open hat
const open_hat = s("oh").struct(`<
  ~@15 A B C D E F G ~@3 H ~ I ~ J K L ~ M ~ N O@2 P Q R S ~@9 T U V@2 W X Y ~@4
>`.pickRestart({
  A: "~@13 x ~@2", B: "~@5 x ~@7 x ~@2", C: "~@15 x ~@22 x ~@9", D: "~@7 x ~@11 x ~@4", E: "~@7 x ~@29 x ~@10",
  F: "~@13 x ~@23 x ~@10", G: "~ x ~@2", H: "~@13 x ~@10", I: "~@31 x ~@16", J: "~@3 x", K: "~@19 x ~@4",
  L: "~@41 x ~@6", M: "~@7 x", N: "~@3 x ~ x ~ x", O: "~@11 x ~@23 x ~@12", P: "~@5 x ~@11 x ~@6",
  Q: "~@10 x ~@22 x ~@14", R: "~@3 x ~@7 x ~@4", S: "~ x ~@2 x ~", T: "~@5 x ~@2 x ~@3", U: "~ x ~@11 x ~@10",
  V: "~ x ~@23 x ~@22", W: "x!2", X: "x ~@22 x ~@23 x", Y: "~@23 x ~@24",
})).gain(0.38)

// drums · high tom
const high_tom = s("ht").struct("<~@15 A ~@19 B ~@5 C ~@13 D ~@6>".pickRestart({
  A: "~ x ~", B: "~@19 x ~@4", C: "~@35 x ~@12", D: "~@5 x ~@2",
})).gain(0.44)

// drums · crash
const crash = s("cr").struct("<~@15 A ~@3 B ~ C ~@9 D ~@3 E F ~@2 G ~ H ~@9 I ~@3 J ~ K ~@4>".pickRestart({
  A: "~@7 x ~@4", B: "~@25 x ~@22", C: "~ x", D: "~@47 x", E: "~ x ~ x ~ x ~@2", F: "x", G: "~@13 x ~ x", H: "~@11 x",
  I: "~@19 x ~@4", J: "~ x ~ x ~@2 x ~", K: "~@23 x ~@11 x ~@12",
})).gain(0.27)

// drums · crash · soft notes
const crash_soft = s("cr").struct("<~@19 [~@13 x ~@34] ~@14 x ~@18 [~@37 x ~@10] [~@7 x] ~@7>").gain(0.16)

// drums · tambourine
const tambourine = s("tb").struct("<~@15 A B C D E F G ~@9 H I J@2 K L M N O P Q ~@9 R S T U V W X ~@4>".pickRestart({
  A: "~@28 x ~@10 x ~@8", B: "~ x ~ x!3 ~ x!3 ~@2 x!2 ~ x",
  C: "x ~@2 x ~@5 x ~@5 x ~@5 x ~@2 x ~ x ~@11 x ~@2 x ~@2 x ~@2 x",
  D: "~@2 x ~@5 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@5 x ~@2 x ~@2 x ~@5 x ~@2 x",
  E: "~@2 x ~@2 x ~@2 x ~ x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@8 x ~@2 x ~@5 x ~@2 x ~",
  F: "~ x ~@5 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@5 x ~ x ~@3 x ~@4 x ~@2 x ~@2", G: "x ~ x!3 ~ x!2 ~@8",
  H: "~@47 x", I: "~@5 x ~@5 x ~@12 x ~@11 x ~@5 x ~@5", J: "x!8",
  K: "x ~@5 x ~@5 x ~@5 x ~@5 x ~@5 x ~@5 x ~@5 x ~@4 x",
  L: "~@2 x ~@2 x ~@2 x ~@2 x ~@5 x ~@2 x ~@2 x ~@5 x ~@2 x ~@2 x ~@5 x ~@2 x ~@2 x",
  M: "~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@5 x ~@2 x ~@2 x ~@2 x ~ x ~@2 x ~@2 x ~",
  N: "~ x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@5 x ~@2 x ~@2 x ~",
  O: "~ x ~@2 x ~@2 x ~@2 x ~@5 x ~@2 x ~@2 x ~ x ~@2 x ~@2 x ~@2 x ~@5 x ~@2 x ~@2 x ~@2", P: "x!4 ~ x!3 ~ x!7",
  Q: "~@2 x ~@5 x ~@5 x ~@2 x ~@2 x ~@5 x ~@2 x ~@2 x ~@5 x ~@2 x ~@6", R: "~@38 x ~@5 x ~@2 x",
  S: "~@2 x ~@5 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~ x ~@3 x ~ x ~",
  T: "~ x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@5 x ~@2 x ~",
  U: "~ x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~ x ~@3 x ~@5 x ~ x ~@2 x ~@5 x ~@2 x ~@2",
// … 21 more lines

More by Bread