updating with ringers function