chg: extracted parser