Strudelify
Born to Make You Happy cover art

1999 · ...Baby One More Time

Born to Make You Happy

Britney Spears

KeyB minorTempo88 bpm
0:00/0:00
// Born to Make You Happy — Britney Spears
// 88 bpm, 2/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 173 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(88/2)

// 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 · epiano2
const epiano2 = note(`<
  ~ A@2 B@2 A@2 C@2 D@2 B@2 E@2 B@2 F@3 G H@2 I G J@3 K L@3 M N@2 O P Q@2 R M S T U V W X Y Z S AA AB AC S AB U AD AE@2
  F@3 G H@2 I G J@3 K L@3 M N@2 O P Q@2 R M AF T U V W X Y Z S AA AB AC S AB U AD S AG AH@2 W R AI@2 AJ@2 AK@2 AL@2 AM@2
  AN@4 AO@2 AP@2 AQ@2 AR@2 AQ@2 AS@2 AQ@2 AR@2 AQ@2 AS@2 AT V AU AV AT AW AX AY AZ BA V BB AZ V AU BC AZ BD BE@2 BF P
  BG@2 AZ BA V BB AZ V AU BC BH@2
>`.pickRestart({
  A: "[[b3,d4,f#4]@13 ~ [a3,d4,f#4]@17 ~]/2", B: "[[a3,d4,f#4]@13 ~ [a3,c#4,e4]@16 ~@2]/2",
  C: "[[a3,d4,f#4]@13 ~ [a3,c#4,e4]@15 ~@3]/2", D: "[[b3,d4,f#4]@13 ~ [a3,d4,f#4]@16 ~@2]/2",
  E: "[[b3,d4,f#4]@13 ~@2 [a3,d4,f#4]@16 ~]/2", F: "[[b2,d4,f#4]@8 [e3,e4,g4]@7 ~ [b3,d4]@8, b3@5 [g2,g3]@3]/3",
  G: "~@3 f#3, f#2@15 ~, ~ f#3@2 ~, ~ c#4", H: "[~@3 f#4 ~@2 [b3,e4]@2, b2@15 ~ e3@15 ~, ~@2 b3@9 ~@5, ~@4 d4@7 ~@5]/2",
  I: "~@3 g3, g2, ~ g3@2 ~, ~ d4", J: "[[d4,f#4]@15 ~ [e3,e4,g4]@14 ~@2 d4@15 ~, b3@30 g3@17 ~, ~@31 [g2,b3]@16 ~]/3",
  K: "c#4@3 ~@3 f#3 ~, f#2@15 ~, [f#3,a#3]@10 a#3@5 ~, ~@3 c#4@5", // F#
  L: "[~@8 [d4,f#4]@8 [e3,e4,g4]@15 ~ d4@15 ~, b2@15 ~@16 [g2,g3,b3]@16 ~, ~@5 b3@26 ~@17]/3", // D Em G
  M: "[f#2,f#3,a#3,c#4]@15 ~", N: "[[g3,b3,d4]@31 ~]/2", O: "[e3,b3,e4,g4]@15 ~", P: "[a2,a3,c#4,e4]@15 ~",
  Q: "[[b2,d4,f#4] [e3,e4,g4], b3@31 ~]/2", R: "[g2,g3,b3,d4]@15 ~", S: "[b3,d4,f#4]@15 ~", T: "[g3,b3,d4]@7 ~",
  U: "[a3,d4,f#4]@15 ~", V: "[a3,c#4,e4]@15 ~", W: "[b2,b3,d4,f#4]@15 ~", X: "~ [b3,d4]@12 ~@3, g2, g3@3 ~, ~ c4 ~@14",
  Y: "[a3,d4,f#4]@3 ~, d3@15 ~", Z: "[e3,g3,b3]@5 ~@3 [f#2,f#3,a#3,c#4]@7 ~, e2 ~", AA: "[b3,e4,g4]@15 ~",
  AB: "[g3,b3,d4]@15 ~", AC: "[f#3,a#3,c#4]@15 ~", AD: "[e3,g3,b3]@6 ~@2 [f#3,a#3,c#4]@7 ~, a3 ~@15",
  AE: "[[b3,d4,f#4]@31 ~]/2", AF: "[b3,d4,f#4]", AG: "[g2,d4], [g3,b3]@3 ~", AH: "[[d3,d4,f#4] [a2,c#4,e4], a3]/2",
  AI: "[[d3,d4,f#4]@8 [a2,c#4,e4]@7 ~, a3@15 ~]/2", AJ: "[[b3,d4,f#4]@31 ~, b2@11 ~@5]/2",
  AK: "[[d2,d3,a3,d4,f#4]@31 ~]/2", AL: "[[g3,b3,d4]@27 ~@5, g2]/2",
  AM: "[[d4,f#4]@15 ~ [a2,c#4,e4]@14 ~@2, a3@15 ~, d3 ~]/2", AN: "[[g3,b3,d4]@29 ~@3 [d3,a3,d4,f#4]@31 ~, g2 ~]/4",
  AO: "[[a3,c#4,e4]@7 ~, a2@31 ~]/2", AP: "[[f#2,f#3,a#3,c#4]@31 ~]/2",
  AQ: "[[g2,g3,b3,d4]@5 ~ [g3,b3,d4] ~@5 [d3,a3,d4,f#4]@19 ~, ~@6 g2@3 ~@23]/2", // G D
  AR: "[[b2,b3,d4,f#4]@5 ~ [b3,d4,f#4] ~@5 [a2,a3,c#4,e4]@19 ~, ~@3 b2 ~@12]/2", // Bm A
  AS: "[[d3,a3,d4,f#4]@5 ~ [a3,d4,f#4] ~@5 [a2,a3,c#4,e4]@18 ~@2, ~@3 d3 ~@12]/2", AT: "[c#3,c#4,e4,g#4]",
  AU: "[b3,e4,g#4]@15 ~", AV: "[b3,d#4,f#4]@15 ~", AW: "~ [c#4,e4]@12 ~@3, a2, a3@3 ~, ~ d4 ~@14",
  AX: "[b3,e4,g#4]@3 ~, e3@15 ~", AY: "[f#3,a3,c#4]@5 ~@3 [g#2,g#3,c4,d#4]@7 ~, f#2 ~", AZ: "[c#4,e4,g#4]@15 ~",
  BA: "[c#4,f#4,a4]@15 ~", BB: "[g#3,c4,d#4]@15 ~", BC: "[f#3,a3,c#4]@6 ~@2 [g#3,c4,d#4]@7 ~, b3 ~@15",
  BD: "[a2,e4], [a3,c#4]@3 ~", BE: "[[e3,e4,g#4] [b2,d#4,f#4], b3]/2", BF: "[c#3,c#4,e4,g#4]@15 ~",
  BG: "[[e3,e4,g#4]@8 [b2,d#4,f#4]@7 ~, b3@15 ~]/2", BH: "[[c#3,c#4,e4,g#4]@23 ~@9]/2",
})).s("gm_epiano2").gain(0.5).pan(0.2)

