public class com.mongodb.connection.ServerVersion implements java.lang.Comparable<com.mongodb.connection.ServerVersion>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.mongodb.connection.ServerVersion
  super_class: java.lang.Object
{
  private final java.util.List<java.lang.Integer> versionList;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Ljava/lang/Integer;>;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ServerVersion this
         0: .line 39
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 40
            aload 0 /* this */
            iconst_3
            anewarray java.lang.Integer
            dup
            iconst_0
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            putfield com.mongodb.connection.ServerVersion.versionList:Ljava/util/List;
         2: .line 41
            return
        end local 0 // com.mongodb.connection.ServerVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/mongodb/connection/ServerVersion;

  public void <init>(java.util.List<java.lang.Integer>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.mongodb.connection.ServerVersion this
        start local 1 // java.util.List versionList
         0: .line 48
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 49
            ldc "versionList"
            aload 1 /* versionList */
            invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 50
            ldc "version array has three elements"
            aload 1 /* versionList */
            invokeinterface java.util.List.size:()I
            iconst_3
            if_icmpne 3
            iconst_1
            goto 4
      StackMap locals: com.mongodb.connection.ServerVersion java.util.List
      StackMap stack: java.lang.String
         3: iconst_0
      StackMap locals: com.mongodb.connection.ServerVersion java.util.List
      StackMap stack: java.lang.String int
         4: invokestatic com.mongodb.assertions.Assertions.isTrue:(Ljava/lang/String;Z)V
         5: .line 51
            aload 0 /* this */
            new java.util.ArrayList
            dup
            aload 1 /* versionList */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            putfield com.mongodb.connection.ServerVersion.versionList:Ljava/util/List;
         6: .line 52
            return
        end local 1 // java.util.List versionList
        end local 0 // com.mongodb.connection.ServerVersion this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lcom/mongodb/connection/ServerVersion;
            0    7     1  versionList  Ljava/util/List<Ljava/lang/Integer;>;
    Signature: (Ljava/util/List<Ljava/lang/Integer;>;)V
    MethodParameters:
             Name  Flags
      versionList  final

  public void <init>(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.mongodb.connection.ServerVersion this
        start local 1 // int majorVersion
        start local 2 // int minorVersion
         0: .line 61
            aload 0 /* this */
            iconst_3
            anewarray java.lang.Integer
            dup
            iconst_0
            iload 1 /* majorVersion */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            iload 2 /* minorVersion */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokespecial com.mongodb.connection.ServerVersion.<init>:(Ljava/util/List;)V
         1: .line 62
            return
        end local 2 // int minorVersion
        end local 1 // int majorVersion
        end local 0 // com.mongodb.connection.ServerVersion this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lcom/mongodb/connection/ServerVersion;
            0    2     1  majorVersion  I
            0    2     2  minorVersion  I
    MethodParameters:
              Name  Flags
      majorVersion  final
      minorVersion  final

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

  public int compareTo(com.mongodb.connection.ServerVersion);
    descriptor: (Lcom/mongodb/connection/ServerVersion;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.mongodb.connection.ServerVersion this
        start local 1 // com.mongodb.connection.ServerVersion o
         0: .line 75
            iconst_0
            istore 2 /* retVal */
        start local 2 // int retVal
         1: .line 76
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 7
         3: .line 77
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.mongodb.connection.ServerVersion.versionList:Ljava/util/List;
            iload 3 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.Integer
            aload 1 /* o */
            getfield com.mongodb.connection.ServerVersion.versionList:Ljava/util/List;
            iload 3 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.compareTo:(Ljava/lang/Integer;)I
            istore 2 /* retVal */
         4: .line 78
            iload 2 /* retVal */
            ifeq 6
         5: .line 79
            goto 8
         6: .line 76
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            aload 0 /* this */
            getfield com.mongodb.connection.ServerVersion.versionList:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 3
        end local 3 // int i
         8: .line 82
      StackMap locals:
      StackMap stack:
            iload 2 /* retVal */
            ireturn
        end local 2 // int retVal
        end local 1 // com.mongodb.connection.ServerVersion o
        end local 0 // com.mongodb.connection.ServerVersion this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lcom/mongodb/connection/ServerVersion;
            0    9     1       o  Lcom/mongodb/connection/ServerVersion;
            1    9     2  retVal  I
            2    8     3       i  I
    MethodParameters:
      Name  Flags
      o     final

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.mongodb.connection.ServerVersion this
        start local 1 // java.lang.Object o
         0: .line 88
            aload 0 /* this */
            aload 1 /* o */
            if_acmpne 2
         1: .line 89
            iconst_1
            ireturn
         2: .line 91
      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 92
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         4: .line 95
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            checkcast com.mongodb.connection.ServerVersion
            astore 2 /* that */
        start local 2 // com.mongodb.connection.ServerVersion that
         5: .line 97
            aload 0 /* this */
            getfield com.mongodb.connection.ServerVersion.versionList:Ljava/util/List;
            aload 2 /* that */
            getfield com.mongodb.connection.ServerVersion.versionList:Ljava/util/List;
            invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
            ifne 7
         6: .line 98
            iconst_0
            ireturn
         7: .line 101
      StackMap locals: com.mongodb.connection.ServerVersion
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // com.mongodb.connection.ServerVersion that
        end local 1 // java.lang.Object o
        end local 0 // com.mongodb.connection.ServerVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lcom/mongodb/connection/ServerVersion;
            0    8     1     o  Ljava/lang/Object;
            5    8     2  that  Lcom/mongodb/connection/ServerVersion;
    MethodParameters:
      Name  Flags
      o     final

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ServerVersion this
         0: .line 106
            aload 0 /* this */
            getfield com.mongodb.connection.ServerVersion.versionList:Ljava/util/List;
            invokeinterface java.util.List.hashCode:()I
            ireturn
        end local 0 // com.mongodb.connection.ServerVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/mongodb/connection/ServerVersion;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.mongodb.connection.ServerVersion this
         0: .line 111
            new java.lang.StringBuilder
            dup
            ldc "ServerVersion{versionList="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 112
            aload 0 /* this */
            getfield com.mongodb.connection.ServerVersion.versionList:Ljava/util/List;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         2: .line 113
            bipush 125
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
         3: .line 111
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // com.mongodb.connection.ServerVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/mongodb/connection/ServerVersion;

  public int compareTo(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast com.mongodb.connection.ServerVersion
            invokevirtual com.mongodb.connection.ServerVersion.compareTo:(Lcom/mongodb/connection/ServerVersion;)I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Ljava/lang/Comparable<Lcom/mongodb/connection/ServerVersion;>;
SourceFile: "ServerVersion.java"