finish final version