starting update logics