Strudelify

Get 'Em Out by Friday

Genesis

KeyA majorTempo130 bpm
0:00/0:00
// Get 'Em Out by Friday — Genesis
// 130 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: metre changes (6/4 at bar 1, 4/4 at bar 5, 6/4 at bar 6, 4/4 at bar 9, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: ch 9 "Meaty Organ" named as an organ, played on drawbar organ (its piano patch is not one); ch 6 "Chunky Bass" named as a bass, played on electric bass finger (its piano patch is not one); ch 7 "Fuzz Guitar (left channel)" named as a guitar, played on distortion guitar (its piano patch is not one); ch 8 "Fuzz Guitar (right channel)" named as a guitar, played on distortion guitar (its piano patch is not one); ch 3 "Acoustic Guitar" named as a guitar, played on acoustic guitar steel (its piano patch is not one); ch 5 "Flutes" named as a pipe, played on flute (its piano patch is not one)
// note: Full arrangement: all 289 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
// note: Guitar parts that double another keep only their own notes (fills, solos): Fuzz Guitar (left channel).
setcpm(130/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 · drawbar organ · "Meaty Organ"
const drawbar_organ = note(`<
  A@3 B@3 C D@5 E F@3 G H I J K@7 L M N@2 L O P@8 Q R@2 S@8 T@2 U@3 V W X Y Z AA X AB@2 AC@8 AD@5 AE@2 AF@2 AG@2 AH@7
  AI@2 AJ@2 AK@8 ~ AL AM AN AO AP AQ AR AS AT AU@8 AV@5 AW@6 AX@4 AY AZ BA BB BC BD BE BF@4 BG BH@2 BI BJ@3 BK@2 BL@2
  BM@4 ~@5 BN@3 ~ BO BP@5 BQ@8 ~@8 BR BS@5 BT@3 BU@3 BV@3 BW@3 BX@3 BY@3 BZ@3 CA@3 CB@3 CC@3 CD@3 CE@3 BV@3 BW@3 CF@3
  CG@3 CH CI CJ CK CL CM CN CO CP CQ CR CS CT CU CV CW CX CY@3 CZ@2 DA ~ DB@7 DC@2 DD@8
>`.pickRestart({
  A: "[~@16 [e4,a4,c#5]@20 ~@3 g#4 a4 ~ b4@2 c#5 ~ d5 ~ f#5@2 g#5 ~ a5 b5 ~ c#6@3 ~@14, ~@47 e5@2 ~@23]/3", // A
  B: "[~@2 [e4,g#4,b4]@36 ~@4 [f#4,a4,c#5]@20 ~@2 g#4 ~ a4 ~@2 c#5 ~ d5]/3", // E F#m
  C: "~@2 f#5@2 g#5 ~ a5 b5 ~ c#6@2 ~@13, ~ e5@2 ~@21", D: "[~@4 [e4,g#4,c#5]@38 ~ [f#4,a4,d5]@37 ~@2 [e4,g4,c5]@38]/5",
  E: "~ [d4,f#4,b4]@2 ~@21", F: "[~@16 a5@25 ~@14 [e5,g#5]@13 ~@4, ~@16 [d5,f5]@39 ~@17, ~@21 b5@13 ~@2]/3",
  G: "~@3 g4@2 ~@4 [c5,e5] ~@5 [e4,g4,b4] ~@6 [g4,b4,d5] ~, ~ d5 ~@10, ~@3 b4 ~@5 a4@2 ~@13", // C Em G
  H: "~@3 [a4,c5,e5] ~@3 [g4,b4,d5] ~@16", I: "[c5,e5,a5] ~@5 [g4,b4,d5] ~@6 [a4,c5,e5] ~@5 [e4,g4,b4] ~@4",
  J: "~@2 [g4,b4] ~@3 [a4,c5] e5 ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~@4 [g4,b4,d5] ~@3, ~ d5 ~@10", // G Am G
  K: "[[g4,b4,d5] ~@3 [f4,a4,d5]@12 ~ [e4,a4,c5]@12 ~ a4@12 ~ g#4@12 ~ [f4,a4,d5]@12 ~ [e4,a4,c5]@12 ~ [e4,g#4,b4]@20 ~@6 [e5,a5] ~@5 [g4,d5]@2 ~@3 e5 c5 ~@5 [e4,g4,b4] ~@5 [g4,b4,d5] ~@3 [a4,c5,e5] ~ [g4,b4,d5] ~@2 [e4,g4,b4]@9 ~@6 [c5,a5]@2 ~@4 [g4,b4] ~@5, ~@30 [e4,b4]@25 ~@53 c5@2 ~@4 b4 ~@4 a4@2 ~@35 e5 ~@5 d5@2 ~@4]/7", // G Dm Am Dm Am E A5 G5 …
  L: "[a4,c5,e5] ~@5 [e4,g4,b4] ~@5 [g4,b4,d5] ~@3 [a4,c5,e5] ~@3 [g4,b4,d5] ~@3", // Am Em G Am G
  M: "[g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [c5,e5,a5] ~@5 [g4,b4,d5] ~@5", // G Am G
  N: "[[a4,c5,e5] ~@5 [e4,g4,b4] ~@4 [g4,d5] b4 ~@3 [a4,c5,e5] ~ [g4,b4,d5] ~@3 [e4,g4,b4]@8 ~@6 [c5,e5,a5]@2 ~@4 [g4,b4] ~@5, ~@21 d5 ~@2]/2", // Am Em G5 Am G Em Am G
  O: "[g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [b4,d5] ~@3 [f4,a4,d5]@11 ~, ~@4 g4 ~@7", // G Bm Dm
  P: "[[e4,a4,c5]@11 ~ a4@11 ~@2 g#4@11 ~@26 d5@26 ~@13 [g3,b4,e5,g5]@13 [f3,d5]@26 ~@2 e6@2 ~@2 e6@2 ~@3 e6@2 ~@2 e6@2 ~@2 e6@2 ~@7 f6@2 ~@9 d6@2 f6@2 ~@9, ~@12 [e4,b4]@24 a3@65 ~@39 [c5,e5]@26 [d5,f5]@26, ~@140 a5@4 ~@4 a5@5 ~@4 a5@4 a5@30 ~]/8", // Am Em Dm E5 C Dm
  Q: "c6@2 e6@2 c6@2 e6@2 ~@3 e6@2 b5@2 e6@2 b5@2 e6@2 ~@3, e5@13 [b4,g5]@11", // Em
  R: "[e6@2 a5@2 d6@2 a5@2 d6@2 a5@2 ~ d6@2 a5@2 d6@2 ~@4 a5@2 ~@3 a5@4 ~@13 a5@3, ~ [a4,d5,f5]@13 [c5,e5]@10]/2", // Dm C
  S: "[~@4 e6@2 ~@2 f6@2 ~@11 f6@2 ~@9 c6@2 e6@2 ~@7 e6@2 b5@2 e6@2 b5@2 e6@2 b5@2 ~ e6@2 a5@2 d6@2 a5@2 d6@2 a5@2 ~ d6@2 a5@2 d6@2 a5@2 ~@2 a5@2 ~ d6@2 a4@26 [e4,g#4,b4]@26 [d4,f4,a4]@13 e4@13 [a4,c5,e5]@26 ~@4, ~ a5@30 ~@161, ~@6 [d5,f5]@26 e5@13 [b4,g5]@13 [a4,d5,f5]@26 ~@108]/8", // E Dm Am Dm Em Dm
  T: "[~@11 [g#4,b4,e5]@13]/2", // E
  U: "[[f4,a4,d5]@13 [g#4,b4,e5]@13 [a4,c5,e5]@26 [e5,a5] ~@5 [g4,d5]@2 ~@3 e5 c5 ~@5 [e4,g4,b4] ~, ~@52 c5@2 ~@4 b4 ~@4 a4@2 ~@7]/3", // Dm E Am A5 G5 Em
  V: "~@4 [g4,b4,d5] ~@3 [a4,c5,e5] ~ [g4,b4,d5] ~@2 [e4,g4,b4]@9 ~@2", // G Am G Em
  W: "~@4 [c5,a5]@2 ~@4 [g4,b4,d5] ~@5 [c5,e5] ~@5 [e4,g4,b4] ~, ~@4 e5 ~@11 a4@2 ~@6", // F G C Em
  X: "~@4 [g4,b4,d5] ~@3 [a4,c5,e5] ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3", // G Am G
  Y: "[g4,b4,d5] ~@3 [c5,e5,a5] ~@5 [g4,b4,d5] ~@5 [a4,c5,e5] ~@5 [e4,g4,b4] ~", // G Am G Am Em
  Z: "~@3 [g4,d5] b4 ~@3 [a4,c5,e5] ~ [g4,b4,d5] ~@3 [e4,g4,b4]@8 ~@2", // G5 Am G Em
  AA: "~@4 [c5,e5,a5]@2 ~@4 [g4,d5]@2 ~@4 [a4,c5,e5] ~@5 [e4,g4] ~, ~@10 b4 ~@11 b4@2", // Am G5 Am Em
  AB: "[[b4,d5] ~@3 [f4,a4,d5]@10 ~@2 [e4,a4,c5]@11 a4@11 ~@2 g#4@8, g4@2 ~@25 [e4,b4]@21]/2", // Bm Dm Am E5
  AC: "[~@27 b4@26 ~@26 [g#4,b4]@17, ~ e5@95]/8", AD: "[~@19 [c#5,e5]@51 [b4,e5]@50, ~@19 a4@49 ~@52]/5",
  AE: "[~ [f#4,b4,d5]@23]/2", AF: "[~ [g4,c5]@7]/2", AG: "[~@11 d5@37, ~@5 f#4@19]/2",
  AH: "[~@7 [e4,a4]@25 ~ [g#4,b4]@26 [a4,c#5]@25, ~@11 e4@17]/7", AI: "[~ [e4,g#4,b4]@23]/2", AJ: "[~ [e4,a4,c#5]@7]/2",
  AK: "[~@10 [e4,g#4,b4]@51 ~@3 b4@49 ~@2 b4@49 ~@2 a4@26, ~@62 [f#4,a4]@51 ~ [g4,c5]@50 ~@28]/8", // E F#m C5
  AL: "~@2 [e5,a5] ~@5 [g4,d5]@2 ~@4 [c5,e5] ~@5 [e4,g4,b4] ~@3, ~@2 c5@2 ~@4 b4 ~@5 a4@2 ~@8", // A5 G5 C Em
  AM: "~@2 [g4,b4,d5] ~@3 [a4,c5,e5] ~ [g4,b4,d5] ~@3 [e4,g4,b4]@9 ~@3", // G Am G Em
  AN: "~@2 [c5,a5]@2 ~@4 [g4,b4,d5] ~@5 [c5,e5] ~@5 [e4,g4,b4] ~@3, ~@2 e5 ~@11 a4@2 ~@8", // F G C Em
  AO: "~@2 [g4,b4,d5] ~@3 [a4,c5,e5] ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~", // G Am G
  AP: "~@2 [c5,e5,a5] ~@5 [g4,b4,d5] ~@5 [a4,c5,e5] ~@5 [e4,g4,b4] ~@3", // Am G Am Em
  AQ: "~@2 [g4,b4,d5] ~@3 [a4,c5,e5] ~ [g4,b4,d5] ~@3 [e4,g4,b4]@8 ~@4", // G Am G Em
  AR: "~@2 [c5,e5,a5]@2 ~@4 [g4,d5]@2 ~@4 [a4,c5,e5] ~@5 [e4,g4] ~@3, ~@8 b4 ~@11 b4@2 ~@2", // Am G5 Am Em
  AS: "~@2 [g4,b4,d5] ~@3 [a4,c5,e5] ~@3 [g4,d5] b4 ~@2 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [b4,d5] ~, ~@11 g4", // G Am G5 G Bm
  AT: "~@3 [f4,a4,d5]@11 [e4,a4,c5]@10", // Dm Am
  AU: "[~@15 g#4@11 ~@26 d5@26 ~@13 [g3,b4,e5,g5]@13 [f3,d5]@26 ~@2 e6@2 ~@3 e6@2 ~@2 e6@2 ~@2 e6@2 ~@3 e6@2 ~@6 f6@2 ~@9 d6@2 f6@2 ~@9 c6@2 e6@2 c6@2 ~ e6@2 ~, ~@2 a4@11 ~@13 a3@65 ~@39 a5@4 ~@5 a5@4 ~@4 a5@5 a5@30 ~@10, ~@3 [e4,b4]@24 ~@103 [c5,e5]@26 [d5,f5]@26 e5@10]/8", // Em Dm E5 C Dm
  AV: "[~ e6@2 b5@2 e6@2 b5@2 ~ e6@2 ~@2 e6@2 a5@2 d6@2 a5@2 ~ d6@2 a5@2 d6@2 a5@2 d6@2 ~@5 a5@2 ~@2 a5@4 ~@13 a5@5 ~@2 e6@2 ~@2 f6@2 ~@11 f6@2 ~@9 c6@2 e6@2 ~@7 e6@2 b5@2 e6@2 b5@2 ~ e6@2 b5@2 e6@2, ~@3 [b4,g5]@13 [a4,d5,f5]@26 [c5,e5]@26 [d5,f5]@26 e5@13 [b4,g5]@13, ~@32 a5@15 ~@13]/5", // Em Dm C Dm Em
  AW: "[a5@2 d6@2 a5@2 ~ d6@2 a5@2 d6@2 a5@2 d6@2 a5@2 ~@3 a5@2 d6@2 a4@26 [e4,g#4,b4]@26 [d4,f4,a4]@13 e4@13 [a4,c5,e5]@26 ~@14, [a4,d5,f5]@13 ~@59]/6", // E Dm Am Dm
  AX: "[~@12 [g#4,b4,e5]@26 [f4,a4,d5]@13 [g#4,b4,e5]@13 [a4,c5,e5]@26 ~ [e5,a5] ~@4, ~@91 c5@2 ~@3]/4", // E Dm E Am A5
  AY: "[g4,d5]@2 ~@4 [c5,e5] ~@5 [e4,g4,b4] ~@5 [g4,b4,d5] ~@3 [a4,c5,e5] ~, b4 ~@5 a4@2 ~@16", // G5 C Em G Am
  AZ: "[g4,b4,d5] ~@3 [e4,g4,b4]@9 ~@5 [c5,a5]@2 ~@4, ~@18 e5 ~@5", // G Em F
  BA: "[g4,b4] ~@5 [c5,e5] ~@5 [e4,g4,b4] ~@5 [g4,b4,d5] ~@3 [a4,c5,e5] ~, d5 ~@2 a4 ~@8", // G C Em G Am
  BB: "~@2 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [c5,e5,a5] ~@5", // G Am
  BC: "[g4,b4,d5] ~@5 [a4,c5,e5] ~@5 [e4,g4,b4] ~@5 [g4,b4,d5] ~@3 [a4,c5,e5] ~", // G Am Em G Am
  BD: "[g4,b4,d5] ~@3 [e4,g4,b4]@8 ~@6 [c5,e5,a5]@2 ~@4", // G Em Am
  BE: "[g4,d5]@2 ~@4 [a4,c5,e5] ~@5 [e4,g4] ~@5 [g4,b4,d5] ~@3 [a4,c5,e5] ~, b4 ~@11 b4@2 ~@10", // G5 Am Em G Am
  BF: "[~@2 [g4,d5] b4 ~@2 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [b4,d5] ~@4 [f4,a4,d5]@11 [e4,a4,c5]@11 ~ a4@11 ~ g#4@12 [g4,b4,e5]@10 ~@2 [g4,b4,d5]@5 ~ [g4,b4,e5]@11 ~, ~@7 g4 ~@13 [e4,b4]@12 ~@15]/4", // G5 G Bm Dm Am Em G Em …
  BG: "[g4,b4,d5]@5 ~ [b4,d5,f#5]@11 ~ [g4,b4,d5]@5 ~", // G Bm G
  BH: "[[g4,b4,e5]@16 ~@2 [g4,b4,e5]@11 ~ [g4,b4,d5]@5 ~ [g4,b4,e5]@10 ~@2]/2", // Em G Em
  BI: "[f#4,a4,c#5]@5 ~ [b4,d5]@11 ~ [e4,g4,b4]@4 ~@2", // F#m Bm Em
  BJ: "[[a4,c#5]@5 ~ [f#4,b4,d5]@5 ~ [g4,b4,e5]@5 ~ [f#4,b4,e5]@17 ~ [f#4,b4,d5]@16 ~@2 [e4,a4,d5]@18]/3", // A Bm Em Esus2 Bm Dsus2
  BK: "[[e4,a4,c#5]@16 ~@2 [b4,e5]@12 ~@2 d5@5 ~ [b4,e5]@10, ~@31 b4@5 ~@12]/2", BL: "[~ [g4,b4,d5]@2 [b4,d5]@12 ~]/2",
  BM: "[e4@13 d4@6 e4@12 ~@2 d4@5 ~ f#4@35 ~@22, [g4,b4]@37 ~@11]/4", // G
  BN: "[~@18 e5@13 ~@7 [b4,c#5]@13 [f#4,g4,b4,d5]@7 ~@14]/3", BO: "e5@13 [b4,d5]@7 ~@4",
  BP: "[~@9 [g4,d5]@6 [a4,c#5]@18 [g4,b4,c#5,e5]@18 [f#4,b4,d5]@18 [f#4,b4,c#5]@18 [f#4,b4,d5]@5 ~ [f#4,c#5,e5]@5 ~ [f#4,b4,d5,f#5]@5 ~@16]/5", // G5 A C#m7b5 Bm F#sus4 Bm F#7 Bm
  BQ: "[~ [f#4,a#4,c#5]@12 [f#4,b4,d5]@12 [a4,c5,f5]@12 [g4,c5,d#5]@12 [a4,d5]@12 ~@3]/8", // F# Bm F Cm D5
  BR: "~@4 [f4,a4,b4,d5]@7 [f4,a4,c5,e5]@13", // Bm7b5 Fmaj7
  BS: "[[f4,a4,b4,d5]@6 [a4,d5,f5]@36 ~@3 [f4,a4,c5,e5]@13 [f4,a4,b4,d5]@7 [a4,c5]@13 [a4,b4,d5]@6 [a4,d5,f5]@18 e5@18]/5", // Bm7b5 Dm Fmaj7 Bm7b5 Am Bm7 Dm
  BT: "[[a#4,d5] [c5,f5] [g4,b4,d5] [g4,a#4,d5]]/3", BU: "[[a4,c#5,e5] [g4,a#4,d5] [g4,c5,e5] [a4,c#5,e5]]/3",
  BV: "[[a4,d5,f5] [a4,c5,e5] [g4,a#4,d5] [f4,a4,c5]]/3", BW: "[[g4,b4,d5] [g4,a#4,d5] [a4,c#5,e5] [g4,a#4,d5]]/3",
  BX: "[[g4,c5,e5] [a4,c#5,e5] [a4,d5,f5] [a4,c5,e5]]/3", BY: "[[g4,a#4,d5] [f4,a4,c5] [g4,b4,d5] [g4,a#4,d5]]/3",
  BZ: "[[a4,c#5,e5]@9 [g4,a#4,d5]@9 [g4,c5,e5]@9 ~@3 d5@2 ~ e5@3, ~@3 [a4,c#5], ~@9 e5@2 ~]/3", // A Gm C A
  CA: "[~@9 e5@2 ~ d5@6 ~@6 d5@5 ~ c5@6 ~@6 c5@5 ~ a#4@6 ~@3 g4 ~@2 f4@12, [a4,f5]@3 [a4,e5]@3 [g4,d5]@3 f4 ~@2, d5@2 ~ c5@2 ~ a#4@2 ~ [a4,c5]@3]/3", // Dm A5 G5 Am
  CB: "[~@3 a4 ~@11 d4 ~@5 a4 ~@2 a#4@12 [a4,c#5,e5]@18 g4@15 g4@3, [b4,d5]@3 a#4 ~@5 [a#4,d5]@3, g4 g4@2 [g4,d5]@3 ~@6]/3", // A Bm A# G5
  CC: "[~@3 d5@2 ~@10 a4@2 ~@4 d5 ~@8 a#5@5 ~ [a4,d5,f5]@18 [a4,c5,e5,c6]@18, [g4,e5] [a4,c#5] ~@2, c5@3 c5@6 e5@3 e5@6 a5@8 ~@10]/3", // Dm Am C A
  CD: "[d6@5 ~ c6@6 a#5@5 ~ a5@6 g5@5 ~ f5@5 ~ [g4,b4,d5,g5]@18 [g4,a#4,d5]@18, [g4,a#4,d5]@9 [f4,a4,c5]@9 ~@9 a#5@8 ~]/3", // G Gm F
  CE: "[a5@2 ~ a#5 ~@2 a5@10 ~@2 a#5 ~@2 c6 ~@2 a#5@11 ~ c6@2 ~@2 c6@12 ~@2 c#6@2 ~@2 c#6@13 ~, [a4,c#5,e5] [g4,a#4,d5] [g4,c5,e5] [a4,c#5,e5]]/3", // A Gm C A
  CF: "[[g4,c5,e5] [a4,c#5,e5] [f#4,a4,d5]@2]/3", CG: "[[e4,g4,c5] [d4,f#4,b4]]/3",
  CH: "[e5,a5] ~@5 [g4,d5]@2 ~@4 [c5,e5] ~@5 [e4,g4,b4] ~@5, c5@2 ~@4 b4 ~@5 a4@2 ~@10", // A5 G5 C Em
  CI: "[g4,b4,d5] ~@3 [a4,c5,e5] ~ [g4,b4,d5] ~@3 [e4,g4,b4]@9 ~@5", // G Am G Em
  CJ: "[c5,a5]@2 ~@4 [g4,b4] ~@5 [c5,e5] ~@5 [e4,g4,b4] ~@5, e5 ~@5 d5@2 ~@4 a4@2 ~@10", // F G C Em
  CK: "[g4,b4,d5] ~@3 [a4,c5,e5] ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3", // G Am G
  CL: "[c5,e5,a5] ~@5 [g4,b4,d5] ~@5 [a4,c5,e5] ~@5 [e4,g4,b4] ~@5", // Am G Am Em
  CM: "[g4,b4,d5] ~@3 [a4,c5,e5] ~ [g4,b4,d5] ~@3 [e4,g4,b4]@8 ~@6", // G Am G Em
  CN: "[c5,e5,a5]@2 ~@4 [g4,d5]@2 ~@4 [a4,c5,e5] ~@5 [e4,g4] ~@5, ~@6 b4 ~@11 b4@2 ~@4", // Am G5 Am Em
  CO: "[g4,b4,d5] ~@3 [a4,c5,e5] ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [g4,b4,d5] ~@3 [b4,d5] ~@3, ~@10 g4 ~", // G Am G Bm
  CP: "~ [f4,a4,d5]@11 [e4,a4,c5]@11 ~", CQ: "a4@11 ~ g#4@12, [e4,b4]", CR: "~@6 [c5,e5,a5]@3 ~@9 [g4,b4,d5]@2 ~@4",
  CS: "~@6 [a4,c5,e5]@2 ~@4 [e4,g4,b4]@3 ~@9", CT: "[c5,e5,a5] ~@5 [g4,b4,d5] ~@5",
  CU: "[a4,c5,e5] ~@2 [e4,g4,b4]@2 ~@4 [c5,e5,a5] ~@2", CV: "~@3 [g4,b4,d5] ~@5 [a4,c5,e5] ~@2",
  CW: "[e4,g4,b4]@4 ~@8 [c5,e5,a5]@3 ~@9", CX: "[g4,b4,d5]@3 ~@9 [a4,c5,e5]@2 ~@4 [e4,g4,b4]@3 ~@3",
  CY: "[[g4,b4,d5]@18 ~ [f#4,a4,d5]@16 ~ [f4,a4,c5]@17 ~ [e4,a4,c5]@17 ~]/3", // G D F Am
  CZ: "[[e4,f#4,b4]@18 [e4,g#4,b4]@16 ~@3 g4@2 ~@3 [g4,b4,e5]@3 ~@3, ~@12 [b4,d5] ~@3]/2", // Esus2 E Em Bm
  DA: "[g4,b4,d5] ~ [f#4,a4,d5] ~ [g4,a4,d5] ~ [f#4,a4,d5] ~", // G D Gsus2 D
  DB: "[[d4,a4,c5,d5,f5,a5]@57 [g3,d4,b4,d5,f5,a5]@56 [a#3,f4,a#4,d5,f5,a5]@55]/7", DC: "[~ [c4,g4,c5,e5,a5]@23]/2",
  DD: "[~@11 [d3,a4,d5,f#5,a5]@170 ~@11]/8", // D
})).s("gm_drawbar_organ").gain(0.07)

// chords · drawbar organ · "Meaty Organ" · soft notes
const drawbar_organ_soft = note(`<
  ~@5 A ~@28 B@5 C D E@2 F@4 G@2 ~ H I@2 ~@13 J@7 ~@3 K@3 L@2 M@7 ~@10 N@7 ~@10 O@3 P@5 Q@2 R@2 S T@2 U@2 V@2 ~@17 W X
  ~@2 Y@2 Z@2 ~@9 AA@4 AB@3 ~@9 AC@2 ~@7 AD@2 ~@2 AE@2 AF AG@2 ~@87
>`.pickRestart({
  A: "~@10 b4 ~", B: "[~@12 [c5,e5]@26 f5@26 [c5,e5,a5]@13 ~@13 [f5,a5]@26 ~@4, ~@3 a5@13 ~@14]/5",
  C: "a5@4 ~@5 a5@4 ~@7 e6@2 d6@2", D: "~@2 d6@2 f6@2 d6@2 ~ f6@2 ~@4 d6@2 f6@2 d6@2 ~ f6@2",
  E: "[~@8 c6@2 ~@11 b5@2 ~@20 a5@2 d6@2 ~, [c5,a5]@13 e5@13 ~@22]/2", // F
  F: "[~@2 d6@2 ~@2 e6@2 ~@2 e6@2 ~@3 e6@2 ~@2 e6@2 ~@2 e6@2 ~@5 d6@2 ~@2 d6@2 f6@2 d6@2 ~ f6@2 d6@2 ~@2 d6@2 f6@2 d6@2 ~ f6@2 ~@4 c6@2 e6@2 c6@2 ~@3 e5@13 ~@14, ~@8 a5@4 a5@5 a5@4 ~@35 [c5,a5]@13 ~@27]/4", // F
  G: "[~@5 d6@2 ~@5 [d4,f4]@26 ~@10]/2", H: "~@5 [d4,g#4,b4]@13 ~@6", I: "[~@10 [f4,a4,d5]@13 ~]/2",
  J: "[~@2 a4@52 ~ a4@100 ~@13, ~ c#5@78 ~@5]/7", K: "[~@11 g#4@25]/3", L: "[~ a4@23]/2",
  M: "[~@6 [b4,e5]@52 ~ [a4,b4]@51 c#5@51 ~@7]/7", N: "[~@14 d5@51 ~@2 e5@48 ~@4 f#4@49, ~@59 [b4,d5]@25]/7",
  O: "[~@2 [c5,e5]@26 f5@26 [c5,e5,a5]@13 ~@5, ~ a5@26 ~@9]/3", // C Am
  P: "[~@8 [f5,a5]@26 ~@4 a5@5 ~@4 a5@4 ~@7 e6@2 d6@2 ~@2 d6@2 ~ f6@2 d6@2 f6@2 ~@4 d6@2 ~ f6@2 d6@2 f6@2 ~@9 c6@2 ~@11 b5@2 ~@10, ~@86 [c5,a5]@13 e5@13 ~@8]/5", // F
  Q: "[~@9 a5@2 ~ d6@2 ~@2 d6@2 ~@2 e6@2 ~@3 e6@2 ~@2 e6@2 ~@2 e6@2 ~@3 e6@2 ~@4 d6@2 ~@2, ~@22 a5@5 a5@4 a5@4 ~@13]/2",
  R: "[d6@2 ~ f6@2 d6@2 f6@2 d6@2 ~@2 d6@2 ~ f6@2 d6@2 f6@2 ~@4 c6@2 ~ e6@2 c6@2 ~@2 e5@13, ~@22 [c5,a5]@13 ~@13]/2", // F
  S: "~@10 d6 ~", T: "[~ [d4,f4]@13 ~@10]/2", U: "[~@19 [d4,g#4,b4]@13 ~@16]/2", V: "[~@5 [f4,a4,d5]@13 ~@6]/2",
  W: "~@3 g4@5 ~@4", X: "f#4@5 ~@19", Y: "[~@18 g4@12 ~@2 g4@5 ~ g4@10]/2", Z: "[~@3 f#5@12 ~]/2",
  AA: "[~@18 [g4,b4,c#5]@13 [f#4,g4,b4,d5]@7 [g4,e5]@13 ~@6 [g4,b4,d5,f#5]@32 ~@7]/4", // C#m7b5 Gmaj7 C Gmaj7
  AB: "[[g4,b4,c#5]@13 [f#4,g4]@7 [g4,b4,c#5,e5]@13 [f#4,b4]@6 f#5@18 ~@15, f#4 ~@11]/3", AC: "[~ f#4@12 ~@3]/2",
  AD: "[~@15 [f4,a4,c5,e5]@13 ~@20]/2", AE: "[~@17 [f4,e5]@13 f4@7 ~@11]/2", AF: "~ [a4,c5]@3", AG: "[g4@3 a4@3 ~@2]/2",
})).s("gm_drawbar_organ").gain(0.04)

// bass · electric bass finger · "Chunky Bass"
const bass = note(`<
  A B C D E F G H@2 I J K@2 L M N O P Q R S@3 T@2 U V U W U X Y Z AA@5 AB@3 AC@3 AD@4 AE AF AG AH AI AJ AK AL AM AN AO
  AP AQ AR AS AT AU@6 AV@2 AW AX@5 AY@2 AZ@2 BA@5 BB@4 BC BD@7 BE@5 BF BG BH BI BJ BK BL BI BM BN@2 BO@3 ~ BP@8 BQ BR BS
  BT BU@2 BV BW BX@2 BY BZ BY CA BY CB CC CD@4 CE CF@3 CG@2 CH CI@4 CJ@4 CK@3 CL@4 CM@2 CN@2 CO CP@2 CQ CR@3 CS@3 CT CU
  ~ CV@5 CW@3 CX@5 ~@6 CY@3 CZ@3 DA@3 DB@3 DC@3 DD@3 DE DF@2 DG@3 DH@3 DI@3 DD@3 DE DF@2 DJ@3 DK DL@2 U DM U DN U DN DO
  DP DQ DR DS DT DU DV DW DX DY DZ EA EB EC@2 ED ~@10 EE@4 ~@4
>`.pickRestart({
  A: "~@16 a3!2 ~@2 a3 ~@3", B: "a3!2 ~ a3 ~@2 a3 ~ a3!2 ~ a3 ~@12", C: "~@7 a2@5 ~@12",
  D: "~@2 e3@3 ~ e4@3 d4@3 c#4@3 b3@2 ~@2 [a3,b3]@2 ~ g#3@2", E: "~ f#3@3 e3@3 ~ d3@3 c#3@3 b2@3 f#3 ~ f#3 ~@2 f#3 ~",
  F: "~ f#3 ~ f#3!2 ~@2 f#3 ~ f#3 ~ f#3!2 ~@11", G: "~@9 f#2@5 ~@10",
  H: "[~@4 g#3@3 c#4@3 b3@4 a3@2 ~ g#3@3 f#3@2 ~ e3@3 d3@2 ~@2 c#3@3 b2@2 ~ a2@3 g#2@3 ~@2 f#3@2 ~@2, ~@43 f#2@2 ~@3]/2",
  I: "f#3@3 f#2@2 f#3 f#3@2 ~ f#3@3 ~@2 f#3@2 f#3@2 ~ f#3@3 f#2@2, ~@13 f#2@2 ~@9",
  J: "f#3@2 f#3@2 ~ f#3@2 ~ f#3@2 ~ g3@2 ~@2 g3@3 g2@2 g3 g3@2 ~, ~@5 g2 ~@6",
  K: "[g3@3 ~@2 g3@2 g3@2 ~ g3@3 g2@2 g3@2 g3@2 ~ g3@2 ~ g3@2 b2@2 ~@17 b3@2 a3 ~, ~@2 g2 ~@21]/2",
  L: "~ f#3 ~@2 f#3 ~ e3 ~ d3 ~@2 c#3 ~@2 b2 ~ a2@2 ~@4 a2@2", M: "~@5 a2@3 ~@3 a2@3 ~@4 a2@3 ~@3",
  N: "a2@3 ~@4 a2@3 ~@3 a2@3 ~@4 a2@2 ~@2", O: "~@2 a2@3 ~@4 a2@2 ~@4 a2@2 ~@5 a2@2", P: "~@2 a2 ~@5 a2@2 ~@14",
  Q: "a2@2 ~@4 a2@2 ~@5 a2@2 ~@4 a2@2 ~@3", R: "~@2 a2 ~@3 a2 ~@3 a2 ~@4 a2 ~@3 a2 ~@3 a2",
  S: "[~@8 d4@6 d3 ~@6 c4@7 c3@2 b2@25 ~ a3@3 ~@2 b3@2 ~@2 c4@2 ~@2 d4@3, ~@4 d3@7 ~@6 c3@10 ~@45]/3",
  T: "[~@2 c4@2 ~@3 b3@3 b2@26 a2 ~ b2 ~ d3 ~ e3 ~ g3 ~ a3 ~]/2",
  U: "a2 ~ b2 ~ d3 ~ e3 ~ g3 ~ a3 ~ a2 ~ b2 ~ d3 ~ e3 ~ g3 ~ a3 ~",
  V: "g3 ~ a3 ~ b3 ~ c4 ~ d4 ~ e4 ~ a2 ~ b2 ~ d3 ~ e3 ~ g3 ~ a3 ~",
  W: "g3 ~ a3 ~ a3 ~ a3 ~ g3 ~ e3 ~ a2 ~ b2 ~ d3 ~ e3 ~ g3 ~ a3 ~",
  X: "g3 ~ a3 ~ a3 ~ a3 ~ g3 ~ e3 ~@5 a3 ~ a3 ~ a3 ~ a3 ~",
  Y: "a3 ~ g3 ~ e3 ~ c3 ~ d3 ~ e3 ~ a2 ~ c3 ~ d3 ~ e3 ~ g3 ~ a3 ~",
  Z: "a2 ~ c3 ~ d3 ~ e3 ~ g3 ~ a3 ~@5 d3@8, ~@13 d4@11",
  AA: "[~@5 c3@8 ~@3 b2@18 ~@2 a2@65 ~@19, c4@11 ~@2 b3@22 ~@85]/5", AB: "[~@20 a2@18 ~ e3 ~@2 c3 ~ d3 ~ f3@23 ~@3]/3",
  AC: "[g3@12 ~ a3@13 c3@25 ~ a2@12 ~ e3@7]/3",
  AD: "[b2 ~ c3 ~ c#3 ~ f3@23 ~@3 g3@9 ~@4 a3@12 ~ c3@24 ~@4 d4@2 ~@2 a3@2 ~@4]/4",
  AE: "~@3 d4@2 ~@2 a3@2 ~@7 a3@2 ~@2 d3@2 ~@2", AF: "~@5 d3@2 ~@2 d4@2 ~@7 d3@2 ~@2 a3@2",
  AG: "~@7 d3@2 ~@2 a3@2 ~@7 a3@2 ~@2", AH: "d3@2 ~@7 d4@2 ~@11 a2@2", AI: "~@2 a2@2 ~@7 a2@2 ~@2 a2@2 ~@7",
  AJ: "a2@2 ~@2 a2@2 ~@7 a2@2 ~@2 a2@2 ~@5", AK: "~@2 a2@2 ~@2 a2@2 ~@7 a2@2 ~@2 a2@2 ~@3",
  AL: "~@4 a2@2 ~@2 a2@4 ~@5 a2@2 ~@2 a2@2 ~", AM: "~@4 a2@2 ~@8 e3 ~ a3@2 ~@6",
  AN: "~ e3 ~@2 a2@2 ~@7 a2@2 ~ a3@2 ~@2 a3@2 d3 ~", AO: "d#3 ~ e3 ~ a2@2 ~@8 a2 ~ a3@2 ~@6",
  AP: "~@2 a2 ~ a2@2 ~@7 a2 ~@2 a3 ~@2 a3 ~ a3@2 ~", AQ: "g3 e3 ~@2 a2@2 ~@8 d3 ~ a3@2 ~@6",
  AR: "~@2 e3 ~ a2@2 ~@8 a2 ~ a3@2 ~@2 a2 ~ d3 ~", AS: "c#3 ~ e3 ~ a2@2 ~@8 a2 ~ a3@2 ~@6",
  AT: "~@2 a2 ~ a2@2 ~@8 a2 ~ a3@2 ~@2 a2@2 ~@2",
  AU: "[~@8 d3@7 ~@5 c3@8 ~@3 b2@17 ~@2 a3@78 f#4@4 e4@2 ~@4 f#4@2 ~@4, ~@4 d4@11 c4@11 ~@2 b3@22 ~@94]/6",
  AV: "[~ e4@2 c#4@6 ~ a3@24 a4@2 c#5@12]/2", AW: "~ c#5@4 b4@8 ~ e3@10",
  AX: "[f#3@2 ~ g#3@11 a3 ~ b3@13 ~ [f#4,g#4]@3 f#4 g#4@7 ~ a3@23 ~ e4@2 a4@11 e4@3 c#5@12 e3@9 ~ f#3@2 ~ g#3@10 a3@2 ~]/5", // F#sus2
  AY: "[b3@26 d3@11 a3@2 ~ d4@3 ~@5]/2", AZ: "[~ e4@2 ~ f#4@26 c3@10 g3@2 ~ c4@2 ~@3]/2",
  BA: "[~@5 d4@2 ~ e4@26 b2@10 f#3@2 ~ b3@2 ~@8 c#4 ~@2 d4@25 ~ a3@26 f#4@3 ~ e4@2 ~@2]/5",
  BB: "[~@3 f#4@2 ~@4 e4@2 c#4@5 ~@2 e3@10 f#3@2 ~ g#3@10 a3@2 ~ b3@13 f#4 g#4@2 ~ f#4 g#4@7 ~ a2@23 ~ a4@2]/4",
  BC: "c#5@12 ~ c#5@4 b4@7",
  BD: "[~@2 e3@10 f#3@2 ~ g#3@11 a3 ~ b3@13 ~ [f#4,g#4]@3 f#4 g#4@7 ~ a3@23 ~ e4@2 a4@11 e4@3 c#5@12 e3@9 ~ f#3@2 ~ g#3@10 a3@2 ~ b3@26 d3@10]/7", // F#sus2
  BE: "[~ a3@2 ~ d4@3 ~@6 e4@2 ~ f#4@26 c3@10 g3@2 ~ c4@2 ~@8 d4@2 ~ e4@26 b2@10 f#3@2 ~ b3@2 ~@8 c#4 ~@2]/5", BF: "d4",
  BG: "~@2 a2@2 ~@8 e3 ~ a3@2 ~@8", BH: "e3 ~ a2@2 ~@8 a2 ~ a3@2 ~@2 a3@2 d3 ~ d#3 ~",
  BI: "e3 ~ a2@2 ~@8 a2 ~ a3@2 ~@8", BJ: "a2 ~ a2@2 ~@8 a2 ~ a3 ~@3 a3 ~ a3@2 g3 ~", BK: "e3 ~ a2@2 ~@8 d3 ~ a3@2 ~@8",
  BL: "e3 ~ a2@2 ~@8 a2 ~ a3@2 ~@2 a2 ~ d3 ~ c#3 ~", BM: "a2 ~ a2@2 ~@8 a2 ~ a3@2 ~@2 a2@2 ~@4",
  BN: "[~@6 d3@8 ~@5 c3@8 ~@4 b2@17, ~@2 d4@11 ~ c4@11 ~@2 b3@21]/2", BO: "[~@2 a2@65 ~@5]/3",
  BP: "[~@10 a2@18 ~@2 e3 ~ c3 ~ d3 ~ f3@23 ~@3 g3@12 ~ a3@13 c3@25 ~ a2@12 ~ e3@7 b2 ~ c3 ~ c#3 ~ f3@23 ~@3 g3@9 ~@4 a3@12 ~]/8",
  BQ: "c3", BR: "~@4 d4@2 ~@3 a3@2 ~@6 d4@2 ~@3 a3@2", BS: "~@6 a3@2 ~@3 d3@2 ~@6 d3@2 ~@3",
  BT: "d4@2 ~@6 d3@2 ~@3 a3@2 ~@6 d3@2 ~", BU: "[~@2 a3@2 ~@6 a3@2 ~@3 d3@2 ~@6 d4@2 ~@11 a2@2 ~@3 a2@2 ~@5]/2",
  BV: "~ a2@2 ~@3 a2@2 ~@6 a2@2 ~@3 a2@2 ~@3", BW: "~@3 a2@2 ~@3 a2@2 ~@6 a2@2 ~@3 a2@2 ~",
  BX: "[~@5 a2@2 ~@3 a2@2 ~@6 a2@2 ~@3 a2@4 ~@4 a2@2 ~@3 a2@2 ~@4 a2 ~ b2 ~ d3 ~]/2",
  BY: "e3 ~ g3 ~ a3 ~ a2 ~ b2 ~ d3 ~ e3 ~ g3 ~ a3 ~ a2 ~ b2 ~ d3 ~",
  BZ: "e3 ~ g3 ~ a3 ~ g3 ~ a3 ~ b3 ~ c4 ~ d4 ~ e4 ~ a2 ~ b2 ~ d3 ~",
  CA: "e3 ~ g3 ~ a3 ~ g3 ~ a3 ~ a3 ~ a3 ~ g3 ~ e3 ~ a2 ~ b2 ~ d3 ~",
  CB: "e3 ~ g3 ~ a3 ~ g3 ~ a3 ~ a3 ~ a3 ~ g3 ~ e3 ~@5 a3 ~",
  CC: "a3 ~ a3 ~ a3 ~ a3 ~ g3 ~ e3 ~ c3 ~ d3 ~ e3 ~ a2 ~ c3 ~ d3 ~",
  CD: "[e3 ~ g3 ~ a3 ~ a2 ~ c3 ~ d3 ~ e3 ~ g3 ~ a3 ~@5 d3@8 ~@5 c3@8 ~@4 b2@18 ~ a2@8 ~@2 a2@2 e3@2 ~@2 e3@2 d3@8 ~@4, ~@18 d4@11 ~ c4@11 ~@2 b3@22 ~@31]/4",
  CE: "d3@2 e3 a2@4 ~ a2 d3 ~ e3",
  CF: "[f#3@6 e3@5 ~ d3@5 ~ a2@8 ~@2 a2@2 e3@2 ~@2 e3@2 ~ b2@15 e3 ~ a2@12 d3@3 ~ e3@2]/3",
  CG: "[f#3@6 e3@5 ~ d3@6 e2@10 a2@2 b2@5 ~@2 c#3@5 b2@5 ~]/2", CH: "a2@5 ~ e3@13 b3@3 d4@2",
  CI: "[~ e4@15 ~@2 e3@11 ~@2 d3@5 ~@2 e3@12 d3@5 ~@2 f#3@37 ~@2]/4",
  CJ: "[e3@12 ~ d3@5 ~ e3@11 ~@3 d3@5 ~ f#3@36 ~@3 e3@12 ~ d3@5]/4", CK: "[~ e3@11 ~@3 d3@5 ~ f#3@36 ~@3 e3@12]/3",
// … 315 more lines

More by Genesis