// bass · electric bass finger
const bass = note(`<
  ~@5 A B C D A E C D F E G H A I J K L M N O F P Q K L M R K S Q P T U V W X Y Z AA AB U Z AA AC AD V S X U J B AE AF@2
  A I J K L M N O F P Q K L M R K S Q P T U V W X Y Z AA AB U Z AA AC AD V S X U J B AE AG AH AI D A AJ AK AL ~@16 AM@2
  AN@2 AO@2 AP@2 AM@2 AN@2 AO@2 AP@2 AQ AR P L AS AR P AT AU AV AW AX AS T AY AZ BA H BB BC BD BE M BF AU AV AW AX AS T
  AY AZ BG@2
>`.pickRestart({
  A: "b1 ~ b1@6", B: "d2", C: "d2 ~ d2@5 ~", D: "a1@5 ~ a1@2", E: "d2@7 ~", F: "b1@2 ~@2 b1@11 ~",
  G: "d2 ~@3 d2@7 ~ d2@3 ~", H: "a1", I: "e2@3 e2", J: "g1 ~ g1@4 g1@2", K: "f#1@3 f#1", L: "b1 ~ b1@3 ~ b1 ~",
  M: "e2@5 ~ e2@2", N: "g1 ~ g1@4 g1 ~", O: "f#1@5 ~ f#1 ~", P: "e2@6 ~ e2", Q: "g1 ~ g1@3 ~ g1@2",
  R: "g1 ~ g1@3 ~ g1 ~", S: "g1@6 ~ g1", T: "a1 ~ a1@4 a1@2", U: "b1@6 ~ b1", V: "e2 ~ e2@3 ~ e2@2",
  W: "g1@4 g1@2 ~ g1", X: "f#1 ~ f#1@3 ~ f#1@2", Y: "b1@3 ~ b1@3 ~", Z: "g1 ~ g1@6", AA: "d2@6 ~ d2",
  AB: "a1 ~ a1@3 ~ a1 ~", AC: "e2@3 ~ f#2@3 ~", AD: "b1@7 b1", AE: "e2 f#1", AF: "[b1@11 ~@5]/2", AG: "b1 b1@3",
  AH: "g1", AI: "d2@2 ~@2 d2@11 ~", AJ: "g1@7 ~", AK: "d2@5 ~ d2@2", AL: "a1 ~ a1@3 ~ a1@2",
  AM: "[g1@3 g1 ~@2 d2@8 d2 c2]/2", AN: "[b1@3 b1 ~@2 a1@7 ~ a1@2]/2", AO: "[g1@3 g1 ~@2 d2@7 ~ d2 ~]/2",
  AP: "[d2@3 d2 ~@2 a1@7 ~ a1@2]/2", AQ: "c#2@3 ~ c#2@3 ~", AR: "a1 ~ a1@6", AS: "c#2@6 ~ c#2", AT: "f#2@3 ~ g#2@3 ~",
  AU: "c#2@7 c#2", AV: "f#2 ~ f#2@3 ~ f#2@2", AW: "a1@6 ~ a1", AX: "g#1 ~ g#1@3 ~ g#1@2", AY: "e2", AZ: "f#2 g#1",
  BA: "c#2 c#2@3", BB: "e2 ~ e2@6", BC: "b1@5 ~ b1@2", BD: "c#2 ~ c#2@6", BE: "a1@7 ~", BF: "b1 ~ b1@3 ~ b1@2",
  BG: "[c#2@19 ~@13]/2",
})).s("gm_electric_bass_finger").gain(0.48)

