Introduction to Abstract Algebra - Libin Li; Kaiming Zhao (2022)