merge task 6 from trunk