ROOT ::= EXPR* INSTR ::= | EXPR semicolon EXPR ::= | OR | ASSERT EXPR OR ::= AND (or AND)* AND ::= NOT (and NOT)* NOT ::= not* LITERAL LITERAL ::= BUILTIN | opar EXPR cpar BUILTIN ::= bool