final do for