structure-refactor