// chords · pad choir
const pad_choir = note(`<
  ~@5 A@4 B@4 C@4 ~@16 D@2 E F G@2 H I J K L@2 J K M N J O H P Q R S T U@2 ~@16 D@2 E F G@2 H I J K L@2 J K M N J O H P
  Q R S T J H V@2 Q W X F Y@2 Z@2 D@2 AA@2 AB@2 AC@4 AD@2 AE@2 AF@2 AE@2 AG@2 AH@2 AF@2 AE@2 AG@2 AI AJ AK@2 AL AJ AM AN
  AL AO AP AQ AR AS AT AU AI AV AW@2 AR AX AY AZ AL AO AP AQ AR AS AT AU BA@2
>`.pickRestart({
  A: "[~ b3@13 ~ [a3,d4,f#4]@30 ~ [a3,c#4,e4]@17 ~, [d4,f#4]@13 ~@51]/4", // D A D
  B: "[[b3,d4]@13 ~ [a3,d4,f#4]@30 ~@2 [a3,c#4,e4]@15 ~@3]/4", // Bm D A
  C: "[[b3,d4,f#4]@7 [a3,d4,f#4]@16 ~ e4@7 ~, ~@47 [a3,c#4]@15 ~@2]/4", D: "[[g3,b3,d4]@15 ~]/2", E: "[b3,e4,g4]",
  F: "[a3,c#4,e4]", G: "[d4 [e4,g4], b3]/2", H: "[g3,b3,d4]@7 ~", I: "[f#3,a#3,c#4]", J: "[b3,d4,f#4]@15 ~",
  K: "[g3,b3,d4]@13 ~@3", L: "[[d4,f#4]@7 ~ [c#4,e4]@7 ~, a3@29 ~@3]/2", M: "[a3,d4,f#4]@13 ~@3",
  N: "[e4,g4]@8 f#4@7 ~", O: "[b3,e4,g4]@7 ~", P: "[f#3,a#3,c#4]@11 ~@5", Q: "[b3,d4]@15 ~", R: "[g3,b3]@11 ~@5",
  S: "[a3,d4]", T: "e4@8 f#4@7 ~", U: "[b3@27 ~@5, d4@19 ~@13, f#4@7 ~@9]/2",
  V: "[~ f#4@12 ~@3 [c#4,e4]@16, a3@31 ~, d4@7 ~@9]/2", W: "~ [g3,b3]@14 ~", X: "[a3,d4,f#4]@15 ~",
  Y: "[[b3,d4,f#4]@31 ~]/2", Z: "[[a3,d4,f#4]@31 ~]/2", AA: "[[d4,f#4]@14 ~@2 [c#4,e4]@15 ~, a3@31 ~]/2",
  AB: "[d4 a3 ~ [g3,b3,d4]@28 ~]/2", AC: "[[d4,f#4]@30 ~@2 [c#4,e4]@29 ~@3, a3@61 ~@3]/4", AD: "[[f#3,a#3,c#4]@15 ~]/2",
  AE: "[[g3,b3,d4]@10 ~@2 [a3,d4,f#4]@19 ~]/2", AF: "[[b3,d4,f#4]@11 ~ [a3,c#4,e4]@17 ~@3]/2",
  AG: "[[a3,d4,f#4]@9 ~@3 [a3,c#4,e4]@13 ~@7]/2", AH: "[~@12 [a3,d4,f#4]@19 ~]/2", AI: "[c#4,e4,g#4]@7 ~",
  AJ: "[a3,c#4,e4]@13 ~@3", AK: "[[e4,g#4]@7 ~ [d#4,f#4]@7 ~, b3@29 ~@3]/2", AL: "[c#4,e4,g#4]@15 ~",
  AM: "[b3,e4,g#4]@13 ~@3", AN: "[f#4,a4]@8 g#4@7 ~", AO: "[c#4,f#4,a4]@7 ~", AP: "[a3,c#4,e4]@7 ~",
  AQ: "[g#3,c4,d#4]@11 ~@5", AR: "[c#4,e4]@15 ~", AS: "[a3,c#4]@11 ~@5", AT: "[b3,e4]", AU: "f#4@8 g#4@7 ~",
  AV: "[a3,c#4,e4]@15 ~", AW: "[~ g#4@12 ~@3 [d#4,f#4]@16, b3@31 ~, e4@7 ~@9]/2", AX: "~ [a3,c#4]@14 ~",
  AY: "[b3,e4,g#4]@15 ~", AZ: "[b3,d#4,f#4]@15 ~", BA: "[[c#4,e4,g#4]@3 ~]/2",
})).s("gm_pad_choir").gain(0.28).pan(0.2)

