bpm 60
key c maj
Ante ::= '1 _2 7 _2 5 _4 6 _2 5 _2 3 _4 2 _2 4 _2 6 _4 7 _2 6 _2 5 _4
Cons ::= 5 _2 '1 _2 '3 _4 '4 _2 '3 _2 '1 _4 '2 _2 '1 _2 7 _4 '1 _8
Block ::= {.1, .3, .5, 1} _8
assert Ante[3:6] == Ante[0:3]@~-2
Ante Cons
{Ante, Block Block@~-2 Block@~1 Block@~-3}
{Cons, Block Block@~3 Block@~4 Block}
Oom ::= ..1 _2 {.3, .5, 1} _2 ..5 _2 {.3, .5, 1} _2
{Ante, Oom Oom@~-2 Oom@~1 Oom@~-3}
{Cons, Oom Oom@~3 Oom@~4 Oom}
Alberti ::= {.1 .5 .3 .5}*2
assert Alberti == .1 .5 .3 .5 .1 .5 .3 .5
{Ante, Alberti Alberti@~-2 Alberti@~1 Alberti@~-3}
{Cons, Alberti Alberti@~3 Alberti@~4 Alberti}
Wash ::= ..1 ..5 .1 .3 .5 1 .5 .3
{Ante, Wash Wash@~-2 Wash@~1 Wash@~-3}
{Cons, Wash Wash@~3 Wash@~4 Wash}
Ost ::= ..1 _3 ..5 _2 .3 _3
{Ante, Ost*4}
{Cons, Ost*4}
{Ante, Block Block@~-2 Block@~1 Block@~-3}
{Cons, Oom Oom@~3 Oom@~4 Oom}
{Ante, Alberti Alberti@~-2 Alberti@~1 Alberti@~-3}
{Cons, Wash Wash@~3 Wash@~4 Wash}
{Ante, Ost*4}
{Cons, Alberti Alberti@~3 Alberti@~4 Alberti}
{..1, .1, .3, .5, 1} _8