working out sockets