anchor.diff:    jsSetGlobal(Self, PAnsiChar(AnsiString({$IFDEF FPC}Utf8ToAnsi(prop){$ELSE}prop{$ENDIF})), v);
   end;
   
  -class procedure JScript.GC;
  -begin
  -  jsGC;
  +procedure JScript.GC;
  +begin
  +  jsGC(Self);
   end;
   
   
  
positive.code: function jsArgCount(es: jsExecState): Integer; cdecl;
  function jsArgType(es: jsExecState; argIdx: Integer): jsType; cdecl;
  function jsArg(es: jsExecState; argIdx: Integer): jsValue; cdecl;
  function jsTypeOf(v: jsValue): jsType; cdecl;
  function jsIsNumber(v: jsValue): Boolean; cdecl;
  function jsIsString(v: jsValue): Boolean; cdecl;
  function jsIsBoolean(v: jsValue): Boolean; cdecl;
  function jsIsObject(v: jsValue): Boolean; cdecl;
  function jsIsFunction(v: jsValue): Boolean; cdecl;
  function jsIsUndefined(v: jsValue): Boolean; cdecl;
  function jsIsNull(v: jsValue): Boolean; cdecl;
  function jsIsArray(v: jsValue): Boolean; cdecl;
  function jsIsTrue(v: jsValue): Boolean; cdecl;
  function jsIsFalse(v: jsValue): Boolean; cdecl;
  function jsToInt(es: jsExecState; v: jsValue): Integer; cdecl;
  function jsToFloat(es: jsExecState; v: jsValue): Single; cdecl;
  function jsToDouble(es: jsExecState; v: jsValue): Double; cdecl;
  function jsToBoolean(es: jsExecState; v: jsValue): Boolean; cdecl;
  function jsToTempString(es: jsExecState; v: jsValue): putf8; cdecl;
  function jsToTempStringW(es: jsExecState; v: jsValue): pwchar_t; cdecl;
  function jsInt(n: Integer): jsValue; cdecl;
  function jsFloat(f: Single): jsValue; cdecl;
  function jsDouble(d: Double): jsValue; cdecl;
  function jsBoolean(b: Boolean): jsValue; cdecl;
  function jsUndefined: jsValue; cdecl;
  function jsNull: jsValue; cdecl;
  function jsTrue: jsValue; cdecl;
  function jsFalse: jsValue; cdecl;
  function jsString(es: jsExecState; str: Putf8): jsValue; cdecl;
  function jsStringW(es: jsExecState; str: Pwchar_t): jsValue; cdecl;
  function jsEmptyObject(es: jsExecState): jsValue; cdecl;
  function jsEmptyArray(es: jsExecState): jsValue; cdecl;
  function jsObject(es: jsExecState; obj: PjsData): jsValue; cdecl;
  function jsFunction(es: jsExecState; obj: PjsData): jsValue; cdecl;
  function jsGetData(es: jsExecState; AObject: jsValue): jsData; cdecl;
  function jsGet(es: jsExecState; AObject: jsValue; prop: PAnsiChar): jsValue; cdecl;
  procedure jsSet(es: jsExecState; AObject: jsValue; prop: PAnsiChar; v: jsValue); cdecl;
  function jsGetAt(es: jsExecState; AObject: jsValue; index: Integer): jsValue; cdecl;
  
negative.code: function jsCallGlobal(es: jsExecState; func: jsValue; args: PjsValue; argCount: Integer): jsValue; cdecl;
  function jsGetGlobal(es: jsExecState; prop: PAnsiChar): jsValue; cdecl;
  procedure jsSetGlobal(es: jsExecState; prop: PAnsiChar; v: jsValue); cdecl;
  procedure jsGC(es: jsExecState); cdecl;
  
  
  {$IFDEF UseVcFastCall}
  