changed facade and adapter