Strudelify

Eine kleine Nachtmusik

Wolfgang Amadeus Mozart

KeyG majorTempo192 bpm
0:00/0:00
// Eine kleine Nachtmusik — Wolfgang Amadeus Mozart
// 192 bpm, 2/2, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 307 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(192/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · [...]/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.

// other · violin
const violin = note(`<
  A B C D E B F G E B C D E B F H I@4 J K L M N O P Q R S@2 T U V W X Y Z AA AB AC AD AE AF AC AG AH AI AJ AK AL AM AN
  AO AP AQ AR AS AT AU AV AW AX A B C D E B F G E B C D E B F H I@4 J K L M N O P Q R S@2 T U V W X Y Z AA AB AC AD AE
  AF AC AG AH AI AJ AK AL AM AN AO AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD BE BB BF BG BH@4 BI BJ BK BL BM BN BO BP
  BQ BR BS BT BU BV BW BX BY BZ CA CB@2 CC CD CE CF CG CH CI CJ A B C CK CL CM CN CO CP CQ CN CR CS CT CU CV CW CX CY CZ
  DA DB DC DD DE DF DG DH DI DJ AY AZ BA BB BC BD BE BB BF BG BH@4 BI BJ BK BL BM BN BO BP BQ BR BS BT BU BV BW BX BY BZ
  CA CB@2 CC CD CE CF CG CH CI CJ A B C CK CL CM CN CO CP CQ CN CR CS CT CU CV CW CX CY CZ DA DB DC DD DE DF DG DH DI DJ
  DK DL A B C D E B F DM DN DO DN DO DN DP DQ DR DS DT DU DT DU DV DW DX DY@7 DZ EA
>`.pickRestart({
  A: "~@4 b3!2 d4!2", B: "g4!2 b4!2 c5!4", C: "b4!4 a4!4", D: "g4!4 f#4 b4 a4 g4", E: "f#4 e4 d4 c4 b3!2 d4!2",
  F: "b4!4 e5!4", G: "c5!4 b4!2 a4 g4", H: "c5!4 b4@2 ~@2",
  I: "[~@8 g5@10 a5@2 f#5@2 d5@2 b5@10 c6@2 a5@2 f#5@2 g5@10 a5@2 f#5@2 d5@2 b5@4 b5 ~ b5 ~]/4",
  J: "b5@2 g5@2 g5 ~ g5 ~ g5@2 d5@2 d5 ~ d5 ~", K: "d5 b4!2 g4 d5@2 [d4,a4,f#5]@2", L: "[d4,b4,g5]!2 [d4,a4,f#5] d4",
  M: "d4 ~@2 f#4", N: "g4 ~ a4 ~ b4 ~ c#5 ~", O: "d5 ~ e5 ~ d5 e5 f5 f#5", P: "c#5 d5 b4 g4 f#4@4", Q: "e4 ~ a4@2",
  R: "c#4 ~ d4 ~ e4 ~ f#4 ~", S: "[g4 ~@3 f#4@2 f#5@4 b4@2 d5@4]/2", T: "c#5 ~@3", U: "~@8 b4@2 a4@2 g4 ~ f#4 ~",
  V: "e4@4 e4@4 g4@2 f#4@2 e4 ~ d4 ~", W: "c#4@4 ~@4 b4@2 a4@2 g4 ~ f#4 ~", X: "e4@4 ~@4 c#4@2 d4@2 e4 ~ f4 ~",
  Y: "g4@4 ~@4 c#4@2 d4@2 e4 ~ f4 ~", Z: "g4@2 ~@2 e5 c#5 e5 c#5", AA: "e5 c#5 e5 c#5 e5@2 ~@2", AB: "~@4 f#4!2 a3!2",
  AC: "d4!2 f#4!2 g4!4", AD: "f#4!4 a4!4", AE: "a4@2 a4@2 a4@2 a4@2 a4 ~ d5 ~ c#5 ~ b4 ~",
  AF: "a4 ~ g4 ~ f#4 ~ e4 ~ f#4@2 f#4@2 a3@2 a3@2", AG: "f#4!4 b4!4", AH: "c5!4 f#4!4", AI: "g4@2 ~@2 g4!2 f#4!2",
  AJ: "g4!2 f#4!2 g4!4", AK: "f#4!4 e4!4", AL: "c#4!4 d4 f#4 a4 d5", AM: "c#5@4 d5 d4 f#4 a4", AN: "b4@4 a4 a3 d4 f#4",
  AO: "g4@7 ~ a4@2 b4@2 c#5 ~ d5 ~", AP: "c#5@2 b4@2 a4 ~ g4 ~ f#4@2 g4@2 a4 ~ b4 ~",
  AQ: "a4@2 g4@2 f#4 ~ e4 ~ e4@2 d4@2 d4 ~ d4 ~", AR: "d4@2 f#4@2 e4 ~ c#4 ~ d4 ~ a3 ~ a3 ~ a3 ~",
  AS: "a3 ~ a3 ~ a3 ~ a3 ~ a3 ~ a3 ~ d4 ~ d4 ~", AT: "c#4!2 c4!2 b3!4", AU: "b3!6 b4!2", AV: "a4!2 g4!2 f#4!4",
  AW: "f#4!6 g4!2", AX: "a4!2 b4!2 c5@2 ~@2", AY: "~@2 d4 ~ f#4 ~ a4 ~ c5@4 c5@4", AZ: "c5!2 d#4 ~",
  BA: "~@4 g3!2 a#3!2", BB: "d#4!2 g4!2 g#4!4", BC: "g4!4 f4!4", BD: "d#4!4 d4 g4 f4 d#4",
  BE: "d4 c4 a#3 g#3 g3!2 a#3!2", BF: "g4!4 c5!4", BG: "g#4!4 g4@2 ~@2",
  BH: "[~@4 d#5@5 f5 d5 a#4 g5@5 g#5 f5 d5 d#5@5 f5 d5 a#4 g5@2 [a#3,g4]@2]/4", BI: "~ [a#3,g4] ~ [a#3,g4]",
  BJ: "[a#3,g4]!2 ~ [b3,g4]", BK: "~ [b3,g4] ~ [b3,g4]", BL: "[b3,g4]!2 ~ [c4,d#4]", BM: "~ [c4,d#4] ~ [c4,d#4]",
  BN: "[c4,d#4]!2 ~ [c4,a4]", BO: "~ [c4,a4] ~ [c4,a4]", BP: "[c4,a4]!2 ~ [d4,a#4]", BQ: "~ [d4,a#4] ~ [d4,a#4]",
  BR: "[d4,a#4]@4 [d4,a#4]@4 g5@2 d#5@2 d#5 ~ d#5 ~", BS: "d#5@2 a#4@2 a#4 ~ a#4 ~ a#4@2 g4@2 g4 ~ g4 ~",
  BT: "g4 d#4!2 c#4 d4@2 [d4,a4,f#5]@2", BU: "[d4,a#4,g5]!2 [d4,a4,g5] d4", BV: "d4 ~@2 b3", BW: "c4 ~ d4 ~ e4 ~ f#4 ~",
  BX: "g4 ~ a4 ~ g4 a4 a#4 b4", BY: "f#4 g4 e4 c4 b3@4", BZ: "a3 ~ d4@2", CA: "~@2 g3 ~ a3 ~ b3 ~",
  CB: "[c4 ~@3 b3@2 b4@4 e4@2 g4@4]/2", CC: "f#4 ~@3", CD: "~@8 e4@2 d4@2 c4 ~ b3 ~",
  CE: "a3@4 a3@4 c5@2 b4@2 a4 ~ g4 ~", CF: "f#4@4 ~@4 a4@2 g4@2 f#4 ~ e4 ~", CG: "d4 ~@2 c4", CH: "c4 ~@2 c4",
  CI: "c4 f#5 d5 f#5 a5 f#5 a5 f#5", CJ: "a5 f#5 a5 f#5 a5@2 ~@2", CK: "g4!4 f#4 g4 f#4 e4",
  CL: "d4 c4 b3 a3 b3!2 g3!2", CM: "b3!2 d4!2 c4!4", CN: "b3!4 e4!4", CO: "f4!4 b3!4", CP: "c4@2 ~@2 c4!2 b3!2",
  CQ: "c4!2 b3!2 c4!4", CR: "f#4!4 g4 b3 d4 g4", CS: "f#4@4 g4 g3 b3 d4", CT: "e4@4 d4 d5 b4 g4",
  CU: "d4@7 ~ d4@2 e4@2 f#4 ~ g4 ~", CV: "f#4@2 e4@2 d4 ~ c4 ~ b3@2 d4@2 g4 ~ b4 ~",
  CW: "d5@2 c5@2 b4 ~ a4 ~ a4@2 g4@2 g4 ~ g4 ~", CX: "g4@2 b4@2 a4 ~ f#4 ~ g4@2 b3@2 b3@2 b3@2", CY: "b3!8",
  CZ: "a3!2 b3!2 c4!4", DA: "c4!6 g4!2", DB: "f4!2 e4!2 d4!4", DC: "d4!4 b3!2 c4!2", DD: "d4!2 e4!2 f4@2 ~@2",
  DE: "~@2 g3 ~ b3 ~ d4 ~ f4@4 f4@4", DF: "f4!2 g#3 ~", DG: "~@4 d5 ~ d5 ~", DH: "c#5 ~@3 c5 ~ c5 ~",
  DI: "b4 ~@3 g4 ~ g4 ~", DJ: "g4 ~ g4 ~ f#4@2 ~@2", DK: "~@2 d4 ~ f#4 ~ a4 ~ c5@2 ~@2 c5@2 ~@2",
  DL: "c5 ~ c5 ~ d4@2 ~@2", DM: "c5!4 b4@2 g4@2", DN: "a4 b4 ~ a4", DO: "g4 f#4 ~ g4", DP: "f#4 c5 b4@2",
  DQ: "d5 c5 b4 a4 g4 a4 a#4 b4", DR: "b4 a4 g4 f#4 g4@2 ~@2", DS: "~@2 g5@2 f#5 ~ g5 ~", DT: "a5@6 b5 c6 a#5@4 b5@4",
  DU: "~@2 g5 ~ f#5 ~ g5 ~", DV: "a5@6 b5 c6 b5@2 g5@2 g5 ~ g5 ~", DW: "g5@2 b4@2 b4 ~ b4 ~ e5@2 c5@2 c5 ~ c5 ~",
  DX: "b4@2 g4@2 a4 ~ f#4@2 g4@2 [g3,g4]@2 [g3,g4]@2 [g3,g4]@2", DY: "[g3,g4]!8", DZ: "[g3,g4]!4 [g3,g4]@2 ~@2",
  EA: "[d4,b4,g5] ~ g3@2", // G
})).s("gm_violin").gain(0.31)

