Clarification on contact.Update function in time dependent contact

Hi Netgen team

I am confused with the what contact.Update does in time dependent problem. My confusion comes from the time dependent example solved in the tutorial (6.2 Contact Problems — NGS-Py 6.2.2406 documentation). I expect that contact.Update updates the displacement of current time step that is contact.Update(u, bfmstar), but in the tutorial it updates the previous time step’s displacement (contact.Update(uold, bfmstar)). Could someone please clarify why we update the previous displacement while we solve the current step displacement?

Thanks
HDA