// chords · synth strings 1
const synth_strings_1 = note(`<
  ~ A@4 B@4 C@4 D@4 E F@2 G H@2 I J K L@2 G M N@2 G O@3 P Q@4 R S T@2 M U V W X@3 Y M S Z W ~@2 E F@2 G H@2 I J K L@2 G
  M N@2 G O@3 P Q@4 E S T@2 M U V W X@3 Y M S Z W ~@24 AA@4 AB@4 AC@4 AB@4 AD AE AF@2 AG AH AI AJ AK@3 AL AG AE AM AJ
  ~@8 AK@3 AL AG AE AM AJ AN@2
>`.pickRestart({
  A: "[d4@45 ~ [c#4,e4]@18, b3@7 ~@25]/4", B: "[b3@14 ~ a3@49, d4@11 ~@5, ~@15 f#4@30 ~@19]/4",
  C: "[[b2,b3]@7 ~@17 [a2,c#4,e4]@8, [d4,f#4]@23 ~@9, ~@14 d3@33 ~@17, ~@15 a3@48 ~]/4", // B A D
  D: "[[b2,b3]@16 d3@30 ~ [a2,c#4]@17, d4@45 ~ e4@17 ~]/4", E: "b4", F: "[~ g4, e5@5 ~@3]/2", G: "f#4", H: "b4/2",
  I: "g4", J: "~ f#4", K: "[b3,d4]", L: "[g4, e4 ~]/2", M: "[b3,d4]@15 ~", N: "[~@3 g4, e4]/2",
  O: "[~@32 e4@15 ~, [g4,b4]@47 ~]/3", P: "~ c#4@15, a3@15 ~, ~ b3@2 ~@13", Q: "[b3@3 g4@3 f#4@2, d4@17 ~@47]/4",
  R: "[b3,d4,f#4]@15 ~", S: "[g3,b3,d4]@7 ~", T: "[[d4,f#4]@15 ~ c#4@15 ~, a3@31 ~]/2", U: "[g3,b3]@7 ~",
  V: "~@2 [g3,b3] ~", W: "[e3,g3]@7 ~ f#3@7 ~", X: "[~@8 g4@7 ~ d4@7 ~, b3@26 ~@5 [g3,b3]@15 ~@2, ~@8 e4@5 ~@11]/3",
  Y: "[f#3,a#3]@15 ~", Z: "[a3,d4,f#4]@7 ~",
  AA: "[[g3,b3,d4]@10 ~@2 a3@19 ~ b3@11 ~ [a3,c#4,e4]@17 ~@3, ~@12 [d4,f#4]@31 ~@21]/4", // G A D
  AB: "[[g3,b3]@10 ~@2 [a3,d4]@31 ~ [a3,c#4]@17 ~@3]/4", // G D5 A
  AC: "[[g3,d4]@10 ~@2 a3@19 ~ b3@11 ~ [a3,c#4,e4]@17 ~@3, ~@12 [d4,f#4]@31 ~@21]/4", AD: "c#5@15 ~",
  AE: "[a3,c#4,e4]@7 ~", AF: "[[e4,g#4]@15 ~ d#4@15 ~, b3@31 ~]/2", AG: "[c#4,e4]@15 ~", AH: "[a3,c#4]@7 ~",
  AI: "~@2 [a3,c#4] ~", AJ: "[f#3,a3]@6 ~@2 g#3@7 ~",
  AK: "[~@16 a4@14 ~@2 e4@15 ~, c#4@26 ~@5 [a3,c#4]@15 ~@2, ~@8 f#4@5 ~@11]/3", AL: "[g#3,c4]@15 ~",
  AM: "[b3,e4,g#4]@7 ~", AN: "[[c#4,e4]@13 ~@3]/2",
})).s("gm_synth_strings_1").gain(0.25).pan(0.9)

