{
        ComplexTypeConverter complexTypeConverter = (ComplexTypeConverter)theEObject;
        T result = caseComplexTypeConverter(complexTypeConverter);
        if (result == null) result = caseTypeConverter(complexTypeConverter);
        if (result == null) result = caseMappingHelper(complexTypeConverter);
        if (result == null) result = defaultCase(theEObject);
        return result;
      }