Distributed Computing Pearls - Taubenfeld, Gadi (Synthesis lectures on distributed computing theory, 2018)