pattern bridge
pattern composite
pattern decorator
pattern facade