Redo with Library sample exercise 2