Strudelify

the legend of zelda twilight princess - midnas lament

Toru Minegishi

KeyG majorTempo144 bpm
0:00/0:00
// the legend of zelda twilight princess - midnas lament — Toru Minegishi
// 144 bpm, 4/4, 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 (1/8 at bar 1, 4/4 at bar 2, 3/4 at bar 189) are rendered on a constant 4/4 grid of one bar per cycle
// note: Transcription provider: pdmx. https://musescore.com/score/5865375; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 262 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(144/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.

// other · violin · "Violin I"
const violin = note(`<
  ~ A@2 B C D E D F G H I J K L K M N O P Q R S T U V W X Y Z AA X AB AC V K AD AE AF AG AH AG AI AJ AK AL AM ~@4 AN AO
  AP AQ AR AS AT AU D E D F G H I J K L K M N O P Q R S T U V W X Y Z AA X AB AC V K AD AE AF AG AH AG AI AJ AK AL AM
  ~@4 AN AO AP AQ AR AS AT AU ~ AV AW AX ~@5 AY@3 ~@5 AZ@3 ~@6 BA BB BC BD@2 BE BF BG BH BI@2 AV BJ ~@5 BK@3 ~@6 BL@3
  ~@5 BM BN BO BP BQ@2 BR BS BT BU BI@2 AV ~@4 BV@2 BW@2 BX BY@6 BZ@2 CA@7 CB@4 CC@2 CD@3 CE CF CG@7 CH@2 CI@3 CJ CK@3
  ~@2 CL CM@3 CN@3 CO@4 CP@2 CQ@3 CR@4 CS@2
>`.pickRestart({
  A: "~@6 e5 ~ f#5 g5 ~ a5 [f#5,b5]@12", B: "~ [b3,d4] ~ [b3,d4] ~ [b3,d4] ~ [b3,d4]",
  C: "[b3,d4]!2 ~ [b3,d4] ~ [b3,d4] ~ [b3,d4]", D: "b3 g4 f#4 d4", E: "c#4@9 b3 ~ a3 c#4@12", F: "e4@9 f#4 ~ g4 a4@12",
  G: "[g4,b4]", H: "f4 c5 b4 g4", I: "[d4,a4]@18 [d4,a4]@3 g4 ~ a4",
  J: "f#4@6 b5 ~ a5 f#5 ~ d#5 a5 ~ f#5 d#5 ~ b4 f#5 ~ d#5 b4@3", K: "b4 g5 f#5 d5", L: "c#5@9 b4 ~ a4 c#5@12",
  M: "e5@9 f#5 ~ g5 [f#5,a5]@9 b5 ~ c#6", N: "[f#5,d6]@3 f#6", O: "e6 a5@3", P: "[b4,g5]@3 d6", Q: "c#6 [c#5,f#5]@3",
  R: "g5@3 g5 ~ a5 b5@18", S: "b5@3 b5 ~ c#6 d6@18", T: "a5@3 a5 ~ b5 c#6@18", U: "c#6@3 c#6 ~ d6 e6@12 ~@3 b5 ~ c#6",
  V: "d6", W: "d5", X: "d5@2 e5 f#5", Y: "a5@3 a5 e5 d5", Z: "c#5@18 c#5@3 c5 ~ b4", AA: "a4@3 ~", AB: "a5@3 c#6",
  AC: "c#6@18 c#6@3 b5 ~ c#6", AD: "c#5@3 ~", AE: "d5 a#5 a5 f5", AF: "[c5,e5]@12 c5 ~ d5 e5 ~ f5 g5 ~ a5 a#5 ~ c6",
  AG: "d6@6 a5@12 d5 ~ e5 f5 ~ g5", AH: "[f5,a5]@3 ~", AI: "[f5,a5]@18 ~@3 e4 ~ f4",
  AJ: "f#4@3 e4 ~@2 d4 ~@2 e4 ~@2 f#4 ~@2 g#4 ~@2 a4@6", AK: "g#4 ~@2 f#4 ~@2 e4 ~@2 f#4 ~@2 g#4 ~@2 a4 ~@2 b4@6",
  AL: "f#4 ~@2 e4 ~@2 d4 ~@2 e4 ~@2 f#4 ~@2 g#4 ~@2 a4 ~@2 b4 ~@2", AM: "g#4 ~ a4 g#4@3 g#4@18",
  AN: "a4 ~@2 g4 ~@2 f#4 ~@2 g4 ~@2 a4 ~@2 b4 ~@2 c#5@6", AO: "[a4,c#5]",
  AP: "a5 ~@2 g5 ~@2 f#5 ~@2 g5 ~@2 a5 ~@2 b5 ~@2 c#6@6", AQ: "[a4,c#6]",
  AR: "a5 ~@2 g5 ~@2 f5 ~@2 g5 ~@2 a5 ~@2 a#5 ~@2 c6@6", AS: "e5 c6 b5 g5", AT: "f#5@18 f#5@3 e5 ~ d5", AU: "c#5",
  AV: "b4@2 ~ b4 ~ b4 b4@2 ~ b4 ~ b4 ~ b4@2 ~ b4!2 ~ b4@2 ~ b4!2",
  AW: "~ b4@2 ~ b4 ~ b4 b4@2 ~ b4 ~ b4 ~ b4@2 ~ b4!2 ~ b4@2 ~ b4", AX: "~ b4 b4@2 ~@20",
  AY: "[~@8 b4@6 ~ g5@6 f#5@6 d5@6 c#5@25 ~@14]/3", AZ: "[~@17 d5@6 d6@6 c#6@6 a5@6 ~ f#5@25 ~@5]/3",
  BA: "~ d5@2 ~ d5 ~ d5 d5@2 ~ d5 ~ d5 ~ d5@2 ~ d5!2 ~ d5@2 ~ d5",
  BB: "~ d5 c#5@2 ~ c#5 ~ c#5 c#5@2 ~ c#5 ~ c#5 ~ c#5@2 ~ c#5!2 ~ c#5@2 ~",
  BC: "c#5 ~ c#5 b4@2 ~ b4 ~ b4 b4@2 ~@2 b4!2 ~ b4@2 ~ b4!2 ~ b4@2",
  BD: "[~ b4 ~ b4 a4@2 ~ a4 ~ a4 a4@2 ~@2 a4!2 ~ a4@2 ~ a4!2 ~ a4@2 ~ a4 ~ a4 b4@2 ~ b4 ~ b4 b4@2 ~@2 b4!2 ~ b4@2 ~ b4!2 ~]/2",
  BE: "b4@2 ~ b4 ~ b4 a4@2 ~ a4 ~ a4 ~ a4@2 ~ a4!2 ~ a4@2 ~ a4!2",
  BF: "~ a4@2 ~ a4 ~ a4 b4@2 ~ b4 ~ b4 ~ b4@2 ~ b4!2 ~ b4@2 ~ b4",
  BG: "~ b4 b4@2 ~ b4 ~ b4 a4@2 ~ a4 ~ a4 ~ a4@2 ~ a4!2 ~ a4@2 ~",
  BH: "a4 ~ a4 a4@2 ~ a4 ~ a4 b4@2 ~@2 b4!2 ~ b4@2 ~ b4!2 ~ b4@2",
  BI: "[~ b4 ~ b4 b4@2 ~ b4 ~ b4 b4@2 ~@2 b4!2 ~ b4@2 ~ b4!2 ~ b4@2 ~ b4 ~ b4 b4@2 ~ b4 ~ b4 b4@2 ~@2 b4!2 ~ b4@2 ~ b4!2 ~]/2",
  BJ: "~ b4@2 ~ b4 ~ b4 b4@2 ~ b4 ~ b4 ~ b4@2 ~@8", BK: "[~@20 b4@6 g5@6 f#5@6 ~ d5@6 c#5@25 ~@2]/3",
  BL: "[~@4 d5@6 d6@6 ~ c#6@6 a5@6 f#5@25 ~@18]/3", BM: "~@13 d5@2 ~ d5!2 ~ d5@2 ~ d5!2",
  BN: "~ d5@2 ~ d5 ~ d5 d5@2 ~ d5 ~ d5 ~ c#5@2 ~ c#5!2 ~ c#5@2 ~ c#5",
  BO: "~ c#5 c#5@2 ~ c#5 ~ c#5 c#5@2 ~ c#5 ~ c#5 ~ b4@2 ~ b4!2 ~ b4@2 ~",
  BP: "b4 ~ b4 b4@2 ~ b4 ~ b4 b4@2 ~@2 b4!2 ~ a4@2 ~ a4!2 ~ a4@2",
  BQ: "[~ a4 ~ a4 a4@2 ~ a4 ~ a4 a4@2 ~@2 a4!2 ~ b4@2 ~ b4!2 ~ b4@2 ~ b4 ~ b4 b4@2 ~ b4 ~ b4 b4@2 ~@2 b4!2 ~ a4@2 ~ a4!2 ~]/2",
  BR: "a4@2 ~ a4 ~ a4 a4@2 ~ a4 ~ a4 ~ a4@2 ~ a4!2 ~ b4@2 ~ b4!2",
  BS: "~ b4@2 ~ b4 ~ b4 b4@2 ~ b4 ~ b4 ~ b4@2 ~ b4!2 ~ a4@2 ~ a4",
  BT: "~ a4 a4@2 ~ a4 ~ a4 a4@2 ~ a4 ~ a4 ~ a4@2 ~ a4!2 ~ b4@2 ~",
  BU: "b4 ~ b4 b4@2 ~ b4 ~ b4 b4@2 ~@2 b4!2 ~ b4@2 ~ b4!2 ~ b4@2", BV: "[~@9 a5@13 f6@6 e6@13 d6@7]/2",
  BW: "[b5@13 a5@3 g5@3 ~ b5@20 ~@8]/2", BX: "~@11 d6@3 a6@3 e6@7",
  BY: "[d6@3 a6@3 e6@20 ~@20 a5@13 f6@6 e6@13 c6@7 d6@13 e6@3 f6@3 ~ g6@20 ~@19]/6",
  BZ: "[~@6 f5@3 ~ c6@3 g5@3 f5@3 ~ e5@20 ~@8]/2",
  CA: "[~@11 a5@39 d#5@10 a#5@3 a#5@7 a5@10 f5@3 f5@6 g5@20 g5@13 f5@3 g5@3 ~ e5@19 e5@13 ~@7]/7",
  CB: "[a5@13 f6@7 e6@13 d6@6 b5@13 a5@3 ~ g5@3 b5@20 ~@17]/4", CC: "[~@2 d6@3 a6@3 ~ e6@6 d6@3 a6@3 ~ e6@20 ~@6]/2",
  CD: "[~@13 a5@13 f6@7 e6@13 c6@6 d6@13 e6@3 ~ f6@3]/3", CE: "g6@5 ~", CF: "~@11 f5",
  CG: "[~ c6@3 g5@3 ~ f5@3 e5@20 ~@13 a5@3 b5@3 c6@20 c6@13 e6@6 d6@10 g5@3 g5@26 ~ f5@19 f5@13 c6@7]/7",
  CH: "[b5@10 e5@3 e5@26 ~@7 g5@2]/2", CI: "[~ d6@3 a5@7 g5@3 d6@3 a5@13 ~@7 g5@3 d6@3 ~ a5@26 ~@2]/3",
  CJ: "~@4 a5@3 ~ e6@3 b5@6 a5@3 ~ e6@3", CK: "[b5@13 ~@7 c6@3 g6@3 d6@3 c6@3 ~ b5@20 ~@19]/3", CL: "~@11 a5@13",
  CM: "[f6@6 e6@13 ~ d6@6 b5@13 a5@3 g5@3 ~ b5@20 ~@6]/3", CN: "[~@13 d6@3 a6@3 ~ e6@6 d6@3 a6@3 ~ e6@20 ~@19]/3",
  CO: "[a5@13 f6@7 e6@13 c6@6 d6@13 e6@3 ~ f6@3 g6@20 ~@17]/4", CP: "[~@9 f5@3 c6@3 g5@3 f5@3 ~ e5@20 ~@6]/2",
  CQ: "[~@13 a5@39 d#5@10 a#5@3 a#5@7]/3", CR: "[a5@10 f5@3 f5@7 g5@19 g5@13 f5@3 ~ g5@3 e5@19 e5@13 ~@5]/4",
  CS: "[~@11 d5@10 ~@3]/2",
})).s("gm_violin").gain(0.3)

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

