Strudelify
Pretty Penny cover art

1994 · Purple

Pretty Penny

Stone Temple Pilots

KeyE majorTempo127 bpm
0:00/0:00
// Pretty Penny — Stone Temple Pilots
// 127 bpm, 3/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 153 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(127/3)

// 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, A@4 for four bars: edit a riff to change every repeat.

// chords · acoustic guitar steel · "Acoustic Guitar"
const acoustic_guitar_steel = note(`<
  A B C@2 D E F G A H I@2 J K L M N O P Q R S T U V W X Y@2 Z AA AB AC AD AE AF H AG H J K L AH N AI P Q AJ AK T AL V W
  X Y@2 Z AA AB AC AD AE AM AN AO AP AQ AR AM AS AT AU AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ@2 BK BL BM@2 BN@2
  BO@2 BP@2 BQ@2 BR@2 BS@2 BT@2 BU@2 BV BW V W X Y@2 Z AA AB AC AD AE BX@2 BY@2 BZ@2 CA BL AT AU AV AW AX AY AZ BA BB BC
  BD BE BF BG BH BI CB@2 BK CC CD@2 CE@2
>`.pickRestart({
  A: "~ [e3,b3]@7 ~@4 [e3,a3]@2 ~@6 g3@4", B: "~@8 g3 ~@3, c#4@3 ~, d4@11 ~ [d4,g4]@7 ~@5, g3!2 ~, ~ g4@11 ~@12",
  C: "[[e3,b3]@4 ~@2 [e3,a3]@2 ~@2 [g3,g4]@2 ~@8 g3 ~@3, ~@8 b3@9 ~@3 c#4@22 ~@6, ~@24 g4@12 ~ g4@6 ~@5, ~@3 g3!2 ~, ~@25 d4@11 d4@6 ~@6]/2", // E5 A5 G
  D: "~ [e3,b3]@7 ~@4 [e3,a3]@2 ~@6 g3@2 ~@2, ~@2 e3 ~@3, ~@9 b3@5 ~@10", // E5 A5
  E: "~ b3@11 ~@4 g3@4 ~@4, [d4,g4]@3 [d4,g4]@2 ~, g3@9 ~@4 b3@8 ~@3", F: "[e3,b3]@4 ~@2 [e3,a3] ~@3 g4@2",
  G: "~@4 g3 ~, g4@11 ~@13, g3!2 ~, ~ d4@11 [d4,g4]@9 ~@3, ~@2 b3@11 b3@8 ~@3", // G5
  H: "g3@8 ~@4 [d4,g4]@4 g3@2 ~@2 e3 ~@3, [d4,g4] ~, ~ g3 ~", // G5
  I: "[~ b3@8 ~@3 [e3,a3]@2 ~@10 g3@8 ~@4 [d4,g4]@4 g3@2 ~@2 e3 ~@3, e3@4 ~@6 c#4@11 ~@3, ~@2 [d4,g4] ~, ~@4 g3 ~]/2", // A5 G5
  J: "~ b3@7 b3@4 [e3,a3]@2 ~@10, e3 ~@2", K: "~@4 g3 ~, d4@11 ~ [d4,g4]@8 ~@4, g3!2 ~, ~ g4@11 ~@12",
  L: "[e3,b3]@4 ~@2 [e3,a3] ~@5", M: "g3@4 ~@4 g3 ~@3, [b3,d4,g4]@12 [b3,d4,g4]@7 ~@5, ~ g3 ~",
  N: "~ e3@7 b3@4 [e3,a3]@2 ~@10, b3 ~@2", O: "~ g3@3 ~@2 [b3,d4,g4]@2 g3 ~@3, d4 ~, ~ [b3,g4]@11 ~@12, ~ g3 ~",
  P: "[e3,b3]@4 ~@2 [e3,a3] ~@5, ~@8 b3@7 ~@9", Q: "~ g3@7 ~@4 [b3,d4,g4]@4 g3@2 ~@6, [b3,d4,g4] ~",
  R: "[e3,b3]@8 e3@4 ~ a3@3 ~@4 g3@4, ~ b3 ~, ~@3 e3 ~@2", S: "~ g4@11 ~@3 g3@3 ~@6, [b3,d4]@2 [b3,d4,g4] ~, g3@7 ~@17",
  T: "[e3,b3]@2 e3 [e3,a3] ~@2", U: "~ d4@11 [b3,d4,g4]@7 ~@5, g3@3 ~, [b3,g4] ~", V: "~@3 d#4@2 ~",
  W: "c#4@11 ~@5 b3@5 ~@3", X: "b3@5 ~@3 b3@6 ~@3 d#4@5 ~@2", Y: "[e4@10 ~@2 d#4@9 ~@2 c#4@14 ~@3 b3@4 ~@4]/2",
  Z: "b3@4 ~@4 c#4@6 ~@2 c#4@5 ~@3", AA: "~ e4@9 ~@2 d#4@11 ~, d#4 ~@11", AB: "c#4@13 ~@3 b3@5 ~@3",
  AC: "b3@5 ~@3 c#4@4 ~@3 d#4@4 ~@5", AD: "e4@11 ~ d#4@10 ~@2", AE: "c#4@5 ~ b3@5 ~",
  AF: "[e3,b3]@7 ~@5 e3 a3 ~@6 g3@4", AG: "~ b3@8 ~@3 [e3,a3]@2 ~@10, e3 ~@2",
  AH: "g3@4 ~@4 g3 ~@3, c#4@3 ~, [b3,d4,g4]@12 [b3,d4,g4]@7 ~@5, ~ g3 ~", // G
  AI: "~ g3@3 ~@2 [b3,c#4,d4,g4]@2 g3 ~@3, d4 ~, ~ [b3,g4]@11 ~@12, ~ g3 ~", // G Em
  AJ: "[e3,b3]@8 [e3,b3]@4 ~ a3 ~@6 g3@4, ~@6 e3 ~@5", // E5
  AK: "~ g4@11 ~@3 g3@3 ~@6, [b3,c#4,d4]@2 [b3,c#4,d4,g4] ~, g3@7 ~@17", // Bm G
  AL: "~ d4@11 [b3,c#4,d4,g4]@7 ~@5, g3@3 ~, [b3,c#4,g4] ~", AM: "[e3,b3]@4 [e3,b3]@2 [e3,a3] ~@5",
  AN: "b3@8 ~@8 [g3,b3]@4 ~ e3 ~@2, [d4,g4]@3 [d4,g4]@2 ~, ~ [g3,b3] ~", // G G5 G
  AO: "~ [e3,b3]@7 ~@5 a3@2 ~@9, ~@4 e3@2 e3 ~@5, ~@3 b3@2 ~@3", // E5
  AP: "[g3,b3]@8 ~@8 [g3,b3]@4 e3 ~@3, [d4,g4]@3 [d4,g4]@2 ~, ~ [g3,b3] ~", AQ: "~ [e3,b3]@8 [e3,b3]@4 [e3,a3]@2 ~@9",
  AR: "~ b3@7 ~@9 g3@4 [e3,f#3] ~@2, [d4,g4]@3 g4@2 ~, g3@2 b3@2 b3 ~, ~@9 g3@8 ~@7, ~@13 d4@8 ~@3", // Esus2 G5
  AS: "[g3,b3]@4 ~@2 [d4,g4]@2 [g3,b3] ~@3, [d4,g4] ~, ~ [g3,b3] ~", AT: "[e4,f#4]@6 [e4,f#4]@4 b3 ~, [e3,b3]@3 ~@5",
  AU: "~ [e4,b4]@11 ~@2 e4@10, [e3,b3,f#4] b4, ~@3 b3@2 ~, ~@13 f#4@11, ~@13 e3@7 ~@4", // E5 Esus2
  AV: "~ [e3,e4,f#4]@12 [e3,b3]@7 ~ e3@3, b3@12 ~ [e4,f#4]@11, ~@5 b3", // Esus2 E5 Esus2
  AW: "~ [e3,b3,e4,f#4,b4]@11 ~ b3@8 b3@3, ~@3 e3@2 ~, ~@13 [e4,f#4,b4]@11", // Esus2
  AX: "~ [e3,b3,e4,g#4]@11 ~ e3@7 b3@4, ~ e4, ~@3 b3@2 ~, ~@13 g#4@11", // E
  AY: "~ [e3,g#4,b4]@11 ~ [b3,g#4]@7 b3@2 ~@2, [b3,e4]@6 [e3,e4,b4]@5 ~", // E E5
  AZ: "~ [e3,e4]@11 ~ e3@7 [e3,b3]@2 ~@2, [b3,g#4]@6 [b3,e4,g#4]@5 ~", // E E5 E
  BA: "[e3,b3,e4,g#4,b4]@3 ~@2 [e3,b3], ~@3 [e3,b3]@2 ~, ~@13 [e4,g#4]@11, ~@7 b4@5", // E E5 E
  BB: "~ [e3,a#4,b4]@11 ~ [e3,b3,b4]@7 b3@3 ~, [b3,e4]@12 [e4,a#4]@11 ~", // E E5 Edim
  BC: "~ b3@11 ~ b3@7 e3@4, [e3,e4,f#4,b4] f#4, ~@3 e3@2 ~, ~@13 [e4,b4]@11", // Esus2 E5
  BD: "~ [g#3,e4,a#4]@11 ~ [e3,g#3]@7 [e3,g#3,b3]@2 ~@2, [e3,b3,b4]@6 [b3,e4]@5 ~, ~@13 [a#4,b4]@10 ~", // A#m7b5 E E5 Bmaj7
  BE: "~ [g#3,e4]@11 ~@8 [g#3,b3]@4, [e3,b3,f#4,b4]@3 [e3,g#3,b3]@2 ~, ~@13 [f#4,b4]@11, ~@7 e4@5", // C#m G#m Esus2 E B5
  BF: "~@2 b3@10 ~ g#3@7 b3@4, ~ [e3,g#3,e4,a#4,b4]@11 [e3,b3]@8 ~@4, ~@13 [e4,a#4,b4]@11", // E E5 E
  BG: "~@2 e4@10 ~@9 e3@2 ~, [b3,b4]@13 [g#3,e4,f#4,b4]@10 ~, ~ [e3,g#3,f#4]@11 [e3,b3]@8 b3@2 ~@2", // B E E5
  BH: "~ [e3,g#3,b4]@3 ~ e4@3 ~ [a#4,b4]@3 ~ [e3,b4]@3 ~ [e3,e4,b4]@3 ~ [a#4,b4]@3, [b3,e4,a#4] [b3,b4] [b3,e4] [b3,e4,a#4] [b3,a#4] [e3,b3,e4]", // E Bmaj7 E5 Bmaj7 E B E5 E …
  BI: "~ e4 ~@2 [b3,b4]@4 ~ [e4,b4]@3 ~ [g#3,b3,e4,f#4]@3 ~ [e4,b4]@3 ~ [b3,f#4]@2 ~, [e3,g#3,b3,f#4,b4] ~@3 [e3,g#3,b3,f#4]@2 [e3,b4]@2 [e3,g#3,b3,f#4]@2 [e3,g#3,e4,b4] ~", // B E5 E E5 B5 E E5 E
  BJ: "[~ b3@11 [e3,a3]@3 ~@10 g3@7 ~@8 [g3,b3]@3 ~ e3 ~@3, e3@10 ~@10 c#4@15 c#4@7 ~@6, ~@24 [d4,g4]@12 [d4,g4]@7 ~@5, ~@24 b3@7 ~ [g3,b3]@8 ~@8]/2", // A5 G G5 G
  BK: "[e3,b3]@4 [e3,b3]@2 [e3,a3] ~@3 [c#4,d4,g4] ~", // E5 A5 G
  BL: "[g3,b3]@4 ~@2 [c#4,d4,g4]@2 [g3,b3] ~@3, [c#4,d4,g4] ~, ~ [g3,b3] ~", // G
  BM: "[[e3,b3]@8 e3@4 [e3,a3]@4 ~@9 g3@7 ~@8 [g3,b3]@3 ~ e3 ~@3, ~@8 b3@8 ~@4 c#4@16 [c#4,d4,g4]@7 ~@5, ~@5 b3@3 b3@2 ~@2, ~@2 [d4,g4] ~, ~@33 g3@7 ~@8]/2", // E5 A5 G G5
  BN: "[[e3,b3]@8 [e3,b3]@4 [e3,a3]@6 ~@6 [g3,b3]@8 [g3,b3]@4 c#4@3 ~ c#4 ~@3 c#4@2 ~ c#4, ~@5 c#4@4 ~@3, ~@24 [d4,g4]@15 ~@7 d4@2]/2", // E5 A5 G G5
  BO: "[~ e3@7 ~@4 a3@4 e3@2 ~@6 [d4,g4]@12 [c#4,d4,g4]@3 g3 ~@8, b3@4 ~ c#4@4 ~@3, ~ e3 ~ b3 ~@2]/2", // G5 G
  BP: "[[e3,b3]@8 ~@4 [e3,a3]@2 ~@11 b3@7 ~@8 [g3,b3]@2 ~@6, ~@10 c#4@8 [c#4,g4]@3 ~@3, ~@24 d4@12 ~ d4@6 ~@5, ~@24 g3@8 ~ g3@7 ~@8, ~@25 g4@11 ~@12]/2", // E5 A5 G C#dim
  BQ: "[[e3,b3]@7 ~@5 [e3,a3]@2 ~@10 [d4,g4]@12 ~@4 g3@3 ~@5, ~@8 b3@7 ~@5 c#4@16 [c#4,d4,g4]@7 ~@5, ~@3 [g3,b3] ~@2]/2", // E5 A5 G5 G
  BR: "[[e3,b3]@9 ~@3 [e3,a3]@4 ~@12 [c#4,d4]@4 [c#4,d4]@4 ~ d4@3 [c#4,d4,g4]@3 ~ [c#4,d4]@4, ~@20 c#4@7 ~@9 [c#4,g4]@4 ~@3 g4@5, ~ [g3,b3]]/2", // E5 A5 Dmaj7 G Dmaj7 C#dim G
  BS: "[[e3,b3]@4 ~@2 [e3,a3] ~@5 [g3,b3]@4 ~@4 g3 ~@3, ~@10 c#4@8 [c#4,g4]@3 ~@3, ~@24 [d4,g4]@13 d4@5 ~@6, ~@4 g3 ~]/2", // E5 A5 G C#dim G5
  BT: "[[e3,b3]@4 e3@2 [e3,a3]@2 ~@4 [g3,b3]@4 ~@2 [c#4,d4,g4]@2 [g3,b3] ~@3, ~@2 b3@2 ~ c#4@4 ~@3, ~@2 [d4,g4] ~, ~@4 [g3,b3] ~]/2", // E5 A5 G G5 G
  BU: "[~ e3@7 ~@4 [e3,a3]@4 ~@8 [d4,g4]@12 ~@4 [g3,b3]@4 ~@4, b3@2 ~@3 c#4@4 [c#4,d4,g4]@2 ~, ~@3 [g3,b3] ~@2]/2", // A5 G5 G
  BV: "[e3,b3]@2 ~ [e3,a3] ~@2, ~ b3 ~", BW: "~ g3@7 ~@8 [g3,b3]@4 ~@4, [d4,g4]@3 [c#4,d4,g4]@2 ~, b3 [g3,b3] ~",
  BX: "[[e3,b3]@4 [e3,b3]@2 [e3,a3] ~@5 b3@4 ~@4 [g3,b3]@2 ~@2, ~@5 c#4@4 [c#4,d4,g4]@2 ~, ~@2 [d4,g4] ~, ~@4 [g3,b3] ~]/2", // E5 A5 G G5 G
  BY: "[~ [e3,b3]@7 ~@5 a3@2 ~@9 [g3,b3]@8 ~@8 [g3,b3]@4 e3 ~@3, ~@4 e3@2 e3 ~@5 [d4,g4]@6 ~@6, ~@9 b3@6 ~@5 c#4@16 [c#4,d4,g4]@8 ~@4, ~@4 [g3,b3] ~]/2", // E5 G G5 G
  BZ: "[[e3,b3]@8 [e3,b3]@4 [e3,a3]@2 ~@6 c#4 ~@3 b3@8 ~@8 [g3,b3]@4 ~ e3 ~@2, ~@23 [c#4,d4,g4]@12 c#4@9 ~@4, ~@23 g3@9 [g3,b3]@8 ~@8, ~@9 [d4,g4]@2 ~]/2", // E5 A5 G G5
  CA: "[e3,b3]@8 [e3,b3]@4 ~ a3 ~@6 c#4@2 ~@2, ~@6 e3 ~@5", // E5
  CB: "[~ b3@11 [e3,a3]@3 ~@10 g3@7 ~@8 g3@3 ~@5, e3@10 ~@10 c#4@15 c#4@7 ~@6, ~@24 [d4,g4]@12 [d4,g4]@7 ~@5, ~@24 b3@7 ~ [g3,b3]@8 ~@8]/2", // A5 G5 G
  CC: "[c#4,d4,g4]@6 [c#4,d4,g4]@2 [g3,b3] ~@3, [g3,b3] ~@2", // G
  CD: "[[e3,b3]@8 e3@4 [e3,a3]@4 ~@9 g3@8 ~@7 g3@3 ~@5, ~@8 b3@8 ~@4 c#4@16 [c#4,d4,g4]@7 ~@5, ~@2 [d4,g4] ~, ~@33 g3@7 ~@8]/2", // E5 A5 G G5
  CE: "[[e2,b2,b3,e4]@9 ~@7, e3 ~]/2", // E5
})).s("gm_acoustic_guitar_steel").gain(0.32).pan(0.2)

