Strudelify
It's Only a Paper Moon cover art

Adventures Of The Heart

It's Only a Paper Moon

Frank Sinatra

KeyE♭ majorTempo135 bpm
0:00/0:00
// It's Only a Paper Moon — Frank Sinatra
// 135 bpm, 4/4, key D# major. 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 83 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(135/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, A@4 for four bars: edit a riff to change every repeat.

// other · vibraphone
const vibraphone = note(`<
  ~@10 A@3 B C@2 D@2 E F@2 B G@2 H@4 I@4 J K L@2 M@2 N@2 O@2 ~@8 P Q@3 R@2 S@4 T@4 J U V@2 W@2 X@2 Y@2 Z@3 AA ~@5
>`.pickRestart({
  A: "[~@7 bb3@3 ~ bb3@2 bb4@3 ~ bb4@2 ~@4 bb4@2 ab4@3 ~@2 g4@4 ~ f4@19 bb3@3 ~ bb3@2 ~ ab4@3 ~ ab4@2 ~@3 ab4@2]/3",
  B: "~ g4@3 ~@2 f4@4 ~ eb4@13", C: "[~@7 bb3@3 ~ bb3@2 bb4@3 ~ bb4@2 b4@3 ~ c5@7 ~ ab4@3 f4@10 ~@2 eb4@2]/2",
  D: "[~ d4@5 ~ c5@4 bb4@7 d4@4 ~ eb4@20 ~@5]/2", E: "~@6 bb3@3 ~ bb3@2 bb4@3 ~@2 bb4@2 ~@3 bb4@2",
  F: "[ab4@3 ~@3 g4@4 f4@20 bb3@3 ~ bb3@2 ~ ab4@3 ~ ab4@2 ~@3 ab4@2]/2",
  G: "[~@7 bb3@3 ~ bb3@2 bb4@3 ~ bb4@2 b4@3 ~ c5@7 ab4@4 f4@10 ~@2 eb4@2]/2",
  H: "[d4@4 ~@2 c5@3 ~ bb4@7 ~ d4@4 eb4@12 ~@8 eb4@4 f4@13 ~ gb4@10 g4@13 ~@5 ab4@3 ~@3 c5@2]/4",
  I: "[bb4@4 ~@2 bb4@5 ~ g4@3 ~@3 g4@4 eb4@12 ~@8 eb4@4 f4@13 ~ gb4@10 g4@13 ~@5 gb4@3 ~@3 gb4@2]/4",
  J: "g4@4 ab4@2 a4@4 bb4@7 ~ gb4@3 ~ g4@2", K: "c5@3 ~ d5@2 c5@4 f4@12 ~@2",
  L: "[~@4 bb4@3 ~@3 g4@2 ~ bb4@3 c5@2 bb4@4 ~ ab4@7 g4@4 ~ f4@13]/2",
  M: "[~@4 ab4@3 ~@3 f4@2 ab4@4 bb4@2 ab4@4 g4@7 ~@2 f4@4 eb4@12 ~]/2",
  N: "[~@5 bb4@3 ~@2 g4@2 ~ bb4@3 ~ bb4@2 b4@4 c5@7 ab4@4 f4@10 ~@2 eb4@2]/2",
  O: "[d4@5 ~@2 c5@3 ~ bb4@7 g4@4 eb4@20 ~@6]/2", P: "~@4 bb4@3 ~@2 c5@3 ~ eb5@4 c5@4 bb4 ~@2",
  Q: "[~ ab4@4 ~ bb4@5 f4@17 ~ f4@4 ~ g4@3 bb4@4 ~ g4@2 ~@3 f4@2 g4@4 ~ g4@4 ~ eb4@13]/3",
  R: "[~@5 bb4@5 g4@2 bb4@3 ~ bb4@2 ~ b4@4 c5@7 ab4@4 f4@10 ~@2 eb4@2]/2",
  S: "[d4@6 ~ c5@3 ~ bb4@7 g4@4 eb4@13 ~@7 eb4@4 f4@13 ~ gb4@10 g4@13 ~@5 ab4@3 ~@3 c5@2]/4",
  T: "[bb4@4 ~@2 bb4@4 ~@2 g4@4 ~@3 g4@4 eb4@13 ~@6 eb4@4 f4@14 gb4@10 g4@13 ~@5 gb4@3 ~@3 gb4@2, ~@46 e4 ~@49]/4",
  U: "c5@3 ~ d5@2 c5@4 f4@13 ~", V: "[~@4 bb4@2 ~@4 g4@2 ~ bb4@3 c5@2 bb4@3 ~ ab4@7 ~ g4@4 ~ f4@13]/2",
  W: "[~@4 ab4@4 ~@2 f4@2 ab4@3 ~ bb4@2 ab4@4 g4@7 ~@2 f4@4 eb4@12 ~]/2",
  X: "[~@4 bb4@5 ~ g4@2 bb4@3 ~ bb4@2 b4@3 ~ c5@7 ~ ab4@3 ~ f4@12 ~@2]/2",
  Y: "[~@4 bb4@2 bb4@3 ~ g4@2 ~ bb4@3 ~ bb4@2 b4@3 ~ c5@6 ~ ab4@3 ~ f4@12 ~@2]/2",
  Z: "[~@5 bb4@5 ~ g4@2 bb4@2 ~ bb4@2 ~ b4@3 c5@7 ~ ab4@4 f4@7 ~@2 eb4@3 d4@18 ~@3 c5@4 ~]/3",
  AA: "bb4@12 ~@6 c5@3 ~ eb5@2",
})).s("gm_vibraphone").gain(0.35).pan(0.3)

