chapter 14, save state
user state