Decorator Design Patter