update to the functionality