implemented basis of parser