updating discrete Assignment3