" I don 't know whether that means two years or four years .
" Whether that means two years or four years , I don 't know . "
1. program to an interface, not an implementation  2. identify the aspects of the application that vary