// bass · acoustic bass
const bass = note(`<
  ~ A B C D E F G H I J K L M G N O P J Q@2 R S T U V W X Y Z AA AB AC AD AE AF AG R AH AI AJ AK J AL AM AN AO AP AQ
  AR@5 G T AS V W X Y Z AA AB AC AD AE AF AG R AT AU AT AV AW N AX AY ~ AZ@3 ~
>`.pickRestart({
  A: "~@9 eb2 ~@2", B: "b1@6 b1@5 ~ bb1@6 d2@6", C: "eb3 g2 ab2 bb2", D: "~@6 bb1@5 ~@7 e2@5 ~, ab2@2 ~ a1@2 ~",
  E: "bb1 bb2!2 bb1", F: "b1@6 b1@5 ~@7 e2@5 ~, ~@3 bb1@2 ~", G: "eb2@3 ~ eb2@2 bb2@6 g2@6 eb2@5 ~",
  H: "b1@6 c2@6 f2@4 ~@2 f1@4 bb1 ~", I: "~@2 bb1 ~@2 f2 bb2@3 bb1@3", J: "~@6 f2@5 ~ e2@6 e2@6, eb2 ~@2",
  K: "f2@2 ~@2 f2@2 c3@4 ~@8 gb2@5 ~, ~@3 bb1@2 ~", L: "f2 a1 bb1 d2", M: "~@6 e2@5 ~ eb2@6 bb1@6, eb2 ~@2",
  N: "ab2 ab1 a1!2", O: "bb1 c2 db2 d2", P: "eb2@5 ~ bb1@3 ~ c2 ~@5 f2 ~@5 e2@2", Q: "f2 a1 bb1 e2",
  R: "eb2 ~ eb2 bb2@2 ~ eb2@3 bb1@3", S: "eb2 d2 eb2!2", T: "ab2@5 ~ ab2@6 ~@6 b1@5 ~, ~@3 a1@2 ~",
  U: "~@6 b1@5 ~@7 e2@5 ~, bb1@2 ~ bb1@2 ~", V: "~@6 bb1@5 ~ a1@5 ~ a1@6, eb2 ~@2",
  W: "ab2@2 ~@2 ab2@2 eb3@4 ~@8 e2@5 ~, ~@3 a1@2 ~", X: "eb2@6 b1@6 ~@6 gb2@5 ~, ~@3 c2@2 ~",
  Y: "f2@2 ~@2 f2@2 c3@4 ~@2 bb1@5 ~ bb1@6", Z: "eb2@5 ~ eb2@6 a1@5 ~ a1@6", AA: "ab2 ~ ab2 eb3@2 ~ a1@3 d2@3",
  AB: "bb1 d2 eb2 d2", AC: "db2 ~ db2 ab2@2 ~ c2@3 e2@3", AD: "f2 ~ f2 c3@2 ~ bb1@3 bb2 f2 bb1",
  AE: "~@6 f2@5 ~@7 gb2@5 ~, eb2@2 ~ e2@2 ~", AF: "~@6 b1@5 ~@7 gb2@5 ~, f2@2 ~ bb1@2 ~",
  AG: "~@6 b1@5 ~ bb1@6 d2@6, f2 ~@2", AH: "eb2@5 ~ eb2@6 bb2@5 ~ bb2@6", AI: "ab2@6 ab1@6 ~@6 b1@5 ~, ~@3 a1@2 ~",
  AJ: "~@6 b1@5 ~ bb1@6 d2@6, bb1 ~@2", AK: "~@6 c2@5 ~ b1@6 bb1@6, eb2 ~@2", AL: "f2 ~ f2 c3@2 ~ bb1@3 e2@3",
  AM: "~@6 b1@5 ~ bb1@6 bb1@6, f2 ~@2", AN: "eb2@5 ~ eb2@6 eb2@6 bb1@6", AO: "eb2@6 d2@6 ~@6 a2@5 ~, ~@3 g2@2 ~",
  AP: "ab2@2 ~@2 ab2@2 eb3@4 ~@8 b1@5 ~, ~@3 a1@2 ~", AQ: "bb1 f2 bb1 d2",
  AR: "[eb2@6 d2@6 c2@5 ~ bb1@4 eb2@43 ~ c2@40 ~@6 bb1@2 bb2@5 ~]/5", AS: "bb1 a1 bb1 d2", AT: "eb2 eb3 bb2 eb2",
  AU: "ab2 ~ ab2 eb3@2 ~ a1@3 bb1@3", AV: "~@6 bb1@5 ~ a1@6 bb1@6, ab2 ~@2", AW: "eb2 f2 g2 bb2",
  AX: "bb1@6 f2@4 ~@2 bb2 ~@11", AY: "~@4 f2@2 bb1@3 ~ bb2 ~@13", AZ: "[~@8 a2 bb2@2 eb2@25]/3",
})).s("gm_acoustic_bass").gain(0.25).pan(0.3)

