Update is functional