Topics in Distributed Systems Assignment 1