update and push