added sockets from ahmed