revised version1