done with final changes