addded server client code