[INTERFACES]
interface Blob
    attribute @@toStringTag
    getter size
    getter type
    method constructor
    method slice
interface BroadcastChannel : EventTarget
    attribute @@toStringTag
    getter name
    getter onmessage
    getter onmessageerror
    method close
    method constructor
    method postMessage
    setter onmessage
    setter onmessageerror
interface BudgetService
    attribute @@toStringTag
    method constructor
    method reserve
interface ByteLengthQueuingStrategy
    method constructor
    method size
interface Cache
    attribute @@toStringTag
    method add
    method addAll
    method constructor
    method delete
    method keys
    method match
    method matchAll
    method put
interface CacheStorage
    attribute @@toStringTag
    method constructor
    method delete
    method has
    method keys
    method match
    method open
interface Client
    attribute @@toStringTag
    getter frameType
    getter id
    getter type
    getter url
    method constructor
    method postMessage
interface Clients
    attribute @@toStringTag
    method claim
    method constructor
    method get
    method matchAll
    method openWindow
interface CloseEvent : Event
    attribute @@toStringTag
    getter code
    getter reason
    getter wasClean
    method constructor
interface CountQueuingStrategy
    method constructor
    method size
interface Crypto
    attribute @@toStringTag
    getter subtle
    method constructor
    method getRandomValues
interface CryptoKey
    attribute @@toStringTag
    getter algorithm
    getter extractable
    getter type
    getter usages
    method constructor
interface CustomEvent : Event
    attribute @@toStringTag
    getter detail
    method constructor
    method initCustomEvent
interface DOMException
    attribute @@toStringTag
    attribute ABORT_ERR
    attribute DATA_CLONE_ERR
    attribute DOMSTRING_SIZE_ERR
    attribute HIERARCHY_REQUEST_ERR
    attribute INDEX_SIZE_ERR
    attribute INUSE_ATTRIBUTE_ERR
    attribute INVALID_ACCESS_ERR
    attribute INVALID_CHARACTER_ERR
    attribute INVALID_MODIFICATION_ERR
    attribute INVALID_NODE_TYPE_ERR
    attribute INVALID_STATE_ERR
    attribute NAMESPACE_ERR
    attribute NETWORK_ERR
    attribute NOT_FOUND_ERR
    attribute NOT_SUPPORTED_ERR
    attribute NO_DATA_ALLOWED_ERR
    attribute NO_MODIFICATION_ALLOWED_ERR
    attribute QUOTA_EXCEEDED_ERR
    attribute SECURITY_ERR
    attribute SYNTAX_ERR
    attribute TIMEOUT_ERR
    attribute TYPE_MISMATCH_ERR
    attribute URL_MISMATCH_ERR
    attribute VALIDATION_ERR
    attribute WRONG_DOCUMENT_ERR
    getter code
    getter message
    getter name
    method constructor
interface DOMMatrix : DOMMatrixReadOnly
    attribute @@toStringTag
    getter a
    getter b
    getter c
    getter d
    getter e
    getter f
    getter m11
    getter m12
    getter m13
    getter m14
    getter m21
    getter m22
    getter m23
    getter m24
    getter m31
    getter m32
    getter m33
    getter m34
    getter m41
    getter m42
    getter m43
    getter m44
    method constructor
    method invertSelf
    method multiplySelf
    method preMultiplySelf
    method rotateAxisAngleSelf
    method rotateFromVectorSelf
    method rotateSelf
    method scale3dSelf
    method scaleSelf
    method skewXSelf
    method skewYSelf
    method translateSelf
    setter a
    setter b
    setter c
    setter d
    setter e
    setter f
    setter m11
    setter m12
    setter m13
    setter m14
    setter m21
    setter m22
    setter m23
    setter m24
    setter m31
    setter m32
    setter m33
    setter m34
    setter m41
    setter m42
    setter m43
    setter m44