// other · viola
const viola = note(`<
  A B C D E B F G E B C D E B F H I J@3 K L M N O P Q R S T U V ~ W X Y Z AA AB AC AD AE AF AG AD AH@2 AI AJ AK AL AM@3
  AN AO AP AQ AR AS AT AU AV A B C D E B F G E B C D E B F H I J@3 K L M N O P Q R S T U V ~ W X Y Z AA AB AC AD AE AF
  AG AD AH@2 AI AJ AK AL AM@3 AN AO AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC AZ BD BE BF BG@3 BH BI BJ BK BL BM BN BO
  BP BQ BR BS BT BU BV BW BX BY BZ CA@2 CB ~ CC CD CE CF CG CH A B C CI CJ CK CL@2 CM CN CO CP CQ@3 CR CS CT CU CV CW CX
  CY CZ DA DB DC DD DE DF AW AX AY AZ BA BB BC AZ BD BE BF BG@3 BH BI BJ BK BL BM BN BO BP BQ BR BS BT BU BV BW BX BY BZ
  CA@2 CB ~ CC CD CE CF CG CH A B C CI CJ CK CL@2 CM CN CO CP CQ@3 CR CS CT CU CV CW CX CY CZ DA DB DC DD DE DF DG DH A
  B C D E B F DI DJ DK DJ DK DJ DL@3 ~ DM DN DM DN DO DP DQ DR@7 DS DT
>`.pickRestart({
  A: "~@4 g3!2 b3!2", B: "d4!2 g4!2 a4!4", C: "g4!4 d4!4", D: "d4!5 g4 f#4 e4", E: "d4 c4 b3 a3 g3!2 b3!2", F: "g4!8",
  G: "f#4!2 g4 a4 g4!2 f#4 e4", H: "f#4!2 g4 a4 g4 [b3,d4]!3", I: "[c4,d4]!4 [b3,d4]!4",
  J: "[[c4,d4]@2 [c4,d4]@2 [c4,d4]@2 [c4,d4]@2 [b3,d4]@4 g4@6 a4@2 f#4@2 d4@2 b4@10 c5@2 a4@2 f#4@2 g4@4 b4 ~ b4 ~]/3", // Csus2 Bm
  K: "b4@2 g4@2 g4 ~ g4 ~ g4@2 d4@2 d4 ~ d4 ~", L: "d4 b3!2 g3 d4 d5 c5 d5", M: "b4 d5 b4 g4 d4@2 d4@2", N: "d4 ~@2 d4",
  O: "e4 ~ f#4 ~ g4 ~ a4 ~", P: "b4 ~ c#5 ~ d5@2 ~@2", Q: "g3@2 ~@2 a3 g#3 a3 g#3", R: "a3 b3 g3 e3 d3 ~ f#3@2",
  S: "g3 ~ a3 ~ b3 ~ c#4 ~", T: "d4 ~ e4 ~ a3@4", U: "b3 d4 g#4@2", V: "a4 ~@3", W: "~@8 c#3@2 d3@2 e3 ~ f#3 ~",
  X: "g3@4 ~@4 c#4@2 d4@2 e4 ~ f#4 ~", Y: "g4@4 ~@8 c#4 ~ d4 ~", Z: "e4@4 ~@8 c#4 ~ d4 ~", AA: "e4 ~ a4 a#4",
  AB: "a4 a#4 a4 ~", AC: "~@4 d4!2 f#3!2", AD: "a3!2 d4!2 e4!4", AE: "d4!4 e4!4",
  AF: "d4@2 d4@2 d4@2 d4@2 c#4@2 b4 ~ a4 ~ g4 ~", AG: "f#4 ~ e4 ~ d4 ~ c#4 ~ d4@2 d4@2 f#3@2 f#3@2", AH: "d4!8",
  AI: "d4@2 ~@2 e4!2 d#4!2", AJ: "e4!2 d#4!2 e4!4", AK: "d4!4 b3!4", AL: "a3!4 a3@4",
  AM: "[~@2 c#4@2 e4@2 a3@2 a4@10 b4@2 g4@2 a4@2 f#4@10 g4@2 e4@2 c#4@2 d4@2 a4@2 a4 ~ a4 ~]/3",
  AN: "a4@2 c#4@2 c#4 ~ c#4 ~ d4@2 e4@2 f#4 ~ g4 ~", AO: "f#4@2 e4@2 a4 ~ g4 ~ g4@2 f#4@2 f#4 ~ f#4 ~",
  AP: "f#4@2 a4@2 g4 ~ e4 ~ d4 ~ f#3 ~ f#3 ~ f#3 ~", AQ: "f#3 ~ f#3 ~ f#3 ~ f#3 ~ f#3 ~ f#3 ~ f#3 ~ f#3 ~",
  AR: "f#3!4 g3!4", AS: "g3!6 d4!2", AT: "c4!2 b3!2 a3!4", AU: "a3!4 d4!2 e4!2", AV: "f#4!2 g4!2 [f#4,a4]@2 ~@2",
  AW: "~@2 d4 ~ f#4 ~ a4 ~ c5@4 c5@4", AX: "c5!2 d#4 ~", AY: "~@4 d#3!2 g3!2", AZ: "a#3!2 d#4!2 f4!4",
  BA: "d#4!4 a#3!4", BB: "a#3!5 d#4 d4 c4", BC: "a#3 g#3 g3 f3 d#3!2 g3!2", BD: "d#4!8",
  BE: "d4!2 d#4 f4 d#4 a#3 g3 a#3", BF: "g#3 a#3 g#3 a#3 g3 a#3 g3 a#3",
  BG: "[g#3 a#3 g#3 a#3 g3@2 d#4@3 f4 d4 a#3 g4@5 g#4 f4 d4 d#4@2 [g3,d#4]@2]/3", BH: "~ [g3,d#4] ~ [g3,d#4]",
  BI: "[g3,d#4]!2 ~ [g3,f4]", BJ: "~ [g3,f4] ~ [g3,f4]", BK: "[g3,f4]!2 ~ [g3,g4]", BL: "~ [g3,g4] ~ [g3,g4]",
  BM: "[g3,g4]!2 ~ [a3,d4]", BN: "~ [a3,d4] ~ [a3,d4]", BO: "[a3,d4]!2 ~ [a#3,g4]", BP: "~ [a#3,g4] ~ [a#3,g4]",
  BQ: "[a#3,g4]@4 [a#3,g4]@4 g4@2 d#4@2 d#4 ~ d#4 ~", BR: "d#4@2 a#3@2 a#3 ~ a#3 ~ a#3@2 g3@2 g3 ~ g3 ~",
  BS: "g3 d#3!2 c#3 d3 d4 c4 d4", BT: "a#3 d4 a#3 g3 d4@2 d3@2", BU: "d3 ~@2 g3", BV: "a3 ~ b3 ~ c4 ~ d4 ~",
  BW: "e4 ~ f#4 ~ g4@2 ~@2", BX: "c3@2 ~@2 d3 c#3 d3 c#3", BY: "d3 d#3 e3 f#3 g3 ~ b3@2", BZ: "c4 ~ d3 ~ e3 ~ f#3 ~",
  CA: "[g3 ~ a3 ~ b3@2 e4@4 g4@2 c#5@4]/2", CB: "d5 ~@3", CC: "~@8 f#3@2 g3@2 a3 ~ b3 ~",
  CD: "c4@4 ~@4 f#3@2 g3@2 a3 ~ b3 ~", CE: "c4@4 ~@4 f#3@2 g3@2 a3 ~ a3 ~", CF: "a3@4 ~@4 f#3@2 g3@2 a3 ~ a3 ~",
  CG: "a3 ~ d5 d#5", CH: "d5 d#5 d5 ~", CI: "d4!5 e4 d4 c4", CJ: "b3 a3 g3 f#3 g3!2 d3!2", CK: "g3!2 b3!2 a3!4",
  CL: "g3!8", CM: "g3@2 ~@2 a3!2 g#3!2", CN: "a3!2 g#3!2 a3!4", CO: "g3!4 a3!4", CP: "d4!4 d3@4",
  CQ: "[~ f#3 a3 d3 d4@5 e4 c4 d4 b3@5 c4 a3 f#3 g3 d4!3]/3", CR: "d4@2 f#4@2 f#4 ~ f#4 ~ g4@2 b4@2 b3@2 d4@2",
  CS: "e4@2 e5@2 d5@2 c5@2 c5@2 b4@2 b4 ~ b4 ~", CT: "b4@2 d5@2 c5 ~ a4 ~ g4 ~ g3 ~ g3 ~ g3 ~",
  CU: "g3 ~ g3 ~ g3 ~ g3 ~ g3 ~ g3 ~ g3 ~ g3 ~", CV: "f#3 ~ f#3 ~ f3 ~ f3 ~ e3 ~ e3 ~ e3 ~ e3 ~",
  CW: "e3 ~ e3 ~ e3 ~ e3 ~ e3 ~ e3 ~ e4 ~ e4 ~", CX: "d4 ~ d4 ~ c4 ~ c4 ~ b3 ~ b3 ~ b3 ~ b3 ~",
  CY: "b3 ~ b3 ~ b3 ~ b3 ~ g3 ~ g3 ~ a3 ~ a3 ~", CZ: "b3 ~ b3 ~ c4 ~ c4 ~ [b3,d4]@2 ~@6",
  DA: "~@2 g3 ~ b3 ~ d4 ~ f4@4 f4@4", DB: "f4!2 g#3 ~", DC: "~@4 [g#4,b4] ~ [g#4,b4] ~",
  DD: "a4 ~@3 [f#4,a4] ~ [f#4,a4] ~", DE: "g4 ~@3 e4 ~ e4 ~", DF: "d#4 ~ d#4 ~@5",
  DG: "~@2 d4 ~ f#4 ~ a4 ~ c5@2 ~@2 c5@2 ~@2", DH: "c5 ~ c5 ~ d4@2 ~@2", DI: "f#4!2 g4 a4 g4@2 b3@2", DJ: "c4 d4 ~ c4",
  DK: "b3 a3 ~ b3", DL: "[a3@2 a4 ~ g4@6 e4@2 d4@6 [c4,d4]@2 [b3,d4]@2 ~@2]/3", DM: "~@2 d4 ~ f#4 ~ a4 ~ d5@4 d5@4",
  DN: "d5!2 d3 ~", DO: "~@2 d4 ~ f#4 ~ a4 ~ g4@2 d4@2 d4 ~ d4 ~", DP: "d4@2 d4@2 d4@2 d4@2 c4@2 g4@2 g4 ~ g4 ~",
  DQ: "d4!2 [c4,d4]!2 [b3,d4]!4", DR: "[b3,d4]!8", DS: "[b3,d4]!4 [b3,d4]@2 ~@2", DT: "g4 ~ g3@2",
})).s("gm_viola").gain(0.31)

