finish without error