added disconnect for reconnecting