added source from chapter 8