major changes - added disconnect