Refactoring for capability