Introduction to Algebra ... by Jeremiah Day