[WIP] Use lexer 

This is separating constraints upfront, no?