// chords · acoustic guitar steel · "Acoustic Guitar" · soft notes
const acoustic_guitar_steel_2 = note(`<
  A B C B D E F@2 G@2 H ~ I@2 J B K B L M ~ N O ~@12 P ~ H ~ Q B J B K B L M ~ N O ~@20 R S ~ T@2 U ~@2 U V ~ T W X Y Z
  ~@9 AA AB AC AD AE AB AF AB AG ~@2 AH AI AJ@2 ~@12 AK ~@3 AL ~@2 R S ~ T@2 U ~@2 U V ~ T W X Y Z ~ AM ~ AI AN@2 ~@2
>`.pickRestart({
  A: "~@8 [e3,b3]@6 ~@7 c#4@3", B: "~@20 e3 ~@3", C: "~@8 e3@4 ~@9 d4@3", D: "~@10 [b3,c#4,d4,g4] ~",
  E: "~@9 g3@7 ~@4 [d#3,e3] ~@3", F: "[~@8 b3@7 ~@6 c#4@23 e3 ~@3, ~@2 e3 ~@2 [g3,b3,d4] ~@6]/2",
  G: "[~@8 [e3,b3]@6 ~@5 c#4@23 ~@6]/2", H: "~@9 b3@6 ~@5 g3@4, ~@2 e3 ~@3",
  I: "[~@8 e3@4 ~@9 c#4@23 e3 ~@3, ~@10 g3 ~@13]/2", J: "~@8 [e3,b3]@6 ~@6 [g3,b3] ~@3", K: "~@8 e3@4 ~@8 [g3,b3] ~@3",
  L: "~@2 e3 ~@2 [g3,b3]", M: "~ g3 ~", N: "~@8 g3@7 ~@5 e3 ~@3", O: "~@2 b3@2 ~ g3", P: "~@2 [e3,b3] ~@3",
  Q: "~@4 e3@2 ~@4 g3 ~", R: "~@9 [e3,b3]@11 e3@2 ~@2", S: "~@5 [e3,b3]", T: "~@5 e3", U: "~@10 e3 ~", V: "~@5 b3",
  W: "~@5 [e3,g#3]", X: "~@21 g#3@2 ~", Y: "~@5 [e3,g#3,a#4]@3 [e3,g#3]@4 g#3@4 ~ g#3@4 g#3@3",
  Z: "~@5 [g#3,e4]@4 ~@15, ~ [e3,f#4] ~@4", AA: "~ g3@7 [g3,b3]@8 b3 ~@3 e3 ~@3", AB: "~@4 [e3,b3]@3 ~@5",
  AC: "~@8 b3@8 ~@5 e3 ~@2", AD: "~@2 e3 ~@3", AE: "~@8 [g3,b3]@8 b3@3 ~@5", AF: "~ g4!2 ~@3", AG: "~@4 b3@4 b3 ~@3",
  AH: "~@9 b3@7 ~@8, ~@8 e3@3 ~@13", AI: "~ [g3,b3] ~", AJ: "[~@2 e3 ~@2 c#4@4 ~@3]/2", AK: "~@21 e3 ~@2",
  AL: "~@20 f#3 ~@3", AM: "~@16 b3@3 ~ e3 ~@3", AN: "[~@20 b3@12 b3@8 b3@3 ~ e3 ~@3]/2",
})).s("gm_acoustic_guitar_steel").gain(0.16).pan(0.2)

