some changes (need to do)