// chords · piano
const piano = note(`<
  ~@2 A B C D E F G H@2 I@2 J K L M N O P@2 Q R C S T U@2 V W@2 X Y Z AA AB AC Q K AD AE AF AG AH AI AJ AK AL AM AN@5 AO
  AP AQ T U@2 V W@2 AR Y Z AA AB AC AS@7 AT AU AV AW@4
>`.pickRestart({
  A: "[a3,db4,eb4,gb4] ~ [a3,db4,eb4,gb4] ~@9", B: "[g3,db4,f4,bb4] ~@9 [g3,db4,f4,bb4] ~@11 [gb3,bb3,c4,f4]@2",
  C: "~@10 [gb3,a3,c4,eb4]@3 ~@11", D: "~@4 [g3,c4,db4,f4]@2 ~@10 [g3,c4,db4,f4] ~@5 [a3,eb4,ab4,db5]@2",
  E: "~@10 [ab3,bb3,d4,f4]@13 ~", F: "~@4 [g3,bb3,db4,f4]@2 ~@10 [g3,bb3,db4,f4] ~@7",
  G: "[a3,eb4,ab4,db5,ab5]@4 [bb3,e4,g4,d5,g5]@7 ~ [c4,eb4,f4,ab4,eb5]@2 ~@4 [ab3,eb4,f4,ab4,c5]@3 ~ [a3,eb4,gb4,b4,eb5] ~", // Amaj7 Em7b5 Fm7 B7
  H: "[~@4 [ab3,d4,g4,c5,f5]@2 ~@4 [bb2,ab3,d4,gb4]@7 ~ g4@3 ~ [eb3,g3,d4,f4,bb4]@13 ~ [g3,bb3,db4,e4]@12]/2", // Dm7b5 Bbaug Ebmaj7 Gdim
  I: "[~@12 [ab3,d4,g4,c5]@10 [ab3,eb4,f4,c5]@11 ~ [ab3,d4,g4,c5]@3 ~@11]/2", J: "~@4 [g3,c4,db4,f4] ~@13 eb6@6",
  K: "[g3,bb3,db4,eb4] ~@9 [g3,bb3,db4,eb4] ~@13", L: "~@4 [gb3,bb3,c4,f4] ~@5 [gb3,c4,eb4,a4]@13 ~",
  M: "[ab3,c4,d4,f4]@14 ~@2 [ab3,c4,d4,f4]@3 ~@5", // Dm7b5
  N: "[g3,c4,eb4,bb4]@2 ~@2 [g3,c4,eb4,bb4]@2 ~@4 [c3,bb3,eb4,g4] ~@5 [f3,ab3,eb4,g4,c5] ~@5 [e3,ab3,d4,gb4,db5]@2", // Cm7 Fm7 Dbm
  O: "[g3,bb3,d4,f4]@10 [g3,db4,e4,bb4]@13 ~", // Gm7 Gdim
  P: "[[ab3,eb4,f4,c5] ~@9 [ab3,c4,d4,g4]@11 ~ [ab3,eb4,g4,c5]@11 ~ [ab3,d4,gb4,bb4]@3 ~@11]/2", // Fm7 Abmaj7 Daug
  Q: "~@4 [g3,d4,f4,bb4] ~@19", R: "[g3,db4,eb4,bb4] ~@17 eb6@4 [gb3,c4,eb4,bb4]@2",
  S: "~@6 [ab3,c4,d4,g4] ~ [ab3,c4,d4,g4] ~@3", T: "[g3,c4,eb4,bb4] [g3,b3,db4,gb4]",
  U: "[~@10 [gb3,c4,eb4,a4]@3 ~@9 [g3,c4,eb4,bb4]@13 ~@5 [bb3,db4,e4,ab4] ~@5 [ab3,eb4,g4,c5]@2]/2", // Gbdim Cm7 Bbm7b5 Abmaj7
  V: "~@10 [ab3,c4,d4,g4]@11 ~ [g3,c4,f4,bb4]@2", // Abmaj7 Gm7
  W: "[~@10 [g3,b3,db4,gb4]@3 ~@9 [gb3,c4,f4,bb4]@13 ~ [gb3,c4,eb4,a4]@2 ~@2 [gb3,c4,eb4,a4]@2 ~@6]/2", // Gmaj7 Gbmaj7 Gbdim
  X: "[g3,c4,eb4,bb4] ~ [g3,c4,eb4,bb4] ~@6 g6@3", Y: "~@4 [f3,b3,eb4,bb4] ~@7 [e3,ab3,bb3,db4]@12",
  Z: "[eb3,g3,a3,b3,d4]@2 ~@2 [eb3,g3,a3,b3,d4]@2 ~@4 [ab3,d4,g4,c5]@13 ~", // G Abmaj7
  AA: "[g3,bb3,d4,f4]@2 ~@2 [g3,bb3,d4,f4]@2 ~@4 [g3,db4,e4,bb4]@11 ~ [ab3,c4,eb4,f4]@2", // Gm7 Gdim Fm7
  AB: "~@6 [ab3,d4,f4,bb4] ~ [ab3,d4,f4,bb4] ~@3", AC: "[ab3,eb4,g4,c5]@10 [ab3,d4,g4,c5]@13 ~",
  AD: "~@4 [gb3,bb3,c4,f4] ~@7 [gb3,c4,eb4,a4]@2 ~@2 [gb3,c4,eb4,a4]@2 ~@6", // Gbmaj7 Gbdim
  AE: "[ab3,d4,g4,c5] ~ [ab3,d4,g4,c5] ~@3 [ab3,d4,g4,c5] ~ [ab3,d4,g4,c5] ~@3", // Abmaj7
  AF: "[g3,c4,eb4,bb4] ~ [g3,c4,eb4,bb4] ~@3 e6@3 ~@3", AG: "[g3,d4,f4,bb4] ~",
  AH: "~@4 [ab3,eb4,g4,c5] ~@5 [ab3,c4,d4,g4]@3 ~@11", AI: "[ab3,eb4,g4,c5] ~@17 eb6@6", AJ: "~@2 eb6!2",
  AK: "[g3,db4,eb4,bb4] ~@11 [g3,db4,f4,c5]@12", AL: "[gb3,bb3,c4,f4] ~", AM: "eb6@6 f6@4 [ab3,d4,g4,c5]@3 ~@11",
  AN: "[~@4 [g3,c4,eb4,bb4] ~@7 [c3,bb3,eb4,bb4]@4 [f3,a3,eb4,g4]@2 [d3,ab3,b3,gb4]@4 [eb3,f3,bb3,eb4,f4]@43 ~ [c3,eb3,f3,bb3,eb4,f4]@41 ~@5 [ab3,c4,f4,bb4,eb5]@7 ~]/5", // Cm7 F7 Abm7b5 Ebsus2 Cm7 Fm7
  AO: "[g3,db4,f4,c5,eb5]@2 ~@14 [db4,eb4,g4,bb4]@3 ~@5", AP: "[c4,gb4,bb4,f5] ~ [c4,gb4,bb4,f5] ~@8 [d4,g4,ab4,c5]",
  AQ: "~@10 [d4,ab4,c5,g5]@11 ~@3", AR: "[g3,c4,eb4,bb4] ~ [g3,c4,eb4,bb4] ~@9",
  AS: "[~@4 [g3,d4,f4,bb4] ~@17 [eb3,g3,d4,f4,bb4]@14 [g2,eb3,bb3,db4,f4]@10 [ab2,gb3,c4,f4]@12 [a2,gb3,c4,f4]@8 [bb2,f3,ab3,b3,d4,ab4]@4 [eb3,g3,bb3,db4,f4]@14 [g2,eb3,bb3,db4,f4]@10 [ab2,gb3,c4,f4]@12 [a2,gb3,c4,f4]@8 [bb2,f3,ab3,b3,d4,c5]@4 [eb3,g3,bb3,db4,f4]@14 [g2,eb3,bb3,db4,f4]@10 [ab2,gb3,c4,f4]@12 [a2,gb3,c4,f4]@14]/7", // Gm7 Ebmaj7 Gm7b5 Fm F Bb7 Eb7 Gm7b5 …
  AT: "~@4 [bb2,f3,ab3,c4,d4,g4]@7 ~ [bb2,f3,ab3,c4,d4,g4] ~@11", // Bb7
  AU: "~@4 [f3,c4,ab4,c5,eb5]@2 [bb3,db4,g4,db5,e5]@3 ~ [bb3,d4,ab4,c5,f5] ~@13", AV: "~@12 [f5,ab5,eb6] ~@11",
  AW: "[[gb5,a5,eb6] ~@9 [g5,bb5,eb6] ~@5 a2@2 bb2@4 ~@8 [g3,db4,f4,a4,eb5]@48 ~@18, ~@11 eb2@25 ~@12]/4", // Ebdim Eb
})).s("gm_piano").gain(0.17).pan(0.3)

