learned up to the end of chap 12. LINQ