regular update, make it robuster