// other · alto sax
const alto_sax = note(`<
  ~ A B C D A B E F G@2 H@2 I@2 J K L M ~@2 N O@2 ~ P Q R ~ S Q T U V ~ W ~ N ~@2 X Y Z AA AB@4 AC@6 M ~@2 P Q R ~ S Q T
  U V ~ W ~ N ~ AD ~ AE M ~ AF AG ~@2 AH@2 ~
>`.pickRestart({
  A: "~@9 f4 ~@2", B: "gb4@12 f4@9 ~ f4@2", C: "~@4 f4@13 ~ g4@2 ~@4", D: "gb4@6 gb4@5 f4", E: "~@4 f4@13 ~ f4@2 ~@4",
  F: "ab4@4 g4@7 ~ f4@2 ~@4 f4@4 gb4 ~", G: "[~@4 g4@2 ~@10 gb4@2 g4@4 bb4@13 ~@5 g4@8]/2",
  H: "[ab4@10 f4 ~@5 d4@2 f4@4 bb4@13 ~@5 gb4@8]/2", I: "[f4@10 eb4@2 ~@4 gb4@2 g4@4 bb4@17 ~ f4@2 ~@6]/2",
  J: "ab4@5 f4 ~@6", K: "~@2 d4@4 g4@5 eb4", L: "~@5 eb4 ~@2 g4 ~@2 gb4", M: "f4 ~@11", N: "~@6 g4@2 gb4 f4@2 f4",
  O: "[~@16 f4 ~@5 ab4@11 ~ f4@2 ~@12]/2", P: "~@4 g4@2 eb4@4 g4@2 ~@4 g4 ~@7", Q: "~@2 f4 ~@5 eb4 gb4 ~@2",
  R: "~@2 g4 eb4@2 ab4 ~@6", S: "~@2 bb4 c5@2 a4 ~@2 g4 ~@3", T: "~@4 g4@2 bb4@4 g4 ~@5 gb4@2 ~@6",
  U: "~@4 bb4 ~@5 g4@14", V: "gb4@9 ~ f4@2 ~@4 ab4@2 ~@4 f4@2", W: "~@8 ab4 f4@2 f4", X: "~@4 gb4 ~@7 g4@10 ~@2",
  Y: "~@10 g4 ~@5 f4@2 ~@4 ab4@2", Z: "g4@6 f4@4 e4@11 ~ e4@2", AA: "eb4@4 f4@2 ~@4 f4@11 ~ d4@2",
  AB: "[eb4@4 f4@2 ab4@4 ab4@7 ~ a4@4 bb4@13 ~ g4@4 g4@2 gb4@4 f4@11 ~ eb4@2 f4@4 g4@2 ~@4 gb4@6 f4@2 gb4@4 gb4@11 ~ gb4@2]/4",
  AC: "[g4@6 f4@4 f4@2 ~@4 ab4@2 ~@4 g4@13 ~ eb4@4 eb4@2 d4@4 c4@43 ~ c4@41 ~@5 f4@7 ~]/6", AD: "~@8 gb4 f4@2 f4",
  AE: "~@8 gb4 ~@2 f4", AF: "~@4 g4@7 ~ g4@2 ~@10", AG: "~@4 f4@2 g4@4 ab4 ~@13", AH: "[~ f4@7]/2",
})).s("gm_alto_sax").gain(0.36).pan(0.6)

