public abstract class org.apache.fop.layoutmgr.BreakingAlgorithm
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.apache.fop.layoutmgr.BreakingAlgorithm
  super_class: java.lang.Object
{
  protected static final org.apache.commons.logging.Log log;
    descriptor: Lorg/apache/commons/logging/Log;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL

  protected static final int INFINITE_RATIO;
    descriptor: I
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 1000

  private static final int MAX_RECOVERY_ATTEMPTS;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  public static final int ALL_BREAKS;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int NO_FLAGGED_PENALTIES;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int ONLY_FORCED_BREAKS;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  protected int repeatedFlaggedDemerit;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int incompatibleFitnessDemerit;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int maxFlaggedPenaltiesCount;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  private double threshold;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  protected org.apache.fop.layoutmgr.KnuthSequence par;
    descriptor: Lorg/apache/fop/layoutmgr/KnuthSequence;
    flags: (0x0004) ACC_PROTECTED

  protected int lineWidth;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  private boolean force;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  protected boolean considerTooShort;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  private org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode lastTooLong;
    descriptor: Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode lastTooShort;
    descriptor: Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode lastDeactivated;
    descriptor: Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    flags: (0x0002) ACC_PRIVATE

  protected int alignment;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int alignmentLast;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected boolean indentFirstPart;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  protected org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode[] activeLines;
    descriptor: [Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    flags: (0x0004) ACC_PROTECTED

  protected int activeNodeCount;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int startLine;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int endLine;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int totalWidth;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int totalStretch;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int totalShrink;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords best;
    descriptor: Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
    flags: (0x0004) ACC_PROTECTED

  private boolean partOverflowRecoveryActivated;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode lastRecovered;
    descriptor: Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    flags: (0x0002) ACC_PRIVATE

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 42
            ldc Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.apache.fop.layoutmgr.BreakingAlgorithm.$assertionsDisabled:Z
         3: .line 45
            ldc Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
            putstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
         4: .line 58
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(int, int, boolean, boolean, int);
    descriptor: (IIZZI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=6
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // int align
        start local 2 // int alignLast
        start local 3 // boolean first
        start local 4 // boolean partOverflowRecovery
        start local 5 // int maxFlagCount
         0: .line 212
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 99
            aload 0 /* this */
            bipush 50
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.repeatedFlaggedDemerit:I
         2: .line 101
            aload 0 /* this */
            bipush 50
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.incompatibleFitnessDemerit:I
         3: .line 122
            aload 0 /* this */
            iconst_m1
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lineWidth:I
         4: .line 192
            aload 0 /* this */
            iconst_1
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.partOverflowRecoveryActivated:Z
         5: .line 215
            aload 0 /* this */
            iload 1 /* align */
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.alignment:I
         6: .line 216
            aload 0 /* this */
            iload 2 /* alignLast */
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.alignmentLast:I
         7: .line 217
            aload 0 /* this */
            iload 3 /* first */
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.indentFirstPart:Z
         8: .line 218
            aload 0 /* this */
            iload 4 /* partOverflowRecovery */
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.partOverflowRecoveryActivated:Z
         9: .line 219
            aload 0 /* this */
            new org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords
            dup
            aload 0 /* this */
            invokespecial org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.<init>:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm;)V
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
        10: .line 220
            aload 0 /* this */
            iload 5 /* maxFlagCount */
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.maxFlaggedPenaltiesCount:I
        11: .line 221
            return
        end local 5 // int maxFlagCount
        end local 4 // boolean partOverflowRecovery
        end local 3 // boolean first
        end local 2 // int alignLast
        end local 1 // int align
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   12     0                  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   12     1                 align  I
            0   12     2             alignLast  I
            0   12     3                 first  Z
            0   12     4  partOverflowRecovery  Z
            0   12     5          maxFlagCount  I
    MethodParameters:
                      Name  Flags
      align                 
      alignLast             
      first                 
      partOverflowRecovery  
      maxFlagCount          

  protected int getMaxRecoveryAttempts();
    descriptor: ()I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 450
            iconst_5
            ireturn
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  protected boolean isPartOverflowRecoveryActivated();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 459
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.partOverflowRecoveryActivated:Z
            ireturn
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  protected org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode getLastTooLong();
    descriptor: ()Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 463
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooLong:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            areturn
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  public abstract void updateData1(int, double);
    descriptor: (ID)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
          Name  Flags
      total     
      demerits  

  public abstract void updateData2(org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode, org.apache.fop.layoutmgr.KnuthSequence, int);
    descriptor: (Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;Lorg/apache/fop/layoutmgr/KnuthSequence;I)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
                Name  Flags
      bestActiveNode  
      sequence        
      total           

  public void setConstantLineWidth(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // int lineWidth
         0: .line 488
            aload 0 /* this */
            iload 1 /* lineWidth */
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lineWidth:I
         1: .line 489
            return
        end local 1 // int lineWidth
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    2     1  lineWidth  I
    MethodParameters:
           Name  Flags
      lineWidth  

  public int findBreakingPoints(org.apache.fop.layoutmgr.KnuthSequence, double, boolean, int);
    descriptor: (Lorg/apache/fop/layoutmgr/KnuthSequence;DZI)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.KnuthSequence par
        start local 2 // double threshold
        start local 4 // boolean force
        start local 5 // int allowedBreaks
         0: .line 506
            aload 0 /* this */
            aload 1 /* par */
            iconst_0
            dload 2 /* threshold */
            iload 4 /* force */
            iload 5 /* allowedBreaks */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.findBreakingPoints:(Lorg/apache/fop/layoutmgr/KnuthSequence;IDZI)I
            ireturn
        end local 5 // int allowedBreaks
        end local 4 // boolean force
        end local 2 // double threshold
        end local 1 // org.apache.fop.layoutmgr.KnuthSequence par
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    1     1            par  Lorg/apache/fop/layoutmgr/KnuthSequence;
            0    1     2      threshold  D
            0    1     4          force  Z
            0    1     5  allowedBreaks  I
    MethodParameters:
               Name  Flags
      par            
      threshold      
      force          
      allowedBreaks  

  public int findBreakingPoints(org.apache.fop.layoutmgr.KnuthSequence, int, double, boolean, int);
    descriptor: (Lorg/apache/fop/layoutmgr/KnuthSequence;IDZI)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=17, locals=13, args_size=6
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.KnuthSequence par
        start local 2 // int startIndex
        start local 3 // double threshold
        start local 5 // boolean force
        start local 6 // int allowedBreaks
         0: .line 525
            aload 0 /* this */
            aload 1 /* par */
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.par:Lorg/apache/fop/layoutmgr/KnuthSequence;
         1: .line 526
            aload 0 /* this */
            dload 3 /* threshold */
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.threshold:D
         2: .line 527
            aload 0 /* this */
            iload 5 /* force */
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.force:Z
         3: .line 530
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.initialize:()V
         4: .line 533
            iconst_0
            istore 7 /* previousIsBox */
        start local 7 // boolean previousIsBox
         5: .line 538
            iload 2 /* startIndex */
            istore 8 /* previousPosition */
        start local 8 // int previousPosition
         6: .line 539
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.alignment:I
            bipush 23
            if_icmpeq 11
         7: .line 540
            aload 1 /* par */
            iload 2 /* startIndex */
            invokevirtual org.apache.fop.layoutmgr.KnuthSequence.getFirstBoxIndex:(I)I
            istore 9 /* firstBoxIndex */
        start local 9 // int firstBoxIndex
         8: .line 541
            iload 9 /* firstBoxIndex */
            aload 1 /* par */
            invokevirtual org.apache.fop.layoutmgr.KnuthSequence.size:()I
            if_icmplt 9
            iload 2 /* startIndex */
            goto 10
      StackMap locals: int int int
      StackMap stack:
         9: iload 9 /* firstBoxIndex */
            iconst_1
            isub
      StackMap locals:
      StackMap stack: int
        10: istore 8 /* previousPosition */
        end local 9 // int firstBoxIndex
        11: .line 543
      StackMap locals:
      StackMap stack:
            iload 8 /* previousPosition */
            ifge 12
            iconst_0
            goto 13
      StackMap locals:
      StackMap stack:
        12: iload 8 /* previousPosition */
      StackMap locals:
      StackMap stack: int
        13: istore 8 /* previousPosition */
        14: .line 546
            aload 0 /* this */
            iconst_0
            aload 0 /* this */
            iload 8 /* previousPosition */
            iconst_0
            iconst_1
            iconst_0
            iconst_0
            iconst_0
            dconst_0
            iconst_0
            iconst_0
            iconst_0
            dconst_0
            aconst_null
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.createNode:(IIIIIIDIIIDLorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.addNode:(ILorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)V
        15: .line 547
            aload 0 /* this */
            iconst_0
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getNode:(I)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 9 /* lastForced */
        start local 9 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode lastForced
        16: .line 549
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
            ifeq 19
        17: .line 550
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Looping over "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* par */
            invokevirtual org.apache.fop.layoutmgr.KnuthSequence.size:()I
            iload 2 /* startIndex */
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " elements"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
        18: .line 551
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            aload 1 /* par */
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
        19: .line 555
      StackMap locals: org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
      StackMap stack:
            iload 2 /* startIndex */
            istore 10 /* elementIndex */
        start local 10 // int elementIndex
        20: goto 45
        21: .line 557
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
        22: .line 558
            iload 10 /* elementIndex */
            iload 7 /* previousIsBox */
            iload 6 /* allowedBreaks */
        23: .line 557
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.handleElementAt:(IZI)Lorg/apache/fop/layoutmgr/KnuthElement;
        24: .line 558
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isBox:()Z
        25: .line 557
            istore 7 /* previousIsBox */
        26: .line 560
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeNodeCount:I
            ifne 44
        27: .line 561
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.handlingFloat:()Z
            ifeq 29
        28: .line 562
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.handleFloat:()I
            ireturn
        29: .line 564
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getIPDdifference:()I
            ifeq 31
        30: .line 565
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.handleIpdChange:()I
            ireturn
        31: .line 567
      StackMap locals:
      StackMap stack:
            iload 5 /* force */
            ifne 34
        32: .line 568
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Could not find a set of breaking points "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            dload 3 /* threshold */
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
        33: .line 569
            iconst_0
            ireturn
        34: .line 576
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastDeactivated:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            ifnull 37
        35: .line 577
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastDeactivated:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            aload 9 /* lastForced */
            if_acmpeq 37
        36: .line 578
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.replaceLastDeactivated:()V
        37: .line 581
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooShort:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            ifnull 39
        38: .line 582
            aload 9 /* lastForced */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.position:I
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooShort:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.position:I
            if_icmpne 41
        39: .line 583
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.recoverFromOverflow:()Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 9 /* lastForced */
        40: .line 584
            goto 43
        41: .line 585
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooShort:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 9 /* lastForced */
        42: .line 586
            aload 0 /* this */
            aconst_null
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastRecovered:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
        43: .line 588
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 9 /* lastForced */
            iload 10 /* elementIndex */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.restartFrom:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;I)I
            istore 10 /* elementIndex */
        44: .line 555
      StackMap locals:
      StackMap stack:
            iinc 10 /* elementIndex */ 1
      StackMap locals:
      StackMap stack:
        45: iload 10 /* elementIndex */
            aload 1 /* par */
            invokevirtual org.apache.fop.layoutmgr.KnuthSequence.size:()I
            if_icmplt 21
        end local 10 // int elementIndex
        46: .line 593
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.finish:()V
        47: .line 597
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.filterActiveNodes:()I
            istore 10 /* line */
        start local 10 // int line
        48: .line 600
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.startLine:I
            istore 11 /* i */
        start local 11 // int i
        49: goto 57
        50: .line 601
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 11 /* i */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getNode:(I)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 12 /* node */
        start local 12 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        51: goto 55
        52: .line 602
      StackMap locals: org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
      StackMap stack:
            aload 0 /* this */
            aload 12 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.line:I
            aload 12 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalDemerits:D
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.updateData1:(ID)V
        53: .line 603
            aload 0 /* this */
            aload 12 /* node */
            aload 1 /* par */
            aload 12 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.line:I
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.calculateBreakPoints:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;Lorg/apache/fop/layoutmgr/KnuthSequence;I)V
        54: .line 601
            aload 12 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.next:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 12 /* node */
      StackMap locals:
      StackMap stack:
        55: aload 12 /* node */
            ifnonnull 52
        end local 12 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        56: .line 600
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        57: iload 11 /* i */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.endLine:I
            if_icmplt 50
        end local 11 // int i
        58: .line 607
            aload 0 /* this */
            aconst_null
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
        59: .line 608
            iload 10 /* line */
            ireturn
        end local 10 // int line
        end local 9 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode lastForced
        end local 8 // int previousPosition
        end local 7 // boolean previousIsBox
        end local 6 // int allowedBreaks
        end local 5 // boolean force
        end local 3 // double threshold
        end local 2 // int startIndex
        end local 1 // org.apache.fop.layoutmgr.KnuthSequence par
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   60     0              this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   60     1               par  Lorg/apache/fop/layoutmgr/KnuthSequence;
            0   60     2        startIndex  I
            0   60     3         threshold  D
            0   60     5             force  Z
            0   60     6     allowedBreaks  I
            5   60     7     previousIsBox  Z
            6   60     8  previousPosition  I
            8   11     9     firstBoxIndex  I
           16   60     9        lastForced  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
           20   46    10      elementIndex  I
           48   60    10              line  I
           49   58    11                 i  I
           51   56    12              node  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    MethodParameters:
               Name  Flags
      par            
      startIndex     
      threshold      
      force          
      allowedBreaks  

  protected int getIPDdifference();
    descriptor: ()I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 616
            iconst_0
            ireturn
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  protected int handleIpdChange();
    descriptor: ()I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 624
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  protected org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode recoverFromTooLong(org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode);
    descriptor: (Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=15, locals=3, args_size=2
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode lastTooLong
         0: .line 636
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
            ifeq 2
         1: .line 637
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Recovering from too long: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* lastTooLong */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
         2: .line 644
      StackMap locals:
      StackMap stack:
            aload 1 /* lastTooLong */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.previous:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.previous:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            ifnonnull 6
         3: .line 645
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.par:Lorg/apache/fop/layoutmgr/KnuthSequence;
            iconst_0
            invokevirtual org.apache.fop.layoutmgr.KnuthSequence.get:(I)Ljava/lang/Object;
            checkcast org.apache.fop.layoutmgr.ListElement
            astore 2 /* el */
        start local 2 // org.apache.fop.layoutmgr.ListElement el
         4: .line 646
            aload 2 /* el */
            invokevirtual org.apache.fop.layoutmgr.ListElement.isPenalty:()Z
            ifne 6
         5: .line 647
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.par:Lorg/apache/fop/layoutmgr/KnuthSequence;
            iconst_0
            getstatic org.apache.fop.layoutmgr.KnuthPenalty.DUMMY_ZERO_PENALTY:Lorg/apache/fop/layoutmgr/KnuthPenalty;
            invokevirtual org.apache.fop.layoutmgr.KnuthSequence.add:(ILjava/lang/Object;)V
        end local 2 // org.apache.fop.layoutmgr.ListElement el
         6: .line 652
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
         7: .line 653
            aload 1 /* lastTooLong */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.previous:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.position:I
            aload 1 /* lastTooLong */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.previous:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.line:I
            iconst_1
            iadd
            iconst_1
         8: .line 654
            iconst_0
            iconst_0
            iconst_0
         9: .line 655
            dconst_0
            iconst_0
            iconst_0
        10: .line 656
            iconst_0
            dconst_0
            aload 1 /* lastTooLong */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.previous:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
        11: .line 652
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.createNode:(IIIIIIDIIIDLorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            areturn
        end local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode lastTooLong
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   12     1  lastTooLong  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            4    6     2           el  Lorg/apache/fop/layoutmgr/ListElement;
    MethodParameters:
             Name  Flags
      lastTooLong  

  protected void initialize();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 661
            aload 0 /* this */
            iconst_0
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalWidth:I
         1: .line 662
            aload 0 /* this */
            iconst_0
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalStretch:I
         2: .line 663
            aload 0 /* this */
            iconst_0
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalShrink:I
         3: .line 664
            aload 0 /* this */
            aconst_null
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooShort:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         4: .line 665
            aload 0 /* this */
            aconst_null
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooLong:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         5: .line 666
            aload 0 /* this */
            iconst_0
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.startLine:I
         6: .line 667
            aload 0 /* this */
            iconst_0
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.endLine:I
         7: .line 668
            aload 0 /* this */
            bipush 20
            anewarray org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         8: .line 669
            return
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  protected org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode createNode(int, int, int, int, int, int, double, int, int, int, double, org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode);
    descriptor: (IIIIIIDIIIDLorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=17, locals=15, args_size=13
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // int position
        start local 2 // int line
        start local 3 // int fitness
        start local 4 // int totalWidth
        start local 5 // int totalStretch
        start local 6 // int totalShrink
        start local 7 // double adjustRatio
        start local 9 // int availableShrink
        start local 10 // int availableStretch
        start local 11 // int difference
        start local 12 // double totalDemerits
        start local 14 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode previous
         0: .line 695
            new org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
            dup
            aload 0 /* this */
            iload 1 /* position */
            iload 2 /* line */
            iload 3 /* fitness */
         1: .line 696
            iload 4 /* totalWidth */
            iload 5 /* totalStretch */
            iload 6 /* totalShrink */
         2: .line 697
            dload 7 /* adjustRatio */
            iload 9 /* availableShrink */
            iload 10 /* availableStretch */
         3: .line 698
            iload 11 /* difference */
            dload 12 /* totalDemerits */
            aload 14 /* previous */
         4: .line 695
            invokespecial org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.<init>:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm;IIIIIIDIIIDLorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)V
            areturn
        end local 14 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode previous
        end local 12 // double totalDemerits
        end local 11 // int difference
        end local 10 // int availableStretch
        end local 9 // int availableShrink
        end local 7 // double adjustRatio
        end local 6 // int totalShrink
        end local 5 // int totalStretch
        end local 4 // int totalWidth
        end local 3 // int fitness
        end local 2 // int line
        end local 1 // int position
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    5     0              this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    5     1          position  I
            0    5     2              line  I
            0    5     3           fitness  I
            0    5     4        totalWidth  I
            0    5     5      totalStretch  I
            0    5     6       totalShrink  I
            0    5     7       adjustRatio  D
            0    5     9   availableShrink  I
            0    5    10  availableStretch  I
            0    5    11        difference  I
            0    5    12     totalDemerits  D
            0    5    14          previous  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    MethodParameters:
                  Name  Flags
      position          
      line              
      fitness           
      totalWidth        
      totalStretch      
      totalShrink       
      adjustRatio       
      availableShrink   
      availableStretch  
      difference        
      totalDemerits     
      previous          

  protected org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode createNode(int, int, int, int, int, int);
    descriptor: (IIIIII)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=18, locals=7, args_size=7
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // int position
        start local 2 // int line
        start local 3 // int fitness
        start local 4 // int totalWidth
        start local 5 // int totalStretch
        start local 6 // int totalShrink
         0: .line 718
            new org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
            dup
            aload 0 /* this */
            iload 1 /* position */
            iload 2 /* line */
            iload 3 /* fitness */
         1: .line 719
            iload 4 /* totalWidth */
            iload 5 /* totalStretch */
            iload 6 /* totalShrink */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            iload 3 /* fitness */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.getAdjust:(I)D
         2: .line 720
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            iload 3 /* fitness */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.getAvailableShrink:(I)I
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            iload 3 /* fitness */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.getAvailableStretch:(I)I
         3: .line 721
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            iload 3 /* fitness */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.getDifference:(I)I
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            iload 3 /* fitness */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.getDemerits:(I)D
         4: .line 722
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            iload 3 /* fitness */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.getNode:(I)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         5: .line 718
            invokespecial org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.<init>:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm;IIIIIIDIIIDLorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)V
            areturn
        end local 6 // int totalShrink
        end local 5 // int totalStretch
        end local 4 // int totalWidth
        end local 3 // int fitness
        end local 2 // int line
        end local 1 // int position
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0          this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    6     1      position  I
            0    6     2          line  I
            0    6     3       fitness  I
            0    6     4    totalWidth  I
            0    6     5  totalStretch  I
            0    6     6   totalShrink  I
    MethodParameters:
              Name  Flags
      position      
      line          
      fitness       
      totalWidth    
      totalStretch  
      totalShrink   

  protected final org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode getLastTooShort();
    descriptor: ()Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 730
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooShort:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            areturn
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  protected final org.apache.fop.layoutmgr.KnuthElement handleElementAt(int, boolean, int);
    descriptor: (IZI)Lorg/apache/fop/layoutmgr/KnuthElement;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // int position
        start local 2 // boolean previousIsBox
        start local 3 // int allowedBreaks
         0: .line 754
            aload 0 /* this */
            iload 1 /* position */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getElement:(I)Lorg/apache/fop/layoutmgr/KnuthElement;
            astore 4 /* element */
        start local 4 // org.apache.fop.layoutmgr.KnuthElement element
         1: .line 755
            aload 4 /* element */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isBox:()Z
            ifeq 4
         2: .line 756
            aload 0 /* this */
            aload 4 /* element */
            checkcast org.apache.fop.layoutmgr.KnuthBox
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.handleBox:(Lorg/apache/fop/layoutmgr/KnuthBox;)V
         3: .line 757
            goto 13
      StackMap locals: org.apache.fop.layoutmgr.KnuthElement
      StackMap stack:
         4: aload 4 /* element */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isGlue:()Z
            ifeq 7
         5: .line 758
            aload 0 /* this */
            aload 4 /* element */
            checkcast org.apache.fop.layoutmgr.KnuthGlue
            iload 1 /* position */
            iload 2 /* previousIsBox */
            iload 3 /* allowedBreaks */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.handleGlueAt:(Lorg/apache/fop/layoutmgr/KnuthGlue;IZI)V
         6: .line 759
            goto 13
      StackMap locals:
      StackMap stack:
         7: aload 4 /* element */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isPenalty:()Z
            ifeq 10
         8: .line 760
            aload 0 /* this */
            aload 4 /* element */
            checkcast org.apache.fop.layoutmgr.KnuthPenalty
            iload 1 /* position */
            iload 3 /* allowedBreaks */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.handlePenaltyAt:(Lorg/apache/fop/layoutmgr/KnuthPenalty;II)V
         9: .line 761
            goto 13
        10: .line 762
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
        11: .line 763
            ldc "Unknown KnuthElement type: expecting KnuthBox, KnuthGlue or KnuthPenalty"
        12: .line 762
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 765
      StackMap locals:
      StackMap stack:
            aload 4 /* element */
            areturn
        end local 4 // org.apache.fop.layoutmgr.KnuthElement element
        end local 3 // int allowedBreaks
        end local 2 // boolean previousIsBox
        end local 1 // int position
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   14     0           this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   14     1       position  I
            0   14     2  previousIsBox  Z
            0   14     3  allowedBreaks  I
            1   14     4        element  Lorg/apache/fop/layoutmgr/KnuthElement;
    MethodParameters:
               Name  Flags
      position       
      previousIsBox  
      allowedBreaks  

  protected void handleBox(org.apache.fop.layoutmgr.KnuthBox);
    descriptor: (Lorg/apache/fop/layoutmgr/KnuthBox;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.KnuthBox box
         0: .line 780
            aload 0 /* this */
            dup
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalWidth:I
            aload 1 /* box */
            invokevirtual org.apache.fop.layoutmgr.KnuthBox.getWidth:()I
            iadd
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalWidth:I
         1: .line 781
            return
        end local 1 // org.apache.fop.layoutmgr.KnuthBox box
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    2     1   box  Lorg/apache/fop/layoutmgr/KnuthBox;
    MethodParameters:
      Name  Flags
      box   

  protected void handleGlueAt(org.apache.fop.layoutmgr.KnuthGlue, int, boolean, int);
    descriptor: (Lorg/apache/fop/layoutmgr/KnuthGlue;IZI)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.KnuthGlue glue
        start local 2 // int position
        start local 3 // boolean previousIsBox
        start local 4 // int allowedBreaks
         0: .line 797
            iload 3 /* previousIsBox */
            ifeq 3
         1: .line 798
            iload 4 /* allowedBreaks */
            iconst_2
            if_icmpeq 3
         2: .line 799
            aload 0 /* this */
            aload 1 /* glue */
            iload 2 /* position */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.considerLegalBreak:(Lorg/apache/fop/layoutmgr/KnuthElement;I)V
         3: .line 801
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalWidth:I
            aload 1 /* glue */
            invokevirtual org.apache.fop.layoutmgr.KnuthGlue.getWidth:()I
            iadd
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalWidth:I
         4: .line 802
            aload 0 /* this */
            dup
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalStretch:I
            aload 1 /* glue */
            invokevirtual org.apache.fop.layoutmgr.KnuthGlue.getStretch:()I
            iadd
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalStretch:I
         5: .line 803
            aload 0 /* this */
            dup
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalShrink:I
            aload 1 /* glue */
            invokevirtual org.apache.fop.layoutmgr.KnuthGlue.getShrink:()I
            iadd
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalShrink:I
         6: .line 804
            return
        end local 4 // int allowedBreaks
        end local 3 // boolean previousIsBox
        end local 2 // int position
        end local 1 // org.apache.fop.layoutmgr.KnuthGlue glue
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    7     1           glue  Lorg/apache/fop/layoutmgr/KnuthGlue;
            0    7     2       position  I
            0    7     3  previousIsBox  Z
            0    7     4  allowedBreaks  I
    MethodParameters:
               Name  Flags
      glue           
      position       
      previousIsBox  
      allowedBreaks  

  protected void handlePenaltyAt(org.apache.fop.layoutmgr.KnuthPenalty, int, int);
    descriptor: (Lorg/apache/fop/layoutmgr/KnuthPenalty;II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.KnuthPenalty penalty
        start local 2 // int position
        start local 3 // int allowedBreaks
         0: .line 820
            aload 1 /* penalty */
            invokevirtual org.apache.fop.layoutmgr.KnuthPenalty.getPenalty:()I
            sipush 1000
            if_icmpge 5
         1: .line 821
            iload 3 /* allowedBreaks */
            iconst_1
            if_icmpne 2
            aload 1 /* penalty */
            invokevirtual org.apache.fop.layoutmgr.KnuthPenalty.isPenaltyFlagged:()Z
            ifne 5
         2: .line 822
      StackMap locals:
      StackMap stack:
            iload 3 /* allowedBreaks */
            iconst_2
            if_icmpne 4
         3: .line 823
            aload 1 /* penalty */
            invokevirtual org.apache.fop.layoutmgr.KnuthPenalty.isForcedBreak:()Z
            ifeq 5
         4: .line 824
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* penalty */
            iload 2 /* position */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.considerLegalBreak:(Lorg/apache/fop/layoutmgr/KnuthElement;I)V
         5: .line 826
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int allowedBreaks
        end local 2 // int position
        end local 1 // org.apache.fop.layoutmgr.KnuthPenalty penalty
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0           this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    6     1        penalty  Lorg/apache/fop/layoutmgr/KnuthPenalty;
            0    6     2       position  I
            0    6     3  allowedBreaks  I
    MethodParameters:
               Name  Flags
      penalty        
      position       
      allowedBreaks  

  protected final void replaceLastDeactivated();
    descriptor: ()V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 833
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastDeactivated:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.adjustRatio:D
            dconst_0
            dcmpl
            ifle 3
         1: .line 835
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastDeactivated:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooShort:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         2: .line 836
            goto 4
         3: .line 838
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastDeactivated:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooLong:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         4: .line 840
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  protected org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode recoverFromOverflow();
    descriptor: ()Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 849
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.isPartOverflowRecoveryActivated:()Z
            ifeq 24
         1: .line 850
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastRecovered:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            ifnonnull 5
         2: .line 851
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooLong:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastRecovered:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         3: .line 852
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
            ifeq 5
         4: .line 853
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Recovery point: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastRecovered:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
         5: .line 856
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooLong:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.recoverFromTooLong:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 2 /* node */
        start local 2 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
         6: .line 857
            aload 2 /* node */
            astore 1 /* lastForced */
        start local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode lastForced
         7: .line 858
            aload 2 /* node */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooLong:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.previous:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.fitRecoveryCounter:I
            iconst_1
            iadd
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.fitRecoveryCounter:I
         8: .line 859
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
            ifeq 12
         9: .line 860
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "first part doesn't fit into line, recovering: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        10: .line 861
            aload 2 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.fitRecoveryCounter:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 860
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
        12: .line 863
      StackMap locals: org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
      StackMap stack:
            aload 2 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.fitRecoveryCounter:I
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getMaxRecoveryAttempts:()I
            if_icmple 25
        13: .line 864
            goto 16
        14: .line 866
      StackMap locals:
      StackMap stack:
            aload 1 /* lastForced */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.previous:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 1 /* lastForced */
        15: .line 867
            aload 0 /* this */
            aload 1 /* lastForced */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.previous:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastDeactivated:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
        16: .line 864
      StackMap locals:
      StackMap stack:
            aload 1 /* lastForced */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.fitRecoveryCounter:I
            ifle 18
        17: .line 865
            aload 1 /* lastForced */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.previous:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            ifnonnull 14
        18: .line 869
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastRecovered:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 1 /* lastForced */
        19: .line 870
            aload 0 /* this */
            aconst_null
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastRecovered:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
        20: .line 871
            aload 0 /* this */
            aload 1 /* lastForced */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.line:I
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.startLine:I
        21: .line 872
            aload 0 /* this */
            aload 1 /* lastForced */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.line:I
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.endLine:I
        22: .line 873
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            ldc "rolled back..."
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
        end local 2 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        23: .line 875
            goto 25
        end local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode lastForced
        24: .line 876
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooLong:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 1 /* lastForced */
        start local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode lastForced
        25: .line 878
      StackMap locals: org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
      StackMap stack:
            aload 1 /* lastForced */
            areturn
        end local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode lastForced
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   26     0        this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            7   24     1  lastForced  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
           25   26     1  lastForced  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            6   23     2        node  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;

  protected int restartFrom(org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode, int);
    descriptor: (Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;I)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode restartingNode
        start local 2 // int currentIndex
         0: .line 889
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
            ifeq 2
         1: .line 890
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Restarting at node "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* restartingNode */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
         2: .line 893
      StackMap locals:
      StackMap stack:
            aload 1 /* restartingNode */
            dconst_0
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalDemerits:D
         3: .line 894
            aload 0 /* this */
            aload 1 /* restartingNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.line:I
            aload 1 /* restartingNode */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.addNode:(ILorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)V
         4: .line 895
            aload 0 /* this */
            aload 1 /* restartingNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.line:I
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.startLine:I
         5: .line 896
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.startLine:I
            iconst_1
            iadd
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.endLine:I
         6: .line 897
            aload 0 /* this */
            aload 1 /* restartingNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalWidth:I
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalWidth:I
         7: .line 898
            aload 0 /* this */
            aload 1 /* restartingNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalStretch:I
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalStretch:I
         8: .line 899
            aload 0 /* this */
            aload 1 /* restartingNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalShrink:I
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalShrink:I
         9: .line 900
            aload 0 /* this */
            aconst_null
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooShort:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
        10: .line 901
            aload 0 /* this */
            aconst_null
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooLong:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
        11: .line 906
            aload 1 /* restartingNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.position:I
            istore 3 /* restartingIndex */
        start local 3 // int restartingIndex
        12: .line 907
            goto 14
        13: .line 909
      StackMap locals: int
      StackMap stack:
            iinc 3 /* restartingIndex */ 1
        14: .line 907
      StackMap locals:
      StackMap stack:
            iload 3 /* restartingIndex */
            iconst_1
            iadd
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.par:Lorg/apache/fop/layoutmgr/KnuthSequence;
            invokevirtual org.apache.fop.layoutmgr.KnuthSequence.size:()I
            if_icmpge 16
        15: .line 908
            aload 0 /* this */
            iload 3 /* restartingIndex */
            iconst_1
            iadd
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getElement:(I)Lorg/apache/fop/layoutmgr/KnuthElement;
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isBox:()Z
            ifeq 13
        16: .line 911
      StackMap locals:
      StackMap stack:
            iload 3 /* restartingIndex */
            ireturn
        end local 3 // int restartingIndex
        end local 2 // int currentIndex
        end local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode restartingNode
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   17     0             this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   17     1   restartingNode  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            0   17     2     currentIndex  I
           12   17     3  restartingIndex  I
    MethodParameters:
                Name  Flags
      restartingNode  
      currentIndex    

  protected void considerLegalBreak(org.apache.fop.layoutmgr.KnuthElement, int);
    descriptor: (Lorg/apache/fop/layoutmgr/KnuthElement;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=12, locals=13, args_size=3
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.KnuthElement element
        start local 2 // int elementIdx
         0: .line 922
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
            ifeq 6
         1: .line 923
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "considerLegalBreak() at "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* elementIdx */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         2: .line 924
            ldc " ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalWidth:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "+"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalStretch:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalShrink:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         3: .line 925
            ldc "), parts/lines: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.startLine:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.endLine:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 923
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
         5: .line 926
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "\tCurrent active node list: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeNodeCount:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            ldc "\t"
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.toString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
         6: .line 929
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastDeactivated:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         7: .line 930
            aload 0 /* this */
            aconst_null
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooLong:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         8: .line 931
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.startLine:I
            istore 3 /* line */
        start local 3 // int line
         9: goto 42
        10: .line 932
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* line */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getNode:(I)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 4 /* node */
        start local 4 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        11: goto 39
        12: .line 933
      StackMap locals: org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
      StackMap stack:
            aload 4 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.position:I
            iload 2 /* elementIdx */
            if_icmpne 14
        13: .line 934
            goto 38
        14: .line 936
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* node */
            aload 1 /* element */
            iload 2 /* elementIdx */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.computeDifference:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;Lorg/apache/fop/layoutmgr/KnuthElement;I)I
            istore 5 /* difference */
        start local 5 // int difference
        15: .line 937
            aload 0 /* this */
            aload 1 /* element */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.endLine:I
            iload 5 /* difference */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.elementCanEndLine:(Lorg/apache/fop/layoutmgr/KnuthElement;II)Z
            ifne 18
        16: .line 938
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            ldc "Skipping legal break"
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
        17: .line 939
            goto 40
        18: .line 942
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 4 /* node */
            iload 5 /* difference */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.computeAdjustmentRatio:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;I)D
            dstore 6 /* r */
        start local 6 // double r
        19: .line 943
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalShrink:I
            aload 4 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalShrink:I
            isub
            istore 8 /* availableShrink */
        start local 8 // int availableShrink
        20: .line 944
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalStretch:I
            aload 4 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalStretch:I
            isub
            istore 9 /* availableStretch */
        start local 9 // int availableStretch
        21: .line 946
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
            ifeq 24
        22: .line 947
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "\tr="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            dload 6 /* r */
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            ldc " difference="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 5 /* difference */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
        23: .line 948
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "\tline="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* line */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
        24: .line 951
      StackMap locals: double int int
      StackMap stack:
            aload 1 /* element */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isForcedBreak:()Z
            ifeq 26
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.handlingFloat:()Z
            ifeq 26
        25: .line 952
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.disableFloatHandling:()V
        26: .line 955
      StackMap locals:
      StackMap stack:
            dload 6 /* r */
            ldc -1.0
            dcmpg
            iflt 27
            aload 1 /* element */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isForcedBreak:()Z
            ifne 27
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.handlingFloat:()Z
            ifeq 28
        27: .line 956
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* node */
            iload 3 /* line */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.deactivateNode:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;I)V
        28: .line 959
      StackMap locals:
      StackMap stack:
            dload 6 /* r */
            invokestatic org.apache.fop.layoutmgr.BreakingAlgorithm$FitnessClasses.computeFitness:(D)I
            istore 10 /* fitnessClass */
        start local 10 // int fitnessClass
        29: .line 960
            aload 0 /* this */
            aload 4 /* node */
            aload 1 /* element */
            iload 10 /* fitnessClass */
            dload 6 /* r */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.computeDemerits:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;Lorg/apache/fop/layoutmgr/KnuthElement;ID)D
            dstore 11 /* demerits */
        start local 11 // double demerits
        30: .line 962
            dload 6 /* r */
            ldc -1.0
            dcmpl
            iflt 34
            dload 6 /* r */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.threshold:D
            dcmpg
            ifgt 34
        31: .line 963
            aload 0 /* this */
            aload 4 /* node */
            iload 5 /* difference */
            dload 6 /* r */
        32: .line 964
            dload 11 /* demerits */
            iload 10 /* fitnessClass */
            iload 8 /* availableShrink */
            iload 9 /* availableStretch */
        33: .line 963
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.activateNode:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;IDDIII)V
        34: .line 969
      StackMap locals: int double
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.force:Z
            ifeq 38
            dload 6 /* r */
            ldc -1.0
            dcmpg
            ifle 35
            dload 6 /* r */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.threshold:D
            dcmpl
            ifle 38
        35: .line 970
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* node */
            iload 3 /* line */
            iload 2 /* elementIdx */
            iload 5 /* difference */
            dload 6 /* r */
        36: .line 971
            dload 11 /* demerits */
            iload 10 /* fitnessClass */
            iload 8 /* availableShrink */
            iload 9 /* availableStretch */
        37: .line 970
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.forceNode:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;IIIDDIII)V
        end local 11 // double demerits
        end local 10 // int fitnessClass
        end local 9 // int availableStretch
        end local 8 // int availableShrink
        end local 6 // double r
        end local 5 // int difference
        38: .line 932
      StackMap locals: org.apache.fop.layoutmgr.BreakingAlgorithm org.apache.fop.layoutmgr.KnuthElement int int org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
      StackMap stack:
            aload 4 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.next:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 4 /* node */
      StackMap locals:
      StackMap stack:
        39: aload 4 /* node */
            ifnonnull 12
        end local 4 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        40: .line 974
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* line */
            iload 2 /* elementIdx */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.addBreaks:(II)V
        41: .line 931
            iinc 3 /* line */ 1
      StackMap locals:
      StackMap stack:
        42: iload 3 /* line */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.endLine:I
            if_icmplt 10
        end local 3 // int line
        43: .line 976
            return
        end local 2 // int elementIdx
        end local 1 // org.apache.fop.layoutmgr.KnuthElement element
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   44     0              this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   44     1           element  Lorg/apache/fop/layoutmgr/KnuthElement;
            0   44     2        elementIdx  I
            9   43     3              line  I
           11   40     4              node  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
           15   38     5        difference  I
           19   38     6                 r  D
           20   38     8   availableShrink  I
           21   38     9  availableStretch  I
           29   38    10      fitnessClass  I
           30   38    11          demerits  D
    MethodParameters:
            Name  Flags
      element     
      elementIdx  

  protected boolean elementCanEndLine(org.apache.fop.layoutmgr.KnuthElement, int, int);
    descriptor: (Lorg/apache/fop/layoutmgr/KnuthElement;II)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.KnuthElement element
        start local 2 // int line
        start local 3 // int difference
         0: .line 987
            aload 1 /* element */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isPenalty:()Z
            ifeq 3
         1: .line 988
            aload 1 /* element */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.getPenalty:()I
            sipush 1000
         2: .line 987
            if_icmplt 3
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_1
            ireturn
        end local 3 // int difference
        end local 2 // int line
        end local 1 // org.apache.fop.layoutmgr.KnuthElement element
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    4     1     element  Lorg/apache/fop/layoutmgr/KnuthElement;
            0    4     2        line  I
            0    4     3  difference  I
    MethodParameters:
            Name  Flags
      element     
      line        
      difference  

  protected void forceNode(org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode, int, int, int, double, double, int, int, int);
    descriptor: (Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;IIIDDIII)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=15, locals=17, args_size=10
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        start local 2 // int line
        start local 3 // int elementIdx
        start local 4 // int difference
        start local 5 // double r
        start local 7 // double demerits
        start local 9 // int fitnessClass
        start local 10 // int availableShrink
        start local 11 // int availableStretch
         0: .line 1014
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalWidth:I
            istore 12 /* newWidth */
        start local 12 // int newWidth
         1: .line 1015
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalStretch:I
            istore 13 /* newStretch */
        start local 13 // int newStretch
         2: .line 1016
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalShrink:I
            istore 14 /* newShrink */
        start local 14 // int newShrink
         3: .line 1024
            iload 3 /* elementIdx */
            istore 15 /* i */
        start local 15 // int i
         4: goto 16
         5: .line 1025
      StackMap locals: org.apache.fop.layoutmgr.BreakingAlgorithm org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode int int int double double int int int int int int int
      StackMap stack:
            aload 0 /* this */
            iload 15 /* i */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getElement:(I)Lorg/apache/fop/layoutmgr/KnuthElement;
            astore 16 /* tempElement */
        start local 16 // org.apache.fop.layoutmgr.KnuthElement tempElement
         6: .line 1026
            aload 16 /* tempElement */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isBox:()Z
            ifeq 8
         7: .line 1027
            goto 17
         8: .line 1028
      StackMap locals: org.apache.fop.layoutmgr.KnuthElement
      StackMap stack:
            aload 16 /* tempElement */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isGlue:()Z
            ifeq 13
         9: .line 1029
            iload 12 /* newWidth */
            aload 16 /* tempElement */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.getWidth:()I
            iadd
            istore 12 /* newWidth */
        10: .line 1030
            iload 13 /* newStretch */
            aload 16 /* tempElement */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.getStretch:()I
            iadd
            istore 13 /* newStretch */
        11: .line 1031
            iload 14 /* newShrink */
            aload 16 /* tempElement */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.getShrink:()I
            iadd
            istore 14 /* newShrink */
        12: .line 1032
            goto 15
      StackMap locals:
      StackMap stack:
        13: aload 16 /* tempElement */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isForcedBreak:()Z
            ifeq 15
            iload 15 /* i */
            iload 3 /* elementIdx */
            if_icmpeq 15
        14: .line 1033
            goto 17
        end local 16 // org.apache.fop.layoutmgr.KnuthElement tempElement
        15: .line 1024
      StackMap locals:
      StackMap stack:
            iinc 15 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 15 /* i */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.par:Lorg/apache/fop/layoutmgr/KnuthSequence;
            invokevirtual org.apache.fop.layoutmgr.KnuthSequence.size:()I
            if_icmplt 5
        end local 15 // int i
        17: .line 1037
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* node */
            iload 2 /* line */
            iload 3 /* elementIdx */
            iload 4 /* difference */
            dload 5 /* r */
            dload 7 /* demerits */
            iload 9 /* fitnessClass */
            iload 10 /* availableShrink */
        18: .line 1038
            iload 11 /* availableStretch */
            iload 12 /* newWidth */
            iload 13 /* newStretch */
            iload 14 /* newShrink */
        19: .line 1037
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.createForcedNodes:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;IIIDDIIIIII)V
        20: .line 1039
            return
        end local 14 // int newShrink
        end local 13 // int newStretch
        end local 12 // int newWidth
        end local 11 // int availableStretch
        end local 10 // int availableShrink
        end local 9 // int fitnessClass
        end local 7 // double demerits
        end local 5 // double r
        end local 4 // int difference
        end local 3 // int elementIdx
        end local 2 // int line
        end local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   21     0              this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   21     1              node  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            0   21     2              line  I
            0   21     3        elementIdx  I
            0   21     4        difference  I
            0   21     5                 r  D
            0   21     7          demerits  D
            0   21     9      fitnessClass  I
            0   21    10   availableShrink  I
            0   21    11  availableStretch  I
            1   21    12          newWidth  I
            2   21    13        newStretch  I
            3   21    14         newShrink  I
            4   17    15                 i  I
            6   15    16       tempElement  Lorg/apache/fop/layoutmgr/KnuthElement;
    MethodParameters:
                  Name  Flags
      node              
      line              
      elementIdx        
      difference        
      r                 
      demerits          
      fitnessClass      
      availableShrink   
      availableStretch  

  protected void createForcedNodes(org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode, int, int, int, double, double, int, int, int, int, int, int);
    descriptor: (Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;IIIDDIIIIII)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=16, locals=15, args_size=13
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        start local 2 // int line
        start local 3 // int elementIdx
        start local 4 // int difference
        start local 5 // double r
        start local 7 // double demerits
        start local 9 // int fitnessClass
        start local 10 // int availableShrink
        start local 11 // int availableStretch
        start local 12 // int newWidth
        start local 13 // int newStretch
        start local 14 // int newShrink
         0: .line 1044
            dload 5 /* r */
            ldc -1.0
            dcmpg
            ifgt 11
         1: .line 1045
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Considering tooLong, demerits="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            dload 7 /* demerits */
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
         2: .line 1046
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooLong:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            ifnull 3
            dload 7 /* demerits */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooLong:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalDemerits:D
            dcmpg
            ifge 23
         3: .line 1047
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            iload 3 /* elementIdx */
            iload 2 /* line */
            iconst_1
            iadd
            iload 9 /* fitnessClass */
         4: .line 1048
            iload 12 /* newWidth */
            iload 13 /* newStretch */
            iload 14 /* newShrink */
         5: .line 1049
            dload 5 /* r */
            iload 10 /* availableShrink */
            iload 11 /* availableStretch */
         6: .line 1050
            iload 4 /* difference */
            dload 7 /* demerits */
            aload 1 /* node */
         7: .line 1047
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.createNode:(IIIIIIDIIIDLorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooLong:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         8: .line 1051
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
            ifeq 23
         9: .line 1052
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Picking tooLong "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooLong:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
        10: .line 1055
            goto 23
        11: .line 1056
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooShort:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            ifnull 12
            dload 7 /* demerits */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooShort:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalDemerits:D
            dcmpg
            ifgt 23
        12: .line 1057
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.considerTooShort:Z
            ifeq 16
        13: .line 1059
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            dload 7 /* demerits */
            aload 1 /* node */
            dload 5 /* r */
            iload 10 /* availableShrink */
            iload 11 /* availableStretch */
            iload 4 /* difference */
        14: .line 1060
            iload 9 /* fitnessClass */
        15: .line 1059
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.addRecord:(DLorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;DIIII)V
        16: .line 1062
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            iload 3 /* elementIdx */
            iload 2 /* line */
            iconst_1
            iadd
            iload 9 /* fitnessClass */
        17: .line 1063
            iload 12 /* newWidth */
            iload 13 /* newStretch */
            iload 14 /* newShrink */
        18: .line 1064
            dload 5 /* r */
            iload 10 /* availableShrink */
            iload 11 /* availableStretch */
        19: .line 1065
            iload 4 /* difference */
            dload 7 /* demerits */
            aload 1 /* node */
        20: .line 1062
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.createNode:(IIIIIIDIIIDLorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooShort:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
        21: .line 1066
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
            ifeq 23
        22: .line 1067
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Picking tooShort "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooShort:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
        23: .line 1071
      StackMap locals:
      StackMap stack:
            return
        end local 14 // int newShrink
        end local 13 // int newStretch
        end local 12 // int newWidth
        end local 11 // int availableStretch
        end local 10 // int availableShrink
        end local 9 // int fitnessClass
        end local 7 // double demerits
        end local 5 // double r
        end local 4 // int difference
        end local 3 // int elementIdx
        end local 2 // int line
        end local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   24     0              this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   24     1              node  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            0   24     2              line  I
            0   24     3        elementIdx  I
            0   24     4        difference  I
            0   24     5                 r  D
            0   24     7          demerits  D
            0   24     9      fitnessClass  I
            0   24    10   availableShrink  I
            0   24    11  availableStretch  I
            0   24    12          newWidth  I
            0   24    13        newStretch  I
            0   24    14         newShrink  I
    MethodParameters:
                  Name  Flags
      node              
      line              
      elementIdx        
      difference        
      r                 
      demerits          
      fitnessClass      
      availableShrink   
      availableStretch  
      newWidth          
      newStretch        
      newShrink         

  protected void activateNode(org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode, int, double, double, int, int, int);
    descriptor: (Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;IDDIII)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=10, args_size=8
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        start local 2 // int difference
        start local 3 // double r
        start local 5 // double demerits
        start local 7 // int fitnessClass
        start local 8 // int availableShrink
        start local 9 // int availableStretch
         0: .line 1094
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
            ifeq 3
         1: .line 1095
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "\tDemerits="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            dload 5 /* demerits */
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
         2: .line 1096
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "\tFitness class="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm$FitnessClasses.NAMES:[Ljava/lang/String;
            iload 7 /* fitnessClass */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
         3: .line 1099
      StackMap locals:
      StackMap stack:
            dload 5 /* demerits */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            iload 7 /* fitnessClass */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.getDemerits:(I)D
            dcmpg
            ifge 8
         4: .line 1101
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            dload 5 /* demerits */
            aload 1 /* node */
            dload 3 /* r */
            iload 8 /* availableShrink */
            iload 9 /* availableStretch */
         5: .line 1102
            iload 2 /* difference */
            iload 7 /* fitnessClass */
         6: .line 1101
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.addRecord:(DLorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;DIIII)V
         7: .line 1103
            aload 0 /* this */
            aconst_null
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastTooShort:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         8: .line 1105
      StackMap locals:
      StackMap stack:
            return
        end local 9 // int availableStretch
        end local 8 // int availableShrink
        end local 7 // int fitnessClass
        end local 5 // double demerits
        end local 3 // double r
        end local 2 // int difference
        end local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    9     0              this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    9     1              node  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            0    9     2        difference  I
            0    9     3                 r  D
            0    9     5          demerits  D
            0    9     7      fitnessClass  I
            0    9     8   availableShrink  I
            0    9     9  availableStretch  I
    MethodParameters:
                  Name  Flags
      node              
      difference        
      r                 
      demerits          
      fitnessClass      
      availableShrink   
      availableStretch  

  protected void deactivateNode(org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode, int);
    descriptor: (Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        start local 2 // int line
         0: .line 1115
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
            ifeq 2
         1: .line 1116
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Removing "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* node */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
         2: .line 1118
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* line */
            aload 1 /* node */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.removeNode:(ILorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)V
         3: .line 1120
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastDeactivated:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            aload 1 /* node */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.compareNodes:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.lastDeactivated:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         4: .line 1121
            return
        end local 2 // int line
        end local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    5     1  node  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            0    5     2  line  I
    MethodParameters:
      Name  Flags
      node  
      line  

  private void addBreaks(int, int);
    descriptor: (II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=10, args_size=3
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // int line
        start local 2 // int elementIdx
         0: .line 1129
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.hasRecords:()Z
            ifne 2
         1: .line 1130
            return
         2: .line 1133
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalWidth:I
            istore 3 /* newWidth */
        start local 3 // int newWidth
         3: .line 1134
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalStretch:I
            istore 4 /* newStretch */
        start local 4 // int newStretch
         4: .line 1135
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalShrink:I
            istore 5 /* newShrink */
        start local 5 // int newShrink
         5: .line 1143
            iload 2 /* elementIdx */
            istore 6 /* i */
        start local 6 // int i
         6: goto 18
         7: .line 1144
      StackMap locals: org.apache.fop.layoutmgr.BreakingAlgorithm int int int int int int
      StackMap stack:
            aload 0 /* this */
            iload 6 /* i */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getElement:(I)Lorg/apache/fop/layoutmgr/KnuthElement;
            astore 7 /* tempElement */
        start local 7 // org.apache.fop.layoutmgr.KnuthElement tempElement
         8: .line 1145
            aload 7 /* tempElement */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isBox:()Z
            ifeq 10
         9: .line 1146
            goto 19
        10: .line 1147
      StackMap locals: org.apache.fop.layoutmgr.KnuthElement
      StackMap stack:
            aload 7 /* tempElement */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isGlue:()Z
            ifeq 15
        11: .line 1148
            iload 3 /* newWidth */
            aload 7 /* tempElement */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.getWidth:()I
            iadd
            istore 3 /* newWidth */
        12: .line 1149
            iload 4 /* newStretch */
            aload 7 /* tempElement */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.getStretch:()I
            iadd
            istore 4 /* newStretch */
        13: .line 1150
            iload 5 /* newShrink */
            aload 7 /* tempElement */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.getShrink:()I
            iadd
            istore 5 /* newShrink */
        14: .line 1151
            goto 17
      StackMap locals:
      StackMap stack:
        15: aload 7 /* tempElement */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isForcedBreak:()Z
            ifeq 17
            iload 6 /* i */
            iload 2 /* elementIdx */
            if_icmpeq 17
        16: .line 1152
            goto 19
        end local 7 // org.apache.fop.layoutmgr.KnuthElement tempElement
        17: .line 1143
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 6 /* i */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.par:Lorg/apache/fop/layoutmgr/KnuthSequence;
            invokevirtual org.apache.fop.layoutmgr.KnuthSequence.size:()I
            if_icmplt 7
        end local 6 // int i
        19: .line 1157
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.getMinDemerits:()D
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.incompatibleFitnessDemerit:I
            i2d
            dadd
            dstore 6 /* minimumDemerits */
        start local 6 // double minimumDemerits
        20: .line 1158
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        21: goto 32
        22: .line 1159
      StackMap locals: double int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            iload 8 /* i */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.notInfiniteDemerits:(I)Z
            ifeq 31
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            iload 8 /* i */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.getDemerits:(I)D
            dload 6 /* minimumDemerits */
            dcmpg
            ifgt 31
        23: .line 1162
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
            ifeq 27
        24: .line 1163
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "\tInsert new break in list of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeNodeCount:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        25: .line 1164
            ldc " from fitness class "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm$FitnessClasses.NAMES:[Ljava/lang/String;
            iload 8 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        26: .line 1163
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
        27: .line 1166
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* elementIdx */
            iload 1 /* line */
            iconst_1
            iadd
            iload 8 /* i */
        28: .line 1167
            iload 3 /* newWidth */
            iload 4 /* newStretch */
            iload 5 /* newShrink */
        29: .line 1166
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.createNode:(IIIIII)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 9 /* newNode */
        start local 9 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode newNode
        30: .line 1168
            aload 0 /* this */
            iload 1 /* line */
            iconst_1
            iadd
            aload 9 /* newNode */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.addNode:(ILorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)V
        end local 9 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode newNode
        31: .line 1158
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        32: iload 8 /* i */
            iconst_3
            if_icmple 22
        end local 8 // int i
        33: .line 1171
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.best:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$BestRecords;
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords.reset:()V
        34: .line 1172
            return
        end local 6 // double minimumDemerits
        end local 5 // int newShrink
        end local 4 // int newStretch
        end local 3 // int newWidth
        end local 2 // int elementIdx
        end local 1 // int line
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   35     0             this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   35     1             line  I
            0   35     2       elementIdx  I
            3   35     3         newWidth  I
            4   35     4       newStretch  I
            5   35     5        newShrink  I
            6   19     6                i  I
            8   17     7      tempElement  Lorg/apache/fop/layoutmgr/KnuthElement;
           20   35     6  minimumDemerits  D
           21   33     8                i  I
           30   31     9          newNode  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    MethodParameters:
            Name  Flags
      line        
      elementIdx  

  protected int computeDifference(org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode, org.apache.fop.layoutmgr.KnuthElement, int);
    descriptor: (Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;Lorg/apache/fop/layoutmgr/KnuthElement;I)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=5, args_size=4
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode activeNode
        start local 2 // org.apache.fop.layoutmgr.KnuthElement element
        start local 3 // int elementIndex
         0: .line 1187
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalWidth:I
            aload 1 /* activeNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalWidth:I
            isub
            istore 4 /* actualWidth */
        start local 4 // int actualWidth
         1: .line 1188
            aload 2 /* element */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isPenalty:()Z
            ifeq 3
         2: .line 1189
            iload 4 /* actualWidth */
            aload 2 /* element */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.getWidth:()I
            iadd
            istore 4 /* actualWidth */
         3: .line 1191
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getLineWidth:()I
            iload 4 /* actualWidth */
            isub
            ireturn
        end local 4 // int actualWidth
        end local 3 // int elementIndex
        end local 2 // org.apache.fop.layoutmgr.KnuthElement element
        end local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode activeNode
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    4     1    activeNode  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            0    4     2       element  Lorg/apache/fop/layoutmgr/KnuthElement;
            0    4     3  elementIndex  I
            1    4     4   actualWidth  I
    MethodParameters:
              Name  Flags
      activeNode    
      element       
      elementIndex  

  protected double computeAdjustmentRatio(org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode, int);
    descriptor: (Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;I)D
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode activeNode
        start local 2 // int difference
         0: .line 1210
            iload 2 /* difference */
            ifle 5
         1: .line 1211
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalStretch:I
            aload 1 /* activeNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalStretch:I
            isub
            istore 3 /* maxAdjustment */
        start local 3 // int maxAdjustment
         2: .line 1212
            iload 3 /* maxAdjustment */
            ifle 4
         3: .line 1213
            iload 2 /* difference */
            i2d
            iload 3 /* maxAdjustment */
            i2d
            ddiv
            dreturn
         4: .line 1215
      StackMap locals: int
      StackMap stack:
            ldc 1000.0
            dreturn
        end local 3 // int maxAdjustment
         5: .line 1217
      StackMap locals:
      StackMap stack:
            iload 2 /* difference */
            ifge 10
         6: .line 1218
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.totalShrink:I
            aload 1 /* activeNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalShrink:I
            isub
            istore 3 /* maxAdjustment */
        start local 3 // int maxAdjustment
         7: .line 1219
            iload 3 /* maxAdjustment */
            ifle 9
         8: .line 1220
            iload 2 /* difference */
            i2d
            iload 3 /* maxAdjustment */
            i2d
            ddiv
            dreturn
         9: .line 1222
      StackMap locals: int
      StackMap stack:
            ldc -1000.0
            dreturn
        end local 3 // int maxAdjustment
        10: .line 1225
      StackMap locals:
      StackMap stack:
            dconst_0
            dreturn
        end local 2 // int difference
        end local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode activeNode
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0           this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   11     1     activeNode  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            0   11     2     difference  I
            2    5     3  maxAdjustment  I
            7   10     3  maxAdjustment  I
    MethodParameters:
            Name  Flags
      activeNode  
      difference  

  protected double computeDemerits(org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode, org.apache.fop.layoutmgr.KnuthElement, int, double);
    descriptor: (Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;Lorg/apache/fop/layoutmgr/KnuthElement;ID)D
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=13, args_size=5
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode activeNode
        start local 2 // org.apache.fop.layoutmgr.KnuthElement element
        start local 3 // int fitnessClass
        start local 4 // double r
         0: .line 1242
            dconst_0
            dstore 6 /* demerits */
        start local 6 // double demerits
         1: .line 1244
            dload 4 /* r */
            invokestatic java.lang.Math.abs:(D)D
            dstore 8 /* f */
        start local 8 // double f
         2: .line 1245
            dconst_1
            ldc 100.0
            dload 8 /* f */
            dmul
            dload 8 /* f */
            dmul
            dload 8 /* f */
            dmul
            dadd
            dstore 8 /* f */
         3: .line 1246
            aload 2 /* element */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isPenalty:()Z
            ifeq 14
         4: .line 1247
            aload 2 /* element */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.getPenalty:()I
            i2d
            dstore 10 /* penalty */
        start local 10 // double penalty
         5: .line 1248
            dload 10 /* penalty */
            dconst_0
            dcmpl
            iflt 9
         6: .line 1249
            dload 8 /* f */
            dload 10 /* penalty */
            dadd
            dstore 8 /* f */
         7: .line 1250
            dload 8 /* f */
            dload 8 /* f */
            dmul
            dstore 6 /* demerits */
         8: .line 1251
            goto 15
      StackMap locals: double double double
      StackMap stack:
         9: aload 2 /* element */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isForcedBreak:()Z
            ifne 12
        10: .line 1252
            dload 8 /* f */
            dload 8 /* f */
            dmul
            dload 10 /* penalty */
            dload 10 /* penalty */
            dmul
            dsub
            dstore 6 /* demerits */
        11: .line 1253
            goto 15
        12: .line 1254
      StackMap locals:
      StackMap stack:
            dload 8 /* f */
            dload 8 /* f */
            dmul
            dstore 6 /* demerits */
        end local 10 // double penalty
        13: .line 1256
            goto 15
        14: .line 1257
      StackMap locals:
      StackMap stack:
            dload 8 /* f */
            dload 8 /* f */
            dmul
            dstore 6 /* demerits */
        15: .line 1260
      StackMap locals:
      StackMap stack:
            aload 2 /* element */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isPenalty:()Z
            ifeq 33
            aload 2 /* element */
            checkcast org.apache.fop.layoutmgr.KnuthPenalty
            invokevirtual org.apache.fop.layoutmgr.KnuthPenalty.isPenaltyFlagged:()Z
            ifeq 33
        16: .line 1261
            aload 0 /* this */
            aload 1 /* activeNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.position:I
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getElement:(I)Lorg/apache/fop/layoutmgr/KnuthElement;
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isPenalty:()Z
            ifeq 33
        17: .line 1262
            aload 0 /* this */
            aload 1 /* activeNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.position:I
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getElement:(I)Lorg/apache/fop/layoutmgr/KnuthElement;
            checkcast org.apache.fop.layoutmgr.KnuthPenalty
            invokevirtual org.apache.fop.layoutmgr.KnuthPenalty.isPenaltyFlagged:()Z
            ifeq 33
        18: .line 1264
            dload 6 /* demerits */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.repeatedFlaggedDemerit:I
            i2d
            dadd
            dstore 6 /* demerits */
        19: .line 1268
            iconst_2
            istore 10 /* flaggedPenaltiesCount */
        start local 10 // int flaggedPenaltiesCount
        20: .line 1269
            aload 1 /* activeNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.previous:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 11 /* prevNode */
        start local 11 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode prevNode
        21: .line 1270
            goto 28
        22: .line 1272
      StackMap locals: int org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
      StackMap stack:
            aload 0 /* this */
            aload 11 /* prevNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.position:I
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getElement:(I)Lorg/apache/fop/layoutmgr/KnuthElement;
            astore 12 /* prevElement */
        start local 12 // org.apache.fop.layoutmgr.KnuthElement prevElement
        23: .line 1273
            aload 12 /* prevElement */
            invokevirtual org.apache.fop.layoutmgr.KnuthElement.isPenalty:()Z
            ifeq 30
        24: .line 1274
            aload 12 /* prevElement */
            checkcast org.apache.fop.layoutmgr.KnuthPenalty
            invokevirtual org.apache.fop.layoutmgr.KnuthPenalty.isPenaltyFlagged:()Z
            ifeq 30
        25: .line 1276
            iinc 10 /* flaggedPenaltiesCount */ 1
        end local 12 // org.apache.fop.layoutmgr.KnuthElement prevElement
        26: .line 1277
            aload 11 /* prevNode */
        27: .line 1271
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.previous:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 11 /* prevNode */
        28: .line 1270
      StackMap locals:
      StackMap stack:
            aload 11 /* prevNode */
            ifnull 30
            iload 10 /* flaggedPenaltiesCount */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.maxFlaggedPenaltiesCount:I
        29: .line 1269
            if_icmple 22
        end local 11 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode prevNode
        30: .line 1283
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.maxFlaggedPenaltiesCount:I
            iconst_1
            if_icmplt 33
        31: .line 1284
            iload 10 /* flaggedPenaltiesCount */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.maxFlaggedPenaltiesCount:I
            if_icmple 33
        32: .line 1287
            dload 6 /* demerits */
            ldc Infinity
            dadd
            dstore 6 /* demerits */
        end local 10 // int flaggedPenaltiesCount
        33: .line 1290
      StackMap locals:
      StackMap stack:
            iload 3 /* fitnessClass */
            aload 1 /* activeNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.fitness:I
            isub
            invokestatic java.lang.Math.abs:(I)I
            iconst_1
            if_icmple 35
        34: .line 1293
            dload 6 /* demerits */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.incompatibleFitnessDemerit:I
            i2d
            dadd
            dstore 6 /* demerits */
        35: .line 1295
      StackMap locals:
      StackMap stack:
            dload 6 /* demerits */
            aload 1 /* activeNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalDemerits:D
            dadd
            dstore 6 /* demerits */
        36: .line 1296
            dload 6 /* demerits */
            dreturn
        end local 8 // double f
        end local 6 // double demerits
        end local 4 // double r
        end local 3 // int fitnessClass
        end local 2 // org.apache.fop.layoutmgr.KnuthElement element
        end local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode activeNode
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   37     0                   this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   37     1             activeNode  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            0   37     2                element  Lorg/apache/fop/layoutmgr/KnuthElement;
            0   37     3           fitnessClass  I
            0   37     4                      r  D
            1   37     6               demerits  D
            2   37     8                      f  D
            5   13    10                penalty  D
           20   33    10  flaggedPenaltiesCount  I
           21   30    11               prevNode  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
           23   26    12            prevElement  Lorg/apache/fop/layoutmgr/KnuthElement;
    MethodParameters:
              Name  Flags
      activeNode    
      element       
      fitnessClass  
      r             

  protected void finish();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 1304
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
            ifeq 3
         1: .line 1305
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Main loop completed "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeNodeCount:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
         2: .line 1306
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Active nodes="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            ldc ""
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.toString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
         3: .line 1308
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  protected org.apache.fop.layoutmgr.KnuthElement getElement(int);
    descriptor: (I)Lorg/apache/fop/layoutmgr/KnuthElement;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // int idx
         0: .line 1316
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.par:Lorg/apache/fop/layoutmgr/KnuthSequence;
            iload 1 /* idx */
            invokevirtual org.apache.fop.layoutmgr.KnuthSequence.get:(I)Ljava/lang/Object;
            checkcast org.apache.fop.layoutmgr.KnuthElement
            areturn
        end local 1 // int idx
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    1     1   idx  I
    MethodParameters:
      Name  Flags
      idx   

  protected org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode compareNodes(org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode, org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode);
    descriptor: (Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node1
        start local 2 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node2
         0: .line 1326
            aload 1 /* node1 */
            ifnull 1
            aload 2 /* node2 */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.position:I
            aload 1 /* node1 */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.position:I
            if_icmple 2
         1: .line 1327
      StackMap locals:
      StackMap stack:
            aload 2 /* node2 */
            areturn
         2: .line 1329
      StackMap locals:
      StackMap stack:
            aload 2 /* node2 */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.position:I
            aload 1 /* node1 */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.position:I
            if_icmpne 5
         3: .line 1330
            aload 2 /* node2 */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalDemerits:D
            aload 1 /* node1 */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.totalDemerits:D
            dcmpg
            ifge 5
         4: .line 1331
            aload 2 /* node2 */
            areturn
         5: .line 1334
      StackMap locals:
      StackMap stack:
            aload 1 /* node1 */
            areturn
        end local 2 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node2
        end local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node1
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    6     1  node1  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            0    6     2  node2  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    MethodParameters:
       Name  Flags
      node1  
      node2  

  protected void addNode(int, org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode);
    descriptor: (ILorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // int line
        start local 2 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
         0: .line 1344
            iload 1 /* line */
            iconst_2
            imul
            istore 3 /* headIdx */
        start local 3 // int headIdx
         1: .line 1345
            iload 3 /* headIdx */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            arraylength
            if_icmplt 5
         2: .line 1346
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 4 /* oldList */
        start local 4 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode[] oldList
         3: .line 1347
            aload 0 /* this */
            iload 3 /* headIdx */
            iload 3 /* headIdx */
            iadd
            anewarray org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         4: .line 1348
            aload 4 /* oldList */
            iconst_0
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            iconst_0
            aload 4 /* oldList */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        end local 4 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode[] oldList
         5: .line 1350
      StackMap locals: int
      StackMap stack:
            aload 2 /* node */
            aconst_null
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.next:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         6: .line 1351
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            iload 3 /* headIdx */
            iconst_1
            iadd
            aaload
            ifnull 9
         7: .line 1352
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            iload 3 /* headIdx */
            iconst_1
            iadd
            aaload
            aload 2 /* node */
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.next:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         8: .line 1353
            goto 11
         9: .line 1354
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            iload 3 /* headIdx */
            aload 2 /* node */
            aastore
        10: .line 1355
            aload 0 /* this */
            iload 1 /* line */
            iconst_1
            iadd
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.endLine:I
        11: .line 1357
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            iload 3 /* headIdx */
            iconst_1
            iadd
            aload 2 /* node */
            aastore
        12: .line 1358
            aload 0 /* this */
            dup
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeNodeCount:I
            iconst_1
            iadd
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeNodeCount:I
        13: .line 1359
            return
        end local 3 // int headIdx
        end local 2 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        end local 1 // int line
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   14     1     line  I
            0   14     2     node  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            1   14     3  headIdx  I
            3    5     4  oldList  [Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    MethodParameters:
      Name  Flags
      line  
      node  

  protected void removeNode(int, org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode);
    descriptor: (ILorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // int line
        start local 2 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
         0: .line 1368
            iload 1 /* line */
            iconst_2
            imul
            istore 3 /* headIdx */
        start local 3 // int headIdx
         1: .line 1369
            aload 0 /* this */
            iload 1 /* line */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getNode:(I)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 4 /* n */
        start local 4 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode n
         2: .line 1370
            aload 4 /* n */
            aload 2 /* node */
            if_acmpeq 12
         3: .line 1372
            aconst_null
            astore 5 /* prevNode */
        start local 5 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode prevNode
         4: .line 1373
            goto 7
         5: .line 1374
      StackMap locals: int org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
      StackMap stack:
            aload 4 /* n */
            astore 5 /* prevNode */
         6: .line 1375
            aload 4 /* n */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.next:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 4 /* n */
         7: .line 1373
      StackMap locals:
      StackMap stack:
            aload 4 /* n */
            aload 2 /* node */
            if_acmpne 5
         8: .line 1377
            aload 5 /* prevNode */
            aload 4 /* n */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.next:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.next:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
         9: .line 1378
            aload 5 /* prevNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.next:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            ifnonnull 18
        10: .line 1379
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            iload 3 /* headIdx */
            iconst_1
            iadd
            aload 5 /* prevNode */
            aastore
        end local 5 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode prevNode
        11: .line 1381
            goto 18
        12: .line 1382
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            iload 3 /* headIdx */
            aload 2 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.next:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            aastore
        13: .line 1383
            aload 2 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.next:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            ifnonnull 17
        14: .line 1384
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            iload 3 /* headIdx */
            iconst_1
            iadd
            aconst_null
            aastore
        15: .line 1386
            goto 17
        16: .line 1387
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.startLine:I
            iconst_1
            iadd
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.startLine:I
        17: .line 1386
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.startLine:I
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.endLine:I
            if_icmpge 18
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.startLine:I
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getNode:(I)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            ifnull 16
        18: .line 1390
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeNodeCount:I
            iconst_1
            isub
            putfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeNodeCount:I
        19: .line 1391
            return
        end local 4 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode n
        end local 3 // int headIdx
        end local 2 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        end local 1 // int line
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   20     0      this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   20     1      line  I
            0   20     2      node  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            1   20     3   headIdx  I
            2   20     4         n  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            4   11     5  prevNode  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    MethodParameters:
      Name  Flags
      line  
      node  

  protected org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode getNode(int);
    descriptor: (I)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // int line
         0: .line 1399
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.activeLines:[Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            iload 1 /* line */
            iconst_2
            imul
            aaload
            areturn
        end local 1 // int line
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    1     1  line  I
    MethodParameters:
      Name  Flags
      line  

  protected int getLineWidth(int);
    descriptor: (I)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // int line
         0: .line 1408
            getstatic org.apache.fop.layoutmgr.BreakingAlgorithm.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lineWidth:I
            ifge 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1409
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lineWidth:I
            ireturn
        end local 1 // int line
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    2     1  line  I
    MethodParameters:
      Name  Flags
      line  

  protected int getLineWidth();
    descriptor: ()I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 1414
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.lineWidth:I
            ireturn
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  public java.lang.String toString(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // java.lang.String prepend
         0: .line 1423
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuffer sb
         1: .line 1424
            aload 2 /* sb */
            ldc "[\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         2: .line 1425
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.startLine:I
            istore 3 /* i */
        start local 3 // int i
         3: goto 10
         4: .line 1426
      StackMap locals: java.lang.StringBuffer int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* i */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.getNode:(I)Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 4 /* node */
        start local 4 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
         5: goto 8
         6: .line 1427
      StackMap locals: org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
      StackMap stack:
            aload 2 /* sb */
            aload 1 /* prepend */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            bipush 9
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            aload 4 /* node */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
            ldc ",\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         7: .line 1426
            aload 4 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.next:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 4 /* node */
      StackMap locals:
      StackMap stack:
         8: aload 4 /* node */
            ifnonnull 6
        end local 4 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
         9: .line 1425
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 3 /* i */
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.endLine:I
            if_icmplt 4
        end local 3 // int i
        11: .line 1430
            aload 2 /* sb */
            aload 1 /* prepend */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            ldc "]"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        12: .line 1431
            aload 2 /* sb */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuffer sb
        end local 1 // java.lang.String prepend
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0   13     1  prepend  Ljava/lang/String;
            1   13     2       sb  Ljava/lang/StringBuffer;
            3   11     3        i  I
            5    9     4     node  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
    MethodParameters:
         Name  Flags
      prepend  

  protected abstract int filterActiveNodes();
    descriptor: ()I
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  protected void calculateBreakPoints(org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode, org.apache.fop.layoutmgr.KnuthSequence, int);
    descriptor: (Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;Lorg/apache/fop/layoutmgr/KnuthSequence;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
        start local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        start local 2 // org.apache.fop.layoutmgr.KnuthSequence par
        start local 3 // int total
         0: .line 1448
            aload 1 /* node */
            astore 4 /* bestActiveNode */
        start local 4 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode bestActiveNode
         1: .line 1450
            aload 1 /* node */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.line:I
            istore 5 /* i */
        start local 5 // int i
         2: goto 6
         3: .line 1451
      StackMap locals: org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode int
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bestActiveNode */
            aload 2 /* par */
            iload 3 /* total */
            invokevirtual org.apache.fop.layoutmgr.BreakingAlgorithm.updateData2:(Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;Lorg/apache/fop/layoutmgr/KnuthSequence;I)V
         4: .line 1452
            aload 4 /* bestActiveNode */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode.previous:Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            astore 4 /* bestActiveNode */
         5: .line 1450
            iinc 5 /* i */ -1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            ifgt 3
        end local 5 // int i
         7: .line 1454
            return
        end local 4 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode bestActiveNode
        end local 3 // int total
        end local 2 // org.apache.fop.layoutmgr.KnuthSequence par
        end local 1 // org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode node
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0            this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
            0    8     1            node  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            0    8     2             par  Lorg/apache/fop/layoutmgr/KnuthSequence;
            0    8     3           total  I
            1    8     4  bestActiveNode  Lorg/apache/fop/layoutmgr/BreakingAlgorithm$KnuthNode;
            2    7     5               i  I
    MethodParameters:
       Name  Flags
      node   
      par    
      total  

  public int getAlignment();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 1458
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.alignment:I
            ireturn
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  public int getAlignmentLast();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 1463
            aload 0 /* this */
            getfield org.apache.fop.layoutmgr.BreakingAlgorithm.alignmentLast:I
            ireturn
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  protected boolean handlingFloat();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 1467
            iconst_0
            ireturn
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  protected int handleFloat();
    descriptor: ()I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 1471
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;

  protected void disableFloatHandling();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
         0: .line 1475
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
        end local 0 // org.apache.fop.layoutmgr.BreakingAlgorithm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/layoutmgr/BreakingAlgorithm;
}
SourceFile: "BreakingAlgorithm.java"
NestMembers:
  org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords  org.apache.fop.layoutmgr.BreakingAlgorithm$FitnessClasses  org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode
InnerClasses:
  protected BestRecords = org.apache.fop.layoutmgr.BreakingAlgorithm$BestRecords of org.apache.fop.layoutmgr.BreakingAlgorithm
  final FitnessClasses = org.apache.fop.layoutmgr.BreakingAlgorithm$FitnessClasses of org.apache.fop.layoutmgr.BreakingAlgorithm
  public KnuthNode = org.apache.fop.layoutmgr.BreakingAlgorithm$KnuthNode of org.apache.fop.layoutmgr.BreakingAlgorithm