added update routine