@Override
 public Set<PBody> doGetContainedBodies() throws QueryInitializationException {
   Set<PBody> bodies = Sets.newLinkedHashSet();
   try {
     {
       PBody body = new PBody(this);
       PVariable var_C = body.getOrCreateVariableByName("C");
       PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}");
       PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}");
       body.setExportedParameters(
           Arrays.<ExportedParameter>asList(new ExportedParameter(body, var_C, "C")));
       new ConstantValue(body, var__virtual_0_, 30);
       new TypeConstraint(
           body,
           new FlatTuple(var_C),
           new EClassTransitiveInstancesKey(
               (EClass) getClassifierLiteral("http://school.ecore", "Course")));
       new TypeConstraint(
           body,
           new FlatTuple(var_C, var__virtual_1_),
           new EStructuralFeatureInstancesKey(
               getFeatureLiteral("http://school.ecore", "Course", "weight")));
       new Equality(body, var__virtual_1_, var__virtual_0_);
       bodies.add(body);
     }
     // to silence compiler error
     if (false) throw new IncQueryException("Never", "happens");
   } catch (IncQueryException ex) {
     throw processDependencyException(ex);
   }
   return bodies;
 }
 @Override
 public Set<PBody> doGetContainedBodies() throws QueryInitializationException {
   Set<PBody> bodies = Sets.newLinkedHashSet();
   try {
     {
       PBody body = new PBody(this);
       PVariable var_E = body.getOrCreateVariableByName("E");
       PVariable var_Attr = body.getOrCreateVariableByName("Attr");
       PVariable var_Type = body.getOrCreateVariableByName("Type");
       body.setExportedParameters(
           Arrays.<ExportedParameter>asList(
               new ExportedParameter(body, var_E, "E"),
               new ExportedParameter(body, var_Attr, "Attr"),
               new ExportedParameter(body, var_Type, "Type")));
       new TypeBinary(
           body,
           CONTEXT,
           var_E,
           var_Attr,
           getFeatureLiteral(
               "http://www.eclipse.org/emf/2002/Ecore", "EClass", "eStructuralFeatures"),
           "http://www.eclipse.org/emf/2002/Ecore/EClass.eStructuralFeatures");
       new TypeUnary(
           body,
           var_Attr,
           getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EAttribute"),
           "http://www.eclipse.org/emf/2002/Ecore/EAttribute");
       new TypeBinary(
           body,
           CONTEXT,
           var_Attr,
           var_Type,
           getFeatureLiteral("http://www.eclipse.org/emf/2002/Ecore", "ETypedElement", "eType"),
           "http://www.eclipse.org/emf/2002/Ecore/ETypedElement.eType");
       bodies.add(body);
     }
     // to silence compiler error
     if (false) throw new IncQueryException("Never", "happens");
   } catch (IncQueryException ex) {
     throw processDependencyException(ex);
   }
   return bodies;
 }