anchor.diff:            FSock.SendBuffer(addr(jsonresponsetxt[1]),Length(jsonresponsetxt));
           end;
         end;
  -      _RPCServer.AddRPCLog(FSock.GetRemoteSinIP+':'+InttoStr(FSock.GetRemoteSinPort),'Method:'+methodName+' Params:'+paramsTxt+' '+Inttostr(errNum)+':'+errDesc+' Time:'+FormatFloat('0.000',(TPlatform.GetTickCount - tc)/1000));
  +      _RPCServer.AddRPCLog(FSock.GetRemoteSinIP+':'+InttoStr(FSock.GetRemoteSinPort),'Method:'+methodName+' Params:'+paramsTxt+' '+Inttostr(errNum)+':'+errDesc+' Time:'+FormatFloat('0.000',(TPlatform.GetElapsedMilliseconds(tc)/1000)));
       finally
         jsonresponse.free;
         Headers.Free;
  
positive.code:               end;
              Except
                on E:Exception do begin
                  TLog.NewLog(lterror,Classname,'Exception processing method'+jsonobj.AsString('method','')+' ('+E.ClassName+'): '+E.Message);
                  jsonresponse.GetAsObject('error').GetAsVariant('code').Value:=CT_RPC_ErrNum_InternalError;
                  jsonresponse.GetAsObject('error').GetAsVariant('message').Value:=E.Message;
                  valid:=False;
  
negative.code:             try
                methodName := jsonobj.AsString('method','');
                paramsTxt := jsonobj.GetAsObject('params').ToJSON(false);
                {$IFDEF HIGHLOG}TLog.NewLog(ltinfo,Classname,FSock.GetRemoteSinIP+':'+inttostr(FSock.GetRemoteSinPort)+' Processing method '+methodName+' params '+paramsTxt);{$ENDIF}
                Valid := ProcessMethod(methodName,jsonobj.GetAsObject('params'),jsonresponse,errNum,errDesc);
                if not Valid then begin
                  if (errNum<>0) or (errDesc<>'') then begin
                    jsonresponse.GetAsObject('error').GetAsVariant('code').Value:=errNum;
  