{
               for (EGenericType eGenericSuperType : eClass.getEGenericSuperTypes())
               {
                 if (eGenericSuperType.getEClassifier() == eSuperType)
                 {
                   eGenericTypes.add(eGenericSuperType);
                   continue LOOP;
                 }
               }
               EGenericType eGenericType = EcoreFactory.eINSTANCE.createEGenericType();
               eGenericType.setEClassifier(eSuperType);
               for (int i = 0, size = eSuperType.getETypeParameters().size(); i < size; ++i)
               {
                 eGenericType.getETypeArguments().add(EcoreFactory.eINSTANCE.createEGenericType());
               }
               eGenericTypes.add(eGenericType);
             }