Strudelify

Sentimental Lady

Bob Welch

KeyB♭ majorTempo83 bpm
0:00/0:00
// Sentimental Lady — Bob Welch
// 83 bpm, 4/4, key Bb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 89 bars on a 48-step grid, each part at one level. Source detail keeps the original performance.
setcpm(83/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(`<
  A@2 B C D E F G H I J H K L M N O P Q R S T Q R U V W I X H I J H Y L M N O P Q T Z T Q R U AA AB AC AD@2 AE AF AD V W
  F G H I AG H Y L M N O P Q T Z T AH T AI P AH T Z R Q T AI P Q R Z AJ ~
>`.pickRestart({
  A: "d2 e2", B: "d2", C: "d2@4 d3@3 a2 d3 ~ d3@4 c3@2", D: "d2@4 d3@2 d2@2 c3 ~ c3@4 e2@2",
  E: "d2@4 d3@2 d2@2 g2 ~ g2@4 f2@2", F: "d2@4 d3@3 a2 d3 ~ d3@4 a1@2", G: "bb1@4 bb2@3 f2 c3 ~ c3@4 a2@2",
  H: "bb1@4 bb2@3 f2 g2 ~ g2@4 e2@2", I: "d2@4 d3@3 a2 d3 ~ d3@4 f2@2", J: "d2@4 d3@3 bb2 g2 ~ g2@4 f2@2",
  K: "a1@4 a2@3 f2 a2 ~ a2@4 c2@2", L: "c2@4 a2@3 e2 c3 ~ c3@2 c2@2 a1@2", M: "a1@4 c3@3 g2 a2 ~ a2@2 a1@2 a1@2",
  N: "c2@4 a2@3 e2 a2 ~ a2@2 c2@2 d2@2", O: "c2@4 c3@3 g2 c3 ~ c3@2 a2@4", P: "a1@4 a2@3 f2 d3 ~ d3@4 f2@2",
  Q: "c2@4 c3@3 g2!2 ~ g2@4 f2@2", R: "c2@4 c3@3 g2 bb2 ~ bb2@4 c2@2", S: "a1@4 a2@3 e2 g2 ~ g2@4 d2@2",
  T: "c2@4 c3@3 g2 bb2 ~ bb2@4 d2@2", U: "c2@4 c3@3 g2 d3 ~ d3@4 c3@2", V: "d2@4 d3@2 d2@2 c3 ~ c3@4 d2@2",
  W: "d2@4 d3@2 d2@2 g2 ~ g2@4 e2@2", X: "bb1@4 bb2@3 f2 c3 ~ c3@4 g2@2", Y: "a1@4 a2@3 f2 a2 ~ a2@4 f2@2",
  Z: "a1@4 a2@3 e2 g2 ~ g2@2 bb1@4", AA: "c2@4 c3@3 g2 c3 ~ c3@4 eb2@2", AB: "bb1@4 bb2@3 f2 bb2 ~ bb2@4 f2@2",
  AC: "c2@4 c3@3 g2 c3 ~ c3@4 d2@2", AD: "f1@4 f2@3 c2 f2 ~ f2@4 c2@2", AE: "bb1@4 bb2@3 f2 bb2 ~ bb2@4 c2@2",
  AF: "c2@4 c3@3 g2 c3 ~ c3@4 a2@2", AG: "d2@4 d3@3 bb2 g2 ~ g2@4 e2@2", AH: "c2@4 c3@3 g2!2 ~ g2@4 d2@2",
  AI: "c2@4 c3@3 g2 d3 ~ d3@4 bb2@2", AJ: "f2@3 ~",
})).s("gm_fretless_bass").gain(0.32)

// other · acoustic guitar steel · "GuitarB"
const acoustic_guitar_steel = note(`<
  ~@4 A B C D E F G E H I J K L M N O P O N O Q A B F D E F G E H I J K L M N O R O N O Q S T S U@2 T S U A B C D E F G
  E H I J K L M N O R O N O Q M N O R O N O Q M N O R ~@2
>`.pickRestart({
  A: "~ d3@18 d3@6 c3@23", B: "~ d3@18 d3@6 g2@23", C: "~ d3@24 d3@23", D: "~ bb2@24 c3@23", E: "~ bb2@24 g2@23",
  F: "~ d3@47", G: "~ d3@24 g2@23", H: "~ a2@47", I: "~ c3@12 a2@12 c3@12 c3@6 a2@5",
  J: "~ a2@12 c3@12 a2@12 a2@6 a2@5", K: "~ c3@12 a2@12 a2@12 c3@6 d3@5", L: "~ c3@12 c3@12 c3@12 a2@11",
  M: "~ a2@24 d3@23", N: "~ c3@24 g2@23", O: "~ c3@24 bb2@23", P: "~ a2@24 g2@23", Q: "~ c3@24 d3@23",
  R: "~ a2@24 g2@12 bb2@11", S: "~ c3@47", T: "~ bb2@47", U: "~ f2@47",
})).s("gm_acoustic_guitar_steel").gain(0.39)

// chords · acoustic guitar steel · "GuitarA"
const acoustic_guitar_steel_2 = note(`<
  ~@2 A B C D E F G H I J A K L M N O L P Q R Q S T D C B I U V ~ W ~ L M N X Y Z Q AA T AB Q AC AD ~ AE AF AG AH AE AI
  C AJ E J I B G AK A AL N AL L P L Z L P L Z T R Q S Q AC Q S Q AC Q R Q ~@2
>`.pickRestart({
  A: "~ f4@15, ~ a3@47, ~ d4@23", B: "~@43 d4@5, ~@2 a3@23 a3@6 a3@9 a3@8, ~@3 d4@25 d4@15 ~@5, ~@2 f4@15 f4@7",
  C: "~@3 f4@16 ~@29, ~ bb3@18 ~@29, ~@2 d4@17 ~@29",
  D: "~@4 f4@15 ~@24 c4@5, ~@2 bb3@17 ~@6 g3@6 g3@9 g3@8, ~@3 d4@16 ~@9 c4@15 ~@5, ~@17 e4@7",
  E: "~@3 f4@22 ~@23, ~ a3@24 ~@23, ~@2 d4@23 ~@23",
  F: "~@19 bb3@6 ~@18 c4@5, ~@2 bb3@17 ~@12 c4@12 ~@5, ~@3 d4@22 ~@12 g3@11, ~@4 f4@21 ~@15 e4@8",
  G: "~@15 f4@10 ~@23, ~@13 bb3@12 ~@23, ~@14 d4@11 ~@23",
  H: "~@34 f4@6 ~@3 f4@5, ~@2 a3@17 a3@12 a3@17, ~@3 d4@19 d4@18 d4@8, ~@2 f4@15 ~@7",
  I: "~@3 f4@22 ~@23, ~ bb3@24 ~@23, ~@2 d4@23 ~@23",
  J: "~@22 d4@3 ~@6 e4@6 ~@6 c4@5, ~@2 bb3@17 bb3@6 ~@3 g3@20, ~@3 d4@19 ~@15 c4@6 ~@5, ~@4 f4@21 ~@15 e4@8",
  K: "~@4 e4@9 ~@6 a3@6 ~@6 c4@6 ~@3 e4@3 d4@5, ~@2 a3@11 ~@24 a3@6 ~@5, ~@3 c4@10 ~@35",
  L: "~@15 e4@10 ~@23, ~@13 a3@12 ~@23, ~@14 c4@11 ~@23",
  M: "~@4 e4@9 ~@9 c4@3 ~@9 e4@3 ~@3 c4@3 f4@5, ~@2 a3@11 ~@6 a3@6 ~@6 a3@6 ~@11, ~@3 c4@10 ~@35",
  N: "~@3 e4@10 ~@35, ~ a3@12 ~@35, ~@2 c4@11 ~@35",
  O: "~@19 a3@6 ~@18 bb3@5, ~@2 a3@17 ~@12 bb3@12 ~@5, ~@3 c4@22 ~@12 g3@11, ~@4 f4@21 ~@15 d4@8",
  P: "~@22 c4@3 ~@9 d4@6 ~@3 d4@5, ~@2 a3@17 a3@6 ~@6 g3@17, ~@3 c4@19 ~@18 bb3@8, ~@4 f4@21 ~@23",
  Q: "~@3 e4@22 ~@23, ~ a3@24 ~@23, ~@2 c4@23 ~@23",
  R: "~@22 c4@3 ~@6 d4@6 ~@6 bb3@5, ~@2 a3@17 a3@6 ~@3 g3@20, ~@3 c4@19 ~@15 bb3@6 ~@5, ~@4 f4@21 ~@15 d4@8",
  S: "~@19 a3@6 ~@18 bb3@5, ~@2 a3@17 ~@12 bb3@12 ~@5, ~@3 c4@22 ~@12 g3@11, ~@4 e4@21 ~@15 d4@8",
  T: "~@3 f4@22 ~@23, ~ a3@24 ~@23, ~@2 c4@23 ~@23",
  U: "~@4 f4@21 ~@18 c4@5, ~@2 bb3@23 g3@6 g3@9 g3@8, ~@3 d4@22 ~@3 c4@15 ~@5, ~@17 e4@7",
  V: "~@19 a3@29, ~ a3@18 ~@29, ~@7 f4@41, ~@13 d4@35",
  W: "~@19 d4@6 ~@23, ~ bb3@24 ~@23, ~@7 d4@12 ~@29, ~@13 f4@12 ~@23",
  X: "~@4 e4@9 ~@9 c4@3 ~@6 e4@6 ~@6 c4@5, ~@2 a3@11 ~@6 a3@6 ~@3 a3@9 ~@3 e4@8, ~@3 c4@10 ~@24 c4@6 ~@5",
  Y: "~@15 f4@10 ~@23, ~@13 a3@12 ~@23, ~@14 c4@11 ~@23",
  Z: "~@22 c4@3 ~@9 d4@6 ~@3 d4@5, ~@2 a3@17 a3@6 ~@6 g3@17, ~@3 c4@19 ~@18 bb3@8, ~@4 e4@21 ~@23",
  AA: "~@4 e4@21 ~@9 d4@3 ~@6 d4@5, ~@2 a3@23 g3@6 g3@6 ~@11, ~@3 c4@22 ~@3 bb3@9 ~@3 bb3@8",
  AB: "~@22 c4@3 ~@6 d4@6 ~@6 bb3@5, ~@2 a3@17 a3@6 ~@3 g3@20, ~@3 c4@19 ~@15 bb3@6 ~@5, ~@4 e4@21 ~@15 d4@8",
  AC: "~@4 f4@21 ~@18 bb3@5, ~@2 a3@23 g3@6 g3@9 g3@8, ~@3 c4@22 ~@3 bb3@15 ~@5, ~@17 d4@7",
  AD: "~@19 c4@29, ~ a3@47, ~@13 f4@35", AE: "~ e4@15, ~ g3@47, ~ c4@23",
  AF: "~@43 c4@5, ~@2 a3@17 a3@18 a3@11, ~@3 c4@28 c4@12 ~@5, ~ f4@9 f4@2", AG: "~ f4@15, ~ a3@47, ~ c4@23",
  AH: "~@43 d4@5, ~@2 bb3@17 bb3@18 bb3@11, ~@3 d4@28 d4@12 ~@5, ~ f4@9 f4@2",
  AI: "~@31 f4@6 ~@6 c4@5, ~@2 a3@17 a3@9 a3@20, ~@3 c4@19 c4@15 c4@6 ~@5, ~@4 f4@27 ~@9 f4@8",
  AJ: "~@4 f4@15 ~@3 d4@3 ~@6 e4@6 ~@6 c4@5, ~@2 bb3@17 bb3@6 ~@3 g3@20, ~@3 d4@16 ~@18 c4@6 ~@5, ~@5 e4",
  AK: "~@22 d4@3 ~@9 e4@6 ~@3 e4@5, ~@2 bb3@17 bb3@6 ~@6 g3@17, ~@3 d4@19 ~@18 c4@8, ~@4 f4@21 ~@23",
  AL: "~@4 e4@9 ~@9 c4@3 ~@6 e4@6 ~@3 e4@3 d4@5, ~@2 a3@11 ~@6 a3@6 ~@3 a3@9 ~@11, ~@3 c4@10 ~@24 c4@6 ~@5",
})).s("gm_acoustic_guitar_steel").gain(0.18)

// chords · acoustic guitar steel · "G-Pick"
const acoustic_guitar_steel_3 = note(`<
  ~@4 A B C D E F G@2 H I J K L M N@2 O@2 P Q R@2 S T U V W X Y@2 Z AA AB AC AD AE AF AG AH AI AJ AK AL@2 AM AN AO AP AQ
  AR AS@2 AT AU AV@2 AW@2 AX@2 AY AZ BA BB BC BD BE BF BG BH BI@2 BJ BK BL BM BN BO BP BQ BR BS BT BU@2
>`.pickRestart({
  A: "~@13 f3@6 f3@6 ~@18 e3@5, ~ d4@18 ~@12 e4@17, ~@7 bb3@12 ~@6 e3@18 ~@5, ~@37 c4@11",
  B: "~@13 bb3@6 bb3@6 ~@18 c4@5, ~ d4@18 ~@18 e4@11, ~@7 f3@12 ~@6 g3@23",
  C: "~@19 d4@6 d4@23, ~ d4@18 ~@29, ~@7 a3@18 ~@23, ~@13 f3@12 ~@23", D: "~ bb3@24 ~@18 e4@5, ~@25 g3@23, ~@37 e3@11",
  E: "~@19 bb3@6 c4@23, ~ bb3@18 ~@29, ~@7 d4@18 ~@23, ~@13 f3@12 ~@23", F: "~@43 f3@5, ~ d4@47, ~@37 a3@11",
  G: "[~@19 bb3@6 e4@22 c4@2 ~@6 f3@18 c4@23, ~ bb3@18 ~@32 bb3@22 ~@23, ~@7 f3@18 ~@24 f3@6 ~@41, ~@13 d4@12 ~@28 d4@20 ~@23]/2",
  H: "~@43 f3@5, ~ a3@18 a3@18 a3@11, ~@7 f3@18 f3@18 ~@5, ~@13 d4@18 d4@17",
  I: "~@7 a3@6 ~@6 a3@6 e4@12 a3@6 d4@5, ~ e3@12 e3@12 ~@23",
  J: "~@7 e4@6 ~@6 e3@6 e3@12 e4@6 d4@5, ~ c4@12 a3@12 ~@23", K: "~ c4@12 c4@12 a3@12 e4@6 f3@5",
  L: "~@7 e4@6 ~@6 e3@6 c4@12 e4@11, ~ e3@12 a3@12 ~@23", M: "~ c4@24 ~@18 d4@5, ~@25 g3@23, ~@37 bb3@11",
  N: "[~@19 e3@6 g3@22 d4@2 ~@6 f3@18 bb3@23, ~ e3@18 ~@30 f3@6 ~@41, ~@7 e4@18 ~@28 c4@20 ~@23, ~@13 a3@12 ~@26 a3@22 ~@23]/2",
  O: "[~@19 c4@6 d4@22 g3@2 ~@6 f3@18 g3@23, ~ a3@24 ~@26 a3@22 ~@23, ~@7 e3@18 ~@24 f3@6 ~@41, ~@13 e4@12 ~@28 c4@20 ~@23]/2",
  P: "~@19 c4@6 d4@23, ~ e3@24 ~@23, ~@7 e4@18 ~@23, ~@13 a3@12 ~@23", Q: "~ c4@24 ~@18 bb3@5, ~@25 g3@23, ~@37 d4@11",
  R: "[~@19 c4@6 g3@22 d4@2 ~@6 f3@12 d4@6 g3@23, ~ c4@18 ~@34 d4@14 ~@29, ~@7 f3@18 ~@24 f3@6 ~@41, ~@13 a3@12 ~@26 bb3@16 ~@29]/2",
  S: "~@13 f3@6 d4@6 e4@23, ~ d4@18 ~@29, ~@7 bb3@12 ~@29", T: "~@43 a3@5, ~ a3@42 ~@5, ~@31 d4@17, ~@37 f3@11",
  U: "~@19 bb3@6 ~@18 c4@5, ~ bb3@18 ~@18 e3@11, ~@7 f3@18 g3@23, ~@13 d4@12 ~@6 e4@17",
  V: "~@19 bb3@6 ~@18 c4@5, ~ bb3@18 ~@18 g3@11, ~@7 d4@18 ~@23, ~@13 f3@12 e3@23",
  W: "~@43 d4@5, ~ f3@18 f3@18 f3@11, ~@7 d4@18 d4@18 ~@5, ~@13 a3@18 a3@17",
  X: "~@19 d4@6 ~@18 e3@5, ~ d4@18 ~@6 e4@23, ~@7 f3@18 ~@23, ~@13 bb3@12 ~@12 c4@11",
  Y: "[~@19 bb3@6 e4@22 g3@2 ~@42 f3@5, ~ bb3@18 ~@32 a3@34 a3@11, ~@7 d4@18 ~@28 d4@43, ~@13 f3@12 ~@24 f3@6 f3@36 ~@5]/2",
  Z: "~@7 c4@6 ~@6 c4@6 e4@12 e4@6 f3@5, ~ e3@12 e4@12 ~@23",
  AA: "~@7 a3@6 ~@6 c4@6 ~@6 c4@6 c4@6 d4@5, ~ e4@12 a3@12 e4@12 ~@11",
  AB: "~@7 e3@6 ~@6 e4@6 c4@12 e4@6 d4@5, ~ a3@12 c4@12 ~@23",
  AC: "~@7 a3@6 ~@6 a3@6 e4@12 ~@6 e3@5, ~ e4@12 c4@12 ~@12 c4@11",
  AD: "~@19 c4@6 g3@23, ~ c4@18 ~@29, ~@7 f3@18 ~@23, ~@13 a3@12 ~@23",
  AE: "~ e4@24 ~@18 d4@5, ~@25 bb3@23, ~@37 g3@11",
  AF: "~@19 e3@6 ~@18 g3@5, ~ e4@24 ~@6 d4@17, ~@7 c4@18 ~@12 bb3@11, ~@13 a3@12 g3@18 ~@5",
  AG: "~@19 e3@6 d4@12 ~@6 bb3@5, ~ e3@18 ~@29, ~@7 c4@18 ~@12 d4@11, ~@13 a3@12 ~@23",
  AH: "~@19 f3@6 bb3@23, ~ f3@18 ~@29, ~@7 c4@18 ~@23, ~@13 a3@12 ~@23",
  AI: "~ c4@24 ~@18 g3@5, ~@25 d4@23, ~@37 bb3@11",
  AJ: "~@19 c4@6 d4@23, ~ c4@18 ~@29, ~@7 a3@18 ~@23, ~@13 e4@12 ~@23", AK: "~ f3@24 ~@18 bb3@5, ~@25 d4@23",
  AL: "[~@19 f3@28 c4@2 ~@42 d4@5, ~ f3@18 ~@30 f3@6 f3@41, ~@7 c4@40 ~@6 d4@38 ~@5, ~@13 a3@36 ~@2 bb3@34 bb3@11]/2",
  AM: "~@19 g3@29, ~ e4@47, ~@7 e3@41, ~@13 c4@35", AN: "~@43 a3@5, ~ c4@47",
  AO: "~@43 a3@5, ~ a3@18 a3@24 ~@5, ~@7 f3@24 f3@17, ~@13 c4@24 c4@11",
  AP: "~@43 f3@5, ~ f3@18 f3@24 ~@5, ~@7 d4@24 d4@17, ~@13 bb3@24 bb3@11",
  AQ: "~@43 e3@5, ~ c4@18 c4@18 c4@11, ~@7 g3@18 g3@23, ~@13 e3@30 ~@5, ~@31 e4@17",
  AR: "~@43 f3@5, ~ f3@18 f3@24 ~@5, ~@7 a3@24 a3@17, ~@13 c4@24 c4@11",
  AS: "[~@13 f3@6 bb3@6 g3@22 e4@2 ~@6 f3@12 bb3@6 c4@23, ~ d4@18 ~@32 bb3@16 ~@29, ~@7 bb3@12 ~@30 f3@4 d4@14 ~@29]/2",
  AT: "~@19 f3@6 ~@18 a3@5, ~ f3@18 ~@18 d4@11, ~@7 a3@18 a3@18 ~@5, ~@13 d4@12 ~@6 a4@17",
  AU: "~@19 bb3@6 ~@18 c4@5, ~ bb3@18 ~@29, ~@7 d4@18 ~@12 e4@11, ~@13 f3@12 g3@23",
  AV: "[~@19 bb3@6 c4@22 e3@2 ~@42 a3@5, ~ bb3@18 ~@32 a3@28 a3@12 ~@5, ~@7 f3@18 ~@24 f3@6 f3@41, ~@13 d4@12 ~@28 d4@32 d4@11]/2",
  AW: "[~@19 d4@6 c4@22 e3@2 ~@6 f3@18 g3@23, ~ d4@18 ~@34 d4@20 ~@23, ~@7 bb3@18 ~@26 bb3@22 ~@23, ~@13 f3@12 ~@24 f3@6 ~@41]/2",
  AX: "[~@19 f3@28 d4@2 ~@6 a3@6 e4@12 e3@12 c4@6 f3@5, ~ f3@18 ~@34 e4@8 ~@35, ~@7 a3@42 a3@6 ~@41, ~@13 d4@34 ~@4 c4@10 ~@35]/2",
  AY: "~@7 e4@6 ~@6 e4@6 e3@12 e3@6 f3@5, ~ e3@12 e3@12 ~@23",
  AZ: "~@7 e3@6 e3@12 e4@12 e3@6 d4@5, ~ e3@4 c4@8 ~@35, ~@3 a3@10 ~@35",
  BA: "~@7 a3@6 ~@6 e3@6 c4@12 a3@11, ~ e4@12 e4@12 ~@23", BB: "~ a3@24 ~@18 d4@5, ~@25 bb3@23, ~@37 g3@11",
  BC: "~@19 c4@6 g3@23, ~ c4@18 ~@29, ~@7 e3@18 ~@23, ~@13 a3@12 ~@23", BD: "~ e3@24 ~@18 d4@5, ~@25 bb3@23",
  BE: "~@19 e3@6 bb3@12 d4@11, ~ a3@24 ~@23, ~@7 c4@18 ~@23, ~@13 e4@12 ~@23", BF: "~ f3@24 ~@18 g3@5, ~@25 bb3@23",
  BG: "~@19 a3@6 g3@23, ~ e3@24 ~@23, ~@7 c4@18 ~@23, ~@13 e4@12 ~@23",
  BH: "~ a3@24 ~@18 bb3@5, ~@25 g3@23, ~@37 d4@11",
  BI: "[~@19 f3@6 bb3@22 d4@2 ~@6 f3@18 bb3@23, ~ f3@18 ~@30 f3@6 ~@41, ~@7 a3@18 ~@26 a3@22 ~@23, ~@13 c4@12 ~@28 c4@20 ~@23]/2",
  BJ: "~@19 a3@6 d4@23, ~ e4@24 ~@23, ~@7 e3@18 ~@23, ~@13 c4@12 ~@23", BK: "~ e3@24 ~@18 g3@5, ~@25 d4@23",
  BL: "~@19 c4@6 bb3@12 ~@6 d4@5, ~ a3@24 ~@23, ~@7 e4@18 ~@23, ~@13 e3@12 ~@12 f3@11",
  BM: "~@19 c4@6 ~@18 g3@5, ~ c4@18 ~@18 d4@11, ~@7 f3@18 g3@18 ~@5, ~@13 a3@12 ~@6 bb3@17",
  BN: "~@19 e4@6 d4@23, ~ a3@24 ~@23, ~@7 e3@18 ~@23, ~@13 c4@12 ~@23",
  BO: "~ e3@24 ~@18 d4@5, ~@25 g3@23, ~@37 bb3@11",
  BP: "~@19 e4@6 bb3@23, ~ a3@24 ~@23, ~@7 c4@18 ~@23, ~@13 e3@12 ~@23",
  BQ: "~ c4@24 ~@18 g3@5, ~@25 bb3@23, ~@37 d4@11",
  BR: "~@19 c4@6 ~@18 bb3@5, ~ c4@18 ~@12 d4@17, ~@7 e3@18 ~@12 g3@11, ~@13 a3@12 bb3@18 ~@5",
  BS: "~@19 c4@6 ~@18 bb3@5, ~ c4@18 ~@6 d4@23, ~@7 f3@18 ~@12 g3@11, ~@13 a3@12 ~@23",
  BT: "~@19 a3@6 d4@12 bb3@11, ~ e3@24 ~@23, ~@7 e4@18 ~@23, ~@13 c4@12 ~@23", BU: "[f3@21 ~@11]/2",
})).s("gm_acoustic_guitar_steel").gain(0.32)

// chords · acoustic guitar steel · "G-Strum"
const acoustic_guitar_steel_4 = note(`<
  A B C@2 D E F G@2 H I J C K@2 L M N O P O Q R S T U V H W I C W X C Y Z AA AB P AC@2 AD AE AF AC Q AG AH AI AG@2 AH AJ
  AG AK AL AM I W C AN AO C AP L AQ AR AS O AT AU AV S AF AE T R AW AX AS AY O AF AE O AS AX AZ ~
>`.pickRestart({
  A: "~ [bb3,d4,f4]@18 ~@7 e4@22, ~@25 [g3,c4]@23", B: "~@3 f4@16 ~@7 e4@22, ~ bb3@18 ~@6 [g3,c4]@23, ~@2 d4@17 ~@29",
  C: "~ f4@15, ~ a3@47, ~ d4@23", D: "~@3 f4@16 [bb3,d4,f4]@6 [g3,c4,e4]@23, ~ bb3@18 ~@29, ~@2 d4@17 ~@29",
  E: "~ [bb3,d4,f4]@18 [bb3,d4,f4]@6 [g3,c4,e4]@23", F: "~@3 f4@22 ~@2 a4@21, ~ a3@24 a3@23, ~@2 d4@23 ~ d4@22",
  G: "~ [bb3,d4,f4]@24 [g3,c4,e4]@23", H: "~ [a3,d4,f4]@47",
  I: "~@3 f4@22 ~@2 g4@21, ~ bb3@24 c4@23, ~@2 d4@23 ~ e4@22",
  J: "~@3 f4@22 [c4,e4,g4]@23, ~ bb3@24 ~@23, ~@2 d4@23 ~@23", // C
  K: "~@3 e4@10 [a3,c4,e4]@12 ~@2 e4@10 [a3,c4,e4]@6 [a3,d4,f4]@5, ~ a3@12 ~@12 a3@12 ~@11, ~@2 c4@11 ~@13 c4@11 ~@11", // Am Dm
  L: "~ [a3,c4,e4]@12 [a3,c4,e4]@12 ~@2 e4@10 [a3,c4,e4]@6 [a3,d4,f4]@5, ~@25 a3@12 ~@11, ~@26 c4@11 ~@11", // Am Dm
  M: "~ [a3,c4,e4]@12 [a3,c4,e4]@12 [a3,c4,e4]@12 [a3,c4,e4]@11", // Am
  N: "~@3 f4@22 ~@2 d4@21, ~ a3@24 g3@23, ~@2 c4@23 ~ bb3@22", O: "~ [a3,c4,e4]@24 ~@2 g4@21, ~@25 bb3@23, ~@13 d4@11",
  P: "~ [a3,c4,f4]@24 [g3,bb3,d4]@23", Q: "~@3 f4@22 [bb3,d4,g4]@23, ~ a3@24 ~@23, ~@2 c4@23 ~@23",
  R: "~@3 e4@22 ~@2 g4@21, ~ a3@24 bb3@23, ~@2 c4@23 ~ d4@22",
  S: "~@3 e4@22 [g3,bb3,d4]@23, ~ a3@24 ~@23, ~@2 c4@23 ~@23", T: "~ [a3,c4,f4]@24 ~@2 d4@21, ~@25 g3@23, ~@13 bb3@11",
  U: "~@3 f4@16 [bb3,d4,f4]@6 ~@2 e4@21, ~ bb3@18 ~@6 g3@23, ~@2 d4@17 ~@7 c4@22", // Bb
  V: "~ [bb3,d4,f4]@18 ~@2 f4@4 [c4,e4,g4]@23, ~@19 bb3@6 ~@23, ~@20 d4@5 ~@23", W: "~ [bb3,d4,f4]@24 [c4,e4,g4]@23",
  X: "~@3 f4@22 ~@2 e4@21, ~ bb3@24 g3@23, ~@2 d4@23 ~ c4@22",
  Y: "~ [a3,c4,e4]@12 ~@2 e4@10 [a3,c4,e4]@12 ~@2 e4@4 [a3,d4,f4]@5, ~@13 a3@12 ~@12 a3@6 ~@5, ~@14 c4@11 ~@13 c4@5 ~@5", // Am Dm
  Z: "~@3 e4@10 ~@2 e4@10 [a3,c4,e4]@12 [a3,c4,e4]@6 ~@2 f4@3, ~ a3@12 a3@12 ~@18 a3@5, ~@2 c4@11 ~ c4@11 ~@19 d4@4", // Am
  AA: "~ [a3,c4,e4]@12 ~@2 e4@10 ~@2 e4@10 ~@2 e4@4 ~@2 f4@3, ~@13 a3@12 a3@12 a3@6 a3@5, ~@14 c4@11 ~ c4@11 ~ c4@5 ~ d4@4", // Am
  AB: "~ [a3,c4,e4]@12 [a3,c4,e4]@12 ~@2 e4@10 ~@2 e4@9, ~@25 a3@12 a3@11, ~@26 c4@11 ~ c4@10", // Am
  AC: "~ [a3,c4,e4]@24 ~@2 d4@21, ~@25 g3@23, ~@13 bb3@11", // Am
  AD: "~ [a3,c4,e4]@24 [bb3,d4,g4]@12 ~@2 f4@9, ~@37 bb3@11, ~@19 d4@5", // Am Gm
  AE: "~ [a3,c4,f4]@24 ~@2 g4@21, ~@25 bb3@23, ~@13 d4@11", AF: "~ [a3,c4,e4]@24 [g3,bb3,d4]@23",
  AG: "~ f4@15, ~ a3@47, ~ c4@23", AH: "~ [bb3,d4,f4]@47", AI: "~ [g3,c4,e4]@47", AJ: "~ g4@15, ~ c4@47, ~ e4@23",
  AK: "~@3 f4@16 ~@2 f4@4 [g3,c4,e4]@23, ~ bb3@18 bb3@6 ~@23, ~@2 d4@17 ~ d4@5 ~@23", // C
  AL: "~ [bb3,d4,f4]@18 ~@2 f4@4 [g3,c4,e4]@23, ~@19 bb3@6 ~@23, ~@20 d4@5 ~@23", AM: "~ [a3,d4,f4]@24 [a3,d4,a4]@23",
  AN: "~@3 f4@22 [g3,c4,e4]@23, ~ bb3@24 ~@23, ~@2 d4@23 ~@23", // C
  AO: "~ [bb3,d4,f4]@24 ~@2 e4@21, ~@25 g3@23, ~@13 c4@11", // Bb
  AP: "~@3 e4@10 [a3,c4,e4]@12 ~@2 e4@10 [a3,c4,e4]@6 ~@2 f4@3, ~ a3@12 ~@12 a3@12 ~@6 a3@5, ~@2 c4@11 ~@13 c4@11 ~@7 d4@4", // Am
  AQ: "~ [a3,c4,e4]@12 [a3,c4,e4]@12 [a3,c4,e4]@12 ~@2 e4@4 [a3,d4,f4]@5, ~@37 a3@6 ~@5, ~@38 c4@5 ~@5", // Am Dm
  AR: "~@3 e4@10 [a3,c4,e4]@12 [a3,c4,e4]@12 ~@2 e4@9, ~ a3@12 ~@24 a3@11, ~@2 c4@11 ~@25 c4@10", // Am
  AS: "~@3 f4@22 [g3,bb3,d4]@23, ~ a3@24 ~@23, ~@2 c4@23 ~@23", // Gm
  AT: "~@3 e4@22 [bb3,d4,g4]@23, ~ a3@24 ~@23, ~@2 c4@23 ~@23", // Gm
  AU: "~@3 e4@22 [g3,bb3,d4]@12 ~@2 f4@9, ~ a3@24 ~@12 bb3@11, ~@2 c4@23 ~@13 d4@10", // Gm
  AV: "~@3 f4@22 ~@2 g4@21, ~ a3@24 bb3@23, ~@2 c4@23 ~ d4@22",
  AW: "~@3 e4@22 ~@2 d4@21, ~ a3@24 g3@23, ~@2 c4@23 ~ bb3@22",
  AX: "~@3 e4@22 [bb3,d4,g4]@12 [bb3,d4,f4]@11, ~ a3@24 ~@23, ~@2 c4@23 ~@23", AY: "~ [a3,c4,e4]@24 [bb3,d4,g4]@23",
  AZ: "~@2 f4@11 ~@11, f3@11 ~@13, ~ c4@11 ~@12, ~@3 d4@22 ~@23",
})).s("gm_acoustic_guitar_steel").gain(0.4)

// chords · acoustic guitar steel · "Guitar Fill"
const acoustic_guitar_steel_5 = note("<A B C@2 ~@42 D E F G H I J K ~@35>".pickRestart({
  A: "[d4,f4]@2 [e4,g4] [f4,a4] [d4,f4]@4 [e4,g4]@2 [f4,a4] [g4,bb4] [e4,g4]@4", // Dm Em F Dm Em F Gm Em
  B: "[d4,f4]@2 [e4,g4] [f4,a4] [d4,f4]@4 [e4,g4]@2 [f4,a4] [g4,bb4] [e4,g4]@2 [a3,c4]@2", // Dm Em F Dm Em F Gm Em …
  C: "[[a4,d5]@6 [g4,c5]@6 [f4,bb4]@3 [e4,a4]@5 ~ g4@3 [c4,f4]@12 [a3,c4]@6 [c4,f4]@3 c4@21 ~@30, ~@20 d4@4 ~@21 a3@16 ~@35]/2", // D5 C5 Bb5 A5 F5 Am F5
  D: "[f4,c5]@12 [a4,c5] [g4,a4] [f4,a4]@2", E: "[g4,c5]@6 [f4,g4]@3 [d4,f4]@26 ~ [a4,c5]@3 [g4,bb4]@3 [f4,a4]@6",
// … 85 more lines

More by Bob Welch