// chords · acoustic guitar steel · "Acoustic Guitar"
const acoustic_guitar_steel_3 = note(`<
  A B C D E@2 F D G D H@2 C D C I J D C D K@2 L D M N O P Q O R S O S T U D C D C D C D V D C I C W@2 D N@2 O P Q O R S
  O S T C X C Y C Y C Z AA@6 AB@4 AC@6 AD X AE AF C AG C D C D C D C AH C D C D C AH L D K@2 N@2 O P Q O R S O S T C D C
  Y C AH C Z AA@6 AB@4 AC@6 AI B AE D C D AJ@2
>`.pickRestart({
  A: "b2@8 ~@4 [e3,a3]@3 ~@5 [f#2,b2,e3]@4, [e2,b3]@5 ~@3, e3 ~, ~@8 b2@7 ~@9", // A5 Esus2 E5
  B: "g2@4 ~@2 [d3,g3]@2 g2 ~@3, [d3,g3] ~, ~ g2 ~", // G5
  C: "b2@8 ~@4 [e3,a3]@4 b2 ~@3 [f#2,b2,e3]@4, [e2,b3]@17 ~@7, e3 ~, ~ b2 ~", // A5 Esus2 E5
  D: "g2@8 ~@8 g2@3 ~@5, [d3,g3]@12 [d3,g3]@7 ~@5, ~ g2 ~", // G5
  E: "[~@12 [e3,a3]@4 b2 ~@3 f#2@2 ~ g2@9 ~@4 [d3,g3]@4 g2@2 ~@6, b3 ~@2, e3@12 ~@11 [d3,g3]@13 ~@12, b2@8 ~@11 [b2,e3]@4 ~@25, ~ e2@16 ~@15 g2@8 ~@8]/2", // A5 G5 E5
  F: "b2@8 ~@4 [e3,a3]@4 b2 ~@3 [f#2,b2,e3]@3 ~, [e2,b3]@17 ~@7, e3 ~, ~ b2 ~", // A5 Esus2 E5
  G: "b2@8 ~@4 [e3,a3]@4 b2 ~@3 [b2,e3]@4, [e2,b3]@17 ~@7, e3 ~, ~ b2 ~", // A5 E5
  H: "[b2@8 ~@4 [e3,a3]@4 b2@2 ~ [f#2,e3]@2 ~@3 g2@8 ~@8 g2@3 ~@5, [e2,b3]@17 ~@15 g2@8 ~@8, e3@12 ~@11 g3@12 ~@13, ~@8 b2@7 ~@9 d3@12 [d3,g3]@7 ~@5]/2", // A5 F#7 E5 G5
  I: "g2@2 ~@2 g2 ~, [d3,g3]@3 [d3,g3]@2 ~, ~ g2 ~", // G5
  J: "b2@9 ~@3 [e3,a3]@4 b2@2 ~@2 [b2,e3]@4, [e2,b3]@9 ~ f#2 ~, e3 ~, ~@9 b2@7 ~@8", // A5 E5
  K: "[b2@8 ~@4 [e3,a3]@4 b2 ~@3 [f#2,b2]@4 g2@8 ~@8 g2@3 ~@5, [e2,b3]@17 ~@15 g2@8 ~@8, e3@6 ~@4 e3@11 ~@3, ~@8 b2@7 ~@9 [d3,g3]@12 [d3,g3]@7 ~@5]/2", // A5 B5 E5 G5
  L: "b2@4 ~@2 [e3,a3]@2 b2 ~ [f#2,b2,e3]@2, [e2,b3]@3 ~, e3 ~, ~ b2 ~", M: "~@2 a2 [a3,c#4,e4] a2 a3",
  N: "a2@2 ~@3 a3, [a3,c#4,e4] [c#4,e4], ~ a2!2, ~@3 a3@2 ~", O: "[a2,a3,c#4,e4]!3",
  P: "a2 ~ a3 a2@2 a2, [c#4,e4] ~, a3@2 ~ [a3,c#4,e4]@3, ~ a2@2 ~@3", Q: "a2@2 a2 a2@2 a2, [a3,c#4,e4]!2",
  R: "[a2,a3,c#4,e4] ~@3 a2@2, ~ a2 ~, ~ [a3,c#4,e4]", S: "a2 ~ a2, [a3,c#4,e4]!2, ~ a2 ~",
  T: "[a2,a3,c#4,e4]@2 ~@6 a2@3 ~, ~ a2 ~, ~@6 [a3,c#4,e4]@5 ~", U: "b2@4 b2@2 [b2,e3]@2 f#2 ~@3, [e2,e3,b3]@13 ~@11",
  V: "b2@4 ~@2 [e3,a3]@3 ~ [f#2,b2,e3]@2, [e2,b3]@3 ~, e3 ~, ~ b2 ~", // A5 Esus2 E5
  W: "[g2@4 ~@2 [d3,g3]@2 g2 ~@9 [e3,a3]@3 ~ [f#2,b2,e3]@2, [d3,g3]@12 ~@11 b2@9 b2@8 ~@8, ~@4 g2@4 ~@4 [e2,b3]@9 ~@3, ~@2 e3 ~]/2", // G5 A5 Esus2 G5 E5
  X: "g2@8 ~@4 [d3,g3]@4 g2@2 ~@2 e3 ~@3, [d3,g3] ~, ~ g2 ~", // G5
  Y: "g2@5 ~@11 g2@3 e3@2 ~@3, [d3,g3]@3 [d3,g3]@2 ~, ~ g2 ~", // G5
  Z: "g2@6 ~@10 g2@7 ~, [d3,g3]@12 [d3,g3]@11 ~, ~@7 g2@8 ~@9", // G5
  AA: "[~@16 [b2,e3]@8 ~@57 b3@7 ~@40 [b2,e3,e4]@8 [b2,e3,b3,e4]@8, e2@11 e2@12 ~ e2@24 e2@22 ~@3 e2@11 ~@5 e4@15 ~@9 [e3,b3,e4]@15 ~@16, ~@8 [b2,e3,b3]@8 b3@17 ~@4 b2@11 ~@12 b2@20 [b2,e3,e4]@8 b2@9 e2@11 e2@12 e2@23 ~, ~@41 [e3,b3,e4]@15 [e3,e4]@8 [e3,b3,e4]@16 ~@8 [e3,b3]@16 [b2,e3,b3,e4]@8 b2@16 ~@16]/6", // E5 E E5
  AB: "[~@32 e4@8 b2@8 ~@25 e2@10 ~@5 [b2,e3,b3,e4]@8, ~ e2@11 e2@11 ~ e2@11 ~@13 e2@12 e2@12 ~@11 e2@13, ~@8 [b2,e3,e4]@8 [b2,e3,b3,e4]@15 ~@9 [e3,b3,e4]@16 b2@8 ~ [b2,e3,b3,e4]@12 ~@19, ~@57 e4@8 ~@31]/4", // E5
  AC: "[~@9 e4@8 b2@8 ~@8 e3@8 ~@16 [b2,e4]@8 ~@51 e2@12 ~@4 e3@4 [e2,b2,e3,b3,e4]@4 ~@4, ~ e2@11 ~@5 [e3,b3,e4]@15 [b2,b3,e4]@8 ~ [b2,e3,b3,e4]@16 ~@8 [b2,e3,b3,e4]@16 [b2,e3,b3,e4]@8 [b3,e4]@16 ~@39, ~@25 e2@12 ~@11 e2@12 ~@13 e2@11 e2@12 e2@12 e2@8 ~@28, ~@89 [b2,e3]@10 ~@6 [b2,e3,e4]@8 [b2,e4]@8 ~@23]/6", // E5
  AD: "b2@8 ~@4 [e3,a3]@4 b2 ~@3 [f#2,b2,e3]@4, [e2,b3]@2 ~, e3 ~, ~@8 b2@7 ~@9", // A5 Esus2 E5
  AE: "b2@8 ~@4 [e3,a3]@5 b2 ~@3 [f#2,b2]@3, [e2,b3]@17 ~@7, e3@3 ~@2 e3, ~ b2 ~", // A5 B5 E5
  AF: "g2@7 ~@9 g2@3 e3 ~@4, [d3,g3]@12 [d3,g3]@7 ~@5, ~@7 g2@8 ~@9", // G5
  AG: "g2@8 ~@8 g2@3 e3 ~@4, [d3,g3]@12 [d3,g3]@7 ~@5, ~ g2 ~", AH: "g2@5 ~@11 g2@4 ~@4, [d3,g3]@3 [d3,g3]@2 ~, ~ g2 ~",
  AI: "b2@2 ~ [e3,a3] ~ [f#2,b2,e3], [e2,b3]@2 ~, e3 ~, ~@8 b2@7 ~@9", AJ: "[~ e4@28 ~@19, [e2,b2,e3,b3]@5 ~@3]/2",
})).s("gm_acoustic_guitar_steel").gain(0.3).pan(0.9)

