Compound design pattern examples