- rework (mvvm patten)