added server client communication