anchor.diff:        FIsWhite := True;
         // decode one line
         repeat
  -        if FIsWhite then
  -          RunLength := FindWhiteCode
  -        else
  -          RunLength := FindBlackCode;
  +        RunLength:=FindRunLength;
           //populating array for 2D compression (if needed)
           if ((FOptions and 1) <> 0) then begin
             inc(fBitPos, RunLength);
  
positive.code: 
    // main loop
    repeat
      if FIsWhite then
        RunLength := FindWhiteCode
      else
        RunLength := FindBlackCode;
      if RunLength > 0 then
        if FillRun(RunLength) then
          AdjustEOL;
  
negative.code: 
  //----------------------------------------------------------------------------------------------------------------------
  
  function TCCITTDecoder.FindRunLength: Integer;
  begin
    if FIsWhite then
      Result := DoFiniteStateMachine(FWhiteStates)
    else
      Result := DoFiniteStateMachine(FBlackStates);
  end;
  
  function TCCITTDecoder.Find2DCode: Integer;
  