finished version1