all working - final changes