Adapter pattern
Facade pattern