some changes by KW