anchor.diff:    Result := IncSecond(ADateTime, -(LSegment.FPeriodOffset + LSegment.FBias));
   end;
   
  -function TBundledTimeZone.GetSegment(const ADateTime: TDateTime; const AForceDaylight: Boolean; const AFailOnInvalid: Boolean): TYearSegment;
  +function TBundledTimeZone.GetSegment(const ADateTime: TDateTime; const AForceDaylight:
  +  Boolean; const AFailOnInvalid: Boolean): TYearSegment;
   var
     LSegments: TYearSegmentArray;
     I: Integer;
  
positive.code: 
  {$INCLUDE 'TZDB.inc'}
  
  function EncodeDateMonthLastDayOfWeek(const AYear, AMonth, ADayOfWeek: Word): TDateTime;
  var
    LDoW: Word;
  begin
    { Generate a date that looks like: Year/Month/(Last Day of Month) }
    Result := EncodeDate(AYear, AMonth, DaysInAMonth(AYear, AMonth));
  
    { Get the day of week for this newly crafted date }
    LDoW := DayOfTheWeek(Result);
  
negative.code: var
    LCurrRule: PYearBoundRule;
    LLastYearRule: PRule;
    LAbsolute: TPreciseTime;
    I: Integer;
    LRules: {$IFDEF DELPHI}TList{$ELSE}TFPGList{$ENDIF}<TCompiledRule>;
  {$IFDEF DELPHI}
  