misc:first refactor