Strudelify

Allein Gott in der Höh' sei Ehr' BWV 676

J. S. Bach

KeyG majorTempo74 bpm
0:00/0:00
// Allein Gott in der Höh' sei Ehr' BWV 676 — J. S. Bach
// 74 bpm, 6/8, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (1/8 at bar 1, 6/8 at bar 2) are rendered on a constant 6/8 grid of one bar per cycle
// note: ch 3 "Organ" named as an organ, played on drawbar organ (its pan flute patch is not one); ch 5 "Organ" named as an organ, played on drawbar organ (its pan flute patch is not one); ch 7 "Organ" named as an organ, played on drawbar organ (its pan flute patch is not one); ch 12 "Organ" named as an organ, played on drawbar organ (its pan flute patch is not one)
// note: Transcription provider: pdmx. https://musescore.com/score/5910867; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 127 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(74/3)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [...]/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 · drawbar organ · "Organ"
const drawbar_organ = note(`<
  A B C D E F@2 G H I J K B C L M N O P@2 Q R S T@2 U B C D V W X Y Z AA AB ~ AC AD AE AF AG AH AI AJ@2 AK AL AM AN@2 AO
  AP AQ AR AS AT AU AV AW@2 AX AY AZ BA BB BC BD BE BF BG@2 BH BI BJ BK BL@2 BM BN BO BP BQ BR BS BT BU BV BW BX BY BZ
  CA CB CC CD@2 CE CF@2 CG CH CI CJ@2 CK CL CM CN CO CP CQ CR CS CT CU CV CW AY AZ BA BB CX B C CY CZ
>`.pickRestart({
  A: "~@10 g6 a6", B: "b6 g6 f#6 g6 a6 b6 c7 g6 f#6 g6 b6 c7", C: "d7 c7 b6 a6 g6 f#6 e6 g6 a6 b6 c7@2",
  D: "~ b6 a6 g6 e7@3 d7 e7 g7 f#7 a7", E: "g7 b7 a7 g7 f#7 e7 d7 f#7 g7 a7 b7 g7",
  F: "[a7@2 g7@2 f#7@4 e7@2 d7@4 a7@2 a6@3 f#6 g6 a6 b6 c#7]/2", G: "d7 b6 c#7 d7 e7 f#7 g7 a7 g7 f#7 g7 e7",
  H: "f#7@8 g7 a7 b7 g7", I: "e7@8 f#7 g7 a7 f#7", J: "d7 f#6 g6 a6 b6 c7 d7 f#7 e7 d7 c7 b6",
  K: "c7 e6 f#6 g6 a6 b6 c7 e7 d7 c7 b6 a6", L: "~ b6 a6 g6 e7@3 d#7 e7 g7 f#7 a7",
  M: "g7 a7 g7 f#7 e7 d7 c7 e7 a7 b7 c8 e7", N: "d#7 b6 a#6 b6 c#7 d#7 e7 b6 a#6 b6 d#7 e7",
  O: "f#7 e7 d#7 c#7 b6 a6 g6 a6 g6 f#6 e6 d#6", P: "[e6@9 ~@2 d#7]/2", Q: "e7@4 a7 f#7",
  R: "g7 e7 d#7 e7 f#7 g7 a7 b7 c8 b7 a7 g7", S: "f#7 d7 c#7 d7 e7 f#7 g7 a7 b7 a7 g7 f#7", T: "[e7@7 a7 f#7 d7@3]/2",
  U: "~ g7 a7 g7 e7 d7 c7 a7 b7 a7 d7 c7", V: "g7 b7 a7 g7 f#7 e7 d#7 e7 f#7 g7 a7 f#7",
  W: "g7 b6 c7 b6 a6 g6 f#6 b6 c7 b6 g6 f#6", X: "e6 f#6 g6 a6 b6 c7 d7 b6 a6 g6 f#6@2",
  Y: "~ g6 a6 b6 c6@3 e6 d6 b5 c6 a5", Z: "b5 g5 f#5 g5 a5 b5 c6 g5 f#5 g5 b5 c6",
  AA: "d6 b5 a5 b5 c6 d6 e6 c6 a5@2 f#6@2", AB: "b5 d6 g6@2 ~@8", AC: "~@10 d6 e6",
  AD: "f#6 d6 c#6 d6 e6 f#6 g6 d6 c#6 d6 f#6 g6", AE: "a6 g6 f#6 e6 d6 c#6 b5 d6 e6 f#6 g6@2",
  AF: "~ f#6 e6 d6 b6@3 a6 b6 d7 c#7 e7", AG: "d7 e7 d7 c7 b6 a6 g6 a6 b6 c7 d7 b6",
  AH: "c7 d7 c7 b6 a6 g6 f#6 g6 a6 b6 c7 a6", AI: "b6 c7 b6 a6 g6 f#6 e6@6", AJ: "[~ b6 a6 g6 f#6 e6 d6@8 ~@8 g6 a6]/2",
  AK: "b6 c7", AL: "d7 c7", AM: "b6@12 b6 a6 b6 a6@9", AN: "[b6@19 b5 c#6 d#6 e6 f#6]/2",
  AO: "g6 e6 d#6 e6 f#6 g6 a6 e6 d#6 e6 g6 a6", AP: "b6 a6 g6 f#6 e6 d6 c#6 e6 f#6 g6 a6@2",
  AQ: "~ g6 f#6 e6 c7@3 b6 c#7 e7 d#7 f#7", AR: "e7@4 a7 c7", AS: "d7@4 g7 b6",
  AT: "c7 g6 f#6 g6 a6 b6 c7 d7 e7 d7 c7 b6", AU: "a6 f#6 e6 f#6 g6 a6 b6 c7 d7 c7 b6 a6", AV: "g6@4 e6 f#6",
  AW: "[g6@9 ~@2 f#6]/2", AX: "g6@4 c7 a6", AY: "b6", AZ: "b6@3 a6@2 b6", BA: "c7@2 b6 a6@3",
  BB: "g6@8 e6@4 e6 f#6 g6 f#6 g6 f#6 g6 f#6 g6 f#6 g6 f#6", BC: "g6@5 g6",
  BD: "f#6 d6 c#6 d6 e6 f#6 g6 d6 c#6 d6 f#6 g#6", BE: "a6@5 a6", BF: "g6 e6 d#6 e6 f#6 g#6 a6 e6 d#6 e6 g#6 a#6",
  BG: "[b6 d7 g7@2 c#7 f#7@2 b6 e7@2 c#7 d#7]/2", BH: "e7 b6 c7 b6 a6 g6 f#6 a6 b6 a6 g#6 f#6",
  BI: "e6 f#6 g#6 a6 b6 c7 d7 e7 d7 c7 d7 b6", BJ: "c7 e7 f7 e7 d7 c7 b6 d7 e7 d7 c#7 b6",
  BK: "a6 b6 c#7 d7 e7 f7 g7 a7 g7 f#7 g7 e7", BL: "[f#7 d7 b7@2 e7 a7@2 d7 g7@2 e7 f#7]/2", BM: "g7@2 ~ g6@3",
  BN: "a6 b6", BO: "c7 b6", BP: "a6@12 f#6 g#6 a6 g#6 a6 g#6 a6 g#6 a6 g#6 f#6 g#6", BQ: "a6 ~",
  BR: "~ e7 a7 g7 f7 e7 d7 e7 f7 g7 a7 f7", BS: "g7 a7 g7 f7 e7 d7 c#7 d7 e7 f7 g7 e7", BT: "f#7 g7 f#7 e7 d7 c7 a#6@6",
  BU: "~ f7 e7 d7 c#7 b6 a6@6", BV: "~ b7 a7 g7 f#7 e7 d7 e7 d7 c7 b6 a6", BW: "g6 c7 b6 a6 g6 f#6 e6 g6 f#6 e6 d6 c6",
  BX: "b5 g6 f#6 g6 c7 d7 e7 a6 g#6 a6 d7 e7", BY: "f#7 b6 a#6 b6 e7 f#7 g7 f#7 e7 d#7 e7@2",
  BZ: "~ d#7 c#7 b6 c#7 d#7 e7 g7 f#7 e7 d#7 e7", CA: "d#7 e7 f#7@2 a6@2 g6 b6 e7 g6 f#6 e6",
  CB: "d#6@2 ~@5 g6 f#6 g6 a6 b6", CC: "c7 g6 f#6 g6 b6 c7 d7 g6 f#6 g6 c7 d7", CD: "[e7@19 c7 b6 c7 d7 e7]/2",
  CE: "f#7 c7 b6 c7 e7 f#7 g7 c7 b6 c7 f#7 g7",
  CF: "[a7@2 f#7@2 e7@2 f#7@2 g7@2 a7@2 d7@4 g7 f#7 g7@10 g7 f#7 g7 f#7 g7 f#7 e7 f#7 g7@2 b6@2 c7@2 b6@2 a6@2 g6@2]/2",
  CG: "f#6 b6 c7 b6 g6 f#6 e6@6", CH: "~ a6 b6 c7 d7 e7 f#7 d7 c#7 d7 e7 f#7",
  CI: "g7 d7 c#7 d7 f#7 g7 a7 g7 f#7 e7 d7 c7", CJ: "[b6 d7 c#7 b6 c#7 d7 e7 d7 c#7 d7 e7@4 d7 c#7 d7 e7 f#7@6]/2",
  CK: "f#7@6 e7 d#7 e7 g7 f#7 a7", CL: "g7@2 f#7 e7@3", CM: "d7@8 b6@4 b6 c#7 d7 c#7 d7 c#7 d7 c#7 d7 c#7 b6 c#7",
  CN: "d7@7 b6 e7 d7 c7 b6", CO: "c7 d7 e7@5 c7 f7 e7 d7 c7", CP: "d7 e7 f7@5 d7 g7 f7 e7 d7",
  CQ: "e7@7 a6 g#6 a6 b6 c7", CR: "d7@7 g6 f#6 g6 a6 b6", CS: "c7@7 e7 d7 c7 b6 a6", CT: "b6@2 ~@6 d#7 e7 f#7@2",
  CU: "~ b7 c8 b7 a7 g7 f#7 b7 c8 b7 g7 f#7", CV: "e7@2 f#7 g7 a7 b7 c8 b7 a7 g7 f#7@2",
  CW: "~ g7 a7 b7 c7@3 e7 d7 b6 c7 a6", CX: "g6@10 g6 a6", CY: "~@2 b6@2 a6@2 g6@2 e7@6 d7@2 e7@2 ~ g7@2 f#7@3",
  CZ: "a7 g7@4 ~",
})).s("gm_drawbar_organ").gain(0.01).pan(0.6)

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

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

