something refactor