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 319
      StackMap locals:
      StackMap stack:
            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 71
        53: .line 320
            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 321
            iconst_0
            istore 4 /* modified */
        start local 4 // boolean modified
        55: .line 322
            aload 3 /* filters */
            invokeinterface java.util.Set.size:()I
            iconst_1
            if_icmpgt 56
            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.isEmpty:()Z
            ifne 57
        56: .line 323
      StackMap locals: java.util.Set int
      StackMap stack:
            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 */
        57: .line 325
      StackMap locals:
      StackMap stack:
            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 */
        58: .line 326
            iload 4 /* modified */
            ifeq 71
        59: .line 327
            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
        60: .line 328
            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
        61: .line 329
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 65
      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:
        62: 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
        63: .line 330
            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 65
        64: .line 331
            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
        65: .line 329
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 62
        66: .line 334
            aload 3 /* filters */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 69
      StackMap locals:
      StackMap stack:
        67: 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
        68: .line 335
            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
        69: .line 334
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 67
        70: .line 337
            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
        71: .line 342
      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 90
            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 90
        72: .line 343
            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
        73: .line 344
            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
        74: .line 346
            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
        75: .line 347
            aload 5 /* intersection */
            aload 4 /* shoulds */
            invokeinterface java.util.Set.retainAll:(Ljava/util/Collection;)Z
            pop
        76: .line 349
            aload 5 /* intersection */
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 90
        77: .line 350
            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
        78: .line 351
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.getMinimumNumberShouldMatch:()I
            istore 7 /* minShouldMatch */
        start local 7 // int minShouldMatch
        79: .line 353
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 87
      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:
        80: 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
        81: .line 354
            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 86
        82: .line 355
            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 87
        83: .line 356
            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
        84: .line 357
            iinc 7 /* minShouldMatch */ -1
        85: .line 359
            goto 87
        86: .line 360
      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
        87: .line 353
      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 80
        88: .line 364
            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
        89: .line 365
            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
        90: .line 370
      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 120
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.minimumNumberShouldMatch:I
            iconst_1
            if_icmpgt 120
        91: .line 371
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* shouldClauses */
        start local 3 // java.util.Map shouldClauses
        92: .line 372
            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 101
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map top java.util.Iterator
      StackMap stack:
        93: 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
        94: .line 373
            dconst_1
            dstore 6 /* boost */
        start local 6 // double boost
        95: .line 374
            goto 99
        96: .line 375
      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
        97: .line 376
            dload 6 /* boost */
            aload 8 /* bq */
            invokevirtual org.apache.lucene.search.BoostQuery.getBoost:()F
            f2d
            dmul
            dstore 6 /* boost */
        98: .line 377
            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
        99: .line 374
      StackMap locals:
      StackMap stack:
            aload 4 /* query */
            instanceof org.apache.lucene.search.BoostQuery
            ifne 96
       100: .line 379
            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
       101: .line 372
      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 93
       102: .line 381
            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 120
       103: .line 382
            new org.apache.lucene.search.BooleanQuery$Builder
            dup
            invokespecial org.apache.lucene.search.BooleanQuery$Builder.<init>:()V
       104: .line 383
            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;
       105: .line 382
            astore 4 /* builder */
        start local 4 // org.apache.lucene.search.BooleanQuery$Builder builder
       106: .line 384
            aload 3 /* shouldClauses */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 113
      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:
       107: 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
       108: .line 385
            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
       109: .line 386
            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
       110: .line 387
            fload 8 /* boost */
            fconst_1
            fcmpl
            ifeq 112
       111: .line 388
            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 */
       112: .line 390
      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
       113: .line 384
      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 107
       114: .line 392
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 118
      StackMap locals:
      StackMap stack:
       115: 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
       116: .line 393
            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 118
       117: .line 394
            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
       118: .line 392
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 115
       119: .line 397
            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
       120: .line 402
      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 150
       121: .line 403
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* mustClauses */
        start local 3 // java.util.Map mustClauses
       122: .line 404
            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 131
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.index.IndexReader java.util.Collection java.util.Map top java.util.Iterator
      StackMap stack:
       123: 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
       124: .line 405
            dconst_1
            dstore 6 /* boost */
        start local 6 // double boost
       125: .line 406
            goto 129
       126: .line 407
      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
       127: .line 408
            dload 6 /* boost */
            aload 8 /* bq */
            invokevirtual org.apache.lucene.search.BoostQuery.getBoost:()F
            f2d
            dmul
            dstore 6 /* boost */
       128: .line 409
            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
       129: .line 406
      StackMap locals:
      StackMap stack:
            aload 4 /* query */
            instanceof org.apache.lucene.search.BoostQuery
            ifne 126
       130: .line 411
            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
       131: .line 404
      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 123
       132: .line 413
            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 150
       133: .line 414
            new org.apache.lucene.search.BooleanQuery$Builder
            dup
            invokespecial org.apache.lucene.search.BooleanQuery$Builder.<init>:()V
       134: .line 415
            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;
       135: .line 414
            astore 4 /* builder */
        start local 4 // org.apache.lucene.search.BooleanQuery$Builder builder
       136: .line 416
            aload 3 /* mustClauses */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 143
      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:
       137: 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
       138: .line 417
            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
       139: .line 418
            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
       140: .line 419
            fload 8 /* boost */
            fconst_1
            fcmpl
            ifeq 142
       141: .line 420
            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 */
       142: .line 422
      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
       143: .line 416
      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 137
       144: .line 424
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 148
      StackMap locals:
      StackMap stack:
       145: 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
       146: .line 425
            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 148
       147: .line 426
            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
       148: .line 424
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 145
       149: .line 429
            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
       150: .line 436
      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
       151: .line 437
            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
       152: .line 438
            aload 3 /* musts */
            invokeinterface java.util.Collection.size:()I
            iconst_1
            if_icmpne 182
       153: .line 439
            aload 4 /* filters */
            invokeinterface java.util.Collection.size:()I
            ifle 182
       154: .line 440
            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
       155: .line 441
            fconst_1
            fstore 6 /* boost */
        start local 6 // float boost
       156: .line 442
            aload 5 /* must */
            instanceof org.apache.lucene.search.BoostQuery
            ifeq 160
       157: .line 443
            aload 5 /* must */
            checkcast org.apache.lucene.search.BoostQuery
            astore 7 /* boostQuery */
        start local 7 // org.apache.lucene.search.BoostQuery boostQuery
       158: .line 444
            aload 7 /* boostQuery */
            invokevirtual org.apache.lucene.search.BoostQuery.getQuery:()Lorg/apache/lucene/search/Query;
            astore 5 /* must */
       159: .line 445
            aload 7 /* boostQuery */
            invokevirtual org.apache.lucene.search.BoostQuery.getBoost:()F
            fstore 6 /* boost */
        end local 7 // org.apache.lucene.search.BoostQuery boostQuery
       160: .line 447
      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 182
       161: .line 450
            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
       162: .line 451
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 167
      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:
       163: 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
       164: .line 452
            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: 165
                    3: 167
                    4: 165
              default: 167
          }
       165: .line 455
      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
       166: .line 456
            goto 167
        end local 8 // org.apache.lucene.search.BooleanClause clause
       167: .line 451
      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 163
       168: .line 462
            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
       169: .line 463
            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 */
       170: .line 464
            fload 6 /* boost */
            fconst_1
            fcmpl
            ifeq 172
       171: .line 465
            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 */
       172: .line 469
      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
       173: .line 470
            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;
       174: .line 471
            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;
       175: .line 469
            astore 7 /* builder */
       176: .line 472
            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 179
      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:
       177: 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
       178: .line 473
            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
       179: .line 472
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 177
       180: .line 475
            aload 7 /* builder */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.build:()Lorg/apache/lucene/search/BooleanQuery;
            astore 8 /* rewritten */
       181: .line 476
            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
       182: .line 482
      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 205
       183: .line 483
            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
       184: .line 484
            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
       185: .line 485
            iconst_0
            istore 4 /* actuallyRewritten */
        start local 4 // boolean actuallyRewritten
       186: .line 487
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 200
      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:
       187: 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
       188: .line 488
            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 199
            aload 5 /* clause */
            invokevirtual org.apache.lucene.search.BooleanClause.getQuery:()Lorg/apache/lucene/search/Query;
            instanceof org.apache.lucene.search.BooleanQuery
            ifeq 199
       189: .line 489
            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
       190: .line 490
            aload 7 /* innerQuery */
            invokevirtual org.apache.lucene.search.BooleanQuery.isPureDisjunction:()Z
            ifeq 197
       191: .line 491
            iconst_1
            istore 4 /* actuallyRewritten */
       192: .line 492
            aload 7 /* innerQuery */
            invokevirtual org.apache.lucene.search.BooleanQuery.clauses:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 195
      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:
       193: 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
       194: .line 493
            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
       195: .line 492
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 193
       196: .line 495
            goto 200
       197: .line 496
      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
       198: .line 498
            goto 200
       199: .line 499
      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
       200: .line 487
      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 187
       201: .line 502
            iload 4 /* actuallyRewritten */
            ifeq 205
       202: .line 503
            aload 3 /* builder */
            invokevirtual org.apache.lucene.search.BooleanQuery$Builder.build:()Lorg/apache/lucene/search/BooleanQuery;
       203: areturn
       204: .line 505
      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
       205: .line 510
      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  206     0               this  Lorg/apache/lucene/search/BooleanQuery;
            0  206     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  206     2     mustNotClauses  Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;
           48   52     3                  p  Ljava/util/function/Predicate<Lorg/apache/lucene/search/Query;>;
           54   71     3            filters  Ljava/util/Set<Lorg/apache/lucene/search/Query;>;
           55   71     4           modified  Z
           60   71     5            builder  Lorg/apache/lucene/search/BooleanQuery$Builder;
           63   65     6             clause  Lorg/apache/lucene/search/BooleanClause;
           68   69     6             filter  Lorg/apache/lucene/search/Query;
           73   90     3            filters  Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;
           74   90     4            shoulds  Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;
           75   90     5       intersection  Ljava/util/Set<Lorg/apache/lucene/search/Query;>;
           78   90     6            builder  Lorg/apache/lucene/search/BooleanQuery$Builder;
           79   90     7     minShouldMatch  I
           81   87     8             clause  Lorg/apache/lucene/search/BooleanClause;
           92  120     3      shouldClauses  Ljava/util/Map<Lorg/apache/lucene/search/Query;Ljava/lang/Double;>;
           94  101     4              query  Lorg/apache/lucene/search/Query;
           95  101     6              boost  D
           97   99     8                 bq  Lorg/apache/lucene/search/BoostQuery;
          106  120     4            builder  Lorg/apache/lucene/search/BooleanQuery$Builder;
          108  113     5              entry  Ljava/util/Map$Entry<Lorg/apache/lucene/search/Query;Ljava/lang/Double;>;
          109  113     7              query  Lorg/apache/lucene/search/Query;
          110  113     8              boost  F
          116  118     5             clause  Lorg/apache/lucene/search/BooleanClause;
          122  150     3        mustClauses  Ljava/util/Map<Lorg/apache/lucene/search/Query;Ljava/lang/Double;>;
          124  131     4              query  Lorg/apache/lucene/search/Query;
          125  131     6              boost  D
          127  129     8                 bq  Lorg/apache/lucene/search/BoostQuery;
          136  150     4            builder  Lorg/apache/lucene/search/BooleanQuery$Builder;
          138  143     5              entry  Ljava/util/Map$Entry<Lorg/apache/lucene/search/Query;Ljava/lang/Double;>;
          139  143     7              query  Lorg/apache/lucene/search/Query;
          140  143     8              boost  F
          146  148     5             clause  Lorg/apache/lucene/search/BooleanClause;
          151  182     3              musts  Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;
          152  182     4            filters  Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;
          155  182     5               must  Lorg/apache/lucene/search/Query;
          156  182     6              boost  F
          158  160     7         boostQuery  Lorg/apache/lucene/search/BoostQuery;
          162  182     7            builder  Lorg/apache/lucene/search/BooleanQuery$Builder;
          164  167     8             clause  Lorg/apache/lucene/search/BooleanClause;
          169  182     8          rewritten  Lorg/apache/lucene/search/Query;
          178  179     9              query  Lorg/apache/lucene/search/Query;
          184  205     3            builder  Lorg/apache/lucene/search/BooleanQuery$Builder;
          186  205     4  actuallyRewritten  Z
          188  200     5             clause  Lorg/apache/lucene/search/BooleanClause;
          190  198     7         innerQuery  Lorg/apache/lucene/search/BooleanQuery;
          194  195     8        innerClause  Lorg/apache/lucene/search/BooleanClause;
      Exception table:
        from    to  target  type
         186   203     204  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=8, args_size=2
        start local 0 // org.apache.lucene.search.BooleanQuery this
        start local 1 // org.apache.lucene.search.QueryVisitor visitor
         0: .line 515
            aload 1 /* visitor */
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$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 2 /* sub */
        start local 2 // org.apache.lucene.search.QueryVisitor sub
         1: .line 516
            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 4
            goto 15
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.search.QueryVisitor org.apache.lucene.search.QueryVisitor top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.BooleanClause$Occur
            astore 3 /* occur */
        start local 3 // org.apache.lucene.search.BooleanClause$Occur occur
         3: .line 517
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            aload 3 /* occur */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.size:()I
            ifle 15
         4: .line 518
            aload 3 /* occur */
            getstatic org.apache.lucene.search.BooleanClause$Occur.MUST:Lorg/apache/lucene/search/BooleanClause$Occur;
            if_acmpne 10
         5: .line 519
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            aload 3 /* 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 8
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.search.QueryVisitor org.apache.lucene.search.QueryVisitor org.apache.lucene.search.BooleanClause$Occur java.util.Iterator top java.util.Iterator
      StackMap stack:
         6: 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
         7: .line 520
            aload 5 /* q */
            aload 2 /* sub */
            invokevirtual org.apache.lucene.search.Query.visit:(Lorg/apache/lucene/search/QueryVisitor;)V
        end local 5 // org.apache.lucene.search.Query q
         8: .line 519
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
         9: .line 522
            goto 15
        10: .line 524
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.search.QueryVisitor org.apache.lucene.search.QueryVisitor org.apache.lucene.search.BooleanClause$Occur java.util.Iterator
      StackMap stack:
            aload 2 /* sub */
            aload 3 /* 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 5 /* v */
        start local 5 // org.apache.lucene.search.QueryVisitor v
        11: .line 525
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.clauseSets:Ljava/util/Map;
            aload 3 /* 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 7
            goto 14
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.search.QueryVisitor 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:
        12: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.lucene.search.Query
            astore 6 /* q */
        start local 6 // org.apache.lucene.search.Query q
        13: .line 526
            aload 6 /* q */
            aload 5 /* v */
            invokevirtual org.apache.lucene.search.Query.visit:(Lorg/apache/lucene/search/QueryVisitor;)V
        end local 6 // org.apache.lucene.search.Query q
        14: .line 525
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        end local 5 // org.apache.lucene.search.QueryVisitor v
        end local 3 // org.apache.lucene.search.BooleanClause$Occur occur
        15: .line 516
      StackMap locals: org.apache.lucene.search.BooleanQuery org.apache.lucene.search.QueryVisitor org.apache.lucene.search.QueryVisitor top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        16: .line 531
            return
        end local 2 // org.apache.lucene.search.QueryVisitor sub
        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   17     0     this  Lorg/apache/lucene/search/BooleanQuery;
            0   17     1  visitor  Lorg/apache/lucene/search/QueryVisitor;
            1   17     2      sub  Lorg/apache/lucene/search/QueryVisitor;
            3   15     3    occur  Lorg/apache/lucene/search/BooleanClause$Occur;
            7    8     5        q  Lorg/apache/lucene/search/Query;
           11   15     5        v  Lorg/apache/lucene/search/QueryVisitor;
           13   14     6        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 536
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* buffer */
        start local 2 // java.lang.StringBuilder buffer
         1: .line 537
            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 538
            iload 3 /* needParens */
            ifeq 6
         5: .line 539
            aload 2 /* buffer */
            ldc "("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 542
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         7: .line 543
            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 544
            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 546
            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 547
            aload 7 /* subQuery */
            instanceof org.apache.lucene.search.BooleanQuery
            ifeq 16
        12: .line 548
            aload 2 /* buffer */
            ldc "("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 549
            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 550
            aload 2 /* buffer */
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 551
            goto 17
        16: .line 552
      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 555
      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 556
            aload 2 /* buffer */
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 558
      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 543
      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 561
            iload 3 /* needParens */
            ifeq 23
        22: .line 562
            aload 2 /* buffer */
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        23: .line 565
      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 566
            aload 2 /* buffer */
            bipush 126
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        25: .line 567
            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 570
      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 587
            aload 0 /* this */
            aload 1 /* o */
            invokevirtual org.apache.lucene.search.BooleanQuery.sameClassAs:(Ljava/lang/Object;)Z
            ifeq 3
         1: .line 588
            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 587
            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 592
            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 593
            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 592
            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 597
            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 598
            iload 1 /* hashCode */
            ifne 3
         2: .line 599
            iconst_1
            istore 1 /* hashCode */
         3: .line 601
      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 610
            aload 0 /* this */
            getfield org.apache.lucene.search.BooleanQuery.hashCode:I
            ifne 3
         1: .line 611
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.BooleanQuery.computeHashCode:()I
            putfield org.apache.lucene.search.BooleanQuery.hashCode:I
         2: .line 612
            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 614
      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 615
      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