Expand FactoryMethod