some changes in func1