chapter02 form component features updated