public final class com.mongodb.connection.ClusterSettings
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.mongodb.connection.ClusterSettings
  super_class: java.lang.Object
{
  private final java.lang.String srvHost;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.List<com.mongodb.ServerAddress> hosts;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lcom/mongodb/ServerAddress;>;

  private final com.mongodb.connection.ClusterConnectionMode mode;
    descriptor: Lcom/mongodb/connection/ClusterConnectionMode;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.mongodb.connection.ClusterType requiredClusterType;
    descriptor: Lcom/mongodb/connection/ClusterType;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String requiredReplicaSetName;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.mongodb.selector.ServerSelector serverSelector;
    descriptor: Lcom/mongodb/selector/ServerSelector;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String description;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final long localThresholdMS;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final long serverSelectionTimeoutMS;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private final java.util.List<com.mongodb.event.ClusterListener> clusterListeners;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lcom/mongodb/event/ClusterListener;>;

  public static com.mongodb.connection.ClusterSettings$Builder builder();
    descriptor: ()Lcom/mongodb/connection/ClusterSettings$Builder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 70
            new com.mongodb.connection.ClusterSettings$Builder
            dup
            invokespecial com.mongodb.connection.ClusterSettings$Builder.<init>:()V
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static com.mongodb.connection.ClusterSettings$Builder builder(com.mongodb.connection.ClusterSettings);
    descriptor: (Lcom/mongodb/connection/ClusterSettings;)Lcom/mongodb/connection/ClusterSettings$Builder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ClusterSettings clusterSettings
         0: .line 81
            invokestatic com.mongodb.connection.ClusterSettings.builder:()Lcom/mongodb/connection/ClusterSettings$Builder;
            aload 0 /* clusterSettings */
            invokevirtual com.mongodb.connection.ClusterSettings$Builder.applySettings:(Lcom/mongodb/connection/ClusterSettings;)Lcom/mongodb/connection/ClusterSettings$Builder;
            areturn
        end local 0 // com.mongodb.connection.ClusterSettings clusterSettings
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0  clusterSettings  Lcom/mongodb/connection/ClusterSettings;
    MethodParameters:
                 Name  Flags
      clusterSettings  final

  public java.lang.String getDescription();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ClusterSettings this
         0: .line 359
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.description:Ljava/lang/String;
            areturn
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/mongodb/connection/ClusterSettings;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public java.lang.String getSrvHost();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ClusterSettings this
         0: .line 368
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.srvHost:Ljava/lang/String;
            areturn
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/mongodb/connection/ClusterSettings;

  public java.util.List<com.mongodb.ServerAddress> getHosts();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ClusterSettings this
         0: .line 377
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.hosts:Ljava/util/List;
            areturn
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/mongodb/connection/ClusterSettings;
    Signature: ()Ljava/util/List<Lcom/mongodb/ServerAddress;>;

  public com.mongodb.connection.ClusterConnectionMode getMode();
    descriptor: ()Lcom/mongodb/connection/ClusterConnectionMode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ClusterSettings this
         0: .line 386
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.mode:Lcom/mongodb/connection/ClusterConnectionMode;
            areturn
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/mongodb/connection/ClusterSettings;

  public com.mongodb.connection.ClusterType getRequiredClusterType();
    descriptor: ()Lcom/mongodb/connection/ClusterType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ClusterSettings this
         0: .line 395
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.requiredClusterType:Lcom/mongodb/connection/ClusterType;
            areturn
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/mongodb/connection/ClusterSettings;

  public java.lang.String getRequiredReplicaSetName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ClusterSettings this
         0: .line 404
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.requiredReplicaSetName:Ljava/lang/String;
            areturn
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/mongodb/connection/ClusterSettings;

  public com.mongodb.selector.ServerSelector getServerSelector();
    descriptor: ()Lcom/mongodb/selector/ServerSelector;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ClusterSettings this
         0: .line 433
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.serverSelector:Lcom/mongodb/selector/ServerSelector;
            areturn
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/mongodb/connection/ClusterSettings;

  public long getServerSelectionTimeout(java.util.concurrent.TimeUnit);
    descriptor: (Ljava/util/concurrent/TimeUnit;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.mongodb.connection.ClusterSettings this
        start local 1 // java.util.concurrent.TimeUnit timeUnit
         0: .line 447
            aload 1 /* timeUnit */
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.serverSelectionTimeoutMS:J
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual java.util.concurrent.TimeUnit.convert:(JLjava/util/concurrent/TimeUnit;)J
            lreturn
        end local 1 // java.util.concurrent.TimeUnit timeUnit
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/mongodb/connection/ClusterSettings;
            0    1     1  timeUnit  Ljava/util/concurrent/TimeUnit;
    MethodParameters:
          Name  Flags
      timeUnit  final

  public long getLocalThreshold(java.util.concurrent.TimeUnit);
    descriptor: (Ljava/util/concurrent/TimeUnit;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.mongodb.connection.ClusterSettings this
        start local 1 // java.util.concurrent.TimeUnit timeUnit
         0: .line 469
            aload 1 /* timeUnit */
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.localThresholdMS:J
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual java.util.concurrent.TimeUnit.convert:(JLjava/util/concurrent/TimeUnit;)J
            lreturn
        end local 1 // java.util.concurrent.TimeUnit timeUnit
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/mongodb/connection/ClusterSettings;
            0    1     1  timeUnit  Ljava/util/concurrent/TimeUnit;
    MethodParameters:
          Name  Flags
      timeUnit  final

  public int getMaxWaitQueueSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ClusterSettings this
         0: .line 481
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.maxWaitQueueSize:I
            ireturn
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/mongodb/connection/ClusterSettings;

  public java.util.List<com.mongodb.event.ClusterListener> getClusterListeners();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ClusterSettings this
         0: .line 491
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.clusterListeners:Ljava/util/List;
            areturn
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/mongodb/connection/ClusterSettings;
    Signature: ()Ljava/util/List<Lcom/mongodb/event/ClusterListener;>;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.mongodb.connection.ClusterSettings this
        start local 1 // java.lang.Object o
         0: .line 496
            aload 0 /* this */
            aload 1 /* o */
            if_acmpne 2
         1: .line 497
            iconst_1
            ireturn
         2: .line 499
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            ifnull 3
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 1 /* o */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            if_acmpeq 4
         3: .line 500
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         4: .line 503
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            checkcast com.mongodb.connection.ClusterSettings
            astore 2 /* that */
        start local 2 // com.mongodb.connection.ClusterSettings that
         5: .line 505
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.maxWaitQueueSize:I
            aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.maxWaitQueueSize:I
            if_icmpeq 7
         6: .line 506
            iconst_0
            ireturn
         7: .line 508
      StackMap locals: com.mongodb.connection.ClusterSettings
      StackMap stack:
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.serverSelectionTimeoutMS:J
            aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.serverSelectionTimeoutMS:J
            lcmp
            ifeq 9
         8: .line 509
            iconst_0
            ireturn
         9: .line 511
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.localThresholdMS:J
            aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.localThresholdMS:J
            lcmp
            ifeq 11
        10: .line 512
            iconst_0
            ireturn
        11: .line 514
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.description:Ljava/lang/String;
            ifnull 12
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.description:Ljava/lang/String;
            aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.description:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 14
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.description:Ljava/lang/String;
            ifnull 14
        13: .line 515
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        14: .line 517
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.srvHost:Ljava/lang/String;
            ifnull 15
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.srvHost:Ljava/lang/String;
            aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.srvHost:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 17
            goto 16
      StackMap locals:
      StackMap stack:
        15: aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.srvHost:Ljava/lang/String;
            ifnull 17
        16: .line 518
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        17: .line 520
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.hosts:Ljava/util/List;
            aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.hosts:Ljava/util/List;
            invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
            ifne 19
        18: .line 521
            iconst_0
            ireturn
        19: .line 523
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.mode:Lcom/mongodb/connection/ClusterConnectionMode;
            aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.mode:Lcom/mongodb/connection/ClusterConnectionMode;
            if_acmpeq 21
        20: .line 524
            iconst_0
            ireturn
        21: .line 526
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.requiredClusterType:Lcom/mongodb/connection/ClusterType;
            aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.requiredClusterType:Lcom/mongodb/connection/ClusterType;
            if_acmpeq 23
        22: .line 527
            iconst_0
            ireturn
        23: .line 529
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.requiredReplicaSetName:Ljava/lang/String;
            ifnull 24
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.requiredReplicaSetName:Ljava/lang/String;
            aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.requiredReplicaSetName:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 26
            goto 25
        24: .line 530
      StackMap locals:
      StackMap stack:
            aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.requiredReplicaSetName:Ljava/lang/String;
            ifnull 26
        25: .line 531
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        26: .line 533
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.serverSelector:Lcom/mongodb/selector/ServerSelector;
            ifnull 27
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.serverSelector:Lcom/mongodb/selector/ServerSelector;
            aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.serverSelector:Lcom/mongodb/selector/ServerSelector;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 29
            goto 28
      StackMap locals:
      StackMap stack:
        27: aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.serverSelector:Lcom/mongodb/selector/ServerSelector;
            ifnull 29
        28: .line 534
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        29: .line 536
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.clusterListeners:Ljava/util/List;
            aload 2 /* that */
            getfield com.mongodb.connection.ClusterSettings.clusterListeners:Ljava/util/List;
            invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
            ifne 31
        30: .line 537
            iconst_0
            ireturn
        31: .line 540
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // com.mongodb.connection.ClusterSettings that
        end local 1 // java.lang.Object o
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   32     0  this  Lcom/mongodb/connection/ClusterSettings;
            0   32     1     o  Ljava/lang/Object;
            5   32     2  that  Lcom/mongodb/connection/ClusterSettings;
    MethodParameters:
      Name  Flags
      o     final

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // com.mongodb.connection.ClusterSettings this
         0: .line 545
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.hosts:Ljava/util/List;
            invokeinterface java.util.List.hashCode:()I
            istore 1 /* result */
        start local 1 // int result
         1: .line 546
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.srvHost:Ljava/lang/String;
            ifnull 2
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.srvHost:Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
            goto 3
      StackMap locals: com.mongodb.connection.ClusterSettings int
      StackMap stack: int
         2: iconst_0
      StackMap locals: com.mongodb.connection.ClusterSettings int
      StackMap stack: int int
         3: iadd
            istore 1 /* result */
         4: .line 547
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.mode:Lcom/mongodb/connection/ClusterConnectionMode;
            invokevirtual com.mongodb.connection.ClusterConnectionMode.hashCode:()I
            iadd
            istore 1 /* result */
         5: .line 548
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.requiredClusterType:Lcom/mongodb/connection/ClusterType;
            invokevirtual com.mongodb.connection.ClusterType.hashCode:()I
            iadd
            istore 1 /* result */
         6: .line 549
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.requiredReplicaSetName:Ljava/lang/String;
            ifnull 7
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.requiredReplicaSetName:Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
            goto 8
      StackMap locals:
      StackMap stack: int
         7: iconst_0
      StackMap locals: com.mongodb.connection.ClusterSettings int
      StackMap stack: int int
         8: iadd
            istore 1 /* result */
         9: .line 550
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.serverSelector:Lcom/mongodb/selector/ServerSelector;
            ifnull 10
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.serverSelector:Lcom/mongodb/selector/ServerSelector;
            invokevirtual java.lang.Object.hashCode:()I
            goto 11
      StackMap locals:
      StackMap stack: int
        10: iconst_0
      StackMap locals: com.mongodb.connection.ClusterSettings int
      StackMap stack: int int
        11: iadd
            istore 1 /* result */
        12: .line 551
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.description:Ljava/lang/String;
            ifnull 13
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.description:Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
            goto 14
      StackMap locals:
      StackMap stack: int
        13: iconst_0
      StackMap locals: com.mongodb.connection.ClusterSettings int
      StackMap stack: int int
        14: iadd
            istore 1 /* result */
        15: .line 552
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.serverSelectionTimeoutMS:J
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.serverSelectionTimeoutMS:J
            bipush 32
            lushr
            lxor
            l2i
            iadd
            istore 1 /* result */
        16: .line 553
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.localThresholdMS:J
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.localThresholdMS:J
            bipush 32
            lushr
            lxor
            l2i
            iadd
            istore 1 /* result */
        17: .line 554
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.maxWaitQueueSize:I
            iadd
            istore 1 /* result */
        18: .line 555
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.clusterListeners:Ljava/util/List;
            invokeinterface java.util.List.hashCode:()I
            iadd
            istore 1 /* result */
        19: .line 556
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   20     0    this  Lcom/mongodb/connection/ClusterSettings;
            1   20     1  result  I

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ClusterSettings this
         0: .line 561
            new java.lang.StringBuilder
            dup
            ldc "{"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 562
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.hosts:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 2
            ldc ""
            goto 3
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         2: new java.lang.StringBuilder
            dup
            ldc "hosts="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.hosts:Ljava/util/List;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: com.mongodb.connection.ClusterSettings
      StackMap stack: java.lang.StringBuilder java.lang.String
         3: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 563
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.srvHost:Ljava/lang/String;
            ifnonnull 5
            ldc ""
            goto 6
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         5: new java.lang.StringBuilder
            dup
            ldc ", srvHost="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.srvHost:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: com.mongodb.connection.ClusterSettings
      StackMap stack: java.lang.StringBuilder java.lang.String
         6: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 564
            ldc ", mode="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.mode:Lcom/mongodb/connection/ClusterConnectionMode;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         8: .line 565
            ldc ", requiredClusterType="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.requiredClusterType:Lcom/mongodb/connection/ClusterType;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         9: .line 566
            ldc ", requiredReplicaSetName='"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.requiredReplicaSetName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 39
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        10: .line 567
            ldc ", serverSelector='"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.serverSelector:Lcom/mongodb/selector/ServerSelector;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            bipush 39
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        11: .line 568
            ldc ", clusterListeners='"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.clusterListeners:Ljava/util/List;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            bipush 39
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        12: .line 569
            ldc ", serverSelectionTimeout='"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.serverSelectionTimeoutMS:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " ms"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 39
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        13: .line 570
            ldc ", localThreshold='"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.serverSelectionTimeoutMS:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " ms"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 39
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        14: .line 571
            ldc ", maxWaitQueueSize="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.maxWaitQueueSize:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        15: .line 572
            ldc ", description='"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.description:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 39
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        16: .line 573
            bipush 125
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        17: .line 561
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0  this  Lcom/mongodb/connection/ClusterSettings;

  public java.lang.String getShortDescription();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ClusterSettings this
         0: .line 582
            new java.lang.StringBuilder
            dup
            ldc "{"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 583
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.hosts:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 2
            ldc ""
            goto 3
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         2: new java.lang.StringBuilder
            dup
            ldc "hosts="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.hosts:Ljava/util/List;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: com.mongodb.connection.ClusterSettings
      StackMap stack: java.lang.StringBuilder java.lang.String
         3: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 584
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.srvHost:Ljava/lang/String;
            ifnonnull 5
            ldc ""
            goto 6
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         5: new java.lang.StringBuilder
            dup
            ldc ", srvHost="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.srvHost:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: com.mongodb.connection.ClusterSettings
      StackMap stack: java.lang.StringBuilder java.lang.String
         6: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 585
            ldc ", mode="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.mode:Lcom/mongodb/connection/ClusterConnectionMode;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         8: .line 586
            ldc ", requiredClusterType="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.requiredClusterType:Lcom/mongodb/connection/ClusterType;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         9: .line 587
            ldc ", serverSelectionTimeout='"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.serverSelectionTimeoutMS:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " ms"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 39
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        10: .line 588
            ldc ", maxWaitQueueSize="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.maxWaitQueueSize:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        11: .line 589
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.requiredReplicaSetName:Ljava/lang/String;
            ifnonnull 12
            ldc ""
            goto 13
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
        12: new java.lang.StringBuilder
            dup
            ldc ", requiredReplicaSetName='"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.requiredReplicaSetName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 39
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: com.mongodb.connection.ClusterSettings
      StackMap stack: java.lang.StringBuilder java.lang.String
        13: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        14: .line 590
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.description:Ljava/lang/String;
            ifnonnull 15
            ldc ""
            goto 16
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
        15: new java.lang.StringBuilder
            dup
            ldc ", description='"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.description:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 39
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: com.mongodb.connection.ClusterSettings
      StackMap stack: java.lang.StringBuilder java.lang.String
        16: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        17: .line 591
            bipush 125
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        18: .line 582
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lcom/mongodb/connection/ClusterSettings;

  private void <init>(com.mongodb.connection.ClusterSettings$Builder);
    descriptor: (Lcom/mongodb/connection/ClusterSettings$Builder;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=2, args_size=2
        start local 0 // com.mongodb.connection.ClusterSettings this
        start local 1 // com.mongodb.connection.ClusterSettings$Builder builder
         0: .line 594
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 596
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.srvHost:Ljava/lang/String;
            ifnull 8
         2: .line 597
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.srvHost:Ljava/lang/String;
            ldc ":"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 4
         3: .line 598
            new java.lang.IllegalArgumentException
            dup
            ldc "The srvHost can not contain a host name that specifies a port"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 601
      StackMap locals: com.mongodb.connection.ClusterSettings com.mongodb.connection.ClusterSettings$Builder
      StackMap stack:
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.hosts:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.mongodb.ServerAddress
            invokevirtual com.mongodb.ServerAddress.getHost:()Ljava/lang/String;
            ldc "\\."
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            arraylength
            iconst_3
            if_icmpge 8
         5: .line 602
            new com.mongodb.MongoClientException
            dup
            ldc "An SRV host name '%s' was provided that does not contain at least three parts. It must contain a hostname, domain name and a top level domain."
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
         6: .line 603
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.hosts:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.mongodb.ServerAddress
            invokevirtual com.mongodb.ServerAddress.getHost:()Ljava/lang/String;
            aastore
         7: .line 602
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial com.mongodb.MongoClientException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 607
      StackMap locals:
      StackMap stack:
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.hosts:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmple 10
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.requiredClusterType:Lcom/mongodb/connection/ClusterType;
            getstatic com.mongodb.connection.ClusterType.STANDALONE:Lcom/mongodb/connection/ClusterType;
            if_acmpne 10
         9: .line 608
            new java.lang.IllegalArgumentException
            dup
            ldc "Multiple hosts cannot be specified when using ClusterType.STANDALONE."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 611
      StackMap locals:
      StackMap stack:
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.mode:Lcom/mongodb/connection/ClusterConnectionMode;
            ifnull 12
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.mode:Lcom/mongodb/connection/ClusterConnectionMode;
            getstatic com.mongodb.connection.ClusterConnectionMode.SINGLE:Lcom/mongodb/connection/ClusterConnectionMode;
            if_acmpne 12
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.hosts:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmple 12
        11: .line 612
            new java.lang.IllegalArgumentException
            dup
            ldc "Can not directly connect to more than one server"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 615
      StackMap locals:
      StackMap stack:
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.requiredReplicaSetName:Ljava/lang/String;
            ifnull 18
        13: .line 616
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.requiredClusterType:Lcom/mongodb/connection/ClusterType;
            getstatic com.mongodb.connection.ClusterType.UNKNOWN:Lcom/mongodb/connection/ClusterType;
            if_acmpne 16
        14: .line 617
            aload 1 /* builder */
            getstatic com.mongodb.connection.ClusterType.REPLICA_SET:Lcom/mongodb/connection/ClusterType;
            putfield com.mongodb.connection.ClusterSettings$Builder.requiredClusterType:Lcom/mongodb/connection/ClusterType;
        15: .line 618
            goto 18
      StackMap locals:
      StackMap stack:
        16: aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.requiredClusterType:Lcom/mongodb/connection/ClusterType;
            getstatic com.mongodb.connection.ClusterType.REPLICA_SET:Lcom/mongodb/connection/ClusterType;
            if_acmpeq 18
        17: .line 619
            new java.lang.IllegalArgumentException
            dup
            ldc "When specifying a replica set name, only ClusterType.UNKNOWN and ClusterType.REPLICA_SET are valid."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        18: .line 624
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.description:Ljava/lang/String;
            putfield com.mongodb.connection.ClusterSettings.description:Ljava/lang/String;
        19: .line 625
            aload 0 /* this */
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.srvHost:Ljava/lang/String;
            putfield com.mongodb.connection.ClusterSettings.srvHost:Ljava/lang/String;
        20: .line 626
            aload 0 /* this */
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.hosts:Ljava/util/List;
            putfield com.mongodb.connection.ClusterSettings.hosts:Ljava/util/List;
        21: .line 627
            aload 0 /* this */
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.mode:Lcom/mongodb/connection/ClusterConnectionMode;
            ifnull 22
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.mode:Lcom/mongodb/connection/ClusterConnectionMode;
            goto 24
      StackMap locals:
      StackMap stack: com.mongodb.connection.ClusterSettings
        22: aload 0 /* this */
            getfield com.mongodb.connection.ClusterSettings.hosts:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 23
            getstatic com.mongodb.connection.ClusterConnectionMode.SINGLE:Lcom/mongodb/connection/ClusterConnectionMode;
            goto 24
      StackMap locals:
      StackMap stack: com.mongodb.connection.ClusterSettings
        23: getstatic com.mongodb.connection.ClusterConnectionMode.MULTIPLE:Lcom/mongodb/connection/ClusterConnectionMode;
      StackMap locals: com.mongodb.connection.ClusterSettings com.mongodb.connection.ClusterSettings$Builder
      StackMap stack: com.mongodb.connection.ClusterSettings com.mongodb.connection.ClusterConnectionMode
        24: putfield com.mongodb.connection.ClusterSettings.mode:Lcom/mongodb/connection/ClusterConnectionMode;
        25: .line 628
            aload 0 /* this */
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.requiredReplicaSetName:Ljava/lang/String;
            putfield com.mongodb.connection.ClusterSettings.requiredReplicaSetName:Ljava/lang/String;
        26: .line 629
            aload 0 /* this */
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.requiredClusterType:Lcom/mongodb/connection/ClusterType;
            putfield com.mongodb.connection.ClusterSettings.requiredClusterType:Lcom/mongodb/connection/ClusterType;
        27: .line 630
            aload 0 /* this */
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.localThresholdMS:J
            putfield com.mongodb.connection.ClusterSettings.localThresholdMS:J
        28: .line 631
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual com.mongodb.connection.ClusterSettings$Builder.packServerSelector:()Lcom/mongodb/selector/ServerSelector;
            putfield com.mongodb.connection.ClusterSettings.serverSelector:Lcom/mongodb/selector/ServerSelector;
        29: .line 632
            aload 0 /* this */
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.serverSelectionTimeoutMS:J
            putfield com.mongodb.connection.ClusterSettings.serverSelectionTimeoutMS:J
        30: .line 633
            aload 0 /* this */
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.maxWaitQueueSize:I
            putfield com.mongodb.connection.ClusterSettings.maxWaitQueueSize:I
        31: .line 634
            aload 0 /* this */
            aload 1 /* builder */
            getfield com.mongodb.connection.ClusterSettings$Builder.clusterListeners:Ljava/util/List;
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            putfield com.mongodb.connection.ClusterSettings.clusterListeners:Ljava/util/List;
        32: .line 635
            return
        end local 1 // com.mongodb.connection.ClusterSettings$Builder builder
        end local 0 // com.mongodb.connection.ClusterSettings this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   33     0     this  Lcom/mongodb/connection/ClusterSettings;
            0   33     1  builder  Lcom/mongodb/connection/ClusterSettings$Builder;
    MethodParameters:
         Name  Flags
      builder  final
}
SourceFile: "ClusterSettings.java"
NestMembers:
  com.mongodb.connection.ClusterSettings$Builder
InnerClasses:
  public final Builder = com.mongodb.connection.ClusterSettings$Builder of com.mongodb.connection.ClusterSettings
    RuntimeVisibleAnnotations: 
      com.mongodb.annotations.Immutable()