Strudelify

Dedicated To The One I Love

The Mamas & The Papas

KeyG majorTempo104 bpm
0:00/0:00
// Dedicated To The One I Love — The Mamas & The Papas
// 104 bpm, 6/8, key G 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/8 at bar 1, 2/2 at bar 23, 6/8 at bar 24, 2/2 at bar 27, ...) are rendered on a constant 6/8 grid of one bar per cycle
// note: Full arrangement: all 106 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(104/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: edit a riff to change every repeat.

// chords · acoustic guitar steel
const acoustic_guitar_steel = note(`<
  A@2 B C D E F G H E F G I J K@2 L M N O P Q@6 R@8 S@8 T@2 U@7 V@6 W X Y Z@2 ~@9 AA AB AC AD AE AF AG@3 AH AI AJ@3 AK@5
  AL@3 AM@6 AN@4 ~ AO
>`.pickRestart({
  A: "~ d4@4 c4@4 d4@4 g4@4 d4@4 c4@3, ~ [d2,f#3,a3]@12 d2@11", // D
  B: "~ d4@4 c4@4 d4@4 ~@4 [f#3,c4]@4 [f#3,c4]@3, ~ [d2,f#3,a3]@12 [d2,d4]@11", // F#dim D
  C: "~@5 [a3,c4]@4 [a3,c4]@4 f#4@4 e4@4 d4@3, ~ [d2,e4]@12 [d2,a3,c4]@11", // Am Dsus2 D7
  D: "~ g4@4 d4@4 ~@4 g2@4 b2@4 [g2,b3]@3, ~ g2@12 ~@11, ~ b3@8 [b3,d4]@12 ~@3", // G Bm
  E: "~ [g3,b3,d4]@4 ~@4 b2@4 e2@4 b2@4 e2@3, ~ e2@8 ~@15, ~@5 [g3,b3,e4]@19", // G Em
  F: "~@5 [c4,e4]@4 [c4,e4]@4 ~@8 d4@3, ~ c2@12 c2@11, ~@17 [c4,e4]@7", // C
  G: "~@5 [a3,c4]@4 [a3,c4]@4 ~@8 f#4@3, ~ e4@20 ~@3, ~ d2@12 d2@11, ~@17 [a3,c4]@7", // Am
  H: "~@5 [b3,d4]@4 [b3,d4]@4 d4@4 e4@4 b3@3, ~ [g2,g4]@12 g2@11, ~@13 b3@8 ~@3", // Bm G
  I: "~@5 [b3,e4]@4 [b3,e4]@4 d4@4 e4@4 [g3,b3]@3, ~ [e2,g4]@12 e2@11, ~@13 b3@8 ~@3", // E5 G Em
  J: "~ [f#3,d4]@4 ~@4 b2@4 b2@4 b2@4 b2@3, ~ b2@8 ~@15, ~@5 [f#3,b3]@19", // D B5
  K: "[~@9 a3@2 a3@2 d4@2 d4@2 ~@8 d2@4 ~@4 g3@4 b3@4 b3@4 b3@3, ~ a2@24 ~@4 d2@8 d2@11, ~@17 [f#3,a3,c4]@16 ~@15]/2", // F#dim
  L: "~ g2@4 g2@4 g2@4 g2@4 g2@4 g2@3, ~ g3@23", M: "~@5 [b3,d4]@4 [b3,d4]@4 ~@4 [b3,d4]@4 [b3,d4]@3, ~ g2@12 g2@11",
  N: "~@5 [f#3,c4]@4 [f#3,c4]@4 ~@4 [f#3,c4]@4 [f#3,c4]@3, ~ d2@23, ~@13 d4@11", // F#dim
  O: "~@9 e4@4 f#4@4 e4@4 d4@3, ~ d2@12 [d2,a3,c4]@11, ~ e4@8 ~@15, ~@5 [a3,c4]@8 ~@11", // D7 Am
  P: "~ g4@2 g4@2 ~@4 d3@4 ~@8 g4@3, ~ [b3,d4]@12 ~@4 [b3,d4]@7, ~ g2@8 ~@4 g2@11, ~@5 g4@16 ~@3", // Bm
  Q: "[~ [g2,d4,g4]@7 d2@7 d2@7 d2@7 d2@4 d2@4 d2@4 d4@4 d4@4 d4@4 f#4@4 ~@4 [a3,c4]@4 ~@4 [a3,c4]@4 [a3,c4]@4 ~@8 g4@4 ~@8 g4@4 [g2,g4]@7 d2@7 d2@7 d2@7 ~@8 d2@4 [d2,d4]@3, ~@8 [d4,g4,a4]@33 [d2,a3,c4]@12 d2@12 g2@12 g2@12 d2@12 ~@28 d2@8 ~@7, ~@57 f#4@20 g4@8 ~@4 g4@8 ~@11 a4@33 ~@3, ~@81 [b3,d4]@8 ~@4 [b3,d4]@8 ~@7 [d4,e4,g4]@21 ~@4 [d4,g4]@8 ~@3]/6", // G5 Am G D Dsus4 D7 Bm Em7 …
  R: "[~ d3@4 a2@4 ~@4 [a3,c4]@4 [a3,c4]@4 f#4@4 e4@4 d4@4 g2@4 g2@4 g2@4 [a#3,g4]@4 e4@4 c#4@4 ~@4 [g3,b3]@4 [g3,b3]@4 ~@4 [g3,b3]@4 [g3,b3]@4 g2@4 g2@4 g2@4 d5@4 d5@4 c5@2 c5@2 b4@4 b4@4 g4@4 g4@4 b4@4 b4@12 g4@4 a4@4 ~@4 [d4,b4]@4 [d4,b4]@4 [e4,c5]@4 g2@4 g2@4 g2@4 g2@4 g2@4 [g2,d4,g4]@4 g2@4 g2@3, ~@9 [d2,e4]@12 [d3,a3,c4]@12 [a#3,c#4,e4,g4]@12 g2@12 d4@26 ~@54 [d4,b4]@12 ~@12 [d4,b4]@12 ~@12 [d4,b4]@7, ~@57 g2@12 d2@12 g3@12 d2@44 g2@24 ~@31, ~@145 g4@8 ~@39]/8", // Am D# G C G5 Dsus2 D7 A#dim …
  S: "[~ [g2,d4,b4]@4 g2@4 g2@4 [g2,e4,b4]@4 [g4,d5]@4 [g4,d5]@4 [e4,c5]@4 g2@4 ~@4 d5@4 [b4,d5,g5]@4 ~@4 g2@4 ~@4 d5@4 c5@4 [d4,g4,c5]@4 ~@4 g2@4 g2@4 g2@4 g2@4 [b4,d5,g5]@4 ~@4 g2@4 ~@4 d5@4 c5@4 [d4,g4,c5]@4 ~@4 g2@4 g2@4 ~@4 d4@4 [d4,b4]@4 [d4,b4]@4 [d4,b4]@4 [b3,g4]@4 [g4,c5]@6 [e4,a4]@2 g2@4 g2@4 g2@4 g2@4 ~@4 [b3,g4]@4 g2@4 g2@3, ~@5 [d4,b4]@8 ~@4 g2@12 [d4,b4]@8 ~@8 [b4,f5]@12 ~@12 [d4,g4,a#4]@20 ~@4 [b4,f5]@12 ~@12 [d4,g4,b4]@16 ~@28 [d4,b4]@12 ~@12 [d4,b4]@7, ~@33 g2@8 g2@8 ~@4 g2@12 g2@8 ~@16 g2@8 ~@4 g2@12 g2@8 ~@8 g2@8 g2@24 ~@16 g2@8 ~@7]/8", // G Em G5 C G Csus2 G Csus2 …
  T: "[~ [e4,c5]@4 g2@4 ~@4 [e4,c5]@4 g2@4 g2@4 g2@4 ~@4 [b3,d4]@4 e4@4 a2@4 a2@3, ~@5 [g4,d5]@8 ~@4 [d4,b4]@12 ~@12 [c4,a4]@7, ~@9 g2@8 ~@12 g2@12 ~@7]/2", // C Bm G5 G F
  U: "[~ g4@2 f#4@2 a2@4 ~@4 e4@4 a4@4 g4@4 a4@4 a4@4 f#4@4 e4@4 ~@8 f#4@2 e4@2 ~@4 [f#3,c4]@4 [f#3,c4]@4 d2@4 d2@4 d2@4 d2@4 d2@4 d2@4 d2@4 d2@4 d2@4 ~@4 [f#3,c4]@4 [f#3,c4]@4 ~@8 e4@4 f#4@4 e4@4 d4@4 g4@2 g4@2 ~@4 d3@4 ~@8 g4@4 [g2,d4,g4]@7, ~@5 e4@8 ~@28 e4@8 ~@4 d4@44 ~@4 d4@12 e4@8 ~@20 g4@16 ~@11, ~@9 a2@8 [a2,c#4,e4]@12 [a2,c#4]@12 d2@12 d2@12 ~@48 d2@12 [d2,a3,c4]@12 g2@8 ~@4 g2@12 ~@7, ~@45 [a3,c4]@8 ~@12 [f#3,c4]@36 ~@16 [a3,c4]@8 ~@12 [b3,d4]@12 ~@4 [b3,d4]@8 ~@7]/7", // F#dim G5 A D7 Am F#dim Am Bm
  V: "[d2@7 d2@6 d2@7 d2@4 d2@4 d2@4 d4@4 d4@4 d4@4 f#4@4 ~@4 [a3,c4]@4 ~@4 [a3,c4]@4 [a3,c4]@4 ~@8 g4@4 ~@8 g4@4 [g2,g4]@7 d2@7 d2@7 d2@7 ~@8 d2@4 d2@4 d3@4 a2@4, [d4,g4,a4]@8 [d2,a3,c4]@3 d2@3 g2@3 g2@3 d2@3 ~@7 d2@2 ~@4, ~@48 f#4@20 g4@8 ~@4 g4@8 ~@11 a4@33 ~@12, ~@72 [b3,d4]@8 ~@4 [b3,d4]@8 ~@7 [d4,e4,g4]@21 ~@4 [d4,g4]@8 d4@12]/6", // Am G Dsus4 D7 Bm Em7 G5
  W: "~ [a3,c4]!2 f#4 e4 d4, [d2,e4] [d3,a3,c4]", X: "~ [b3,e4]!2 d4 e4 b3, [e2,g4] e2, ~@3 [g3,b3]@2 ~",
  Y: "d4 ~ [f#3,b3] ~ [b3,d4]!2, b2!2, ~ e4@5", // B5 Bm
  Z: "[~@4 a3!2 d4@2 d4@2 ~@2 d2@2 ~@2 g3@2 b3@2 b3@2 b3@2, a2@3 a2@3 ~ d2@2 d2@3, ~@5 [f#3,a3,c4]@3 ~@4]/2", // F#dim
  AA: "d4@2 d4@2 d4@2 d4@2 e4@3 b3, [b2,f#3] [e2,g3]", AB: "~ [g3,b3]!2 ~@2 d4, [g2,d4] g2, ~@2 [g3,b3]",
  AC: "~@2 d4 ~@2 e4, b2 c3, d4@2 ~ f#4@2 ~, ~ [f#3,b3]@2 ~ [g3,c4]@2", AD: "~ [f#3,b3]!2 b2 d#4!2, [b2,d4] ~",
  AE: "~@4 g4 f#4 ~@2 [a#2,g3,a#3]@2 [d#3,g3,a#3]@2, d#3@2 ~, a#4 ~@2, ~ d#4@2 d#4@3", // D#
  AF: "a#4 g#4 a#4 g4 d#4 f4, [d#3,d#4] [d#3,a#3]", // D# D#5
  AG: "[[a3,f#4] ~ d3!4 d3!6 d3 [d3,f#3,c4]!2 ~ [f#3,c4]!2, d3 ~@8, ~ [c4,d4]@12 ~@2 d4@3]/3", // D D7 F#dim Csus2
  AH: "~@2 e4 f#4 e4 d4, d2 [d2,a3,c4], e4 ~@2, ~ [a3,c4]@2 ~@3", // D7 Am
  AI: "g4!2 ~@2 d3@2 ~@4 g4@2, [b3,d4]@3 ~ [b3,d4]@2, g2@2 ~ g2@3, ~ g4@4 ~", // Bm
  AJ: "[[g2,d4,g4]@7 d2@7 d2@7 d2@7 d2@4 d2@4 d2@4 d4@4 d4@4 d4@4 f#4@4 ~@4 [a3,c4]@4 ~@4 [a3,c4]@4, ~@7 [d4,g4,a4]@33 [d2,a3,c4]@12 d2@12 g2@8, ~@7 f#4@2]/3", // G5 Am Dsus4 D7
  AK: "[[a3,c4]@4 ~@8 g4@4 ~@8 g4@4 [g2,g4]@7 d2@7 d2@6 d2@7 ~@8 d2@4 d2@4 d3@4 a2@4 ~@4 [a3,c4]@4 [a3,c4]@4 f#4@4 e4@4 d4@4 g2@4 g2@4 g2@4 [g2,a#3,g4]@4 e4, ~@4 g2@12 d2@12 ~@27 d2@8 ~@16 [d2,e4]@12 [d3,a3,c4]@12 ~@17, ~@4 g4@8 ~@4 g4@8 ~@11 a4@33 ~@52, ~@8 [b3,d4]@8 ~@4 [b3,d4]@8 ~@7 [d4,e4,g4]@21 ~@3 [d4,g4]@8 d4@12 ~@24 [a#3,c#4,e4,g4]@12 ~@5]/5", // Am G Am Gm Dsus2 D7 Bm Em7 …
  AL: "[~@3 c#4@4 ~@4 [g3,b3]@4 [g3,b3]@4 ~@4 [g3,b3]@4 [g3,b3]@4 g2@4 g2@4 g2@4 d5@4 d5@4 c5@2 c5@2 b4@4 b4@3 g4@3 ~ g4@3 b4@3, ~@7 d4@26 ~@39, ~@7 g2@12 d2@12 g3@12 d2@29]/3", // G
  AM: "[~ b4@10 g4@4 e4@4 ~@4 e5@4 d5@4 e5@2 d5@2 e5@2 d5@2 b4@8 e4@2 e4@2 e4@4 e4@4 e4@2 d4@2 c4@8 e5@4 e5@4 d5@2 d5@2 c5@2 b4@2 a4@8 c4@2 c4@2 c4@4 c4@4 c4@2 b3@2 a3@8 e5@4 e5@4 d5@2 d5@2 e5@2 d5@2 c5@8 e5, ~@11 e2@24 e2@24 c2@24 c2@24 a1@24 [a1,g4]@13, ~@19 g4@16 g4@12 ~@36 g4@12 ~@49]/6", // A7
  AN: "[~ e5@2 e5@4 g5@4 g5@6 d5@16 ~@2 e5@48 ~@13, ~@11 g1@72 ~@13]/4", AO: "~@7 a2@4 ~@13",
})).s("gm_acoustic_guitar_steel").gain(0.57)

