protected update