// chords · synth strings 1 · soft notes
const synth_strings_1_soft = note(`<
  ~ A@4 ~@2 B@2 ~@5 C@3 ~@4 D ~@2 E ~@5 F@2 ~@6 G ~@5 H ~@7 I ~@10 D ~@2 E ~@5 F@2 ~@6 G ~@5 H ~@7 I ~@47 J ~@7 K ~@15 K
  ~@6
>`.pickRestart({
  A: "[~@16 a3@47 ~, f#4@11 ~@5]/4", B: "[~@15 [c#4,e4]@17]/2", C: "[a3@47 ~]/3", D: "~ d5@7", E: "f#5@5 ~@3",
  F: "[g4@23 ~@9]/2", G: "~@3 d4@5 ~@8", H: "e4@15 ~", I: "~ c#4@14 ~", J: "f#4@15 ~", K: "~ d#4@14 ~",
})).s("gm_synth_strings_1").gain(0.11).pan(0.9)

// chords · piano
const piano = note(`<
  A B@2 C D E@2 C F G@2 H D G@2 C I@2 ~ J@2 K L@3 M@3 N O P@2 Q R@2 S T U ~ V W X Y Z ~ AA AB AC AD AE AF AG AH AI AJ AK
  AL ~@10 M@3 N O P@2 Q R@2 S T U ~ V W AM Y Z ~ AA AB AC AD AE AF AG AH AI AJ AK AL AN@2 AO@2 AN@2 H AP AQ@2 AR@2 AS@2
  AT@2 AU@2 AV@2 AW@4 AX@2 AY@2 AZ@2 BA@2 AX@2 AY@2 AZ@2 BA@2 BB BC BD ~ BE BF BG BH BI BJ BK BL BM BN BO BP BQ@2 BR@2
  BQ@2 BS BT BI BJ BK BL BM BN BO BP ~@2
>`.pickRestart({
  A: "~@8 b3 ~@3 c#4 ~@3", B: "[d4@5 b3 ~@3 c#4@2 ~@2 d4@11 b3 ~@3 c#4 ~@3]/2", C: "d4@2 ~ d4 ~ c#4 ~ c#4",
  D: "~@2 b3 ~ a3@3 ~ b3@2 ~@2 c#4 ~@3", E: "[d4@5 ~@2 b3@2 ~@2 c#4@2 ~ d4@10 b3@2 ~@2 c#4@2 ~@2]/2",
  F: "~@2 b3 ~ a3@3 ~ b3@2 ~@2 c#4@2 ~@2", G: "[d4@6 b3@2 ~@2 c#4 ~@3 d4@9 ~ b3@2 ~@2 c#4@2 ~@2]/2",
  H: "d4@5 ~ d4@3 ~ c#4@3 ~ c#4@2", I: "[~ [d5,f#5], ~@7 b4@9]/2", J: "[~@2 b4 g4@2 ~ f#4 a#4, d5@7 ~@9]/2",
  K: "b3@13 ~@3", L: "[~@8 [g4,b4,d5]@5 ~@3 [f#3,c#5]@2 ~ c#5@2 ~ f#4 ~, g3@10 ~@5 f#4@3 ~@6]/3",
  M: "[[b3,d4,f#4]@8 ~@12 e3@15 ~@5 d5@8, ~@7 e4@9 ~@8, ~@4 [g4,b4]@4 ~ g4@3]/3", N: "f#4@3 f#4", O: "b2@15 ~",
  P: "[~@12 e4@3 ~ d4@4 ~@8 d4@4, g4@31 ~, ~@4 e3@11 ~ g3@15 ~, ~@24 b4@7 ~]/2", Q: "f#4@3 a#4@3 f#4 ~",
  R: "[~@2 g3@13 ~, [g4,b4,d5]@15 ~]/2", S: "[g4,b4]", T: "~@8 [a3,c#4,e4]@7 ~", U: "[b3,d4,f#4]",
  V: "~@3 g4, ~ [g3,d5], ~@5 b4@3", W: "[f#4,a#4]@7 ~@3 [f#4,a#4]@2 ~@4, f#3@5 ~@3", X: "[b3,d4,f#4] ~",
  Y: "[a3,d4] f#4 ~@14", Z: "~@4 [g3,b3,d4] ~@11", AA: "[b3,d4,f#4]@7 ~", AB: "[g3,b3,d4]@11 ~@5",
  AC: "[a3,d4,f#4]@11 ~@5", AD: "[e4,g4,b4]@5 ~@3 f#4@4 ~@4, ~@8 a#4 ~@7", AE: "[b3,d4,f#4]@15 ~", AF: "[b3,e4,g4]@7 ~",
  AG: "[b4,d5]@15 ~, g4@3 ~", AH: "[f#4,a#4]@7 ~", AI: "[b3,d4]@15 ~", AJ: "[g3,b3]@3 ~", AK: "[a3,d4,f#4]@7 ~",
  AL: "e3@6 ~@3 f#3@4 ~@3", AM: "b3 ~", AN: "[~@6 f#3 ~ b3@2 c#4@2 ~@2 d4@17 ~]/2",
  AO: "[d4@5 ~ d4@2 ~@2 c#4@2 ~@3 c#4@17]/2", AP: "~ b3 a3@4 ~@2", AQ: "[d4@15 ~, b2 ~@3]/2", AR: "[[d3,a3], d4@7 ~]/2",
  AS: "[~@5 d4@3, ~ g2@4 ~@3, ~@3 b3@5]/2", AT: "[d3@4 d4 ~@3 a2@5 ~ e4@2, ~@6 c#4@5 ~@5]/2",
  AU: "[~@3 d4@5, g2@3 ~, ~ b3@3]/2", AV: "[~@3 f#4@5, d3@15 ~]/2",
  AW: "[~@10 a2@2 ~@2 a3@2 ~@4 a#3@9 ~@3, a2@2 ~@2 f#2@3 ~, ~@4 c#4@13 ~ f#3@6 ~@8, ~@3 e4@5 ~@8]/4",
  AX: "[[g3,b3,d4]@5 ~ [g3,b3,d4] ~@5 f#4@14 ~@2 f#4 ~ e4 ~, ~@12 d4@9 ~@11, ~@12 a3@3 ~@17]/2", // G
  AY: "[d4@8 ~@16 d5@2 e5 d5 c#5@2 b4@2, ~@12 c#4@15 ~@5, ~@13 [a3,e4]@15 ~@4]/2", // A5
  AZ: "[[g3,b3,d4]@5 ~ [g3,b3,d4] ~@5 [d4,f#4]@13 ~@3 f#4 ~ e4 ~, ~@6 a3@5 ~@5]/2", // G D
  BA: "[d4@8 ~@5 [a3,e4]@15 ~@4, ~@12 c#4@15 ~@5]/2", BB: "c#4 ~", BC: "[b3,e4] g#4 ~@14", BD: "~@4 [a3,c#4,e4] ~@11",
  BE: "[c#4,e4,g#4]@7 ~", BF: "[a3,c#4,e4]@11 ~@5", BG: "[b3,e4,g#4]@11 ~@5",
  BH: "[f#4,a4,c#5]@5 ~@3 g#4@4 ~@4, ~@8 c5 ~@7", BI: "[c#4,e4,g#4]@15 ~", BJ: "[c#4,f#4,a4]@7 ~",
  BK: "[c#5,e5]@15 ~, a4@3 ~", BL: "[g#4,c5]@7 ~", BM: "[c#4,e4]@15 ~", BN: "[a3,c#4]@3 ~", BO: "[b3,e4,g#4]@7 ~",
  BP: "f#3@6 ~@3 g#3@4 ~@3", BQ: "[~@6 g#3 ~ c#4@2 d#4@2 ~@2 e4@17 ~]/2", BR: "[e4@5 ~ e4@2 ~@2 d#4@2 ~@3 d#4@17]/2",
  BS: "e4@5 ~ e4@3 ~ d#4@3 ~ d#4@2", BT: "~ c#4 b3@4 ~@2",
})).s("gm_piano").gain(0.28).pan(0.9)

