anchor.diff:  
   uses
     Classes, contnrs, sysutils,
  -  mVirtualDataSetInterfaces;
  +  mVirtualDataSetInterfaces, mMaps;
   
   const
     PREFIX_JOIN_SEPARATOR = '$';
  
positive.code:   i : integer;
  begin
    Result := nil;
    for i := 0 to Count - 1 do
    begin
      if CompareText(Get(i).Prefix, aPrefix) = 0 then
      begin
        Result := Get(i);
        exit;
      end;
    end;
  end;
  
  { TmBuiltInJoin }
  
negative.code: constructor TmBuiltInJoins.Create;
  begin
    FList := TObjectList.Create(true);
    FDictionary := TmStringDictionary.Create();
  end;
  
  destructor TmBuiltInJoins.Destroy;
  begin
    FDictionary.Free;
    FList.Free;
    inherited Destroy;
  end;
  