anchor.diff:    end;
   end;
   
  +function TDValue.GetValueByPath(pvPath:string; pvDefault:TObject): TObject;
  +var
  +  lvItem:TDValue;
  +begin
  +  lvItem := FindByPath(pvPath);
  +  if lvItem = nil then
  +  begin
  +    Result := pvDefault;
  +  end else
  +  begin
  +    Result := lvItem.AsObject;
  +  end;
  +end;
  +
   function TDValue.IndexDataOf(pvData:Pointer): Integer;
   var
     lvCount, j:Integer;
  
positive.code:     function GetValueByPath(pvPath: string; pvDefault: Int64): Int64; overload;
      function GetValueByPath(pvPath:string; pvDefault:Boolean): Boolean; overload;
      function GetValueByPath(pvPath:string; pvDefault:Double): Double; overload;
  
  
      /// <summary>
      ///   Base64븳ֵValue
  
negative.code:     /// </summary>
      function RemoveByName(pvName:String): Integer;
  
  
      function IndexDataOf(pvData:Pointer): Integer;
  
      /// <summary>
  