// chords · acoustic guitar steel · "Acoustic Guitar" · soft notes
const acoustic_guitar_steel_4 = note(`<
  A B ~ B C B ~ B D B E ~@2 B ~ F ~ B ~ B ~ B ~@13 G B ~ B ~ B ~ B H B ~ B ~ B H ~@21 I J K ~ L@2 M N O P K Q ~ R S ~@7
  B ~ B ~ B ~ B ~ B ~ B ~ T ~ B ~@14 B ~@3 B ~@3 I J K ~ L@2 M N O P K Q ~ R S H B ~ T ~ T ~@2
>`.pickRestart({
  A: "~@16 b2 ~@3 c#3 ~@3", B: "~@20 e3 ~@3", C: "~ b2 ~", D: "~@10 f#2 ~", E: "~@19 b2@2 ~@3", F: "~@19 e3@2 ~@3",
  G: "~@10 b2 ~", H: "~@16 b2 ~@7", I: "~@9 [b3,e4]@8 ~@7, ~ e3 ~, ~@8 b2@5 ~@11", J: "~ b3 ~, ~@2 b2 ~@3",
  K: "~@12 e2@11 ~", L: "~ b3 ~", M: "~@11 e2@12 ~, ~ [b2,e3,b3] ~", N: "~@9 [e3,b3]@8 ~@7", O: "~ [b2,e3,b3,e4] ~",
  P: "~@12 e2@11 ~, ~@8 [b2,b3]@9 ~@7, ~@9 e3@8 ~@7", Q: "~@13 e2@11, ~@9 [e3,b3]@8 ~@7", R: "~@9 b3@8 [e3,b3]@7",
  S: "~ [e3,b3,e4]@3 ~ [b3,e4]@3 ~ [b3,e4]@3 [e2,b2,b3,e4]@4 ~@4 [e2,b2,e3,b3,e4]@3 ~, b2 [b2,e3] [e2,b2,e3] ~@3", // E5
  T: "~@19 e3 ~@4",
})).s("gm_acoustic_guitar_steel").gain(0.15).pan(0.9)

