Principles of Gene Manipulation and Genomics by Sandy B. Primrose, Richard Twyman & Sandy Primrose