Most of the core parsing implemented