added update functions