public class edu.umd.cs.findbugs.SloppyBugComparator implements edu.umd.cs.findbugs.WarningComparator
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: edu.umd.cs.findbugs.SloppyBugComparator
  super_class: java.lang.Object
{
  private static final boolean DEBUG;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private edu.umd.cs.findbugs.model.ClassNameRewriter classNameRewriter;
    descriptor: Ledu/umd/cs/findbugs/model/ClassNameRewriter;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 34
            ldc "sloppyComparator.debug"
            invokestatic edu.umd.cs.findbugs.SystemProperties.getBoolean:(Ljava/lang/String;)Z
            putstatic edu.umd.cs.findbugs.SloppyBugComparator.DEBUG:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
         0: .line 38
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 36
            aload 0 /* this */
            invokestatic edu.umd.cs.findbugs.model.IdentityClassNameRewriter.instance:()Ledu/umd/cs/findbugs/model/IdentityClassNameRewriter;
            putfield edu.umd.cs.findbugs.SloppyBugComparator.classNameRewriter:Ledu/umd/cs/findbugs/model/ClassNameRewriter;
         2: .line 39
            return
        end local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ledu/umd/cs/findbugs/SloppyBugComparator;

  public void setClassNameRewriter(edu.umd.cs.findbugs.model.ClassNameRewriter);
    descriptor: (Ledu/umd/cs/findbugs/model/ClassNameRewriter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
        start local 1 // edu.umd.cs.findbugs.model.ClassNameRewriter classNameRewriter
         0: .line 43
            aload 0 /* this */
            aload 1 /* classNameRewriter */
            putfield edu.umd.cs.findbugs.SloppyBugComparator.classNameRewriter:Ledu/umd/cs/findbugs/model/ClassNameRewriter;
         1: .line 44
            return
        end local 1 // edu.umd.cs.findbugs.model.ClassNameRewriter classNameRewriter
        end local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Ledu/umd/cs/findbugs/SloppyBugComparator;
            0    2     1  classNameRewriter  Ledu/umd/cs/findbugs/model/ClassNameRewriter;
    MethodParameters:
                   Name  Flags
      classNameRewriter  

  private int compareNullElements(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
        start local 1 // java.lang.Object lhs
        start local 2 // java.lang.Object rhs
         0: .line 47
            aload 1 /* lhs */
            ifnonnull 2
            aload 2 /* rhs */
            ifnonnull 2
         1: .line 48
            iconst_0
            ireturn
         2: .line 50
      StackMap locals:
      StackMap stack:
            aload 1 /* lhs */
            ifnonnull 3
            iconst_m1
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_1
      StackMap locals:
      StackMap stack: int
         4: ireturn
        end local 2 // java.lang.Object rhs
        end local 1 // java.lang.Object lhs
        end local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ledu/umd/cs/findbugs/SloppyBugComparator;
            0    5     1   lhs  Ljava/lang/Object;
            0    5     2   rhs  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      lhs   
      rhs   

  private int compareClassesAllowingNull(edu.umd.cs.findbugs.ClassAnnotation, edu.umd.cs.findbugs.ClassAnnotation);
    descriptor: (Ledu/umd/cs/findbugs/ClassAnnotation;Ledu/umd/cs/findbugs/ClassAnnotation;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
        start local 1 // edu.umd.cs.findbugs.ClassAnnotation lhs
        start local 2 // edu.umd.cs.findbugs.ClassAnnotation rhs
         0: .line 64
            aload 1 /* lhs */
            ifnull 1
            aload 2 /* rhs */
            ifnonnull 2
         1: .line 65
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* lhs */
            aload 2 /* rhs */
            invokevirtual edu.umd.cs.findbugs.SloppyBugComparator.compareNullElements:(Ljava/lang/Object;Ljava/lang/Object;)I
            ireturn
         2: .line 68
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.SloppyBugComparator.classNameRewriter:Ledu/umd/cs/findbugs/model/ClassNameRewriter;
            aload 1 /* lhs */
            invokevirtual edu.umd.cs.findbugs.ClassAnnotation.getClassName:()Ljava/lang/String;
            invokeinterface edu.umd.cs.findbugs.model.ClassNameRewriter.rewriteClassName:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* lhsClassName */
        start local 3 // java.lang.String lhsClassName
         3: .line 69
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.SloppyBugComparator.classNameRewriter:Ledu/umd/cs/findbugs/model/ClassNameRewriter;
            aload 2 /* rhs */
            invokevirtual edu.umd.cs.findbugs.ClassAnnotation.getClassName:()Ljava/lang/String;
            invokeinterface edu.umd.cs.findbugs.model.ClassNameRewriter.rewriteClassName:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* rhsClassName */
        start local 4 // java.lang.String rhsClassName
         4: .line 71
            getstatic edu.umd.cs.findbugs.SloppyBugComparator.DEBUG:Z
            ifeq 6
         5: .line 72
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Comparing "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* lhsClassName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* rhsClassName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         6: .line 75
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 3 /* lhsClassName */
            aload 4 /* rhsClassName */
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            istore 5 /* cmp */
        start local 5 // int cmp
         7: .line 76
            getstatic edu.umd.cs.findbugs.SloppyBugComparator.DEBUG:Z
            ifeq 9
         8: .line 77
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "\t==> "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 5 /* cmp */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         9: .line 79
      StackMap locals: int
      StackMap stack:
            iload 5 /* cmp */
            ireturn
        end local 5 // int cmp
        end local 4 // java.lang.String rhsClassName
        end local 3 // java.lang.String lhsClassName
        end local 2 // edu.umd.cs.findbugs.ClassAnnotation rhs
        end local 1 // edu.umd.cs.findbugs.ClassAnnotation lhs
        end local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Ledu/umd/cs/findbugs/SloppyBugComparator;
            0   10     1           lhs  Ledu/umd/cs/findbugs/ClassAnnotation;
            0   10     2           rhs  Ledu/umd/cs/findbugs/ClassAnnotation;
            3   10     3  lhsClassName  Ljava/lang/String;
            4   10     4  rhsClassName  Ljava/lang/String;
            7   10     5           cmp  I
    MethodParameters:
      Name  Flags
      lhs   
      rhs   

  private int compareMethodsAllowingNull(edu.umd.cs.findbugs.MethodAnnotation, edu.umd.cs.findbugs.MethodAnnotation);
    descriptor: (Ledu/umd/cs/findbugs/MethodAnnotation;Ledu/umd/cs/findbugs/MethodAnnotation;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
        start local 1 // edu.umd.cs.findbugs.MethodAnnotation lhs
        start local 2 // edu.umd.cs.findbugs.MethodAnnotation rhs
         0: .line 83
            aload 1 /* lhs */
            ifnull 1
            aload 2 /* rhs */
            ifnonnull 2
         1: .line 84
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* lhs */
            aload 2 /* rhs */
            invokevirtual edu.umd.cs.findbugs.SloppyBugComparator.compareNullElements:(Ljava/lang/Object;Ljava/lang/Object;)I
            ireturn
         2: .line 86
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* lhs */
            invokevirtual edu.umd.cs.findbugs.SloppyBugComparator.convertMethod:(Ledu/umd/cs/findbugs/MethodAnnotation;)Ledu/umd/cs/findbugs/MethodAnnotation;
            astore 1 /* lhs */
         3: .line 87
            aload 0 /* this */
            aload 2 /* rhs */
            invokevirtual edu.umd.cs.findbugs.SloppyBugComparator.convertMethod:(Ledu/umd/cs/findbugs/MethodAnnotation;)Ledu/umd/cs/findbugs/MethodAnnotation;
            astore 2 /* rhs */
         4: .line 88
            aload 1 /* lhs */
            aload 2 /* rhs */
            invokevirtual edu.umd.cs.findbugs.MethodAnnotation.compareTo:(Ledu/umd/cs/findbugs/BugAnnotation;)I
            ireturn
        end local 2 // edu.umd.cs.findbugs.MethodAnnotation rhs
        end local 1 // edu.umd.cs.findbugs.MethodAnnotation lhs
        end local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ledu/umd/cs/findbugs/SloppyBugComparator;
            0    5     1   lhs  Ledu/umd/cs/findbugs/MethodAnnotation;
            0    5     2   rhs  Ledu/umd/cs/findbugs/MethodAnnotation;
    MethodParameters:
      Name  Flags
      lhs   
      rhs   

  private int compareFieldsAllowingNull(edu.umd.cs.findbugs.FieldAnnotation, edu.umd.cs.findbugs.FieldAnnotation);
    descriptor: (Ledu/umd/cs/findbugs/FieldAnnotation;Ledu/umd/cs/findbugs/FieldAnnotation;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
        start local 1 // edu.umd.cs.findbugs.FieldAnnotation lhs
        start local 2 // edu.umd.cs.findbugs.FieldAnnotation rhs
         0: .line 92
            aload 1 /* lhs */
            ifnull 1
            aload 2 /* rhs */
            ifnonnull 2
         1: .line 93
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* lhs */
            aload 2 /* rhs */
            invokevirtual edu.umd.cs.findbugs.SloppyBugComparator.compareNullElements:(Ljava/lang/Object;Ljava/lang/Object;)I
            ireturn
         2: .line 95
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* lhs */
            invokevirtual edu.umd.cs.findbugs.SloppyBugComparator.convertField:(Ledu/umd/cs/findbugs/FieldAnnotation;)Ledu/umd/cs/findbugs/FieldAnnotation;
            astore 1 /* lhs */
         3: .line 96
            aload 0 /* this */
            aload 2 /* rhs */
            invokevirtual edu.umd.cs.findbugs.SloppyBugComparator.convertField:(Ledu/umd/cs/findbugs/FieldAnnotation;)Ledu/umd/cs/findbugs/FieldAnnotation;
            astore 2 /* rhs */
         4: .line 97
            getstatic edu.umd.cs.findbugs.SloppyBugComparator.DEBUG:Z
            ifeq 6
         5: .line 98
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Compare fields: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* lhs */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* rhs */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         6: .line 100
      StackMap locals:
      StackMap stack:
            aload 1 /* lhs */
            aload 2 /* rhs */
            invokevirtual edu.umd.cs.findbugs.FieldAnnotation.compareTo:(Ledu/umd/cs/findbugs/BugAnnotation;)I
            ireturn
        end local 2 // edu.umd.cs.findbugs.FieldAnnotation rhs
        end local 1 // edu.umd.cs.findbugs.FieldAnnotation lhs
        end local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ledu/umd/cs/findbugs/SloppyBugComparator;
            0    7     1   lhs  Ledu/umd/cs/findbugs/FieldAnnotation;
            0    7     2   rhs  Ledu/umd/cs/findbugs/FieldAnnotation;
    MethodParameters:
      Name  Flags
      lhs   
      rhs   

  private edu.umd.cs.findbugs.MethodAnnotation convertMethod(edu.umd.cs.findbugs.MethodAnnotation);
    descriptor: (Ledu/umd/cs/findbugs/MethodAnnotation;)Ledu/umd/cs/findbugs/MethodAnnotation;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
        start local 1 // edu.umd.cs.findbugs.MethodAnnotation methodAnnotation
         0: .line 104
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.SloppyBugComparator.classNameRewriter:Ledu/umd/cs/findbugs/model/ClassNameRewriter;
            aload 1 /* methodAnnotation */
            invokestatic edu.umd.cs.findbugs.model.ClassNameRewriterUtil.convertMethodAnnotation:(Ledu/umd/cs/findbugs/model/ClassNameRewriter;Ledu/umd/cs/findbugs/MethodAnnotation;)Ledu/umd/cs/findbugs/MethodAnnotation;
            areturn
        end local 1 // edu.umd.cs.findbugs.MethodAnnotation methodAnnotation
        end local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Ledu/umd/cs/findbugs/SloppyBugComparator;
            0    1     1  methodAnnotation  Ledu/umd/cs/findbugs/MethodAnnotation;
    MethodParameters:
                  Name  Flags
      methodAnnotation  

  private edu.umd.cs.findbugs.FieldAnnotation convertField(edu.umd.cs.findbugs.FieldAnnotation);
    descriptor: (Ledu/umd/cs/findbugs/FieldAnnotation;)Ledu/umd/cs/findbugs/FieldAnnotation;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
        start local 1 // edu.umd.cs.findbugs.FieldAnnotation fieldAnnotation
         0: .line 108
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.SloppyBugComparator.classNameRewriter:Ledu/umd/cs/findbugs/model/ClassNameRewriter;
            aload 1 /* fieldAnnotation */
            invokestatic edu.umd.cs.findbugs.model.ClassNameRewriterUtil.convertFieldAnnotation:(Ledu/umd/cs/findbugs/model/ClassNameRewriter;Ledu/umd/cs/findbugs/FieldAnnotation;)Ledu/umd/cs/findbugs/FieldAnnotation;
            areturn
        end local 1 // edu.umd.cs.findbugs.FieldAnnotation fieldAnnotation
        end local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0             this  Ledu/umd/cs/findbugs/SloppyBugComparator;
            0    1     1  fieldAnnotation  Ledu/umd/cs/findbugs/FieldAnnotation;
    MethodParameters:
                 Name  Flags
      fieldAnnotation  

  public int compare(edu.umd.cs.findbugs.BugInstance, edu.umd.cs.findbugs.BugInstance);
    descriptor: (Ledu/umd/cs/findbugs/BugInstance;Ledu/umd/cs/findbugs/BugInstance;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=9, args_size=3
        start local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
        start local 1 // edu.umd.cs.findbugs.BugInstance lhs
        start local 2 // edu.umd.cs.findbugs.BugInstance rhs
         0: .line 117
            aload 1 /* lhs */
            invokevirtual edu.umd.cs.findbugs.BugInstance.getBugPattern:()Ledu/umd/cs/findbugs/BugPattern;
            astore 4 /* lhsPattern */
        start local 4 // edu.umd.cs.findbugs.BugPattern lhsPattern
         1: .line 118
            aload 2 /* rhs */
            invokevirtual edu.umd.cs.findbugs.BugInstance.getBugPattern:()Ledu/umd/cs/findbugs/BugPattern;
            astore 5 /* rhsPattern */
        start local 5 // edu.umd.cs.findbugs.BugPattern rhsPattern
         2: .line 120
            aload 4 /* lhsPattern */
            invokevirtual edu.umd.cs.findbugs.BugPattern.getAbbrev:()Ljava/lang/String;
            astore 6 /* lhsAbbrev */
        start local 6 // java.lang.String lhsAbbrev
         3: .line 121
            aload 5 /* rhsPattern */
            invokevirtual edu.umd.cs.findbugs.BugPattern.getAbbrev:()Ljava/lang/String;
            astore 7 /* rhsAbbrev */
        start local 7 // java.lang.String rhsAbbrev
         4: .line 122
            aload 6 /* lhsAbbrev */
            aload 7 /* rhsAbbrev */
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            istore 3 /* cmp */
        start local 3 // int cmp
         5: .line 123
            iload 3 /* cmp */
            ifeq 9
         6: .line 124
            getstatic edu.umd.cs.findbugs.SloppyBugComparator.DEBUG:Z
            ifeq 8
         7: .line 125
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "bug abbrevs do not match"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         8: .line 127
      StackMap locals: edu.umd.cs.findbugs.SloppyBugComparator edu.umd.cs.findbugs.BugInstance edu.umd.cs.findbugs.BugInstance int edu.umd.cs.findbugs.BugPattern edu.umd.cs.findbugs.BugPattern java.lang.String java.lang.String
      StackMap stack:
            iload 3 /* cmp */
            ireturn
         9: .line 131
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* lhs */
            invokevirtual edu.umd.cs.findbugs.BugInstance.getPrimaryClass:()Ledu/umd/cs/findbugs/ClassAnnotation;
            aload 2 /* rhs */
            invokevirtual edu.umd.cs.findbugs.BugInstance.getPrimaryClass:()Ledu/umd/cs/findbugs/ClassAnnotation;
            invokevirtual edu.umd.cs.findbugs.SloppyBugComparator.compareClassesAllowingNull:(Ledu/umd/cs/findbugs/ClassAnnotation;Ledu/umd/cs/findbugs/ClassAnnotation;)I
            istore 3 /* cmp */
        10: .line 132
            iload 3 /* cmp */
            ifeq 12
        11: .line 133
            iload 3 /* cmp */
            ireturn
        12: .line 136
      StackMap locals:
      StackMap stack:
            aload 1 /* lhs */
            invokevirtual edu.umd.cs.findbugs.BugInstance.getPrimaryMethod:()Ledu/umd/cs/findbugs/MethodAnnotation;
            ifnull 13
            aload 2 /* rhs */
            invokevirtual edu.umd.cs.findbugs.BugInstance.getPrimaryMethod:()Ledu/umd/cs/findbugs/MethodAnnotation;
            ifnull 13
            iconst_1
            goto 14
      StackMap locals:
      StackMap stack:
        13: iconst_0
      StackMap locals:
      StackMap stack: int
        14: istore 8 /* havePrimaryMethods */
        start local 8 // boolean havePrimaryMethods
        15: .line 138
            aload 0 /* this */
            aload 1 /* lhs */
            invokevirtual edu.umd.cs.findbugs.BugInstance.getPrimaryMethod:()Ledu/umd/cs/findbugs/MethodAnnotation;
            aload 2 /* rhs */
            invokevirtual edu.umd.cs.findbugs.BugInstance.getPrimaryMethod:()Ledu/umd/cs/findbugs/MethodAnnotation;
            invokevirtual edu.umd.cs.findbugs.SloppyBugComparator.compareMethodsAllowingNull:(Ledu/umd/cs/findbugs/MethodAnnotation;Ledu/umd/cs/findbugs/MethodAnnotation;)I
            istore 3 /* cmp */
        16: .line 139
            iload 3 /* cmp */
            ifeq 20
        17: .line 140
            getstatic edu.umd.cs.findbugs.SloppyBugComparator.DEBUG:Z
            ifeq 19
        18: .line 141
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "primary methods do not match"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        19: .line 143
      StackMap locals: int
      StackMap stack:
            iload 3 /* cmp */
            ireturn
        20: .line 146
      StackMap locals:
      StackMap stack:
            iload 8 /* havePrimaryMethods */
            ifne 26
        21: .line 148
            aload 0 /* this */
            aload 1 /* lhs */
            invokevirtual edu.umd.cs.findbugs.BugInstance.getPrimaryField:()Ledu/umd/cs/findbugs/FieldAnnotation;
            aload 2 /* rhs */
            invokevirtual edu.umd.cs.findbugs.BugInstance.getPrimaryField:()Ledu/umd/cs/findbugs/FieldAnnotation;
            invokevirtual edu.umd.cs.findbugs.SloppyBugComparator.compareFieldsAllowingNull:(Ledu/umd/cs/findbugs/FieldAnnotation;Ledu/umd/cs/findbugs/FieldAnnotation;)I
            istore 3 /* cmp */
        22: .line 149
            iload 3 /* cmp */
            ifeq 26
        23: .line 150
            getstatic edu.umd.cs.findbugs.SloppyBugComparator.DEBUG:Z
            ifeq 25
        24: .line 151
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "primary fields do not match"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        25: .line 153
      StackMap locals:
      StackMap stack:
            iload 3 /* cmp */
            ireturn
        26: .line 158
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 8 // boolean havePrimaryMethods
        end local 7 // java.lang.String rhsAbbrev
        end local 6 // java.lang.String lhsAbbrev
        end local 5 // edu.umd.cs.findbugs.BugPattern rhsPattern
        end local 4 // edu.umd.cs.findbugs.BugPattern lhsPattern
        end local 3 // int cmp
        end local 2 // edu.umd.cs.findbugs.BugInstance rhs
        end local 1 // edu.umd.cs.findbugs.BugInstance lhs
        end local 0 // edu.umd.cs.findbugs.SloppyBugComparator this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   27     0                this  Ledu/umd/cs/findbugs/SloppyBugComparator;
            0   27     1                 lhs  Ledu/umd/cs/findbugs/BugInstance;
            0   27     2                 rhs  Ledu/umd/cs/findbugs/BugInstance;
            5   27     3                 cmp  I
            1   27     4          lhsPattern  Ledu/umd/cs/findbugs/BugPattern;
            2   27     5          rhsPattern  Ledu/umd/cs/findbugs/BugPattern;
            3   27     6           lhsAbbrev  Ljava/lang/String;
            4   27     7           rhsAbbrev  Ljava/lang/String;
           15   27     8  havePrimaryMethods  Z
    MethodParameters:
      Name  Flags
      lhs   
      rhs   

  public int compare(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            checkcast edu.umd.cs.findbugs.BugInstance
            aload 2
            checkcast edu.umd.cs.findbugs.BugInstance
            invokevirtual edu.umd.cs.findbugs.SloppyBugComparator.compare:(Ledu/umd/cs/findbugs/BugInstance;Ledu/umd/cs/findbugs/BugInstance;)I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "SloppyBugComparator.java"