exercise 6 interface