// other · drawbar organ · "Organ"
const drawbar_organ_3 = note(`<
  ~ A B C D E F G H@3 I J A K L@2 M@2 N O P@3 Q R S T U V W X Y J Z@2 C D E F G H@3 I J A K L@2 M@2 AA O P@3 Q R S T U V
  W X Y AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR AS@3 AT AU AV AW AX AY AZ@2 BA BB BC BD BE BF BG BH BI@2 BJ
  BK BL BM@2 BN BO BP BQ BR BS BT BU BV BW W X Y BX BY@4
>`.pickRestart({
  A: "g2@2 ~ a2@2 ~", B: "b2@2 ~ c3@2 a2", C: "e3@2 c3 a2@2 d3", D: "g2@2 a2 b2@2 g2", E: "d3@2 ~ e3@2 ~",
  F: "f#3@2 ~ g3@2 e3", G: "b3@2 g3 e3@2 a3", H: "[d3@2 f#3 b3@5 e3 a3@5 d3 g3@2 e3]/3", I: "a3@2 g3 f#3@2 d3",
  J: "g3@2 f#3 e3 d3 c3", K: "b2@2 g2 a2@2 d#2", L: "[e2 f#2 g2@2 f#2 a3@2 g3 f#3 g3 f#3 e3]/2",
  M: "[d#3 b2 d#3 e3@4 g3 e3 c3 a3 c3]/2", N: "g2 b3 g2 a2 a3 a2", O: "c3 g3 b2 a2 f#3 b2",
  P: "[e3 g3 e3 c4@4 f#3 d3 b3@4 a3 g3 a3 e3 g3]/3", Q: "f#3@2 d3 g3@2 f#3", R: "e3@2 c3 a2 c3 d3",
  S: "g2 b3 g3 e3 c4 e3", T: "b2 d4 b2 c3 c4 d3", U: "e3 b3 d3 c3 a3 d3", V: "g3@2 ~ f#3@2 ~", W: "e3 e2 e3@2 d#3 b2",
  X: "~@2 e3@2 g3@4 f#3 b3 a3 b3", Y: "e3@2 a3 d3@2 d4", Z: "[g2@7 a2 b2 c3 b2 a2]/2", AA: "g2 b3 g2 a2 a3 b2",
  AB: "g3@2 f#3 e3@2 a3", AC: "d3@2 c3 b2@2 e3", AD: "a3@2 g3 f#3@2 b3", AE: "e3@2 d3 c#3@2 f#3", AF: "b3@2 ~ a3@2 ~",
  AG: "g3@2 ~ f#3@2 b3", AH: "e3@2 ~ d3@2 ~", AI: "c3@2 ~ b2@2 e3", AJ: "a3@2 ~ g3@2 ~", AK: "f3@2 ~ e3@2 a3",
  AL: "d3@2 ~ c3@2 ~", AM: "b2@2 ~ a2@2 d3", AN: "g3@2 f#3 e3 d3 e3", AO: "f3 e3 f#3 g3 f#3 g#3", AP: "a3 b3",
  AQ: "c4 b3", AR: "a3 g#3", AS: "[a3@2 c3 f3@5 b2 e3@5 a2 d3 e3 f3]/3", AT: "e3@2 d3 c#3@2 a2",
  AU: "d3@2 e3 f#3 e3 f#3", AV: "g3 f#3 g3 a3 g3 a3", AW: "b3 c4", AX: "d4 c4", AY: "b3 a3",
  AZ: "[b3@7 g3 d#3 e3 b3 e3]/2", BA: "a2 c4 a2 b2 d4 b2", BB: "c3 g3 c3 f#2 a3 f#2", BC: "g#2 b3 g#2 a2 e3 a2",
  BD: "d2 f#3 d2 e2 g3 e2", BE: "f#2 a3 d3 b2 e3 d3", BF: "c3 a2 d3 g3 f#3 e3", BG: "d#3 e3 d3 c3 c4 g#3",
  BH: "a3 a2 b2 c3 d3 c3", BI: "[b2 a2 g2 d3@4 e3 d3 c#3 a2 c#3]/2", BJ: "d3@4 c#3 b2", BK: "a#2 b2 a2 g2 g3 d#3",
  BL: "e3 e2 f#2 g2 a2 g2", BM: "[f#2 e2 d2 a2@4 b2 a2 g#2 e2 g#2]/2", BN: "a2 c3 b2 a2 a3 a2", BO: "b2 d3 c3 b2 g2 b2",
  BP: "c3@2 b2 a2@2 f#2", BQ: "b2@2 a2 g2@2 e2", BR: "a2 e3 g3 f#3 d3 f#3", BS: "g3@2 a3 b3@3", BT: "b3@3 a3@2 b3",
  BU: "c4@2 b3 a3@3", BV: "g3@8 e3@4 e3 f#3 g3 f#3 g3 f#3 g3 f#3 g3 f#3 e3 f#3", BW: "g3 f#3 e3 d#3 f#3 b2",
  BX: "g3@2 f3 e3 d3 c3", BY: "[g2@23 ~]/4",
})).s("gm_drawbar_organ").gain(0.02)

