<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0" xmlns:xmi="https://www.omg.org/XMI" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="https://www.eclipse.org/emf/2002/Ecore" name="example" nsURI="example" nsPrefix="example">
  <eClassifiers xsi:type="ecore:EDataType" name="HashSet" instanceClassName="java.util.HashSet">
    <eTypeParameters name="Type1" />
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EDataType" name="HashMap" instanceClassName="java.util.HashMap">
    <eTypeParameters name="Type1" />
    <eTypeParameters name="Type2" />
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="A" />
  <eClassifiers xsi:type="ecore:EClass" name="C" />
  <eClassifiers xsi:type="ecore:EClass" name="D">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m1" transient="true">
      <eGenericType eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EMap">
        <eTypeArguments eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EString" />
        <eTypeArguments eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EString" />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2" transient="true">
      <eGenericType eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EMap">
        <eTypeArguments eClassifier="#//A" />
        <eTypeArguments eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EBigInteger" />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m3" transient="true">
      <eGenericType eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EMap">
        <eTypeArguments eClassifier="#//A" />
        <eTypeArguments eClassifier="#//D" />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m4" transient="true">
      <eGenericType eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EMap">
        <eTypeArguments />
        <eTypeArguments />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="l1" transient="true">
      <eGenericType eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EEList">
        <eTypeArguments eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EString" />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="l2" transient="true">
      <eGenericType eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EEList">
        <eTypeArguments eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EBigDecimal" />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="l3" transient="true">
      <eGenericType eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EEList">
        <eTypeArguments eClassifier="#//C" />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="l4" transient="true">
      <eGenericType eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EEList">
        <eTypeArguments />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="c1" transient="true">
      <eGenericType eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EJavaClass">
        <eTypeArguments eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EString" />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="c2" transient="true">
      <eGenericType eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EJavaClass">
        <eTypeArguments eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EBigDecimal" />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="c3" transient="true">
      <eGenericType eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EJavaClass">
        <eTypeArguments eClassifier="#//C" />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="c4" transient="true">
      <eGenericType eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EJavaClass">
        <eTypeArguments />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="s1" transient="true">
      <eGenericType eClassifier="#//HashSet">
        <eTypeArguments eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EString" />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="s2" transient="true">
      <eGenericType eClassifier="#//HashSet">
        <eTypeArguments eClassifier="#//A" />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m5" transient="true">
      <eGenericType eClassifier="#//HashMap">
        <eTypeArguments eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EString" />
        <eTypeArguments eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EBigDecimal" />
      </eGenericType>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m6" transient="true">
      <eGenericType eClassifier="#//HashMap">
        <eTypeArguments eClassifier="ecore:EDataType https://www.eclipse.org/emf/2002/Ecore#//EBigDecimal" />
        <eTypeArguments eClassifier="#//A" />
      </eGenericType>
    </eStructuralFeatures>
  </eClassifiers>
</ecore:EPackage>
