Which two are objectives of the Abstract Factory pattern?
A. To create whole-part hierarchies
B. To create families of related objects
C. To enforce dependencies between concrete classes
D. To specify the types of objects to create by using a sample instance
E. To separate the construction of a complex object from its representation