Refactoring for weapons