many changes, handle them