aboutsummaryrefslogtreecommitdiff
path: root/evaluation test
diff options
context:
space:
mode:
authorYuchen Pei <hi@ypei.me>2022-04-07 12:17:38 +1000
committerYuchen Pei <hi@ypei.me>2022-04-07 12:17:38 +1000
commitae25ad78906179e1448ff7d97957810e2be40206 (patch)
treeca56b583f36ccd317900e6b51c4fcd86f161bc56 /evaluation test
parent52398eafaf99ebbba7ff5a28b832830be394bf1d (diff)
nop whitespace formatting change.
- ran eglot-format using typescript-language-server on all js files in the repo except those under /hash_script/ - verify only whitespace changed: git diff --word-diff-regex=. 62d6a71 62d6a71~1
Diffstat (limited to 'evaluation test')
-rw-r--r--evaluation test/test.js1934
1 files changed, 967 insertions, 967 deletions
diff --git a/evaluation test/test.js b/evaluation test/test.js
index 091c47c..d6dbd4a 100644
--- a/evaluation test/test.js
+++ b/evaluation test/test.js
@@ -2,834 +2,834 @@ var acornLoose = require('acorn-loose');
var acorn = require("acorn");
var fname_data = {
- "WebGLShader": true,
- "WebGLShaderPrecisionFormat": true,
- "WebGLQuery": true,
- "WebGLRenderbuffer": true,
- "WebGLSampler": true,
- "WebGLUniformLocation": true,
- "WebGLFramebuffer": true,
- "WebGLProgram": true,
- "WebGLContextEvent": true,
- "WebGL2RenderingContext": true,
- "WebGLTexture": true,
- "WebGLRenderingContext": true,
- "WebGLVertexArrayObject": true,
- "WebGLActiveInfo": true,
- "WebGLTransformFeedback": true,
- "WebGLSync": true,
- "WebGLBuffer": true,
- "cat_svg": true,
- "SVGPoint": true,
- "SVGEllipseElement": true,
- "SVGRadialGradientElement": true,
- "SVGComponentTransferFunctionElement": true,
- "SVGPathSegCurvetoQuadraticAbs": true,
- "SVGAnimatedNumberList": true,
- "SVGPathSegCurvetoQuadraticSmoothRel": true,
- "SVGFEColorMatrixElement": true,
- "SVGPathSegLinetoHorizontalAbs": true,
- "SVGLinearGradientElement": true,
- "SVGStyleElement": true,
- "SVGPathSegMovetoRel": true,
- "SVGStopElement": true,
- "SVGPathSegLinetoRel": true,
- "SVGFEConvolveMatrixElement": true,
- "SVGAnimatedAngle": true,
- "SVGPathSegLinetoAbs": true,
- "SVGPreserveAspectRatio": true,
- "SVGFEOffsetElement": true,
- "SVGFEImageElement": true,
- "SVGFEDiffuseLightingElement": true,
- "SVGAnimatedNumber": true,
- "SVGTextElement": true,
- "SVGFESpotLightElement": true,
- "SVGFEMorphologyElement": true,
- "SVGAngle": true,
- "SVGScriptElement": true,
- "SVGFEDropShadowElement": true,
- "SVGPathSegArcRel": true,
- "SVGNumber": true,
- "SVGPathSegLinetoHorizontalRel": true,
- "SVGFEFuncBElement": true,
- "SVGClipPathElement": true,
- "SVGPathSeg": true,
- "SVGUseElement": true,
- "SVGPathSegArcAbs": true,
- "SVGPathSegCurvetoQuadraticSmoothAbs": true,
- "SVGRect": true,
- "SVGAnimatedPreserveAspectRatio": true,
- "SVGImageElement": true,
- "SVGAnimatedEnumeration": true,
- "SVGAnimatedLengthList": true,
- "SVGFEFloodElement": true,
- "SVGFECompositeElement": true,
- "SVGAElement": true,
- "SVGAnimatedBoolean": true,
- "SVGMaskElement": true,
- "SVGFilterElement": true,
- "SVGPathSegLinetoVerticalRel": true,
- "SVGAnimatedInteger": true,
- "SVGTSpanElement": true,
- "SVGMarkerElement": true,
- "SVGStringList": true,
- "SVGTransform": true,
- "SVGTitleElement": true,
- "SVGFEBlendElement": true,
- "SVGTextPositioningElement": true,
- "SVGFEFuncGElement": true,
- "SVGFEPointLightElement": true,
- "SVGAnimateElement": true,
- "SVGPolylineElement": true,
- "SVGDefsElement": true,
- "SVGPathSegList": true,
- "SVGAnimatedTransformList": true,
- "SVGPathSegClosePath": true,
- "SVGGradientElement": true,
- "SVGSwitchElement": true,
- "SVGViewElement": true,
- "SVGUnitTypes": true,
- "SVGPathSegMovetoAbs": true,
- "SVGSymbolElement": true,
- "SVGFEFuncAElement": true,
- "SVGAnimatedString": true,
- "SVGFEMergeElement": true,
- "SVGPathSegLinetoVerticalAbs": true,
- "SVGAnimationElement": true,
- "SVGPathSegCurvetoCubicAbs": true,
- "SVGLength": true,
- "SVGTextPathElement": true,
- "SVGPolygonElement": true,
- "SVGAnimatedRect": true,
- "SVGPathSegCurvetoCubicRel": true,
- "SVGFEFuncRElement": true,
- "SVGLengthList": true,
- "SVGTextContentElement": true,
- "SVGFETurbulenceElement": true,
- "SVGMatrix": true,
- "SVGZoomAndPan": true,
- "SVGMetadataElement": true,
- "SVGFEDistantLightElement": true,
- "SVGAnimateMotionElement": true,
- "SVGDescElement": true,
- "SVGPathSegCurvetoCubicSmoothRel": true,
- "SVGFESpecularLightingElement": true,
- "SVGFEGaussianBlurElement": true,
- "SVGFEComponentTransferElement": true,
- "SVGNumberList": true,
- "SVGTransformList": true,
- "SVGForeignObjectElement": true,
- "SVGRectElement": true,
- "SVGFEDisplacementMapElement": true,
- "SVGAnimateTransformElement": true,
- "SVGAnimatedLength": true,
- "SVGPointList": true,
- "SVGPatternElement": true,
- "SVGPathSegCurvetoCubicSmoothAbs": true,
- "SVGCircleElement": true,
- "SVGSetElement": true,
- "SVGFETileElement": true,
- "SVGMPathElement": true,
- "SVGFEMergeNodeElement": true,
- "SVGPathSegCurvetoQuadraticRel": true,
- "SVGElement": true,
- "SVGGraphicsElement": true,
- "SVGSVGElement": true,
- "SVGGElement": true,
- "SVGGeometryElement": true,
- "SVGPathElement": true,
- "SVGLineElement": true,
- "cat_html": true,
- "HTMLTimeElement": true,
- "HTMLPictureElement": true,
- "HTMLMenuItemElement": true,
- "HTMLFormElement": true,
- "HTMLOptionElement": true,
- "HTMLCanvasElement": true,
- "HTMLTableSectionElement": true,
- "HTMLSelectElement": true,
- "HTMLUListElement": true,
- "HTMLMetaElement": true,
- "HTMLLinkElement": true,
- "HTMLBaseElement": true,
- "HTMLDataListElement": true,
- "HTMLInputElement": true,
- "HTMLMeterElement": true,
- "HTMLSourceElement": true,
- "HTMLTrackElement": true,
- "HTMLTableColElement": true,
- "HTMLFieldSetElement": true,
- "HTMLDirectoryElement": true,
- "HTMLTableCellElement": true,
- "HTMLStyleElement": true,
- "HTMLAudioElement": true,
- "HTMLLegendElement": true,
- "HTMLOListElement": true,
- "HTMLEmbedElement": true,
- "HTMLQuoteElement": true,
- "HTMLMenuElement": true,
- "HTMLHeadElement": true,
- "HTMLUnknownElement": true,
- "HTMLBRElement": true,
- "HTMLProgressElement": true,
- "HTMLMediaElement": true,
- "HTMLFormControlsCollection": true,
- "HTMLCollection": true,
- "HTMLLIElement": true,
- "HTMLDetailsElement": true,
- "HTMLObjectElement": true,
- "HTMLHeadingElement": true,
- "HTMLTableCaptionElement": true,
- "HTMLPreElement": true,
- "HTMLAllCollection": true,
- "HTMLFrameSetElement": true,
- "HTMLFontElement": true,
- "HTMLFrameElement": true,
- "HTMLAnchorElement": true,
- "HTMLOptGroupElement": true,
- "HTMLVideoElement": true,
- "HTMLModElement": true,
- "HTMLBodyElement": true,
- "HTMLTableElement": true,
- "HTMLButtonElement": true,
- "HTMLTableRowElement": true,
- "HTMLAreaElement": true,
- "HTMLDataElement": true,
- "HTMLParamElement": true,
- "HTMLLabelElement": true,
- "HTMLTemplateElement": true,
- "HTMLOptionsCollection": true,
- "HTMLIFrameElement": true,
- "HTMLTitleElement": true,
- "HTMLMapElement": true,
- "HTMLOutputElement": true,
- "HTMLDListElement": true,
- "HTMLParagraphElement": true,
- "HTMLHRElement": true,
- "HTMLImageElement": true,
- "HTMLDocument": true,
- "HTMLElement": true,
- "HTMLScriptElement": true,
- "HTMLHtmlElement": true,
- "HTMLTextAreaElement": true,
- "HTMLDivElement": true,
- "HTMLSpanElement": true,
- "cat_css": true,
- "CSSStyleRule": true,
- "CSSFontFaceRule": true,
- "CSSPrimitiveValue": true,
- "CSSStyleDeclaration": true,
- "CSSStyleSheet": true,
- "CSSPageRule": true,
- "CSSSupportsRule": true,
- "CSSMozDocumentRule": true,
- "CSSKeyframeRule": true,
- "CSSGroupingRule": true,
- "CSS2Properties": true,
- "CSSFontFeatureValuesRule": true,
- "CSSRuleList": true,
- "CSSPseudoElement": true,
- "CSSMediaRule": true,
- "CSSCounterStyleRule": true,
- "CSSImportRule": true,
- "CSSTransition": true,
- "CSSAnimation": true,
- "CSSValue": true,
- "CSSNamespaceRule": true,
- "CSSRule": true,
- "CSS": true,
- "CSSKeyframesRule": true,
- "CSSConditionRule": true,
- "CSSValueList": true,
- "cat_event": true,
- "ondevicemotion": true,
- "ondeviceorientation": true,
- "onabsolutedeviceorientation": true,
- "ondeviceproximity": true,
- "onuserproximity": true,
- "ondevicelight": true,
- "onvrdisplayconnect": true,
- "onvrdisplaydisconnect": true,
- "onvrdisplayactivate": true,
- "onvrdisplaydeactivate": true,
- "onvrdisplaypresentchange": true,
- "onabort": true,
- "onblur": true,
- "onfocus": true,
- "onauxclick": true,
- "oncanplay": true,
- "oncanplaythrough": true,
- "onchange": true,
- "onclick": true,
- "onclose": true,
- "oncontextmenu": true,
- "ondblclick": true,
- "ondrag": true,
- "ondragend": true,
- "ondragenter": true,
- "ondragexit": true,
- "ondragleave": true,
- "ondragover": true,
- "ondragstart": true,
- "ondrop": true,
- "ondurationchange": true,
- "onemptied": true,
- "onended": true,
- "oninput": true,
- "oninvalid": true,
- "onkeydown": true,
- "onkeypress": true,
- "onkeyup": true,
- "onload": true,
- "onloadeddata": true,
- "onloadedmetadata": true,
- "onloadend": true,
- "onloadstart": true,
- "onmousedown": true,
- "onmouseenter": true,
- "onmouseleave": true,
- "onmousemove": true,
- "onmouseout": true,
- "onmouseover": true,
- "onmouseup": true,
- "onwheel": true,
- "onpause": true,
- "onplay": true,
- "onplaying": true,
- "onprogress": true,
- "onratechange": true,
- "onreset": true,
- "onresize": true,
- "onscroll": true,
- "onseeked": true,
- "onseeking": true,
- "onselect": true,
- "onshow": true,
- "onstalled": true,
- "onsubmit": true,
- "onsuspend": true,
- "ontimeupdate": true,
- "onvolumechange": true,
- "onwaiting": true,
- "onselectstart": true,
- "ontoggle": true,
- "onpointercancel": true,
- "onpointerdown": true,
- "onpointerup": true,
- "onpointermove": true,
- "onpointerout": true,
- "onpointerover": true,
- "onpointerenter": true,
- "onpointerleave": true,
- "ongotpointercapture": true,
- "onlostpointercapture": true,
- "onmozfullscreenchange": true,
- "onmozfullscreenerror": true,
- "onanimationcancel": true,
- "onanimationend": true,
- "onanimationiteration": true,
- "onanimationstart": true,
- "ontransitioncancel": true,
- "ontransitionend": true,
- "ontransitionrun": true,
- "ontransitionstart": true,
- "onwebkitanimationend": true,
- "onwebkitanimationiteration": true,
- "onwebkitanimationstart": true,
- "onwebkittransitionend": true,
- "onerror": true,
- "onafterprint": true,
- "onbeforeprint": true,
- "onbeforeunload": true,
- "onhashchange": true,
- "onlanguagechange": true,
- "onmessage": true,
- "onmessageerror": true,
- "onoffline": true,
- "ononline": true,
- "onpagehide": true,
- "onpageshow": true,
- "onpopstate": true,
- "onstorage": true,
- "onunload": true,
- "cat_rtc": true,
- "RTCDTMFSender": true,
- "RTCStatsReport": true,
- "RTCTrackEvent": true,
- "RTCDataChannelEvent": true,
- "RTCPeerConnectionIceEvent": true,
- "RTCCertificate": true,
- "RTCDTMFToneChangeEvent": true,
- "RTCPeerConnection": true,
- "RTCIceCandidate": true,
- "RTCRtpReceiver": true,
- "RTCRtpSender": true,
- "RTCSessionDescription": true,
- "cat_vr": true,
- "VRStageParameters": true,
- "VRFrameData": true,
- "VRDisplay": true,
- "VRDisplayEvent": true,
- "VRFieldOfView": true,
- "VRDisplayCapabilities": true,
- "VREyeParameters": true,
- "VRPose": true,
- "cat_dom": true,
- "DOMStringMap": true,
- "DOMRectReadOnly": true,
- "DOMException": true,
- "DOMRect": true,
- "DOMMatrix": true,
- "DOMMatrixReadOnly": true,
- "DOMPointReadOnly": true,
- "DOMPoint": true,
- "DOMQuad": true,
- "DOMRequest": true,
- "DOMParser": true,
- "DOMTokenList": true,
- "DOMStringList": true,
- "DOMImplementation": true,
- "DOMError": true,
- "DOMRectList": true,
- "DOMCursor": true,
- "cat_idb": true,
- "IDBFileRequest": true,
- "IDBTransaction": true,
- "IDBCursor": true,
- "IDBFileHandle": true,
- "IDBMutableFile": true,
- "IDBKeyRange": true,
- "IDBVersionChangeEvent": true,
- "IDBObjectStore": true,
- "IDBFactory": true,
- "IDBCursorWithValue": true,
- "IDBOpenDBRequest": true,
- "IDBRequest": true,
- "IDBIndex": true,
- "IDBDatabase": true,
- "cat_audio": true,
- "AudioContext": true,
- "AudioBuffer": true,
- "AudioBufferSourceNode": true,
- "Audio": true,
- "MediaElementAudioSourceNode": true,
- "AudioNode": true,
- "BaseAudioContext": true,
- "AudioListener": true,
- "MediaStreamAudioSourceNode": true,
- "OfflineAudioContext": true,
- "AudioDestinationNode": true,
- "AudioParam": true,
- "MediaStreamAudioDestinationNode": true,
- "OfflineAudioCompletionEvent": true,
- "AudioStreamTrack": true,
- "AudioScheduledSourceNode": true,
- "AudioProcessingEvent": true,
- "cat_gamepad": true,
- "GamepadButton": true,
- "GamepadHapticActuator": true,
- "GamepadAxisMoveEvent": true,
- "GamepadPose": true,
- "GamepadEvent": true,
- "Gamepad": true,
- "GamepadButtonEvent": true,
- "cat_media": true,
- "MediaKeys": true,
- "MediaKeyError": true,
- "MediaSource": true,
- "MediaDevices": true,
- "MediaKeyStatusMap": true,
- "MediaStreamTrackEvent": true,
- "MediaRecorder": true,
- "MediaQueryListEvent": true,
- "MediaStream": true,
- "MediaEncryptedEvent": true,
- "MediaStreamTrack": true,
- "MediaError": true,
- "MediaStreamEvent": true,
- "MediaQueryList": true,
- "MediaKeySystemAccess": true,
- "MediaDeviceInfo": true,
- "MediaKeySession": true,
- "MediaList": true,
- "MediaRecorderErrorEvent": true,
- "MediaKeyMessageEvent": true,
- "cat_event2": true,
- "SpeechSynthesisErrorEvent": true,
- "BeforeUnloadEvent": true,
- "CustomEvent": true,
- "PageTransitionEvent": true,
- "PopupBlockedEvent": true,
- "CloseEvent": true,
- "ProgressEvent": true,
- "MutationEvent": true,
- "MessageEvent": true,
- "FocusEvent": true,
- "TrackEvent": true,
- "DeviceMotionEvent": true,
- "TimeEvent": true,
- "PointerEvent": true,
- "UserProximityEvent": true,
- "StorageEvent": true,
- "DragEvent": true,
- "MouseScrollEvent": true,
- "EventSource": true,
- "PopStateEvent": true,
- "DeviceProximityEvent": true,
- "SpeechSynthesisEvent": true,
- "XMLHttpRequestEventTarget": true,
- "ClipboardEvent": true,
- "AnimationPlaybackEvent": true,
- "DeviceLightEvent": true,
- "BlobEvent": true,
- "MouseEvent": true,
- "WheelEvent": true,
- "InputEvent": true,
- "HashChangeEvent": true,
- "DeviceOrientationEvent": true,
- "CompositionEvent": true,
- "KeyEvent": true,
- "ScrollAreaEvent": true,
- "KeyboardEvent": true,
- "TransitionEvent": true,
- "ErrorEvent": true,
- "AnimationEvent": true,
- "FontFaceSetLoadEvent": true,
- "EventTarget": true,
- "captureEvents": true,
- "releaseEvents": true,
- "Event": true,
- "UIEvent": true,
- "cat_other": false,
- "undefined": false,
- "Array": false,
- "Boolean": false,
- "JSON": false,
- "Date": false,
- "Math": false,
- "Number": false,
- "String": false,
- "RegExp": false,
- "Error": false,
- "InternalError": false,
- "EvalError": false,
- "RangeError": false,
- "ReferenceError": false,
- "SyntaxError": false,
- "TypeError": false,
- "URIError": false,
- "ArrayBuffer": true,
- "Int8Array": true,
- "Uint8Array": true,
- "Int16Array": true,
- "Uint16Array": true,
- "Int32Array": true,
- "Uint32Array": true,
- "Float32Array": true,
- "Float64Array": true,
- "Uint8ClampedArray": true,
- "Proxy": true,
- "WeakMap": true,
- "Map": true,
- "Set": true,
- "DataView": false,
- "Symbol": false,
- "SharedArrayBuffer": true,
- "Intl": false,
- "TypedObject": true,
- "Reflect": true,
- "SIMD": true,
- "WeakSet": true,
- "Atomics": true,
- "Promise": true,
- "WebAssembly": true,
- "NaN": false,
- "Infinity": false,
- "isNaN": false,
- "isFinite": false,
- "parseFloat": false,
- "parseInt": false,
- "escape": false,
- "unescape": false,
- "decodeURI": false,
- "encodeURI": false,
- "decodeURIComponent": false,
- "encodeURIComponent": false,
- "uneval": false,
- "BatteryManager": true,
- "CanvasGradient": true,
- "TextDecoder": true,
- "Plugin": true,
- "PushManager": true,
- "ChannelMergerNode": true,
- "PerformanceResourceTiming": true,
- "ServiceWorker": true,
- "TextTrackCueList": true,
- "PerformanceEntry": true,
- "TextTrackList": true,
- "StyleSheet": true,
- "PerformanceMeasure": true,
- "DesktopNotificationCenter": true,
- "Comment": true,
- "DelayNode": true,
- "XPathResult": true,
- "CDATASection": true,
- "MessageChannel": true,
- "BiquadFilterNode": true,
- "SpeechSynthesisUtterance": true,
- "Crypto": true,
- "Navigator": true,
- "FileList": true,
- "URLSearchParams": false,
- "ServiceWorkerContainer": true,
- "ValidityState": true,
- "ProcessingInstruction": true,
- "AbortSignal": true,
- "FontFace": true,
- "FileReader": true,
- "Worker": true,
- "External": true,
- "ImageBitmap": true,
- "TimeRanges": true,
- "Option": true,
- "TextTrack": true,
- "Image": true,
- "AnimationTimeline": true,
- "VideoPlaybackQuality": true,
- "VTTCue": true,
- "Storage": true,
- "XPathExpression": true,
- "CharacterData": false,
- "TextMetrics": true,
- "AnimationEffectReadOnly": true,
- "PerformanceTiming": false,
- "PerformanceMark": true,
- "ImageBitmapRenderingContext": true,
- "Headers": true,
- "Range": false,
- "Rect": true,
- "AnimationEffectTimingReadOnly": true,
- "KeyframeEffect": true,
- "Permissions": true,
- "TextEncoder": true,
- "ImageData": true,
- "SpeechSynthesisVoice": true,
- "StorageManager": true,
- "TextTrackCue": true,
- "WebSocket": true,
- "DocumentType": true,
- "XPathEvaluator": true,
- "PerformanceNavigationTiming": true,
- "IdleDeadline": true,
- "FileSystem": true,
- "FileSystemFileEntry": true,
- "CacheStorage": true,
- "MimeType": true,
- "PannerNode": true,
- "NodeFilter": true,
- "StereoPannerNode": true,
- "console": false,
- "DynamicsCompressorNode": true,
- "PaintRequest": true,
- "RGBColor": true,
- "FontFaceSet": false,
- "PaintRequestList": true,
- "FileSystemEntry": true,
- "XMLDocument": false,
- "SourceBuffer": false,
- "Screen": true,
- "NamedNodeMap": false,
- "History": true,
- "Response": true,
- "AnimationEffectTiming": true,
- "ServiceWorkerRegistration": true,
- "CanvasRenderingContext2D": true,
- "ScriptProcessorNode": true,
- "FileSystemDirectoryReader": true,
- "MimeTypeArray": true,
- "CanvasCaptureMediaStream": true,
- "Directory": true,
- "mozRTCPeerConnection": true,
- "PerformanceObserverEntryList": true,
- "PushSubscriptionOptions": true,
- "Text": false,
- "IntersectionObserverEntry": true,
- "SubtleCrypto": true,
- "Animation": true,
- "DataTransfer": true,
- "TreeWalker": true,
- "XMLHttpRequest": true,
- "LocalMediaStream": true,
- "ConvolverNode": true,
- "WaveShaperNode": true,
- "DataTransferItemList": false,
- "Request": true,
- "SourceBufferList": false,
- "XSLTProcessor": true,
- "XMLHttpRequestUpload": true,
- "SharedWorker": true,
- "Notification": false,
- "DataTransferItem": true,
- "AnalyserNode": true,
- "mozRTCIceCandidate": true,
- "PerformanceObserver": true,
- "OfflineResourceList": true,
- "FileSystemDirectoryEntry": true,
- "DesktopNotification": false,
- "DataChannel": true,
- "IIRFilterNode": true,
- "ChannelSplitterNode": true,
- "File": true,
- "ConstantSourceNode": true,
- "CryptoKey": true,
- "GainNode": true,
- "AbortController": true,
- "Attr": true,
- "SpeechSynthesis": true,
- "PushSubscription": false,
- "XMLStylesheetProcessingInstruction": false,
- "NodeIterator": true,
- "VideoStreamTrack": true,
- "XMLSerializer": true,
- "CaretPosition": true,
- "FormData": true,
- "CanvasPattern": true,
- "mozRTCSessionDescription": true,
- "Path2D": true,
- "PerformanceNavigation": true,
- "URL": false,
- "PluginArray": true,
- "MutationRecord": true,
- "WebKitCSSMatrix": true,
- "PeriodicWave": true,
- "DocumentFragment": true,
- "DocumentTimeline": false,
- "ScreenOrientation": true,
- "BroadcastChannel": true,
- "PermissionStatus": true,
- "IntersectionObserver": true,
- "Blob": true,
- "MessagePort": true,
- "BarProp": true,
- "OscillatorNode": true,
- "Cache": true,
- "RadioNodeList": true,
- "KeyframeEffectReadOnly": true,
- "InstallTrigger": true,
- "Function": false,
- "Object": false,
- "eval": true,
- "Window": false,
- "close": false,
- "stop": false,
- "focus": false,
- "blur": false,
- "open": true,
- "alert": false,
- "confirm": false,
- "prompt": false,
- "print": false,
- "postMessage": true,
- "getSelection": true,
- "getComputedStyle": true,
- "matchMedia": true,
- "moveTo": false,
- "moveBy": false,
- "resizeTo": false,
- "resizeBy": false,
- "scroll": false,
- "scrollTo": false,
- "scrollBy": false,
- "requestAnimationFrame": true,
- "cancelAnimationFrame": true,
- "getDefaultComputedStyle": false,
- "scrollByLines": false,
- "scrollByPages": false,
- "sizeToContent": false,
- "updateCommands": true,
- "find": false,
- "dump": true,
- "setResizable": false,
- "requestIdleCallback": false,
- "cancelIdleCallback": false,
- "btoa": true,
- "atob": true,
- "setTimeout": true,
- "clearTimeout": true,
- "setInterval": true,
- "clearInterval": true,
- "createImageBitmap": true,
- "fetch": true,
- "self": true,
- "name": false,
- "history": true,
- "locationbar": true,
- "menubar": true,
- "personalbar": true,
- "scrollbars": true,
- "statusbar": true,
- "toolbar": true,
- "status": true,
- "closed": true,
- "frames": true,
- "length": false,
- "opener": true,
- "parent": true,
- "frameElement": true,
- "navigator": true,
- "external": true,
- "applicationCache": true,
- "screen": true,
- "innerWidth": true,
- "innerHeight": true,
- "scrollX": true,
- "pageXOffset": true,
- "scrollY": true,
- "pageYOffset": true,
- "screenX": true,
- "screenY": true,
- "outerWidth": true,
- "outerHeight": true,
- "performance": true,
- "mozInnerScreenX": true,
- "mozInnerScreenY": true,
- "devicePixelRatio": true,
- "scrollMaxX": true,
- "scrollMaxY": true,
- "fullScreen": false,
- "mozPaintCount": true,
- "sidebar": false,
- "crypto": true,
- "speechSynthesis": true,
- "localStorage": true,
- "origin": true,
- "isSecureContext": false,
- "indexedDB": true,
- "caches": true,
- "sessionStorage": true,
- "window": false,
- "document": true,
- "location": false,
- "top": true,
- "netscape": true,
- "Node": true,
- "Document": true,
- "Performance": false,
- "startProfiling": true,
- "stopProfiling": true,
- "pauseProfilers": true,
- "resumeProfilers": true,
- "dumpProfile": true,
- "getMaxGCPauseSinceClear": true,
- "clearMaxGCPauseAccumulator": true,
- "Location": true,
- "StyleSheetList": false,
- "Selection": false,
- "Element": true,
- "AnonymousContent": false,
- "MutationObserver": true,
- "NodeList": true,
- "StopIteration": true
+ "WebGLShader": true,
+ "WebGLShaderPrecisionFormat": true,
+ "WebGLQuery": true,
+ "WebGLRenderbuffer": true,
+ "WebGLSampler": true,
+ "WebGLUniformLocation": true,
+ "WebGLFramebuffer": true,
+ "WebGLProgram": true,
+ "WebGLContextEvent": true,
+ "WebGL2RenderingContext": true,
+ "WebGLTexture": true,
+ "WebGLRenderingContext": true,
+ "WebGLVertexArrayObject": true,
+ "WebGLActiveInfo": true,
+ "WebGLTransformFeedback": true,
+ "WebGLSync": true,
+ "WebGLBuffer": true,
+ "cat_svg": true,
+ "SVGPoint": true,
+ "SVGEllipseElement": true,
+ "SVGRadialGradientElement": true,
+ "SVGComponentTransferFunctionElement": true,
+ "SVGPathSegCurvetoQuadraticAbs": true,
+ "SVGAnimatedNumberList": true,
+ "SVGPathSegCurvetoQuadraticSmoothRel": true,
+ "SVGFEColorMatrixElement": true,
+ "SVGPathSegLinetoHorizontalAbs": true,
+ "SVGLinearGradientElement": true,
+ "SVGStyleElement": true,
+ "SVGPathSegMovetoRel": true,
+ "SVGStopElement": true,
+ "SVGPathSegLinetoRel": true,
+ "SVGFEConvolveMatrixElement": true,
+ "SVGAnimatedAngle": true,
+ "SVGPathSegLinetoAbs": true,
+ "SVGPreserveAspectRatio": true,
+ "SVGFEOffsetElement": true,
+ "SVGFEImageElement": true,
+ "SVGFEDiffuseLightingElement": true,
+ "SVGAnimatedNumber": true,
+ "SVGTextElement": true,
+ "SVGFESpotLightElement": true,
+ "SVGFEMorphologyElement": true,
+ "SVGAngle": true,
+ "SVGScriptElement": true,
+ "SVGFEDropShadowElement": true,
+ "SVGPathSegArcRel": true,
+ "SVGNumber": true,
+ "SVGPathSegLinetoHorizontalRel": true,
+ "SVGFEFuncBElement": true,
+ "SVGClipPathElement": true,
+ "SVGPathSeg": true,
+ "SVGUseElement": true,
+ "SVGPathSegArcAbs": true,
+ "SVGPathSegCurvetoQuadraticSmoothAbs": true,
+ "SVGRect": true,
+ "SVGAnimatedPreserveAspectRatio": true,
+ "SVGImageElement": true,
+ "SVGAnimatedEnumeration": true,
+ "SVGAnimatedLengthList": true,
+ "SVGFEFloodElement": true,
+ "SVGFECompositeElement": true,
+ "SVGAElement": true,
+ "SVGAnimatedBoolean": true,
+ "SVGMaskElement": true,
+ "SVGFilterElement": true,
+ "SVGPathSegLinetoVerticalRel": true,
+ "SVGAnimatedInteger": true,
+ "SVGTSpanElement": true,
+ "SVGMarkerElement": true,
+ "SVGStringList": true,
+ "SVGTransform": true,
+ "SVGTitleElement": true,
+ "SVGFEBlendElement": true,
+ "SVGTextPositioningElement": true,
+ "SVGFEFuncGElement": true,
+ "SVGFEPointLightElement": true,
+ "SVGAnimateElement": true,
+ "SVGPolylineElement": true,
+ "SVGDefsElement": true,
+ "SVGPathSegList": true,
+ "SVGAnimatedTransformList": true,
+ "SVGPathSegClosePath": true,
+ "SVGGradientElement": true,
+ "SVGSwitchElement": true,
+ "SVGViewElement": true,
+ "SVGUnitTypes": true,
+ "SVGPathSegMovetoAbs": true,
+ "SVGSymbolElement": true,
+ "SVGFEFuncAElement": true,
+ "SVGAnimatedString": true,
+ "SVGFEMergeElement": true,
+ "SVGPathSegLinetoVerticalAbs": true,
+ "SVGAnimationElement": true,
+ "SVGPathSegCurvetoCubicAbs": true,
+ "SVGLength": true,
+ "SVGTextPathElement": true,
+ "SVGPolygonElement": true,
+ "SVGAnimatedRect": true,
+ "SVGPathSegCurvetoCubicRel": true,
+ "SVGFEFuncRElement": true,
+ "SVGLengthList": true,
+ "SVGTextContentElement": true,
+ "SVGFETurbulenceElement": true,
+ "SVGMatrix": true,
+ "SVGZoomAndPan": true,
+ "SVGMetadataElement": true,
+ "SVGFEDistantLightElement": true,
+ "SVGAnimateMotionElement": true,
+ "SVGDescElement": true,
+ "SVGPathSegCurvetoCubicSmoothRel": true,
+ "SVGFESpecularLightingElement": true,
+ "SVGFEGaussianBlurElement": true,
+ "SVGFEComponentTransferElement": true,
+ "SVGNumberList": true,
+ "SVGTransformList": true,
+ "SVGForeignObjectElement": true,
+ "SVGRectElement": true,
+ "SVGFEDisplacementMapElement": true,
+ "SVGAnimateTransformElement": true,
+ "SVGAnimatedLength": true,
+ "SVGPointList": true,
+ "SVGPatternElement": true,
+ "SVGPathSegCurvetoCubicSmoothAbs": true,
+ "SVGCircleElement": true,
+ "SVGSetElement": true,
+ "SVGFETileElement": true,
+ "SVGMPathElement": true,
+ "SVGFEMergeNodeElement": true,
+ "SVGPathSegCurvetoQuadraticRel": true,
+ "SVGElement": true,
+ "SVGGraphicsElement": true,
+ "SVGSVGElement": true,
+ "SVGGElement": true,
+ "SVGGeometryElement": true,
+ "SVGPathElement": true,
+ "SVGLineElement": true,
+ "cat_html": true,
+ "HTMLTimeElement": true,
+ "HTMLPictureElement": true,
+ "HTMLMenuItemElement": true,
+ "HTMLFormElement": true,
+ "HTMLOptionElement": true,
+ "HTMLCanvasElement": true,
+ "HTMLTableSectionElement": true,
+ "HTMLSelectElement": true,
+ "HTMLUListElement": true,
+ "HTMLMetaElement": true,
+ "HTMLLinkElement": true,
+ "HTMLBaseElement": true,
+ "HTMLDataListElement": true,
+ "HTMLInputElement": true,
+ "HTMLMeterElement": true,
+ "HTMLSourceElement": true,
+ "HTMLTrackElement": true,
+ "HTMLTableColElement": true,
+ "HTMLFieldSetElement": true,
+ "HTMLDirectoryElement": true,
+ "HTMLTableCellElement": true,
+ "HTMLStyleElement": true,
+ "HTMLAudioElement": true,
+ "HTMLLegendElement": true,
+ "HTMLOListElement": true,
+ "HTMLEmbedElement": true,
+ "HTMLQuoteElement": true,
+ "HTMLMenuElement": true,
+ "HTMLHeadElement": true,
+ "HTMLUnknownElement": true,
+ "HTMLBRElement": true,
+ "HTMLProgressElement": true,
+ "HTMLMediaElement": true,
+ "HTMLFormControlsCollection": true,
+ "HTMLCollection": true,
+ "HTMLLIElement": true,
+ "HTMLDetailsElement": true,
+ "HTMLObjectElement": true,
+ "HTMLHeadingElement": true,
+ "HTMLTableCaptionElement": true,
+ "HTMLPreElement": true,
+ "HTMLAllCollection": true,
+ "HTMLFrameSetElement": true,
+ "HTMLFontElement": true,
+ "HTMLFrameElement": true,
+ "HTMLAnchorElement": true,
+ "HTMLOptGroupElement": true,
+ "HTMLVideoElement": true,
+ "HTMLModElement": true,
+ "HTMLBodyElement": true,
+ "HTMLTableElement": true,
+ "HTMLButtonElement": true,
+ "HTMLTableRowElement": true,
+ "HTMLAreaElement": true,
+ "HTMLDataElement": true,
+ "HTMLParamElement": true,
+ "HTMLLabelElement": true,
+ "HTMLTemplateElement": true,
+ "HTMLOptionsCollection": true,
+ "HTMLIFrameElement": true,
+ "HTMLTitleElement": true,
+ "HTMLMapElement": true,
+ "HTMLOutputElement": true,
+ "HTMLDListElement": true,
+ "HTMLParagraphElement": true,
+ "HTMLHRElement": true,
+ "HTMLImageElement": true,
+ "HTMLDocument": true,
+ "HTMLElement": true,
+ "HTMLScriptElement": true,
+ "HTMLHtmlElement": true,
+ "HTMLTextAreaElement": true,
+ "HTMLDivElement": true,
+ "HTMLSpanElement": true,
+ "cat_css": true,
+ "CSSStyleRule": true,
+ "CSSFontFaceRule": true,
+ "CSSPrimitiveValue": true,
+ "CSSStyleDeclaration": true,
+ "CSSStyleSheet": true,
+ "CSSPageRule": true,
+ "CSSSupportsRule": true,
+ "CSSMozDocumentRule": true,
+ "CSSKeyframeRule": true,
+ "CSSGroupingRule": true,
+ "CSS2Properties": true,
+ "CSSFontFeatureValuesRule": true,
+ "CSSRuleList": true,
+ "CSSPseudoElement": true,
+ "CSSMediaRule": true,
+ "CSSCounterStyleRule": true,
+ "CSSImportRule": true,
+ "CSSTransition": true,
+ "CSSAnimation": true,
+ "CSSValue": true,
+ "CSSNamespaceRule": true,
+ "CSSRule": true,
+ "CSS": true,
+ "CSSKeyframesRule": true,
+ "CSSConditionRule": true,
+ "CSSValueList": true,
+ "cat_event": true,
+ "ondevicemotion": true,
+ "ondeviceorientation": true,
+ "onabsolutedeviceorientation": true,
+ "ondeviceproximity": true,
+ "onuserproximity": true,
+ "ondevicelight": true,
+ "onvrdisplayconnect": true,
+ "onvrdisplaydisconnect": true,
+ "onvrdisplayactivate": true,
+ "onvrdisplaydeactivate": true,
+ "onvrdisplaypresentchange": true,
+ "onabort": true,
+ "onblur": true,
+ "onfocus": true,
+ "onauxclick": true,
+ "oncanplay": true,
+ "oncanplaythrough": true,
+ "onchange": true,
+ "onclick": true,
+ "onclose": true,
+ "oncontextmenu": true,
+ "ondblclick": true,
+ "ondrag": true,
+ "ondragend": true,
+ "ondragenter": true,
+ "ondragexit": true,
+ "ondragleave": true,
+ "ondragover": true,
+ "ondragstart": true,
+ "ondrop": true,
+ "ondurationchange": true,
+ "onemptied": true,
+ "onended": true,
+ "oninput": true,
+ "oninvalid": true,
+ "onkeydown": true,
+ "onkeypress": true,
+ "onkeyup": true,
+ "onload": true,
+ "onloadeddata": true,
+ "onloadedmetadata": true,
+ "onloadend": true,
+ "onloadstart": true,
+ "onmousedown": true,
+ "onmouseenter": true,
+ "onmouseleave": true,
+ "onmousemove": true,
+ "onmouseout": true,
+ "onmouseover": true,
+ "onmouseup": true,
+ "onwheel": true,
+ "onpause": true,
+ "onplay": true,
+ "onplaying": true,
+ "onprogress": true,
+ "onratechange": true,
+ "onreset": true,
+ "onresize": true,
+ "onscroll": true,
+ "onseeked": true,
+ "onseeking": true,
+ "onselect": true,
+ "onshow": true,
+ "onstalled": true,
+ "onsubmit": true,
+ "onsuspend": true,
+ "ontimeupdate": true,
+ "onvolumechange": true,
+ "onwaiting": true,
+ "onselectstart": true,
+ "ontoggle": true,
+ "onpointercancel": true,
+ "onpointerdown": true,
+ "onpointerup": true,
+ "onpointermove": true,
+ "onpointerout": true,
+ "onpointerover": true,
+ "onpointerenter": true,
+ "onpointerleave": true,
+ "ongotpointercapture": true,
+ "onlostpointercapture": true,
+ "onmozfullscreenchange": true,
+ "onmozfullscreenerror": true,
+ "onanimationcancel": true,
+ "onanimationend": true,
+ "onanimationiteration": true,
+ "onanimationstart": true,
+ "ontransitioncancel": true,
+ "ontransitionend": true,
+ "ontransitionrun": true,
+ "ontransitionstart": true,
+ "onwebkitanimationend": true,
+ "onwebkitanimationiteration": true,
+ "onwebkitanimationstart": true,
+ "onwebkittransitionend": true,
+ "onerror": true,
+ "onafterprint": true,
+ "onbeforeprint": true,
+ "onbeforeunload": true,
+ "onhashchange": true,
+ "onlanguagechange": true,
+ "onmessage": true,
+ "onmessageerror": true,
+ "onoffline": true,
+ "ononline": true,
+ "onpagehide": true,
+ "onpageshow": true,
+ "onpopstate": true,
+ "onstorage": true,
+ "onunload": true,
+ "cat_rtc": true,
+ "RTCDTMFSender": true,
+ "RTCStatsReport": true,
+ "RTCTrackEvent": true,
+ "RTCDataChannelEvent": true,
+ "RTCPeerConnectionIceEvent": true,
+ "RTCCertificate": true,
+ "RTCDTMFToneChangeEvent": true,
+ "RTCPeerConnection": true,
+ "RTCIceCandidate": true,
+ "RTCRtpReceiver": true,
+ "RTCRtpSender": true,
+ "RTCSessionDescription": true,
+ "cat_vr": true,
+ "VRStageParameters": true,
+ "VRFrameData": true,
+ "VRDisplay": true,
+ "VRDisplayEvent": true,
+ "VRFieldOfView": true,
+ "VRDisplayCapabilities": true,
+ "VREyeParameters": true,
+ "VRPose": true,
+ "cat_dom": true,
+ "DOMStringMap": true,
+ "DOMRectReadOnly": true,
+ "DOMException": true,
+ "DOMRect": true,
+ "DOMMatrix": true,
+ "DOMMatrixReadOnly": true,
+ "DOMPointReadOnly": true,
+ "DOMPoint": true,
+ "DOMQuad": true,
+ "DOMRequest": true,
+ "DOMParser": true,
+ "DOMTokenList": true,
+ "DOMStringList": true,
+ "DOMImplementation": true,
+ "DOMError": true,
+ "DOMRectList": true,
+ "DOMCursor": true,
+ "cat_idb": true,
+ "IDBFileRequest": true,
+ "IDBTransaction": true,
+ "IDBCursor": true,
+ "IDBFileHandle": true,
+ "IDBMutableFile": true,
+ "IDBKeyRange": true,
+ "IDBVersionChangeEvent": true,
+ "IDBObjectStore": true,
+ "IDBFactory": true,
+ "IDBCursorWithValue": true,
+ "IDBOpenDBRequest": true,
+ "IDBRequest": true,
+ "IDBIndex": true,
+ "IDBDatabase": true,
+ "cat_audio": true,
+ "AudioContext": true,
+ "AudioBuffer": true,
+ "AudioBufferSourceNode": true,
+ "Audio": true,
+ "MediaElementAudioSourceNode": true,
+ "AudioNode": true,
+ "BaseAudioContext": true,
+ "AudioListener": true,
+ "MediaStreamAudioSourceNode": true,
+ "OfflineAudioContext": true,
+ "AudioDestinationNode": true,
+ "AudioParam": true,
+ "MediaStreamAudioDestinationNode": true,
+ "OfflineAudioCompletionEvent": true,
+ "AudioStreamTrack": true,
+ "AudioScheduledSourceNode": true,
+ "AudioProcessingEvent": true,
+ "cat_gamepad": true,
+ "GamepadButton": true,
+ "GamepadHapticActuator": true,
+ "GamepadAxisMoveEvent": true,
+ "GamepadPose": true,
+ "GamepadEvent": true,
+ "Gamepad": true,
+ "GamepadButtonEvent": true,
+ "cat_media": true,
+ "MediaKeys": true,
+ "MediaKeyError": true,
+ "MediaSource": true,
+ "MediaDevices": true,
+ "MediaKeyStatusMap": true,
+ "MediaStreamTrackEvent": true,
+ "MediaRecorder": true,
+ "MediaQueryListEvent": true,
+ "MediaStream": true,
+ "MediaEncryptedEvent": true,
+ "MediaStreamTrack": true,
+ "MediaError": true,
+ "MediaStreamEvent": true,
+ "MediaQueryList": true,
+ "MediaKeySystemAccess": true,
+ "MediaDeviceInfo": true,
+ "MediaKeySession": true,
+ "MediaList": true,
+ "MediaRecorderErrorEvent": true,
+ "MediaKeyMessageEvent": true,
+ "cat_event2": true,
+ "SpeechSynthesisErrorEvent": true,
+ "BeforeUnloadEvent": true,
+ "CustomEvent": true,
+ "PageTransitionEvent": true,
+ "PopupBlockedEvent": true,
+ "CloseEvent": true,
+ "ProgressEvent": true,
+ "MutationEvent": true,
+ "MessageEvent": true,
+ "FocusEvent": true,
+ "TrackEvent": true,
+ "DeviceMotionEvent": true,
+ "TimeEvent": true,
+ "PointerEvent": true,
+ "UserProximityEvent": true,
+ "StorageEvent": true,
+ "DragEvent": true,
+ "MouseScrollEvent": true,
+ "EventSource": true,
+ "PopStateEvent": true,
+ "DeviceProximityEvent": true,
+ "SpeechSynthesisEvent": true,
+ "XMLHttpRequestEventTarget": true,
+ "ClipboardEvent": true,
+ "AnimationPlaybackEvent": true,
+ "DeviceLightEvent": true,
+ "BlobEvent": true,
+ "MouseEvent": true,
+ "WheelEvent": true,
+ "InputEvent": true,
+ "HashChangeEvent": true,
+ "DeviceOrientationEvent": true,
+ "CompositionEvent": true,
+ "KeyEvent": true,
+ "ScrollAreaEvent": true,
+ "KeyboardEvent": true,
+ "TransitionEvent": true,
+ "ErrorEvent": true,
+ "AnimationEvent": true,
+ "FontFaceSetLoadEvent": true,
+ "EventTarget": true,
+ "captureEvents": true,
+ "releaseEvents": true,
+ "Event": true,
+ "UIEvent": true,
+ "cat_other": false,
+ "undefined": false,
+ "Array": false,
+ "Boolean": false,
+ "JSON": false,
+ "Date": false,
+ "Math": false,
+ "Number": false,
+ "String": false,
+ "RegExp": false,
+ "Error": false,
+ "InternalError": false,
+ "EvalError": false,
+ "RangeError": false,
+ "ReferenceError": false,
+ "SyntaxError": false,
+ "TypeError": false,
+ "URIError": false,
+ "ArrayBuffer": true,
+ "Int8Array": true,
+ "Uint8Array": true,
+ "Int16Array": true,
+ "Uint16Array": true,
+ "Int32Array": true,
+ "Uint32Array": true,
+ "Float32Array": true,
+ "Float64Array": true,
+ "Uint8ClampedArray": true,
+ "Proxy": true,
+ "WeakMap": true,
+ "Map": true,
+ "Set": true,
+ "DataView": false,
+ "Symbol": false,
+ "SharedArrayBuffer": true,
+ "Intl": false,
+ "TypedObject": true,
+ "Reflect": true,
+ "SIMD": true,
+ "WeakSet": true,
+ "Atomics": true,
+ "Promise": true,
+ "WebAssembly": true,
+ "NaN": false,
+ "Infinity": false,
+ "isNaN": false,
+ "isFinite": false,
+ "parseFloat": false,
+ "parseInt": false,
+ "escape": false,
+ "unescape": false,
+ "decodeURI": false,
+ "encodeURI": false,
+ "decodeURIComponent": false,
+ "encodeURIComponent": false,
+ "uneval": false,
+ "BatteryManager": true,
+ "CanvasGradient": true,
+ "TextDecoder": true,
+ "Plugin": true,
+ "PushManager": true,
+ "ChannelMergerNode": true,
+ "PerformanceResourceTiming": true,
+ "ServiceWorker": true,
+ "TextTrackCueList": true,
+ "PerformanceEntry": true,
+ "TextTrackList": true,
+ "StyleSheet": true,
+ "PerformanceMeasure": true,
+ "DesktopNotificationCenter": true,
+ "Comment": true,
+ "DelayNode": true,
+ "XPathResult": true,
+ "CDATASection": true,
+ "MessageChannel": true,
+ "BiquadFilterNode": true,
+ "SpeechSynthesisUtterance": true,
+ "Crypto": true,
+ "Navigator": true,
+ "FileList": true,
+ "URLSearchParams": false,
+ "ServiceWorkerContainer": true,
+ "ValidityState": true,
+ "ProcessingInstruction": true,
+ "AbortSignal": true,
+ "FontFace": true,
+ "FileReader": true,
+ "Worker": true,
+ "External": true,
+ "ImageBitmap": true,
+ "TimeRanges": true,
+ "Option": true,
+ "TextTrack": true,
+ "Image": true,
+ "AnimationTimeline": true,
+ "VideoPlaybackQuality": true,
+ "VTTCue": true,
+ "Storage": true,
+ "XPathExpression": true,
+ "CharacterData": false,
+ "TextMetrics": true,
+ "AnimationEffectReadOnly": true,
+ "PerformanceTiming": false,
+ "PerformanceMark": true,
+ "ImageBitmapRenderingContext": true,
+ "Headers": true,
+ "Range": false,
+ "Rect": true,
+ "AnimationEffectTimingReadOnly": true,
+ "KeyframeEffect": true,
+ "Permissions": true,
+ "TextEncoder": true,
+ "ImageData": true,
+ "SpeechSynthesisVoice": true,
+ "StorageManager": true,
+ "TextTrackCue": true,
+ "WebSocket": true,
+ "DocumentType": true,
+ "XPathEvaluator": true,
+ "PerformanceNavigationTiming": true,
+ "IdleDeadline": true,
+ "FileSystem": true,
+ "FileSystemFileEntry": true,
+ "CacheStorage": true,
+ "MimeType": true,
+ "PannerNode": true,
+ "NodeFilter": true,
+ "StereoPannerNode": true,
+ "console": false,
+ "DynamicsCompressorNode": true,
+ "PaintRequest": true,
+ "RGBColor": true,
+ "FontFaceSet": false,
+ "PaintRequestList": true,
+ "FileSystemEntry": true,
+ "XMLDocument": false,
+ "SourceBuffer": false,
+ "Screen": true,
+ "NamedNodeMap": false,
+ "History": true,
+ "Response": true,
+ "AnimationEffectTiming": true,
+ "ServiceWorkerRegistration": true,
+ "CanvasRenderingContext2D": true,
+ "ScriptProcessorNode": true,
+ "FileSystemDirectoryReader": true,
+ "MimeTypeArray": true,
+ "CanvasCaptureMediaStream": true,
+ "Directory": true,
+ "mozRTCPeerConnection": true,
+ "PerformanceObserverEntryList": true,
+ "PushSubscriptionOptions": true,
+ "Text": false,
+ "IntersectionObserverEntry": true,
+ "SubtleCrypto": true,
+ "Animation": true,
+ "DataTransfer": true,
+ "TreeWalker": true,
+ "XMLHttpRequest": true,
+ "LocalMediaStream": true,
+ "ConvolverNode": true,
+ "WaveShaperNode": true,
+ "DataTransferItemList": false,
+ "Request": true,
+ "SourceBufferList": false,
+ "XSLTProcessor": true,
+ "XMLHttpRequestUpload": true,
+ "SharedWorker": true,
+ "Notification": false,
+ "DataTransferItem": true,
+ "AnalyserNode": true,
+ "mozRTCIceCandidate": true,
+ "PerformanceObserver": true,
+ "OfflineResourceList": true,
+ "FileSystemDirectoryEntry": true,
+ "DesktopNotification": false,
+ "DataChannel": true,
+ "IIRFilterNode": true,
+ "ChannelSplitterNode": true,
+ "File": true,
+ "ConstantSourceNode": true,
+ "CryptoKey": true,
+ "GainNode": true,
+ "AbortController": true,
+ "Attr": true,
+ "SpeechSynthesis": true,
+ "PushSubscription": false,
+ "XMLStylesheetProcessingInstruction": false,
+ "NodeIterator": true,
+ "VideoStreamTrack": true,
+ "XMLSerializer": true,
+ "CaretPosition": true,
+ "FormData": true,
+ "CanvasPattern": true,
+ "mozRTCSessionDescription": true,
+ "Path2D": true,
+ "PerformanceNavigation": true,
+ "URL": false,
+ "PluginArray": true,
+ "MutationRecord": true,
+ "WebKitCSSMatrix": true,
+ "PeriodicWave": true,
+ "DocumentFragment": true,
+ "DocumentTimeline": false,
+ "ScreenOrientation": true,
+ "BroadcastChannel": true,
+ "PermissionStatus": true,
+ "IntersectionObserver": true,
+ "Blob": true,
+ "MessagePort": true,
+ "BarProp": true,
+ "OscillatorNode": true,
+ "Cache": true,
+ "RadioNodeList": true,
+ "KeyframeEffectReadOnly": true,
+ "InstallTrigger": true,
+ "Function": false,
+ "Object": false,
+ "eval": true,
+ "Window": false,
+ "close": false,
+ "stop": false,
+ "focus": false,
+ "blur": false,
+ "open": true,
+ "alert": false,
+ "confirm": false,
+ "prompt": false,
+ "print": false,
+ "postMessage": true,
+ "getSelection": true,
+ "getComputedStyle": true,
+ "matchMedia": true,
+ "moveTo": false,
+ "moveBy": false,
+ "resizeTo": false,
+ "resizeBy": false,
+ "scroll": false,
+ "scrollTo": false,
+ "scrollBy": false,
+ "requestAnimationFrame": true,
+ "cancelAnimationFrame": true,
+ "getDefaultComputedStyle": false,
+ "scrollByLines": false,
+ "scrollByPages": false,
+ "sizeToContent": false,
+ "updateCommands": true,
+ "find": false,
+ "dump": true,
+ "setResizable": false,
+ "requestIdleCallback": false,
+ "cancelIdleCallback": false,
+ "btoa": true,
+ "atob": true,
+ "setTimeout": true,
+ "clearTimeout": true,
+ "setInterval": true,
+ "clearInterval": true,
+ "createImageBitmap": true,
+ "fetch": true,
+ "self": true,
+ "name": false,
+ "history": true,
+ "locationbar": true,
+ "menubar": true,
+ "personalbar": true,
+ "scrollbars": true,
+ "statusbar": true,
+ "toolbar": true,
+ "status": true,
+ "closed": true,
+ "frames": true,
+ "length": false,
+ "opener": true,
+ "parent": true,
+ "frameElement": true,
+ "navigator": true,
+ "external": true,
+ "applicationCache": true,
+ "screen": true,
+ "innerWidth": true,
+ "innerHeight": true,
+ "scrollX": true,
+ "pageXOffset": true,
+ "scrollY": true,
+ "pageYOffset": true,
+ "screenX": true,
+ "screenY": true,
+ "outerWidth": true,
+ "outerHeight": true,
+ "performance": true,
+ "mozInnerScreenX": true,
+ "mozInnerScreenY": true,
+ "devicePixelRatio": true,
+ "scrollMaxX": true,
+ "scrollMaxY": true,
+ "fullScreen": false,
+ "mozPaintCount": true,
+ "sidebar": false,
+ "crypto": true,
+ "speechSynthesis": true,
+ "localStorage": true,
+ "origin": true,
+ "isSecureContext": false,
+ "indexedDB": true,
+ "caches": true,
+ "sessionStorage": true,
+ "window": false,
+ "document": true,
+ "location": false,
+ "top": true,
+ "netscape": true,
+ "Node": true,
+ "Document": true,
+ "Performance": false,
+ "startProfiling": true,
+ "stopProfiling": true,
+ "pauseProfilers": true,
+ "resumeProfilers": true,
+ "dumpProfile": true,
+ "getMaxGCPauseSinceClear": true,
+ "clearMaxGCPauseAccumulator": true,
+ "Location": true,
+ "StyleSheetList": false,
+ "Selection": false,
+ "Element": true,
+ "AnonymousContent": false,
+ "MutationObserver": true,
+ "NodeList": true,
+ "StopIteration": true
};
@@ -842,155 +842,155 @@ var fname_data = {
*
*/
var DEBUG = true;
-console.log("DEBUG:"+DEBUG);
+console.log("DEBUG:" + DEBUG);
-function dbg_print(a,b){
- if(DEBUG == true){
- //console.log(a,b)
- }
+function dbg_print(a, b) {
+ if (DEBUG == true) {
+ //console.log(a,b)
+ }
}
-function full_evaluate(script){
- var res = true;
- if(script === undefined || script == ""){
- return [true,"Harmless null script"];
- }
+function full_evaluate(script) {
+ var res = true;
+ if (script === undefined || script == "") {
+ return [true, "Harmless null script"];
+ }
- var ast = acornLoose.parse(script).body[0];
+ var ast = acornLoose.parse(script).body[0];
- var flag = false;
- var amtloops = 0;
+ var flag = false;
+ var amtloops = 0;
- var loopkeys = {"for":true,"if":true,"while":true,"switch":true};
- var operators = {"||":true,"&&":true,"=":true,"==":true,"++":true,"--":true,"+=":true,"-=":true,"*":true};
- try{
- var tokens = acorn.tokenizer(script);
- }catch(e){
- console.warn("Tokenizer could not be initiated (probably invalid code)");
- return [false,"Tokenizer could not be initiated (probably invalid code)"];
- }
- try{
- var toke = tokens.getToken();
- }catch(e){
- console.warn("couldn't get first token (probably invalid code)");
- console.warn("Continuing evaluation");
- }
+ var loopkeys = { "for": true, "if": true, "while": true, "switch": true };
+ var operators = { "||": true, "&&": true, "=": true, "==": true, "++": true, "--": true, "+=": true, "-=": true, "*": true };
+ try {
+ var tokens = acorn.tokenizer(script);
+ } catch (e) {
+ console.warn("Tokenizer could not be initiated (probably invalid code)");
+ return [false, "Tokenizer could not be initiated (probably invalid code)"];
+ }
+ try {
+ var toke = tokens.getToken();
+ } catch (e) {
+ console.warn("couldn't get first token (probably invalid code)");
+ console.warn("Continuing evaluation");
+ }
- /**
- * Given the end of an identifer token, it tests for bracket suffix notation
- */
- function being_called(end){
- var i = 0;
- while(script.charAt(end+i).match(/\s/g) !== null){
- i++;
- if(i >= script.length-1){
- return false;
- }
- }
- if(script.charAt(end+i) == "("){
- return true;
- }else{
- return false;
- }
- }
- /**
- * Given the end of an identifer token, it tests for parentheses
- */
- function is_bsn(end){
- var i = 0;
- while(script.charAt(end+i).match(/\s/g) !== null){
- i++;
- if(i >= script.length-1){
- return false;
- }
- }
- if(script.charAt(end+i) == "["){
- return true;
- }else{
- return false;
- }
- }
- var error_count = 0;
- while(toke.type != acorn.tokTypes.eof){
- if(toke.type.keyword !== undefined){
- // This type of loop detection ignores functional loop alternatives and ternary operators
- //dbg_print("Keyword:"+toke.type.keyword);
- console.log(toke);
- if(toke.type.keyword == "function"){
- dbg_print("%c NONTRIVIAL: Function declaration.","color:red");
- if(DEBUG == false){
- return [false,"NONTRIVIAL: Function declaration."];
- }
- }
+ /**
+ * Given the end of an identifer token, it tests for bracket suffix notation
+ */
+ function being_called(end) {
+ var i = 0;
+ while (script.charAt(end + i).match(/\s/g) !== null) {
+ i++;
+ if (i >= script.length - 1) {
+ return false;
+ }
+ }
+ if (script.charAt(end + i) == "(") {
+ return true;
+ } else {
+ return false;
+ }
+ }
+ /**
+ * Given the end of an identifer token, it tests for parentheses
+ */
+ function is_bsn(end) {
+ var i = 0;
+ while (script.charAt(end + i).match(/\s/g) !== null) {
+ i++;
+ if (i >= script.length - 1) {
+ return false;
+ }
+ }
+ if (script.charAt(end + i) == "[") {
+ return true;
+ } else {
+ return false;
+ }
+ }
+ var error_count = 0;
+ while (toke.type != acorn.tokTypes.eof) {
+ if (toke.type.keyword !== undefined) {
+ // This type of loop detection ignores functional loop alternatives and ternary operators
+ //dbg_print("Keyword:"+toke.type.keyword);
+ console.log(toke);
+ if (toke.type.keyword == "function") {
+ dbg_print("%c NONTRIVIAL: Function declaration.", "color:red");
+ if (DEBUG == false) {
+ return [false, "NONTRIVIAL: Function declaration."];
+ }
+ }
- if(loopkeys[toke.type.keyword] !== undefined){
- amtloops++;
- if(amtloops > 3){
- dbg_print("%c NONTRIVIAL: Too many loops/conditionals.","color:red");
- if(DEBUG == false){
- return [false,"NONTRIVIAL: Too many loops/conditionals."];
- }
- }
- }
- }else if(toke.value !== undefined){
- var status = fname_data[toke.value];
- if(status === true){ // is the identifier banned?
- dbg_print("%c NONTRIVIAL: nontrivial token: '"+toke.value+"'","color:red");
- if(DEBUG == false){
- return [false,"NONTRIVIAL: nontrivial token: '"+toke.value+"'"];
- }
- }else if(status === false){// is the identifier not banned?
- // Is there bracket suffix notation?
- if(operators[toke.value] === undefined){
- if(is_bsn(toke.end)){
- dbg_print("%c NONTRIVIAL: Bracket suffix notation on variable '"+toke.value+"'","color:red");
- if(DEBUG == false){
- return [false,"%c NONTRIVIAL: Bracket suffix notation on variable '"+toke.value+"'"];
- }
- }
- }
- }else if(status === undefined){// is the identifier user defined?
- // Are arguments being passed to a user defined variable?
- if(being_called(toke.end)){
- dbg_print("%c NONTRIVIAL: User defined variable '"+toke.value+"' called as function","color:red");
- if(DEBUG == false){
- return [false,"NONTRIVIAL: User defined variable '"+toke.value+"' called as function"];
- }
- }
- // Is there bracket suffix notation?
- if(operators[toke.value] === undefined){
- if(is_bsn(toke.end)){
- dbg_print("%c NONTRIVIAL: Bracket suffix notation on variable '"+toke.value+"'","color:red");
- if(DEBUG == false){
- return [false,"NONTRIVIAL: Bracket suffix notation on variable '"+toke.value+"'"];
- }
- }
- }
- }else{
- dbg_print("trivial token:"+toke.value);
- }
- }
- // If not a keyword or an identifier it's some kind of operator, field parenthesis, brackets
- try{
- toke = tokens.getToken();
- }catch(e){
- dbg_print("Denied script because it cannot be parsed.");
- return [false,"NONTRIVIAL: Cannot be parsed."];
- console.warn("Continuing evaluation");
- error_count++;
- }
- }
+ if (loopkeys[toke.type.keyword] !== undefined) {
+ amtloops++;
+ if (amtloops > 3) {
+ dbg_print("%c NONTRIVIAL: Too many loops/conditionals.", "color:red");
+ if (DEBUG == false) {
+ return [false, "NONTRIVIAL: Too many loops/conditionals."];
+ }
+ }
+ }
+ } else if (toke.value !== undefined) {
+ var status = fname_data[toke.value];
+ if (status === true) { // is the identifier banned?
+ dbg_print("%c NONTRIVIAL: nontrivial token: '" + toke.value + "'", "color:red");
+ if (DEBUG == false) {
+ return [false, "NONTRIVIAL: nontrivial token: '" + toke.value + "'"];
+ }
+ } else if (status === false) {// is the identifier not banned?
+ // Is there bracket suffix notation?
+ if (operators[toke.value] === undefined) {
+ if (is_bsn(toke.end)) {
+ dbg_print("%c NONTRIVIAL: Bracket suffix notation on variable '" + toke.value + "'", "color:red");
+ if (DEBUG == false) {
+ return [false, "%c NONTRIVIAL: Bracket suffix notation on variable '" + toke.value + "'"];
+ }
+ }
+ }
+ } else if (status === undefined) {// is the identifier user defined?
+ // Are arguments being passed to a user defined variable?
+ if (being_called(toke.end)) {
+ dbg_print("%c NONTRIVIAL: User defined variable '" + toke.value + "' called as function", "color:red");
+ if (DEBUG == false) {
+ return [false, "NONTRIVIAL: User defined variable '" + toke.value + "' called as function"];
+ }
+ }
+ // Is there bracket suffix notation?
+ if (operators[toke.value] === undefined) {
+ if (is_bsn(toke.end)) {
+ dbg_print("%c NONTRIVIAL: Bracket suffix notation on variable '" + toke.value + "'", "color:red");
+ if (DEBUG == false) {
+ return [false, "NONTRIVIAL: Bracket suffix notation on variable '" + toke.value + "'"];
+ }
+ }
+ }
+ } else {
+ dbg_print("trivial token:" + toke.value);
+ }
+ }
+ // If not a keyword or an identifier it's some kind of operator, field parenthesis, brackets
+ try {
+ toke = tokens.getToken();
+ } catch (e) {
+ dbg_print("Denied script because it cannot be parsed.");
+ return [false, "NONTRIVIAL: Cannot be parsed."];
+ console.warn("Continuing evaluation");
+ error_count++;
+ }
+ }
- dbg_print("%cAppears to be trivial.","color:green;");
- return [true,"Script appears to be trivial."];
+ dbg_print("%cAppears to be trivial.", "color:green;");
+ return [true, "Script appears to be trivial."];
}
//****************************************************************************************************
-window.onload = function () {
- document.getElementById("parse").addEventListener("click",function(){
- var script = document.getElementById("input").value;
- var ast = acornLoose.parse(script).body[0];
- document.getElementById("output").innerHTML = JSON.stringify(ast, null, '\t'); // Indented with tab
- document.getElementById("output").innerHTML = full_evaluate(script) + "\n\n" + document.getElementById("output").innerHTML;
- });
+window.onload = function() {
+ document.getElementById("parse").addEventListener("click", function() {
+ var script = document.getElementById("input").value;
+ var ast = acornLoose.parse(script).body[0];
+ document.getElementById("output").innerHTML = JSON.stringify(ast, null, '\t'); // Indented with tab
+ document.getElementById("output").innerHTML = full_evaluate(script) + "\n\n" + document.getElementById("output").innerHTML;
+ });
}