Bridge pattern added