# Composed Transformation Implementation

The CogTransform2DComposed object works by maintaining a list of the composed transformations, and then transforming points through the transformations in sequence using each transformation's MapPoint method.

CogTransform2DComposed allows for efficient direct initialization of its contained sequence of transforms using a modified list-style interface. The object exposes PushOntoLeft, PushOntoRight, PopFromLeft, and PopFromRight to add and remove transformations from the ends of the list. The object also provides methods to split and merge lists, to replace a transformation with the list, and to Canonize the transformation (convert it to its simplest mathematically equivalent form).