// other · cello
const cello = note(`<
  A B C D E@2 F G H B C D E@2 F I J K@3 L M N O ~@3 P Q R S T@4 U@2 V ~ W X Y Z W X AA AB AC X AA AD AE AF AG AH AI AJ
  AK P AL P AM ~ A B C D E@2 F G H B C D E@2 F I J K@3 L M N O ~@3 P Q R S T@4 U@2 V ~ W X Y Z W X AA AB AC X AA AD AE
  AF AG AH AI AJ AK P AL P AM ~ AN AO AP AQ AR AS AP AQ AT AU AV AW@3 AX AY AZ BA BB BC BD BE BF BG BH BI BJ O ~@3 BK BL
  BM BN BO@4 BP@2 O ~ A B C D BQ B F BR BS B F BT BU BV BW BX BY BZ CA BK CB BK CC ~ CD CE ~@4 CF AO AP AQ AR AS AP AQ
  AT AU AV AW@3 AX AY AZ BA BB BC BD BE BF BG BH BI BJ O ~@3 BK BL BM BN BO@4 BP@2 O ~ A B C D BQ B F BR BS B F BT BU BV
  BW BX BY BZ CA BK CB BK CC ~ CD CE ~@4 CF CG A B C D E@2 F CH CI CJ CI CJ CK CL CM CN CO CP CO CP CO CQ CR CS ~ CT CU
  CT CU CV CW CX CY
>`.pickRestart({
  A: "~@8 g3@7 ~", B: "~@2 d3 ~", C: "g3 ~ f#3 ~", D: "g3 ~ d3 ~", E: "[~@4 g3@7 ~ d3@2 ~@2]/2", F: "e3 ~ c3 ~",
  G: "d3 ~ g3!2", H: "b2@4 d3@4 g3@7 ~", I: "d3@2 ~@2 g2 g3!3", J: "g3!4 g2 g3!3",
  K: "[g3@2 g3@2 g3@2 g3@2 g3@10 a3@2 f#3@2 d3@2 b3@10 c4@2 a3@2 f#3@2 g3@4 b3 ~ b3 ~]/3",
  L: "b3@2 g3@2 g3 ~ g3 ~ g3@2 d3@2 d3 ~ d3 ~", M: "d3 b2!2 g2 d3 d4 c4 d4", N: "b3 d4 b3 g3 d3@2 d3@2", O: "d3 ~@3",
  P: "~@3 d3", Q: "e3 ~ f#3 ~ g3 ~ a3 ~", R: "b3 ~ c#4 ~ d4@2 d3@2", S: "b2@2 e3@2 a2 a3!3", T: "a3!4 a2 a3!3",
  U: "a3 ~ a#3@2", V: "a3 ~@3", W: "~@8 d3@7 ~", X: "~@2 a3 ~", Y: "d4 ~ c#4 ~", Z: "d4 ~ a3 ~", AA: "b3 ~ g3 ~",
  AB: "a3 ~ c4@2", AC: "b3@4 ~@4 g3@7 ~", AD: "a3 ~ f#3@2", AE: "e3 d3", AF: "g3@7 ~ a3@7 ~",
  AG: "a2@7 ~ f#3@2 f#3@2 f#3@2 f#3@2", AH: "e3!4 d3!4", AI: "e3!4 a3!4", AJ: "a2!4 d3 ~ d3 ~",
  AK: "f#3 ~ a3 ~ d4 ~ d3 ~", AL: "g3 b3 d4 d3", AM: "f#3 a3 d4 d3", AN: "~@2 d3 ~ f#3 ~ a3 ~ c4@4 c4@4",
  AO: "c4!2 d#3 ~", AP: "~@8 d#3@7 ~", AQ: "~@2 a#2 ~", AR: "d#3 ~ d3 ~", AS: "d#3 ~ a#2 ~", AT: "c3 ~ g#2 ~",
  AU: "a#2@2 ~@2 d#2 d#3!3", AV: "d#3!4 d#2 d#3!3", AW: "[d#3!4 d#3@5 f3 d3 a#2 g3@5 g#3 f3 d3 d#3@2 d#3@2]/3",
  AX: "~ d#3 ~ d#3", AY: "d#3!2 ~ d3", AZ: "~ d3 ~ d3", BA: "d3!2 ~ c3", BB: "~ c3 ~ c3", BC: "c3!2 ~ f#3",
  BD: "~ f#3 ~ f#3", BE: "f#3!2 ~ g3", BF: "~ g3 ~ g3", BG: "g3@4 g3@4 g3@2 d#4@2 d#4 ~ d#4 ~",
  BH: "d#4@2 a#3@2 a#3 ~ a#3 ~ a#3@2 g3@2 g3 ~ g3 ~", BI: "g3 d#3!2 c#3 d3 d4 c4 d4", BJ: "a#3 d4 a#3 g3 d4@2 d3@2",
  BK: "~@3 g2", BL: "a2 ~ b2 ~ c3 ~ d3 ~", BM: "e3 ~ f#3 ~ g3@2 e3@2", BN: "g3@2 a3@2 d3!4", BO: "d3!8",
  BP: "d3 ~ d#3@2", BQ: "~@8 g2@7 ~", BR: "d3@4 ~@4 f3@7 ~", BS: "e3@4 ~@4 c3@7 ~", BT: "d3 ~ b2@2", BU: "a2 g2",
  BV: "c3@7 ~ d3@7 ~", BW: "d2@7 ~ b2@2 b3@2 b3@2 b3@2", BX: "a3!4 g3!4", BY: "c3!4 d3!4", BZ: "d3!4 g3@2 g2 ~",
  CA: "b2 ~ d3 ~ g3 ~ g2 ~", CB: "c3 e3 g3 g2", CC: "b2 d3 g3 g2", CD: "~@2 g2 ~ b2 ~ d3 ~ f3@4 f3@4", CE: "f3!2 g#2 ~",
  CF: "~ d3 f#3 a3 c4@2 c4@2", CG: "c4!2 d3 ~", CH: "d3 ~ g2 ~", CI: "~@2 d3 ~ g3 ~ b3 ~ d4@4 d4@4", CJ: "d4!2 b3 ~",
  CK: "~@2 d3 ~ g3 ~ b3 ~ d4@2 ~@2 d4@2 ~@2", CL: "d#4 ~ d#4 ~ e4@4", CM: "c4@7 ~ d4@7 ~",
  CN: "d3@7 ~ g3@2 d4@2 d4@2 d4@2", CO: "c4 d4 b3 d4 a3 d4 g3 d4", CP: "f#3 d4 d3 d4 g3 d4!3", CQ: "f#3 d4 d3 d4 g3!4",
  CR: "g3!4 c3!4", CS: "d3!4 g2@2 ~@2", CT: "~@2 g2 ~ b2 ~ d3 ~ g3@4 g3@4", CU: "g3!2 g2 ~",
  CV: "~@2 g2 ~ b2 ~ d3 ~ g3@4 d4@4", CW: "b3 g3 d3 g3", CX: "b2 d3 g2 ~", CY: "g3 ~ g2@2",
})).s("gm_cello").gain(0.41)

