second assignment for a distributed computing course.