# Pastebin Oyd05gui #standardSQL CREATE TEMP FUNCTION searcher(body STRING, builtin STRING) AS ( REGEXP_CONTAINS(body, CONCAT( '\\.__proto__\\s*=\\s*', builtin, '|extends\\s+', builtin, '|.prototype\\s*=\\s*new\\s+', builtin, '|extends?\\((\\s*[^\\),]\\s*,\\s*)*\\s*', builtin, '|\\.setPrototypeOf\\((\\s*[^\\),]\\s*,\\s*){1}\\s*', builtin )) ); CREATE TEMP FUNCTION extendsPromise(body STRING) AS ( searcher(body, 'Promise') ); CREATE TEMP FUNCTION extendsRegExp(body STRING) AS ( searcher(body, 'RegExp') ); CREATE TEMP FUNCTION extendsArray(body STRING) AS ( searcher(body, 'Array') ); CREATE TEMP FUNCTION extendsTypedArray(body STRING) AS ( searcher(body, 'Int8Array') OR searcher(body, 'Uint8Array') OR searcher(body, 'Uint8ClampedArray') OR searcher(body, 'Int16Array') OR searcher(body, 'Uint16Array') OR searcher(body, 'Int32Array') OR searcher(body, 'Uint32Array') OR searcher(body, 'Float32Array') OR searcher(body, 'Float64Array') ); WITH desktopPromise AS ( SELECT DISTINCT page FROM `httparchive.latest.response_bodies_desktop` WHERE extendsPromise(body)), mobilePromise AS ( SELECT DISTINCT page FROM `httparchive.latest.response_bodies_mobile` WHERE extendsPromise(body)), desktopArray AS ( SELECT DISTINCT page FROM `httparchive.latest.response_bodies_desktop` WHERE extendsArray(body)), mobileArray AS ( SELECT DISTINCT page FROM `httparchive.latest.response_bodies_mobile` WHERE extendsArray(body)), desktopRegExp AS ( SELECT DISTINCT page FROM `httparchive.latest.response_bodies_desktop` WHERE extendsRegEXP(body)), mobileRegExp AS ( SELECT DISTINCT page FROM `httparchive.latest.response_bodies_mobile` WHERE extendsRegEXP(body)), desktopTypedArray AS ( SELECT DISTINCT page FROM `httparchive.latest.response_bodies_desktop` WHERE extendsTypedArray(body)), mobileTypedArray AS ( SELECT DISTINCT page FROM `httparchive.latest.response_bodies_mobile` WHERE extendsTypedArray(body)) SELECT IFNULL(desktopArray.page, mobileArray.page) AS urlArray, IFNULL(desktopPromise.page, mobilePromise.page) AS urlPromise, IFNULL(desktopRegExp.page, mobileRegExp.page) AS urlRegExp, IFNULL(desktopTypedArray.page, mobileTypedArray.page) AS urlTypedArray, FROM desktopArray FULL JOIN mobileArray USING (page) FULL JOIN desktopPromise USING (page) FULL JOIN mobilePromise USING (page) FULL JOIN desktopRegExp USING (page) FULL JOIN mobileRegExp USING (page) FULL JOIN desktopTypedArray USING (page) FULL JOIN mobileTypedArray USING (page)