Update implementation