public final class com.google.common.math.LinearTransformation$LinearTransformationBuilder
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.google.common.math.LinearTransformation$LinearTransformationBuilder
  super_class: java.lang.Object
{
  private final double x1;
    descriptor: D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double y1;
    descriptor: D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private void <init>(double, double);
    descriptor: (DD)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.google.common.math.LinearTransformation$LinearTransformationBuilder this
        start local 1 // double x1
        start local 3 // double y1
         0: .line 63
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 64
            aload 0 /* this */
            dload 1 /* x1 */
            putfield com.google.common.math.LinearTransformation$LinearTransformationBuilder.x1:D
         2: .line 65
            aload 0 /* this */
            dload 3 /* y1 */
            putfield com.google.common.math.LinearTransformation$LinearTransformationBuilder.y1:D
         3: .line 66
            return
        end local 3 // double y1
        end local 1 // double x1
        end local 0 // com.google.common.math.LinearTransformation$LinearTransformationBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/google/common/math/LinearTransformation$LinearTransformationBuilder;
            0    4     1    x1  D
            0    4     3    y1  D
    MethodParameters:
      Name  Flags
      x1    
      y1    

  public com.google.common.math.LinearTransformation and(double, double);
    descriptor: (DD)Lcom/google/common/math/LinearTransformation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // com.google.common.math.LinearTransformation$LinearTransformationBuilder this
        start local 1 // double x2
        start local 3 // double y2
         0: .line 75
            dload 1 /* x2 */
            invokestatic com.google.common.math.DoubleUtils.isFinite:(D)Z
            ifeq 1
            dload 3 /* y2 */
            invokestatic com.google.common.math.DoubleUtils.isFinite:(D)Z
            ifeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: invokestatic com.google.common.base.Preconditions.checkArgument:(Z)V
         3: .line 76
            dload 1 /* x2 */
            aload 0 /* this */
            getfield com.google.common.math.LinearTransformation$LinearTransformationBuilder.x1:D
            dcmpl
            ifne 8
         4: .line 77
            dload 3 /* y2 */
            aload 0 /* this */
            getfield com.google.common.math.LinearTransformation$LinearTransformationBuilder.y1:D
            dcmpl
            ifeq 5
            iconst_1
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: invokestatic com.google.common.base.Preconditions.checkArgument:(Z)V
         7: .line 78
            new com.google.common.math.LinearTransformation$VerticalLinearTransformation
            dup
            aload 0 /* this */
            getfield com.google.common.math.LinearTransformation$LinearTransformationBuilder.x1:D
            invokespecial com.google.common.math.LinearTransformation$VerticalLinearTransformation.<init>:(D)V
            areturn
         8: .line 80
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dload 3 /* y2 */
            aload 0 /* this */
            getfield com.google.common.math.LinearTransformation$LinearTransformationBuilder.y1:D
            dsub
            dload 1 /* x2 */
            aload 0 /* this */
            getfield com.google.common.math.LinearTransformation$LinearTransformationBuilder.x1:D
            dsub
            ddiv
            invokevirtual com.google.common.math.LinearTransformation$LinearTransformationBuilder.withSlope:(D)Lcom/google/common/math/LinearTransformation;
            areturn
        end local 3 // double y2
        end local 1 // double x2
        end local 0 // com.google.common.math.LinearTransformation$LinearTransformationBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/google/common/math/LinearTransformation$LinearTransformationBuilder;
            0    9     1    x2  D
            0    9     3    y2  D
    MethodParameters:
      Name  Flags
      x2    
      y2    

  public com.google.common.math.LinearTransformation withSlope(double);
    descriptor: (D)Lcom/google/common/math/LinearTransformation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // com.google.common.math.LinearTransformation$LinearTransformationBuilder this
        start local 1 // double slope
         0: .line 90
            dload 1 /* slope */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: invokestatic com.google.common.base.Preconditions.checkArgument:(Z)V
         3: .line 91
            dload 1 /* slope */
            invokestatic com.google.common.math.DoubleUtils.isFinite:(D)Z
            ifeq 6
         4: .line 92
            aload 0 /* this */
            getfield com.google.common.math.LinearTransformation$LinearTransformationBuilder.y1:D
            aload 0 /* this */
            getfield com.google.common.math.LinearTransformation$LinearTransformationBuilder.x1:D
            dload 1 /* slope */
            dmul
            dsub
            dstore 3 /* yIntercept */
        start local 3 // double yIntercept
         5: .line 93
            new com.google.common.math.LinearTransformation$RegularLinearTransformation
            dup
            dload 1 /* slope */
            dload 3 /* yIntercept */
            invokespecial com.google.common.math.LinearTransformation$RegularLinearTransformation.<init>:(DD)V
            areturn
        end local 3 // double yIntercept
         6: .line 95
      StackMap locals:
      StackMap stack:
            new com.google.common.math.LinearTransformation$VerticalLinearTransformation
            dup
            aload 0 /* this */
            getfield com.google.common.math.LinearTransformation$LinearTransformationBuilder.x1:D
            invokespecial com.google.common.math.LinearTransformation$VerticalLinearTransformation.<init>:(D)V
            areturn
        end local 1 // double slope
        end local 0 // com.google.common.math.LinearTransformation$LinearTransformationBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lcom/google/common/math/LinearTransformation$LinearTransformationBuilder;
            0    7     1       slope  D
            5    6     3  yIntercept  D
    MethodParameters:
       Name  Flags
      slope  
}
SourceFile: "LinearTransformation.java"
NestHost: com.google.common.math.LinearTransformation
InnerClasses:
  public final LinearTransformationBuilder = com.google.common.math.LinearTransformation$LinearTransformationBuilder of com.google.common.math.LinearTransformation
  private final RegularLinearTransformation = com.google.common.math.LinearTransformation$RegularLinearTransformation of com.google.common.math.LinearTransformation
  private final VerticalLinearTransformation = com.google.common.math.LinearTransformation$VerticalLinearTransformation of com.google.common.math.LinearTransformation