replace the original update mechanism