refactor file-structure