added update(...) method