Composite design pattern