anchor.diff:  procedure SortRect(var ARect: TRect);
   procedure SortRect(var ARect: TfpgRect);
   procedure SortRect(var left, top, right, bottom: integer);
  +
  +
   
   implementation
   
  
positive.code:     function  Right: TfpgCoord;
      procedure SetBottom(Value: TfpgCoord);
      procedure SetRight(Value: TfpgCoord);
    end;
  
  
  
negative.code:   Width := Value - Left + 1;
  end;
  
  
  { TfpgPoint }
  
  procedure TfpgPoint.SetPoint(AX, AY: integer);
  begin
    X := AX;
    Y := AY;
  end;
  
  function TfpgPoint.ManhattanLength: integer;
  begin
    Result := Abs(X) + Abs(Y);
  end;
  
  function TfpgPoint.ManhattanLength(const PointB: TfpgPoint): integer;
  begin
    Result := Abs(PointB.X-X) + Abs(PointB.Y-Y);
  end;
  
  
  { TfpgSize }
  
  procedure TfpgSize.SetSize(AWidth, AHeight: integer);
  begin
    W := AWidth;
    H := AHeight;
  end;
  
  
  { TfpgWindowBase }
  
  procedure TfpgWindowBase.SetMouseCursor(const AValue: TMouseCursor);
  