sever and client
clean version