SMS: Modern abstract algebra