abstract class com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl extends com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGenerator
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl
  super_class: com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGenerator
{
  private final com.sun.tools.internal.xjc.generator.bean.BeanGenerator outline;
    descriptor: Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.internal.xjc.model.Model model;
    descriptor: Lcom/sun/tools/internal/xjc/model/Model;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.codemodel.internal.JCodeModel codeModel;
    descriptor: Lcom/sun/codemodel/internal/JCodeModel;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.codemodel.internal.JClass classRef;
    descriptor: Lcom/sun/codemodel/internal/JClass;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.codemodel.internal.JDefinedClass objectFactory;
    descriptor: Lcom/sun/codemodel/internal/JDefinedClass;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.HashMap<javax.xml.namespace.QName, com.sun.codemodel.internal.JFieldVar> qnameMap;
    descriptor: Ljava/util/HashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/HashMap<Ljavax/xml/namespace/QName;Lcom/sun/codemodel/internal/JFieldVar;>;

  private final java.util.Map<java.lang.String, com.sun.tools.internal.xjc.model.CElementInfo> elementFactoryNames;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/internal/xjc/model/CElementInfo;>;

  private final java.util.Map<java.lang.String, com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl> valueFactoryNames;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/internal/xjc/generator/bean/ClassOutlineImpl;>;

  public com.sun.codemodel.internal.JDefinedClass getObjectFactory();
    descriptor: ()Lcom/sun/codemodel/internal/JDefinedClass;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl this
         0: .line 108
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.objectFactory:Lcom/sun/codemodel/internal/JDefinedClass;
            areturn
        end local 0 // com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/internal/xjc/generator/bean/ObjectFactoryGeneratorImpl;

  public void <init>(com.sun.tools.internal.xjc.generator.bean.BeanGenerator, com.sun.tools.internal.xjc.model.Model, com.sun.codemodel.internal.JPackage);
    descriptor: (Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;Lcom/sun/tools/internal/xjc/model/Model;Lcom/sun/codemodel/internal/JPackage;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl this
        start local 1 // com.sun.tools.internal.xjc.generator.bean.BeanGenerator outline
        start local 2 // com.sun.tools.internal.xjc.model.Model model
        start local 3 // com.sun.codemodel.internal.JPackage targetPackage
         0: .line 114
            aload 0 /* this */
            invokespecial com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGenerator.<init>:()V
         1: .line 86
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.qnameMap:Ljava/util/HashMap;
         2: .line 94
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.elementFactoryNames:Ljava/util/Map;
         3: .line 102
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.valueFactoryNames:Ljava/util/Map;
         4: .line 115
            aload 0 /* this */
            aload 1 /* outline */
            putfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.outline:Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
         5: .line 116
            aload 0 /* this */
            aload 2 /* model */
            putfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.model:Lcom/sun/tools/internal/xjc/model/Model;
         6: .line 117
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.model:Lcom/sun/tools/internal/xjc/model/Model;
            getfield com.sun.tools.internal.xjc.model.Model.codeModel:Lcom/sun/codemodel/internal/JCodeModel;
            putfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.codeModel:Lcom/sun/codemodel/internal/JCodeModel;
         7: .line 118
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.codeModel:Lcom/sun/codemodel/internal/JCodeModel;
            ldc Ljava/lang/Class;
            invokevirtual com.sun.codemodel.internal.JCodeModel.ref:(Ljava/lang/Class;)Lcom/sun/codemodel/internal/JClass;
            putfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.classRef:Lcom/sun/codemodel/internal/JClass;
         8: .line 121
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.outline:Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
            invokevirtual com.sun.tools.internal.xjc.generator.bean.BeanGenerator.getClassFactory:()Lcom/sun/tools/internal/xjc/util/CodeModelClassFactory;
         9: .line 122
            aload 3 /* targetPackage */
            ldc "ObjectFactory"
            aconst_null
        10: .line 121
            invokevirtual com.sun.tools.internal.xjc.util.CodeModelClassFactory.createClass:(Lcom/sun/codemodel/internal/JClassContainer;Ljava/lang/String;Lorg/xml/sax/Locator;)Lcom/sun/codemodel/internal/JDefinedClass;
            putfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.objectFactory:Lcom/sun/codemodel/internal/JDefinedClass;
        11: .line 123
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.objectFactory:Lcom/sun/codemodel/internal/JDefinedClass;
            ldc Lcom/sun/tools/internal/xjc/generator/annotation/spec/XmlRegistryWriter;
            invokevirtual com.sun.codemodel.internal.JDefinedClass.annotate2:(Ljava/lang/Class;)Lcom/sun/codemodel/internal/JAnnotationWriter;
            pop
        12: .line 129
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.objectFactory:Lcom/sun/codemodel/internal/JDefinedClass;
            iconst_1
            invokevirtual com.sun.codemodel.internal.JDefinedClass.constructor:(I)Lcom/sun/codemodel/internal/JMethod;
            astore 4 /* m1 */
        start local 4 // com.sun.codemodel.internal.JMethod m1
        13: .line 130
            aload 4 /* m1 */
            invokevirtual com.sun.codemodel.internal.JMethod.javadoc:()Lcom/sun/codemodel/internal/JDocComment;
            new java.lang.StringBuilder
            dup
            ldc "Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        14: .line 132
            aload 3 /* targetPackage */
            invokevirtual com.sun.codemodel.internal.JPackage.name:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        15: .line 130
            invokevirtual com.sun.codemodel.internal.JDocComment.append:(Ljava/lang/Object;)Lcom/sun/codemodel/internal/JDocComment;
            pop
        16: .line 135
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.objectFactory:Lcom/sun/codemodel/internal/JDefinedClass;
            invokevirtual com.sun.codemodel.internal.JDefinedClass.javadoc:()Lcom/sun/codemodel/internal/JDocComment;
        17: .line 136
            new java.lang.StringBuilder
            dup
            ldc "This object contains factory methods for each \nJava content interface and Java element interface \ngenerated in the "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        18: .line 138
            aload 3 /* targetPackage */
            invokevirtual com.sun.codemodel.internal.JPackage.name:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " package. \n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        19: .line 139
            ldc "<p>An ObjectFactory allows you to programatically \n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        20: .line 140
            ldc "construct new instances of the Java representation \n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        21: .line 141
            ldc "for XML content. The Java representation of XML \n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        22: .line 142
            ldc "content can consist of schema derived interfaces \n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        23: .line 143
            ldc "and classes representing the binding of schema \n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        24: .line 144
            ldc "type definitions, element declarations and model \n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        25: .line 145
            ldc "groups.  Factory methods for each of these are \n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        26: .line 146
            ldc "provided in this class."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        27: .line 136
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        28: .line 135
            invokevirtual com.sun.codemodel.internal.JDocComment.append:(Ljava/lang/Object;)Lcom/sun/codemodel/internal/JDocComment;
            pop
        29: .line 148
            return
        end local 4 // com.sun.codemodel.internal.JMethod m1
        end local 3 // com.sun.codemodel.internal.JPackage targetPackage
        end local 2 // com.sun.tools.internal.xjc.model.Model model
        end local 1 // com.sun.tools.internal.xjc.generator.bean.BeanGenerator outline
        end local 0 // com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   30     0           this  Lcom/sun/tools/internal/xjc/generator/bean/ObjectFactoryGeneratorImpl;
            0   30     1        outline  Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
            0   30     2          model  Lcom/sun/tools/internal/xjc/model/Model;
            0   30     3  targetPackage  Lcom/sun/codemodel/internal/JPackage;
           13   30     4             m1  Lcom/sun/codemodel/internal/JMethod;
    MethodParameters:
               Name  Flags
      outline        
      model          
      targetPackage  

  protected final void populate(com.sun.tools.internal.xjc.model.CElementInfo, com.sun.tools.internal.xjc.outline.Aspect, com.sun.tools.internal.xjc.outline.Aspect);
    descriptor: (Lcom/sun/tools/internal/xjc/model/CElementInfo;Lcom/sun/tools/internal/xjc/outline/Aspect;Lcom/sun/tools/internal/xjc/outline/Aspect;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=7, locals=17, args_size=4
        start local 0 // com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl this
        start local 1 // com.sun.tools.internal.xjc.model.CElementInfo ei
        start local 2 // com.sun.tools.internal.xjc.outline.Aspect impl
        start local 3 // com.sun.tools.internal.xjc.outline.Aspect exposed
         0: .line 154
            aload 1 /* ei */
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.outline:Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
            aload 3 /* exposed */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.toType:(Lcom/sun/tools/internal/xjc/outline/Outline;Lcom/sun/tools/internal/xjc/outline/Aspect;)Lcom/sun/codemodel/internal/JType;
            astore 4 /* exposedElementType */
        start local 4 // com.sun.codemodel.internal.JType exposedElementType
         1: .line 155
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getContentInMemoryType:()Lcom/sun/tools/internal/xjc/model/nav/NType;
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.outline:Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
            aload 3 /* exposed */
            invokeinterface com.sun.tools.internal.xjc.model.nav.NType.toType:(Lcom/sun/tools/internal/xjc/outline/Outline;Lcom/sun/tools/internal/xjc/outline/Aspect;)Lcom/sun/codemodel/internal/JType;
            astore 5 /* exposedType */
        start local 5 // com.sun.codemodel.internal.JType exposedType
         2: .line 156
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getContentInMemoryType:()Lcom/sun/tools/internal/xjc/model/nav/NType;
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.outline:Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
            aload 2 /* impl */
            invokeinterface com.sun.tools.internal.xjc.model.nav.NType.toType:(Lcom/sun/tools/internal/xjc/outline/Outline;Lcom/sun/tools/internal/xjc/outline/Aspect;)Lcom/sun/codemodel/internal/JType;
            astore 6 /* implType */
        start local 6 // com.sun.codemodel.internal.JType implType
         3: .line 157
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getElementName:()Ljavax/xml/namespace/QName;
            invokevirtual javax.xml.namespace.QName.getNamespaceURI:()Ljava/lang/String;
            astore 7 /* namespaceURI */
        start local 7 // java.lang.String namespaceURI
         4: .line 158
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getElementName:()Ljavax/xml/namespace/QName;
            invokevirtual javax.xml.namespace.QName.getLocalPart:()Ljava/lang/String;
            astore 8 /* localPart */
        start local 8 // java.lang.String localPart
         5: .line 160
            aconst_null
            astore 9 /* scope */
        start local 9 // com.sun.codemodel.internal.JClass scope
         6: .line 161
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getScope:()Lcom/sun/tools/internal/xjc/model/CClassInfo;
            ifnull 8
         7: .line 162
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.outline:Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getScope:()Lcom/sun/tools/internal/xjc/model/CClassInfo;
            invokevirtual com.sun.tools.internal.xjc.generator.bean.BeanGenerator.getClazz:(Lcom/sun/tools/internal/xjc/model/CClassInfo;)Lcom/sun/tools/internal/xjc/generator/bean/ClassOutlineImpl;
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.implClass:Lcom/sun/codemodel/internal/JDefinedClass;
            astore 9 /* scope */
         8: .line 167
      StackMap locals: com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl com.sun.tools.internal.xjc.model.CElementInfo com.sun.tools.internal.xjc.outline.Aspect com.sun.tools.internal.xjc.outline.Aspect com.sun.codemodel.internal.JType com.sun.codemodel.internal.JType com.sun.codemodel.internal.JType java.lang.String java.lang.String com.sun.codemodel.internal.JClass
      StackMap stack:
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.isAbstract:()Z
            ifeq 10
         9: .line 170
            invokestatic com.sun.xml.internal.bind.v2.TODO.checkSpec:()V
        10: .line 174
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.elementFactoryNames:Ljava/util/Map;
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getSqueezedName:()Ljava/lang/String;
            aload 1 /* ei */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.internal.xjc.model.CElementInfo
            astore 11 /* existing */
        start local 11 // com.sun.tools.internal.xjc.model.CElementInfo existing
        11: .line 175
            aload 11 /* existing */
            ifnull 19
        12: .line 176
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.outline:Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
            invokevirtual com.sun.tools.internal.xjc.generator.bean.BeanGenerator.getErrorReceiver:()Lcom/sun/tools/internal/xjc/ErrorReceiver;
            aload 11 /* existing */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getLocator:()Lorg/xml/sax/Locator;
        13: .line 177
            getstatic com.sun.tools.internal.xjc.generator.bean.Messages.OBJECT_FACTORY_CONFLICT:Lcom/sun/tools/internal/xjc/generator/bean/Messages;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getSqueezedName:()Ljava/lang/String;
            aastore
            invokevirtual com.sun.tools.internal.xjc.generator.bean.Messages.format:([Ljava/lang/Object;)Ljava/lang/String;
        14: .line 176
            invokevirtual com.sun.tools.internal.xjc.ErrorReceiver.error:(Lorg/xml/sax/Locator;Ljava/lang/String;)V
        15: .line 178
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.outline:Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
            invokevirtual com.sun.tools.internal.xjc.generator.bean.BeanGenerator.getErrorReceiver:()Lcom/sun/tools/internal/xjc/ErrorReceiver;
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getLocator:()Lorg/xml/sax/Locator;
        16: .line 179
            getstatic com.sun.tools.internal.xjc.generator.bean.Messages.OBJECT_FACTORY_CONFLICT_RELATED:Lcom/sun/tools/internal/xjc/generator/bean/Messages;
            iconst_0
            anewarray java.lang.Object
            invokevirtual com.sun.tools.internal.xjc.generator.bean.Messages.format:([Ljava/lang/Object;)Ljava/lang/String;
        17: .line 178
            invokevirtual com.sun.tools.internal.xjc.ErrorReceiver.error:(Lorg/xml/sax/Locator;Ljava/lang/String;)V
        18: .line 180
            return
        end local 11 // com.sun.tools.internal.xjc.model.CElementInfo existing
        19: .line 206
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.objectFactory:Lcom/sun/codemodel/internal/JDefinedClass;
            iconst_1
            aload 4 /* exposedElementType */
            new java.lang.StringBuilder
            dup
            ldc "create"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getSqueezedName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.codemodel.internal.JDefinedClass.method:(ILcom/sun/codemodel/internal/JType;Ljava/lang/String;)Lcom/sun/codemodel/internal/JMethod;
            astore 10 /* m */
        start local 10 // com.sun.codemodel.internal.JMethod m
        20: .line 207
            aload 10 /* m */
            aload 5 /* exposedType */
            ldc "value"
            invokevirtual com.sun.codemodel.internal.JMethod.param:(Lcom/sun/codemodel/internal/JType;Ljava/lang/String;)Lcom/sun/codemodel/internal/JVar;
            astore 11 /* $value */
        start local 11 // com.sun.codemodel.internal.JVar $value
        21: .line 210
            aload 6 /* implType */
            invokevirtual com.sun.codemodel.internal.JType.boxify:()Lcom/sun/codemodel/internal/JClass;
            invokevirtual com.sun.codemodel.internal.JClass.isParameterized:()Z
            ifne 22
            aload 5 /* exposedType */
            aload 6 /* implType */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 24
        22: .line 211
      StackMap locals: com.sun.codemodel.internal.JMethod com.sun.codemodel.internal.JVar
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.classRef:Lcom/sun/codemodel/internal/JClass;
            aload 6 /* implType */
            invokevirtual com.sun.codemodel.internal.JType.boxify:()Lcom/sun/codemodel/internal/JClass;
            invokevirtual com.sun.codemodel.internal.JClass.dotclass:()Lcom/sun/codemodel/internal/JExpression;
            invokestatic com.sun.codemodel.internal.JExpr.cast:(Lcom/sun/codemodel/internal/JType;Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/codemodel/internal/JCast;
            astore 12 /* declaredType */
        start local 12 // com.sun.codemodel.internal.JExpression declaredType
        23: goto 25
        end local 12 // com.sun.codemodel.internal.JExpression declaredType
        24: .line 213
      StackMap locals:
      StackMap stack:
            aload 6 /* implType */
            invokevirtual com.sun.codemodel.internal.JType.boxify:()Lcom/sun/codemodel/internal/JClass;
            invokevirtual com.sun.codemodel.internal.JClass.dotclass:()Lcom/sun/codemodel/internal/JExpression;
            astore 12 /* declaredType */
        start local 12 // com.sun.codemodel.internal.JExpression declaredType
        25: .line 214
      StackMap locals: com.sun.codemodel.internal.JExpression
      StackMap stack:
            aload 9 /* scope */
            ifnonnull 26
            invokestatic com.sun.codemodel.internal.JExpr._null:()Lcom/sun/codemodel/internal/JExpression;
            goto 27
      StackMap locals:
      StackMap stack:
        26: aload 9 /* scope */
            invokevirtual com.sun.codemodel.internal.JClass.dotclass:()Lcom/sun/codemodel/internal/JExpression;
      StackMap locals:
      StackMap stack: com.sun.codemodel.internal.JExpression
        27: astore 13 /* scopeClass */
        start local 13 // com.sun.codemodel.internal.JExpression scopeClass
        28: .line 217
            aload 4 /* exposedElementType */
            invokestatic com.sun.codemodel.internal.JExpr._new:(Lcom/sun/codemodel/internal/JType;)Lcom/sun/codemodel/internal/JInvocation;
            astore 14 /* exp */
        start local 14 // com.sun.codemodel.internal.JInvocation exp
        29: .line 218
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.hasClass:()Z
            ifne 33
        30: .line 219
            aload 14 /* exp */
            aload 0 /* this */
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.getQNameInvocation:(Lcom/sun/tools/internal/xjc/model/CElementInfo;)Lcom/sun/codemodel/internal/JExpression;
            invokevirtual com.sun.codemodel.internal.JInvocation.arg:(Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/codemodel/internal/JInvocation;
            pop
        31: .line 220
            aload 14 /* exp */
            aload 12 /* declaredType */
            invokevirtual com.sun.codemodel.internal.JInvocation.arg:(Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/codemodel/internal/JInvocation;
            pop
        32: .line 221
            aload 14 /* exp */
            aload 13 /* scopeClass */
            invokevirtual com.sun.codemodel.internal.JInvocation.arg:(Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/codemodel/internal/JInvocation;
            pop
        33: .line 223
      StackMap locals: com.sun.codemodel.internal.JExpression com.sun.codemodel.internal.JInvocation
      StackMap stack:
            aload 6 /* implType */
            aload 5 /* exposedType */
            if_acmpne 35
        34: .line 224
            aload 14 /* exp */
            aload 11 /* $value */
            invokevirtual com.sun.codemodel.internal.JInvocation.arg:(Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/codemodel/internal/JInvocation;
            pop
            goto 36
        35: .line 226
      StackMap locals:
      StackMap stack:
            aload 14 /* exp */
            aload 6 /* implType */
            aload 11 /* $value */
            invokestatic com.sun.codemodel.internal.JExpr.cast:(Lcom/sun/codemodel/internal/JType;Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/codemodel/internal/JCast;
            invokevirtual com.sun.codemodel.internal.JInvocation.arg:(Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/codemodel/internal/JInvocation;
            pop
        36: .line 228
      StackMap locals:
      StackMap stack:
            aload 10 /* m */
            invokevirtual com.sun.codemodel.internal.JMethod.body:()Lcom/sun/codemodel/internal/JBlock;
            aload 14 /* exp */
            invokevirtual com.sun.codemodel.internal.JBlock._return:(Lcom/sun/codemodel/internal/JExpression;)V
        37: .line 230
            aload 10 /* m */
            invokevirtual com.sun.codemodel.internal.JMethod.javadoc:()Lcom/sun/codemodel/internal/JDocComment;
        38: .line 231
            ldc "Create an instance of "
            invokevirtual com.sun.codemodel.internal.JDocComment.append:(Ljava/lang/Object;)Lcom/sun/codemodel/internal/JDocComment;
        39: .line 232
            aload 4 /* exposedElementType */
            invokevirtual com.sun.codemodel.internal.JDocComment.append:(Ljava/lang/Object;)Lcom/sun/codemodel/internal/JDocComment;
            pop
        40: .line 233
            aload 10 /* m */
            invokevirtual com.sun.codemodel.internal.JMethod.javadoc:()Lcom/sun/codemodel/internal/JDocComment;
            aload 11 /* $value */
            invokevirtual com.sun.codemodel.internal.JDocComment.addParam:(Lcom/sun/codemodel/internal/JVar;)Lcom/sun/codemodel/internal/JCommentPart;
        41: .line 234
            ldc "Java instance representing xml element's value."
            invokevirtual com.sun.codemodel.internal.JCommentPart.append:(Ljava/lang/Object;)Lcom/sun/codemodel/internal/JCommentPart;
            pop
        42: .line 235
            aload 10 /* m */
            invokevirtual com.sun.codemodel.internal.JMethod.javadoc:()Lcom/sun/codemodel/internal/JDocComment;
            invokevirtual com.sun.codemodel.internal.JDocComment.addReturn:()Lcom/sun/codemodel/internal/JCommentPart;
        43: .line 236
            ldc "the new instance of "
            invokevirtual com.sun.codemodel.internal.JCommentPart.append:(Ljava/lang/Object;)Lcom/sun/codemodel/internal/JCommentPart;
        44: .line 237
            aload 4 /* exposedElementType */
            invokevirtual com.sun.codemodel.internal.JCommentPart.append:(Ljava/lang/Object;)Lcom/sun/codemodel/internal/JCommentPart;
            pop
        45: .line 239
            aload 10 /* m */
            ldc Lcom/sun/tools/internal/xjc/generator/annotation/spec/XmlElementDeclWriter;
            invokevirtual com.sun.codemodel.internal.JMethod.annotate2:(Ljava/lang/Class;)Lcom/sun/codemodel/internal/JAnnotationWriter;
            checkcast com.sun.tools.internal.xjc.generator.annotation.spec.XmlElementDeclWriter
            astore 15 /* xemw */
        start local 15 // com.sun.tools.internal.xjc.generator.annotation.spec.XmlElementDeclWriter xemw
        46: .line 240
            aload 15 /* xemw */
            aload 7 /* namespaceURI */
            invokeinterface com.sun.tools.internal.xjc.generator.annotation.spec.XmlElementDeclWriter.namespace:(Ljava/lang/String;)Lcom/sun/tools/internal/xjc/generator/annotation/spec/XmlElementDeclWriter;
            aload 8 /* localPart */
            invokeinterface com.sun.tools.internal.xjc.generator.annotation.spec.XmlElementDeclWriter.name:(Ljava/lang/String;)Lcom/sun/tools/internal/xjc/generator/annotation/spec/XmlElementDeclWriter;
            pop
        47: .line 241
            aload 9 /* scope */
            ifnull 49
        48: .line 242
            aload 15 /* xemw */
            aload 9 /* scope */
            invokeinterface com.sun.tools.internal.xjc.generator.annotation.spec.XmlElementDeclWriter.scope:(Lcom/sun/codemodel/internal/JType;)Lcom/sun/tools/internal/xjc/generator/annotation/spec/XmlElementDeclWriter;
            pop
        49: .line 244
      StackMap locals: com.sun.tools.internal.xjc.generator.annotation.spec.XmlElementDeclWriter
      StackMap stack:
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getSubstitutionHead:()Lcom/sun/tools/internal/xjc/model/CElementInfo;
            ifnull 53
        50: .line 245
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getSubstitutionHead:()Lcom/sun/tools/internal/xjc/model/CElementInfo;
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getElementName:()Ljavax/xml/namespace/QName;
            astore 16 /* n */
        start local 16 // javax.xml.namespace.QName n
        51: .line 246
            aload 15 /* xemw */
            aload 16 /* n */
            invokevirtual javax.xml.namespace.QName.getNamespaceURI:()Ljava/lang/String;
            invokeinterface com.sun.tools.internal.xjc.generator.annotation.spec.XmlElementDeclWriter.substitutionHeadNamespace:(Ljava/lang/String;)Lcom/sun/tools/internal/xjc/generator/annotation/spec/XmlElementDeclWriter;
            pop
        52: .line 247
            aload 15 /* xemw */
            aload 16 /* n */
            invokevirtual javax.xml.namespace.QName.getLocalPart:()Ljava/lang/String;
            invokeinterface com.sun.tools.internal.xjc.generator.annotation.spec.XmlElementDeclWriter.substitutionHeadName:(Ljava/lang/String;)Lcom/sun/tools/internal/xjc/generator/annotation/spec/XmlElementDeclWriter;
            pop
        end local 16 // javax.xml.namespace.QName n
        53: .line 250
      StackMap locals:
      StackMap stack:
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getDefaultValue:()Ljava/lang/String;
            ifnull 55
        54: .line 251
            aload 15 /* xemw */
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getDefaultValue:()Ljava/lang/String;
            invokeinterface com.sun.tools.internal.xjc.generator.annotation.spec.XmlElementDeclWriter.defaultValue:(Ljava/lang/String;)Lcom/sun/tools/internal/xjc/generator/annotation/spec/XmlElementDeclWriter;
            pop
        55: .line 253
      StackMap locals:
      StackMap stack:
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getProperty:()Lcom/sun/tools/internal/xjc/model/CElementPropertyInfo;
            invokevirtual com.sun.tools.internal.xjc.model.CElementPropertyInfo.inlineBinaryData:()Z
            ifeq 57
        56: .line 254
            aload 10 /* m */
            ldc Ljavax/xml/bind/annotation/XmlInlineBinaryData;
            invokevirtual com.sun.codemodel.internal.JMethod.annotate:(Ljava/lang/Class;)Lcom/sun/codemodel/internal/JAnnotationUse;
            pop
        57: .line 257
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.outline:Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getProperty:()Lcom/sun/tools/internal/xjc/model/CElementPropertyInfo;
            aload 10 /* m */
            invokevirtual com.sun.tools.internal.xjc.generator.bean.BeanGenerator.generateAdapterIfNecessary:(Lcom/sun/tools/internal/xjc/model/CPropertyInfo;Lcom/sun/codemodel/internal/JAnnotatable;)V
        58: .line 258
            return
        end local 15 // com.sun.tools.internal.xjc.generator.annotation.spec.XmlElementDeclWriter xemw
        end local 14 // com.sun.codemodel.internal.JInvocation exp
        end local 13 // com.sun.codemodel.internal.JExpression scopeClass
        end local 12 // com.sun.codemodel.internal.JExpression declaredType
        end local 11 // com.sun.codemodel.internal.JVar $value
        end local 10 // com.sun.codemodel.internal.JMethod m
        end local 9 // com.sun.codemodel.internal.JClass scope
        end local 8 // java.lang.String localPart
        end local 7 // java.lang.String namespaceURI
        end local 6 // com.sun.codemodel.internal.JType implType
        end local 5 // com.sun.codemodel.internal.JType exposedType
        end local 4 // com.sun.codemodel.internal.JType exposedElementType
        end local 3 // com.sun.tools.internal.xjc.outline.Aspect exposed
        end local 2 // com.sun.tools.internal.xjc.outline.Aspect impl
        end local 1 // com.sun.tools.internal.xjc.model.CElementInfo ei
        end local 0 // com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   59     0                this  Lcom/sun/tools/internal/xjc/generator/bean/ObjectFactoryGeneratorImpl;
            0   59     1                  ei  Lcom/sun/tools/internal/xjc/model/CElementInfo;
            0   59     2                impl  Lcom/sun/tools/internal/xjc/outline/Aspect;
            0   59     3             exposed  Lcom/sun/tools/internal/xjc/outline/Aspect;
            1   59     4  exposedElementType  Lcom/sun/codemodel/internal/JType;
            2   59     5         exposedType  Lcom/sun/codemodel/internal/JType;
            3   59     6            implType  Lcom/sun/codemodel/internal/JType;
            4   59     7        namespaceURI  Ljava/lang/String;
            5   59     8           localPart  Ljava/lang/String;
            6   59     9               scope  Lcom/sun/codemodel/internal/JClass;
           20   59    10                   m  Lcom/sun/codemodel/internal/JMethod;
           11   19    11            existing  Lcom/sun/tools/internal/xjc/model/CElementInfo;
           21   59    11              $value  Lcom/sun/codemodel/internal/JVar;
           23   24    12        declaredType  Lcom/sun/codemodel/internal/JExpression;
           25   59    12        declaredType  Lcom/sun/codemodel/internal/JExpression;
           28   59    13          scopeClass  Lcom/sun/codemodel/internal/JExpression;
           29   59    14                 exp  Lcom/sun/codemodel/internal/JInvocation;
           46   59    15                xemw  Lcom/sun/tools/internal/xjc/generator/annotation/spec/XmlElementDeclWriter;
           51   53    16                   n  Ljavax/xml/namespace/QName;
    MethodParameters:
         Name  Flags
      ei       
      impl     
      exposed  

  private com.sun.codemodel.internal.JExpression getQNameInvocation(com.sun.tools.internal.xjc.model.CElementInfo);
    descriptor: (Lcom/sun/tools/internal/xjc/model/CElementInfo;)Lcom/sun/codemodel/internal/JExpression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl this
        start local 1 // com.sun.tools.internal.xjc.model.CElementInfo ei
         0: .line 266
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getElementName:()Ljavax/xml/namespace/QName;
            astore 2 /* name */
        start local 2 // javax.xml.namespace.QName name
         1: .line 267
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.qnameMap:Ljava/util/HashMap;
            aload 2 /* name */
            invokevirtual java.util.HashMap.containsKey:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 268
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.qnameMap:Ljava/util/HashMap;
            aload 2 /* name */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.codemodel.internal.JExpression
            areturn
         3: .line 271
      StackMap locals: javax.xml.namespace.QName
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.qnameMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            sipush 1024
            if_icmple 5
         4: .line 273
            aload 0 /* this */
            aload 2 /* name */
            invokevirtual com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.createQName:(Ljavax/xml/namespace/QName;)Lcom/sun/codemodel/internal/JInvocation;
            areturn
         5: .line 277
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.objectFactory:Lcom/sun/codemodel/internal/JDefinedClass;
         6: .line 278
            bipush 28
         7: .line 279
            ldc Ljavax/xml/namespace/QName;
         8: .line 280
            new java.lang.StringBuilder
            dup
            bipush 95
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* ei */
            invokevirtual com.sun.tools.internal.xjc.model.CElementInfo.getSqueezedName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "_QNAME"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 0 /* this */
            aload 2 /* name */
            invokevirtual com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.createQName:(Ljavax/xml/namespace/QName;)Lcom/sun/codemodel/internal/JInvocation;
         9: .line 277
            invokevirtual com.sun.codemodel.internal.JDefinedClass.field:(ILjava/lang/Class;Ljava/lang/String;Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/codemodel/internal/JFieldVar;
            astore 3 /* qnameField */
        start local 3 // com.sun.codemodel.internal.JFieldVar qnameField
        10: .line 282
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.qnameMap:Ljava/util/HashMap;
            aload 2 /* name */
            aload 3 /* qnameField */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 284
            aload 3 /* qnameField */
            areturn
        end local 3 // com.sun.codemodel.internal.JFieldVar qnameField
        end local 2 // javax.xml.namespace.QName name
        end local 1 // com.sun.tools.internal.xjc.model.CElementInfo ei
        end local 0 // com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lcom/sun/tools/internal/xjc/generator/bean/ObjectFactoryGeneratorImpl;
            0   12     1          ei  Lcom/sun/tools/internal/xjc/model/CElementInfo;
            1   12     2        name  Ljavax/xml/namespace/QName;
           10   12     3  qnameField  Lcom/sun/codemodel/internal/JFieldVar;
    MethodParameters:
      Name  Flags
      ei    

  private com.sun.codemodel.internal.JInvocation createQName(javax.xml.namespace.QName);
    descriptor: (Ljavax/xml/namespace/QName;)Lcom/sun/codemodel/internal/JInvocation;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl this
        start local 1 // javax.xml.namespace.QName name
         0: .line 291
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.codeModel:Lcom/sun/codemodel/internal/JCodeModel;
            ldc Ljavax/xml/namespace/QName;
            invokevirtual com.sun.codemodel.internal.JCodeModel.ref:(Ljava/lang/Class;)Lcom/sun/codemodel/internal/JClass;
            invokestatic com.sun.codemodel.internal.JExpr._new:(Lcom/sun/codemodel/internal/JClass;)Lcom/sun/codemodel/internal/JInvocation;
            aload 1 /* name */
            invokevirtual javax.xml.namespace.QName.getNamespaceURI:()Ljava/lang/String;
            invokevirtual com.sun.codemodel.internal.JInvocation.arg:(Ljava/lang/String;)Lcom/sun/codemodel/internal/JInvocation;
            aload 1 /* name */
            invokevirtual javax.xml.namespace.QName.getLocalPart:()Ljava/lang/String;
            invokevirtual com.sun.codemodel.internal.JInvocation.arg:(Ljava/lang/String;)Lcom/sun/codemodel/internal/JInvocation;
            areturn
        end local 1 // javax.xml.namespace.QName name
        end local 0 // com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/internal/xjc/generator/bean/ObjectFactoryGeneratorImpl;
            0    1     1  name  Ljavax/xml/namespace/QName;
    MethodParameters:
      Name  Flags
      name  

  protected final void populate(com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl, com.sun.codemodel.internal.JClass);
    descriptor: (Lcom/sun/tools/internal/xjc/generator/bean/ClassOutlineImpl;Lcom/sun/codemodel/internal/JClass;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=7, locals=17, args_size=3
        start local 0 // com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl this
        start local 1 // com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl cc
        start local 2 // com.sun.codemodel.internal.JClass sigType
         0: .line 302
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.target:Lcom/sun/tools/internal/xjc/model/CClassInfo;
            invokevirtual com.sun.tools.internal.xjc.model.CClassInfo.isAbstract:()Z
            ifne 8
         1: .line 303
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.objectFactory:Lcom/sun/codemodel/internal/JDefinedClass;
         2: .line 304
            iconst_1
            aload 2 /* sigType */
            new java.lang.StringBuilder
            dup
            ldc "create"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.target:Lcom/sun/tools/internal/xjc/model/CClassInfo;
            invokevirtual com.sun.tools.internal.xjc.model.CClassInfo.getSqueezedName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 303
            invokevirtual com.sun.codemodel.internal.JDefinedClass.method:(ILcom/sun/codemodel/internal/JType;Ljava/lang/String;)Lcom/sun/codemodel/internal/JMethod;
            astore 3 /* m */
        start local 3 // com.sun.codemodel.internal.JMethod m
         4: .line 305
            aload 3 /* m */
            invokevirtual com.sun.codemodel.internal.JMethod.body:()Lcom/sun/codemodel/internal/JBlock;
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.implRef:Lcom/sun/codemodel/internal/JClass;
            invokestatic com.sun.codemodel.internal.JExpr._new:(Lcom/sun/codemodel/internal/JClass;)Lcom/sun/codemodel/internal/JInvocation;
            invokevirtual com.sun.codemodel.internal.JBlock._return:(Lcom/sun/codemodel/internal/JExpression;)V
         5: .line 308
            aload 3 /* m */
            invokevirtual com.sun.codemodel.internal.JMethod.javadoc:()Lcom/sun/codemodel/internal/JDocComment;
         6: .line 309
            ldc "Create an instance of "
            invokevirtual com.sun.codemodel.internal.JDocComment.append:(Ljava/lang/Object;)Lcom/sun/codemodel/internal/JDocComment;
         7: .line 310
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.ref:Lcom/sun/codemodel/internal/JDefinedClass;
            invokevirtual com.sun.codemodel.internal.JDocComment.append:(Ljava/lang/Object;)Lcom/sun/codemodel/internal/JDocComment;
            pop
        end local 3 // com.sun.codemodel.internal.JMethod m
         8: .line 315
      StackMap locals:
      StackMap stack:
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.target:Lcom/sun/tools/internal/xjc/model/CClassInfo;
            invokevirtual com.sun.tools.internal.xjc.model.CClassInfo.getConstructors:()Ljava/util/Collection;
            astore 3 /* consl */
        start local 3 // java.util.Collection consl
         9: .line 316
            aload 3 /* consl */
            invokeinterface java.util.Collection.size:()I
            ifeq 11
        10: .line 319
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.implClass:Lcom/sun/codemodel/internal/JDefinedClass;
            iconst_1
            invokevirtual com.sun.codemodel.internal.JDefinedClass.constructor:(I)Lcom/sun/codemodel/internal/JMethod;
            pop
        11: .line 323
      StackMap locals: java.util.Collection
      StackMap stack:
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.target:Lcom/sun/tools/internal/xjc/model/CClassInfo;
            invokevirtual com.sun.tools.internal.xjc.model.CClassInfo.getSqueezedName:()Ljava/lang/String;
            astore 4 /* name */
        start local 4 // java.lang.String name
        12: .line 324
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.valueFactoryNames:Ljava/util/Map;
            aload 4 /* name */
            aload 1 /* cc */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl
            astore 5 /* existing */
        start local 5 // com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl existing
        13: .line 325
            aload 5 /* existing */
            ifnull 21
        14: .line 326
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.outline:Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
            invokevirtual com.sun.tools.internal.xjc.generator.bean.BeanGenerator.getErrorReceiver:()Lcom/sun/tools/internal/xjc/ErrorReceiver;
            aload 5 /* existing */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.target:Lcom/sun/tools/internal/xjc/model/CClassInfo;
            invokevirtual com.sun.tools.internal.xjc.model.CClassInfo.getLocator:()Lorg/xml/sax/Locator;
        15: .line 327
            getstatic com.sun.tools.internal.xjc.generator.bean.Messages.OBJECT_FACTORY_CONFLICT:Lcom/sun/tools/internal/xjc/generator/bean/Messages;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* name */
            aastore
            invokevirtual com.sun.tools.internal.xjc.generator.bean.Messages.format:([Ljava/lang/Object;)Ljava/lang/String;
        16: .line 326
            invokevirtual com.sun.tools.internal.xjc.ErrorReceiver.error:(Lorg/xml/sax/Locator;Ljava/lang/String;)V
        17: .line 328
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.outline:Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
            invokevirtual com.sun.tools.internal.xjc.generator.bean.BeanGenerator.getErrorReceiver:()Lcom/sun/tools/internal/xjc/ErrorReceiver;
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.target:Lcom/sun/tools/internal/xjc/model/CClassInfo;
            invokevirtual com.sun.tools.internal.xjc.model.CClassInfo.getLocator:()Lorg/xml/sax/Locator;
        18: .line 329
            getstatic com.sun.tools.internal.xjc.generator.bean.Messages.OBJECT_FACTORY_CONFLICT_RELATED:Lcom/sun/tools/internal/xjc/generator/bean/Messages;
            iconst_0
            anewarray java.lang.Object
            invokevirtual com.sun.tools.internal.xjc.generator.bean.Messages.format:([Ljava/lang/Object;)Ljava/lang/String;
        19: .line 328
            invokevirtual com.sun.tools.internal.xjc.ErrorReceiver.error:(Lorg/xml/sax/Locator;Ljava/lang/String;)V
        20: .line 330
            return
        end local 5 // com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl existing
        end local 4 // java.lang.String name
        21: .line 334
      StackMap locals:
      StackMap stack:
            aload 3 /* consl */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 49
      StackMap locals: com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl com.sun.codemodel.internal.JClass java.util.Collection top java.util.Iterator
      StackMap stack:
        22: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.internal.xjc.model.Constructor
            astore 4 /* cons */
        start local 4 // com.sun.tools.internal.xjc.model.Constructor cons
        23: .line 340
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.objectFactory:Lcom/sun/codemodel/internal/JDefinedClass;
            iconst_1
        24: .line 341
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.ref:Lcom/sun/codemodel/internal/JDefinedClass;
            new java.lang.StringBuilder
            dup
            ldc "create"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.target:Lcom/sun/tools/internal/xjc/model/CClassInfo;
            invokevirtual com.sun.tools.internal.xjc.model.CClassInfo.getSqueezedName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        25: .line 340
            invokevirtual com.sun.codemodel.internal.JDefinedClass.method:(ILcom/sun/codemodel/internal/JType;Ljava/lang/String;)Lcom/sun/codemodel/internal/JMethod;
            astore 6 /* m */
        start local 6 // com.sun.codemodel.internal.JMethod m
        26: .line 342
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.implRef:Lcom/sun/codemodel/internal/JClass;
            invokestatic com.sun.codemodel.internal.JExpr._new:(Lcom/sun/codemodel/internal/JClass;)Lcom/sun/codemodel/internal/JInvocation;
            astore 7 /* inv */
        start local 7 // com.sun.codemodel.internal.JInvocation inv
        27: .line 343
            aload 6 /* m */
            invokevirtual com.sun.codemodel.internal.JMethod.body:()Lcom/sun/codemodel/internal/JBlock;
            aload 7 /* inv */
            invokevirtual com.sun.codemodel.internal.JBlock._return:(Lcom/sun/codemodel/internal/JExpression;)V
        28: .line 349
            aload 6 /* m */
            invokevirtual com.sun.codemodel.internal.JMethod.javadoc:()Lcom/sun/codemodel/internal/JDocComment;
        29: .line 350
            ldc "Create an instance of "
            invokevirtual com.sun.codemodel.internal.JDocComment.append:(Ljava/lang/Object;)Lcom/sun/codemodel/internal/JDocComment;
        30: .line 351
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.ref:Lcom/sun/codemodel/internal/JDefinedClass;
            invokevirtual com.sun.codemodel.internal.JDocComment.append:(Ljava/lang/Object;)Lcom/sun/codemodel/internal/JDocComment;
        31: .line 352
            ldc Ljavax/xml/bind/JAXBException;
            invokevirtual com.sun.codemodel.internal.JDocComment.addThrows:(Ljava/lang/Class;)Lcom/sun/codemodel/internal/JCommentPart;
            ldc "if an error occurs"
            invokevirtual com.sun.codemodel.internal.JCommentPart.append:(Ljava/lang/Object;)Lcom/sun/codemodel/internal/JCommentPart;
            pop
        32: .line 358
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.implClass:Lcom/sun/codemodel/internal/JDefinedClass;
            iconst_1
            invokevirtual com.sun.codemodel.internal.JDefinedClass.constructor:(I)Lcom/sun/codemodel/internal/JMethod;
            astore 8 /* c */
        start local 8 // com.sun.codemodel.internal.JMethod c
        33: .line 360
            aload 4 /* cons */
            getfield com.sun.tools.internal.xjc.model.Constructor.fields:[Ljava/lang/String;
            dup
            astore 12
            arraylength
            istore 11
            iconst_0
            istore 10
            goto 48
      StackMap locals: com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl com.sun.codemodel.internal.JClass java.util.Collection com.sun.tools.internal.xjc.model.Constructor java.util.Iterator com.sun.codemodel.internal.JMethod com.sun.codemodel.internal.JInvocation com.sun.codemodel.internal.JMethod top int int java.lang.String[]
      StackMap stack:
        34: aload 12
            iload 10
            aaload
            astore 9 /* fieldName */
        start local 9 // java.lang.String fieldName
        35: .line 361
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.target:Lcom/sun/tools/internal/xjc/model/CClassInfo;
            aload 9 /* fieldName */
            invokevirtual com.sun.tools.internal.xjc.model.CClassInfo.getProperty:(Ljava/lang/String;)Lcom/sun/tools/internal/xjc/model/CPropertyInfo;
            astore 13 /* field */
        start local 13 // com.sun.tools.internal.xjc.model.CPropertyInfo field
        36: .line 362
            aload 13 /* field */
            ifnonnull 41
        37: .line 363
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.outline:Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
            invokevirtual com.sun.tools.internal.xjc.generator.bean.BeanGenerator.getErrorReceiver:()Lcom/sun/tools/internal/xjc/ErrorReceiver;
            aload 1 /* cc */
            getfield com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl.target:Lcom/sun/tools/internal/xjc/model/CClassInfo;
            invokevirtual com.sun.tools.internal.xjc.model.CClassInfo.getLocator:()Lorg/xml/sax/Locator;
        38: .line 364
            getstatic com.sun.tools.internal.xjc.generator.bean.Messages.ILLEGAL_CONSTRUCTOR_PARAM:Lcom/sun/tools/internal/xjc/generator/bean/Messages;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* fieldName */
            aastore
            invokevirtual com.sun.tools.internal.xjc.generator.bean.Messages.format:([Ljava/lang/Object;)Ljava/lang/String;
        39: .line 363
            invokevirtual com.sun.tools.internal.xjc.ErrorReceiver.error:(Lorg/xml/sax/Locator;Ljava/lang/String;)V
        40: .line 365
            goto 47
        41: .line 368
      StackMap locals: com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl com.sun.codemodel.internal.JClass java.util.Collection com.sun.tools.internal.xjc.model.Constructor java.util.Iterator com.sun.codemodel.internal.JMethod com.sun.codemodel.internal.JInvocation com.sun.codemodel.internal.JMethod java.lang.String int int java.lang.String[] com.sun.tools.internal.xjc.model.CPropertyInfo
      StackMap stack:
            aload 9 /* fieldName */
            invokestatic com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.camelize:(Ljava/lang/String;)Ljava/lang/String;
            astore 9 /* fieldName */
        42: .line 370
            aload 0 /* this */
            getfield com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl.outline:Lcom/sun/tools/internal/xjc/generator/bean/BeanGenerator;
            aload 13 /* field */
            invokevirtual com.sun.tools.internal.xjc.generator.bean.BeanGenerator.getField:(Lcom/sun/tools/internal/xjc/model/CPropertyInfo;)Lcom/sun/tools/internal/xjc/outline/FieldOutline;
            astore 14 /* fo */
        start local 14 // com.sun.tools.internal.xjc.outline.FieldOutline fo
        43: .line 371
            aload 14 /* fo */
            invokestatic com.sun.codemodel.internal.JExpr._this:()Lcom/sun/codemodel/internal/JExpression;
            invokeinterface com.sun.tools.internal.xjc.outline.FieldOutline.create:(Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/tools/internal/xjc/outline/FieldAccessor;
            astore 15 /* accessor */
        start local 15 // com.sun.tools.internal.xjc.outline.FieldAccessor accessor
        44: .line 375
            aload 7 /* inv */
            aload 6 /* m */
            aload 14 /* fo */
            invokeinterface com.sun.tools.internal.xjc.outline.FieldOutline.getRawType:()Lcom/sun/codemodel/internal/JType;
            aload 9 /* fieldName */
            invokevirtual com.sun.codemodel.internal.JMethod.param:(Lcom/sun/codemodel/internal/JType;Ljava/lang/String;)Lcom/sun/codemodel/internal/JVar;
            invokevirtual com.sun.codemodel.internal.JInvocation.arg:(Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/codemodel/internal/JInvocation;
            pop
        45: .line 377
            aload 8 /* c */
            aload 14 /* fo */
            invokeinterface com.sun.tools.internal.xjc.outline.FieldOutline.getRawType:()Lcom/sun/codemodel/internal/JType;
            aload 9 /* fieldName */
            invokevirtual com.sun.codemodel.internal.JMethod.param:(Lcom/sun/codemodel/internal/JType;Ljava/lang/String;)Lcom/sun/codemodel/internal/JVar;
            astore 16 /* $var */
        start local 16 // com.sun.codemodel.internal.JVar $var
        46: .line 378
            aload 15 /* accessor */
            aload 8 /* c */
            invokevirtual com.sun.codemodel.internal.JMethod.body:()Lcom/sun/codemodel/internal/JBlock;
            new java.lang.StringBuilder
            dup
            bipush 95
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* fieldName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 16 /* $var */
            invokeinterface com.sun.tools.internal.xjc.outline.FieldAccessor.fromRawValue:(Lcom/sun/codemodel/internal/JBlock;Ljava/lang/String;Lcom/sun/codemodel/internal/JExpression;)V
        end local 16 // com.sun.codemodel.internal.JVar $var
        end local 15 // com.sun.tools.internal.xjc.outline.FieldAccessor accessor
        end local 14 // com.sun.tools.internal.xjc.outline.FieldOutline fo
        end local 13 // com.sun.tools.internal.xjc.model.CPropertyInfo field
        end local 9 // java.lang.String fieldName
        47: .line 360
      StackMap locals: com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl com.sun.codemodel.internal.JClass java.util.Collection com.sun.tools.internal.xjc.model.Constructor java.util.Iterator com.sun.codemodel.internal.JMethod com.sun.codemodel.internal.JInvocation com.sun.codemodel.internal.JMethod top int int java.lang.String[]
      StackMap stack:
            iinc 10 1
      StackMap locals:
      StackMap stack:
        48: iload 10
            iload 11
            if_icmplt 34
        end local 8 // com.sun.codemodel.internal.JMethod c
        end local 7 // com.sun.codemodel.internal.JInvocation inv
        end local 6 // com.sun.codemodel.internal.JMethod m
        end local 4 // com.sun.tools.internal.xjc.model.Constructor cons
        49: .line 334
      StackMap locals: com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl com.sun.codemodel.internal.JClass java.util.Collection top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 22
        50: .line 381
            return
        end local 3 // java.util.Collection consl
        end local 2 // com.sun.codemodel.internal.JClass sigType
        end local 1 // com.sun.tools.internal.xjc.generator.bean.ClassOutlineImpl cc
        end local 0 // com.sun.tools.internal.xjc.generator.bean.ObjectFactoryGeneratorImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   51     0       this  Lcom/sun/tools/internal/xjc/generator/bean/ObjectFactoryGeneratorImpl;
            0   51     1         cc  Lcom/sun/tools/internal/xjc/generator/bean/ClassOutlineImpl;
            0   51     2    sigType  Lcom/sun/codemodel/internal/JClass;
            4    8     3          m  Lcom/sun/codemodel/internal/JMethod;
            9   51     3      consl  Ljava/util/Collection<+Lcom/sun/tools/internal/xjc/model/Constructor;>;
           12   21     4       name  Ljava/lang/String;
           13   21     5   existing  Lcom/sun/tools/internal/xjc/generator/bean/ClassOutlineImpl;
           23   49     4       cons  Lcom/sun/tools/internal/xjc/model/Constructor;
           26   49     6          m  Lcom/sun/codemodel/internal/JMethod;
           27   49     7        inv  Lcom/sun/codemodel/internal/JInvocation;
           33   49     8          c  Lcom/sun/codemodel/internal/JMethod;
           35   47     9  fieldName  Ljava/lang/String;
           36   47    13      field  Lcom/sun/tools/internal/xjc/model/CPropertyInfo;
           43   47    14         fo  Lcom/sun/tools/internal/xjc/outline/FieldOutline;
           44   47    15   accessor  Lcom/sun/tools/internal/xjc/outline/FieldAccessor;
           46   47    16       $var  Lcom/sun/codemodel/internal/JVar;
    MethodParameters:
         Name  Flags
      cc       
      sigType  

  private static java.lang.String camelize(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 386
            new java.lang.StringBuilder
            dup
            aload 0 /* s */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* s */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     
}
SourceFile: "ObjectFactoryGeneratorImpl.java"