update + reflection