updates and .functions