// chords · piano
const piano = note("<~@63 A B C D E F G H I ~@34>".pickRestart({
  A: "g2!3 [g2,g4,b4] [g2,a4,c5] [g2,b4,d5], [f3,g3], [b4,d5] ~", B: "g2!6, [b4,d5] ~",
  C: "g2!2 [g2,a4,c5] g2!2 [g2,a4,c5], [g4,b4]@2 ~ [g4,b4]@2 ~", D: "[g2,b4,d5]!2 [g2,a4,c5] g2!3, ~ [g4,b4]",
  E: "[g2,b4,d5]!3 [g2,g4,b4,d5]!3", F: "[g2,g4,b4,d5]!3 [g2,b4,d5] [g2,c5,e5] [g2,b4,d5]",
  G: "[g2,g4,b4] [g2,a4,c5] [g2,b4,d5]!2 [g2,c5,e5] [g2,b4,d5]", // G Am7 G C G
  H: "[g2,b4,d5] [g2,c5,e5] [g2,a4,c5] [g2,b4,d5] [g2,c5,e5] [g2,b4,d5]", I: "[g2,b4,d5]!3 g2 b3 c4",
})).s("gm_piano").gain(0.57)

// bass · acoustic bass
const bass = note(`<
  A@4 B C D A E C D A F G H I J E K A L M@5 N O@7 J P@2 Q R Q S@2 T@2 U@4 V W@2 X Y Z@4 AA AB AC AD AE AF AG@8 AH AI AJ
  AK AL AM AN AO AP AQ AR AS AT@5 AU AV@3 AW@8 AX@4 ~@2
>`.pickRestart({
  A: "~ d1@12 d1@11", B: "~ g1@12 g1@4 b1@4 g1@3", C: "~ e1@8 b1@4 e1@4 b1@4 e1@3", D: "~ c1@12 c1@11",
  E: "~ g1@12 g1@11", F: "~ e1@12 e1@11", G: "~ b1@8 b1@4 b1@4 b1@4 b1@3", H: "~ a1@23", I: "~ d1@4 d1@8 d1@11",
  J: "~ g1@4 g1@4 g1@4 g1@4 g1@4 g1@3", K: "~ d1@23", L: "~ g1@8 d2@4 g1@11",
  M: "[~ g1@7 d1@7 d1@7 d1@7 d1@4 d1@4 d1@4 d1@12 d1@12 g1@12 g1@12 d1@12 g1@7 d1@7 d1@5]/5",
  N: "~@2 d1@7 d1@8 d1@4 d1@3",
  O: "[~ d2@4 a1@4 d1@12 d2@12 g1@4 g1@4 g1@4 g1@12 g1@12 d1@12 g1@4 g1@4 g1@4 d1@44 g1@24 g1@4 g1@3]/7",
  P: "[~ g1@4 g1@4 g1@4 g1@4 g1@12 g1@4 g1@8 g1@7]/2", Q: "~ g1@4 g1@12 g1@7", R: "~ g1@4 g1@4 g1@4 g1@4 g1@7",
  S: "[~ g1@4 g1@4 g1@8 g1@24 g1@4 g1@3]/2", T: "[~ g1@4 g1@4 g1@8 g1@4 g1@8 g1@4 g1@8 g1@4 g1@3]/2",
  U: "[~ g1@4 g1@12 a1@4 a1@8 a1@4 a1@8 a1@12 a1@12 d1@12 d1@12 d1@4 d1@3]/4", V: "~ d1@4 d1@4 d1@4 d1@4 d1@4 d1@3",
  W: "[~ d1@4 ~@12 d1@12 d1@12 g1@7]/2", X: "~ d2@4 g1@12 g1@7", Y: "d1@7 d1@6 d1@7 d1@4",
  Z: "[d1@4 d1@4 d1@12 d1@12 g1@12 g1@12 d1@12 g1@7 d1@7 d1@7 d1@7]/4", AA: "d1@2 d1!2 d2 a1", AB: "d1 d2", AC: "e1!2",
  AD: "b1!2", AE: "a1!2", AF: "d1 d1@2 d1@3", AG: "g1!6", AH: "g1!4 ~@2", AI: "b1 e1", AJ: "g1!2", AK: "b1 c2",
  AL: "b1@3 b1 ~@2", AM: "d#2@4 a#1 d#2", AN: "d#2!2", AO: "d2@2 d2!4", AP: "d2!6", AQ: "d2!3 ~@3", AR: "d1!2",
  AS: "g1@2 d2 g1@3", AT: "[g1@7 d1@7 d1@7 d1@7 d1@4 d1@4 d1@4 d1@12 d1@12 g1@12 g1@12 d1@12 g1@7 d1@7 d1@6]/5",
  AU: "d1@7 d1@8 d1@4 d1@4 d2", AV: "[~@3 a1@4 d1@12 d2@12 g1@4 g1@4 g1@4 g1@12 g1@12 d1@5]/3",
  AW: "[~@7 g1@4 g1@4 g1@4 d1@40 e1@24 e1@24 c1@24 c1@24 a0@24 a0@13]/8", AX: "[~@11 g0@72 ~@13]/4",
})).s("gm_acoustic_bass").gain(0.48)