// chords · acoustic guitar steel · "Acoustic Guitar"
const acoustic_guitar_steel_5 = note(`<
  ~@24 A B@2 C@2 D E F G@3 ~@16 A B@2 C@2 D E F G@3 ~@48 A H@2 C@2 D E F I@3 ~@32
>`.pickRestart({
  A: "~ c#4@11 ~@4 a2@8, [a3,e4] [a3,c#4,e4], ~ a2@7 ~@16", // A5 A
  B: "[[a3,c#4,e4]@12 [a3,c#4,e4]@11 ~ [a3,c#4]@8 ~ [c#4,e4]@7 ~ c#4@7, a2@7 ~@16 [a2,e4]@9 [a2,a3]@8 [a2,a3,e4]@8]/2", // A C#m A5 A A5
  C: "[a2@4 ~@12 a2@7 ~ c#4@12 ~@4 a2@8, [a3,c#4,e4] [a3,c#4] ~ [a3,c#4,e4], ~@8 a2@8 ~@7 a2@8 ~@17, ~@13 e4@10 [a3,e4]@13 ~@12]/2", // A A5
  D: "[a3,c#4,e4]@8 ~ c#4@7 [a2,a3,c#4,e4]@8, a2@3 ~@5 [a2,a3,e4]@8 ~@8", // A A5
  E: "[a3,c#4,e4]@3 ~ a2@2, a2 ~@2 [a3,c#4]@3, ~@13 e4@11", F: "[a3,c#4,e4]@3 ~ a2@2, a2@2 ~ [a3,c#4]@3, ~@13 e4@11",
  G: "[~ [a2,e4]@7 ~ c#4@7 ~ e4@6 ~@17 a2@7 ~@17 a2@6 ~@2, [a3,c#4]@8 [a2,a3,e4]@8 [a2,a3,c#4]@7 a2@8 ~ a2@8 ~@7 a2@9 a2@8 ~@8, ~@12 [a3,c#4,e4]@6 [a3,c#4,e4]@6 [a3,c#4,e4]@6 [c#4,e4]@5 ~, ~@61 a3@10 ~]/3", // A5 A A5 A C#m
  H: "[[a3,c#4,e4]@12 [a3,c#4,e4]@11 ~ [a3,c#4]@8 ~ [c#4,e4]@7 ~ c#4@7, a2@3 ~@20 [a2,e4]@9 [a2,a3]@8 [a2,a3,e4]@8]/2", // A C#m A5 A A5
  I: "[~ [a2,e4]@7 [a2,a3,c#4,e4]@8 [a2,a3,c#4,e4]@7 ~@17 a2@7 ~@17 a2@6 ~@2, [a3,c#4]@8 ~@15 [c#4,e4]@12 ~@25 [c#4,e4]@10 ~@2, ~@23 a2@8 ~ a2@8 ~@7 a2@9 a2@8 ~@8, ~@24 a3@12 [a3,c#4,e4]@12 [a3,c#4,e4]@12 ~ a3@10 ~]/3", // A5 A C#m A
})).s("gm_acoustic_guitar_steel").gain(0.42).pan(0.2)

