update U()