Enforces to implement AbstractFactory.java