adding ch2 functions