This lab will require templates. Each problem is worth 20 points. 1. Redo the list class so that it takes a templated type. This doesn't require much in the way of new code, but it does require that you carefully read and correctly modify the old lab. 2. Chapter 17 Problem 3. 3. Chapter 18 Problem 1. 4. Chapter 18 Problem 2. Extra Credit: 5. Chapter 18 Problem 6. Use the generic set_union function as well as the generic set_intersection function.