interface DOMMatrixReadOnly
    static method fromFloat32Array
    static method fromFloat64Array
    static method fromMatrix
    attribute @@toStringTag
    getter a
    getter b
    getter c
    getter d
    getter e
    getter f
    getter is2D
    getter isIdentity
    getter m11
    getter m12
    getter m13
    getter m14
    getter m21
    getter m22
    getter m23
    getter m24
    getter m31
    getter m32
    getter m33
    getter m34
    getter m41
    getter m42
    getter m43
    getter m44
    method constructor
    method flipX
    method flipY
    method inverse
    method multiply
    method rotate
    method rotateAxisAngle
    method rotateFromVector
    method scale
    method scale3d
    method skewX
    method skewY
    method toFloat32Array
    method toFloat64Array
    method toJSON
    method transformPoint
    method translate
interface DOMPoint : DOMPointReadOnly
    attribute @@toStringTag
    getter w
    getter x
    getter y
    getter z
    method constructor
    setter w
    setter x
    setter y
    setter z
interface DOMPointReadOnly
    static method fromPoint
    attribute @@toStringTag
    getter w
    getter x
    getter y
    getter z
    method constructor
    method matrixTransform
    method toJSON
interface DOMQuad
    static method fromQuad
    static method fromRect
    attribute @@toStringTag
    getter p1
    getter p2
    getter p3
    getter p4
    method constructor
    method getBounds
    method toJSON
interface DOMRect : DOMRectReadOnly
    attribute @@toStringTag
    getter height
    getter width
    getter x
    getter y
    method constructor
    setter height
    setter width
    setter x
    setter y
interface DOMRectReadOnly
    static method fromRect
    attribute @@toStringTag
    getter bottom
    getter height
    getter left
    getter right
    getter top
    getter width
    getter x
    getter y
    method constructor
    method toJSON
interface DOMStringList
    attribute @@toStringTag
    getter length
    method @@iterator
    method constructor
    method contains
    method item
interface DataView
    attribute @@toStringTag
    getter buffer
    getter byteLength
    getter byteOffset
    method constructor
    method getFloat32
    method getFloat64
    method getInt16
    method getInt32
    method getInt8
    method getUint16
    method getUint32
    method getUint8
    method setFloat32
    method setFloat64
    method setInt16
    method setInt32
    method setInt8
    method setUint16
    method setUint32
    method setUint8
interface Event
    attribute @@toStringTag
    attribute AT_TARGET
    attribute BUBBLING_PHASE
    attribute CAPTURING_PHASE
    attribute NONE
    getter bubbles
    getter cancelBubble
    getter cancelable
    getter composed
    getter currentTarget
    getter defaultPrevented
    getter eventPhase
    getter path
    getter returnValue
    getter srcElement
    getter target
    getter timeStamp
    getter type
    method composedPath
    method constructor
    method initEvent
    method preventDefault
    method stopImmediatePropagation
    method stopPropagation
    setter cancelBubble
    setter returnValue
interface EventSource : EventTarget
    attribute @@toStringTag
    attribute CLOSED
    attribute CONNECTING
    attribute OPEN
    getter onerror
    getter onmessage
    getter onopen
    getter readyState
    getter url
    getter withCredentials
    method close
    method constructor
    setter onerror
    setter onmessage
    setter onopen
interface EventTarget
    attribute @@toStringTag
    method addEventListener
    method constructor
    method dispatchEvent
    method removeEventListener
interface ExtendableEvent : Event
    attribute @@toStringTag
    method constructor
    method waitUntil
interface ExtendableMessageEvent : ExtendableEvent
    attribute @@toStringTag
    getter data
    getter lastEventId
    getter origin
    getter ports
    getter source
    method constructor
interface FetchEvent : ExtendableEvent
    attribute @@toStringTag
    getter clientId
    getter isReload
    getter preloadResponse
    getter request
    method constructor
    method respondWith
interface File : Blob
    attribute @@toStringTag
    getter lastModified
    getter lastModifiedDate
    getter name
    getter webkitRelativePath
    method constructor
interface FileList
    attribute @@toStringTag
    getter length
    method @@iterator
    method constructor
    method item
