change parsing logic