Strudelify
Babylon Sisters cover art

Gaucho

Babylon Sisters

Steely Dan

KeyB♭ majorTempo120 bpm
0:00/0:00
// Babylon Sisters — Steely Dan
// 120 bpm, 4/4, key A# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 174 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(120/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, A@4 for four bars: edit a riff to change every repeat.

// chords · epiano1 · "Rhodes"
const epiano1 = note(`<
  ~ A B C D E@2 F G H I J K L M N O P Q R S T@3 U V@2 W X Y Z@2 AA AB AC@2 AA AD AE AF AG AH AI AJ AK AL AM AJ AN AO@2
  AD AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD BE BF@3 AA BG@2 BH BI BJ BK@2 BL BM BN@2 AA BO BP BQ BR BS BT BU AN BV
  BW AJ BX BY BZ CA CB CC CD CE AT CF CG CH CI CJ CK CL CM BL CN@2 CO X CP BK@2 AA CQ BN@2 CR CS CT CU CV BS CW CX AN CY
  CZ AJ AN DA@2 DB DC DD DE DF DG DH DI AJ DJ@3 DK DL DM DN DO DP DQ@2 AJ AN DR DS AJ DT DU@2 AJ AN DR DI AJ DV@2
>`.pickRestart({
  A: "[gb2,db3]@2 ~@8 [gb2,db3]@13 ~", B: "[gb2,db3] ~@8 eb4@2 ~, ~@10 [gb2,db3]@11 ~@3, ~@18 db4 ~@5",
  C: "[b2,gb3,gb4]@2 ~@4 eb4@4 ~ db4@3 ~@4 eb4@4 ~@2, ~@5 gb3@6 ~, ~@5 b2@3 ~@4", // B5
  D: "c4 eb4 c4 bb3 ~@6 [ab2,eb3]@13 ~, [ab2,eb3]@2 ~@3 c4@18 ~", // Ab5
  E: "[[e2,b2]@2 ~@10 ab3@2 ~@2 b3@2 eb4@2 ~@4 [ab2,eb3]@6 [ab3,eb4]@2 ~@4 [b3,gb4]@6 [ab3,eb4]@3 ~@3, ~@10 [e2,b2]@10 ~@2 [b3,gb4]@7 ~@5 eb3@12 ~@2, ~@17 ab2@5 ~@2]/2", // E5 Ab5 B5 Ab5 E5 B5
  F: "[eb2,bb2,gb4] ~@9 [eb2,bb2]@8 [bb3,f4,gb4] ~@5, [bb3,f4] ~@2 [ab3,bb3,db4,eb4]@5 ~@4", // Ebm Eb5 Gbmaj7 Bb5 Absus4
  G: "eb2@2 ~@9 eb2@11 ~@2, [ab3,bb3,db4,eb4]@23 ~, bb2 ~@9 bb2@11 ~@3", // Absus4
  H: "[gb2,db3] ~@7 gb4 eb4@2 ~, ~@10 [gb2,db3]@11 ~@3", // Gb5
  I: "[b2,gb3,db4]@3 ~@2 eb4@4 ~@3 db4@3 ~@3 eb4@3 ~@3, ~@5 [b2,gb3]@6 ~", // Bsus2 B5
  J: "[c4,eb4] ~ c4 bb3 ~@6 [ab2,eb3]@12 ~@2, [ab2,eb3]@2 c4@5 ~", // Cm Ab5
  K: "~ gb4 eb4 db4 ~@6 [b2,gb3]@13 ~, [b2,gb3]@5 ~@19, eb4 ~@2 eb4@7 ~@2", // B5
  L: "[b4,e5,ab5]@3 ~ [db5,gb5,bb5] ~@5 [e2,b2]@8 ~@6, [e2,b2] ~@5", M: "[e2,b2] ~@4 [a2,db4,eb4]@6 ~, ~@5 g3@5 ~@2",
  N: "[eb2,bb2,bb3]@2 ~@9 [eb2,bb2]@7 [bb3,eb4,f4,gb4] ~@5, [f4,gb4] ~@5 [ab3,bb3,db4,eb4]@10 ~@8", // Eb5 Ebm Gbmaj7 Absus4
  O: "[eb2,bb2] ~@9 [eb2,bb2]@13 ~, [bb3,eb4]@19 ~@5, [ab3,db4]@17 ~@7", // Eb5 Db5
  P: "[e2,b2,b4,e5,ab5]@4 [db5,gb5,bb5] ~@6 b2@10 ~@3, ~@5 e2@5 ~@2", // E Gb
  Q: "[e2,b2]@2 ~@8 [a2,db4,eb4]@13 ~, ~@10 g3@11 ~@3", // E5 Ebm7b5
  R: "[eb2,bb2,f4] ~@17 [eb4,f4,gb4] ~@5, [bb3,gb4] ~@2 [ab3,bb3,db4,eb4]@5 ~ bb3 ~@2, ~@5 [eb2,bb2]@5 ~@2", // Ebsus2 Ebm Absus4 Eb5
  S: "[ab3,bb3,db4,eb4]@5 ~@5 eb3 ~, [eb2,bb2]@3 ~@7 [eb2,bb2]@14, ~@13 eb4@11, ~@16 bb3@7 ~", // Absus4 Eb5
  T: "[bb2@2 ~@8 bb2@2 f2 ~@21 bb2@2 f2@5 ~ bb2@5 ~ bb1@2 ~@22, [ab3,db4,f4]@61 ~@11]/3", U: "[bb3,eb4,g4]@19 ~@5",
  V: "[[g3,c4,db4,f4]@3 ~]/2", W: "[c4,eb4,ab4]@7 ~, bb3@19 ~@5", X: "[gb3,bb3,c4,f4]@23 ~",
  Y: "~ gb3@23, [bb3,db4,eb4]@23 ~", Z: "[[ab3,c4]@23 ~, [db4,f4]@43 ~@5]/2", AA: "[bb3,d4,eb4,g4]@23 ~",
  AB: "[c4,f4]@23 ~, a4@5 ~", AC: "[ab3,c4,db4,f4]/2", AD: "[a3,d4,eb4,g4]@23 ~", AE: "[a3,d4]@23 ~, [c4,f4]@7 ~",
  AF: "~ [c4,d4]@22 ~, ab3@23 ~", AG: "[g3,c4,d4,f4]@11 ~", AH: "[g3,c4,db4,f4]",
  AI: "[d2,a2]@2 ~@10 [g3,ab3] a3@3 c4@2 d4@2 ~@4", AJ: "[d2,a2,a3] ~@5 [d2,a2,g3,c4,f4]@15 ~@3, [c4,f4] ~@11",
  AK: "[eb2,bb2,g5]@4 [c5,f5,a5] ~@4 [eb2,bb2]@12 ~@3, [bb4,eb5] ~@7", // Eb F Eb5
  AL: "[eb2,bb2]@3 ~@6 d5 ~@2 g4 ab4 g4@2 f4 d4@4 c4@2 ~, ~@5 [eb2,bb2]@5 ~@2", // Eb5
  AM: "[d2,a2]@2 ~@10 [g3,ab3] ~@3 c4@2 d4@2 ~@4, d4@5 [d2,a2]@4 ~@3, ~@4 a3 ~@3", // D5 Abmaj7 D5
  AN: "[bb4,eb5,g5]@3 ~ [c5,f5,a5] ~@5 [eb2,bb2]@12 ~@2, [eb2,bb2] ~@5", // Eb F Eb5
  AO: "[[eb2,bb2]@3 ~@9 d4@4 f4@5 a3@3 [g2,g3] ~@9 c2@2 ~ g2@2 ~@9, ~@10 [eb2,bb2]@13 ~ c2@2 ~@22, ~@12 g4@8 ~ e4 ~@2 [e3,a3,bb3]@21 ~@3, ~@16 c4@3 ~@2 d4@26 ~]/2", // Eb5 G Eb5 A
  AP: "[c4,f4,a4]@23 ~", AQ: "~@6 [db4,f4]@2 ~@4 [g3,c4,db4,f4]@11 ~, ~@6 [ab3,c4] ~@17",
  AR: "[c4,f4]@2 ~@4 [g3,a3,c4,f4]@15 ~@3, [g3,a3] ~@23", AS: "[c2,e3,a3,bb3,d4] ~@5 [c2,g2,e3,a3,bb3,d4]@14 ~@4",
  AT: "[eb2,bb2,bb4,eb5,g5]@4 [f5,a5] ~@4 eb2@12 ~@3, ~@4 c5@2 ~@3 bb2@10 ~@5", AU: "[eb2,bb2]@2 ~@7 [eb2,bb2]@12 ~@3",
  AV: "[e2,b2,eb5] ~@4 [e2,b2]@5 ~@2, [gb4,b4] ~@5 [gb4,bb4,db5]@15 ~@3", // Emaj7 E5 B5 Gb
  AW: "~ f5@2 ~@3 [ab4,c5,eb5]@5 ~ [bb2,f3,f4,ab4,b4,d5]@11 ~, [gb2,db3]@5 ~@7, [ab4,db5] ~@11", // Ab Bb7 Gb5 Db5
  AX: "[db4,gb4,bb4]@5 ~", AY: "[db4,eb4,f4,ab4]@19 ~@5", AZ: "[bb3,b3,eb4,gb4]@11 ~ [a3,b3,eb4,ab4]@10 ~@2",
  BA: "[ab3,db4,gb4]@10 ~@2 [g3,db4,gb4]@11 ~", // Dbsus4 Gb
  BB: "[eb2,bb2]@2 ~@10 bb3 ~@5 eb4@5 ~, ~@5 [eb2,bb2]@5 ~@2, ~@17 db4@2 ~@5", // Eb5
  BC: "~@12 [gb3,bb3,c4,eb4,gb4]@11 ~, [bb3,db4,gb4]@5 ~@7, f4 ~@2, ~ [eb2,bb2]@23", // Cm7b5 Gb Eb5
  BD: "[a3,db4,eb4]@10 ~@2 [bb3,d4,eb4]@11 ~", BE: "[a3,db4,eb4]@10 ~@2 [ab3,eb4]@11 ~, ~@4 bb3@3 ~",
  BF: "[[ab3,c4,db4,f4]@13 ~@5, bb2 ~@11]/3", BG: "[[g3,c4,db4]@3 ~, f4@5 ~]/2", BH: "[bb3,c4,eb4]@11 ~, ab4",
  BI: "[gb3,bb3,c4,f4]@11 ~", BJ: "[gb3,eb4]@11 ~, bb3@19 ~@5", BK: "[[ab3,c4,db4,f4]@43 ~@5]/2",
  BL: "[bb3,d4,eb4,g4]@5 ~", BM: "[c4,f4,a4]@5 ~", BN: "[[ab3,c4,db4,f4]@15 ~]/2", BO: "[a3,d4,eb4,g4]@11 ~",
  BP: "[a3,c4,f4]@11 ~, d4@17 ~@7", BQ: "[ab3,c4,d4,gb4]@23 ~", BR: "[g3,bb3,d4,eb4,g4]@7 ~", BS: "[g3,c4,db4,f4]@11 ~",
  BT: "[d2,a2,g3,c4,f4] ~@10 [g3,ab3] a3@3 ~@3 d4@3 ~@3, ~@17 c4@2 ~@5", // Dm7 Abmaj7
  BU: "[d2,a2,a3,c4,f4] ~@6 d2@14 ~@3, ~@2 [a2,g3,c4,f4]@5 ~", // Dm7 F
  BV: "[eb2,bb2]@2 ~@4 [g3,c4]@2 ~@2 a3 eb2 [c4,f4]@2 ~@2 g4@2 [c4,f4]@5 ~, ~@10 d4@2 ~@4 d4 ~@7", // Eb5 C5 F5
  BW: "[a3,d4]@11 g3 a3@3 ~@3 d4@2 ~@4, a2@2 ~@10 ab3 ~@4 c4@2 ~@5, d2 ~@10 [d2,a2]@2 ~@11", // D5
  BX: "[bb4,eb5,g5]@3 ~ [c5,f5,a5] ~@12 c4 d4@2 ~@4, [eb2,bb2]@2 ~@3 [eb2,bb2]@5 ~@2, ~@18 db4 ~@5", // Eb F Eb5
  BY: "[eb2,bb2]@6 d4@4 [eb2,bb2]@13 ~, f4 ~@11", BZ: "[c2,g2]@3 ~@7 [c2,g2]@14, [a3,bb3,d4]@11 ~, e3@5 ~",
  CA: "~ f2@2 ~@7 f2@2 ~@12, [a3,d4,eb4,g4]@11 ~", CB: "[a3,c4,d4,f4], bb2@5 ~@19",
  CC: "~@6 [ab3,c4,db4] ~@5 [g3,c4,db4,f4]@9 ~@3, ~@3 f4 ~@8", CD: "[d2,a2,g3,c4,f4] ~@5 [d2,a2,g3,c4,f4]@15 ~@3",
  CE: "[c2,g2,e3,a3,bb3,d4] ~@5 [c2,g2,e3,a3,bb3,d4]@16 ~@2", CF: "~ [eb2,bb2]@2 ~@7 [eb2,bb2]@12 ~@2",
  CG: "[gb4,b4,eb5] [f2,c3] ~@8 [e2,b2]@11 ~@3, ~@3 [bb4,db5]@8 ~, ~@6 gb4@13 ~@5", // B F5 E5 Bbm
  CH: "[gb2,db3]@3 [ab4,c5,eb5]@2 ~ [f4,ab4,b4,d5]@6, [ab4,f5]@2 ~@10 bb2@7 ~@5, db5 ~@23", // Gb5 Ab Fdim Db
  CI: "~ eb2@12 bb2 ~@3 bb2@2 eb2@4 ~, [db4,bb4]@2 ~, gb4@13 ~@11", CJ: "~ db2 ~ db2@3 ~@18, [db4,ab4]@5 ~, f4@3 ~",
  CK: "[bb3,b3,eb4,gb4]@11 ~ [a3,ab4]@10 ~@2, ~@3 eb4@2 ~", CL: "[ab3,db4,gb4]@10 ~@2 [a3,eb4,ab4]@9 ~@3",
  CM: "[ab3,db4,f4]@23 ~", CN: "[[g3,c4,db4,f4]@7 ~]/2", CO: "[bb3,c4,eb4,ab4]@11 ~", CP: "[gb3,bb3]@7 ~, eb4@19 ~@5",
  CQ: "[c4,f4,a4]@3 ~", CR: "[bb3,d4,eb4,g4]@7 ~", CS: "[a3,d4,eb4,g4]@5 ~", CT: "[a3,c4,d4,f4]@3 ~",
  CU: "[ab3,c4,d4,gb4]@19 ~@5", CV: "[g3,bb3,d4,g4]@7 ~",
  CW: "[d2,a2,f4]@2 ~@10 [g3,ab3] a3@3 c4@2 d4@2 ~@4, [g3,a3,c4] ~@23", // Dm Abmaj7 Am7
  CX: "[d2,a2,a3,c4] ~@5 [d2,a2,g3,c4,f4]@16 ~@2, f4 ~@11", // D7 Dm7
  CY: "[eb2,bb2,bb3,eb4,g4]@3 ~ [c4,f4,a4] ~@7 [d4,g4,c5]@3 ~ [a4,d5] ~@7, ~@10 [eb2,bb2]@5 ~ e4@2 ~@6", // Eb F Csus2 D5 Eb5
  CZ: "[d2,a2] ~@11 a3@3 ~@3 d4@2 ~@4, ~@10 [d2,a2]@7 ~@7, ~@11 g3@2 ~@11, ~@12 ab3 ~@4 c4@2 ~@5", // D5
  DA: "[[eb2,bb2]@3 ~@21 [c2,g2] ~@8 c2@2 ~ g2@6 c2@6, ~@9 [eb2,bb2]@11 a4@22 ~@6, ~@2 d4@5 ~, ~@8 g4@13 ~@3, ~@4 [e4,bb4,d5]@3 ~]/2", // Eb5 C5 Eb5 Em7b5
  DB: "f2@3 ~@7 f2@2 ~@6 f2@5 ~, [a3,d4,eb4,g4]@19 ~@5, ~ c3", DC: "bb2@3 ~@7 bb2@2 f2@12, [a3,c4,d4,f4]",
  DD: "bb2@3 ~@3 [ab3,c4,db4,f4]@2 ~@4 [eb2,g3,c4,db4,f4]@10 ~@2", DE: "[d2,g3,a3,c4,f4] ~@5 [d2,g3,a3,c4,f4]@15 ~@3",
  DF: "[c2,g2,e3,f3,a3,bb3,d4] ~@5 [c2,g2,a3,bb3,d4]@16 ~@2, ~@3 e3@7 ~@2", // C7 Gm
  DG: "[eb2,bb2,bb4]@4 [c5,f5,a5] ~@5 [eb2,bb2]@11 ~@3, [eb5,g5] ~@7", DH: "[eb2,bb2] ~@4 [eb2,bb2]@6 ~",
  DI: "[d2,a2]@2 ~@10 [g3,ab3] a3@3 ~ c4@2 d4@2 ~@3, ~@5 [d2,a2]@5 ~@2", // D5 Abmaj7 D5
  DJ: "[[f2,c3,c5,g5]@4 [a5,b5] ~@13 b5@2 ~ a5 ~ g5@2 ~ f5 ~@3 [f5,a5]@3 ~@3 [eb5,g5]@3 ~ f5 eb5@2 ~@5 [d2,a2]@2 ~@11 [g3,ab3] ~@3 c4@2 d4@2 ~@3, b5@3 ~ c6@2 ~@12 g5 ~ c6@2 ~ f2@8 ~@5 [eb2,bb2]@10 ~@12 d2@10 ~@4, a5 ~@9 [f2,c3]@12 ~ c3@10 ~@26 a2@9 ~@4, ~@23 b5 ~@3 a5@2 g5@2 ~@8 a5@2 ~@5 [e5,f5,a5]@13 ~@2 a3@3 ~@8, ~@14 b5 ~@21]/3", // Fsus2 Asus2 F Eb D5 Abmaj7 Eb5 F5 …
  DK: "[a2,a3,c4,f4] ~@5 [d2,a2,g3,c4,f4]@16 ~@2, d2 ~@11", // F Dm7
  DL: "[eb2,bb2]@4 [c5,f5] ~@5 eb2@12 ~@2, [bb4,g5]@3 ~@6 bb2@11 ~@4, eb5 ~@3 a5@2 ~@18", // Eb5 F5 Eb
  DM: "[eb2,bb2]@3 ~@7 [ab2,gb3,c4,d4]@14", // Eb5 Ab7
  DN: "~ a2@2 ~@9 [g3,ab3] ~@3 c4@2 d4@2 ~@4, d2 ~@4 [d2,a2]@5 ~@2, ~@4 a3 ~@3", // Abmaj7 D5
  DO: "[d2,a2,a3] ~@5 [d2,a2,c4,f4]@15 ~@3, [c4,f4]@2 ~@4 g3@13 ~@5", // D5 Dm7 F5
  DP: "[f2,c3,c5,g5,b5]@4 [a5,c6] ~@13 [g5,b5] ~ c6@2 g5@2, ~@5 [f2,c3]@6 ~, ~@20 a5 ~ b5 ~", // Fsus2 Am G F5
  DQ: "[~@2 a5@2 [g5,b5] ~ [f2,f5,a5]@2 ~@3 [eb5,g5]@4 a5@2 ~ a5 ~@4 [d2,a2]@3 ~@10 [f3,ab3] ~@3 c4@2 d4@2 ~@4, c3@3 ~@9 g3 ~@3, f2@5 ~@6 [eb2,bb2]@10 ~@12 [d2,a2]@10 ~@5, ~@2 f5 ~@12 f5 ~ eb5@2 ~@2 [e5,f5,a5]@12 ~@15]/2", // G F Eb D5 Fm Eb5 D5 Fmaj7
  DR: "[eb2,bb2] ~@4 [ab2,gb3,c4,d4]@7", DS: "~ a2@2 ~@8 g3 a3@3 ~ c4@2 d4@2 ~@4, d2 ~@4 [d2,a2]@5 ~@2, ~@12 ab3 ~@11",
  DT: "[f2,c3,c5,g5]@4 [a5,b5,c6] ~@13 b5@2 c6@2 [g5,b5] ~, b5@3 ~@7 [f2,c3]@12 ~@2, ~@18 g5 ~ a5 ~@3", // Fsus2 Am G F5
  DU: "[~@2 a5@2 [g5,b5]@2 [f2,f5]@2 ~@4 [eb5,g5]@4 [f5,a5]@2 eb5@2 ~@2 g5 ~ [d2,a2]@3 ~@7 c2 ~ [g3,ab3] a3@3 c4@2 d4@2 ~@4, c3@3 ~@13, f2@2 ~@4 [eb2,bb2]@5 ~@6 [d2,a2]@5 ~@2, ~@2 f5 ~@3 a5 ~@15 [e5,f5,a5]@12 ~@14]/2", // G F Eb F D5 Abmaj7 Eb5 D5 …
  DV: "[[f2,c3,c5,g5,b5]@4 [a5,c6] ~@13 b5@2 [a5,c6]@2 ~@2 f2@9 ~@15, ~@9 [f2,c3]@12 ~@2 c3@10 ~@15, ~@18 g5 ~@3 [g5,b5]@2 ~@24]/2", // Fsus2 Am F5 G
})).s("gm_epiano1").gain(0.56).pan(0.3)

