initial combinatorial parser