Abstract Algebra And Number Theory