// chords · string ensemble 1
const string_ensemble_1 = note(`<
  ~@16 A B C D E F@6 G@8 H@8 I@2 J@7 K@6 L M N O@2 P Q R S T U V W X Y Z AA AB AC AD AE@3 AF AG AH@3 AI@5 AJ@3 AK@6 AL@4
  ~@2
>`.pickRestart({
  A: "~ g2@4 g2@4 g2@4 g2@4 g2@4 g2@3, ~ g3@23", B: "~@5 [b3,d4]@4 [b3,d4]@4 ~@4 [b3,d4]@4 [b3,d4]@3, ~ g2@12 g2@11",
  C: "~@5 [f#3,c4]@4 [f#3,c4]@4 ~@4 [f#3,c4]@4 [f#3,c4]@3, ~ d2@23, ~@13 d4@11", // F#dim
  D: "~@9 e4@4 f#4@4 e4@4 d4@3, ~ d2@12 [d2,a3,c4]@11, ~ e4@8 ~@15, ~@5 [a3,c4]@8 ~@11", // D7 Am
  E: "~ g4@2 g4@2 ~@4 d3@4 ~@8 g4@3, ~ [b3,d4]@12 ~@4 [b3,d4]@7, ~ g2@8 ~@4 g2@11, ~@5 g4@16 ~@3", // Bm
  F: "[~ [g2,d4,g4]@7 d2@7 d2@7 d2@7 d2@4 d2@4 d2@4 d4@4 d4@4 d4@4 f#4@4 ~@4 [a3,c4]@4 ~@4 [a3,c4]@4 [a3,c4]@4 ~@8 g4@4 ~@8 g4@4 [g2,g4]@7 d2@7 d2@7 d2@7 ~@8 d2@4 [d2,d4]@3, ~@8 [d4,g4,a4]@33 [d2,a3,c4]@12 d2@12 g2@12 g2@12 d2@12 ~@28 d2@8 ~@7, ~@57 f#4@20 g4@8 ~@4 g4@8 ~@11 a4@33 ~@3, ~@81 [b3,d4]@8 ~@4 [b3,d4]@8 ~@7 [d4,e4,g4]@21 ~@4 [d4,g4]@8 ~@3]/6", // G5 Am G D Dsus4 D7 Bm Em7 …
  G: "[~ d3@4 a2@4 ~@4 [a3,c4]@4 [a3,c4]@4 f#4@4 e4@4 d4@4 g2@4 g2@4 g2@4 [a#3,g4]@4 e4@4 c#4@4 ~@4 [g3,b3]@4 [g3,b3]@4 ~@4 [g3,b3]@4 [g3,b3]@4 g2@4 g2@4 g2@4 d5@4 d5@4 c5@2 c5@2 b4@4 b4@4 g4@4 g4@4 b4@4 b4@12 g4@4 a4@4 ~@4 [d4,b4]@4 [d4,b4]@4 [e4,c5]@4 g2@4 g2@4 g2@4 g2@4 g2@4 [g2,d4,g4]@4 g2@4 g2@3, ~@9 [d2,e4]@12 [d3,a3,c4]@12 [a#3,c#4,e4,g4]@12 g2@12 d4@26 ~@54 [d4,b4]@12 ~@12 [d4,b4]@12 ~@12 [d4,b4]@7, ~@57 g2@12 d2@12 g3@12 d2@44 g2@24 ~@31, ~@145 g4@8 ~@39]/8", // Am D# G C G5 Dsus2 D7 A#dim …
  H: "[~ [g2,d4,b4]@4 g2@4 g2@4 [g2,e4,b4]@4 [g4,d5]@4 [g4,d5]@4 [e4,c5]@4 g2@4 ~@4 d5@4 [b4,d5,g5]@4 ~@4 g2@4 ~@4 d5@4 c5@4 [d4,g4,c5]@4 ~@4 g2@4 g2@4 g2@4 g2@4 [b4,d5,g5]@4 ~@4 g2@4 ~@4 d5@4 c5@4 [d4,g4,c5]@4 ~@4 g2@4 g2@4 ~@4 d4@4 [d4,b4]@4 [d4,b4]@4 [d4,b4]@4 [b3,g4]@4 [g4,c5]@6 [e4,a4]@2 g2@4 g2@4 g2@4 g2@4 ~@4 [b3,g4]@4 g2@4 g2@3, ~@5 [d4,b4]@8 ~@4 g2@12 [d4,b4]@8 ~@8 [b4,f5]@12 ~@12 [d4,g4,a#4]@20 ~@4 [b4,f5]@12 ~@12 [d4,g4,b4]@16 ~@28 [d4,b4]@12 ~@12 [d4,b4]@7, ~@33 g2@8 g2@8 ~@4 g2@12 g2@8 ~@16 g2@8 ~@4 g2@12 g2@8 ~@8 g2@8 g2@24 ~@16 g2@8 ~@7]/8", // G Em G5 C G Csus2 G Csus2 …
  I: "[~ [e4,c5]@4 g2@4 ~@4 [e4,c5]@4 g2@4 g2@4 g2@4 ~@4 [b3,d4]@4 e4@4 a2@4 a2@3, ~@5 [g4,d5]@8 ~@4 [d4,b4]@12 ~@12 [c4,a4]@7, ~@9 g2@8 ~@12 g2@12 ~@7]/2", // C Bm G5 G F
  J: "[~ g4@2 f#4@2 a2@4 ~@4 e4@4 a4@4 g4@4 a4@4 a4@4 f#4@4 e4@4 ~@8 f#4@2 e4@2 ~@4 [f#3,c4]@4 [f#3,c4]@4 d2@4 d2@4 d2@4 d2@4 d2@4 d2@4 d2@4 d2@4 d2@4 ~@4 [f#3,c4]@4 [f#3,c4]@4 ~@8 e4@4 f#4@4 e4@4 d4@4 g4@2 g4@2 ~@4 d3@4 ~@8 g4@4 [g2,d4,g4]@7, ~@5 e4@8 ~@28 e4@8 ~@4 d4@44 ~@4 d4@12 e4@8 ~@20 g4@16 ~@11, ~@9 a2@8 [a2,c#4,e4]@12 [a2,c#4]@12 d2@12 d2@12 ~@48 d2@12 [d2,a3,c4]@12 g2@8 ~@4 g2@12 ~@7, ~@45 [a3,c4]@8 ~@12 [f#3,c4]@36 ~@16 [a3,c4]@8 ~@12 [b3,d4]@12 ~@4 [b3,d4]@8 ~@7]/7", // F#dim G5 A D7 Am F#dim Am Bm
  K: "[d2@6 d2@7 d2@7 d2@4 d2@4 d2@4 d4@4 d4@4 d4@4 f#4@4 ~@4 [a3,c4]@4 ~@4 [a3,c4]@4 [a3,c4]@4 ~@8 g4@4 ~@8 g4@4 [g2,g4]@7 d2@7 d2@7 d2@7 ~@8 d2@4 d2@4 d3@4 a2@4, [d4,g4,a4]@8 [d2,a3,c4]@3 d2@3 g2@3 g2@3 d2@3 ~@7 d2@2 ~@4, ~@48 f#4@20 g4@8 ~@4 g4@8 ~@11 a4@33 ~@12, ~@72 [b3,d4]@8 ~@4 [b3,d4]@8 ~@7 [d4,e4,g4]@21 ~@4 [d4,g4]@8 d4@12]/6", // Am G Dsus4 D7 Bm Em7 G5
  L: "~ [a3,c4]!2 f#4 e4 d4, [d2,e4] [d3,a3,c4]", M: "~ [b3,e4]!2 d4 e4 b3, [e2,g4] e2, ~@3 [g3,b3]@2 ~",
  N: "d4 ~ [f#3,b3] ~ [b3,d4]!2, b2!2, ~ e4@5", // B5 Bm
  O: "[~@4 a3!2 d4@2 d4@2 ~@2 d2@2 ~@2 g3@2 b3@2 b3@2 b3@2, a2@3 a2@3 ~ d2@2 d2@3, ~@5 [f#3,a3,c4]@3 ~@4]/2", // F#dim
  P: "g2!3 [g2,g4,b4] [g2,a4,c5] [g2,b4,d5], [f3,g3], [b4,d5] ~", Q: "g2!6, [b4,d5] ~",
  R: "g2!2 [g2,a4,c5] g2!2 [g2,a4,c5], [g4,b4]@2 ~ [g4,b4]@2 ~", S: "[g2,b4,d5]!2 [g2,a4,c5] g2!3, ~ [g4,b4]",
  T: "[g2,b4,d5]!3 [g2,g4,b4,d5]!3", U: "[g2,g4,b4,d5]!3 [g2,b4,d5] [g2,c5,e5] [g2,b4,d5]",
  V: "[g2,g4,b4] [g2,a4,c5] [g2,b4,d5]!2 [g2,c5,e5] [g2,b4,d5]", // G Am7 G C G
  W: "[g2,b4,d5] [g2,c5,e5] [g2,a4,c5] [g2,b4,d5] [g2,c5,e5] [g2,b4,d5]", X: "[g2,b4,d5]!3 g2 b3 c4",
  Y: "d4@2 d4@2 d4@2 d4@2 e4@3 b3, [b2,f#3] [e2,g3]", Z: "~ [g3,b3]!2 ~@2 d4, [g2,d4] g2, ~@2 [g3,b3]",
  AA: "~@2 d4 ~@2 e4, b2 c3, d4@2 ~ f#4@2 ~, ~ [f#3,b3]@2 ~ [g3,c4]@2", AB: "~ [f#3,b3]!2 b2 d#4!2, [b2,d4] ~",
  AC: "~@4 g4 f#4 ~@2 [a#2,g3,a#3]@2 [d#3,g3,a#3]@2, d#3@2 ~, a#4 ~@2, ~ d#4@2 d#4@3", // D#
  AD: "a#4 g#4 a#4 g4 d#4 f4, [d#3,d#4] [d#3,a#3]", // D# D#5
  AE: "[[a3,f#4] ~ d3!4 d3!6 d3 [d3,f#3,c4]!2 ~ [f#3,c4]!2, d3 ~@8, ~ [c4,d4]@12 ~@2 d4@3]/3", // D D7 F#dim Csus2
  AF: "~@2 e4 f#4 e4 d4, d2 [d2,a3,c4], e4 ~@2, ~ [a3,c4]@2 ~@3", // D7 Am
  AG: "g4!2 ~@2 d3@2 ~@4 g4@2, [b3,d4]@3 ~ [b3,d4]@2, g2@2 ~ g2@3, ~ g4@4 ~", // Bm
  AH: "[[g2,d4,g4]@7 d2@7 d2@7 d2@7 d2@4 d2@4 d2@4 d4@4 d4@4 d4@4 f#4@4 ~@4 [a3,c4]@4 ~@4 [a3,c4]@4, ~@7 [d4,g4,a4]@33 [d2,a3,c4]@12 d2@12 g2@8, ~@7 f#4@2]/3", // G5 Am Dsus4 D7
  AI: "[[a3,c4]@4 ~@8 g4@4 ~@8 g4@4 [g2,g4]@7 d2@6 d2@7 d2@7 ~@8 d2@4 d2@4 d3@4 a2@4 ~@4 [a3,c4]@4 [a3,c4]@4 f#4@4 e4@4 d4@4 g2@4 g2@4 g2@4 [g2,a#3,g4]@4 e4, ~@4 g2@12 d2@12 ~@27 d2@8 ~@16 [d2,e4]@12 [d3,a3,c4]@12 ~@17, ~@4 g4@8 ~@4 g4@8 ~@11 a4@33 ~@52, ~@8 [b3,d4]@8 ~@4 [b3,d4]@8 ~@7 [d4,e4,g4]@21 ~@3 [d4,g4]@8 d4@12 ~@24 [a#3,c#4,e4,g4]@12 ~@5]/5", // Am G Am Gm Dsus2 D7 Bm Em7 …
  AJ: "[~@3 c#4@4 ~@4 [g3,b3]@4 [g3,b3]@4 ~@4 [g3,b3]@4 [g3,b3]@4 g2@4 g2@4 g2@4 d5@4 d5@4 c5@2 c5@2 b4@4 b4@3 g4@3 ~ g4@3 b4@3, ~@7 d4@26 ~@39, ~@7 g2@12 d2@12 g3@12 d2@29]/3", // G
  AK: "[~ b4@10 g4@4 e4@4 ~@4 e5@4 d5@4 e5@2 d5@2 e5@2 d5@2 b4@8 e4@2 e4@2 e4@4 e4@4 e4@2 d4@2 c4@8 e5@4 e5@4 d5@2 d5@2 c5@2 b4@2 a4@8 c4@2 c4@2 c4@4 c4@4 c4@2 b3@2 a3@8 e5@4 e5@4 d5@2 d5@2 e5@2 d5@2 c5@8 e5, ~@11 e2@24 e2@24 c2@24 c2@24 a1@24 [a1,g4]@13, ~@19 g4@16 g4@12 ~@36 g4@12 ~@49]/6", // A7
  AL: "[~ e5@2 e5@4 g5@4 g5@6 d5@16 ~@2 e5@48 ~@13, ~@11 g1@72 ~@13]/4",
})).s("gm_string_ensemble_1").gain(0.48).pan(0.4)