interface FileReader : EventTarget
    attribute @@toStringTag
    attribute DONE
    attribute EMPTY
    attribute LOADING
    getter error
    getter onabort
    getter onerror
    getter onload
    getter onloadend
    getter onloadstart
    getter onprogress
    getter readyState
    getter result
    method abort
    method constructor
    method readAsArrayBuffer
    method readAsBinaryString
    method readAsDataURL
    method readAsText
    setter onabort
    setter onerror
    setter onload
    setter onloadend
    setter onloadstart
    setter onprogress
interface FormData
    attribute @@toStringTag
    method @@iterator
    method append
    method constructor
    method delete
    method entries
    method forEach
    method get
    method getAll
    method has
    method keys
    method set
    method values
interface Headers
    attribute @@toStringTag
    method @@iterator
    method append
    method constructor
    method delete
    method entries
    method forEach
    method get
    method has
    method keys
    method set
    method values
interface IDBCursor
    attribute @@toStringTag
    getter direction
    getter key
    getter primaryKey
    getter source
    method advance
    method constructor
    method continue
    method continuePrimaryKey
    method delete
    method update
interface IDBCursorWithValue : IDBCursor
    attribute @@toStringTag
    getter value
    method constructor
interface IDBDatabase : EventTarget
    attribute @@toStringTag
    getter name
    getter objectStoreNames
    getter onabort
    getter onclose
    getter onerror
    getter onversionchange
    getter version
    method close
    method constructor
    method createObjectStore
    method deleteObjectStore
    method transaction
    setter onabort
    setter onclose
    setter onerror
    setter onversionchange
interface IDBFactory
    attribute @@toStringTag
    method cmp
    method constructor
    method deleteDatabase
    method open
interface IDBIndex
    attribute @@toStringTag
    getter keyPath
    getter multiEntry
    getter name
    getter objectStore
    getter unique
    method constructor
    method count
    method get
    method getAll
    method getAllKeys
    method getKey
    method openCursor
    method openKeyCursor
    setter name
interface IDBKeyRange
    static method bound
    static method lowerBound
    static method only
    static method upperBound
    attribute @@toStringTag
    getter lower
    getter lowerOpen
    getter upper
    getter upperOpen
    method constructor
    method includes
interface IDBObjectStore
    attribute @@toStringTag
    getter autoIncrement
    getter indexNames
    getter keyPath
    getter name
    getter transaction
    method add
    method clear
    method constructor
    method count
    method createIndex
    method delete
    method deleteIndex
    method get
    method getAll
    method getAllKeys
    method getKey
    method index
    method openCursor
    method openKeyCursor
    method put
    setter name
interface IDBOpenDBRequest : IDBRequest
    attribute @@toStringTag
    getter onblocked
    getter onupgradeneeded
    method constructor
    setter onblocked
    setter onupgradeneeded
interface IDBRequest : EventTarget
    attribute @@toStringTag
    getter error
    getter onerror
    getter onsuccess
    getter readyState
    getter result
    getter source
    getter transaction
    method constructor
    setter onerror
    setter onsuccess
interface IDBTransaction : EventTarget
    attribute @@toStringTag
    getter db
    getter error
    getter mode
    getter objectStoreNames
    getter onabort
    getter oncomplete
    getter onerror
    method abort
    method constructor
    method objectStore
    setter onabort
    setter oncomplete
    setter onerror
interface IDBVersionChangeEvent : Event
    attribute @@toStringTag
    getter dataLoss
    getter dataLossMessage
    getter newVersion
    getter oldVersion
    method constructor
interface ImageBitmap
    attribute @@toStringTag
    getter height
    getter width
    method close
    method constructor
interface ImageData
    attribute @@toStringTag
    getter data
    getter height
    getter width
    method constructor
interface InstallEvent : ExtendableEvent
    attribute @@toStringTag
    method constructor
interface MessageChannel
    attribute @@toStringTag
    getter port1
    getter port2
    method constructor
interface MessageEvent : Event
    attribute @@toStringTag
    getter data
    getter lastEventId
    getter origin
    getter ports
    getter source
    method constructor
    method initMessageEvent