// other · alto sax
const alto_sax_2 = note(`<
  ~ A B C D A B E F G@2 H@2 I@2 J K L M ~@2 N O@2 ~ P Q R ~ S Q T U V ~ W ~ N ~@2 X Y Z AA AB@4 AC@6 AD ~@2 P Q R ~ S Q
  T U V ~ W ~ N ~ AE ~ AF AD ~ AG AH ~@2 AI@2 ~
>`.pickRestart({
  A: "~@9 db4 ~@2", B: "eb4@12 d4@9 ~ db4 ~", C: "~@4 db4@13 ~ f4@2 ~@4", D: "c4@6 c4@5 db4",
  E: "~@4 db4@13 ~ db4@2 ~@4", F: "eb4@4 d4@7 ~ eb4@2 ~@4 eb4@4 eb4@2",
  G: "[~@4 d4@2 ~@10 gb4@2 g4@4 f4@13 ~@5 e4@8]/2", H: "[eb4@10 d4@2 ~@4 b3@2 d4@4 eb4@13 ~@5 d4@8]/2",
  I: "[d4@10 c4 ~@5 eb4@2 d4@4 db4@17 ~ c4@2 ~@6]/2", J: "c4@5 c4 ~@6", K: "~@2 c4@4 d4@5 c4",
  L: "~@10 c4 ~@5 eb4@2 ~@4 d4@2", M: "d4 ~@11", N: "~@12 eb4@4 eb4@2 d4@4 db4 ~",
  O: "[~@16 db4@2 ~@4 c4@11 ~ c4@2 ~@12]/2", P: "~@2 eb4 c4@2 eb4 ~@2 eb4 ~@3", Q: "~@2 c4 ~@5 c4 eb4 ~@2",
  R: "~@2 eb4 c4@2 e4 ~@6", S: "~@2 bb4 c5@2 g4 ~@2 eb4 ~@3", T: "~@2 eb4 g4@2 eb4 ~@2 e4 ~@3", U: "~@2 f4 ~@2 e4@7",
  V: "eb4@9 ~ d4 ~@5 d4@2 ~@4 d4@2", W: "~@16 b3@2 b3@4 c4 ~", X: "~@4 d4 ~@7 d4@10 ~@2", Y: "~@5 eb4 ~@2 db4 ~@2 d4",
  Z: "d4@6 d4@4 db4@11 ~ db4@2", AA: "c4@4 eb4@2 ~@4 d4@11 ~ b3@2",
  AB: "[c4@4 eb4@2 eb4@4 d4@7 ~ d4@4 d4@13 ~ eb4@4 eb4@2 d4@4 db4@11 ~ c4@2 db4@4 f4 ~@5 eb4@6 d4@2 eb4@4 eb4@11 ~ eb4@2]/4",
  AC: "[d4@6 eb4@4 d4@2 ~@4 f4@2 ~@4 eb4@13 ~ c4@4 c4@2 b3@4 bb3@43 ~ bb3@41 ~@5 c4@7 ~]/6", AD: "db4 ~@11",
  AE: "~@8 eb4 d4@2 db4", AF: "~@8 eb4 ~@2 d4", AG: "~@4 d4@7 ~ d4@2 ~@10", AH: "~@2 c4 db4@2 d4 ~@6",
  AI: "[~ db4@7]/2",
})).s("gm_alto_sax").gain(0.36).pan(0.7)

