some intermediate changes