remove unused & refactor