parse need be improved