// other · tenor sax
const tenor_sax = note(`<
  ~ A B C D A B E F G@2 H@2 I@2 J K L M ~@2 N O@2 ~ P Q R ~ S Q T U V ~ W ~ N ~@2 X Y Z AA AB@4 AC@6 M ~@2 P Q R ~ S Q T
  U V ~ W ~ N ~ AD ~ AE M ~ AF AG ~@2 AH@2 ~
>`.pickRestart({
  A: "~@9 g3 ~@2", B: "a3@12 ab3@9 ~ g3@2", C: "~@4 g3@13 ~ db4@2 ~@4", D: "bb3@6 a3@5 g3", E: "~@4 g3@13 ~ g3@2 ~@4",
  F: "a3@4 bb3@7 ~ ab3@2 ~@4 ab3@4 a3 ~", G: "[~@4 b3@2 ~@10 gb4@2 g4@4 d4@13 ~@5 db4@8]/2",
  H: "[c4@10 ab3@2 ~@4 ab3@2 b3@4 c4@13 ~@5 ab3@8]/2", I: "[g3@10 g3@2 ~@4 a3@2 ab3@4 g3@17 ~ bb3@2 ~@6]/2",
  J: "gb3@5 gb3 ~@6", K: "~@2 ab3@4 ab3@5 g3", L: "~@10 bb3@2 ~@4 ab3 ~@5 ab3@2", M: "g3 ~@11",
  N: "~@6 bb3@2 a3 ab3@2 g3", O: "[~@16 bb3@2 ~@4 gb3@11 ~ gb3@2 ~@12]/2", P: "~@4 c4@2 bb3@4 c4 ~@5 db4@2 ~@6",
  Q: "~@2 gb3 ~@5 gb3 a3 ~@2", R: "~@2 c4 bb3@2 bb3 ~@6", S: "~@4 bb3@2 c4@4 db4 ~@5 db4@2 ~@6",
  T: "~@2 c4 eb4@2 c4 ~@2 c4 ~@3", U: "~@2 b3 ~@2 bb3@7", V: "a3@9 ~ ab3 ~@5 b3@2 ~@4 bb3 ~", W: "~@8 b3 ab3@2 ab3",
  X: "~@2 ab3 ~@3 ab3@5 ~", Y: "~@10 bb3@2 ~@4 ab3 ~@5 a3@2", Z: "a3@6 a3@4 ab3@11 ~ ab3@2",
  AA: "g3@4 ab3@2 ~@4 ab3@11 ~ ab3@2",
  AB: "[ab3@4 c4@2 c4@4 c4@7 ~ b3@4 bb3@13 ~ bb3@4 a3@2 ab3@4 g3@11 ~ a3@2 bb3@4 db4 ~@5 c4@6 b3@2 c4@4 a3@11 ~ a3@2]/4",
  AC: "[ab3@6 c4@4 ab3@2 ~@4 ab3 ~@5 g3@13 ~ bb3@4 a3@2 ab3@4 g3@43 ~ g3@41 ~@5 a3@7 ~]/6", AD: "~@8 a3 ab3@2 g3",
  AE: "~@8 a3 ~@2 ab3", AF: "~@4 ab3@7 ~ ab3@2 ~@10", AG: "~@2 ab3 bb3@2 c4 ~@6", AH: "[~ g3@7]/2",
})).s("gm_tenor_sax").gain(0.36).pan(0.4)

