refactor. notify and sync not really needed