several intermediate changes