// chords · acoustic guitar steel · "Acoustic Guitar" · soft notes
const acoustic_guitar_steel_6 = note(`<
  ~@24 A B ~@2 A ~ A@2 ~@19 A B ~@2 A ~ A@2 ~@51 A B ~@2 A ~ A@2 ~@35
>`.pickRestart({
  A: "~ a2 ~", B: "~@8 a2@8 a2@7 ~",
})).s("gm_acoustic_guitar_steel").gain(0.24).pan(0.2)

// bass · fretless bass · "Bass"
const bass = note(`<
  ~@24 A@2 ~ A@2 ~ B ~ C@2 ~@17 D E F G E H I J H D K ~@8 L@2 M@2 N@2 O@8 P@2 ~@24 Q R H D R H S@5 ~@8 L@2 M@2 N@2 O@8
  P@2 ~@6 T ~
>`.pickRestart({
  A: "[a2@8 ~@5 a2@14 ~@21]/2", B: "~ a2@9 ~@3 a2@11", C: "[~@23 a2@9 ~@5 a2@10 ~]/2", D: "a1@2 ~ a2@3", E: "a1",
  F: "~@8 a1@5 ~@3 a1@8", G: "~ a1@8 ~@4 a2@11", H: "~@2 a1 ~ a1 ~", I: "a1@8 ~@5 a2@11", J: "a1@5 ~@3", K: "a1@3 ~@5",
  L: "[~ e1@11 ~@12 e1@24, ~ e2@3]/2", M: "[~ e1, e1@5 ~@7, ~@13 e2@35]/2", N: "[~ e1, ~ e1@19 ~@28, ~ e2@3]/2",
  O: "[~@24 e1@24 ~@20 e1@2 ~@2 e1@23 ~@22 e1@3 e1@24 ~@21 e1@2 ~ e1@24, e1@20 ~@28 e1@20 ~@27 e1@21 ~@28 e1@21 ~@27, ~@13 e2@48 e2@48 e2@48 e2@35]/8",
  P: "[~@25 e1@23, e1@7 ~@9, ~@6 e2@17 ~]/2", Q: "a1@11 ~@2 a2@11", R: "a1@7 ~",
  S: "[a1@11 ~@13 a1@27 ~@5 a1@4 ~@4 a1@4 ~@3 a1@9 ~@16 a1@21 ~@3, ~@13 a2@66 ~@5 a2@35 ~]/5", T: "e2",
})).s("gm_fretless_bass").gain(0.56)

// bass · fretless bass · "Bass" · soft notes
const bass_soft = note("<~@70 A ~ B ~ A ~ B ~@7 A ~@27 C ~@16 A ~ B ~ A ~ B ~@7 A ~@9>".pickRestart({
  A: "~@5 e1", B: "~@20 e1@3 ~", C: "a1 ~@3",
})).s("gm_fretless_bass").gain(0.24)

// chords · string ensemble 2 · "String"
const string_ensemble_2 = note("<~@50 A@8 ~@52 B@8 ~@35>".pickRestart({
  A: "[~@23 [e4,a4,c#5]@169]/8", B: "[e4,a4,c#5]/8",
})).s("gm_string_ensemble_2").gain(0.24).pan(1)

// chords · string ensemble 2 · "String"
const string_ensemble_2_2 = note("<~@50 A@8 ~@52 B@8 ~@35>".pickRestart({
  A: "[~@23 [e5,a5,c#6]@169]/8", B: "[e5,a5,c#6]/8",
})).s("gm_string_ensemble_2").gain(0.24).pan(0)

// … 65 more lines

More by Stone Temple Pilots