https://duwykozidovoh.niarbylbaycafe.com/an-introduction-to-semigroup-theory-book-4867fa.php