finalise the function