final code for release