anchor.diff:      property Count: Int64;
       property TotalTicks: Int64;
       property SelfTicks: Int64;
  +    property MinTotalTicks: Int64 := Int64.MaxValue;
  +    property MinSelfTicks: Int64 := Int64.MaxValue;
  +    property MaxTotalTicks: Int64;
  +    property MaxSelfTicks: Int64;
     end;
       FrameInfo = class
     public  private
  
positive.code:   private
      class constructor ;
      class var fFW: StreamWriter;
      var fThreads: Dictionary<Integer, ThreadInfo> := new Dictionary<Int32,ThreadInfo>;
  
      class method WriteData;
  
negative.code:   lMI.Count := lMI.Count + 1;
    var lSelfTime := lTime - lLastE.SubCallTime;
    lMI.TotalTicks := lMI.TotalTicks + lTime;
    lMI.MinTotalTicks := Math.Min(lMI.MinTotalTicks, lTime);
    lMI.MaxTotalTicks := Math.Max(lMI.MaxTotalTicks, lTime);
    lMI.SelfTicks := lMI.SelfTicks + lSelfTime;
    lMI.MinSelfTicks := Math.Min(lMI.MinSelfTicks, lSelfTime);
    lMI.MaxSelfTicks := Math.Max(lMI.MaxSelfTicks, lSelfTime);
    lLastE := lLastE.Prev;
    for i: Integer := 1 to SubCallCount do begin
      if lLastE = nil then break;
      var tp := new SITuple(aName, i);
      var lCA := lTI.Methods[lLastE.Method];
  