One of the things you do when you write a program is think