update functions added