final code v1