// bass · contrabass
const bass = note(`<
  A B C D E@2 F G H B C D E@2 F I J K@3 L M N O ~@3 P Q R S T@4 U@2 V ~ W X Y Z W X AA AB AC X AA AD AE AF AG AH AI AJ
  AK P AL P AM ~ A B C D E@2 F G H B C D E@2 F I J K@3 L M N O ~@3 P Q R S T@4 U@2 V ~ W X Y Z W X AA AB AC X AA AD AE
  AF AG AH AI AJ AK P AL P AM ~ AN AO AP AQ AR AS AP AQ AT AU AV AW@3 AX AY AZ BA BB BC BD BE BF BG BH BI BJ O ~@3 BK BL
  BM BN BO@4 BP@2 O ~ A B C D BQ B F BR BS B F BT BU BV BW BX BY BZ CA BK CB BK CC ~ CD CE ~@4 CF AO AP AQ AR AS AP AQ
  AT AU AV AW@3 AX AY AZ BA BB BC BD BE BF BG BH BI BJ O ~@3 BK BL BM BN BO@4 BP@2 O ~ A B C D BQ B F BR BS B F BT BU BV
  BW BX BY BZ CA BK CB BK CC ~ CD CE ~@4 CF CG A B C D E@2 F CH CI CJ CI CJ CK CL CM CN CO CP CO CP CO CQ CR CS ~ CT CU
  CT CU CV CW CX CY
>`.pickRestart({
  A: "~@8 g2@7 ~", B: "~@2 d2 ~", C: "g2 ~ f#2 ~", D: "g2 ~ d2 ~", E: "[~@4 g2@7 ~ d2@2 ~@2]/2", F: "e2 ~ c2 ~",
  G: "d2 ~ g2!2", H: "b1@4 d2@4 g2@7 ~", I: "d2@2 ~@2 g1 g2!3", J: "g2!4 g1 g2!3",
  K: "[g2@2 g2@2 g2@2 g2@2 g2@10 a2@2 f#2@2 d2@2 b2@10 c3@2 a2@2 f#2@2 g2@4 b2 ~ b2 ~]/3",
  L: "b2@2 g2@2 g2 ~ g2 ~ g2@2 d2@2 d2 ~ d2 ~", M: "d2 b1!2 g1 d2 d3 c3 d3", N: "b2 d3 b2 g2 d2@2 d2@2", O: "d2 ~@3",
  P: "~@3 d2", Q: "e2 ~ f#2 ~ g2 ~ a2 ~", R: "b2 ~ c#3 ~ d3@2 d2@2", S: "b1@2 e2@2 a1 a2!3", T: "a2!4 a1 a2!3",
  U: "a2 ~ a#2@2", V: "a2 ~@3", W: "~@8 d2@7 ~", X: "~@2 a2 ~", Y: "d3 ~ c#3 ~", Z: "d3 ~ a2 ~", AA: "b2 ~ g2 ~",
  AB: "a2 ~ c3@2", AC: "b2@4 ~@4 g2@7 ~", AD: "a2 ~ f#2@2", AE: "e2 d2", AF: "g2@7 ~ a2@7 ~",
  AG: "a1@7 ~ f#2@2 f#2@2 f#2@2 f#2@2", AH: "e2!4 d2!4", AI: "e2!4 a2!4", AJ: "a1!4 d2 ~ d2 ~",
  AK: "f#2 ~ a2 ~ d3 ~ d2 ~", AL: "g2 b2 d3 d2", AM: "f#2 a2 d3 d2", AN: "~@2 d2 ~ f#2 ~ a2 ~ c3@4 c3@4",
  AO: "c3!2 d#2 ~", AP: "~@8 d#2@7 ~", AQ: "~@2 a#1 ~", AR: "d#2 ~ d2 ~", AS: "d#2 ~ a#1 ~", AT: "c2 ~ g#1 ~",
  AU: "a#1@2 ~@2 d#1 d#2!3", AV: "d#2!4 d#1 d#2!3", AW: "[d#2!4 d#2@5 f2 d2 a#1 g2@5 g#2 f2 d2 d#2@2 d#2@2]/3",
  AX: "~ d#2 ~ d#2", AY: "d#2!2 ~ d2", AZ: "~ d2 ~ d2", BA: "d2!2 ~ c2", BB: "~ c2 ~ c2", BC: "c2!2 ~ f#2",
  BD: "~ f#2 ~ f#2", BE: "f#2!2 ~ g2", BF: "~ g2 ~ g2", BG: "g2@4 g2@4 g2@2 d#3@2 d#3 ~ d#3 ~",
  BH: "d#3@2 a#2@2 a#2 ~ a#2 ~ a#2@2 g2@2 g2 ~ g2 ~", BI: "g2 d#2!2 c#2 d2 d3 c3 d3", BJ: "a#2 d3 a#2 g2 d3@2 d2@2",
  BK: "~@3 g1", BL: "a1 ~ b1 ~ c2 ~ d2 ~", BM: "e2 ~ f#2 ~ g2@2 e2@2", BN: "g2@2 a2@2 d2!4", BO: "d2!8",
  BP: "d2 ~ d#2@2", BQ: "~@8 g1@7 ~", BR: "d2@4 ~@4 f2@7 ~", BS: "e2@4 ~@4 c2@7 ~", BT: "d2 ~ b1@2", BU: "a1 g1",
  BV: "c2@7 ~ d2@7 ~", BW: "d1@7 ~ b1@2 b2@2 b2@2 b2@2", BX: "a2!4 g2!4", BY: "c2!4 d2!4", BZ: "d2!4 g2@2 g1 ~",
  CA: "b1 ~ d2 ~ g2 ~ g1 ~", CB: "c2 e2 g2 g1", CC: "b1 d2 g2 g1", CD: "~@2 g1 ~ b1 ~ d2 ~ f2@4 f2@4", CE: "f2!2 g#1 ~",
  CF: "~ d2 f#2 a2 c3@2 c3@2", CG: "c3!2 d2 ~", CH: "d2 ~ g1 ~", CI: "~@2 d2 ~ g2 ~ b2 ~ d3@4 d3@4", CJ: "d3!2 b2 ~",
  CK: "~@2 d2 ~ g2 ~ b2 ~ d3@2 ~@2 d3@2 ~@2", CL: "d#3 ~ d#3 ~ e3@4", CM: "c3@7 ~ d3@7 ~",
  CN: "d2@7 ~ g2@2 d3@2 d3@2 d3@2", CO: "c3 d3 b2 d3 a2 d3 g2 d3", CP: "f#2 d3 d2 d3 g2 d3!3", CQ: "f#2 d3 d2 d3 g2!4",
  CR: "g2!4 c2!4", CS: "d2!4 g1@2 ~@2", CT: "~@2 g1 ~ b1 ~ d2 ~ g2@4 g2@4", CU: "g2!2 g1 ~",
  CV: "~@2 g1 ~ b1 ~ d2 ~ g2@4 d3@4", CW: "b2 g2 d2 g2", CX: "b1 d2 g1 ~", CY: "g2 ~ g1@2",
})).s("gm_contrabass").gain(0.41)

stack(violin, viola, cello, bass)

More by Wolfgang Amadeus Mozart