updated person func