var
  I: Integer;
  VEncoded: string;
  VBox: string;
begin 
  VBox := RoundEx(GetLMetr ,10) + ',' + RoundEx(GetBMetr, 10) + ',' + RoundEx(GetRMetr, 10) + ',' + RoundEx(GetTMetr, 10);
  // prepare params
  VEncoded := 
    'LAYERS=osm_ram' + '&' +
    'TRANSPARENT=TRUE' + '&' +    
    'SERVICE=WMS' + '&' +
    'VERSION=1.1.1' + '&' +
    'REQUEST=GetMap' + '&' +
    'STYLES=' + '&' +
    'FORMAT=image%2Fpng' + '&' +
    'SRS=EPSG%3A3395' + '&' +
    'WIDTH=256' + '&' +
    'HEIGHT=256' + '&' +
    'BBOX=' + VBox;
  
  // crypt
  for I := 1 to Length(VEncoded) do 
  VEncoded[I] := Chr(Ord(VEncoded[I]) xor 42);
  
  // Base64 encode
  VEncoded := Base64Encode(VEncoded);
  
  //replase "+" with "%2b" charset
  VEncoded := RegExprReplaceMatchSubStr(VEncoded, '\+', '\%2b');
  
  ResultURL:=GetURLBase + VEncoded + '&NAVKEY=NAVIONICS11WEBAPI111&TEST=' + VBox + '&ZOOM=' + IntToStr(GetZ) + '&v=1&SRC=http://www.navionics.com';
  
  RequestHead := 'Referer: http://www.navionics.com/sites/navionics.plurimedia.it/files/coverage/webapp.html?2985400';
end.