Added implementation of bridge pattern