before socket fixed redo