// chords · piano · soft notes
const piano_soft = note(`<
  ~@18 A ~ B ~@3 C ~@3 D E@2 F G ~ H@2 ~@12 I ~@21 D E@2 F G ~ H@2 ~@12 I ~@15 J@3 K@2 L@2 M N O@2 P@4 Q@2 ~@23 R ~@26
>`.pickRestart({
  A: "e5@5 ~@3", B: "~ f#3 ~@2", C: "a#4 ~@3", D: "~@10 a#4@5 ~, f#3@15 ~, a#4@5 ~@3, ~@6 c#5@9 ~",
  E: "[~@3 b3@4 e4@7 ~@2]/2", F: "~ d4@2 ~", G: "f#3", H: "[~@7 e4@9]/2", I: "~@2 c#5 ~", J: "[~ f#4@2, ~@7 b3@16 ~]/3",
  K: "[f#4@7 ~]/2", L: "[~@4 g3@9 ~@3]/2", M: "~ a3@3", N: "~ c#4, ~ a3@3", O: "[~ g3@7]/2",
  P: "[~@2 d4@6 ~ a3@5 ~@2, ~@2 a3@15 ~@15]/4", Q: "[~@10 f#3@3 ~@3, ~@6 c#4@7 ~@3]/2", R: "~@2 d#5 ~",
})).s("gm_piano").gain(0.16).pan(0.9)

