update functions 8-14