patterns in design 32 pages 6526868