// bass · electric bass finger · "Bass"
const bass = note(`<
  ~ A B C D E F G H B I J K L M G N O P G Q@2 R S T U V W X Y Z AA T AB AC AD AE AF AG AH AI AJ AK AL AM G AN AO G AP AQ
  AR AS AT AU AV AW AP AX AY AZ BA BB BC BD BE BF BG BH BI BJ T BK BL BM BN BO BP@2 T BQ BR BS BT BU BV@2 BW BX BY AO G
  BZ CA CB G H CC AR CD CE AO AV G@2 AX CF CG CH CI CJ CK CL CM@2 CN CO CP CQ CR CS CT CU@2 T AR CV CW CX CY CZ AO G DA
  DB AO DC H DD DE CD DF DG DH DI DJ DK DL DM DN DO DP DJ DQ DO DR DM DS DT DR DU DV DW DR DX DY@2 DP DZ EA EB DR DM ~
>`.pickRestart({
  A: "~ gb1 ~@7 gb1@12 ~@3", B: "gb1 ~@4 gb1@6 ~", C: "b1@3 ~@7 b1@13 ~", D: "ab1@3 ~@6 ab1@14 ~", E: "e1@2 ~@7 e1@15",
  F: "ab1@2 ~@7 ab1@10 ~@5", G: "eb2@2 ~@8 eb2@11 ~@3", H: "eb2 ~@4 eb2@7", I: "b1@2 ~@7 b1@13 ~@2",
  J: "ab1@2 ~@7 ab1@14 ~", K: "b1!2 ~@8 b1@13 ~", L: "e2@2 ~@8 e2@11 ~@3", M: "e2@3 ~@7 a1@14",
  N: "~ eb2@2 ~@7 eb2@12 ~@2", O: "e1 ~@2 e1@4 ~", P: "e1@3 ~@7 a1@14",
  Q: "[eb2@2 ~@9 eb2@15 bb1@4 ~@5 bb1@2 f2@5 ~@6]/2", R: "bb2@3 ~@7 bb2@2 f2@6 bb1@2 ~@2 bb1@2",
  S: "~@10 bb1 ~ f2@6 bb1@4 ~@2", T: "c2@2 ~@3 c2 g2@3 c2@3", U: "eb2@4 ~@6 eb2@2 ~@5 eb2 ~@3 eb2 ~@2, ~@13 bb2@9 ~@2",
  V: "~@10 eb2@2 bb2@6 eb2@5 ~", W: "~ db2@4 ~@5 db2@2 ~ ab2@5 db2@6", X: "~ ab2@4 ~@5 ab2@2 eb2@6 ab2@5 ~",
  Y: "gb2@5 ~@5 gb2@2 db2@5 ~ gb2@5 ~", Z: "bb2@2 ~@4 bb2@3 c3@2 ~ db3@3 ~ c3@2 bb2@3 ~@3",
  AA: "bb2@3 ~@2 f2@6 ~ db2@6 bb1@6", AB: "d2@5 ~@5 d2@2 a2@6 d2@6", AC: "bb1@4 ~@6 bb1@2 ~ f2@5 bb2@3 ~ bb2@2",
  AD: "~@5 bb2 f2@3 bb1@3", AE: "~ c2@5 ~@4 c2 ~@2 g2@5 c2@6, ~ d2 ~@22", AF: "f2@7 ~@3 f2@2 ~ c2@5 f2@6",
  AG: "~ bb2@6 ~@2 bb2@2 ~ f2@6 f2@5 ~", AH: "gb2@6 ~@4 bb1@2 ~ d2@3 ~@3 eb2@2 ~ d2@2, ~@13 db2 ~@10",
  AI: "~ g2@2 ~@6 eb2@2 ~ eb2@12", AJ: "a2@4 ~@6 a2@3 e2@10 ~", AK: "d2@3 ~@10 a1@4 b1@2 d2@3 ~@2", AL: "f2 ~@2 d2@9",
  AM: "eb2 ~@4 eb2@5 ~@2", AN: "d2@3 ~@7 d2@2 ~ a1@3 c2@2 d2@3 ~@3", AO: "d2@2 ~@4 d2@17 ~", AP: "eb2@3 ~@7 eb2@14",
  AQ: "c2@3 ~@6 c2@2 ~ g2@6 c2@6", AR: "f2@4 ~@6 f2@2 c2@5 ~ a1@6", AS: "bb1@5 ~@4 bb1@2 ~ f2@6 bb2@5 ~",
  AT: "bb1@11 ~ eb2@11 ~", AU: "d2@2 ~@4 d2@15 ~@3", AV: "c2@2 ~@4 c2@17 ~", AW: "eb2@3 ~@7 eb2@9 ~@5",
  AX: "e2 ~@4 e2@7", AY: "gb2@3 ~@9 a2@5 ~@7", AZ: "~@2 d2@4 ~@5 eb2@2 bb2@5 eb2@3 ~@3",
  BA: "db2@4 ~@5 db2@2 ab2@6 db2@4 ~@3", BB: "b1@12 ~@2 eb2@2 ~ b1@6 ~", BC: "e2@2 ~@2 e2@8 a2@5 a2@7",
  BD: "~ eb2@3 ~@8 eb2@9 ~@3", BE: "eb2@2 ~@11 eb2@9 ~@2", BF: "~ eb2@2 ~@7 eb2@2 bb1@5 ~ c2@2 ~@4",
  BG: "eb2@3 ~@6 eb2 ~@2 eb2@6 f2@5 ~", BH: "bb1@3 ~@7 bb1@7 ~ f2@3 ~@3",
  BI: "bb2@3 ~@3 bb2@4 c3@2 db3@4 c3@2 bb2@4 ~@2", BJ: "bb2@3 ~@7 f2@2 db2@5 ~ bb1@5 ~",
  BK: "f2@2 eb2@4 ~@4 eb2@2 bb2@9 ~ eb2 ~", BL: "eb3@2 ~@2 eb3 ~@4 eb3@2 ~ bb2@4 ~@2 gb2@4 ~@2",
  BM: "~ c2@2 ~ db2@3 ~@2 db2@2 ~ ab2@8 ~ db2@3, ~ db2 ~@22", BN: "ab2@5 ~@4 ab2@2 ~ eb2@6 ab2@5 ~",
  BO: "gb2@4 ~@5 gb2@2 db2@6 ~ gb2@6", BP: "[bb1@4 ~@2 bb1@3 c2@2 ~ db2@3 ~ c2@2 bb1@11 ~ f2@4 ~@2 db2@5 ~ bb1@5 ~]/2",
  BQ: "d2@5 ~@5 d2@2 a2@5 ~ d2@4 ~@2", BR: "bb1@7 ~@3 bb1@2 ~ f2@5 bb2@3 ~ bb2@2", BS: "~@5 bb2 f2@3 bb1@2 ~",
  BT: "c2@4 ~@6 c2@2 ~ eb2@5 e2@5 ~", BU: "f2@7 ~@3 f2@2 c2@11 ~",
  BV: "[bb1@6 ~@4 bb1@2 f2@6 bb1@8 eb2@4 ~@3 e2@2 ~ e2@11 ~]/2", BW: "eb2@5 ~@4 eb2@2 ~ bb1@6 eb2@6",
  BX: "a2@8 ~@2 a2@2 eb2 a1@10 ~", BY: "d2@3 ~@10 a1@3 c2@2 d2@3 ~@3", BZ: "eb2@3 ~@7 eb2@12 ~@2",
  CA: "d2@3 ~@7 d2@12 ~@2", CB: "d2 ~ d2@6", CC: "c2@3 ~@7 c2@2 g2@5 ~ c2@5 ~", CD: "bb1@5 ~@5 bb1@2 f2@12",
  CE: "~@4 bb1@2 ~@2 bb1@3 ~@2 eb2@11, ~@13 db2 ~@10", CF: "gb2@2 ~@4 a2@3 ~ bb2@2",
  CG: "~ eb2@3 ~@6 eb2 ~ bb2@6 eb2@4 ~@2", CH: "db2@6 ~@4 db2 ~ ab2@5 ~ db2@4 ~@2", CI: "b1@9 ~@3 b1@10 ~@2",
  CJ: "e2@12 a2@4 ~ a2 a2@2 ~ bb2@3, ~@18 ab2 ~@5", CK: "~@2 eb2@4 ~@3 bb2@14 ~",
  CL: "c2@7 ~@3 c2@2 g2@4 ~@2 c2@4 ~@2, d2 ~@23",
  CM: "[~@2 f2@4 eb2 ~@2 eb2@2 ~ bb2@7 ~@2 bb2 ~ eb2@6 ~@5 eb2@2 bb2@5 ~ eb2@4 ~@2]/2",
  CN: "~ db2@5 ~@4 db2@2 ~ ab2@5 ~ db2@5", CO: "ab2@4 ~@5 ab2@2 ~ eb2@6 ab2@5 ~", CP: "~ gb2@3 ~@6 gb2@2 db2@6 gb2@5 ~",
  CQ: "bb2@4 ~@5 bb2@2 ~ db3@4 ~ c3@6 ~", CR: "bb2@4 ~@2 f2@3 ~@3 db2@2 ~@2 db2@2 bb1@5 ~",
  CS: "c2@4 ~@5 c2@2 g2@6 c2@6 ~", CT: "d2@3 ~@6 d2@2 ~ a2@6 d2@5 ~",
  CU: "[bb1@5 ~@5 bb1@2 f2@4 bb1 ~ bb2@4 ~ bb2@2 ~@9 bb2@2 f2@6 bb1@4 ~@2]/2", CV: "bb1@4 ~@5 bb1@2 ~ f2@6 bb1@6",
  CW: "e2@5 ~@5 e2@2 ~ bb2@5 e2@6", CX: "~ eb2@5 ~@4 eb2@2 bb2@6 eb2@6", CY: "a2@6 ~@3 a2 eb2@2 a1@10 c2@2",
  CZ: "~ d2@3 ~@9 a1@3 c2@2 d2@3 ~@3", DA: "eb2@2 ~@9 eb2@11 ~@2", DB: "d2@3 ~@8 d2 ~ a1@4 c2 ~ d2@2 ~@3",
  DC: "f2 ~@4 eb2@5 ~@2", DD: "c2@4 ~@5 c2@2 ~ g2@6 c2@6", DE: "f2@4 ~@5 f2@2 ~ c2@6 a1@6",
  DF: "bb1@2 ~@4 bb1@3 ~@3 eb2@11 ~", DG: "d2 ~@2 d2@9", DH: "~ c2@2 ~@4 c2@17", DI: "[eb2,bb2] ~@2 [eb2,bb2]@4 ~",
  DJ: "[eb2,bb2]@2 ~@8 [eb2,bb2]@11 ~@3", DK: "[d2,a2]@2 ~@9 [d2,a2]@2 a1@3 c2 ~ d2@2 ~@4", DL: "d2@2 ~@4 [d2,a2]@17 ~",
  DM: "c3@2 ~@8 [f2,c3]@11 ~@3, f2 ~@23", DN: "[f2,c3] ~@5 [eb2,bb2]@5 ~", DO: "[d2,a2] ~@4 [d2,a2]@5 ~@2",
  DP: "[d2,a2] ~@5 [d2,a2]@16 ~@2", DQ: "[eb2,bb2]@3 ~@7 ab2@4 ab2@8 ~@2", DR: "[d2,a2]@2 ~@4 [d2,a2]@17 ~",
  DS: "[f2,c3] ~@4 [eb2,bb2]@6 ~", DT: "[d2,a2]@3 ~@7 [d2,a2]@11 ~@3", DU: "~ bb2@2 ~@6 [eb2,bb2]@12 ~@3, ~ eb2 ~@22",
  DV: "[eb2,bb2]@3 ~@7 [ab2,eb3]@13 ~", DW: "~ [d2,a2]@2 ~@8 a2@11 ~@2, ~@10 d2@11 ~@3",
  DX: "c3 ~@4 [f2,c3]@6 ~, f2 ~@23", DY: "[[f2,c3]@2 ~@8 [eb2,bb2]@12 ~ [d2,a2]@2 ~@9 [d2,a2]@10 ~@4]/2",
  DZ: "[eb2,bb2]@2 ~@7 [eb2,bb2]@12 ~@3", EA: "[eb2,bb2]@3 ~@7 [ab2,eb3]@14", EB: "[d2,a2] ~@4 [d2,a2]@6 ~",
})).s("gm_electric_bass_finger").gain(0.41)

// drums · kick
const kick = s("bd").struct("<~ [x ~@4 x ~@6]!12 x ~@160>").gain(0.36)

// drums · low tom
const low_tom = s("lt").struct("<[~@5 x] ~@173>").gain(0.41)

// drums · mid tom
const mid_tom = s("mt").struct("<[~@3 x!2 ~] ~@173>").gain(0.46)

stack(epiano1, bass, kick, low_tom, mid_tom)

More by Steely Dan