interface MessagePort : EventTarget
    attribute @@toStringTag
    getter onmessage
    getter onmessageerror
    method close
    method constructor
    method postMessage
    method start
    setter onmessage
    setter onmessageerror
interface NavigationPreloadManager
    attribute @@toStringTag
    method constructor
    method disable
    method enable
    method getState
    method setHeaderValue
interface NetworkInformation : EventTarget
    attribute @@toStringTag
    getter downlink
    getter effectiveType
    getter onchange
    getter rtt
    getter saveData
    method constructor
    setter onchange
interface Notification : EventTarget
    static getter maxActions
    static getter permission
    attribute @@toStringTag
    getter actions
    getter badge
    getter body
    getter data
    getter dir
    getter icon
    getter lang
    getter onclick
    getter onclose
    getter onerror
    getter onshow
    getter renotify
    getter requireInteraction
    getter silent
    getter tag
    getter timestamp
    getter title
    getter vibrate
    method close
    method constructor
    setter onclick
    setter onclose
    setter onerror
    setter onshow
interface NotificationEvent : ExtendableEvent
    attribute @@toStringTag
    getter action
    getter notification
    method constructor
interface PerformanceEntry
    attribute @@toStringTag
    getter duration
    getter entryType
    getter name
    getter startTime
    method constructor
    method toJSON
interface PerformanceObserver
    attribute @@toStringTag
    method constructor
    method disconnect
    method observe
interface PerformanceObserverEntryList
    attribute @@toStringTag
    method constructor
    method getEntries
    method getEntriesByName
    method getEntriesByType
interface PerformanceResourceTiming : PerformanceEntry
    attribute @@toStringTag
    getter connectEnd
    getter connectStart
    getter decodedBodySize
    getter domainLookupEnd
    getter domainLookupStart
    getter encodedBodySize
    getter fetchStart
    getter initiatorType
    getter nextHopProtocol
    getter redirectEnd
    getter redirectStart
    getter requestStart
    getter responseEnd
    getter responseStart
    getter secureConnectionStart
    getter transferSize
    getter workerStart
    method constructor
    method toJSON
interface PermissionStatus : EventTarget
    attribute @@toStringTag
    getter onchange
    getter state
    method constructor
    setter onchange
interface Permissions
    attribute @@toStringTag
    method constructor
    method query
interface PromiseRejectionEvent : Event
    attribute @@toStringTag
    getter promise
    getter reason
    method constructor
interface PushEvent : ExtendableEvent
    attribute @@toStringTag
    getter data
    method constructor
interface PushManager
    static getter supportedContentEncodings
    attribute @@toStringTag
    method constructor
    method getSubscription
    method permissionState
    method subscribe
interface PushMessageData
    attribute @@toStringTag
    method arrayBuffer
    method blob
    method constructor
    method json
    method text
interface PushSubscription
    attribute @@toStringTag
    getter endpoint
    getter expirationTime
    getter options
    method constructor
    method getKey
    method toJSON
    method unsubscribe
interface PushSubscriptionOptions
    attribute @@toStringTag
    getter applicationServerKey
    getter userVisibleOnly
    method constructor
interface ReadableStream
    getter locked
    method cancel
    method constructor
    method getReader
    method pipeThrough
    method pipeTo
    method tee
interface Request
    attribute @@toStringTag
    getter bodyUsed
    getter cache
    getter credentials
    getter destination
    getter headers
    getter integrity
    getter method
    getter mode
    getter redirect
    getter referrer
    getter referrerPolicy
    getter url
    method arrayBuffer
    method blob
    method clone
    method constructor
    method formData
    method json
    method text
interface Response
    static method error
    static method redirect
    attribute @@toStringTag
    getter body
    getter bodyUsed
    getter headers
    getter ok
    getter redirected
    getter status
    getter statusText
    getter type
    getter url
    method arrayBuffer
    method blob
    method clone
    method constructor
    method formData
    method json
    method text
interface ServiceWorkerGlobalScope : WorkerGlobalScope
    attribute @@toStringTag
    method constructor
