patterns in design 32 pages 5085934