// other · baritone sax
const baritone_sax = note(`<
  ~ A B C D A B C E F@2 G@2 H@2 I J K L ~@2 M N@2 ~ O P Q ~ R P S T U ~ V ~ M ~@2 W X Y Z AA@4 AB@6 L ~@2 O P Q ~ R P S
  T U ~ V ~ M ~ AC ~ AD AE ~ AF AG ~ AH@3 ~
>`.pickRestart({
  A: "~@9 eb3 ~@2", B: "b2@12 bb2@9 ~ eb2@2", C: "~@4 eb2@13 ~ eb2@2 ~@4", D: "ab2@6 a2@5 bb2",
  E: "b2@4 c3@7 ~ f2@2 ~@4 f2@4 bb2@2", F: "[~@4 bb2@2 ~@10 gb3@2 g3@4 g3@13 ~@5 e3@8]/2",
  G: "[f3@10 f3@2 ~@4 d3@2 f3@4 f3@13 ~@5 gb3@8]/2", H: "[f3@10 eb3@2 ~@4 gb3@2 f3@4 eb3@17 ~ g2@2 ~@6]/2",
  I: "ab2@5 a2 ~@6", J: "~@2 d3@4 bb2@5 eb3", K: "~@5 eb3 ~@2 f3 ~@2 gb3", L: "f3 ~@11", M: "~@6 g3@2 gb3 f3@2 f3",
  N: "[~@16 g2@2 ~@4 ab2@11 ~ a2 ~@13]/2", O: "~@4 g3@2 eb3@4 g3 ~@5 g3 ~@7", P: "~@2 eb3 ~@5 eb3 gb3 ~@2",
  Q: "~@2 g3 eb3@2 c3 ~@6", R: "~@2 bb3 c4@2 a3 ~@2 g3 ~@3", S: "~@2 g3 bb3@2 g3 ~@2 d3 ~@3", T: "~@2 db3 ~@2 c3@7",
  U: "f2@9 ~ bb2@2 ~@4 bb2@2 ~@4 eb2@2", V: "~@8 ab3 f3@2 f3", W: "~@2 bb2 ~@3 bb2@5 ~", X: "~@5 c3 ~@2 a2 ~@2 bb2",
  Y: "eb3@6 f3@4 e3@11 ~ e3@2", Z: "eb3@4 f3@2 ~@4 f3@11 ~ d3@2",
  AA: "[eb3@4 f3@2 f3@4 f3@7 ~ bb2@4 eb2@13 ~ eb3@4 g3@2 gb3@4 f3@11 ~ eb3@2 f3@4 g3@2 ~@4 gb3@6 f3@2 eb3@4 a2@11 ~ a2@2]/4",
  AB: "[bb2@6 f2@4 bb2 ~@5 bb2@2 ~@4 eb2@13 ~ c3@4 f2@2 bb2@4 eb3@43 ~ c3@41 ~@5 eb3@7 ~]/6", AC: "~@8 a2 bb2@2 eb2",
  AD: "~@8 a2 ~@2 bb2", AE: "eb2 ~@11", AF: "~@4 bb2@7 ~ bb2@2 ~@10", AG: "~@2 f2 bb2@2 bb2 ~@6",
  AH: "[~@16 a2@2 bb2@4 eb2@49 ~]/3",
})).s("gm_baritone_sax").gain(0.36).pan(0.8)

