updated ch17 ex1 to use complete