Refactor attribute operations into type-based set of strategies