// other · trumpet
const trumpet = note(`<
  ~ A B C D E B C F ~@8 G H ~@2 I ~@3 J K L ~ M K N ~ O ~ P ~ I ~@3 Q R S T@4 U@6 V ~@2 J K L ~ M K N ~ O ~ P ~ I ~ W ~
  X V ~ Y Z ~@2 AA@2 ~
>`.pickRestart({
  A: "~@9 eb5 ~@2", B: "gb5@11 ~ g5@9 ~ eb5 ~", C: "~@4 c5@13 ~ eb5@2 ~@4", D: "gb5@11 ~ f5@9 ~ eb5@2", E: "~@9 c5 ~@2",
  F: "ab5@4 g5@7 ~ eb5@2 ~@4 c5@3 ~ eb5 ~", G: "~@10 eb5 ~@5 c5 ~@5 db5@2", H: "bb4 ~@11",
  I: "~@12 c5@4 eb5@2 f5@4 eb5 ~", J: "~@4 g4@2 bb4@4 c5 ~@5 eb5 ~@7", K: "~@2 f5 ~@5 eb5 gb5 ~@2",
  L: "~@4 g5@2 eb5@4 ab5 ~@13", M: "~@4 bb4@2 c5@4 g5 ~@5 eb5 ~@7", N: "~@4 g5@2 eb5@4 bb4 ~@5 c5 ~@7",
  O: "~@16 d5 ~@5 f5 ~", P: "~@16 d5@2 b4@4 bb4 ~", Q: "~@10 eb5 ~@5 f5 ~@5 gb5@2", R: "g5@6 bb4@4 db5@11 ~ bb4@2",
  S: "c5@3 ~ eb5 ~@5 b4@11 ~ ab4@2",
  T: "[bb4@4 c5@2 eb5@4 f5@7 ~ gb5@4 g5@13 ~ c5@4 db5@2 d5@4 eb5@11 ~ c5@2 eb5@3 ~ f5 ~@5 gb5@6 f5@2 eb5@4 f5@11 ~ eb5@2]/4",
  U: "[d5@6 c5@4 bb4 ~@5 g5 ~@5 eb5@12 ~@2 bb4@4 g4@2 gb4@4 f4@43 ~ f4@41 ~@5 eb5@7 ~]/6", V: "eb5 ~@11",
  W: "~@16 f5@2 d5@4 eb5 ~", X: "~@16 f5 ~@5 d5 ~", Y: "~@4 d5@7 ~ d5@2 ~@10", Z: "~@4 eb5@2 e5@4 f5 ~@13",
  AA: "[~@6 eb5@41 ~]/2",
})).s("gm_trumpet").gain(0.56).pan(0.6)

// other · trumpet
const trumpet_2 = note(`<
  ~ A B C D A B C E ~@8 F G ~@2 H ~@3 I J K ~ L J M ~ N ~ O ~ H ~@3 P Q R S@4 T@6 U ~@2 I J K ~ L J M ~ N ~ O ~ V ~ W ~
  X Y ~ Z AA ~@2 AB@2 ~
// … 170 more lines

More by Frank Sinatra