Distributed Systems Assignment 2