update to funtions