public class org.apache.lucene.search.BooleanQuery extends org.apache.lucene.search.Query implements java.lang.Iterable<org.apache.lucene.search.BooleanClause>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.lucene.search.BooleanQuery
  super_class: org.apache.lucene.search.Query
{
  private static int maxClauseCount;
    descriptor: I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private final int minimumNumberShouldMatch;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.List<org.apache.lucene.search.BooleanClause> clauses;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/apache/lucene/search/BooleanClause;>;

  private final java.util.Map<org.apache.lucene.search.BooleanClause$Occur, java.util.Collection<org.apache.lucene.search.Query>> clauseSets;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lorg/apache/lucene/search/BooleanClause$Occur;Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;>;

  private int hashCode;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private static volatile int[] $SWITCH_TABLE$org$apache$lucene$search$BooleanClause$Occur;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 42
            ldc Lorg/apache/lucene/search/BooleanQuery;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.apache.lucene.search.BooleanQuery.$assertionsDisabled:Z
         3: .line 44
            sipush 1024
            putstatic org.apache.lucene.search.BooleanQuery.maxClauseCount:I
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static int getMaxClauseCount();
    descriptor: ()I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 62
            getstatic org.apache.lucene.search.BooleanQuery.maxClauseCount:I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static void setMaxClauseCount(int);
    descriptor: (I)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int maxClauseCount
         0: .line 69
            iload 0 /* maxClauseCount */
            iconst_1
            if_icmpge 2
         1: .line 70
            new java.lang.IllegalArgumentException
            dup
            ldc "maxClauseCount must be >= 1"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 72
      StackMap locals:
      StackMap stack:
            iload 0 /* maxClauseCount */
            putstatic org.apache.lucene.search.BooleanQuery.maxClauseCount:I
         3: .line 73
            return
        end local 0 // int maxClauseCount
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0  maxClauseCount  I
    MethodParameters:
                Name  Flags
      maxClauseCount  

  private void <init>(int, org.apache.lucene.search.BooleanClause[]);
    descriptor: (I[Lorg/apache/lucene/search/BooleanClause;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // org.apache.lucene.search.BooleanQuery this
        start local 1 // int minimumNumberShouldMatch
        start local 2 // org.apache.lucene.search.BooleanClause[] clauses
         0: .line 142
            aload 0 /* this */
            invokespecial org.apache.lucene.search.Query.<init>:()V
         1: .line 144
            aload 0 /* this */
            iload 1 /* minimumNumberShouldMatch */
            putfield org.apache.lucene.search.BooleanQuery.minimumNumberShouldMatch:I
         2: .line 145
            aload 0 /* this */
            aload 2 /* clauses */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            putfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
         3: .line 146
            aload 0 /* this */
            new java.util.EnumMap
            dup
            ldc Lorg/apache/lucene/search/BooleanClause$Occur;
            invokespecial java.util.EnumMap.<init>:(Ljava/lang/Class;)V
            putfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
         4: .line 148
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            new org.apache.lucene.search.Multiset
            dup
            invokespecial org.apache.lucene.search.Multiset.<init>:()V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 149
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            new org.apache.lucene.search.Multiset
            dup
            invokespecial org.apache.lucene.search.Multiset.<init>:()V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 151
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.FILTER:Lorg/apache/lucene/search/BooleanClause$Occur;
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 152
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST_NOT:Lorg/apache/lucene/search/BooleanClause$Occur;
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 153
            aload 2 /* clauses */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 12
      StackMap locals: org.apache.lucene.search.BooleanQuery int org.apache.lucene.search.BooleanClause[] top int int org.apache.lucene.search.BooleanClause[]
      StackMap stack:
         9: aload 6
            iload 4
            aaload
            astore 3 /* clause */
        start local 3 // org.apache.lucene.search.BooleanClause clause
        10: .line 154
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            aload 3 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getOccur:()Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            aload 3 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getQuery:()Lorg/apache/lucene/search/Query;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // org.apache.lucene.search.BooleanClause clause
        11: .line 153
            iinc 4 1
      StackMap locals:
      StackMap stack:
        12: iload 4
            iload 5
            if_icmplt 9
        13: .line 156
            return
        end local 2 // org.apache.lucene.search.BooleanClause[] clauses
        end local 1 // int minimumNumberShouldMatch
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   14     0                      this  Lorg/apache/lucene/search/BooleanQuery;
            0   14     1  minimumNumberShouldMatch  I
            0   14     2                   clauses  [Lorg/apache/lucene/search/BooleanClause;
           10   11     3                    clause  Lorg/apache/lucene/search/BooleanClause;
    MethodParameters:
                          Name  Flags
      minimumNumberShouldMatch  
      clauses                   

  public int getMinimumNumberShouldMatch();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.BooleanQuery this
         0: .line 163
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.minimumNumberShouldMatch:I
            ireturn
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/search/BooleanQuery;

  public java.util.List<org.apache.lucene.search.BooleanClause> clauses();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.BooleanQuery this
         0: .line 168
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            areturn
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/search/BooleanQuery;
    Signature: ()Ljava/util/List<Lorg/apache/lucene/search/BooleanClause;>;

  java.util.Collection<org.apache.lucene.search.Query> getClauses(org.apache.lucene.search.BooleanClause$Occur);
    descriptor: (Lorg/apache/lucene/search/BooleanClause$Occur;)Ljava/util/Collection;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.lucene.search.BooleanQuery this
        start local 1 // org.apache.lucene.search.BooleanClause$Occur occur
         0: .line 173
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            aload 1 /* occur */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            areturn
        end local 1 // org.apache.lucene.search.BooleanClause$Occur occur
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/apache/lucene/search/BooleanQuery;
            0    1     1  occur  Lorg/apache/lucene/search/BooleanClause$Occur;
    Signature: (Lorg/apache/lucene/search/BooleanClause$Occur;)Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;
    MethodParameters:
       Name  Flags
      occur  

  boolean isPureDisjunction();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.BooleanQuery this
         0: .line 181
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            aload 0 /* this */
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanQuery.getClauses:(Lorg/apache/lucene/search/BooleanClause$Occur;)Ljava/util/Collection;
            invokeinterface java.util.Collection.size:()I
            if_icmpne 3
         1: .line 182
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.minimumNumberShouldMatch:I
            iconst_1
         2: .line 181
            if_icmpgt 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/lucene/search/BooleanQuery;

  public final java.util.Iterator<org.apache.lucene.search.BooleanClause> iterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.BooleanQuery this
         0: .line 191
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            areturn
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/search/BooleanQuery;
    Signature: ()Ljava/util/Iterator<Lorg/apache/lucene/search/BooleanClause;>;

  private org.apache.lucene.search.BooleanQuery rewriteNoScoring();
    descriptor: ()Lorg/apache/lucene/search/BooleanQuery;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // org.apache.lucene.search.BooleanQuery this
         0: .line 195
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.getMinimumNumberShouldMatch:()I
            ifgt 3
         1: .line 196
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.size:()I
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.FILTER:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.size:()I
            iadd
            ifeq 3
         2: .line 195
            iconst_0
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_1
      StackMap locals:
      StackMap stack: int
         4: istore 1 /* keepShould */
        start local 1 // boolean keepShould
         5: .line 198
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.size:()I
            ifne 7
            iload 1 /* keepShould */
            ifeq 7
         6: .line 199
            aload 0 /* this */
            areturn
         7: .line 201
      StackMap locals: int
      StackMap stack:
            new org.apache.lucene.search.BooleanQuery$Builder
            dup
            invokespecial org.apache.lucene.search.BooleanQuery$Builder.<init>:()V
            astore 2 /* newQuery */
        start local 2 // org.apache.lucene.search.BooleanQuery$Builder newQuery
         8: .line 203
            aload 2 /* newQuery */
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.getMinimumNumberShouldMatch:()I
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.setMinimumNumberShouldMatch:(I)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
         9: .line 204
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 18
      StackMap locals: org.apache.lucene.search.BooleanQuery int org.apache.lucene.search.BooleanQuery$Builder top java.util.Iterator
      StackMap stack:
        10: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause
            astore 3 /* clause */
        start local 3 // org.apache.lucene.search.BooleanClause clause
        11: .line 205
            invokestatic org.apache.lucene.search.BooleanQuery.$SWITCH_TABLE$org$apache$lucene$search$BooleanClause$Occur:()[I
            aload 3 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getOccur:()Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanClause$Occur.ordinal:()I
            iaload
            tableswitch { // 1 - 3
                    1: 12
                    2: 17
                    3: 14
              default: 17
          }
        12: .line 207
      StackMap locals: org.apache.lucene.search.BooleanQuery int org.apache.lucene.search.BooleanQuery$Builder org.apache.lucene.search.BooleanClause java.util.Iterator
      StackMap stack:
            aload 2 /* newQuery */
            aload 3 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getQuery:()Lorg/apache/lucene/search/Query;
            getstatic org.apache.lucene.search.BooleanClause$Occur.FILTER:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/Query;Lorg/apache/lucene/search/BooleanClause$Occur;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        13: .line 208
            goto 18
        14: .line 211
      StackMap locals:
      StackMap stack:
            iload 1 /* keepShould */
            ifeq 18
        15: .line 212
            aload 2 /* newQuery */
            aload 3 /* clause */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/BooleanClause;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        16: .line 214
            goto 18
        17: .line 217
      StackMap locals:
      StackMap stack:
            aload 2 /* newQuery */
            aload 3 /* clause */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/BooleanClause;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 3 // org.apache.lucene.search.BooleanClause clause
        18: .line 204
      StackMap locals: org.apache.lucene.search.BooleanQuery int org.apache.lucene.search.BooleanQuery$Builder top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        19: .line 222
            aload 2 /* newQuery */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.build:()Lorg/apache/lucene/search/BooleanQuery;
            areturn
        end local 2 // org.apache.lucene.search.BooleanQuery$Builder newQuery
        end local 1 // boolean keepShould
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   20     0        this  Lorg/apache/lucene/search/BooleanQuery;
            5   20     1  keepShould  Z
            8   20     2    newQuery  Lorg/apache/lucene/search/BooleanQuery$Builder;
           11   18     3      clause  Lorg/apache/lucene/search/BooleanClause;

  public org.apache.lucene.search.Weight createWeight(org.apache.lucene.search.IndexSearcher, org.apache.lucene.search.ScoreMode, float);
    descriptor: (Lorg/apache/lucene/search/IndexSearcher;Lorg/apache/lucene/search/ScoreMode;F)Lorg/apache/lucene/search/Weight;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.apache.lucene.search.BooleanQuery this
        start local 1 // org.apache.lucene.search.IndexSearcher searcher
        start local 2 // org.apache.lucene.search.ScoreMode scoreMode
        start local 3 // float boost
         0: .line 227
            aload 0 /* this */
            astore 4 /* query */
        start local 4 // org.apache.lucene.search.BooleanQuery query
         1: .line 228
            aload 2 /* scoreMode */
            invokevirtual org.apache.lucene.search.ScoreMode.needsScores:()Z
            ifne 3
         2: .line 229
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.rewriteNoScoring:()Lorg/apache/lucene/search/BooleanQuery;
            astore 4 /* query */
         3: .line 231
      StackMap locals: org.apache.lucene.search.BooleanQuery
      StackMap stack:
            new org.apache.lucene.search.BooleanWeight
            dup
            aload 4 /* query */
            aload 1 /* searcher */
            aload 2 /* scoreMode */
            fload 3 /* boost */
            invokespecial org.apache.lucene.search.BooleanWeight.<init>:(Lorg/apache/lucene/search/BooleanQuery;Lorg/apache/lucene/search/IndexSearcher;Lorg/apache/lucene/search/ScoreMode;F)V
            areturn
        end local 4 // org.apache.lucene.search.BooleanQuery query
        end local 3 // float boost
        end local 2 // org.apache.lucene.search.ScoreMode scoreMode
        end local 1 // org.apache.lucene.search.IndexSearcher searcher
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/apache/lucene/search/BooleanQuery;
            0    4     1   searcher  Lorg/apache/lucene/search/IndexSearcher;
            0    4     2  scoreMode  Lorg/apache/lucene/search/ScoreMode;
            0    4     3      boost  F
            1    4     4      query  Lorg/apache/lucene/search/BooleanQuery;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      searcher   
      scoreMode  
      boost      

  public org.apache.lucene.search.Query rewrite(org.apache.lucene.index.IndexReader);
    descriptor: (Lorg/apache/lucene/index/IndexReader;)Lorg/apache/lucene/search/Query;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=11, args_size=2
        start local 0 // org.apache.lucene.search.BooleanQuery this
        start local 1 // org.apache.lucene.index.IndexReader reader
         0: .line 236
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ifne 2
         1: .line 237
            new org.apache.lucene.search.MatchNoDocsQuery
            dup
            ldc "empty BooleanQuery"
            invokespecial org.apache.lucene.search.MatchNoDocsQuery.<init>:(Ljava/lang/String;)V
            areturn
         2: .line 241
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 13
         3: .line 242
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause
            astore 2 /* c */
        start local 2 // org.apache.lucene.search.BooleanClause c
         4: .line 243
            aload 2 /* c */
            invokevirtual org.apache.lucene.search.BooleanClause.getQuery:()Lorg/apache/lucene/search/Query;
            astore 3 /* query */
        start local 3 // org.apache.lucene.search.Query query
         5: .line 244
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.minimumNumberShouldMatch:I
            iconst_1
            if_icmpne 7
            aload 2 /* c */
            invokevirtual org.apache.lucene.search.BooleanClause.getOccur:()Lorg/apache/lucene/search/BooleanClause$Occur;
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            if_acmpne 7
         6: .line 245
            aload 3 /* query */
            areturn
         7: .line 246
      StackMap locals: org.apache.lucene.search.BooleanClause org.apache.lucene.search.Query
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.minimumNumberShouldMatch:I
            ifne 13
         8: .line 247
            invokestatic org.apache.lucene.search.BooleanQuery.$SWITCH_TABLE$org$apache$lucene$search$BooleanClause$Occur:()[I
            aload 2 /* c */
            invokevirtual org.apache.lucene.search.BooleanClause.getOccur:()Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanClause$Occur.ordinal:()I
            iaload
            tableswitch { // 1 - 4
                    1: 9
                    2: 10
                    3: 9
                    4: 11
              default: 12
          }
         9: .line 250
      StackMap locals:
      StackMap stack:
            aload 3 /* query */
            areturn
        10: .line 253
      StackMap locals:
      StackMap stack:
            new org.apache.lucene.search.BoostQuery
            dup
            new org.apache.lucene.search.ConstantScoreQuery
            dup
            aload 3 /* query */
            invokespecial org.apache.lucene.search.ConstantScoreQuery.<init>:(Lorg/apache/lucene/search/Query;)V
            fconst_0
            invokespecial org.apache.lucene.search.BoostQuery.<init>:(Lorg/apache/lucene/search/Query;F)V
            areturn
        11: .line 256
      StackMap locals:
      StackMap stack:
            new org.apache.lucene.search.MatchNoDocsQuery
            dup
            ldc "pure negative BooleanQuery"
            invokespecial org.apache.lucene.search.MatchNoDocsQuery.<init>:(Ljava/lang/String;)V
            areturn
        12: .line 258
      StackMap locals:
      StackMap stack:
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 3 // org.apache.lucene.search.Query query
        end local 2 // org.apache.lucene.search.BooleanClause c
        13: .line 265
      StackMap locals:
      StackMap stack:
            new org.apache.lucene.search.BooleanQuery$Builder
            dup
            invokespecial org.apache.lucene.search.BooleanQuery$Builder.<init>:()V
            astore 2 /* builder */
        start local 2 // org.apache.lucene.search.BooleanQuery$Builder builder
        14: .line 266
            aload 2 /* builder */
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.getMinimumNumberShouldMatch:()I
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.setMinimumNumberShouldMatch:(I)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        15: .line 267
            iconst_0
            istore 3 /* actuallyRewritten */
        start local 3 // boolean actuallyRewritten
        16: .line 268
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.iterator:()Ljava/util/Iterator;
            astore 5
            goto 25
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader org.apache.lucene.search.BooleanQuery$Builder int top java.util.Iterator
      StackMap stack:
        17: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause
            astore 4 /* clause */
        start local 4 // org.apache.lucene.search.BooleanClause clause
        18: .line 269
            aload 4 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getQuery:()Lorg/apache/lucene/search/Query;
            astore 6 /* query */
        start local 6 // org.apache.lucene.search.Query query
        19: .line 270
            aload 6 /* query */
            aload 1 /* reader */
            invokevirtual org.apache.lucene.search.Query.rewrite:(Lorg/apache/lucene/index/IndexReader;)Lorg/apache/lucene/search/Query;
            astore 7 /* rewritten */
        start local 7 // org.apache.lucene.search.Query rewritten
        20: .line 271
            aload 7 /* rewritten */
            aload 6 /* query */
            if_acmpeq 24
        21: .line 273
            iconst_1
            istore 3 /* actuallyRewritten */
        22: .line 274
            aload 2 /* builder */
            aload 7 /* rewritten */
            aload 4 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getOccur:()Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/Query;Lorg/apache/lucene/search/BooleanClause$Occur;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        23: .line 275
            goto 25
        24: .line 277
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader org.apache.lucene.search.BooleanQuery$Builder int org.apache.lucene.search.BooleanClause java.util.Iterator org.apache.lucene.search.Query org.apache.lucene.search.Query
      StackMap stack:
            aload 2 /* builder */
            aload 4 /* clause */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/BooleanClause;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 7 // org.apache.lucene.search.Query rewritten
        end local 6 // org.apache.lucene.search.Query query
        end local 4 // org.apache.lucene.search.BooleanClause clause
        25: .line 268
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader org.apache.lucene.search.BooleanQuery$Builder int top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        26: .line 280
            iload 3 /* actuallyRewritten */
            ifeq 28
        27: .line 281
            aload 2 /* builder */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.build:()Lorg/apache/lucene/search/BooleanQuery;
            areturn
        end local 3 // boolean actuallyRewritten
        end local 2 // org.apache.lucene.search.BooleanQuery$Builder builder
        28: .line 287
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader
      StackMap stack:
            iconst_0
            istore 2 /* clauseCount */
        start local 2 // int clauseCount
        29: .line 288
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 32
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader int top java.util.Iterator
      StackMap stack:
        30: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Collection
            astore 3 /* queries */
        start local 3 // java.util.Collection queries
        31: .line 289
            iload 2 /* clauseCount */
            aload 3 /* queries */
            invokeinterface java.util.Collection.size:()I
            iadd
            istore 2 /* clauseCount */
        end local 3 // java.util.Collection queries
        32: .line 288
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 30
        33: .line 291
            iload 2 /* clauseCount */
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmpeq 45
        34: .line 294
            new org.apache.lucene.search.BooleanQuery$Builder
            dup
            invokespecial org.apache.lucene.search.BooleanQuery$Builder.<init>:()V
            astore 3 /* rewritten */
        start local 3 // org.apache.lucene.search.BooleanQuery$Builder rewritten
        35: .line 295
            aload 3 /* rewritten */
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.minimumNumberShouldMatch:I
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.setMinimumNumberShouldMatch:(I)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        36: .line 296
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 43
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader int org.apache.lucene.search.BooleanQuery$Builder top java.util.Iterator
      StackMap stack:
        37: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 4 /* entry */
        start local 4 // java.util.Map$Entry entry
        38: .line 297
            aload 4 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause$Occur
            astore 6 /* occur */
        start local 6 // org.apache.lucene.search.BooleanClause$Occur occur
        39: .line 298
            aload 4 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 8
            goto 42
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader int org.apache.lucene.search.BooleanQuery$Builder java.util.Map$Entry java.util.Iterator org.apache.lucene.search.BooleanClause$Occur top java.util.Iterator
      StackMap stack:
        40: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.Query
            astore 7 /* query */
        start local 7 // org.apache.lucene.search.Query query
        41: .line 299
            aload 3 /* rewritten */
            aload 7 /* query */
            aload 6 /* occur */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/Query;Lorg/apache/lucene/search/BooleanClause$Occur;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 7 // org.apache.lucene.search.Query query
        42: .line 298
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 40
        end local 6 // org.apache.lucene.search.BooleanClause$Occur occur
        end local 4 // java.util.Map$Entry entry
        43: .line 296
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader int org.apache.lucene.search.BooleanQuery$Builder top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 37
        44: .line 302
            aload 3 /* rewritten */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.build:()Lorg/apache/lucene/search/BooleanQuery;
            areturn
        end local 3 // org.apache.lucene.search.BooleanQuery$Builder rewritten
        end local 2 // int clauseCount
        45: .line 307
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST_NOT:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            astore 2 /* mustNotClauses */
        start local 2 // java.util.Collection mustNotClauses
        46: .line 308
            aload 2 /* mustNotClauses */
            invokeinterface java.util.Collection.isEmpty:()Z
            ifne 52
        47: .line 309
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic test(Ljava/util/Collection;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  java/util/Collection.contains(Ljava/lang/Object;)Z (9 itf)
                  (Lorg/apache/lucene/search/Query;)Z
            astore 3 /* p */
        start local 3 // java.util.function.Predicate p
        48: .line 310
            aload 2 /* mustNotClauses */
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
            aload 3 /* p */
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.FILTER:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic test(Ljava/util/Collection;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  java/util/Collection.contains(Ljava/lang/Object;)Z (9 itf)
                  (Lorg/apache/lucene/search/Query;)Z
            invokeinterface java.util.function.Predicate.or:(Ljava/util/function/Predicate;)Ljava/util/function/Predicate;
            invokeinterface java.util.stream.Stream.anyMatch:(Ljava/util/function/Predicate;)Z
            ifeq 50
        49: .line 311
            new org.apache.lucene.search.MatchNoDocsQuery
            dup
            ldc "FILTER or MUST clause also in MUST_NOT"
            invokespecial org.apache.lucene.search.MatchNoDocsQuery.<init>:(Ljava/lang/String;)V
            areturn
        50: .line 313
      StackMap locals: java.util.Collection java.util.function.Predicate
      StackMap stack:
            aload 2 /* mustNotClauses */
            new org.apache.lucene.search.MatchAllDocsQuery
            dup
            invokespecial org.apache.lucene.search.MatchAllDocsQuery.<init>:()V
            invokeinterface java.util.Collection.contains:(Ljava/lang/Object;)Z
            ifeq 52
        51: .line 314
            new org.apache.lucene.search.MatchNoDocsQuery
            dup
            ldc "MUST_NOT clause is MatchAllDocsQuery"
            invokespecial org.apache.lucene.search.MatchNoDocsQuery.<init>:(Ljava/lang/String;)V
            areturn
        end local 3 // java.util.function.Predicate p
        52: .line 320
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.size:()I
            ifle 69
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.FILTER:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.size:()I
            ifle 69
        53: .line 321
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.FILTER:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            astore 3 /* filters */
        start local 3 // java.util.Set filters
        54: .line 322
            aload 3 /* filters */
            new org.apache.lucene.search.MatchAllDocsQuery
            dup
            invokespecial org.apache.lucene.search.MatchAllDocsQuery.<init>:()V
            invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
            istore 4 /* modified */
        start local 4 // boolean modified
        55: .line 323
            iload 4 /* modified */
            aload 3 /* filters */
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Set.removeAll:(Ljava/util/Collection;)Z
            ior
            istore 4 /* modified */
        56: .line 324
            iload 4 /* modified */
            ifeq 69
        57: .line 325
            new org.apache.lucene.search.BooleanQuery$Builder
            dup
            invokespecial org.apache.lucene.search.BooleanQuery$Builder.<init>:()V
            astore 5 /* builder */
        start local 5 // org.apache.lucene.search.BooleanQuery$Builder builder
        58: .line 326
            aload 5 /* builder */
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.getMinimumNumberShouldMatch:()I
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.setMinimumNumberShouldMatch:(I)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        59: .line 327
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 63
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Set int org.apache.lucene.search.BooleanQuery$Builder top java.util.Iterator
      StackMap stack:
        60: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause
            astore 6 /* clause */
        start local 6 // org.apache.lucene.search.BooleanClause clause
        61: .line 328
            aload 6 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getOccur:()Lorg/apache/lucene/search/BooleanClause$Occur;
            getstatic org.apache.lucene.search.BooleanClause$Occur.FILTER:Lorg/apache/lucene/search/BooleanClause$Occur;
            if_acmpeq 63
        62: .line 329
            aload 5 /* builder */
            aload 6 /* clause */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/BooleanClause;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 6 // org.apache.lucene.search.BooleanClause clause
        63: .line 327
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 60
        64: .line 332
            aload 3 /* filters */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 67
      StackMap locals:
      StackMap stack:
        65: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.Query
            astore 6 /* filter */
        start local 6 // org.apache.lucene.search.Query filter
        66: .line 333
            aload 5 /* builder */
            aload 6 /* filter */
            getstatic org.apache.lucene.search.BooleanClause$Occur.FILTER:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/Query;Lorg/apache/lucene/search/BooleanClause$Occur;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 6 // org.apache.lucene.search.Query filter
        67: .line 332
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 65
        68: .line 335
            aload 5 /* builder */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.build:()Lorg/apache/lucene/search/BooleanQuery;
            areturn
        end local 5 // org.apache.lucene.search.BooleanQuery$Builder builder
        end local 4 // boolean modified
        end local 3 // java.util.Set filters
        69: .line 340
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.size:()I
            ifle 88
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.FILTER:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.size:()I
            ifle 88
        70: .line 341
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.FILTER:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            astore 3 /* filters */
        start local 3 // java.util.Collection filters
        71: .line 342
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            astore 4 /* shoulds */
        start local 4 // java.util.Collection shoulds
        72: .line 344
            new java.util.HashSet
            dup
            aload 3 /* filters */
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            astore 5 /* intersection */
        start local 5 // java.util.Set intersection
        73: .line 345
            aload 5 /* intersection */
            aload 4 /* shoulds */
            invokeinterface java.util.Set.retainAll:(Ljava/util/Collection;)Z
            pop
        74: .line 347
            aload 5 /* intersection */
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 88
        75: .line 348
            new org.apache.lucene.search.BooleanQuery$Builder
            dup
            invokespecial org.apache.lucene.search.BooleanQuery$Builder.<init>:()V
            astore 6 /* builder */
        start local 6 // org.apache.lucene.search.BooleanQuery$Builder builder
        76: .line 349
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.getMinimumNumberShouldMatch:()I
            istore 7 /* minShouldMatch */
        start local 7 // int minShouldMatch
        77: .line 351
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 85
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Collection java.util.Collection java.util.Set org.apache.lucene.search.BooleanQuery$Builder int top java.util.Iterator
      StackMap stack:
        78: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause
            astore 8 /* clause */
        start local 8 // org.apache.lucene.search.BooleanClause clause
        79: .line 352
            aload 5 /* intersection */
            aload 8 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getQuery:()Lorg/apache/lucene/search/Query;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 84
        80: .line 353
            aload 8 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getOccur:()Lorg/apache/lucene/search/BooleanClause$Occur;
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            if_acmpne 85
        81: .line 354
            aload 6 /* builder */
            new org.apache.lucene.search.BooleanClause
            dup
            aload 8 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getQuery:()Lorg/apache/lucene/search/Query;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokespecial org.apache.lucene.search.BooleanClause.<init>:(Lorg/apache/lucene/search/Query;Lorg/apache/lucene/search/BooleanClause$Occur;)V
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/BooleanClause;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        82: .line 355
            iinc 7 /* minShouldMatch */ -1
        83: .line 357
            goto 85
        84: .line 358
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Collection java.util.Collection java.util.Set org.apache.lucene.search.BooleanQuery$Builder int org.apache.lucene.search.BooleanClause java.util.Iterator
      StackMap stack:
            aload 6 /* builder */
            aload 8 /* clause */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/BooleanClause;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 8 // org.apache.lucene.search.BooleanClause clause
        85: .line 351
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Collection java.util.Collection java.util.Set org.apache.lucene.search.BooleanQuery$Builder int top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 78
        86: .line 362
            aload 6 /* builder */
            iconst_0
            iload 7 /* minShouldMatch */
            invokestatic java.lang.Math.max:(II)I
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.setMinimumNumberShouldMatch:(I)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        87: .line 363
            aload 6 /* builder */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.build:()Lorg/apache/lucene/search/BooleanQuery;
            areturn
        end local 7 // int minShouldMatch
        end local 6 // org.apache.lucene.search.BooleanQuery$Builder builder
        end local 5 // java.util.Set intersection
        end local 4 // java.util.Collection shoulds
        end local 3 // java.util.Collection filters
        88: .line 368
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.size:()I
            ifle 118
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.minimumNumberShouldMatch:I
            iconst_1
            if_icmpgt 118
        89: .line 369
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* shouldClauses */
        start local 3 // java.util.Map shouldClauses
        90: .line 370
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 99
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map top java.util.Iterator
      StackMap stack:
        91: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.Query
            astore 4 /* query */
        start local 4 // org.apache.lucene.search.Query query
        92: .line 371
            dconst_1
            dstore 6 /* boost */
        start local 6 // double boost
        93: .line 372
            goto 97
        94: .line 373
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map org.apache.lucene.search.Query java.util.Iterator double
      StackMap stack:
            aload 4 /* query */
            checkcast org.apache.lucene.search.BoostQuery
            astore 8 /* bq */
        start local 8 // org.apache.lucene.search.BoostQuery bq
        95: .line 374
            dload 6 /* boost */
            aload 8 /* bq */
            invokevirtual org.apache.lucene.search.BoostQuery.getBoost:()F
            f2d
            dmul
            dstore 6 /* boost */
        96: .line 375
            aload 8 /* bq */
            invokevirtual org.apache.lucene.search.BoostQuery.getQuery:()Lorg/apache/lucene/search/Query;
            astore 4 /* query */
        end local 8 // org.apache.lucene.search.BoostQuery bq
        97: .line 372
      StackMap locals:
      StackMap stack:
            aload 4 /* query */
            instanceof org.apache.lucene.search.BoostQuery
            ifne 94
        98: .line 377
            aload 3 /* shouldClauses */
            aload 4 /* query */
            aload 3 /* shouldClauses */
            aload 4 /* query */
            dconst_0
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            invokeinterface java.util.Map.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Double
            invokevirtual java.lang.Double.doubleValue:()D
            dload 6 /* boost */
            dadd
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // double boost
        end local 4 // org.apache.lucene.search.Query query
        99: .line 370
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 91
       100: .line 379
            aload 3 /* shouldClauses */
            invokeinterface java.util.Map.size:()I
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.size:()I
            if_icmpeq 118
       101: .line 380
            new org.apache.lucene.search.BooleanQuery$Builder
            dup
            invokespecial org.apache.lucene.search.BooleanQuery$Builder.<init>:()V
       102: .line 381
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.minimumNumberShouldMatch:I
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.setMinimumNumberShouldMatch:(I)Lorg/apache/lucene/search/BooleanQuery$Builder;
       103: .line 380
            astore 4 /* builder */
        start local 4 // org.apache.lucene.search.BooleanQuery$Builder builder
       104: .line 382
            aload 3 /* shouldClauses */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 111
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map org.apache.lucene.search.BooleanQuery$Builder top java.util.Iterator
      StackMap stack:
       105: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 5 /* entry */
        start local 5 // java.util.Map$Entry entry
       106: .line 383
            aload 5 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.Query
            astore 7 /* query */
        start local 7 // org.apache.lucene.search.Query query
       107: .line 384
            aload 5 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.Double
            invokevirtual java.lang.Double.floatValue:()F
            fstore 8 /* boost */
        start local 8 // float boost
       108: .line 385
            fload 8 /* boost */
            fconst_1
            fcmpl
            ifeq 110
       109: .line 386
            new org.apache.lucene.search.BoostQuery
            dup
            aload 7 /* query */
            fload 8 /* boost */
            invokespecial org.apache.lucene.search.BoostQuery.<init>:(Lorg/apache/lucene/search/Query;F)V
            astore 7 /* query */
       110: .line 388
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map org.apache.lucene.search.BooleanQuery$Builder java.util.Map$Entry java.util.Iterator org.apache.lucene.search.Query float
      StackMap stack:
            aload 4 /* builder */
            aload 7 /* query */
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/Query;Lorg/apache/lucene/search/BooleanClause$Occur;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 8 // float boost
        end local 7 // org.apache.lucene.search.Query query
        end local 5 // java.util.Map$Entry entry
       111: .line 382
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map org.apache.lucene.search.BooleanQuery$Builder top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 105
       112: .line 390
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 116
      StackMap locals:
      StackMap stack:
       113: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause
            astore 5 /* clause */
        start local 5 // org.apache.lucene.search.BooleanClause clause
       114: .line 391
            aload 5 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getOccur:()Lorg/apache/lucene/search/BooleanClause$Occur;
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            if_acmpeq 116
       115: .line 392
            aload 4 /* builder */
            aload 5 /* clause */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/BooleanClause;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 5 // org.apache.lucene.search.BooleanClause clause
       116: .line 390
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 113
       117: .line 395
            aload 4 /* builder */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.build:()Lorg/apache/lucene/search/BooleanQuery;
            areturn
        end local 4 // org.apache.lucene.search.BooleanQuery$Builder builder
        end local 3 // java.util.Map shouldClauses
       118: .line 400
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.size:()I
            ifle 148
       119: .line 401
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* mustClauses */
        start local 3 // java.util.Map mustClauses
       120: .line 402
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 129
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map top java.util.Iterator
      StackMap stack:
       121: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.Query
            astore 4 /* query */
        start local 4 // org.apache.lucene.search.Query query
       122: .line 403
            dconst_1
            dstore 6 /* boost */
        start local 6 // double boost
       123: .line 404
            goto 127
       124: .line 405
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map org.apache.lucene.search.Query java.util.Iterator double
      StackMap stack:
            aload 4 /* query */
            checkcast org.apache.lucene.search.BoostQuery
            astore 8 /* bq */
        start local 8 // org.apache.lucene.search.BoostQuery bq
       125: .line 406
            dload 6 /* boost */
            aload 8 /* bq */
            invokevirtual org.apache.lucene.search.BoostQuery.getBoost:()F
            f2d
            dmul
            dstore 6 /* boost */
       126: .line 407
            aload 8 /* bq */
            invokevirtual org.apache.lucene.search.BoostQuery.getQuery:()Lorg/apache/lucene/search/Query;
            astore 4 /* query */
        end local 8 // org.apache.lucene.search.BoostQuery bq
       127: .line 404
      StackMap locals:
      StackMap stack:
            aload 4 /* query */
            instanceof org.apache.lucene.search.BoostQuery
            ifne 124
       128: .line 409
            aload 3 /* mustClauses */
            aload 4 /* query */
            aload 3 /* mustClauses */
            aload 4 /* query */
            dconst_0
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            invokeinterface java.util.Map.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Double
            invokevirtual java.lang.Double.doubleValue:()D
            dload 6 /* boost */
            dadd
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // double boost
        end local 4 // org.apache.lucene.search.Query query
       129: .line 402
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 121
       130: .line 411
            aload 3 /* mustClauses */
            invokeinterface java.util.Map.size:()I
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.size:()I
            if_icmpeq 148
       131: .line 412
            new org.apache.lucene.search.BooleanQuery$Builder
            dup
            invokespecial org.apache.lucene.search.BooleanQuery$Builder.<init>:()V
       132: .line 413
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.minimumNumberShouldMatch:I
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.setMinimumNumberShouldMatch:(I)Lorg/apache/lucene/search/BooleanQuery$Builder;
       133: .line 412
            astore 4 /* builder */
        start local 4 // org.apache.lucene.search.BooleanQuery$Builder builder
       134: .line 414
            aload 3 /* mustClauses */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 141
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map org.apache.lucene.search.BooleanQuery$Builder top java.util.Iterator
      StackMap stack:
       135: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 5 /* entry */
        start local 5 // java.util.Map$Entry entry
       136: .line 415
            aload 5 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.Query
            astore 7 /* query */
        start local 7 // org.apache.lucene.search.Query query
       137: .line 416
            aload 5 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.Double
            invokevirtual java.lang.Double.floatValue:()F
            fstore 8 /* boost */
        start local 8 // float boost
       138: .line 417
            fload 8 /* boost */
            fconst_1
            fcmpl
            ifeq 140
       139: .line 418
            new org.apache.lucene.search.BoostQuery
            dup
            aload 7 /* query */
            fload 8 /* boost */
            invokespecial org.apache.lucene.search.BoostQuery.<init>:(Lorg/apache/lucene/search/Query;F)V
            astore 7 /* query */
       140: .line 420
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map org.apache.lucene.search.BooleanQuery$Builder java.util.Map$Entry java.util.Iterator org.apache.lucene.search.Query float
      StackMap stack:
            aload 4 /* builder */
            aload 7 /* query */
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/Query;Lorg/apache/lucene/search/BooleanClause$Occur;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 8 // float boost
        end local 7 // org.apache.lucene.search.Query query
        end local 5 // java.util.Map$Entry entry
       141: .line 414
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map org.apache.lucene.search.BooleanQuery$Builder top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 135
       142: .line 422
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 146
      StackMap locals:
      StackMap stack:
       143: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause
            astore 5 /* clause */
        start local 5 // org.apache.lucene.search.BooleanClause clause
       144: .line 423
            aload 5 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getOccur:()Lorg/apache/lucene/search/BooleanClause$Occur;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            if_acmpeq 146
       145: .line 424
            aload 4 /* builder */
            aload 5 /* clause */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/BooleanClause;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 5 // org.apache.lucene.search.BooleanClause clause
       146: .line 422
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 143
       147: .line 427
            aload 4 /* builder */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.build:()Lorg/apache/lucene/search/BooleanQuery;
            areturn
        end local 4 // org.apache.lucene.search.BooleanQuery$Builder builder
        end local 3 // java.util.Map mustClauses
       148: .line 434
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            astore 3 /* musts */
        start local 3 // java.util.Collection musts
       149: .line 435
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.FILTER:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            astore 4 /* filters */
        start local 4 // java.util.Collection filters
       150: .line 436
            aload 3 /* musts */
            invokeinterface java.util.Collection.size:()I
            iconst_1
            if_icmpne 180
       151: .line 437
            aload 4 /* filters */
            invokeinterface java.util.Collection.size:()I
            ifle 180
       152: .line 438
            aload 3 /* musts */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.Query
            astore 5 /* must */
        start local 5 // org.apache.lucene.search.Query must
       153: .line 439
            fconst_1
            fstore 6 /* boost */
        start local 6 // float boost
       154: .line 440
            aload 5 /* must */
            instanceof org.apache.lucene.search.BoostQuery
            ifeq 158
       155: .line 441
            aload 5 /* must */
            checkcast org.apache.lucene.search.BoostQuery
            astore 7 /* boostQuery */
        start local 7 // org.apache.lucene.search.BoostQuery boostQuery
       156: .line 442
            aload 7 /* boostQuery */
            invokevirtual org.apache.lucene.search.BoostQuery.getQuery:()Lorg/apache/lucene/search/Query;
            astore 5 /* must */
       157: .line 443
            aload 7 /* boostQuery */
            invokevirtual org.apache.lucene.search.BoostQuery.getBoost:()F
            fstore 6 /* boost */
        end local 7 // org.apache.lucene.search.BoostQuery boostQuery
       158: .line 445
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Collection java.util.Collection org.apache.lucene.search.Query float
      StackMap stack:
            aload 5 /* must */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Lorg/apache/lucene/search/MatchAllDocsQuery;
            if_acmpne 180
       159: .line 448
            new org.apache.lucene.search.BooleanQuery$Builder
            dup
            invokespecial org.apache.lucene.search.BooleanQuery$Builder.<init>:()V
            astore 7 /* builder */
        start local 7 // org.apache.lucene.search.BooleanQuery$Builder builder
       160: .line 449
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 165
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Collection java.util.Collection org.apache.lucene.search.Query float org.apache.lucene.search.BooleanQuery$Builder top java.util.Iterator
      StackMap stack:
       161: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause
            astore 8 /* clause */
        start local 8 // org.apache.lucene.search.BooleanClause clause
       162: .line 450
            invokestatic org.apache.lucene.search.BooleanQuery.$SWITCH_TABLE$org$apache$lucene$search$BooleanClause$Occur:()[I
            aload 8 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getOccur:()Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanClause$Occur.ordinal:()I
            iaload
            tableswitch { // 2 - 4
                    2: 163
                    3: 165
                    4: 163
              default: 165
          }
       163: .line 453
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Collection java.util.Collection org.apache.lucene.search.Query float org.apache.lucene.search.BooleanQuery$Builder org.apache.lucene.search.BooleanClause java.util.Iterator
      StackMap stack:
            aload 7 /* builder */
            aload 8 /* clause */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/BooleanClause;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
       164: .line 454
            goto 165
        end local 8 // org.apache.lucene.search.BooleanClause clause
       165: .line 449
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Collection java.util.Collection org.apache.lucene.search.Query float org.apache.lucene.search.BooleanQuery$Builder top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 161
       166: .line 460
            aload 7 /* builder */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.build:()Lorg/apache/lucene/search/BooleanQuery;
            astore 8 /* rewritten */
        start local 8 // org.apache.lucene.search.Query rewritten
       167: .line 461
            new org.apache.lucene.search.ConstantScoreQuery
            dup
            aload 8 /* rewritten */
            invokespecial org.apache.lucene.search.ConstantScoreQuery.<init>:(Lorg/apache/lucene/search/Query;)V
            astore 8 /* rewritten */
       168: .line 462
            fload 6 /* boost */
            fconst_1
            fcmpl
            ifeq 170
       169: .line 463
            new org.apache.lucene.search.BoostQuery
            dup
            aload 8 /* rewritten */
            fload 6 /* boost */
            invokespecial org.apache.lucene.search.BoostQuery.<init>:(Lorg/apache/lucene/search/Query;F)V
            astore 8 /* rewritten */
       170: .line 467
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Collection java.util.Collection org.apache.lucene.search.Query float org.apache.lucene.search.BooleanQuery$Builder org.apache.lucene.search.Query
      StackMap stack:
            new org.apache.lucene.search.BooleanQuery$Builder
            dup
            invokespecial org.apache.lucene.search.BooleanQuery$Builder.<init>:()V
       171: .line 468
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.getMinimumNumberShouldMatch:()I
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.setMinimumNumberShouldMatch:(I)Lorg/apache/lucene/search/BooleanQuery$Builder;
       172: .line 469
            aload 8 /* rewritten */
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/Query;Lorg/apache/lucene/search/BooleanClause$Occur;)Lorg/apache/lucene/search/BooleanQuery$Builder;
       173: .line 467
            astore 7 /* builder */
       174: .line 470
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 10
            goto 177
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Collection java.util.Collection org.apache.lucene.search.Query float org.apache.lucene.search.BooleanQuery$Builder org.apache.lucene.search.Query top java.util.Iterator
      StackMap stack:
       175: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.Query
            astore 9 /* query */
        start local 9 // org.apache.lucene.search.Query query
       176: .line 471
            aload 7 /* builder */
            aload 9 /* query */
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/Query;Lorg/apache/lucene/search/BooleanClause$Occur;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 9 // org.apache.lucene.search.Query query
       177: .line 470
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 175
       178: .line 473
            aload 7 /* builder */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.build:()Lorg/apache/lucene/search/BooleanQuery;
            astore 8 /* rewritten */
       179: .line 474
            aload 8 /* rewritten */
            areturn
        end local 8 // org.apache.lucene.search.Query rewritten
        end local 7 // org.apache.lucene.search.BooleanQuery$Builder builder
        end local 6 // float boost
        end local 5 // org.apache.lucene.search.Query must
        end local 4 // java.util.Collection filters
        end local 3 // java.util.Collection musts
       180: .line 480
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.minimumNumberShouldMatch:I
            iconst_1
            if_icmpgt 203
       181: .line 481
            new org.apache.lucene.search.BooleanQuery$Builder
            dup
            invokespecial org.apache.lucene.search.BooleanQuery$Builder.<init>:()V
            astore 3 /* builder */
        start local 3 // org.apache.lucene.search.BooleanQuery$Builder builder
       182: .line 482
            aload 3 /* builder */
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.minimumNumberShouldMatch:I
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.setMinimumNumberShouldMatch:(I)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
       183: .line 483
            iconst_0
            istore 4 /* actuallyRewritten */
        start local 4 // boolean actuallyRewritten
       184: .line 485
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 198
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection org.apache.lucene.search.BooleanQuery$Builder int top java.util.Iterator
      StackMap stack:
       185: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause
            astore 5 /* clause */
        start local 5 // org.apache.lucene.search.BooleanClause clause
       186: .line 486
            aload 5 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getOccur:()Lorg/apache/lucene/search/BooleanClause$Occur;
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            if_acmpne 197
            aload 5 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getQuery:()Lorg/apache/lucene/search/Query;
            instanceof org.apache.lucene.search.BooleanQuery
            ifeq 197
       187: .line 487
            aload 5 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getQuery:()Lorg/apache/lucene/search/Query;
            checkcast org.apache.lucene.search.BooleanQuery
            astore 7 /* innerQuery */
        start local 7 // org.apache.lucene.search.BooleanQuery innerQuery
       188: .line 488
            aload 7 /* innerQuery */
            invokevirtual org.apache.lucene.search.BooleanQuery.isPureDisjunction:()Z
            ifeq 195
       189: .line 489
            iconst_1
            istore 4 /* actuallyRewritten */
       190: .line 490
            aload 7 /* innerQuery */
            invokevirtual org.apache.lucene.search.BooleanQuery.clauses:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 193
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection org.apache.lucene.search.BooleanQuery$Builder int org.apache.lucene.search.BooleanClause java.util.Iterator org.apache.lucene.search.BooleanQuery top java.util.Iterator
      StackMap stack:
       191: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause
            astore 8 /* innerClause */
        start local 8 // org.apache.lucene.search.BooleanClause innerClause
       192: .line 491
            aload 3 /* builder */
            aload 8 /* innerClause */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/BooleanClause;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 8 // org.apache.lucene.search.BooleanClause innerClause
       193: .line 490
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 191
       194: .line 493
            goto 198
       195: .line 494
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection org.apache.lucene.search.BooleanQuery$Builder int org.apache.lucene.search.BooleanClause java.util.Iterator org.apache.lucene.search.BooleanQuery
      StackMap stack:
            aload 3 /* builder */
            aload 5 /* clause */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/BooleanClause;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 7 // org.apache.lucene.search.BooleanQuery innerQuery
       196: .line 496
            goto 198
       197: .line 497
      StackMap locals:
      StackMap stack:
            aload 3 /* builder */
            aload 5 /* clause */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/BooleanClause;)Lorg/apache/lucene/search/BooleanQuery$Builder;
            pop
        end local 5 // org.apache.lucene.search.BooleanClause clause
       198: .line 485
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection org.apache.lucene.search.BooleanQuery$Builder int top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 185
       199: .line 500
            iload 4 /* actuallyRewritten */
            ifeq 203
       200: .line 501
            aload 3 /* builder */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.build:()Lorg/apache/lucene/search/BooleanQuery;
       201: areturn
       202: .line 503
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection org.apache.lucene.search.BooleanQuery$Builder int
      StackMap stack: org.apache.lucene.search.BooleanQuery$TooManyClauses
            pop
        end local 4 // boolean actuallyRewritten
        end local 3 // org.apache.lucene.search.BooleanQuery$Builder builder
       203: .line 508
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* reader */
            invokespecial org.apache.lucene.search.Query.rewrite:(Lorg/apache/lucene/index/IndexReader;)Lorg/apache/lucene/search/Query;
            areturn
        end local 2 // java.util.Collection mustNotClauses
        end local 1 // org.apache.lucene.index.IndexReader reader
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0  204     0               this  Lorg/apache/lucene/search/BooleanQuery;
            0  204     1             reader  Lorg/apache/lucene/index/IndexReader;
            4   13     2                  c  Lorg/apache/lucene/search/BooleanClause;
            5   13     3              query  Lorg/apache/lucene/search/Query;
           14   28     2            builder  Lorg/apache/lucene/search/BooleanQuery$Builder;
           16   28     3  actuallyRewritten  Z
           18   25     4             clause  Lorg/apache/lucene/search/BooleanClause;
           19   25     6              query  Lorg/apache/lucene/search/Query;
           20   25     7          rewritten  Lorg/apache/lucene/search/Query;
           29   45     2        clauseCount  I
           31   32     3            queries  Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;
           35   45     3          rewritten  Lorg/apache/lucene/search/BooleanQuery$Builder;
           38   43     4              entry  Ljava/util/Map$Entry<Lorg/apache/lucene/search/BooleanClause$Occur;Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;>;
           39   43     6              occur  Lorg/apache/lucene/search/BooleanClause$Occur;
           41   42     7              query  Lorg/apache/lucene/search/Query;
           46  204     2     mustNotClauses  Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;
           48   52     3                  p  Ljava/util/function/Predicate<Lorg/apache/lucene/search/Query;>;
           54   69     3            filters  Ljava/util/Set<Lorg/apache/lucene/search/Query;>;
           55   69     4           modified  Z
           58   69     5            builder  Lorg/apache/lucene/search/BooleanQuery$Builder;
           61   63     6             clause  Lorg/apache/lucene/search/BooleanClause;
           66   67     6             filter  Lorg/apache/lucene/search/Query;
           71   88     3            filters  Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;
           72   88     4            shoulds  Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;
           73   88     5       intersection  Ljava/util/Set<Lorg/apache/lucene/search/Query;>;
           76   88     6            builder  Lorg/apache/lucene/search/BooleanQuery$Builder;
           77   88     7     minShouldMatch  I
           79   85     8             clause  Lorg/apache/lucene/search/BooleanClause;
           90  118     3      shouldClauses  Ljava/util/Map<Lorg/apache/lucene/search/Query;Ljava/lang/Double;>;
           92   99     4              query  Lorg/apache/lucene/search/Query;
           93   99     6              boost  D
           95   97     8                 bq  Lorg/apache/lucene/search/BoostQuery;
          104  118     4            builder  Lorg/apache/lucene/search/BooleanQuery$Builder;
          106  111     5              entry  Ljava/util/Map$Entry<Lorg/apache/lucene/search/Query;Ljava/lang/Double;>;
          107  111     7              query  Lorg/apache/lucene/search/Query;
          108  111     8              boost  F
          114  116     5             clause  Lorg/apache/lucene/search/BooleanClause;
          120  148     3        mustClauses  Ljava/util/Map<Lorg/apache/lucene/search/Query;Ljava/lang/Double;>;
          122  129     4              query  Lorg/apache/lucene/search/Query;
          123  129     6              boost  D
          125  127     8                 bq  Lorg/apache/lucene/search/BoostQuery;
          134  148     4            builder  Lorg/apache/lucene/search/BooleanQuery$Builder;
          136  141     5              entry  Ljava/util/Map$Entry<Lorg/apache/lucene/search/Query;Ljava/lang/Double;>;
          137  141     7              query  Lorg/apache/lucene/search/Query;
          138  141     8              boost  F
          144  146     5             clause  Lorg/apache/lucene/search/BooleanClause;
          149  180     3              musts  Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;
          150  180     4            filters  Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;
          153  180     5               must  Lorg/apache/lucene/search/Query;
          154  180     6              boost  F
          156  158     7         boostQuery  Lorg/apache/lucene/search/BoostQuery;
          160  180     7            builder  Lorg/apache/lucene/search/BooleanQuery$Builder;
          162  165     8             clause  Lorg/apache/lucene/search/BooleanClause;
          167  180     8          rewritten  Lorg/apache/lucene/search/Query;
          176  177     9              query  Lorg/apache/lucene/search/Query;
          182  203     3            builder  Lorg/apache/lucene/search/BooleanQuery$Builder;
          184  203     4  actuallyRewritten  Z
          186  198     5             clause  Lorg/apache/lucene/search/BooleanClause;
          188  196     7         innerQuery  Lorg/apache/lucene/search/BooleanQuery;
          192  193     8        innerClause  Lorg/apache/lucene/search/BooleanClause;
      Exception table:
        from    to  target  type
         184   201     202  Class org.apache.lucene.search.BooleanQuery$TooManyClauses
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      reader  

  public void visit(org.apache.lucene.search.QueryVisitor);
    descriptor: (Lorg/apache/lucene/search/QueryVisitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.apache.lucene.search.BooleanQuery this
        start local 1 // org.apache.lucene.search.QueryVisitor visitor
         0: .line 513
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 8
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.search.QueryVisitor top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause$Occur
            astore 2 /* occur */
        start local 2 // org.apache.lucene.search.BooleanClause$Occur occur
         2: .line 514
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            aload 2 /* occur */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.size:()I
            ifle 8
         3: .line 515
            aload 1 /* visitor */
            aload 2 /* occur */
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.QueryVisitor.getSubVisitor:(Lorg/apache/lucene/search/BooleanClause$Occur;Lorg/apache/lucene/search/Query;)Lorg/apache/lucene/search/QueryVisitor;
            astore 4 /* v */
        start local 4 // org.apache.lucene.search.QueryVisitor v
         4: .line 516
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            aload 2 /* occur */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 7
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.search.QueryVisitor org.apache.lucene.search.BooleanClause$Occur java.util.Iterator org.apache.lucene.search.QueryVisitor top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.Query
            astore 5 /* q */
        start local 5 // org.apache.lucene.search.Query q
         6: .line 517
            aload 5 /* q */
            aload 4 /* v */
            invokevirtual org.apache.lucene.search.Query.visit:(Lorg/apache/lucene/search/QueryVisitor;)V
        end local 5 // org.apache.lucene.search.Query q
         7: .line 516
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 4 // org.apache.lucene.search.QueryVisitor v
        end local 2 // org.apache.lucene.search.BooleanClause$Occur occur
         8: .line 513
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.search.QueryVisitor top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         9: .line 521
            return
        end local 1 // org.apache.lucene.search.QueryVisitor visitor
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/apache/lucene/search/BooleanQuery;
            0   10     1  visitor  Lorg/apache/lucene/search/QueryVisitor;
            2    8     2    occur  Lorg/apache/lucene/search/BooleanClause$Occur;
            4    8     4        v  Lorg/apache/lucene/search/QueryVisitor;
            6    7     5        q  Lorg/apache/lucene/search/Query;
    MethodParameters:
         Name  Flags
      visitor  

  public java.lang.String toString(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // org.apache.lucene.search.BooleanQuery this
        start local 1 // java.lang.String field
         0: .line 526
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* buffer */
        start local 2 // java.lang.StringBuilder buffer
         1: .line 527
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.getMinimumNumberShouldMatch:()I
            ifle 2
            iconst_1
            goto 3
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 3 /* needParens */
        start local 3 // boolean needParens
         4: .line 528
            iload 3 /* needParens */
            ifeq 6
         5: .line 529
            aload 2 /* buffer */
            ldc "("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 532
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         7: .line 533
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.iterator:()Ljava/util/Iterator;
            astore 6
            goto 20
      StackMap locals: org.apache.lucene.search.BooleanQuery java.lang.String java.lang.StringBuilder int int top java.util.Iterator
      StackMap stack:
         8: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause
            astore 5 /* c */
        start local 5 // org.apache.lucene.search.BooleanClause c
         9: .line 534
            aload 2 /* buffer */
            aload 5 /* c */
            invokevirtual org.apache.lucene.search.BooleanClause.getOccur:()Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanClause$Occur.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 536
            aload 5 /* c */
            invokevirtual org.apache.lucene.search.BooleanClause.getQuery:()Lorg/apache/lucene/search/Query;
            astore 7 /* subQuery */
        start local 7 // org.apache.lucene.search.Query subQuery
        11: .line 537
            aload 7 /* subQuery */
            instanceof org.apache.lucene.search.BooleanQuery
            ifeq 16
        12: .line 538
            aload 2 /* buffer */
            ldc "("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 539
            aload 2 /* buffer */
            aload 7 /* subQuery */
            aload 1 /* field */
            invokevirtual org.apache.lucene.search.Query.toString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 540
            aload 2 /* buffer */
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 541
            goto 17
        16: .line 542
      StackMap locals: org.apache.lucene.search.BooleanQuery java.lang.String java.lang.StringBuilder int int org.apache.lucene.search.BooleanClause java.util.Iterator org.apache.lucene.search.Query
      StackMap stack:
            aload 2 /* buffer */
            aload 7 /* subQuery */
            aload 1 /* field */
            invokevirtual org.apache.lucene.search.Query.toString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        17: .line 545
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            if_icmpeq 19
        18: .line 546
            aload 2 /* buffer */
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 548
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
        end local 7 // org.apache.lucene.search.Query subQuery
        end local 5 // org.apache.lucene.search.BooleanClause c
        20: .line 533
      StackMap locals: org.apache.lucene.search.BooleanQuery java.lang.String java.lang.StringBuilder int int top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        21: .line 551
            iload 3 /* needParens */
            ifeq 23
        22: .line 552
            aload 2 /* buffer */
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        23: .line 555
      StackMap locals: org.apache.lucene.search.BooleanQuery java.lang.String java.lang.StringBuilder int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.getMinimumNumberShouldMatch:()I
            ifle 26
        24: .line 556
            aload 2 /* buffer */
            bipush 126
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        25: .line 557
            aload 2 /* buffer */
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.getMinimumNumberShouldMatch:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        26: .line 560
      StackMap locals:
      StackMap stack:
            aload 2 /* buffer */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // int i
        end local 3 // boolean needParens
        end local 2 // java.lang.StringBuilder buffer
        end local 1 // java.lang.String field
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   27     0        this  Lorg/apache/lucene/search/BooleanQuery;
            0   27     1       field  Ljava/lang/String;
            1   27     2      buffer  Ljava/lang/StringBuilder;
            4   27     3  needParens  Z
            7   27     4           i  I
            9   20     5           c  Lorg/apache/lucene/search/BooleanClause;
           11   20     7    subQuery  Lorg/apache/lucene/search/Query;
    MethodParameters:
       Name  Flags
      field  

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.lucene.search.BooleanQuery this
        start local 1 // java.lang.Object o
         0: .line 577
            aload 0 /* this */
            aload 1 /* o */
            invokevirtual org.apache.lucene.search.BooleanQuery.sameClassAs:(Ljava/lang/Object;)Z
            ifeq 3
         1: .line 578
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 1 /* o */
            invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanQuery
            invokevirtual org.apache.lucene.search.BooleanQuery.equalsTo:(Lorg/apache/lucene/search/BooleanQuery;)Z
            ifeq 3
         2: .line 577
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 1 // java.lang.Object o
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/lucene/search/BooleanQuery;
            0    4     1     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      o     

  private boolean equalsTo(org.apache.lucene.search.BooleanQuery);
    descriptor: (Lorg/apache/lucene/search/BooleanQuery;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.lucene.search.BooleanQuery this
        start local 1 // org.apache.lucene.search.BooleanQuery other
         0: .line 582
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.getMinimumNumberShouldMatch:()I
            aload 1 /* other */
            invokevirtual org.apache.lucene.search.BooleanQuery.getMinimumNumberShouldMatch:()I
            if_icmpne 3
         1: .line 583
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            aload 1 /* other */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            invokeinterface java.util.Map.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 582
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 1 // org.apache.lucene.search.BooleanQuery other
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/apache/lucene/search/BooleanQuery;
            0    4     1  other  Lorg/apache/lucene/search/BooleanQuery;
    MethodParameters:
       Name  Flags
      other  

  private int computeHashCode();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.apache.lucene.search.BooleanQuery this
         0: .line 587
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.minimumNumberShouldMatch:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            aastore
            invokestatic java.util.Objects.hash:([Ljava/lang/Object;)I
            istore 1 /* hashCode */
        start local 1 // int hashCode
         1: .line 588
            iload 1 /* hashCode */
            ifne 3
         2: .line 589
            iconst_1
            istore 1 /* hashCode */
         3: .line 591
      StackMap locals: int
      StackMap stack:
            iload 1 /* hashCode */
            ireturn
        end local 1 // int hashCode
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/apache/lucene/search/BooleanQuery;
            1    4     1  hashCode  I

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.BooleanQuery this
         0: .line 600
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.hashCode:I
            ifne 3
         1: .line 601
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.computeHashCode:()I
            putfield org.apache.lucene.search.BooleanQuery.hashCode:I
         2: .line 602
            getstatic org.apache.lucene.search.BooleanQuery.$assertionsDisabled:Z
            ifne 3
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.hashCode:I
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 604
      StackMap locals:
      StackMap stack:
            getstatic org.apache.lucene.search.BooleanQuery.$assertionsDisabled:Z
            ifne 4
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.hashCode:I
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.computeHashCode:()I
            if_icmpeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 605
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.hashCode:I
            ireturn
        end local 0 // org.apache.lucene.search.BooleanQuery this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/lucene/search/BooleanQuery;

  static int[] $SWITCH_TABLE$org$apache$lucene$search$BooleanClause$Occur();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 42
            getstatic org.apache.lucene.search.BooleanQuery.$SWITCH_TABLE$org$apache$lucene$search$BooleanClause$Occur:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.apache.lucene.search.BooleanClause$Occur.values:()[Lorg/apache/lucene/search/BooleanClause$Occur;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.apache.lucene.search.BooleanClause$Occur.FILTER:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanClause$Occur.ordinal:()I
            iconst_2
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanClause$Occur.ordinal:()I
            iconst_1
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST_NOT:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanClause$Occur.ordinal:()I
            iconst_4
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
            invokevirtual org.apache.lucene.search.BooleanClause$Occur.ordinal:()I
            iconst_3
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            dup
            putstatic org.apache.lucene.search.BooleanQuery.$SWITCH_TABLE$org$apache$lucene$search$BooleanClause$Occur:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
}
Signature: Lorg/apache/lucene/search/Query;Ljava/lang/Iterable<Lorg/apache/lucene/search/BooleanClause;>;
SourceFile: "BooleanQuery.java"
NestMembers:
  org.apache.lucene.search.BooleanQuery$Builder  org.apache.lucene.search.BooleanQuery$TooManyClauses
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Entry = java.util.Map$Entry of java.util.Map
  public Occur = org.apache.lucene.search.BooleanClause$Occur of org.apache.lucene.search.BooleanClause
  public Builder = org.apache.lucene.search.BooleanQuery$Builder of org.apache.lucene.search.BooleanQuery
  public TooManyClauses = org.apache.lucene.search.BooleanQuery$TooManyClauses of org.apache.lucene.search.BooleanQuery