first version final commit