// other · cello · "Violoncello"
const cello = note(`<
  A B C D@2 E@5 F G H E@4 I J K L M N O P Q R S T U@2 S V W X Y Z AA AB AC@2 AD AE AF AG AF AH AI AJ AI AK AL AM AL AM
  AN AO AP AQ E@5 F G H E@4 I J K L M N O P Q R S T U@2 S V W X Y Z AA AB AC@2 AD AE AF AG AF AH AI AJ AI AK AL AM AL AM
  AN AO AP AQ ~ AR ~ AS AT@4 AU@3 AV@2 AW AX@5 AY@6 AZ@4 BA@2 BB@6 ~ BC@8 BD@3 BE BF@2 BG@3 BH BI@5 BJ@3 BK@8 ~@3 BL@5
  BM@4 BN@5 BM@4 BO@5 BM@4 BN@5 BM@4 BP@5 BQ@4 BR@5 BS@4 BN@5 BM@4 BT@5 BU@6
>`.pickRestart({
  A: "~@21 e2 ~ e2", B: "e2@4 e2@3 e2", C: "e2", D: "e2!2 ~@2 e2!2 ~@2", E: "e2 e3 ~ e3 e2 e3 ~ e3",
  F: "f2 f3 ~ f3 f2 f3 ~ f3", G: "a#2 f3 ~ f3 a#2 f3 ~ f3", H: "b2 d#3 ~ d#3 b2 d#3 ~ d#3",
  I: "b2 f#3 ~ f#3 b2 f#3 ~ b2", J: "a2 e3 ~ e3 ~ e3 ~ e3", K: "g2 d3 ~ d3 ~ d3 ~ g2", L: "f#2 c#3 ~ c#3 ~ c#3 ~ c#3",
  M: "g2 g3 ~ g3 ~ g3 ~ g3", N: "g#2 f3 ~ f3 ~ f3 ~ f3", O: "a2 a3 ~ a3 ~ a3 ~ a3", P: "a#2 g3 ~ g3 ~ g3 ~ g3",
  Q: "b2 f#3 ~ f#3 ~ f#3 ~ f#3", R: "b2@3 f#3@3 ~@3 f#3@3 f#2@4 g2@4 a2@4", S: "b2 b2@2 b2 b2@3 b2",
  T: "c#3 c#3@2 c#3 c#3@4", U: "d3 d3@2 d3!2 d3@3", V: "c#3 c#3@2 c#3 c#3@3 c#3", W: "d3 d3@2 d3!2 d3@2 d3",
  X: "b2!2 ~@2 b2!2 ~@2", Y: "g2 b2 ~ b2 ~ g2 ~ b2", Z: "a2 c#3 ~ c#3 ~ a2 ~ c#3", AA: "a#2 d3 ~ d3 ~ a#2 ~ d3",
  AB: "c3 e3 ~ e3 ~ c3 ~ e3", AC: "d3!2 ~ g3 d3!2 ~ g3", AD: "d3!2 ~ f3 d3!2 ~ f3", AE: "d3!2 ~ f3 d3 f3 ~ a2",
  AF: "b2 d3 ~ d3 b2 d3 ~ f#2", AG: "b2 e3 ~ e3 b2 e3 ~ e3", AH: "b2 e3 ~ e3 b2 e3 ~ b2", AI: "e3 g3 ~ g3 e3 g3 ~ b2",
  AJ: "e3 f#3 ~ f#3 e3 f#3 ~ f#3", AK: "e3 a3 ~ a3 e3 a3 ~ a3", AL: "g2 d3 ~ d3 g2 d3 ~ d3", AM: "d3!2 ~@3 d3 a3!2",
  AN: "a#2!2 ~ d3 a#2!2 ~ d3", AO: "f2 f3 ~ f3 ~ f2 c3!2", AP: "e2@2 ~@2 e2 b2 ~ b2", AQ: "a2!2 ~@2 a2!2 ~ a2",
  AR: "b2", AS: "~@2 b2@13 b2@3 c#3@3 d3@3",
  AT: "[b2@3 a2@13 f#2@12 b2@13 b2@3 c#3@3 d3@3 b2@3 a2@25 b2@13 b2@3 c#3@2]/4",
  AU: "[~ d3@3 b2@3 a2@13 f#2@12 b2@25 ~@15]/3", AV: "[~@4 a2@6 d3@13 d3@3 e3@3 f#3@3 d3@3 c#3@13]/2",
  AW: "a2@13 d3@11", AX: "[~ d3@3 e3@3 f#3@3 d3@3 ~ c#3@25 d3@12 d3@3 e3@3 f#3@3 ~ d3@3 c#3@12 a2@13 f#3@25 ~@6]/5",
  AY: "[~@17 f#3@2 g3@19 a3@3 b3@3 f#3@12 d3@6 ~@5 e3@2 f3@19 g3@3 a3@3 e3@12 c3@6 ~@5 f#3@2 g3@19 a3@3 b3@3, ~@8 e3 ~@24 d3 ~@24 e3 ~@13]/6",
  AZ: "[f#3@13 d4@12 b3 c#4 d4@4 c#4@13 f#4@6 c#4@13 a#3@12 b2@13 b2@3 c#3@3 d3@2]/4",
  BA: "[~ b2@3 a2@13 f#2@12 b2@13 b2@3 c#3@3]/2",
  BB: "[d3@3 b2@3 a2@25 b2@13 b2@3 c#3@3 d3@3 b2@3 a2@13 f#2@12 b2@25 b2@25 ~@13]/6",
  BC: "[~@14 b2@12 b2@3 c#3@3 d3@3 b2@3 ~ a2@12 f#2@13 b2@12 b2@3 c#3@3 d3@3 ~ b2@3 a2@25 b2@12 b2@3 c#3@3 ~ d3@3 b2@3 a2@12 f#2@13 b2@25 ~@3]/8",
  BD: "[~@16 a2@6 d3@12 d3@3 ~ e3@3 f#3@3 d3@3 c#3@12 a2@13]/3", BE: "d3@13 d3@3 e3@3 f#3@3 d3@2",
  BF: "[~ c#3@25 d3@13 d3@3 e3@3 f#3@3]/2", BG: "[d3@3 c#3@13 a2@12 f#3@25 ~@19]/3",
  BH: "~@3 e3@2 ~ g3@18, ~@5 f#3@2 ~@17",
  BI: "[~ a3@3 b3@3 f#3@13 d3@6 ~@3 d3@2 ~ f3@19 g3@3 a3@3 e3@13 c3@6 ~@3 e3@2 ~ g3@19 a3@3 b3@3 f#3@13, ~@31 e3@2 ~@48 f#3@2 ~@37]/5",
  BJ: "[d4@13 [b3,c#4] d4@4 ~ c#4@12 f#4@6 ~ c#4@12 a#3@13 b2@9]/3", // Bsus2
  BK: "[~@3 b2@3 c#3@3 d3@3 ~ b2@3 a2@12 f#2@13 b2@12 b2@3 c#3@3 d3@3 ~ b2@3 a2@25 b2@12 b2@3 c#3@3 ~ d3@3 b2@3 a2@12 f#2@13 b2@25 b2@25 ~]/8",
  BL: "[~@2 d3@20 d3@19 d3@20 g3@20 d3@19 d3@20]/5", BM: "[d3@20 d3@19 d3@20 d3@19 d3@18]/4",
  BN: "[~@2 d3@20 d3@19 d3@20 d3@20 d3@19 d3@20]/5", BO: "[~@2 d#3@20 d#3@19 g#2@20 g#2@20 a2@19 a2@20]/5",
  BP: "[~@2 a2@20 a2@19 g2@20 g2@20 f2@19 f2@20]/5", BQ: "[e2@3 b2@3 e2@13 ~ e2@3 b2@3 e2@13 f2@20 f2@19 f#2@18]/4",
  BR: "[~@2 f#2@20 g2@19 g2@20 g#2@20 g#2@19 a2@3 ~ b2@3 a2@13]/5",
  BS: "[a2@3 b2@3 a2@13 ~ a2@3 b2@3 a2@13 d3@20 d3@19 d3@18]/4", BT: "[~@2 d3@20 d3@19 d3@20 d3@20 d3@19 d#3@20]/5",
  BU: "[d#3@20 g#2@19 g#2@20 a2@19 a2@20 ~@20 d3@20 ~@6]/6",
})).s("gm_cello").gain(0.25)

stack(violin, viola, cello)

More by Toru Minegishi