// other · string ensemble 1
const string_ensemble_1_2 = note(`<
  A@4 B@3 A C D@2 A E F@2 G H@2 I A J K@5 L M@7 N O@2 P Q P R@2 S@2 T@4 U V@2 W X Y@4 Z AA AB AC AD AE AF@8 AG AH AI AJ
  AK AL AM AN AO AP AQ AR AS@5 AT AU@3 AV@8 AW@4 ~@2
>`.pickRestart({
  A: "~ d3@6 d3@5", B: "[~ g3@6 g3@2 b3@2 g3@2 e3@4 b3@2 e3@2 b3@2 e3@2 c3@6 c3@5]/3", C: "~ g3@6 g3@5",
  D: "[~ e3@4 b3@2 e3@2 b3@2 e3@2 c3@6 c3@5]/2", E: "~ e3@6 e3@5", F: "[~ b3@4 b3@2 b3@2 b3@2 b3@2 a3@11]/2",
  G: "~ d3@2 d3@4 d3@5", H: "[~ g3@2 g3@2 g3@2 g3@2 g3@2 g3@2 g3@6 g3@5]/2", I: "~ d3@11", J: "~ g3@4 d4@2 g3@5",
  K: "[~@2 g3@6 d3@7 d3@7 d3@7 d3@4 d3@4 d3@4 d3@12 d3@12 g3@12 g3@12 d3@12 g3@7 d3@7 d3@5]/5",
  L: "~@2 d3@7 d3@8 d3@4 d3@3",
  M: "[~ d4@4 a3@4 d3@12 d4@12 g3@4 g3@4 g3@4 g3@12 g3@12 d3@12 g3@4 g3@4 g3@4 d3@44 g3@24 g3@4 g3@3]/7",
  N: "~ g3@4 g3@4 g3@4 g3@4 g3@4 g3@3", O: "[~ g3@4 g3@4 g3@4 g3@4 g3@12 g3@4 g3@8 g3@7]/2", P: "~ g3@4 g3@12 g3@7",
  Q: "~ g3@4 g3@4 g3@4 g3@4 g3@7", R: "[~ g3@4 g3@4 g3@8 g3@24 g3@4 g3@3]/2",
  S: "[~ g3@4 g3@4 g3@8 g3@4 g3@8 g3@4 g3@8 g3@4 g3@3]/2",
  T: "[~ g3@4 g3@12 a3@4 a3@8 a3@4 a3@8 a3@12 a3@12 d3@12 d3@12 d3@4 d3@3]/4", U: "~ d3@4 d3@4 d3@4 d3@4 d3@4 d3@3",
  V: "[~ d3@4 ~@12 d3@12 d3@12 g3@7]/2", W: "~ d4@4 g3@12 g3@7", X: "d3@7 d3@7 d3@6 d3@4",
  Y: "[d3@4 d3@4 d3@12 d3@12 g3@12 g3@12 d3@12 g3@7 d3@7 d3@7 d3@7]/4", Z: "d3@2 d3!2 d4 a3", AA: "d3 d4", AB: "e3!2",
  AC: "b3!2", AD: "a3!2", AE: "d3 d3@2 d3@3", AF: "g3!6", AG: "g3!4 ~@2", AH: "b3 e3", AI: "g3!2", AJ: "b3 c4",
  AK: "b3@3 b3 ~@2", AL: "d#4@4 a#3 d#4", AM: "d#4!2", AN: "d4@2 d4!4", AO: "d4!6", AP: "d4!3 ~@3", AQ: "d3!2",
  AR: "g3@2 d4 g3@3", AS: "[g3@7 d3@7 d3@7 d3@7 d3@4 d3@4 d3@4 d3@12 d3@12 g3@12 g3@12 d3@12 g3@7 d3@7 d3@6]/5",
  AT: "~ d3@6 d3@8 d3@4 d3@4 d4", AU: "[~@3 a3@4 d3@12 d4@12 g3@4 g3@4 g3@4 g3@12 g3@12 d3@5]/3",
  AV: "[~@7 g3@4 g3@4 g3@4 d3@40 e3@24 e3@24 c3@24 c3@24 a2@24 a2@13]/8", AW: "[~@11 g2@72 ~@13]/4",
})).s("gm_string_ensemble_1").gain(0.4).pan(0.6)

stack(acoustic_guitar_steel, piano, bass, string_ensemble_1, string_ensemble_1_2)

More by The Mamas & The Papas