// chords · acoustic guitar steel
const acoustic_guitar_steel = note(`<
  ~@4 A B@8 C@4 ~@23 D@2 ~@2 E@3 ~@2 F ~@6 G@3 ~@24 H ~@2 E@3 ~@2 F ~@7 I@2 J@2 K@2 L M@8 N@5 O@4 ~@16 P ~@2 Q@3 ~@10
  R@2 S@2 T@2 U V ~@10
>`.pickRestart({
  A: "~@15 [b2,b3]", // B
  B: "[[d4,f#4]@14 ~ [d3,f#4]@31 [a2,c#4,e4]@15 ~@3 f#4@13 ~ [d3,a3,d4,f#4]@32 [a2,a3,c#4,e4]@14 ~@3 b3, ~@14 a3@45 ~@4 [b2,b3,d4]@14 ~@51, ~@7 d4@15 ~@42]/8", // D A D A Bm
  C: "[[d4,f#4]@14 [d3,d4,f#4]@31 ~ [a2,c#4,e4]@15 ~@3, ~@14 a3@47 ~@3]/4", D: "[~ [d3,f#3], ~@15 b2@17]/2",
  E: "[~ f#4 ~, ~@5 [b2,b3,d4]@6 ~@5]/3", F: "[b3,d4,f#4]@7 ~@9", G: "[~@16 f#3@31 ~, ~@15 [b1,b2,d3]@32 ~]/3",
  H: "f#3", I: "[~@6 f#3@2 a#3 b3@2 c#4@2 ~@2 d4@17]/2", J: "[d4@5 ~ d4@2 ~@2 c#4@2 ~@2 c#4@15 ~@3]/2",
  K: "[~@3 f#3 b3 c#4 ~ d4@9]/2", L: "d4@4 ~@2 d4@3 ~ c#4@2 ~@2 c#4@2",
  M: "[~@2 b3@2 a3@9 ~@3 f#3@25 ~@6 d2@31 ~@2 d3@29 ~@3 f#3@14 ~@2, ~@15 [b1,d3]@26 ~@38 b2@31 d2@17 ~, ~@111 d3@16 ~]/8", // Bm
  N: "[~ e3@11 ~@2 g2@32 ~@3 f#3@29 ~@2, c#3@13 ~@34 [d2,a2]@31 ~@2]/5", // D5
  O: "[~ e3@29 ~@3 c#3@24 ~@7, ~@31 a#2@26 ~@7]/4", P: "g#3", Q: "[~ g#4 ~, ~@5 [c#3,c#4,e4]@6 ~@5]/3",
  R: "[~@6 g#3@2 c4 c#4@2 d#4@2 ~@2 e4@17]/2", S: "[e4@5 ~ e4@2 ~@2 d#4@2 ~@2 d#4@15 ~@3]/2",
  T: "[~@3 g#3 c#4 d#4 ~ e4@9]/2", U: "e4@4 ~@2 e4@3 ~ d#4@2 ~@2 d#4@2", V: "~@2 c#4@2 b3@9 ~@3",
})).s("gm_acoustic_guitar_steel").gain(0.35).pan(0.2)

