some changes necesary