Adequate parser