updating all kinds  of stuff