synchronization, refactor, performance