worked on server/client