Added a composite pattern.