// bass · reed organ · "Organ"
const bass = note(`<
  ~ A B C D E F G H@3 I J A K L@2 M@2 N O P@3 Q R S T U V W X Y J Z@2 C D E F G H@3 I J A K L@2 M@2 AA O P@3 Q R S T U V
  W X Y AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR AS@3 AT AU AV AW AX AY AZ@2 BA BB BC BD BE BF BG BH BI@2 BJ
  BK BL BM@2 BN BO BP BQ BR BS BT BU BV BW W X Y BX BY@4
>`.pickRestart({
  A: "g1@2 ~ a1@2 ~", B: "b1@2 ~ c2@2 a1", C: "e2@2 c2 a1@2 d2", D: "g1@2 a1 b1@2 g1", E: "d2@2 ~ e2@2 ~",
  F: "f#2@2 ~ g2@2 e2", G: "b2@2 g2 e2@2 a2", H: "[d2@2 f#2 b2@5 e2 a2@5 d2 g2@2 e2]/3", I: "a2@2 g2 f#2@2 d2",
  J: "g2@2 f#2 e2 d2 c2", K: "b1@2 g1 a1@2 d#1", L: "[e1 f#1 g1@2 f#1 a2@2 g2 f#2 g2 f#2 e2]/2",
  M: "[d#2 b1 d#2 e2@4 g2 e2 c2 a2 c2]/2", N: "g1 b2 g1 a1 a2 a1", O: "c2 g2 b1 a1 f#2 b1",
  P: "[e2 g2 e2 c3@4 f#2 d2 b2@4 a2 g2 a2 e2 g2]/3", Q: "f#2@2 d2 g2@2 f#2", R: "e2@2 c2 a1 c2 d2",
  S: "g1 b2 g2 e2 c3 e2", T: "b1 d3 b1 c2 c3 d2", U: "e2 b2 d2 c2 a2 d2", V: "g2@2 ~ f#2@2 ~", W: "e2 e1 e2@2 d#2 b1",
  X: "~@2 e2@2 g2@4 f#2 b2 a2 b2", Y: "e2@2 a2 d2@2 d3", Z: "[g1@7 a1 b1 c2 b1 a1]/2", AA: "g1 b2 g1 a1 a2 b1",
  AB: "g2@2 f#2 e2@2 a2", AC: "d2@2 c2 b1@2 e2", AD: "a2@2 g2 f#2@2 b2", AE: "e2@2 d2 c#2@2 f#2", AF: "b2@2 ~ a2@2 ~",
  AG: "g2@2 ~ f#2@2 b2", AH: "e2@2 ~ d2@2 ~", AI: "c2@2 ~ b1@2 e2", AJ: "a2@2 ~ g2@2 ~", AK: "f2@2 ~ e2@2 a2",
  AL: "d2@2 ~ c2@2 ~", AM: "b1@2 ~ a1@2 d2", AN: "g2@2 f#2 e2 d2 e2", AO: "f2 e2 f#2 g2 f#2 g#2", AP: "a2 b2",
  AQ: "c3 b2", AR: "a2 g#2", AS: "[a2@2 c2 f2@5 b1 e2@5 a1 d2 e2 f2]/3", AT: "e2@2 d2 c#2@2 a1",
  AU: "d2@2 e2 f#2 e2 f#2", AV: "g2 f#2 g2 a2 g2 a2", AW: "b2 c3", AX: "d3 c3", AY: "b2 a2",
// … 10 more lines

More by J. S. Bach