require socket for Socket