// chords · acoustic guitar steel · soft notes
const acoustic_guitar_steel_2 = note("<~@106 A@2 B@5 C@4 D@6 ~@50>".pickRestart({
  A: "[~@7 b2@9]/2", B: "[~@17 f#3@29 ~ g1@31 a2@2, ~@14 a2@31 ~ g2@31 ~@3, ~@15 d3@31 ~@34]/5",
  C: "[~@15 a1@13 ~@5 d3@30 ~, ~@14 a2@14 ~@3 g1@32 ~, ~@32 b2@31 ~]/4",
  D: "[d3@30 ~@2 c#3@29 ~@2 f#1@26 ~@7, ~@31 [a1,a2]@31 f#2@26 ~@8]/6", // A
})).s("gm_acoustic_guitar_steel").gain(0.2).pan(0.2)

// chords · pad warm
const pad_warm = note(`<
  ~@5 A@4 B@4 C@4 D@2 E F G H I J K@3 L M@3 L N@3 O P Q R S ~@18 T U E F G H I J K@3 L M@3 L N@3 O P Q R S ~@24 V@2 W@2
  X@2 Y@2 Z@2 AA@4 AB@2 ~@50
>`.pickRestart({
  A: "[[b3,d4]@15 ~ d4@31 ~ [c#4,e4]@15 ~, f#4@23 ~@9, ~@16 a3@47 ~]/4", // Bm C#m
  B: "[[b3,d4,f#4]@14 [a3,d4,f#4]@31 ~ [a3,c#4,e4]@15 ~@3]/4", // Bm D A
// … 154 more lines

More by Britney Spears