Decorator design