public final class org.apache.http.conn.util.PublicSuffixMatcher
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.apache.http.conn.util.PublicSuffixMatcher
  super_class: java.lang.Object
{
  private final java.util.Map<java.lang.String, org.apache.http.conn.util.DomainType> rules;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;>;

  private final java.util.Map<java.lang.String, org.apache.http.conn.util.DomainType> exceptions;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;>;

  public void <init>(java.util.Collection<java.lang.String>, java.util.Collection<java.lang.String>);
    descriptor: (Ljava/util/Collection;Ljava/util/Collection;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
        start local 1 // java.util.Collection rules
        start local 2 // java.util.Collection exceptions
         0: .line 57
            aload 0 /* this */
            getstatic org.apache.http.conn.util.DomainType.UNKNOWN:Lorg/apache/http/conn/util/DomainType;
            aload 1 /* rules */
            aload 2 /* exceptions */
            invokespecial org.apache.http.conn.util.PublicSuffixMatcher.<init>:(Lorg/apache/http/conn/util/DomainType;Ljava/util/Collection;Ljava/util/Collection;)V
         1: .line 58
            return
        end local 2 // java.util.Collection exceptions
        end local 1 // java.util.Collection rules
        end local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/apache/http/conn/util/PublicSuffixMatcher;
            0    2     1       rules  Ljava/util/Collection<Ljava/lang/String;>;
            0    2     2  exceptions  Ljava/util/Collection<Ljava/lang/String;>;
    Signature: (Ljava/util/Collection<Ljava/lang/String;>;Ljava/util/Collection<Ljava/lang/String;>;)V
    MethodParameters:
            Name  Flags
      rules       final
      exceptions  final

  public void <init>(org.apache.http.conn.util.DomainType, java.util.Collection<java.lang.String>, java.util.Collection<java.lang.String>);
    descriptor: (Lorg/apache/http/conn/util/DomainType;Ljava/util/Collection;Ljava/util/Collection;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
        start local 1 // org.apache.http.conn.util.DomainType domainType
        start local 2 // java.util.Collection rules
        start local 3 // java.util.Collection exceptions
         0: .line 63
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 65
            aload 1 /* domainType */
            ldc "Domain type"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         2: .line 66
            aload 2 /* rules */
            ldc "Domain suffix rules"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         3: .line 67
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            aload 2 /* rules */
            invokeinterface java.util.Collection.size:()I
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(I)V
            putfield org.apache.http.conn.util.PublicSuffixMatcher.rules:Ljava/util/Map;
         4: .line 68
            aload 2 /* rules */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 7
      StackMap locals: org.apache.http.conn.util.PublicSuffixMatcher org.apache.http.conn.util.DomainType java.util.Collection java.util.Collection top java.util.Iterator
      StackMap stack:
         5: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* rule */
        start local 4 // java.lang.String rule
         6: .line 69
            aload 0 /* this */
            getfield org.apache.http.conn.util.PublicSuffixMatcher.rules:Ljava/util/Map;
            aload 4 /* rule */
            aload 1 /* domainType */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 4 // java.lang.String rule
         7: .line 68
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         8: .line 71
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield org.apache.http.conn.util.PublicSuffixMatcher.exceptions:Ljava/util/Map;
         9: .line 72
            aload 3 /* exceptions */
            ifnull 14
        10: .line 73
            aload 3 /* exceptions */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 13
      StackMap locals:
      StackMap stack:
        11: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* exception */
        start local 4 // java.lang.String exception
        12: .line 74
            aload 0 /* this */
            getfield org.apache.http.conn.util.PublicSuffixMatcher.exceptions:Ljava/util/Map;
            aload 4 /* exception */
            aload 1 /* domainType */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 4 // java.lang.String exception
        13: .line 73
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        14: .line 77
      StackMap locals: org.apache.http.conn.util.PublicSuffixMatcher org.apache.http.conn.util.DomainType java.util.Collection java.util.Collection
      StackMap stack:
            return
        end local 3 // java.util.Collection exceptions
        end local 2 // java.util.Collection rules
        end local 1 // org.apache.http.conn.util.DomainType domainType
        end local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0        this  Lorg/apache/http/conn/util/PublicSuffixMatcher;
            0   15     1  domainType  Lorg/apache/http/conn/util/DomainType;
            0   15     2       rules  Ljava/util/Collection<Ljava/lang/String;>;
            0   15     3  exceptions  Ljava/util/Collection<Ljava/lang/String;>;
            6    7     4        rule  Ljava/lang/String;
           12   13     4   exception  Ljava/lang/String;
    Signature: (Lorg/apache/http/conn/util/DomainType;Ljava/util/Collection<Ljava/lang/String;>;Ljava/util/Collection<Ljava/lang/String;>;)V
    MethodParameters:
            Name  Flags
      domainType  final
      rules       final
      exceptions  final

  public void <init>(java.util.Collection<org.apache.http.conn.util.PublicSuffixList>);
    descriptor: (Ljava/util/Collection;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=9, args_size=2
        start local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
        start local 1 // java.util.Collection lists
         0: .line 82
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 83
            aload 1 /* lists */
            ldc "Domain suffix lists"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         2: .line 84
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield org.apache.http.conn.util.PublicSuffixMatcher.rules:Ljava/util/Map;
         3: .line 85
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield org.apache.http.conn.util.PublicSuffixMatcher.exceptions:Ljava/util/Map;
         4: .line 86
            aload 1 /* lists */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 18
      StackMap locals: org.apache.http.conn.util.PublicSuffixMatcher java.util.Collection top java.util.Iterator
      StackMap stack:
         5: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.http.conn.util.PublicSuffixList
            astore 2 /* list */
        start local 2 // org.apache.http.conn.util.PublicSuffixList list
         6: .line 87
            aload 2 /* list */
            invokevirtual org.apache.http.conn.util.PublicSuffixList.getType:()Lorg/apache/http/conn/util/DomainType;
            astore 4 /* domainType */
        start local 4 // org.apache.http.conn.util.DomainType domainType
         7: .line 88
            aload 2 /* list */
            invokevirtual org.apache.http.conn.util.PublicSuffixList.getRules:()Ljava/util/List;
            astore 5 /* rules */
        start local 5 // java.util.List rules
         8: .line 89
            aload 5 /* rules */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 11
      StackMap locals: org.apache.http.conn.util.PublicSuffixMatcher java.util.Collection org.apache.http.conn.util.PublicSuffixList java.util.Iterator org.apache.http.conn.util.DomainType java.util.List top java.util.Iterator
      StackMap stack:
         9: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* rule */
        start local 6 // java.lang.String rule
        10: .line 90
            aload 0 /* this */
            getfield org.apache.http.conn.util.PublicSuffixMatcher.rules:Ljava/util/Map;
            aload 6 /* rule */
            aload 4 /* domainType */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // java.lang.String rule
        11: .line 89
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        12: .line 92
            aload 2 /* list */
            invokevirtual org.apache.http.conn.util.PublicSuffixList.getExceptions:()Ljava/util/List;
            astore 6 /* exceptions */
        start local 6 // java.util.List exceptions
        13: .line 93
            aload 6 /* exceptions */
            ifnull 18
        14: .line 94
            aload 6 /* exceptions */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8
            goto 17
      StackMap locals: org.apache.http.conn.util.PublicSuffixMatcher java.util.Collection org.apache.http.conn.util.PublicSuffixList java.util.Iterator org.apache.http.conn.util.DomainType java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        15: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* exception */
        start local 7 // java.lang.String exception
        16: .line 95
            aload 0 /* this */
            getfield org.apache.http.conn.util.PublicSuffixMatcher.exceptions:Ljava/util/Map;
            aload 7 /* exception */
            aload 4 /* domainType */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 7 // java.lang.String exception
        17: .line 94
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        end local 6 // java.util.List exceptions
        end local 5 // java.util.List rules
        end local 4 // org.apache.http.conn.util.DomainType domainType
        end local 2 // org.apache.http.conn.util.PublicSuffixList list
        18: .line 86
      StackMap locals: org.apache.http.conn.util.PublicSuffixMatcher java.util.Collection top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        19: .line 99
            return
        end local 1 // java.util.Collection lists
        end local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   20     0        this  Lorg/apache/http/conn/util/PublicSuffixMatcher;
            0   20     1       lists  Ljava/util/Collection<Lorg/apache/http/conn/util/PublicSuffixList;>;
            6   18     2        list  Lorg/apache/http/conn/util/PublicSuffixList;
            7   18     4  domainType  Lorg/apache/http/conn/util/DomainType;
            8   18     5       rules  Ljava/util/List<Ljava/lang/String;>;
           10   11     6        rule  Ljava/lang/String;
           13   18     6  exceptions  Ljava/util/List<Ljava/lang/String;>;
           16   17     7   exception  Ljava/lang/String;
    Signature: (Ljava/util/Collection<Lorg/apache/http/conn/util/PublicSuffixList;>;)V
    MethodParameters:
       Name  Flags
      lists  final

  private static boolean hasEntry(java.util.Map<java.lang.String, org.apache.http.conn.util.DomainType>, java.lang.String, org.apache.http.conn.util.DomainType);
    descriptor: (Ljava/util/Map;Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // java.util.Map map
        start local 1 // java.lang.String rule
        start local 2 // org.apache.http.conn.util.DomainType expectedType
         0: .line 102
            aload 0 /* map */
            ifnonnull 2
         1: .line 103
            iconst_0
            ireturn
         2: .line 105
      StackMap locals:
      StackMap stack:
            aload 0 /* map */
            aload 1 /* rule */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.http.conn.util.DomainType
            astore 3 /* domainType */
        start local 3 // org.apache.http.conn.util.DomainType domainType
         3: .line 106
            aload 3 /* domainType */
            ifnonnull 4
            iconst_0
            goto 6
      StackMap locals: org.apache.http.conn.util.DomainType
      StackMap stack:
         4: aload 2 /* expectedType */
            ifnull 5
            aload 3 /* domainType */
            aload 2 /* expectedType */
            invokevirtual org.apache.http.conn.util.DomainType.equals:(Ljava/lang/Object;)Z
            ifne 5
            iconst_0
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_1
      StackMap locals:
      StackMap stack: int
         6: ireturn
        end local 3 // org.apache.http.conn.util.DomainType domainType
        end local 2 // org.apache.http.conn.util.DomainType expectedType
        end local 1 // java.lang.String rule
        end local 0 // java.util.Map map
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0           map  Ljava/util/Map<Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;>;
            0    7     1          rule  Ljava/lang/String;
            0    7     2  expectedType  Lorg/apache/http/conn/util/DomainType;
            3    7     3    domainType  Lorg/apache/http/conn/util/DomainType;
    Signature: (Ljava/util/Map<Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;>;Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Z
    MethodParameters:
              Name  Flags
      map           final
      rule          final
      expectedType  final

  private boolean hasRule(java.lang.String, org.apache.http.conn.util.DomainType);
    descriptor: (Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
        start local 1 // java.lang.String rule
        start local 2 // org.apache.http.conn.util.DomainType expectedType
         0: .line 110
            aload 0 /* this */
            getfield org.apache.http.conn.util.PublicSuffixMatcher.rules:Ljava/util/Map;
            aload 1 /* rule */
            aload 2 /* expectedType */
            invokestatic org.apache.http.conn.util.PublicSuffixMatcher.hasEntry:(Ljava/util/Map;Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Z
            ireturn
        end local 2 // org.apache.http.conn.util.DomainType expectedType
        end local 1 // java.lang.String rule
        end local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/apache/http/conn/util/PublicSuffixMatcher;
            0    1     1          rule  Ljava/lang/String;
            0    1     2  expectedType  Lorg/apache/http/conn/util/DomainType;
    MethodParameters:
              Name  Flags
      rule          final
      expectedType  final

  private boolean hasException(java.lang.String, org.apache.http.conn.util.DomainType);
    descriptor: (Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
        start local 1 // java.lang.String exception
        start local 2 // org.apache.http.conn.util.DomainType expectedType
         0: .line 114
            aload 0 /* this */
            getfield org.apache.http.conn.util.PublicSuffixMatcher.exceptions:Ljava/util/Map;
            aload 1 /* exception */
            aload 2 /* expectedType */
            invokestatic org.apache.http.conn.util.PublicSuffixMatcher.hasEntry:(Ljava/util/Map;Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Z
            ireturn
        end local 2 // org.apache.http.conn.util.DomainType expectedType
        end local 1 // java.lang.String exception
        end local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/apache/http/conn/util/PublicSuffixMatcher;
            0    1     1     exception  Ljava/lang/String;
            0    1     2  expectedType  Lorg/apache/http/conn/util/DomainType;
    MethodParameters:
              Name  Flags
      exception     final
      expectedType  final

  public java.lang.String getDomainRoot(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
        start local 1 // java.lang.String domain
         0: .line 125
            aload 0 /* this */
            aload 1 /* domain */
            aconst_null
            invokevirtual org.apache.http.conn.util.PublicSuffixMatcher.getDomainRoot:(Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String domain
        end local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/http/conn/util/PublicSuffixMatcher;
            0    1     1  domain  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      domain  final

  public java.lang.String getDomainRoot(java.lang.String, org.apache.http.conn.util.DomainType);
    descriptor: (Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
        start local 1 // java.lang.String domain
        start local 2 // org.apache.http.conn.util.DomainType expectedType
         0: .line 139
            aload 1 /* domain */
            ifnonnull 2
         1: .line 140
            aconst_null
            areturn
         2: .line 142
      StackMap locals:
      StackMap stack:
            aload 1 /* domain */
            ldc "."
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 4
         3: .line 143
            aconst_null
            areturn
         4: .line 145
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 3 /* domainName */
        start local 3 // java.lang.String domainName
         5: .line 146
            aload 1 /* domain */
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            astore 4 /* segment */
        start local 4 // java.lang.String segment
         6: .line 147
            goto 21
         7: .line 150
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 4 /* segment */
            invokestatic java.net.IDN.toUnicode:(Ljava/lang/String;)Ljava/lang/String;
            aload 2 /* expectedType */
            invokevirtual org.apache.http.conn.util.PublicSuffixMatcher.hasException:(Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Z
            ifeq 9
         8: .line 151
            aload 4 /* segment */
            areturn
         9: .line 154
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* segment */
            invokestatic java.net.IDN.toUnicode:(Ljava/lang/String;)Ljava/lang/String;
            aload 2 /* expectedType */
            invokevirtual org.apache.http.conn.util.PublicSuffixMatcher.hasRule:(Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Z
            ifeq 11
        10: .line 155
            goto 22
        11: .line 158
      StackMap locals:
      StackMap stack:
            aload 4 /* segment */
            bipush 46
            invokevirtual java.lang.String.indexOf:(I)I
            istore 5 /* nextdot */
        start local 5 // int nextdot
        12: .line 159
            iload 5 /* nextdot */
            iconst_m1
            if_icmpeq 13
            aload 4 /* segment */
            iload 5 /* nextdot */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            goto 14
      StackMap locals: int
      StackMap stack:
        13: aconst_null
      StackMap locals:
      StackMap stack: java.lang.String
        14: astore 6 /* nextSegment */
        start local 6 // java.lang.String nextSegment
        15: .line 161
            aload 6 /* nextSegment */
            ifnull 18
        16: .line 162
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "*."
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* nextSegment */
            invokestatic java.net.IDN.toUnicode:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 2 /* expectedType */
            invokevirtual org.apache.http.conn.util.PublicSuffixMatcher.hasRule:(Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Z
            ifeq 18
        17: .line 163
            goto 22
        18: .line 166
      StackMap locals: java.lang.String
      StackMap stack:
            iload 5 /* nextdot */
            iconst_m1
            if_icmpeq 20
        19: .line 167
            aload 4 /* segment */
            astore 3 /* domainName */
        20: .line 169
      StackMap locals:
      StackMap stack:
            aload 6 /* nextSegment */
            astore 4 /* segment */
        end local 6 // java.lang.String nextSegment
        end local 5 // int nextdot
        21: .line 147
      StackMap locals:
      StackMap stack:
            aload 4 /* segment */
            ifnonnull 7
        22: .line 171
      StackMap locals:
      StackMap stack:
            aload 3 /* domainName */
            areturn
        end local 4 // java.lang.String segment
        end local 3 // java.lang.String domainName
        end local 2 // org.apache.http.conn.util.DomainType expectedType
        end local 1 // java.lang.String domain
        end local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0          this  Lorg/apache/http/conn/util/PublicSuffixMatcher;
            0   23     1        domain  Ljava/lang/String;
            0   23     2  expectedType  Lorg/apache/http/conn/util/DomainType;
            5   23     3    domainName  Ljava/lang/String;
            6   23     4       segment  Ljava/lang/String;
           12   21     5       nextdot  I
           15   21     6   nextSegment  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      domain        final
      expectedType  final

  public boolean matches(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
        start local 1 // java.lang.String domain
         0: .line 178
            aload 0 /* this */
            aload 1 /* domain */
            aconst_null
            invokevirtual org.apache.http.conn.util.PublicSuffixMatcher.matches:(Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Z
            ireturn
        end local 1 // java.lang.String domain
        end local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/http/conn/util/PublicSuffixMatcher;
            0    1     1  domain  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      domain  final

  public boolean matches(java.lang.String, org.apache.http.conn.util.DomainType);
    descriptor: (Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
        start local 1 // java.lang.String domain
        start local 2 // org.apache.http.conn.util.DomainType expectedType
         0: .line 191
            aload 1 /* domain */
            ifnonnull 2
         1: .line 192
            iconst_0
            ireturn
         2: .line 194
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
         3: .line 195
            aload 1 /* domain */
            ldc "."
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 4
            aload 1 /* domain */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            goto 5
      StackMap locals:
      StackMap stack: org.apache.http.conn.util.PublicSuffixMatcher
         4: aload 1 /* domain */
      StackMap locals: org.apache.http.conn.util.PublicSuffixMatcher java.lang.String org.apache.http.conn.util.DomainType
      StackMap stack: org.apache.http.conn.util.PublicSuffixMatcher java.lang.String
         5: aload 2 /* expectedType */
         6: .line 194
            invokevirtual org.apache.http.conn.util.PublicSuffixMatcher.getDomainRoot:(Ljava/lang/String;Lorg/apache/http/conn/util/DomainType;)Ljava/lang/String;
            astore 3 /* domainRoot */
        start local 3 // java.lang.String domainRoot
         7: .line 196
            aload 3 /* domainRoot */
            ifnonnull 8
            iconst_1
            ireturn
      StackMap locals: java.lang.String
      StackMap stack:
         8: iconst_0
            ireturn
        end local 3 // java.lang.String domainRoot
        end local 2 // org.apache.http.conn.util.DomainType expectedType
        end local 1 // java.lang.String domain
        end local 0 // org.apache.http.conn.util.PublicSuffixMatcher this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lorg/apache/http/conn/util/PublicSuffixMatcher;
            0    9     1        domain  Ljava/lang/String;
            0    9     2  expectedType  Lorg/apache/http/conn/util/DomainType;
            7    9     3    domainRoot  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      domain        final
      expectedType  final
}
SourceFile: "PublicSuffixMatcher.java"
    RuntimeInvisibleAnnotations: 
      org.apache.http.annotation.Contract(threading = org.apache.http.annotation.ThreadingBehavior.SAFE:Lorg/apache/http/annotation/ThreadingBehavior;)