added more parsing implementation