Refactored to adapter approach