Strudelify

Who Am I (What's My Name)

Snoop Dogg

KeyB minorTempo190 bpm
0:00/0:00
// Who Am I (What's My Name) — Snoop Dogg
// 190 bpm, 4/4, key B minor. 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 241 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(190/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 · lead 2 sawtooth
const bass = note(`<
  A@2 B C D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F
  G D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F G D ~@3 D E F G D E F G D E F G D E F G ~@3 H
  ~@3 H D E F G D E F I D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F G D E F G
  D E F G D E F G D E F G D E F G ~@45
>`.pickRestart({
  A: "[f#1@3 ~@4 f#1@4 ~@3 f#1@4 ~@2 f#1@4 ~@2 f#1@4 ~@2]/2", B: "f#1@4 ~@2 f#1@4 ~@2 f#1@3 ~",
  C: "~ f#1 ~@2 c#2@2 c2@2", D: "b1@10 ~@3 b1 ~@2", E: "a1@3 ~ a1@2 b1 ~", F: "~@4 g1@7 ~ g1@3 ~",
  G: "f#1@8 f#1@3 ~ a1@4", H: "~@8 f#1@3 ~ a1@4", I: "f#1@2 ~ f#1 g1@3 a1@4 ~ a#1@4",
})).s("gm_lead_2_sawtooth").gain(0.46)

// other · shanai
const shanai = note("<~@4 A B C D E F G@2 H B I J K L M N O ~@127 P Q M R S T U V ~@85>".pickRestart({
  A: "~@4 d5@4 c#5@3 ~ b4@4", B: "c#5@4 d5@4 c#5 d5 c#5 ~ b4@4", C: "d5 c#5 a4 c#5, c#5 ~@15",
  D: "g4@4 c#5@3 f#4@4 c#5@2 ~@3, ~@11 c5 ~@4", E: "~@3 c#5 d5@3 c#5@4 ~ b4@4",
  F: "c#5@3 d5@4 ~ c#5 d5 ~ b4@4 c#5, ~@5 c#5 ~@2", G: "[d5@3 c#5@4 a4@4 c#5@4 g4@4 ~@5 f#4@3 c#5@2 ~@3]/2",
  H: "~ d5 c#5 b4, ~@4 c#5 ~@11", I: "d5 c#5 a4 ~, c#5 ~@15", J: "g4@4 ~@3 f#4@4 a#4@4 ~",
  K: "b4 ~@3 [b4,c#5] ~@3 c#5@4 b4@4, ~@4 d5@3 ~@9", L: "c#5@4 d5@4 c#5 d5 c#5@2 b4@4", M: "c#5 d5@3 c#5@4 a4@4 c#5@4",
  N: "g4@4 ~@3 f#4@4 ~ a#4@4", O: "b4 ~@15", P: "~@4 c#5 d5@3 c#5@3 ~ b4@4",
  Q: "c#5@4 d5@4 c#5@2 ~ d5 b4@3 ~, ~@12 c#5 ~@3", R: "g4@4 c#5@4 ~@2 c#5@2 d5@3 c#5",
  S: "b4@2 ~@2 d5@3 ~ c#5@4 b4@4, ~@4 c#5 ~@11", T: "c#5@4 d5@4 c#5 d5 c#5 ~ b4@3 c#5", U: "d5@3 ~ c#5@4 a4@4 ~@4",
  V: "g4@3 ~ c#5@4 f#4@4 c#5 ~@3",
})).s("gm_shanai").gain(0.48).pan(0)

// other · shanai · soft notes
const shanai_soft = note("<~@11 A ~@2 B A ~@3 C ~@131 D ~@2 B ~@86>".pickRestart({
  A: "~@3 c#5@4 ~@9", B: "~@3 c#5", C: "~ c#5 ~@2", D: "~@8 f#4@3 ~@5",
})).s("gm_shanai").gain(0.29).pan(0)

// other · synth strings 1
const synth_strings_1 = note(`<
  A@4 B@3 C D E@3 F@3 G@2 H@3 I ~@15 J K L M N@3 O P Q R S T@3 U V@3 W X@3 Y Z AA AB AC@2 AD@2 AE ~@16 AF@2 AG AH AI AJ
  AK AL AM K AG AN AO@2 AP AQ AR@4 AS@2 AT@2 AU@4 ~ AV AW@2 AX ~@23 AY K L AZ AY K L AZ B@3 BA@7 BB@6 BC BD@6 BE BF@2
  BG@5 BH@2 BI@3 BJ@4 BK@3 BL@4 BM BN ~@44
>`.pickRestart({
  A: "[f#5,f#6]/4", B: "b5/3", C: "d6 c#6", D: "b5", E: "[f#5@5 a#5, ~@40 a5 ~@7]/3",
  F: "[b5@13 [e6,f6] f#6@14 e6@15 ~ d6@4]/3", G: "[c#6@6 d6 ~ c#6@2 ~@2 f#5@20, ~@11 a5@2 ~@19]/2",
  H: "[e5@8 a5@4 f#5@16 g5@11 ~ a#5@8]/3", I: "b5 ~@7", J: "~ f#5@7 d5@8", K: "a5", L: "~ a5",
  M: "a#4@5 ~@3 [d5,d6]@7 ~, ~@8 [c6,c#6] ~@7", // D C#maj7
  N: "[[b4,b5]@8 f#4@4 ~ e5@12 [f#4,f#5]@3 [e4,e5]@20, ~@12 e4@13 ~@23]/3", O: "[a#4,a#5] [d5,d6]",
  P: "~@2 f#4@3 ~ d5@2, ~@3 f#5@9 d4@2 ~@2", Q: "a5, a4@7 ~", R: "[e4,f4,f5] [f#4,f#5]@7 [a4,a5]@7 ~",
  S: "a#5@6 c5 [c5,c#5,c#6] [d5,d6]@8, a#4@5 ~@11", // C#maj7 D
  T: "[[c#5,c#6]@2 ~ c#6@9 [a4,a5]@3 f#4@12 ~ [a4,a5]@2 e5@13 ~ d4@4, ~@2 [d5,d6]@2 ~@11 f#5@2 ~@31]/3", // C# A D
  U: "a#3@4 [d4,d5]@4 e5@3 [f#4,f#5]@5", V: "[b5@47 ~]/3", W: "d6@7 ~ c#6@8", X: "[b5@28 d6@3 e6@17]/3",
  Y: "d6@7 ~ a#5@8", Z: "~@8 b4 ~@3 c#5 ~@2 c#5", AA: "d5@5 c#5 ~@10", AB: "b4 c#5",
  AC: "[d5@4 ~@4 f5 g5@5 ~ f#5@10 e5@7]/2", AD: "[d5@4 ~@3 a4@3 g4@4 f#4@2]/2", AE: "e4@6 f#4 ~@9",
  AF: "[~ f#5@7 ~@7 a5@17]/2", AG: "f#5 a5", AH: "a#5 d6, ~@8 c#6 ~@7", AI: "b5 f#5", AJ: "~@2 a5 f#5", AK: "g5@3 a5",
  AL: "f#5@7 a#5@8 ~", AM: "~@8 d5@7 ~", AN: "a#5@8 c#6 d6@7",
  AO: "[~ c#6@2 d6 c#6@8 ~@4 a#5@13 ~@3, ~@13 a5@12 ~@7]/2", AP: "a5@7 g5@9", AQ: "~ c6",
  AR: "[b5@21 ~@7 d6@25 ~@3 a#5@8]/4", AS: "[b5@6 a5 d6]/2", AT: "[g5@20 ~ f#5@4 a#5@3 d6@4]/2", AU: "[b5@49 ~@15]/4",
  AV: "~@4 a5@3 ~", AW: "[~@15 a#5@8 d6@8 ~]/2", AX: "b5@3 ~@5", AY: "~ f#5@8 d5@7", AZ: "a#5 d6",
  BA: "[d6@8 c#6@4 e6@3 ~@21 a5@3 f#5 e5@4 f#5@2 ~ e5@20 a#4 d5@4 e5@4 f#5@3 b4@21 c#5@5 d5@4 f#5@3, ~@15 b5@23 ~@74]/7",
  BB: "[e5@12 ~ a5@11 g5@4 f#5@16 c#6@8 a5@8 b5@20 a#5@8 d6@4 c#6@4, ~@13 g5 ~@82]/6", BC: "b5@2 ~@7 b5@7",
  BD: "[a5@8 ~@4 e5@24 f#5@4 e5@4 d5@3 c#5@13 a5@8 f#5@8 [a5,a#5] b5@2 g5@13 a5@4, ~@36 f5 ~@59]/6", BE: "~ a#5 d6 e6",
  BF: "[b5@31 [c#6,d6]]/2", BG: "[c#6@12 b5@7 ~ a#5@8 g5@3 f#5@7 ~@8 f#5@6 d5@3 ~@5 d5@3 b4@14 ~@3]/5",
  BH: "[f#4@4 f#5@4 d5@4 ~@3 b4@14 ~@3]/2", BI: "[~ d5@6 ~ f5 f#5@3 e5@16 [c6,c#6] d6@7 a#5@3 ~@5 f#6@4]/3",
  BJ: "[d6@25 c#6@2 ~ c#6@16 a5@8 g5@4 f#5@4 ~@4, ~@27 d6@2 ~@35]/4",
  BK: "[f#5@12 d5@2 b4@5 c#5 d5@3 e5@5 d5@3 b4@17]/3",
  BL: "[~@8 e5@3 ~ e5@3 ~ f#5@3 d5@8 ~ d5@2 e5@7 ~@7 d5@2 ~ b4@6 a4@7 g4@4, ~@7 c#5@2 ~@2 g5@2 ~@2 f5@2 ~@47]/4",
  BM: "f#4@7 d5@5 f#5@4", BN: "b4@5 ~@3",
})).s("gm_synth_strings_1").gain(0.39).pan(0.6)

// other · synth strings 1 · soft notes
const synth_strings_1_soft = note(`<
  ~@38 A B C ~@3 D ~ E F G H I J K ~@10 L ~ M ~@18 N ~@4 O ~@2 P ~@6 Q ~ R ~ S ~@7 T U@3 ~@27 P ~@3 V ~@18 W ~@5 X ~@4 Y
  Z AA AB AC ~@2 W ~@3 AD ~@2 AE@2 ~ AF ~@47
>`.pickRestart({
  A: "f#5@9 ~@7", B: "a#5@7 c5 ~@8", C: "~@8 f#5@5 ~@3", D: "~ d6@2 ~@13", E: "e5 ~@15", F: "~@7 c6 ~@8",
  G: "~@4 c#5@9 ~@3", H: "~@3 f#5@8 [g4,g5,g#5] ~@3 d#4", I: "e4@3 d5", J: "a#4 ~ e4 ~", K: "b4 ~@15", L: "~@9 f#5 ~@6",
  M: "~@4 b4@3 ~", N: "~@8 d5@7 ~", O: "e5@9 ~@7", P: "f#5 ~", Q: "a#5 ~", R: "~@5 c#6@8 ~@3", S: "~@4 e6@5 ~@7",
  T: "~ d6@7 e6@8", U: "[b5@25 ~@5 g5@18]/3", V: "~ f#5@8 ~@7", W: "~@2 f#5 ~", X: "f#5 ~@3",
  Y: "~@5 e5@2 f#5@5 e5@2 ~@2", Z: "~@7 c#5@6 ~@3", AA: "~@3 g4", AB: "~@12 a#4@3 ~", AC: "~@3 c#5", AD: "~@3 e5",
  AE: "[~@15 a#4@8 ~@9]/2", AF: "~@5 b4@8 ~@3",
})).s("gm_synth_strings_1").gain(0.22).pan(0.6)

// chords · electric guitar jazz
const electric_guitar_jazz = note(`<
  A B C D E@2 F G@8 H@3 I J K L M N O P@2 Q@2 R S@3 T@2 U@2 V W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL@3 AM@2 AN@2 AO
  AP AQ AR AS ~ AT@2 ~@8 AU AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ@2 BK BL BM@2 BN BO BP BQ BR BS BT BU BV BW BX
  BY BZ CA CB CC CD@3 CE ~@7 CF CG CH@2 CI CJ CK CL CM CN CO CP CQ CR CS@2 CT CU CV CW CX CY CZ ~ DA DB DC DD@2 DE DF DG
  DH DI DJ DK DL DM@3 DN DO DP DQ@2 DR@2 DS DT DU DV DW DX DY DZ EA@2 EB EC ED@2 EE EF EG EH EI EJ EK@2 EL EM EN EO@2
  EP@2 EQ@4 ER ES ET EU EV EW@2 EX EY EZ FA FB@2 FC@2 FD@2 FE FF FG FH FI FJ FK FL FM@4 FN FO FP FQ FR FS@2 ~
>`.pickRestart({
  A: "[e3,c4,e4,f#4,a#4] f#2 ~ [c4,e4,f#4,a#4]@3 [f#2,e3,c4,e4,f#4,a#4] ~ [f#2,e3,c4,e4,f#4,a#4]@2 ~@2 [f#2,e3,c4,e4,f#4,a#4] ~ [f#2,e3,c4,e4,f#4,a#4]@2, ~@2 [f#2,e3]@3 ~@11", // C7 F#7
  B: "~@2 [f#2,e3,c4,e4,f#4,a#4] ~ [f#2,e3,c4,e4,f#4,a#4]@3 ~ [f#2,e3,c4,e4,f#4,a#4] ~ [f#2,e3,c4,e4,f#4,a#4]@3 ~ [f#2,e3,c4,e4,f#4,a#4] ~", // F#7
  C: "[f#2,e3,c4,e4,f#4,a#4]@3 ~ [f#2,e3,c4,e4,f#4,a#4] ~ [f#2,e3,c4,e4,f#4,a#4]@2 ~@2 [f#2,e3,c4,e4,f#4,a#4] ~ [f#2,e3,c4,e4,f#4,a#4]@3 ~", // F#7
  D: "[e3,c4,e4,f#4,a#4] f#2 ~ [f#2,e3,c4,e4,f#4,a#4]@2 ~@2 [f#2,e3,c4,e4,f#4,a#4] c#4 [f#2,e3,e4,f#4,a#4] ~ [f#2,e3,c4,e4,f#4,a#4]@2 ~@2 [f#2,e3,c4,e4,f#4,a#4]", // C7 F#7
  E: "[f#4 [f#2,d3,e3,f#4,a4]@23 ~ a4@7, [b3,c4,d4,e4,a#4]@3 [e3,a3,e4]]/2", F: "[d3,g3,b3,d4,g4]",
  G: "[~ e4@7 ~ [g3,a#3]@6 ~ b3@11 ~ b3@12 ~ [c#4,e4,f#4]@3 ~@24 [g3,a#3,d4]@8 [d3,g3,a#3,d4]@3 ~@21 e3@3 ~ [c#3,e3,a3,b3,c#4,e4]@12 [b2,d3,e3,g3,b3,d4,g4]@12, [d3,e3]@15 b2@25 a2@8 ~@16 a#2@16 [d3,f#3,b3,d4]@23 ~@25, [a#3,d4,g4]@8 [d4,e4,g4]@7 ~ [c#4,d4,f#4]@14 ~@11 e3@15 ~@4 a3@8 e4@12 ~@12 b4@11 ~@25, ~ a#2@15 [d3,f#3]@24 c#3@6 ~@18 [d3,e3]@7 ~@8 b2@24 ~@25, ~@41 a3@5 ~@2 [f#3,g3,b3,d4,f#4]@19 ~@29 a4@20 ~@12]/8", // Gm F#7 Gm A Em7 Dsus2 Bm Gm …
  H: "[[d3,e3,a#3,d4,e4,a4]@8 [d3,e3,a#3,d4,e4,a4]@6 ~@2 d4@8 ~@3 b3@3 ~@6 [a3,c#4,f#4]@8 [a3,c#4,f#4]@4, a#2@14 b2@17 ~@5 [a2,c#3,e3]@12, ~@8 [d3,f#3]@11 ~@5, ~@8 f#4@7 ~@9, ~@16 b3@8 c#4 d4@6 ~@17]/3", // Dsus2 F#m A D
  I: "~ [g3,d4], [g2,b2,d3,b3], g3 ~, ~ e4@15", J: "[d3,e3,g3,a#3,d4]!2, e4",
  K: "[d4,f#4,b4,d5,f#5] ~@3 [f#4,d5,f#5] ~@3 [f#4,b4,d5,f#5] ~@3 [d4,d5,f#5] ~@3", // Bm D Bm D
  L: "[b3,a4,b4,d5,f#5] ~@3 [b3,a4,d5,f#5] ~@3 [a4,f#5] ~@3 [a4,f#5] ~@3", // Bm7 D
  M: "[g4,b4,d5,g5] ~@3 [b3,g4,d5,g5] ~@3 [g4,g5] ~@3 [g4,g5] ~@2 a#3", // G
  N: "[g4,a#4,d5,e5,g5] ~@3 [g4,a#4,d5,g5] ~@3 [g4,a#4,d5,g5] ~@2 g4 a#4 ~@2 [f#4,c#5,f#5], ~@7 a3", // Em7b5 Gm F#5
  O: "a4 ~@2 f#4 [a4,c#5,f#5] ~@3 [f#4,a4,c#5,f#5] ~@3 [f#4,a4,f#5] ~@3", // F#m
  P: "[[f#4,a4,c#5,f#5] ~@3 [f#4,a4] ~@3 [f#4,b4,c#5,f#5] ~@3 [f#4,c#5,f#5] ~@3 [f#4,g4,b4,d5,f#5]@2 ~@2 [g4,f#5] ~@3 [g4,f#5]@2 ~@2 [f#4,f#5] ~@3, ~@15 b3@2 ~@15]/2", // F#m F#sus4 F#5 Gmaj7 F#
  Q: "[[e4,g4,a#4,e5]@2 ~@2 [e4,g4,a#4,e5]@2 ~@2 [e4,g4,a#4,e5] ~@3 [f#4,a#4,d5] ~@3 [d4,f#4,b4,c#5,d5] ~@3 [d4,f#4,d5] ~@3 [d4,f#4,b4,d5] ~@3 d5 ~@3, ~@15 b3@2 ~@15]/2", // Edim F#aug Bm D Bm
  R: "[a4,d5] ~@3 [a4,a5] ~@3 [f#4,b4,d5,f#5] ~@3 [f#4,b4,d5,f#5] ~ b3@2", // D5 A Bm
  S: "[[e4,g4,b4,d5,g5] ~@3 [g4,b4,d5,g5] ~@3 g5 ~@7 [a#4,d5,e5,a5] ~@2 [a#4,a5] d5 ~@2 a#3 [e4,a#4,d5,e5,a5] ~@2 [d4,a#4,a5] d5 ~@3 [b4,d5]@2 ~ [f#4,b4,d5,f#5] ~@3 [f#4,d5,f#5] ~@3 [f#4,d5,f#5] ~@4, ~@15 a#3@2 ~@14 [d4,f#4,f#5]@2 ~@15]/3", // Em7 G A#maj7 Dsus2 A#maj7 Bm D
  T: "[[a4,d#5,g5,a5,d6] ~@3 [c4,a4,d#5] ~@3 [c4,a4,d#5,d6] ~@3 [c4,a4,d#5,d6] ~@3 [g4,e5,g5,b5,d6] ~@3 [b3,g4] ~@3 [g4,d5,e5,b5] g5 ~@2 g4 ~@3, ~@15 b3@2 ~@15]/2", // Dsus4 Adim Em7 Em Em7
  U: "[a#3 [g4,a#4,d5,e5,a5] ~@2 g4 ~@3 [a#3,d5,a5] [g4,a#4,e5] ~@2 [a#3,g4,a#4,f5,a5] [b4,d5] ~@2 d4 [d5,f#5]@2 ~ f#4 ~@3 [f#4,d5] ~@3 [f#4,d5,f#5] ~@3, ~@15 b3@2 ~@15, ~@16 [f#4,b4]@3 ~@13]/2", // Em7b5 A#maj7 Edim A#maj7 Bm D B5
  V: "[f#4,a4,d5,f#5] ~@3 [b3,f#4,a4,f#5] d5 ~@2 [a4,f#5] ~@3 [f#4,a4,f#5] ~@3", // D B7 D F#m
  W: "[e4,g4,b4,e5] ~@3 [e4,g4,b4,e5] ~@3 [e4,g4,b4,e5] ~@3 [e4,g4] ~@3", // Em
  X: "~ [e4,g4,a#4,e5] ~@2 [e4,g4,a#4,e5] ~@3 [e4,g4]@2 a#4@2 d5@2 f#5@2, ~@12 e4 ~@3", // Edim Em
  Y: "[d4,f#4,b4] ~@3 [d4,f#4] ~@3 [f#4,b4,d5,f#5] ~@3 [f#4,b4,d5,f#5] ~@3", // Bm D Bm
  Z: "[f#4,d5,a5] ~@3 [f#4,b4,d5,a5] ~@3 [b4,a5] ~@3 [b4,a5] ~@3", // D Bm7 B7
  AA: "[b3,g4,b4,d5,a5] ~@3 [g4,b4,d5,g5] ~@3 [g4,b4,d5,g5] ~@3 [g4,b4,f#5] ~@3", // G Gmaj7
  AB: "[a#3,a#4,d5] ~@3 [g4,a#4,f#5] ~@3 [g4,a#4,e5] ~@3 [g4,f#5] ~@3", // A# Gm Edim Gmaj7
  AC: "b4 ~@3 [f#4,b4] ~@3 [f#4,b4,a#5,b5] ~@3 [f#4,b4,b5] ~@3", // B5 Bmaj7 B5
  AD: "[f#4,b4,a5] ~@3 [f#4,b4] ~@3 [b4,f#5]@2 ~@2 [f#4,b4,f#5] ~@3", // B7 B5
  AE: "[b3,g4,b4,e5,g5] ~@3 [g4,b4,g5] ~@3 [b3,g4,b4,e5,g5] ~@3 [g4,b4,e5,g5] ~@3", // Em G Em
  AF: "[g4,a#4,d5,g5] ~@3 [g4,a#4,d5,g5] ~@3 [g4,a#4,d5,g5] ~@3 [g4,a#4,d5,g5] a#3 ~@2", // Gm
  AG: "[b3,d4,b4,d5,f#5] ~@3 [f#4,b4,d5,f#5] ~@3 [f#4,b4,d5,f#5] ~@3 [f#4,b4,d5,f#5] ~@3", // Bm
  AH: "[f#4,d5,f#5] ~@3 [d5,f#5] ~@3 [f#4,a4] ~@3 [f#4,a4,f#5] ~@3", // D F#m
  AI: "[f#4,g4,b4,d5,f#5] ~@3 [f#4,g4,d5,f#5] ~@3 [f#4,g4,b4,d5,f#5] ~@3 [f#4,g4,b4,d5,f#5] ~@3", // Gmaj7
  AJ: "[e4,g4,a#4,f#5]@2 ~@2 [e4,g4,a#4,f#5] ~@3 [e4,g4,a#4,e5] ~@3 [e4,g4,a#4,e5] ~@3", // Edim
  AK: "[b3,c#4,d4,f#4,a4,b4,d5] ~@3 [b3,f#4] ~@3 [c#4,d4,f#4,b4] ~@3 [b3,d4,f#4] ~@3", // Bm7 B5 Bm
  AL: "[[b3,f#4,a4] ~@3 [b3,f#4] ~@3 [a3,d4] ~@3 [a3,d4,f#4] ~@3 [g3,b3,c4,d4,g4,b4]@2 ~@2 [g3,b3,d4,g4,b4] ~@3 [d4,g4] b3 ~@2 [g3,b3,d4,g4,b4] ~@3 [g3,d4,g4,a#4] ~@3 [g3,a#3,d4,g4,a#4] ~@3 [e3,g3,a#3,d4,a#4] ~@3 [e3,g3,c#4,e4,g4] ~@3, ~@15 e3@2 ~@14 e3@2 ~@15]/3", // B7 B5 D5 D G G5 G Gm …
  AM: "[[a#3,b3,d4,f#4] a4 ~@2 b3 ~@3 [b3,f#4] ~@3 b3@2 ~@2 [a3,c#4,e4,f#4,a4,c#5] ~@3 a3 ~@3 [a3,c#4] ~@3 [a3,c#4,e4] ~@2 e3, ~@15 f#3@2 ~@15]/2", // Bm B5 F#m7 A
  AN: "[[g3,d4,f#4,d5,f#5] ~@3 [d4,d5] ~@3 [d4,d5] ~@3 [d4,f#4] ~@3 [g3,a#3,c#4,f#4,a#4,d5] ~@3 [g3,a#3,c#4,f#4] ~@3 [g3,a#3,c#4,e4,g4,a#4,d5] ~@2 [e3,e4] [g3,a#3,c#4,g4] ~@2 b3, ~@15 e3@2 ~@6 e3@2 ~@7]/2", // Gmaj7 D Gm F# Em7b5 E Gdim
  AO: "[d4,f#4,a4,c#5] ~@7 b4 ~@3 c#5 ~@3", AP: "d5@6 c#5 ~@9, c#5 ~@15", AQ: "[e4,b4] [f#4,c#5], g4@5 ~@3 a4@5 ~@3",
  AR: "g4@7 ~@2 a5@7, d5@3 ~@5 [a4,d5,e5]@7 ~", AS: "[f#4,c#5,d5,f#5]@3 ~",
  AT: "[~ [a4,f#5]@6 [b4,e5]@5 g4@5 ~@2 [a#3,d4,f#4]@11 ~@2, f#4@12 ~@7 a#4@6 ~@7, ~ b4@4 ~@2 g4@4 ~ d5@18 ~@2]/2", // D E5 A#aug
  AU: "[f#3,b3,d4,f#4] ~@3 [f#3,b3,d4,f#4] ~@3 [f#3,d4,f#4] ~@3 [d4,f#4] ~@3", // Bm D
  AV: "[b3,d4,f#4] a3 ~@2 [d4,f#4] a3 ~@2 [a3,d#4,g4,a4,c5] g3 ~@2 [g3,a3,d#4,g4,a4,c5] ~@3", // Bm D Am7b5
  AW: "[e3,g3,b3,e4,g4,b4,d5] ~@3 [g3,b3,e4,g4,b4,d5] ~@3 [g3,b3,e4,d5] g4 ~@2 [b3,e4,g4,d5] ~@3", // Em7
  AX: "[a#3,d4,g4,a#4,d5]@2 ~@2 [g3,a#3,d4,a#4,d5] ~@3 [e3,g3,a#3,c#4,g4] ~@3 [e3,c#4,g4,a#4] ~@3", // Gm Edim
  AY: "[c#4,d4,f#4,a4,c#5] ~@3 [c#4,d4,f#4,c#5] ~@3 [c#4,d4,f#4,c#5] ~@3 [c#4,d4,f#4] ~@3", // Dmaj7
  AZ: "[b3,d4,f#4,b4] ~@3 [b3,d4,f#4,b4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,a4] ~@3", // Bm D D5
  BA: "[g3,b3,e4,b4,d5] g4 ~@2 [g3,b3,e4,d5] ~@3 [g3,b3,e4,g4,d5] ~@3 [g3,b3,e4,g4,d5] ~@3", // Em7
  BB: "[a#3,e4,g4,a#4,d5] ~@3 [e3,e4,g4,d5] ~@3 [e4,g4,a#4,d5] ~@3 [e3,e4,g4,a#4,d5] ~@2 d3", // Em7b5 Em7 Em7b5
  BC: "[c#4,d4,f#4,a4,c#5] ~@3 [c#4,d4,f#4,a4,c#5] ~@3 [c#4,e4,f#4,a4,c#5] ~@3 [c#4,e4,f#4,a4,c#5]@2 ~@2", // Dmaj7 F#m7
  BD: "[c#4,e4,f#4,c#5] ~@3 [c#4,e4,f#4] ~@3 [d4,f#4,b4]@2 ~@2 [c#4,d4,f#4,b4] ~@3", // F#7 Bm
  BE: "~ a4 ~@2 [e3,g3,b3,d4,a4] ~@4 [g3,b3] ~@2 [b3,d4,g4]@2 ~@2, [g3,b3,d4,g4] ~@3 [d4,a4] ~@3", // Em7 G D5
  BF: "[g3,a#3,d4,f#4]@2 ~@2 [g3,a#3,d4,f#4] ~@4 [g3,a#3] ~@2 [d4,e4]@2 ~@2, ~@4 [d4,e4] ~@3", // Gm Dsus2
  BG: "[a#3,b3,c#4,e4,f#4,a4]@2 ~@2 [b3,c#4,f#4,a4]@2 ~@2 [c#4,a4] ~@3 c#4 ~@3", // F#7 F#m
  BH: "[d4,e4,f#4,a4] ~@3 [b3,d4,e4,f#4,a4] ~@3 [a3,d4] ~@3 [a3,d4,f#4,a4]@2 ~@2", // D Bm7 D5 D
  BI: "[g3,f#4,a4] [b3,d4] ~@2 [g3,b3,d4,f#4,a4] ~@4 [g3,d4] ~@2 [e3,g3,b3,d4,f#4,a4] ~@3, ~@4 [e3,f#4,a4] ~@3", // D Bm Gmaj7 G5 Em7 F#m7
  BJ: "[a3 [a#3,d4,a4]@2 ~ [a3,a#3,d4,a4]@2 ~@2 [a3,a#3,d4,e4,a4]@2 ~@2 [a3,a#3,d4,e4,a4] ~@3 [b3,d4,f#4,a4] c#4 ~@3 [b2,a3,d4,f#4,a4] ~@3 [a3,b3,d4,f#4,a4] ~@3 [a3,a4] ~@2, ~@15 b2@2 ~@11 [b3,f#4]@2 ~@2]/2", // A#maj7 Asus4 Bm7 A B5
  BK: "~ a3 ~@2 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~@3 [b2,a3,a4] ~@3", // D B7
  BL: "[g3,b3,d4,g4] ~@3 [g3,b3,d4,g4] ~@3 [g3,g4] ~@3 [g3,b3,g4] ~@3", // G
  BM: "[[a3,a#3,d4,e4] ~@3 [a3,a#3,d4,a4] ~@3 [g3,a#3,d4,g4] ~@3 [g3,a#3,g4] ~@4 [d3,f#3,b3] ~@2 [f#3,b3,d4,f#4]@2 ~@2 f#3 [b3,d4,f#4] ~@2 f#3 [b3,d4,f#4] ~@2, ~@15 b2@2 ~@15, ~@8 [d4,f#4] ~@7]/2", // Asus4 A#maj7 Gm Bm D
  BN: "[g3,d#4,g4,a#4,d5] ~@7 [g3,a3,d#4,g4,a4,c5] ~@7", BO: "[g2,g3]@15 f3",
  BP: "[g2,a#2,d3,g3,a#3,d4,f4] ~@6 [g2,a#2,c3,e3,g3,a#3,c4,e4] ~@8", BQ: "[b2,b3] ~@8 [d5,f#5]@5 ~@2",
  BR: "~ [d5,f#5,a5] ~@3 [b4,a5] ~@3 d5 ~@6", BS: "d5 ~@3 d5 ~@3 [d5,e5] ~@3 d5 ~@3",
  BT: "[g4,a#4,d5,g5] ~@3 [g4,d5,g5] ~@3 [g4,a#4,d5,g5] ~@3 [g4,a#4] ~@3", // Gm G5 Gm
  BU: "[f#4,a4,c#5,f#5] ~@3 [f#4,a4,c#5,f#5] ~@3 [f#4,a4,c#5,f#5] ~@3 [f#4,a4,f#5] ~@3", // F#m
  BV: "[f#4,a4] ~@3 f#4 ~@3 [f#4,a4] ~@3 [f#4,a4] ~@3", BW: "[e4,g4,b4] ~@3 [e4,g4] ~@3 [e4,g4] ~@2 e4 ~@4",
  BX: "[e3,a#3,d4,f#4,a#4,d5] ~@3 [d4,d5] ~@3 [d4,f#4,d5] ~@2 d5 f#4 ~@2 f#4", BY: "~@8 b3 ~@3 c#4 ~@3",
  BZ: "d4@6 c#4 ~@9, c#4 ~@15", CA: "[b3,b4]@5 ~@4 [f#3,e4]@4 ~@3, [d4,g4]@5 ~@3, ~@2 [a3,f#4,a4] ~",
  CB: "[g3,b3,d4,g4]@5 ~@3 [e3,g3,a#3,d4,e4,g4,a#4]@5 ~@3", CC: "[d4,f#4,b4]@7 ~ [d4,f#4]@4 ~@4, [d3,f#3]@13 ~@3",
  CD: "[[f#4,a4,b4,d5]@7 ~@2 a4@5 ~ e3@8 ~ d4@5 ~@3 a5@3 g5@2 ~ [a#4,d5]@3 ~@3 [a#3,d5]@2 ~ d5, a3@5 ~@10 [b3,d5]@13 ~@3 a#3@9 ~@8, f#3@2 ~@13 [e4,g4,b4]@11 ~@6 [a#4,d5,e5]@6 ~@10, ~@15 g3@6 ~@11 g3@8 ~@8, ~@15 f3 ~@32]/3", // Bm7 A# Bm Em Em7b5
  CE: "[b2,b3,b4] ~@15", CF: "~@8 [c#3,d3,f#3,a3,c#4] ~@5 [c#3,d3,f#3,a3,c#4] ~",
  CG: "~@4 [c#3,d3,f#3,a3,c#4] ~@5 [d3,f#3,a3,c#4] c#3 ~@4", // Dmaj7
  CH: "[~@7 [e3,f3] [e3,f#3,a3,b3,d4,f#4]@2 ~@5 [f#3,g3,a#3,d4,f#4]@2 ~@3 [f#3,g3,a#3,d4,f#4] ~@5 [f#3,g3,a#3,d4,f#4] ~@5]/2", // Fmaj7 Bm7 Gm
  CI: "~@7 [b2,c3] [b2,c#3,d3,f#3,a3,c#4]@2 ~@4 [c#3,d3,f#3,a3,c#4] ~", // Cmaj7 Bm7 Dmaj7
  CJ: "~@4 [c#3,e3,f#3,a3,c#4] ~@6 [c#3,e3,f#3,a3,c#4] ~@4", // F#m7
  CK: "~@8 [f#3,a3,b3,d4,f#4] ~@6 [f#3,d4], ~@7 [g3,a#3,f#4]", // Bm7 D Gm
  CL: "~@4 [f#3,g3,a#3,d4,f#4] ~@6 [f#3,g3,a#3,d4,f#4] ~@4", CM: "~@8 [e3,f#3,a3,c#4,e4] ~@6 [e3,f#3,a3,c#4,e4]",
  CN: "~@4 [e3,f#3,a3,c#4,e4] ~@11", CO: "~@8 [a3,b3,d4,f#4,a4] ~@6 [a3,a#3,b3,d4,f#4,a4]",
  CP: "~@4 [a3,a#3,d4,f#4,a4] ~@6 [a3,a#3,d4,f#4,a4] ~@4", CQ: "~@8 [c#3,e3,f#3,a3,c#4,e4] ~@5 [c#3,e3,f#3,a3,c#4]@2",
  CR: "~@4 [c#3,e3,f#3,a3,c#4] ~@11", // F#m7
  CS: "[~@8 [f#3,a3,b3,d4,f#4]@2 ~@5 [e3,g3,a#3,e4]@2 ~@3 [e3,g3,a#3,e4] ~@6 [f#3,g3,a#3,d4,e4]@2 ~@3]/2", // Bm7 Edim Em7b5
  CT: "b2 ~@7 [c#3,d3,f#3,a3,c#4] ~@6 [c#3,d3,f#3,a3,c#4]", CU: "~@4 [c#3,e3,f#3,a3,c#4] ~@6 c#3 [e3,f#3,a3,c#4] ~@3",
  CV: "~@8 [f#3,a3,b3,d4,f#4] ~@6 [f#3,g3,a#3,d4,f#4]", CW: "~@4 [g3,a#3,f#4] [f#3,d4] ~@5 [f#3,g3,a#3,d4,f#4] ~@4",
  CX: "b2 ~@7 [f#3,a3,c#4,e4] e3 ~@5 [e3,f#3,a3,c#4,e4]", CY: "~@4 [a3,c#4,e4] [e3,f#3] ~@10",
  CZ: "[f#3,g3,b3,d4,f#4] ~@15", DA: "f#4 [d3,d4] ~@2 [d4,f#4] ~@3 [d3,f#3,d4,f#4] ~@3 [d3,f#3,d4,f#4] ~@3",
  DB: "[b2,a3,d4,a4] ~@3 [a3,b3,d4,a4] ~@3 [a3,g4] [d4,f#4] ~@2 [a3,b3,f#4] b2 ~@2", // Bm7 A7 D B7
  DC: "[g3,b3,d4,g4] ~@3 [g3,b3,d4,g4] ~@3 [g3,b3,d4,g4] ~@3 [g3,b3,d4,g4] ~@2 a#2", // G
  DD: "[[d3,a#3,d4,e4,a4] ~@3 [d3,d4,a4] ~@3 [d3,a#3,e4,a4] ~@3 [d3,a#3,g4] ~@3 [d3,f#3,b3,d4,f#4] ~@3 [d3,d4,f#4] ~@3 [d3,f#3,b3,d4,f#4] ~@3 [d3,f#3,d4,f#4] ~@2 a3, ~@15 b2@2 ~@15]/2", // Dsus2 D5 Dsus2 Gm Bm D Bm D
  DE: "[d3,f#3,f#4] ~@3 [a3,f#4] ~@3 [d3,f#3,a3,f#4] ~@2 a3 [d3,f#3]@2 ~@2", // D
  DF: "[f#3,g3,b3,d4,f#4] ~@3 [f#3,g3,f#4] ~@3 [f#3,g3,f#4] d4 ~@2 [f#3,g3,f#4] ~@3", // Gmaj7
  DG: "[e3,g3,a#3,e4] ~@3 [e3,g3,a#3,e4] ~@3 [e3,g3,a#3,e4] ~@3 f#3 ~@3", // Edim
  DH: "[d3,f#3,d4,f#4]@2 ~@6 [b2,b3] ~@3 [c#3,c#4] ~@3", DI: "[d3,d4]@6 [c#3,c#4] ~@9, c#4 ~@15",
  DJ: "[b3,f#4]@2 g3@2 [b3,d4,f#4] ~@3 [c#4,f#4]@3 a3 [c#4,f#4]@2 ~@2, e3@11 ~@5, d4 ~@7 f#3@7 ~", // B5 Bm F#5
  DK: "[d4,a4]@2 ~ b3 [d4,a4]@2 ~@2 [d4,e4,a4]@3 a#3 [d4,e4,a4]@2 ~@2, g3@6 ~@2 g3@5 ~@3", // D5 Dsus2
  DL: "[d4,f#4]@2 ~@2 [d4,f#4]@2 ~@2 [d4,f#4]@2 ~ b3 [d4,f#4] ~@3, f#3@8 b2@7 ~, ~@3 b3@2 ~@11", // D
  DM: "[[d#3,c4]@4 g3 ~@2 g3@2 ~@2 g3 ~@3 [a3,b3,d4,f#4]@4 ~ [g3,b3]@4 e3@3 d4@3 ~@2 [d3,a#3,d4]@7 ~ [d3,f#3] ~@5 [b2,b3] ~, g3@2 ~@13 f#3@9 ~@3 g3 ~@2 e2@11 ~@7, d4 ~@19 e4@7 ~@4 f#3@7 ~@2 d4@6 ~@2, ~@32 [a#2,f#4]@11 ~@5]/3", // Cm Bm7 G Gm D B D#m
  DN: "[d3,b3,d4] [f#3,f#4] ~@2 [f#3,b3,f#4] ~@3 [f#3,b3,d4,f#4] ~@3 f#4 ~@3", // G F# B5 Bm
  DO: "[b2,a3,b3,d4,f#4,a4] ~@3 [a3,b3,d4,a4] ~@3 [a3,d4,f#4,b4] ~@3 [a3,d4,f#4,b4] ~@3", // Bm7
  DP: "[b2,e3,g3,d4,g4,b4] ~@3 [e3,g3,d4,g4,b4] ~@3 [g3,g4,b4] ~@3 [b2,g3,g4,b4] ~@3", // Em7 G Em
  DQ: "[[a#2,e3,c#4,g4,a#4] ~@3 [a#2,c#4,g4,a#4] ~@3 [c#4,g4,a#4] ~@3 [c#4,g4,a#4] ~@3 [d3,f#3,c#4,f#4,a4] ~@3 [d3,f#3,c#4,f#4,a4] ~@3 [f#3,e4,a4] ~@3 [d3,f#3,c#4,e4,a4] ~@3, ~@15 b2@2 ~@15]/2", // A#dim Gdim Dmaj7 F#m7 Dmaj7
  DR: "[[f#3,c#4,e4,a4] ~@3 [d3,f#3] ~@3 [g3,a3,d#4,g4,a4,c5] ~@3 [g3,a3,g4,a4,c5] ~@3 [g3,b3,d4,f#4] ~@3 [g3,b3,d4,f#4,b4] ~@3 [g3,b3,d4,f#4,b4] ~@3 [g3,b3,d4,f#4,b4] ~@3, ~@15 e3@2 ~@15]/2", // F#m7 D Am7b5 Am7 Gmaj7
  DS: "[g3,a#3,d4,e4,g4,a#4] ~@3 [g3,a#3,d4,e4,a#4] ~@3 [g3,a#3,d4,g4,a#4] ~@2 e3 [g3,a#3,d4,a#4] ~@2 b2", // Em7b5 Gm
  DT: "[d3,f#3,g#3,b3,d4,f#4] ~@3 [d3,f#3,b3] ~@3 [d3,f#3,b3,d4] ~@3 [d3,f#3,b3,d4,f#4] ~@3", // G#m7b5 Bm
  DU: "[b2,a3,b3,d4,f#4,a4] ~@3 [b2,a3,b3,d4,f#4,a4] ~@3 [b2,a3,b3,d4,f#4,a4] ~@2 d4 [b2,a3,b3] ~@3", // Bm7 B7
  DV: "[g3,b3,d4,f#4] ~@3 [b2,g3,b3,d4,f#4] ~@3 [g#3,c4,d#4,g4]@2 ~ [g#3,c4,g4] ~@4", // Gmaj7 G#maj7
// … 610 more lines

More by Snoop Dogg