some changes. Can't compiled