structure refactofing