Creation of GenericFactory