add chp1 codes