alternative parsing method