implement updated view interface