interface ServiceWorkerRegistration : EventTarget
    attribute @@toStringTag
    getter active
    getter installing
    getter navigationPreload
    getter onupdatefound
    getter pushManager
    getter scope
    getter sync
    getter waiting
    method constructor
    method getNotifications
    method showNotification
    method unregister
    method update
    setter onupdatefound
interface StorageManager
    attribute @@toStringTag
    method constructor
    method estimate
    method persisted
interface SubtleCrypto
    attribute @@toStringTag
    method constructor
    method decrypt
    method deriveBits
    method deriveKey
    method digest
    method encrypt
    method exportKey
    method generateKey
    method importKey
    method sign
    method unwrapKey
    method verify
    method wrapKey
interface SyncEvent : ExtendableEvent
    attribute @@toStringTag
    getter lastChance
    getter tag
    method constructor
interface SyncManager
    attribute @@toStringTag
    method constructor
    method getTags
    method register
interface TextDecoder
    attribute @@toStringTag
    getter encoding
    getter fatal
    getter ignoreBOM
    method constructor
    method decode
interface TextEncoder
    attribute @@toStringTag
    getter encoding
    method constructor
    method encode
interface URL
    attribute @@toStringTag
    getter hash
    getter host
    getter hostname
    getter href
    getter origin
    getter password
    getter pathname
    getter port
    getter protocol
    getter search
    getter searchParams
    getter username
    method constructor
    method toString
    setter hash
    setter host
    setter hostname
    setter href
    setter password
    setter pathname
    setter port
    setter protocol
    setter search
    setter username
interface URLSearchParams
    attribute @@toStringTag
    method @@iterator
    method append
    method constructor
    method delete
    method entries
    method forEach
    method get
    method getAll
    method has
    method keys
    method set
    method sort
    method toString
    method values
interface WebSocket : EventTarget
    attribute @@toStringTag
    attribute CLOSED
    attribute CLOSING
    attribute CONNECTING
    attribute OPEN
    getter binaryType
    getter bufferedAmount
    getter extensions
    getter onclose
    getter onerror
    getter onmessage
    getter onopen
    getter protocol
    getter readyState
    getter url
    method close
    method constructor
    method send
    setter binaryType
    setter onclose
    setter onerror
    setter onmessage
    setter onopen
interface WindowClient : Client
    attribute @@toStringTag
    getter focused
    getter visibilityState
    method constructor
    method focus
    method navigate
interface WorkerGlobalScope : EventTarget
    attribute @@toStringTag
    getter caches
    getter crypto
    getter indexedDB
    getter isSecureContext
    getter location
    getter navigator
    getter onerror
    getter onrejectionhandled
    getter onunhandledrejection
    getter origin
    getter performance
    getter self
    method atob
    method btoa
    method clearInterval
    method clearTimeout
    method constructor
    method createImageBitmap
    method fetch
    method importScripts
    method setInterval
    method setTimeout
    setter onerror
    setter onrejectionhandled
    setter onunhandledrejection
    setter origin
interface WorkerLocation
    attribute @@toStringTag
    getter hash
    getter host
    getter hostname
    getter href
    getter origin
    getter pathname
    getter port
    getter protocol
    getter search
    method constructor
    method toString
interface WorkerNavigator
    attribute @@toStringTag
    getter appCodeName
    getter appName
    getter appVersion
    getter budget
    getter connection
    getter hardwareConcurrency
    getter onLine
    getter permissions
    getter platform
    getter product
    getter storage
    getter userAgent
    method constructor
interface WritableStream
    getter locked
    method abort
    method constructor
    method getWriter
[GLOBAL OBJECT]
    attribute console
    attribute internals
    getter clients
    getter onactivate
    getter onfetch
    getter oninstall
    getter onmessage
    getter onnotificationclick
    getter onnotificationclose
    getter onpush
    getter onsync
    getter registration
    method fetch
    method gc
    method skipWaiting
    setter onactivate
    setter onfetch
    setter oninstall
    setter onmessage
    setter onnotificationclick
    setter onnotificationclose
    setter onpush
    setter onsync
PASS Verify the interface of ServiceWorkerGlobalScope
PASS successfullyParsed is true

TEST COMPLETE

