some adaptions to part1