Abstract Factory, namespaces