final class com.google.common.collect.RegularContiguousSet<C extends java.lang.Comparable> extends com.google.common.collect.ContiguousSet<C>
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.google.common.collect.RegularContiguousSet
  super_class: com.google.common.collect.ContiguousSet
{
  private final com.google.common.collect.Range<C> range;
    descriptor: Lcom/google/common/collect/Range;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lcom/google/common/collect/Range<TC;>;

  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  void <init>(com.google.common.collect.Range<C>, com.google.common.collect.DiscreteDomain<C>);
    descriptor: (Lcom/google/common/collect/Range;Lcom/google/common/collect/DiscreteDomain;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.google.common.collect.RegularContiguousSet this
        start local 1 // com.google.common.collect.Range range
        start local 2 // com.google.common.collect.DiscreteDomain domain
         0: .line 39
            aload 0 /* this */
            aload 2 /* domain */
            invokespecial com.google.common.collect.ContiguousSet.<init>:(Lcom/google/common/collect/DiscreteDomain;)V
         1: .line 40
            aload 0 /* this */
            aload 1 /* range */
            putfield com.google.common.collect.RegularContiguousSet.range:Lcom/google/common/collect/Range;
         2: .line 41
            return
        end local 2 // com.google.common.collect.DiscreteDomain domain
        end local 1 // com.google.common.collect.Range range
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
            0    3     1   range  Lcom/google/common/collect/Range<TC;>;
            0    3     2  domain  Lcom/google/common/collect/DiscreteDomain<TC;>;
    Signature: (Lcom/google/common/collect/Range<TC;>;Lcom/google/common/collect/DiscreteDomain<TC;>;)V
    MethodParameters:
        Name  Flags
      range   
      domain  

  private com.google.common.collect.ContiguousSet<C> intersectionInCurrentDomain(com.google.common.collect.Range<C>);
    descriptor: (Lcom/google/common/collect/Range;)Lcom/google/common/collect/ContiguousSet;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.common.collect.RegularContiguousSet this
        start local 1 // com.google.common.collect.Range other
         0: .line 44
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.range:Lcom/google/common/collect/Range;
            aload 1 /* other */
            invokevirtual com.google.common.collect.Range.isConnected:(Lcom/google/common/collect/Range;)Z
            ifeq 2
         1: .line 45
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.range:Lcom/google/common/collect/Range;
            aload 1 /* other */
            invokevirtual com.google.common.collect.Range.intersection:(Lcom/google/common/collect/Range;)Lcom/google/common/collect/Range;
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            invokestatic com.google.common.collect.ContiguousSet.create:(Lcom/google/common/collect/Range;Lcom/google/common/collect/DiscreteDomain;)Lcom/google/common/collect/ContiguousSet;
            goto 3
         2: .line 46
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.EmptyContiguousSet
            dup
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            invokespecial com.google.common.collect.EmptyContiguousSet.<init>:(Lcom/google/common/collect/DiscreteDomain;)V
         3: .line 44
      StackMap locals:
      StackMap stack: com.google.common.collect.ContiguousSet
            areturn
        end local 1 // com.google.common.collect.Range other
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
            0    4     1  other  Lcom/google/common/collect/Range<TC;>;
    Signature: (Lcom/google/common/collect/Range<TC;>;)Lcom/google/common/collect/ContiguousSet<TC;>;
    MethodParameters:
       Name  Flags
      other  

  com.google.common.collect.ContiguousSet<C> headSetImpl(C, boolean);
    descriptor: (Ljava/lang/Comparable;Z)Lcom/google/common/collect/ContiguousSet;
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.common.collect.RegularContiguousSet this
        start local 1 // java.lang.Comparable toElement
        start local 2 // boolean inclusive
         0: .line 51
            aload 0 /* this */
            aload 1 /* toElement */
            iload 2 /* inclusive */
            invokestatic com.google.common.collect.BoundType.forBoolean:(Z)Lcom/google/common/collect/BoundType;
            invokestatic com.google.common.collect.Range.upTo:(Ljava/lang/Comparable;Lcom/google/common/collect/BoundType;)Lcom/google/common/collect/Range;
            invokevirtual com.google.common.collect.RegularContiguousSet.intersectionInCurrentDomain:(Lcom/google/common/collect/Range;)Lcom/google/common/collect/ContiguousSet;
            areturn
        end local 2 // boolean inclusive
        end local 1 // java.lang.Comparable toElement
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
            0    1     1  toElement  TC;
            0    1     2  inclusive  Z
    Signature: (TC;Z)Lcom/google/common/collect/ContiguousSet<TC;>;
    MethodParameters:
           Name  Flags
      toElement  
      inclusive  

  com.google.common.collect.ContiguousSet<C> subSetImpl(C, boolean, C, boolean);
    descriptor: (Ljava/lang/Comparable;ZLjava/lang/Comparable;Z)Lcom/google/common/collect/ContiguousSet;
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.google.common.collect.RegularContiguousSet this
        start local 1 // java.lang.Comparable fromElement
        start local 2 // boolean fromInclusive
        start local 3 // java.lang.Comparable toElement
        start local 4 // boolean toInclusive
         0: .line 57
            aload 1 /* fromElement */
            aload 3 /* toElement */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifne 2
            iload 2 /* fromInclusive */
            ifne 2
            iload 4 /* toInclusive */
            ifne 2
         1: .line 59
            new com.google.common.collect.EmptyContiguousSet
            dup
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            invokespecial com.google.common.collect.EmptyContiguousSet.<init>:(Lcom/google/common/collect/DiscreteDomain;)V
            areturn
         2: .line 61
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
         3: .line 63
            aload 1 /* fromElement */
            iload 2 /* fromInclusive */
            invokestatic com.google.common.collect.BoundType.forBoolean:(Z)Lcom/google/common/collect/BoundType;
         4: .line 64
            aload 3 /* toElement */
            iload 4 /* toInclusive */
            invokestatic com.google.common.collect.BoundType.forBoolean:(Z)Lcom/google/common/collect/BoundType;
         5: .line 62
            invokestatic com.google.common.collect.Range.range:(Ljava/lang/Comparable;Lcom/google/common/collect/BoundType;Ljava/lang/Comparable;Lcom/google/common/collect/BoundType;)Lcom/google/common/collect/Range;
         6: .line 61
            invokevirtual com.google.common.collect.RegularContiguousSet.intersectionInCurrentDomain:(Lcom/google/common/collect/Range;)Lcom/google/common/collect/ContiguousSet;
            areturn
        end local 4 // boolean toInclusive
        end local 3 // java.lang.Comparable toElement
        end local 2 // boolean fromInclusive
        end local 1 // java.lang.Comparable fromElement
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
            0    7     1    fromElement  TC;
            0    7     2  fromInclusive  Z
            0    7     3      toElement  TC;
            0    7     4    toInclusive  Z
    Signature: (TC;ZTC;Z)Lcom/google/common/collect/ContiguousSet<TC;>;
    MethodParameters:
               Name  Flags
      fromElement    
      fromInclusive  
      toElement      
      toInclusive    

  com.google.common.collect.ContiguousSet<C> tailSetImpl(C, boolean);
    descriptor: (Ljava/lang/Comparable;Z)Lcom/google/common/collect/ContiguousSet;
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.common.collect.RegularContiguousSet this
        start local 1 // java.lang.Comparable fromElement
        start local 2 // boolean inclusive
         0: .line 69
            aload 0 /* this */
            aload 1 /* fromElement */
            iload 2 /* inclusive */
            invokestatic com.google.common.collect.BoundType.forBoolean:(Z)Lcom/google/common/collect/BoundType;
            invokestatic com.google.common.collect.Range.downTo:(Ljava/lang/Comparable;Lcom/google/common/collect/BoundType;)Lcom/google/common/collect/Range;
            invokevirtual com.google.common.collect.RegularContiguousSet.intersectionInCurrentDomain:(Lcom/google/common/collect/Range;)Lcom/google/common/collect/ContiguousSet;
            areturn
        end local 2 // boolean inclusive
        end local 1 // java.lang.Comparable fromElement
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
            0    1     1  fromElement  TC;
            0    1     2    inclusive  Z
    Signature: (TC;Z)Lcom/google/common/collect/ContiguousSet<TC;>;
    MethodParameters:
             Name  Flags
      fromElement  
      inclusive    

  int indexOf(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.common.collect.RegularContiguousSet this
        start local 1 // java.lang.Object target
         0: .line 75
            aload 0 /* this */
            aload 1 /* target */
            invokevirtual com.google.common.collect.RegularContiguousSet.contains:(Ljava/lang/Object;)Z
            ifeq 1
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            aload 0 /* this */
            invokevirtual com.google.common.collect.RegularContiguousSet.first:()Ljava/lang/Comparable;
            aload 1 /* target */
            checkcast java.lang.Comparable
            invokevirtual com.google.common.collect.DiscreteDomain.distance:(Ljava/lang/Comparable;Ljava/lang/Comparable;)J
            l2i
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_m1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // java.lang.Object target
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
            0    3     1  target  Ljava/lang/Object;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtIncompatible()
    MethodParameters:
        Name  Flags
      target  

  public com.google.common.collect.UnmodifiableIterator<C> iterator();
    descriptor: ()Lcom/google/common/collect/UnmodifiableIterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.common.collect.RegularContiguousSet this
         0: .line 80
            new com.google.common.collect.RegularContiguousSet$1
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.google.common.collect.RegularContiguousSet.first:()Ljava/lang/Comparable;
            invokespecial com.google.common.collect.RegularContiguousSet$1.<init>:(Lcom/google/common/collect/RegularContiguousSet;Ljava/lang/Comparable;)V
            areturn
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
    Signature: ()Lcom/google/common/collect/UnmodifiableIterator<TC;>;

  public com.google.common.collect.UnmodifiableIterator<C> descendingIterator();
    descriptor: ()Lcom/google/common/collect/UnmodifiableIterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.common.collect.RegularContiguousSet this
         0: .line 93
            new com.google.common.collect.RegularContiguousSet$2
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.google.common.collect.RegularContiguousSet.last:()Ljava/lang/Comparable;
            invokespecial com.google.common.collect.RegularContiguousSet$2.<init>:(Lcom/google/common/collect/RegularContiguousSet;Ljava/lang/Comparable;)V
            areturn
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
    Signature: ()Lcom/google/common/collect/UnmodifiableIterator<TC;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtIncompatible()

  private static boolean equalsOrThrow(java.lang.Comparable<?>, java.lang.Comparable<?>);
    descriptor: (Ljava/lang/Comparable;Ljava/lang/Comparable;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Comparable left
        start local 1 // java.lang.Comparable right
         0: .line 104
            aload 1 /* right */
            ifnull 1
            aload 0 /* left */
            aload 1 /* right */
            invokestatic com.google.common.collect.Range.compareOrThrow:(Ljava/lang/Comparable;Ljava/lang/Comparable;)I
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.Comparable right
        end local 0 // java.lang.Comparable left
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   left  Ljava/lang/Comparable<*>;
            0    2     1  right  Ljava/lang/Comparable<*>;
    Signature: (Ljava/lang/Comparable<*>;Ljava/lang/Comparable<*>;)Z
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
       Name  Flags
      left   
      right  

  boolean isPartialView();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.RegularContiguousSet this
         0: .line 109
            iconst_0
            ireturn
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/RegularContiguousSet<TC;>;

  public C first();
    descriptor: ()Ljava/lang/Comparable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.collect.RegularContiguousSet this
         0: .line 114
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.range:Lcom/google/common/collect/Range;
            getfield com.google.common.collect.Range.lowerBound:Lcom/google/common/collect/Cut;
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            invokevirtual com.google.common.collect.Cut.leastValueAbove:(Lcom/google/common/collect/DiscreteDomain;)Ljava/lang/Comparable;
            areturn
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
    Signature: ()TC;

  public C last();
    descriptor: ()Ljava/lang/Comparable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.collect.RegularContiguousSet this
         0: .line 119
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.range:Lcom/google/common/collect/Range;
            getfield com.google.common.collect.Range.upperBound:Lcom/google/common/collect/Cut;
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            invokevirtual com.google.common.collect.Cut.greatestValueBelow:(Lcom/google/common/collect/DiscreteDomain;)Ljava/lang/Comparable;
            areturn
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
    Signature: ()TC;

  com.google.common.collect.ImmutableList<C> createAsList();
    descriptor: ()Lcom/google/common/collect/ImmutableList;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.collect.RegularContiguousSet this
         0: .line 124
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            getfield com.google.common.collect.DiscreteDomain.supportsFastOffset:Z
            ifeq 2
         1: .line 125
            new com.google.common.collect.RegularContiguousSet$3
            dup
            aload 0 /* this */
            invokespecial com.google.common.collect.RegularContiguousSet$3.<init>:(Lcom/google/common/collect/RegularContiguousSet;)V
            areturn
         2: .line 138
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokespecial com.google.common.collect.ContiguousSet.createAsList:()Lcom/google/common/collect/ImmutableList;
            areturn
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
    Signature: ()Lcom/google/common/collect/ImmutableList<TC;>;

  public int size();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.google.common.collect.RegularContiguousSet this
         0: .line 144
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            aload 0 /* this */
            invokevirtual com.google.common.collect.RegularContiguousSet.first:()Ljava/lang/Comparable;
            aload 0 /* this */
            invokevirtual com.google.common.collect.RegularContiguousSet.last:()Ljava/lang/Comparable;
            invokevirtual com.google.common.collect.DiscreteDomain.distance:(Ljava/lang/Comparable;Ljava/lang/Comparable;)J
            lstore 1 /* distance */
        start local 1 // long distance
         1: .line 145
            lload 1 /* distance */
            ldc 2147483647
            lcmp
            iflt 2
            ldc 2147483647
            goto 3
      StackMap locals: long
      StackMap stack:
         2: lload 1 /* distance */
            l2i
            iconst_1
            iadd
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 1 // long distance
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
            1    4     1  distance  J

  public boolean contains(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.common.collect.RegularContiguousSet this
        start local 1 // java.lang.Object object
         0: .line 150
            aload 1 /* object */
            ifnonnull 2
         1: .line 151
            iconst_0
            ireturn
         2: .line 154
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.range:Lcom/google/common/collect/Range;
            aload 1 /* object */
            checkcast java.lang.Comparable
            invokevirtual com.google.common.collect.Range.contains:(Ljava/lang/Comparable;)Z
         3: ireturn
         4: .line 155
      StackMap locals:
      StackMap stack: java.lang.ClassCastException
            pop
         5: .line 156
            iconst_0
            ireturn
        end local 1 // java.lang.Object object
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
            0    6     1  object  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.ClassCastException
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
        Name  Flags
      object  

  public boolean containsAll(java.util.Collection<?>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.common.collect.RegularContiguousSet this
        start local 1 // java.util.Collection targets
         0: .line 162
            aload 0 /* this */
            aload 1 /* targets */
            invokestatic com.google.common.collect.Collections2.containsAllImpl:(Ljava/util/Collection;Ljava/util/Collection;)Z
            ireturn
        end local 1 // java.util.Collection targets
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
            0    1     1  targets  Ljava/util/Collection<*>;
    Signature: (Ljava/util/Collection<*>;)Z
    MethodParameters:
         Name  Flags
      targets  

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.RegularContiguousSet this
         0: .line 167
            iconst_0
            ireturn
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/RegularContiguousSet<TC;>;

  public com.google.common.collect.ContiguousSet<C> intersection(com.google.common.collect.ContiguousSet<C>);
    descriptor: (Lcom/google/common/collect/ContiguousSet;)Lcom/google/common/collect/ContiguousSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.google.common.collect.RegularContiguousSet this
        start local 1 // com.google.common.collect.ContiguousSet other
         0: .line 172
            aload 1 /* other */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 173
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            aload 1 /* other */
            getfield com.google.common.collect.ContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            invokestatic com.google.common.base.Preconditions.checkArgument:(Z)V
         2: .line 174
            aload 1 /* other */
            invokevirtual com.google.common.collect.ContiguousSet.isEmpty:()Z
            ifeq 4
         3: .line 175
            aload 1 /* other */
            areturn
         4: .line 177
      StackMap locals:
      StackMap stack:
            invokestatic com.google.common.collect.Ordering.natural:()Lcom/google/common/collect/Ordering;
            aload 0 /* this */
            invokevirtual com.google.common.collect.RegularContiguousSet.first:()Ljava/lang/Comparable;
            aload 1 /* other */
            invokevirtual com.google.common.collect.ContiguousSet.first:()Ljava/lang/Object;
            checkcast java.lang.Comparable
            invokevirtual com.google.common.collect.Ordering.max:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Comparable
            astore 2 /* lowerEndpoint */
        start local 2 // java.lang.Comparable lowerEndpoint
         5: .line 178
            invokestatic com.google.common.collect.Ordering.natural:()Lcom/google/common/collect/Ordering;
            aload 0 /* this */
            invokevirtual com.google.common.collect.RegularContiguousSet.last:()Ljava/lang/Comparable;
            aload 1 /* other */
            invokevirtual com.google.common.collect.ContiguousSet.last:()Ljava/lang/Object;
            checkcast java.lang.Comparable
            invokevirtual com.google.common.collect.Ordering.min:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Comparable
            astore 3 /* upperEndpoint */
        start local 3 // java.lang.Comparable upperEndpoint
         6: .line 179
            aload 2 /* lowerEndpoint */
            aload 3 /* upperEndpoint */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifgt 8
         7: .line 180
            aload 2 /* lowerEndpoint */
            aload 3 /* upperEndpoint */
            invokestatic com.google.common.collect.Range.closed:(Ljava/lang/Comparable;Ljava/lang/Comparable;)Lcom/google/common/collect/Range;
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            invokestatic com.google.common.collect.ContiguousSet.create:(Lcom/google/common/collect/Range;Lcom/google/common/collect/DiscreteDomain;)Lcom/google/common/collect/ContiguousSet;
            goto 9
         8: .line 181
      StackMap locals: java.lang.Comparable java.lang.Comparable
      StackMap stack:
            new com.google.common.collect.EmptyContiguousSet
            dup
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            invokespecial com.google.common.collect.EmptyContiguousSet.<init>:(Lcom/google/common/collect/DiscreteDomain;)V
         9: .line 179
      StackMap locals:
      StackMap stack: com.google.common.collect.ContiguousSet
            areturn
        end local 3 // java.lang.Comparable upperEndpoint
        end local 2 // java.lang.Comparable lowerEndpoint
        end local 1 // com.google.common.collect.ContiguousSet other
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   10     0           this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
            0   10     1          other  Lcom/google/common/collect/ContiguousSet<TC;>;
            5   10     2  lowerEndpoint  TC;
            6   10     3  upperEndpoint  TC;
    Signature: (Lcom/google/common/collect/ContiguousSet<TC;>;)Lcom/google/common/collect/ContiguousSet<TC;>;
    MethodParameters:
       Name  Flags
      other  

  public com.google.common.collect.Range<C> range();
    descriptor: ()Lcom/google/common/collect/Range;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.collect.RegularContiguousSet this
         0: .line 187
            aload 0 /* this */
            getstatic com.google.common.collect.BoundType.CLOSED:Lcom/google/common/collect/BoundType;
            getstatic com.google.common.collect.BoundType.CLOSED:Lcom/google/common/collect/BoundType;
            invokevirtual com.google.common.collect.RegularContiguousSet.range:(Lcom/google/common/collect/BoundType;Lcom/google/common/collect/BoundType;)Lcom/google/common/collect/Range;
            areturn
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
    Signature: ()Lcom/google/common/collect/Range<TC;>;

  public com.google.common.collect.Range<C> range(com.google.common.collect.BoundType, com.google.common.collect.BoundType);
    descriptor: (Lcom/google/common/collect/BoundType;Lcom/google/common/collect/BoundType;)Lcom/google/common/collect/Range;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.google.common.collect.RegularContiguousSet this
        start local 1 // com.google.common.collect.BoundType lowerBoundType
        start local 2 // com.google.common.collect.BoundType upperBoundType
         0: .line 193
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.range:Lcom/google/common/collect/Range;
            getfield com.google.common.collect.Range.lowerBound:Lcom/google/common/collect/Cut;
            aload 1 /* lowerBoundType */
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            invokevirtual com.google.common.collect.Cut.withLowerBoundType:(Lcom/google/common/collect/BoundType;Lcom/google/common/collect/DiscreteDomain;)Lcom/google/common/collect/Cut;
         1: .line 194
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.range:Lcom/google/common/collect/Range;
            getfield com.google.common.collect.Range.upperBound:Lcom/google/common/collect/Cut;
            aload 2 /* upperBoundType */
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            invokevirtual com.google.common.collect.Cut.withUpperBoundType:(Lcom/google/common/collect/BoundType;Lcom/google/common/collect/DiscreteDomain;)Lcom/google/common/collect/Cut;
         2: .line 192
            invokestatic com.google.common.collect.Range.create:(Lcom/google/common/collect/Cut;Lcom/google/common/collect/Cut;)Lcom/google/common/collect/Range;
            areturn
        end local 2 // com.google.common.collect.BoundType upperBoundType
        end local 1 // com.google.common.collect.BoundType lowerBoundType
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
            0    3     1  lowerBoundType  Lcom/google/common/collect/BoundType;
            0    3     2  upperBoundType  Lcom/google/common/collect/BoundType;
    Signature: (Lcom/google/common/collect/BoundType;Lcom/google/common/collect/BoundType;)Lcom/google/common/collect/Range<TC;>;
    MethodParameters:
                Name  Flags
      lowerBoundType  
      upperBoundType  

  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.google.common.collect.RegularContiguousSet this
        start local 1 // java.lang.Object object
         0: .line 199
            aload 1 /* object */
            aload 0 /* this */
            if_acmpne 2
         1: .line 200
            iconst_1
            ireturn
         2: .line 201
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            instanceof com.google.common.collect.RegularContiguousSet
            ifeq 7
         3: .line 202
            aload 1 /* object */
            checkcast com.google.common.collect.RegularContiguousSet
            astore 2 /* that */
        start local 2 // com.google.common.collect.RegularContiguousSet that
         4: .line 203
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            aload 2 /* that */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 7
         5: .line 204
            aload 0 /* this */
            invokevirtual com.google.common.collect.RegularContiguousSet.first:()Ljava/lang/Comparable;
            aload 2 /* that */
            invokevirtual com.google.common.collect.RegularContiguousSet.first:()Ljava/lang/Comparable;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0 /* this */
            invokevirtual com.google.common.collect.RegularContiguousSet.last:()Ljava/lang/Comparable;
            aload 2 /* that */
            invokevirtual com.google.common.collect.RegularContiguousSet.last:()Ljava/lang/Comparable;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            iconst_1
            ireturn
      StackMap locals: com.google.common.collect.RegularContiguousSet
      StackMap stack:
         6: iconst_0
            ireturn
        end local 2 // com.google.common.collect.RegularContiguousSet that
         7: .line 207
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* object */
            invokespecial com.google.common.collect.ContiguousSet.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object object
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
            0    8     1  object  Ljava/lang/Object;
            4    7     2    that  Lcom/google/common/collect/RegularContiguousSet<*>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
        Name  Flags
      object  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.RegularContiguousSet this
         0: .line 213
            aload 0 /* this */
            invokestatic com.google.common.collect.Sets.hashCodeImpl:(Ljava/util/Set;)I
            ireturn
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/RegularContiguousSet<TC;>;

  java.lang.Object writeReplace();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.common.collect.RegularContiguousSet this
         0: .line 234
            new com.google.common.collect.RegularContiguousSet$SerializedForm
            dup
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.range:Lcom/google/common/collect/Range;
            aload 0 /* this */
            getfield com.google.common.collect.RegularContiguousSet.domain:Lcom/google/common/collect/DiscreteDomain;
            invokespecial com.google.common.collect.RegularContiguousSet$SerializedForm.<init>:(Lcom/google/common/collect/Range;Lcom/google/common/collect/DiscreteDomain;)V
            areturn
        end local 0 // com.google.common.collect.RegularContiguousSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/RegularContiguousSet<TC;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtIncompatible()

  com.google.common.collect.ImmutableSortedSet subSetImpl(java.lang.Object, boolean, java.lang.Object, boolean);
    descriptor: (Ljava/lang/Object;ZLjava/lang/Object;Z)Lcom/google/common/collect/ImmutableSortedSet;
    flags: (0x1040) ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=5
         0: .line 1
            aload 0
            aload 1
            checkcast java.lang.Comparable
            iload 2
            aload 3
            checkcast java.lang.Comparable
            iload 4
            invokevirtual com.google.common.collect.RegularContiguousSet.subSetImpl:(Ljava/lang/Comparable;ZLjava/lang/Comparable;Z)Lcom/google/common/collect/ContiguousSet;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.lang.Object last();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.google.common.collect.RegularContiguousSet.last:()Ljava/lang/Comparable;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  com.google.common.collect.ImmutableSortedSet tailSetImpl(java.lang.Object, boolean);
    descriptor: (Ljava/lang/Object;Z)Lcom/google/common/collect/ImmutableSortedSet;
    flags: (0x1040) ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            checkcast java.lang.Comparable
            iload 2
            invokevirtual com.google.common.collect.RegularContiguousSet.tailSetImpl:(Ljava/lang/Comparable;Z)Lcom/google/common/collect/ContiguousSet;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.util.Iterator iterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.google.common.collect.RegularContiguousSet.iterator:()Lcom/google/common/collect/UnmodifiableIterator;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  com.google.common.collect.ImmutableSortedSet headSetImpl(java.lang.Object, boolean);
    descriptor: (Ljava/lang/Object;Z)Lcom/google/common/collect/ImmutableSortedSet;
    flags: (0x1040) ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            checkcast java.lang.Comparable
            iload 2
            invokevirtual com.google.common.collect.RegularContiguousSet.headSetImpl:(Ljava/lang/Comparable;Z)Lcom/google/common/collect/ContiguousSet;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.util.Iterator descendingIterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.google.common.collect.RegularContiguousSet.descendingIterator:()Lcom/google/common/collect/UnmodifiableIterator;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.lang.Object first();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.google.common.collect.RegularContiguousSet.first:()Ljava/lang/Comparable;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: <C::Ljava/lang/Comparable;>Lcom/google/common/collect/ContiguousSet<TC;>;
SourceFile: "RegularContiguousSet.java"
NestMembers:
  com.google.common.collect.RegularContiguousSet$1  com.google.common.collect.RegularContiguousSet$2  com.google.common.collect.RegularContiguousSet$3  com.google.common.collect.RegularContiguousSet$SerializedForm
InnerClasses:
  com.google.common.collect.RegularContiguousSet$1
  com.google.common.collect.RegularContiguousSet$2
  com.google.common.collect.RegularContiguousSet$3
  private final SerializedForm = com.google.common.collect.RegularContiguousSet$SerializedForm of com.google.common.collect.RegularContiguousSet
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtCompatible(emulated = true)