first step to handle changes correctly (work in progress)