commented server/client code