refactor dsyn_core