@browserless.io/browserless 2.26.0 → 2.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (439) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/build/config.d.ts +3 -0
  3. package/build/config.js +8 -1
  4. package/build/routes/chrome/http/content.post.body.json +8 -8
  5. package/build/routes/chrome/http/pdf.post.body.json +8 -8
  6. package/build/routes/chrome/http/scrape.post.body.json +8 -8
  7. package/build/routes/chrome/http/screenshot.post.body.json +8 -8
  8. package/build/routes/chromium/http/content.post.body.json +8 -8
  9. package/build/routes/chromium/http/pdf.post.body.json +8 -8
  10. package/build/routes/chromium/http/scrape.post.body.json +8 -8
  11. package/build/routes/chromium/http/screenshot.post.body.json +8 -8
  12. package/build/routes/chromium/tests/pdf.spec.js +24 -0
  13. package/build/routes/edge/http/content.post.body.json +8 -8
  14. package/build/routes/edge/http/pdf.post.body.json +8 -8
  15. package/build/routes/edge/http/scrape.post.body.json +8 -8
  16. package/build/routes/edge/http/screenshot.post.body.json +8 -8
  17. package/build/sdk-utils.js +3 -0
  18. package/build/server.d.ts +1 -0
  19. package/build/server.js +22 -35
  20. package/build/utils.d.ts +2 -2
  21. package/build/utils.js +22 -7
  22. package/extensions/ublocklite/_locales/ar/messages.json +4 -0
  23. package/extensions/ublocklite/_locales/az/messages.json +4 -0
  24. package/extensions/ublocklite/_locales/be/messages.json +6 -2
  25. package/extensions/ublocklite/_locales/bg/messages.json +4 -0
  26. package/extensions/ublocklite/_locales/bn/messages.json +4 -0
  27. package/extensions/ublocklite/_locales/br_FR/messages.json +6 -2
  28. package/extensions/ublocklite/_locales/bs/messages.json +4 -0
  29. package/extensions/ublocklite/_locales/ca/messages.json +4 -0
  30. package/extensions/ublocklite/_locales/cs/messages.json +4 -0
  31. package/extensions/ublocklite/_locales/cv/messages.json +4 -0
  32. package/extensions/ublocklite/_locales/cy/messages.json +4 -0
  33. package/extensions/ublocklite/_locales/da/messages.json +4 -0
  34. package/extensions/ublocklite/_locales/de/messages.json +4 -0
  35. package/extensions/ublocklite/_locales/el/messages.json +4 -0
  36. package/extensions/ublocklite/_locales/en/messages.json +4 -0
  37. package/extensions/ublocklite/_locales/en_GB/messages.json +4 -0
  38. package/extensions/ublocklite/_locales/eo/messages.json +4 -0
  39. package/extensions/ublocklite/_locales/es/messages.json +4 -0
  40. package/extensions/ublocklite/_locales/et/messages.json +6 -2
  41. package/extensions/ublocklite/_locales/eu/messages.json +12 -8
  42. package/extensions/ublocklite/_locales/fa/messages.json +4 -0
  43. package/extensions/ublocklite/_locales/fi/messages.json +4 -0
  44. package/extensions/ublocklite/_locales/fil/messages.json +4 -0
  45. package/extensions/ublocklite/_locales/fr/messages.json +4 -0
  46. package/extensions/ublocklite/_locales/fy/messages.json +6 -2
  47. package/extensions/ublocklite/_locales/gl/messages.json +4 -0
  48. package/extensions/ublocklite/_locales/gu/messages.json +4 -0
  49. package/extensions/ublocklite/_locales/he/messages.json +4 -0
  50. package/extensions/ublocklite/_locales/hi/messages.json +4 -0
  51. package/extensions/ublocklite/_locales/hr/messages.json +4 -0
  52. package/extensions/ublocklite/_locales/hu/messages.json +6 -2
  53. package/extensions/ublocklite/_locales/hy/messages.json +4 -0
  54. package/extensions/ublocklite/_locales/id/messages.json +4 -0
  55. package/extensions/ublocklite/_locales/it/messages.json +4 -0
  56. package/extensions/ublocklite/_locales/ja/messages.json +4 -0
  57. package/extensions/ublocklite/_locales/ka/messages.json +4 -0
  58. package/extensions/ublocklite/_locales/kk/messages.json +4 -0
  59. package/extensions/ublocklite/_locales/kn/messages.json +4 -0
  60. package/extensions/ublocklite/_locales/ko/messages.json +4 -0
  61. package/extensions/ublocklite/_locales/lt/messages.json +4 -0
  62. package/extensions/ublocklite/_locales/lv/messages.json +4 -0
  63. package/extensions/ublocklite/_locales/mk/messages.json +4 -0
  64. package/extensions/ublocklite/_locales/ml/messages.json +4 -0
  65. package/extensions/ublocklite/_locales/mr/messages.json +4 -0
  66. package/extensions/ublocklite/_locales/ms/messages.json +4 -0
  67. package/extensions/ublocklite/_locales/nb/messages.json +4 -0
  68. package/extensions/ublocklite/_locales/nl/messages.json +4 -0
  69. package/extensions/ublocklite/_locales/oc/messages.json +4 -0
  70. package/extensions/ublocklite/_locales/pa/messages.json +4 -0
  71. package/extensions/ublocklite/_locales/pl/messages.json +4 -0
  72. package/extensions/ublocklite/_locales/pt_BR/messages.json +4 -0
  73. package/extensions/ublocklite/_locales/pt_PT/messages.json +4 -0
  74. package/extensions/ublocklite/_locales/ro/messages.json +4 -0
  75. package/extensions/ublocklite/_locales/ru/messages.json +4 -0
  76. package/extensions/ublocklite/_locales/si/messages.json +4 -0
  77. package/extensions/ublocklite/_locales/sk/messages.json +4 -0
  78. package/extensions/ublocklite/_locales/sl/messages.json +4 -0
  79. package/extensions/ublocklite/_locales/so/messages.json +4 -0
  80. package/extensions/ublocklite/_locales/sq/messages.json +4 -0
  81. package/extensions/ublocklite/_locales/sr/messages.json +4 -0
  82. package/extensions/ublocklite/_locales/sv/messages.json +4 -0
  83. package/extensions/ublocklite/_locales/sw/messages.json +4 -0
  84. package/extensions/ublocklite/_locales/ta/messages.json +4 -0
  85. package/extensions/ublocklite/_locales/te/messages.json +4 -0
  86. package/extensions/ublocklite/_locales/th/messages.json +4 -0
  87. package/extensions/ublocklite/_locales/tr/messages.json +4 -0
  88. package/extensions/ublocklite/_locales/uk/messages.json +4 -0
  89. package/extensions/ublocklite/_locales/ur/messages.json +4 -0
  90. package/extensions/ublocklite/_locales/vi/messages.json +4 -0
  91. package/extensions/ublocklite/_locales/zh_CN/messages.json +4 -0
  92. package/extensions/ublocklite/_locales/zh_TW/messages.json +4 -0
  93. package/extensions/ublocklite/css/matched-rules.css +3 -0
  94. package/extensions/ublocklite/css/zapper-ui.css +14 -2
  95. package/extensions/ublocklite/js/background.js +18 -21
  96. package/extensions/ublocklite/js/i18n.js +1 -1
  97. package/extensions/ublocklite/js/report.js +29 -17
  98. package/extensions/ublocklite/js/ruleset-manager.js +4 -3
  99. package/extensions/ublocklite/js/scripting/zapper.js +5 -3
  100. package/extensions/ublocklite/manifest.json +5 -3
  101. package/extensions/ublocklite/report.html +7 -1
  102. package/extensions/ublocklite/rulesets/generic-details.json +6 -18
  103. package/extensions/ublocklite/rulesets/main/annoyances-cookies.json +15 -13
  104. package/extensions/ublocklite/rulesets/main/annoyances-others.json +1 -0
  105. package/extensions/ublocklite/rulesets/main/annoyances-overlays.json +9 -12
  106. package/extensions/ublocklite/rulesets/main/badware.json +28 -3
  107. package/extensions/ublocklite/rulesets/main/block-lan.json +1 -0
  108. package/extensions/ublocklite/rulesets/main/chn-0.json +8 -6
  109. package/extensions/ublocklite/rulesets/main/cze-0.json +1 -2
  110. package/extensions/ublocklite/rulesets/main/default.json +80 -82
  111. package/extensions/ublocklite/rulesets/main/fra-0.json +14 -13
  112. package/extensions/ublocklite/rulesets/main/idn-0.json +9 -41
  113. package/extensions/ublocklite/rulesets/main/ind-0.json +14 -15
  114. package/extensions/ublocklite/rulesets/main/irn-0.json +5 -3
  115. package/extensions/ublocklite/rulesets/main/jpn-1.json +16 -6
  116. package/extensions/ublocklite/rulesets/main/kor-1.json +2 -1
  117. package/extensions/ublocklite/rulesets/main/lva-0.json +3 -2
  118. package/extensions/ublocklite/rulesets/main/nld-0.json +1 -1
  119. package/extensions/ublocklite/rulesets/main/nor-0.json +12 -0
  120. package/extensions/ublocklite/rulesets/main/openphish-domains.json +2527 -2127
  121. package/extensions/ublocklite/rulesets/main/rus-0.json +11 -5
  122. package/extensions/ublocklite/rulesets/main/rus-1.json +3 -2
  123. package/extensions/ublocklite/rulesets/main/spa-1.json +5 -3
  124. package/extensions/ublocklite/rulesets/main/stevenblack-hosts.json +2347 -4306
  125. package/extensions/ublocklite/rulesets/main/swe-1.json +23 -25
  126. package/extensions/ublocklite/rulesets/main/tur-0.json +5 -4
  127. package/extensions/ublocklite/rulesets/main/ukr-0.json +11 -3
  128. package/extensions/ublocklite/rulesets/main/urlhaus-full.json +466 -151
  129. package/extensions/ublocklite/rulesets/main/vie-1.json +43 -61
  130. package/extensions/ublocklite/rulesets/modify-headers/chn-0.json +23 -0
  131. package/extensions/ublocklite/rulesets/modify-headers/default.json +3 -3
  132. package/extensions/ublocklite/rulesets/modify-headers/vie-1.json +1 -1
  133. package/extensions/ublocklite/rulesets/redirect/default.json +13 -9
  134. package/extensions/ublocklite/rulesets/redirect/swe-1.json +1 -3
  135. package/extensions/ublocklite/rulesets/redirect/vie-1.json +5 -21
  136. package/extensions/ublocklite/rulesets/regex/badware.json +1 -0
  137. package/extensions/ublocklite/rulesets/regex/default.json +4 -8
  138. package/extensions/ublocklite/rulesets/removeparam/adguard-spyware-url.json +5 -4
  139. package/extensions/ublocklite/rulesets/removeparam/default.json +1 -1
  140. package/extensions/ublocklite/rulesets/ruleset-details.json +188 -188
  141. package/extensions/ublocklite/rulesets/scripting/declarative/annoyances-cookies.js +3 -3
  142. package/extensions/ublocklite/rulesets/scripting/declarative/annoyances-others.js +3 -3
  143. package/extensions/ublocklite/rulesets/scripting/declarative/annoyances-overlays.js +3 -3
  144. package/extensions/ublocklite/rulesets/scripting/declarative/default.js +3 -3
  145. package/extensions/ublocklite/rulesets/scripting/declarative/fin-0.js +3 -3
  146. package/extensions/ublocklite/rulesets/scripting/declarative/irn-0.js +3 -3
  147. package/extensions/ublocklite/rulesets/scripting/declarative/jpn-1.js +3 -3
  148. package/extensions/ublocklite/rulesets/scripting/declarative/rus-0.js +3 -3
  149. package/extensions/ublocklite/rulesets/scripting/declarative/rus-1.js +3 -3
  150. package/extensions/ublocklite/rulesets/scripting/declarative/spa-1.js +3 -3
  151. package/extensions/ublocklite/rulesets/scripting/declarative/swe-1.js +3 -3
  152. package/extensions/ublocklite/rulesets/scripting/declarative/tur-0.js +3 -3
  153. package/extensions/ublocklite/rulesets/scripting/declarative/ukr-0.js +3 -3
  154. package/extensions/ublocklite/rulesets/scripting/declarative/vie-1.js +1 -1
  155. package/extensions/ublocklite/rulesets/scripting/generic/annoyances-cookies.js +3 -3
  156. package/extensions/ublocklite/rulesets/scripting/generic/annoyances-overlays.js +3 -3
  157. package/extensions/ublocklite/rulesets/scripting/generic/chn-0.js +2 -2
  158. package/extensions/ublocklite/rulesets/scripting/generic/default.js +3 -3
  159. package/extensions/ublocklite/rulesets/scripting/generic/deu-0.js +1 -1
  160. package/extensions/ublocklite/rulesets/scripting/generic/fra-0.js +1 -1
  161. package/extensions/ublocklite/rulesets/scripting/generic/idn-0.js +2 -2
  162. package/extensions/ublocklite/rulesets/scripting/generic/kor-1.js +2 -2
  163. package/extensions/ublocklite/rulesets/scripting/generic/lva-0.js +2 -2
  164. package/extensions/ublocklite/rulesets/scripting/generic/nld-0.js +1 -1
  165. package/extensions/ublocklite/rulesets/scripting/generic/rus-0.js +2 -2
  166. package/extensions/ublocklite/rulesets/scripting/generic/spa-1.js +2 -2
  167. package/extensions/ublocklite/rulesets/scripting/generic/swe-1.js +2 -2
  168. package/extensions/ublocklite/rulesets/scripting/generic/ukr-0.js +1 -1
  169. package/extensions/ublocklite/rulesets/scripting/generichigh/default.css +3 -2
  170. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-cookies.js +3 -3
  171. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-overlays.js +3 -3
  172. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-social.js +3 -3
  173. package/extensions/ublocklite/rulesets/scripting/procedural/cze-0.js +1 -1
  174. package/extensions/ublocklite/rulesets/scripting/procedural/default.js +3 -3
  175. package/extensions/ublocklite/rulesets/scripting/procedural/deu-0.js +4 -4
  176. package/extensions/ublocklite/rulesets/scripting/procedural/fra-0.js +3 -3
  177. package/extensions/ublocklite/rulesets/scripting/procedural/idn-0.js +3 -3
  178. package/extensions/ublocklite/rulesets/scripting/procedural/irn-0.js +3 -3
  179. package/extensions/ublocklite/rulesets/scripting/procedural/kor-1.js +1 -1
  180. package/extensions/ublocklite/rulesets/scripting/procedural/lva-0.js +3 -3
  181. package/extensions/ublocklite/rulesets/scripting/procedural/pol-0.js +3 -3
  182. package/extensions/ublocklite/rulesets/scripting/procedural/rus-0.js +3 -3
  183. package/extensions/ublocklite/rulesets/scripting/procedural/swe-1.js +1 -1
  184. package/extensions/ublocklite/rulesets/scripting/procedural/ukr-0.js +3 -3
  185. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.abort-current-script.js +2 -2
  186. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.addEventListener-defuser.js +1 -1
  187. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.remove-class.js +1 -1
  188. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-attr.js +1 -1
  189. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-constant.js +1 -1
  190. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-cookie.js +2 -2
  191. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-local-storage-item.js +2 -2
  192. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-click-element.js +2 -2
  193. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-replace-node-text.js +1 -1
  194. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-constant.js +1 -1
  195. package/extensions/ublocklite/rulesets/scripting/scriptlet/{badware.abort-on-property-read.js → annoyances-cookies.trusted-set-cookie-reload.js} +120 -62
  196. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-cookie.js +2 -2
  197. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-local-storage-item.js +2 -2
  198. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.addEventListener-defuser.js +1 -1
  199. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.remove-attr.js +1 -1
  200. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.remove-class.js +1 -1
  201. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.remove-cookie.js +1 -1
  202. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.set-constant.js +1 -1
  203. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.set-session-storage-item.js +2 -2
  204. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-current-script.js +2 -2
  205. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-on-property-read.js +2 -2
  206. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-on-property-write.js +2 -2
  207. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-on-stack-trace.js +2 -2
  208. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.addEventListener-defuser.js +3 -3
  209. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.noeval-if.js +2 -2
  210. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-fetch.js +2 -2
  211. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-setInterval.js +2 -2
  212. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-setTimeout.js +2 -2
  213. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-xhr.js +2 -2
  214. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-attr.js +3 -3
  215. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-class.js +1 -1
  216. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-node-text.js +3 -3
  217. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-constant.js +3 -3
  218. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-local-storage-item.js +2 -2
  219. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-click-element.js +2 -2
  220. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-replace-argument.js +1 -5
  221. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-replace-node-text.js +3 -3
  222. package/extensions/ublocklite/rulesets/scripting/scriptlet/badware.trusted-replace-argument.js +1 -5
  223. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.addEventListener-defuser.js +1 -1
  224. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.remove-attr.js +1 -1
  225. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.remove-class.js +1 -1
  226. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.remove-node-text.js +1 -1
  227. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.set-constant.js +1 -1
  228. package/extensions/ublocklite/rulesets/scripting/scriptlet/cze-0.addEventListener-defuser.js +1 -1
  229. package/extensions/ublocklite/rulesets/scripting/scriptlet/cze-0.remove-attr.js +1 -1
  230. package/extensions/ublocklite/rulesets/scripting/scriptlet/cze-0.set-constant.js +2 -2
  231. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.abort-current-script.js +3 -3
  232. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.abort-on-property-read.js +3 -3
  233. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.abort-on-property-write.js +2 -2
  234. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.abort-on-stack-trace.js +3 -3
  235. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.addEventListener-defuser.js +4 -4
  236. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.adjust-setInterval.js +3 -3
  237. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.adjust-setTimeout.js +2 -2
  238. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.disable-newtab-links.js +1 -1
  239. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.href-sanitizer.js +1 -1
  240. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.json-prune-fetch-response.js +4 -8
  241. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.json-prune-xhr-response.js +3 -7
  242. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.json-prune.js +2 -2
  243. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.noeval-if.js +3 -3
  244. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.prevent-fetch.js +2 -2
  245. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.prevent-refresh.js +1 -1
  246. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.prevent-setInterval.js +2 -2
  247. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.prevent-setTimeout.js +2 -2
  248. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.prevent-window-open.js +3 -3
  249. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.prevent-xhr.js +2 -2
  250. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.remove-attr.js +3 -3
  251. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.remove-class.js +3 -3
  252. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.remove-cookie.js +2 -2
  253. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.remove-node-text.js +3 -3
  254. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.set-attr.js +1 -1
  255. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.set-constant.js +4 -4
  256. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.set-cookie.js +1 -1
  257. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.set-local-storage-item.js +2 -2
  258. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-click-element.js +2 -2
  259. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-override-element-method.js +1 -1
  260. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-prevent-dom-bypass.js +10 -1
  261. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-replace-argument.js +1 -5
  262. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-replace-node-text.js +4 -4
  263. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-replace-xhr-response.js +1 -1
  264. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-set-attr.js +1 -1
  265. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-set-constant.js +1 -1
  266. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-set-cookie.js +2 -2
  267. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-suppress-native-method.js +2 -2
  268. package/extensions/ublocklite/rulesets/scripting/scriptlet/default.xml-prune.js +2 -2
  269. package/extensions/ublocklite/rulesets/scripting/scriptlet/est-0.addEventListener-defuser.js +1 -1
  270. package/extensions/ublocklite/rulesets/scripting/scriptlet/fin-0.json-prune-fetch-response.js +1 -5
  271. package/extensions/ublocklite/rulesets/scripting/scriptlet/fin-0.remove-class.js +1 -1
  272. package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.addEventListener-defuser.js +1 -1
  273. package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.remove-attr.js +1 -1
  274. package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.remove-class.js +1 -1
  275. package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.set-constant.js +1 -1
  276. package/extensions/ublocklite/rulesets/scripting/scriptlet/grc-0.remove-attr.js +1 -1
  277. package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.addEventListener-defuser.js +1 -1
  278. package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.remove-attr.js +1 -1
  279. package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.remove-class.js +1 -1
  280. package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.remove-node-text.js +1 -1
  281. package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.set-constant.js +1 -1
  282. package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.abort-on-property-read.js +2 -2
  283. package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.addEventListener-defuser.js +1 -1
  284. package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.noeval-if.js +1 -1
  285. package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.prevent-setTimeout.js +2 -2
  286. package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.prevent-window-open.js +1 -1
  287. package/extensions/ublocklite/rulesets/scripting/scriptlet/{ubol-tests.jsonl-prune-xhr-response.js → idn-0.prevent-xhr.js} +216 -235
  288. package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.remove-class.js +1 -1
  289. package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.remove-node-text.js +3 -3
  290. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.abort-current-script.js +2 -2
  291. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.abort-on-property-read.js +1 -1
  292. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.addEventListener-defuser.js +1 -1
  293. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.href-sanitizer.js +3 -3
  294. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.remove-attr.js +1 -1
  295. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.remove-node-text.js +1 -1
  296. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.set-attr.js +1 -1
  297. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.set-constant.js +1 -1
  298. package/extensions/ublocklite/rulesets/scripting/scriptlet/isr-0.addEventListener-defuser.js +1 -1
  299. package/extensions/ublocklite/rulesets/scripting/scriptlet/isr-0.set-constant.js +1 -1
  300. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.addEventListener-defuser.js +1 -1
  301. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.noeval-if.js +2 -2
  302. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.prevent-fetch.js +2 -2
  303. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.remove-attr.js +1 -1
  304. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.remove-class.js +1 -1
  305. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.remove-node-text.js +1 -1
  306. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.set-attr.js +1 -1
  307. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.set-constant.js +1 -1
  308. package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.abort-on-property-read.js +2 -2
  309. package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.addEventListener-defuser.js +1 -1
  310. package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.remove-attr.js +1 -1
  311. package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.remove-class.js +1 -1
  312. package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.set-attr.js +1 -1
  313. package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.set-constant.js +1 -1
  314. package/extensions/ublocklite/rulesets/scripting/scriptlet/ltu-0.set-constant.js +1 -1
  315. package/extensions/ublocklite/rulesets/scripting/scriptlet/{swe-1.abort-on-property-write.js → lva-0.adjust-setInterval.js} +27 -42
  316. package/extensions/ublocklite/rulesets/scripting/scriptlet/lva-0.set-constant.js +541 -0
  317. package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.addEventListener-defuser.js +1 -1
  318. package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.json-prune-fetch-response.js +1 -5
  319. package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.remove-class.js +1 -1
  320. package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.remove-node-text.js +1 -1
  321. package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.set-constant.js +1 -1
  322. package/extensions/ublocklite/rulesets/scripting/scriptlet/nor-0.addEventListener-defuser.js +1 -1
  323. package/extensions/ublocklite/rulesets/scripting/scriptlet/nor-0.remove-attr.js +1 -1
  324. package/extensions/ublocklite/rulesets/scripting/scriptlet/nor-0.set-constant.js +1 -1
  325. package/extensions/ublocklite/rulesets/scripting/scriptlet/pol-0.addEventListener-defuser.js +1 -1
  326. package/extensions/ublocklite/rulesets/scripting/scriptlet/pol-0.prevent-window-open.js +2 -2
  327. package/extensions/ublocklite/rulesets/scripting/scriptlet/pol-0.remove-attr.js +1 -1
  328. package/extensions/ublocklite/rulesets/scripting/scriptlet/pol-0.set-constant.js +1 -1
  329. package/extensions/ublocklite/rulesets/scripting/scriptlet/rou-1.remove-class.js +1 -1
  330. package/extensions/ublocklite/rulesets/scripting/scriptlet/rou-1.remove-node-text.js +1 -1
  331. package/extensions/ublocklite/rulesets/scripting/scriptlet/rou-1.set-constant.js +1 -1
  332. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.abort-on-property-read.js +2 -2
  333. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.abort-on-stack-trace.js +3 -3
  334. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.addEventListener-defuser.js +3 -3
  335. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.adjust-setInterval.js +1 -1
  336. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.href-sanitizer.js +3 -3
  337. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.json-prune-fetch-response.js +1 -5
  338. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.json-prune.js +1 -1
  339. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-fetch.js +3 -3
  340. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.remove-attr.js +1 -1
  341. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.remove-class.js +1 -1
  342. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.remove-node-text.js +4 -4
  343. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-attr.js +1 -1
  344. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-constant.js +1 -1
  345. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.addEventListener-defuser.js +1 -1
  346. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.remove-attr.js +1 -1
  347. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.set-constant.js +1 -1
  348. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.abort-on-property-read.js +2 -2
  349. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.addEventListener-defuser.js +4 -4
  350. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.href-sanitizer.js +1 -1
  351. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.remove-attr.js +1 -1
  352. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.remove-class.js +1 -1
  353. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.remove-node-text.js +1 -1
  354. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-constant.js +1 -1
  355. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-local-storage-item.js +1 -1
  356. package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.addEventListener-defuser.js +1 -1
  357. package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.href-sanitizer.js +1 -1
  358. package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.json-prune-fetch-response.js +1 -5
  359. package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.remove-node-text.js +1 -1
  360. package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.set-constant.js +1 -1
  361. package/extensions/ublocklite/rulesets/scripting/scriptlet/tha-0.remove-attr.js +1 -1
  362. package/extensions/ublocklite/rulesets/scripting/scriptlet/tha-0.set-attr.js +1 -1
  363. package/extensions/ublocklite/rulesets/scripting/scriptlet/tha-0.set-constant.js +1 -1
  364. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.abort-on-property-read.js +2 -2
  365. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.addEventListener-defuser.js +3 -3
  366. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.adjust-setInterval.js +1 -1
  367. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.remove-attr.js +1 -1
  368. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.remove-node-text.js +1 -1
  369. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-attr.js +1 -1
  370. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-constant.js +3 -3
  371. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-cookie.js +2 -2
  372. package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-fetch-response.js +896 -0
  373. package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-xhr-response.js +807 -0
  374. package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.set-constant.js +1 -1
  375. package/extensions/ublocklite/rulesets/scripting/scriptlet/{annoyances-cookies.remove-node-text.js → ubol-tests.trusted-prevent-dom-bypass.js} +115 -138
  376. package/extensions/ublocklite/rulesets/scripting/scriptlet/ukr-0.remove-node-text.js +3 -3
  377. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.abort-current-script.js +2 -2
  378. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.abort-on-property-read.js +2 -2
  379. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.addEventListener-defuser.js +1 -1
  380. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.m3u-prune.js +1 -1
  381. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.remove-attr.js +1 -1
  382. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.set-constant.js +1 -1
  383. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-cookies.js +3 -3
  384. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-others.js +3 -3
  385. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-overlays.js +3 -3
  386. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-social.js +3 -3
  387. package/extensions/ublocklite/rulesets/scripting/specific/badware.js +3 -3
  388. package/extensions/ublocklite/rulesets/scripting/specific/chn-0.js +3 -3
  389. package/extensions/ublocklite/rulesets/scripting/specific/cze-0.js +3 -3
  390. package/extensions/ublocklite/rulesets/scripting/specific/default.js +3 -3
  391. package/extensions/ublocklite/rulesets/scripting/specific/deu-0.js +3 -3
  392. package/extensions/ublocklite/rulesets/scripting/specific/fin-0.js +3 -3
  393. package/extensions/ublocklite/rulesets/scripting/specific/fra-0.js +3 -3
  394. package/extensions/ublocklite/rulesets/scripting/specific/hun-0.js +1 -1
  395. package/extensions/ublocklite/rulesets/scripting/specific/idn-0.js +3 -3
  396. package/extensions/ublocklite/rulesets/scripting/specific/ind-0.js +3 -3
  397. package/extensions/ublocklite/rulesets/scripting/specific/irn-0.js +3 -3
  398. package/extensions/ublocklite/rulesets/scripting/specific/isr-0.js +1 -1
  399. package/extensions/ublocklite/rulesets/scripting/specific/ita-0.js +3 -3
  400. package/extensions/ublocklite/rulesets/scripting/specific/jpn-1.js +3 -3
  401. package/extensions/ublocklite/rulesets/scripting/specific/kor-1.js +3 -3
  402. package/extensions/ublocklite/rulesets/scripting/specific/lva-0.js +3 -3
  403. package/extensions/ublocklite/rulesets/scripting/specific/nld-0.js +3 -3
  404. package/extensions/ublocklite/rulesets/scripting/specific/nor-0.js +3 -3
  405. package/extensions/ublocklite/rulesets/scripting/specific/pol-0.js +3 -3
  406. package/extensions/ublocklite/rulesets/scripting/specific/rus-0.js +3 -3
  407. package/extensions/ublocklite/rulesets/scripting/specific/spa-0.js +1 -1
  408. package/extensions/ublocklite/rulesets/scripting/specific/spa-1.js +3 -3
  409. package/extensions/ublocklite/rulesets/scripting/specific/swe-1.js +3 -3
  410. package/extensions/ublocklite/rulesets/scripting/specific/tur-0.js +3 -3
  411. package/extensions/ublocklite/rulesets/scripting/specific/ukr-0.js +3 -3
  412. package/extensions/ublocklite/rulesets/scripting/specific/vie-1.js +3 -3
  413. package/extensions/ublocklite/rulesets/scriptlet-details.json +334 -360
  414. package/extensions/ublocklite/rulesets/strictblock/badware.json +274 -265
  415. package/extensions/ublocklite/rulesets/strictblock/chn-0.json +58 -0
  416. package/extensions/ublocklite/rulesets/strictblock/default.json +10 -9
  417. package/extensions/ublocklite/rulesets/strictblock/fra-0.json +27 -4
  418. package/extensions/ublocklite/rulesets/strictblock/idn-0.json +1 -31
  419. package/extensions/ublocklite/rulesets/strictblock/irn-0.json +3 -0
  420. package/extensions/ublocklite/rulesets/strictblock/jpn-1.json +154 -149
  421. package/extensions/ublocklite/rulesets/strictblock/spa-1.json +1 -0
  422. package/extensions/ublocklite/rulesets/strictblock/stevenblack-hosts.json +2347 -4306
  423. package/extensions/ublocklite/rulesets/strictblock/swe-1.json +1 -2
  424. package/extensions/ublocklite/rulesets/strictblock/ukr-0.json +1 -1
  425. package/extensions/ublocklite/rulesets/strictblock/urlhaus-full.json +466 -151
  426. package/extensions/ublocklite/rulesets/urlskip/default.json +7 -0
  427. package/extensions/ublocklite/ublock.zip +0 -0
  428. package/extensions/ublocklite/web_accessible_resources/fingerprint3.js +45 -0
  429. package/extensions/ublocklite/zapper-ui.html +1 -1
  430. package/package.json +8 -8
  431. package/src/config.ts +9 -1
  432. package/src/routes/chromium/tests/pdf.spec.ts +27 -0
  433. package/src/sdk-utils.ts +4 -0
  434. package/src/server.ts +31 -47
  435. package/src/utils.ts +30 -6
  436. package/static/docs/swagger.json +10 -10
  437. package/static/docs/swagger.min.json +9 -9
  438. package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-prune-fetch-response.js +0 -613
  439. package/extensions/ublocklite/rulesets/strictblock/openphish-domains.json +0 -37227
@@ -503,8 +503,8 @@ function safeSelf() {
503
503
  /******************************************************************************/
504
504
 
505
505
  const scriptletGlobals = {}; // eslint-disable-line
506
- const argsList = [["request=adb"],["doubleclick"],["googlesyndication"],["/adsbygoogle|doubleclick/"],["/enthusiastgaming|googleoptimize|googletagmanager/"],["/doubleclick|googlesyndication/"],["/^(?!.*(einthusan\\.io|yahoo|rtnotif|ajax|quantcast|bugsnag))/"],["/adnxs.com|onetag-sys.com|teads.tv|google-analytics.com|rubiconproject.com|casalemedia.com/"],["ad_"],["method:HEAD"],["ads"],["svonm"],["/\\/VisitorAPI\\.js|\\/AppMeasurement\\.js/"],["inklinkor.com"],["damoh"],["homad-global-configs"],["/youboranqs01|spotx|springserve/"],["adsbygoogle"],["popunder"],["/pagead2\\.googlesyndication\\.com|inklinkor\\.com/"],["czilladx"],["?testing"],["/ad"],["wp-json/rsm-adutil","true"],["outbrain"],["prebid"],["wpadmngr"],["/ads"],["pub.network"],["googlesyndication","length:10"],["pagead2.googlesyndication.com"],["url:googlesyndication"],["/^/"],["/analytics|livestats/"],["mahimeta"],["ad"],["notifier"],["/ad-"],["/coinzillatag|czilladx/"],["/thaudray\\.com|putchumt\\.com/"],["php"],["/googlesyndication|doubleclick/"],["bmcdn6"],["adx"],["cls_report?"],["adswizz.com"],["googletagmanager"],["/googlesyndication|ads/"],["time-events"],["/googlesyndication|nitropay/"],["method:GET url:!/idlix|jwpcdn/"],["/doubleclick|googlesyndication/","length:10"],["/googima.js"],["/adskeeper|bidgear|googlesyndication|mgid/"],["fwmrm.net"],["/\\/ad\\/g\\/1/"],["adsbygoogle","length:10"],["adinplay.com"],["springserve.com"],["/redirector\\.googlevideo\\.com\\/videoplayback[\\s\\S]*?dclk_video_ads/"],["ad.plus"],["pubfuture","length:10"],["method:POST url:/logImpressions"],["method:POST"],["utreon.com/pl/api/event method:POST"],["log-sdk.ksapisrv.com/rest/wd/common/log/collect method:POST"],["/VisitorAPI|AppMeasurement/"],["analytics/bulk-pixel"],["cmp.inmobi.com/geoip"],["method:POST url:pfanalytics.bentasker.co.uk"],["discord.com/api/v9/science"],["/(trace|beacon)\\.qq\\.com/"],["excess.duolingo.com/batch"],["/eventLog.ajax"],["t.wayfair.com/b.php?"],["ceros.com/a?data"],["mobileanalytics"],["cloudflare.com/cdn-cgi/trace"],["/recommendations."],["/api/analytics"],["api"],["lr-ingest.io"],["/gtm.js"],["ip-api"],["/froloa.js"],["1.1.1.1/cdn-cgi/trace"],["live.streamtheworld.com/partnerIds"],["/vast.php?"],["/click\\.com|preroll|native_render\\.js|acscdn/","length:10001"],["162.252.214.4","true"],["c.adsco.re"],["adsco.re:2087"],["/fd/ls/lsp.aspx"],["stella"]];
507
- const hostnamesMap = new Map([["handelsblatt.com",0],["moviepilot.de",1],["asiaon.*",[1,29]],["asiaontop.com",[1,29]],["journaldemontreal.com",1],["minhaconexao.com.br",1],["videolyrics.in",1],["sportshub.to",[1,2]],["topsporter.net",1],["yomucomics.com",1],["meteoetradar.com",1],["gala.fr",1],["geo.fr",1],["voici.fr",1],["sankaku.app",2],["zigforums.com",2],["ge-map-overlays.appspot.com",2],["freegogpcgames.com",2],["postazap.com",2],["laweducationinfo.com",2],["savemoneyinfo.com",2],["worldaffairinfo.com",2],["godstoryinfo.com",2],["successstoryinfo.com",2],["cxissuegk.com",2],["learnmarketinfo.com",2],["bhugolinfo.com",2],["armypowerinfo.com",2],["rsadnetworkinfo.com",2],["rsinsuranceinfo.com",2],["rsfinanceinfo.com",2],["rsgamer.app",2],["rssoftwareinfo.com",2],["rshostinginfo.com",2],["rseducationinfo.com",2],["phonereviewinfo.com",2],["makeincomeinfo.com",2],["gknutshell.com",2],["vichitrainfo.com",2],["workproductivityinfo.com",2],["dopomininfo.com",2],["hostingdetailer.com",2],["fitnesssguide.com",2],["tradingfact4u.com",2],["cryptofactss.com",2],["softwaredetail.com",2],["artoffocas.com",2],["insurancesfact.com",2],["travellingdetail.com",2],["rangerboard.com",2],["informaxonline.com",[2,22]],["nsw2u.*",2],["cambb.xxx",2],["nudecams.xxx",2],["cinemakottaga.*",2],["routech.ro",2],["rontechtips.com",2],["edealinfo.com",2],["homeairquality.org",2],["techtrim.tech",2],["pigeonburger.xyz",2],["askpaccosi.com",[2,35]],["fusedgt.com",2],["apkowner.org",2],["appsmodz.com",2],["bingotingo.com",2],["superpsx.com",2],["stringreveals.com",2],["fox.com",2],["obutecodanet.ig.com.br",2],["firmwarex.net",2],["softwaretotal.net",2],["freecodezilla.net",2],["apkmaven.*",2],["iconmonstr.com",2],["rbxscripts.net",2],["rimworldbase.com",2],["ewrc-results.com",2],["adslink.pw",2],["comentariodetexto.com",2],["wordpredia.com",2],["hilites.today",2],["sportnews.to",2],["gsmhamza.com",2],["38.242.194.12",2],["bi-girl.net",2],["blurayufr.*",2],["idealfollow.in",2],["medeberiyaa.com",2],["samuraiscan.org",2],["shinobijawi.id",2],["snbc13.com",2],["teluguflix.*",2],["webmatrices.com",2],["adelsfun.com",2],["advantien.com",2],["bailbondsfinder.com",2],["bg-gledai.*",2],["bigpiecreative.com",2],["childrenslibrarylady.com",2],["classifarms.com",2],["comtasq.ca",2],["crone.es",2],["ctrmarketingsolutions.com",2],["dropnudes.com",2],["ftuapps.dev",2],["genzsport.com",2],["gledaitv.*",2],["grsprotection.com",2],["gruporafa.com.br",2],["inmatefindcalifornia.com",2],["inmatesearchidaho.com",2],["itsonsitetv.com",2],["mfmfinancials.com",2],["myproplugins.com",2],["nurulislam.org",2],["onehack.us",2],["ovester.com",2],["paste.bin.sx",2],["privatenudes.com",2],["renoconcrete.ca",2],["richieashbeck.com",2],["short1ink.com",2],["stpm.co.uk",2],["wegotcookies.co",2],["fordownloader.com",2],["intro-hd.net",2],["animehub.ac",2],["kissanime.*",2],["yottachess.com",2],["infidrive.net",2],["animefreak.to",2],["9animes.ru",2],["couponscorpion.com",2],["hollaforums.com",2],["powforums.com",2],["supforums.com",2],["play.nova.bg",[2,52]],["fxmag.pl",2],["toolkitspro.com",2],["meteopool.org",2],["ssstik.io",2],["animefever.cc",2],["digipuzzle.net",2],["crn.com",2],["animedao.com.ru",2],["hunterscomics.com",[2,61]],["animepahe.*",2],["cupra.forum",2],["dogsexporn.net",2],["pinsystem.co.uk",3],["thesimsresource.com",4],["gnomio.com",5],["techacode.com",5],["trangchu.news",5],["cybermania.ws",5],["techhelpbd.com",5],["souq-design.com",5],["einthusan.*",6],["youmath.it",7],["frkn64modding.com",8],["animeheaven.*",9],["gearingcommander.com",10],["airevue.net",10],["khatrimaza.*",10],["novelmultiverse.com",10],["taming.io",10],["cekip.site",10],["snlookup.com",10],["globfone.com",10],["chimicamo.org",10],["webforefront.com",10],["apkmagic.com.ar",10],["reaperscans.id",10],["moviegan.*",10],["freecoursesonline.me",10],["writedroid.*",10],["filmisub.cc",10],["play-games.com",10],["gameszap.com",10],["differenceprimitive85p.shop",10],["vox.de",11],["vip.de",11],["rtl.de",11],["cinema.de",11],["nationalgeographic.fr",12],["oko.sh",[13,19]],["golem.de",14],["wetter.de",15],["rakuten.tv",16],["hausbau-forum.de",17],["khaddavi.net",17],["lokerwfh.net",17],["emoji.gg",17],["texture-packs.com",17],["manyakan.com",17],["persianhive.com",17],["boainformacao.com.br",17],["gcertificationcourse.com",17],["portaliz.site",17],["tech-story.net",17],["visalist.io",17],["litecoin.host",17],["blackhatworld.com",17],["ainonline.com",17],["dailyrevs.com",17],["uptime4.com",17],["swdw.net",17],["cmtracker.net",17],["icegame.ro",17],["cookni.net",17],["aiimgvlog.fun",18],["bestclaimtrx.xyz",18],["tvi.la",19],["iir.la",19],["tii.la",19],["ckk.ai",19],["oei.la",19],["lnbz.la",19],["oii.la",19],["tpi.li",19],["exactpay.online",20],["claim.fun",20],["faucetcrypto.net",20],["cashbux.work",20],["4khd.com",21],["citytv.com",23],["file4go.net",24],["jetpunk.com",25],["mcrypto.club",26],["coinsparty.com",26],["simplebits.io",27],["flightsim.to",28],["1cloudfile.com",30],["empire-anime.*",30],["empire-streaming.*",30],["empire-anime.com",30],["empire-streamz.fr",30],["empire-stream.*",30],["koramaup.com",30],["stardeos.com",31],["freewp.io",32],["goduke.com",33],["1apple.xyz",34],["lavanguardia.com",36],["foodsdictionary.co.il",37],["freesolana.top",38],["streamingcommunity.*",39],["farescd.com",40],["getintoway.com",41],["tuktukcinma.com",41],["bitcotasks.com",42],["freetron.top",43],["earncrypto.co.in",43],["citi.com",44],["hotfm.audio",45],["maxt.church",46],["srvy.ninja",47],["history.com",48],["osuskinner.com",49],["osuskins.net",49],["idlix.asia",50],["alliptvlinks.com",51],["readcomiconline.*",53],["u.co.uk",54],["uktvplay.co.uk",54],["uktvplay.uktv.co.uk",54],["channel4.com",55],["pomofocus.io",56],["royaledudes.io",57],["tptvencore.co.uk",58],["sbs.com.au",59],["opentunnel.net",60],["docs.google.com",62],["endbasic.dev",63],["jmmv.dev",63],["fingerprint.com",63],["utreon.com",64],["zhihu.com",65],["natgeotv.com",66],["airtel.in",67],["dailystar.co.uk",68],["mirror.co.uk",68],["bentasker.co.uk",69],["discord.com",70],["meeting.tencent.com",71],["duolingo.com",72],["study.com",73],["wayfair.com",74],["view.ceros.com",75],["viu.com",76],["myair2.resmed.com",77],["travelerdoor.com",77],["azby.fmworld.net",78],["unrealengine.com",79],["wco.tv",80],["dark-gaming.com",81],["securegames.iwin.com",82],["neilpatel.com",83],["virginmediatelevision.ie",84],["myair.resmed.com",85],["player.amperwave.net",86],["poophq.com",[87,88,89,90,91]],["veev.to",[87,88,89,90,91]],["doods.to",[87,88,89,90,91]],["bing.com",92],["nicovideo.jp",93]]);
506
+ const argsList = [["request=adb"],["doubleclick"],["googlesyndication"],["/adsbygoogle|doubleclick/"],["/enthusiastgaming|googleoptimize|googletagmanager/"],["/doubleclick|googlesyndication/"],["/^(?!.*(einthusan\\.io|yahoo|rtnotif|ajax|quantcast|bugsnag))/"],["/adnxs.com|onetag-sys.com|teads.tv|google-analytics.com|rubiconproject.com|casalemedia.com/"],["ad_"],["method:HEAD"],["ads"],["svonm"],["/\\/VisitorAPI\\.js|\\/AppMeasurement\\.js/"],["inklinkor.com"],["damoh"],["homad-global-configs"],["/youboranqs01|spotx|springserve/"],["adsbygoogle"],["popunder"],["/pagead2\\.googlesyndication\\.com|inklinkor\\.com/"],["czilladx"],["?testing"],["/ad"],["wp-json/rsm-adutil","true"],["outbrain"],["prebid"],["/ads"],["pub.network"],["googlesyndication","length:10"],["wpadmngr"],["pagead2.googlesyndication.com"],["url:googlesyndication"],["/^/"],["/analytics|livestats/"],["mahimeta"],["ad"],["notifier"],["/ad-"],["/coinzillatag|czilladx/"],["/thaudray\\.com|putchumt\\.com/"],["php"],["/googlesyndication|doubleclick/"],["bmcdn6"],["adx"],["cls_report?"],["adswizz.com"],["googletagmanager"],["/googlesyndication|ads/"],["time-events"],["/googlesyndication|nitropay/"],["method:GET url:!/idlix|jwpcdn/"],["/doubleclick|googlesyndication/","length:10"],["/googima.js"],["/adskeeper|bidgear|googlesyndication|mgid/"],["fwmrm.net"],["/\\/ad\\/g\\/1/"],["adsbygoogle","length:10"],["adinplay.com"],["springserve.com"],["/redirector\\.googlevideo\\.com\\/videoplayback[\\s\\S]*?dclk_video_ads/"],["ad.plus"],["pubfuture","length:10"],["method:POST url:/logImpressions"],["method:POST"],["utreon.com/pl/api/event method:POST"],["log-sdk.ksapisrv.com/rest/wd/common/log/collect method:POST"],["/VisitorAPI|AppMeasurement/"],["analytics/bulk-pixel"],["cmp.inmobi.com/geoip"],["method:POST url:pfanalytics.bentasker.co.uk"],["discord.com/api/v9/science"],["/(trace|beacon)\\.qq\\.com/"],["excess.duolingo.com/batch"],["/eventLog.ajax"],["t.wayfair.com/b.php?"],["ceros.com/a?data"],["mobileanalytics"],["cloudflare.com/cdn-cgi/trace"],["/recommendations."],["/api/analytics"],["api"],["lr-ingest.io"],["/gtm.js"],["ip-api"],["/froloa.js"],["1.1.1.1/cdn-cgi/trace"],["live.streamtheworld.com/partnerIds"],["/vast.php?"],["/click\\.com|preroll|native_render\\.js|acscdn/","length:10001"],["162.252.214.4","true"],["c.adsco.re"],["adsco.re:2087"],["/fd/ls/lsp.aspx"],["stella"]];
507
+ const hostnamesMap = new Map([["handelsblatt.com",0],["moviepilot.de",1],["asiaon.*",[1,28]],["asiaontop.com",[1,28]],["journaldemontreal.com",1],["minhaconexao.com.br",1],["videolyrics.in",1],["sportshub.to",[1,2]],["topsporter.net",1],["yomucomics.com",1],["meteoetradar.com",1],["gala.fr",1],["geo.fr",1],["voici.fr",1],["sankaku.app",2],["zigforums.com",2],["ge-map-overlays.appspot.com",2],["freegogpcgames.com",2],["postazap.com",2],["laweducationinfo.com",2],["savemoneyinfo.com",2],["worldaffairinfo.com",2],["godstoryinfo.com",2],["successstoryinfo.com",2],["cxissuegk.com",2],["learnmarketinfo.com",2],["bhugolinfo.com",2],["armypowerinfo.com",2],["rsadnetworkinfo.com",2],["rsinsuranceinfo.com",2],["rsfinanceinfo.com",2],["rsgamer.app",2],["rssoftwareinfo.com",2],["rshostinginfo.com",2],["rseducationinfo.com",2],["phonereviewinfo.com",2],["makeincomeinfo.com",2],["gknutshell.com",2],["vichitrainfo.com",2],["workproductivityinfo.com",2],["dopomininfo.com",2],["hostingdetailer.com",2],["fitnesssguide.com",2],["tradingfact4u.com",2],["cryptofactss.com",2],["softwaredetail.com",2],["artoffocas.com",2],["insurancesfact.com",2],["travellingdetail.com",2],["rangerboard.com",2],["informaxonline.com",[2,22]],["nsw2u.*",2],["cambb.xxx",2],["nudecams.xxx",2],["cinemakottaga.*",2],["routech.ro",2],["rontechtips.com",2],["edealinfo.com",2],["homeairquality.org",2],["techtrim.tech",2],["pigeonburger.xyz",2],["askpaccosi.com",[2,35]],["fusedgt.com",2],["apkowner.org",2],["appsmodz.com",2],["bingotingo.com",2],["superpsx.com",2],["stringreveals.com",2],["fox.com",2],["obutecodanet.ig.com.br",2],["firmwarex.net",2],["softwaretotal.net",2],["freecodezilla.net",2],["apkmaven.*",2],["iconmonstr.com",2],["rbxscripts.net",2],["rimworldbase.com",2],["ewrc-results.com",2],["adslink.pw",2],["comentariodetexto.com",2],["wordpredia.com",2],["hilites.today",2],["sportnews.to",2],["gsmhamza.com",2],["38.242.194.12",2],["bi-girl.net",2],["blurayufr.*",2],["idealfollow.in",2],["medeberiyaa.com",2],["samuraiscan.org",2],["shinobijawi.id",2],["snbc13.com",2],["teluguflix.*",2],["webmatrices.com",2],["adelsfun.com",2],["advantien.com",2],["bailbondsfinder.com",2],["bg-gledai.*",2],["bigpiecreative.com",2],["childrenslibrarylady.com",2],["classifarms.com",2],["comtasq.ca",2],["crone.es",2],["ctrmarketingsolutions.com",2],["dropnudes.com",2],["ftuapps.dev",2],["genzsport.com",2],["gledaitv.*",2],["grsprotection.com",2],["gruporafa.com.br",2],["inmatefindcalifornia.com",2],["inmatesearchidaho.com",2],["itsonsitetv.com",2],["mfmfinancials.com",2],["myproplugins.com",2],["nurulislam.org",2],["onehack.us",2],["ovester.com",2],["paste.bin.sx",2],["privatenudes.com",2],["renoconcrete.ca",2],["richieashbeck.com",2],["short1ink.com",2],["stpm.co.uk",2],["wegotcookies.co",2],["fordownloader.com",2],["intro-hd.net",2],["animehub.ac",2],["kissanime.*",2],["yottachess.com",2],["infidrive.net",2],["animefreak.to",2],["9animes.ru",2],["couponscorpion.com",2],["hollaforums.com",2],["powforums.com",2],["supforums.com",2],["play.nova.bg",[2,52]],["fxmag.pl",2],["toolkitspro.com",2],["meteopool.org",2],["ssstik.io",2],["animefever.cc",2],["digipuzzle.net",2],["crn.com",2],["animedao.com.ru",2],["hunterscomics.com",[2,61]],["animepahe.*",2],["cupra.forum",2],["dogsexporn.net",2],["pinsystem.co.uk",3],["thesimsresource.com",4],["gnomio.com",5],["techacode.com",5],["trangchu.news",5],["cybermania.ws",5],["techhelpbd.com",5],["souq-design.com",5],["einthusan.*",6],["youmath.it",7],["frkn64modding.com",8],["animeheaven.*",9],["gearingcommander.com",10],["stfly.biz",10],["airevue.net",10],["atravan.net",10],["khatrimaza.*",10],["novelmultiverse.com",10],["taming.io",10],["cekip.site",10],["snlookup.com",10],["globfone.com",10],["chimicamo.org",10],["webforefront.com",10],["apkmagic.com.ar",10],["reaperscans.id",10],["moviegan.*",10],["freecoursesonline.me",10],["writedroid.*",10],["filmisub.cc",10],["play-games.com",10],["gameszap.com",10],["differenceprimitive85p.shop",10],["vox.de",11],["vip.de",11],["rtl.de",11],["cinema.de",11],["nationalgeographic.fr",12],["oko.sh",[13,19]],["golem.de",14],["wetter.de",15],["rakuten.tv",16],["hausbau-forum.de",17],["khaddavi.net",17],["lokerwfh.net",17],["emoji.gg",17],["texture-packs.com",17],["manyakan.com",17],["persianhive.com",17],["boainformacao.com.br",17],["gcertificationcourse.com",17],["portaliz.site",17],["tech-story.net",17],["visalist.io",17],["litecoin.host",17],["blackhatworld.com",17],["ainonline.com",17],["dailyrevs.com",17],["uptime4.com",17],["swdw.net",17],["cmtracker.net",17],["icegame.ro",17],["cookni.net",17],["aiimgvlog.fun",18],["bestclaimtrx.xyz",18],["tvi.la",19],["iir.la",19],["tii.la",19],["ckk.ai",19],["oei.la",19],["lnbz.la",19],["oii.la",19],["tpi.li",19],["exactpay.online",20],["claim.fun",20],["faucetcrypto.net",20],["cashbux.work",20],["4khd.com",21],["citytv.com",23],["file4go.net",24],["jetpunk.com",25],["simplebits.io",26],["flightsim.to",27],["coinsparty.com",29],["1cloudfile.com",30],["empire-anime.*",30],["empire-streaming.*",30],["empire-anime.com",30],["empire-streamz.fr",30],["empire-stream.*",30],["koramaup.com",30],["stardeos.com",31],["freewp.io",32],["goduke.com",33],["1apple.xyz",34],["lavanguardia.com",36],["foodsdictionary.co.il",37],["freesolana.top",38],["streamingcommunity.*",39],["farescd.com",40],["getintoway.com",41],["tuktukcinma.com",41],["bitcotasks.com",42],["freetron.top",43],["earncrypto.co.in",43],["citi.com",44],["hotfm.audio",45],["maxt.church",46],["srvy.ninja",47],["history.com",48],["osuskinner.com",49],["osuskins.net",49],["idlix.asia",50],["alliptvlinks.com",51],["readcomiconline.*",53],["u.co.uk",54],["uktvplay.co.uk",54],["uktvplay.uktv.co.uk",54],["channel4.com",55],["pomofocus.io",56],["royaledudes.io",57],["tptvencore.co.uk",58],["sbs.com.au",59],["opentunnel.net",60],["docs.google.com",62],["endbasic.dev",63],["jmmv.dev",63],["fingerprint.com",63],["utreon.com",64],["zhihu.com",65],["natgeotv.com",66],["airtel.in",67],["dailystar.co.uk",68],["mirror.co.uk",68],["bentasker.co.uk",69],["discord.com",70],["meeting.tencent.com",71],["duolingo.com",72],["study.com",73],["wayfair.com",74],["view.ceros.com",75],["viu.com",76],["myair2.resmed.com",77],["travelerdoor.com",77],["azby.fmworld.net",78],["unrealengine.com",79],["wco.tv",80],["dark-gaming.com",81],["securegames.iwin.com",82],["neilpatel.com",83],["virginmediatelevision.ie",84],["myair.resmed.com",85],["player.amperwave.net",86],["poophq.com",[87,88,89,90,91]],["veev.to",[87,88,89,90,91]],["doods.to",[87,88,89,90,91]],["bing.com",92],["nicovideo.jp",93]]);
508
508
  const exceptionsMap = new Map([["dev.fingerprint.com",[63]]]);
509
509
  const hasEntities = true;
510
510
  const hasAncestors = false;
@@ -112,7 +112,7 @@ function runAt(fn, when) {
112
112
  const tokens = Array.isArray(state) ? state : [ state ];
113
113
  for ( const token of tokens ) {
114
114
  const prop = `${token}`;
115
- if ( targets.hasOwnProperty(prop) === false ) { continue; }
115
+ if ( Object.hasOwn(targets, prop) === false ) { continue; }
116
116
  return targets[prop];
117
117
  }
118
118
  return 0;
@@ -324,8 +324,8 @@ function safeSelf() {
324
324
  /******************************************************************************/
325
325
 
326
326
  const scriptletGlobals = {}; // eslint-disable-line
327
- const argsList = [["onclick"],["href|target","a[href=\"https://imgprime.com/view.php\"][target=\"_blank\"]","complete"],["href","a[href=\"https://vpn-choice.com\"]"],["href","#opfk"],["srcdoc","iframe"],["checked","input#chkIsAdd"],["onmousemove","button"],["onclick","button[name=\"imgContinue\"][onclick]"],["target","#continuetoimage > [href]"],["href|target","#continuetoimage > [href][onclick], #overlayera > #ajax_load_indicator > #page_effect > [href][onclick]"],["target"],["href","[href*=\"ccbill\"]"],["onclick","[onclick^=\"window.open\"]"],["href","#clickfakeplayer"],["onclick","","stay"],["type","input[value^=\"http\"]"],["oncontextmenu"],["data-popunder-url"],["href","a#clickfakeplayer"],["href",".fake_player > [href][target]"],["href",".link"],["target",".clickbutton"],["disabled","button"],["data-ppcnt_ads","main[onclick]"],["data-ppcnt_ads|onclick","#main"],["data-ppcnt_ads|onclick","#main[onclick*=\"mainClick\"]","stay"],["onclick",".btn-success.get-link","stay"],["disabled",".btn-primary"],["href",".MyAd > a[target=\"_blank\"]"],["data-ppcnt_ads","","stay"],["onclick","button[onclick^=\"window.open\"]"],["onclick","[onclick^=\"window.open\"]","stay"],["onclick",".btn"],["onclick","[onclick^=\"pop\"]"],["href","[href*=\"survey\"]","stay"],["href","[href^=\"https://aj2218.online/\"]","stay"],["target","#downloadvideo"],["data-item","a[href='']"],["href","a[href*=\"/ads.php\"][target=\"_blank\"]"],["onclick","[onclick*=\"window.open\"]","stay"],["target|href","a[href^=\"//\"]"],["target","#SafelinkGenerate"],["href","[href*=\"nihonjav\"]","stay"],["onclick","a[href][onclick^=\"getFullStory\"]"],["onclick",".previewhd > a"],["href|target|data-ipshover-target|data-ipshover|data-autolink|rel","a[href^=\"https://thumpertalk.com/link/click/\"][target=\"_blank\"]"],["href","#continue"],["href",".button[href^=\"javascript\"]"],["disabled","input[id=\"button1\"][class=\"btn btn-primary\"][disabled]"],["type","[src*=\"SPOT\"]","asap stay"],["class","div#player"],["href|target|data-onclick","a[id=\"dl\"][data-onclick^=\"window.open\"]","stay"],["onclick","a[onclick^=\"setTimeout\"]"],["href",".t-out-span [href*=\"utm_source\"]","stay"],["src",".t-out-span [src*=\".gif\"]","stay"],["disabled",".panel-body > .text-center > button"],["href","[onclick]","stay"],["onmousedown",".ob-dynamic-rec-link","stay"],["disabled","a#redirect-btn"],["href",".unlock-step-link"],["href","[href*=\"discord\"]"],["href",".MediaStep","stay"],["href","[href=\"/bestporn.html\"]"],["disabled","button#getlink"],["disabled","button#gotolink"],["id","#div-gpt-ad-footer"],["id","#div-gpt-ad-pagebottom"],["id","#div-gpt-ad-relatedbottom-1"],["id","#div-gpt-ad-sidebottom"],["disabled",".downloadbtn"],["href","[onclick^=\"pop\"]"],["disabled","#gotolink"],["style","[style*=\"background-image: url\"]","stay"],["href","[href*=\"click?\"]","stay"],["href",".atas > a[href*=\"/redirect\"][onclick]"],["onload","[onload^=\"window.open\"]"],["href","a[href*=\"torrentico.top/sim/go.php\"]"],["onclick","[type=\"submit\"]"],["onclick","a#downloadbtn[onclick^=\"window.open\"]","stay"],["onclick","a[onclick]"],["onclick","a[onclick*=\"window.open\"]"],["style","[style^=\"background\"]","stay"],["href","[target^=\"_\"]","stay"],["href","[target=\"_blank\"]","stay"],["href","[href*=\"jump\"]","stay"],["style","#over"],["oncontextmenu","body"],["onclick","[onclick*=\"_blank\"]","stay"],["onclick","button[onclick*=\"open\"]"],["onclick","button[id][onclick*=\".html\"]"],["data-id|data-p","[data-id],[data-p]","stay"],["href","[href^=\"https\"]","stay"],["onclick","button[onclick^=\"window.open\"]","stay"],["onclick","a[href][onclick^=\"openit\"]","stay"],["onclick|oncontextmenu|onmouseover","a[href][onclick*=\"this.href\"]","stay"],["onclick","a[onclick=\"fire_download_click_tracking();\"]","complete"],["class|style","div[id^=\"los40_gpt\"]"],["data-woman-ex","a[href][data-woman-ex]"],["data-trm-action|data-trm-category|data-trm-label",".trm_event","stay"]];
328
- const hostnamesMap = new Map([["adbull.*",0],["bs.to",0],["burningseries.*",0],["payskip.org",0],["dozarte.com",0],["nextorrent.*",0],["sportlive.*",0],["pornoborshch.com",0],["imgprime.com",1],["magnetdl.com",2],["magnetdl.org",2],["pelisplus.*",3],["pelispedia.*",[3,18,19]],["cine-calidad.*",3],["igg-games.com",4],["crazyvidup.com",4],["douploads.*",5],["vinaurl.*",6],["22pixx.xyz",[7,8,9]],["games2rule.com",10],["games4king.com",10],["sexykittenporn.com",11],["errotica-archives.com",11],["mega4up.*",12],["zeefiles.*",12],["amyscans.com",13],["cinetux.*",13],["dpstream.*",13],["allcalidad.*",13],["pelis28.*",13],["dvdgayonline.com",13],["supergoku.com",13],["jetanimes.*",13],["openloading.com",13],["anxcinema.*",13],["dvdgayporn.com",13],["latinohentai.com",13],["vumoo.cc",13],["pelishouse.*",13],["filerio.in",14],["fastconverter.net",14],["mlwbd.*",15],["xxx-image.com",16],["jacquieetmichel.net",17],["pelispedia24.*",18],["premiumstream.live",20],["newsonthegotoday.com",21],["apps2app.com",22],["appsmodz.com",22],["note1s.com",22],["paste1s.com",22],["tr.link",23],["gitizle.vip",24],["shtms.co",24],["aylink.co",25],["cpmlink.pro",[25,29]],["satoshi-win.xyz",26],["promo-visits.site",27],["bitzite.com",28],["host-buzz.com",30],["insmyst.com",30],["wp2host.com",30],["blogtechh.com",30],["lnbz.la",30],["techbixby.com",30],["blogmyst.com",30],["stagatvfiles.com",30],["tpi.li",31],["oii.io",32],["megaurl.in",33],["megafly.in",33],["donpelis.com",33],["go.linkify.ru",34],["smutty.com",35],["strcloud.*",36],["streamtape.*",36],["streamta.*",36],["strtape.*",36],["strtapeadblock.*",36],["iseekgirls.com",37],["tio.ch",38],["fzm.*",39],["fzmovies.*",39],["fztvseries.live",39],["mobiletvshows.site",39],["tvseries.in",39],["lite-link.*",40],["egao.in",41],["javtrailers.com",42],["hindustantimes.com",43],["itsfuck.com",44],["stilltube.com",44],["thumpertalk.com",45],["adz7short.space",46],["waploaded.*",47],["allwpworld.com",48],["veoplanet.com",49],["blogdatecnologia.net",50],["diariodecasamento.com",50],["eusaudavel.net",50],["modaestiloeafins.com",50],["portalmundocurioso.com",50],["receitasabores.com",50],["turismoeviagem.com",50],["bowfile.com",51],["av01.tv",52],["firstpost.com",[53,54]],["so1.asia",55],["methodspoint.com",56],["welt.de",57],["top1iq.com",58],["sub1s.com",59],["utopiascans.com",60],["mboost.me",61],["watchanime.video",62],["adzz.in",[63,64,71]],["soranews24.com",[65,66,67,68]],["datanodes.to",69],["javchill.com",70],["proappapk.com",71],["seznamzpravy.cz",[72,73]],["link.idblog.eu.org",74],["jockantv.com",75],["domaha.tv",76],["xxxrip.net",76],["sextor.org",76],["sex-torrent.net",76],["timestamp.fr",77],["yt2conv.com",78],["av01.media",79],["flixtor2.to",80],["karaoketexty.cz",[81,82]],["cimanow.online",83],["work.ink",84],["freeplayervideo.com",85],["nazarickol.com",85],["player-cdn.com",85],["playhydrax.com",85],["18kalebettv.xyz",86],["19kalebettv.xyz",86],["tokuzilla.net",87],["swiftuploads.com",88],["filecrypt.*",89],["vidplay.*",90],["vizcloud.*",90],["sportnews.to",91],["sportshub.to",91],["loader.fo",[92,93]],["forum.blu-ray.com",94],["videezy.com",95],["los40.com",96],["woman.excite.co.jp",97],["demae-can.com",98]]);
327
+ const argsList = [["onclick"],["href|target","a[href=\"https://imgprime.com/view.php\"][target=\"_blank\"]","complete"],["href","a[href=\"https://vpn-choice.com\"]"],["href","#opfk"],["srcdoc","iframe"],["checked","input#chkIsAdd"],["onmousemove","button"],["onclick","button[name=\"imgContinue\"][onclick]"],["target","#continuetoimage > [href]"],["href|target","#continuetoimage > [href][onclick], #overlayera > #ajax_load_indicator > #page_effect > [href][onclick]"],["target"],["href","[href*=\"ccbill\"]"],["onclick","[onclick^=\"window.open\"]"],["href","#clickfakeplayer"],["onclick","","stay"],["type","input[value^=\"http\"]"],["oncontextmenu"],["data-popunder-url"],["href","a#clickfakeplayer"],["href",".fake_player > [href][target]"],["href",".link"],["target",".clickbutton"],["data-ppcnt_ads","main[onclick]"],["data-ppcnt_ads|onclick","#main"],["data-ppcnt_ads|onclick","#main[onclick*=\"mainClick\"]","stay"],["onclick",".btn-success.get-link","stay"],["disabled",".btn-primary"],["href",".MyAd > a[target=\"_blank\"]"],["data-ppcnt_ads","","stay"],["onclick","button[onclick^=\"window.open\"]"],["onclick","[onclick^=\"window.open\"]","stay"],["onclick",".btn"],["onclick","[onclick^=\"pop\"]"],["href","[href*=\"survey\"]","stay"],["href","[href^=\"https://aj2218.online/\"]","stay"],["target","#downloadvideo"],["data-item","a[href='']"],["href","a[href*=\"/ads.php\"][target=\"_blank\"]"],["onclick","[onclick*=\"window.open\"]","stay"],["target|href","a[href^=\"//\"]"],["target","#SafelinkGenerate"],["href","[href*=\"nihonjav\"]","stay"],["onclick","a[href][onclick^=\"getFullStory\"]"],["onclick",".previewhd > a"],["href|target|data-ipshover-target|data-ipshover|data-autolink|rel","a[href^=\"https://thumpertalk.com/link/click/\"][target=\"_blank\"]"],["href","#continue"],["href",".button[href^=\"javascript\"]"],["disabled","input[id=\"button1\"][class=\"btn btn-primary\"][disabled]"],["type","[src*=\"SPOT\"]","asap stay"],["class","div#player"],["href|target|data-onclick","a[id=\"dl\"][data-onclick^=\"window.open\"]","stay"],["onclick","a[onclick^=\"setTimeout\"]"],["href",".t-out-span [href*=\"utm_source\"]","stay"],["src",".t-out-span [src*=\".gif\"]","stay"],["disabled","button"],["disabled",".panel-body > .text-center > button"],["href","[onclick]","stay"],["onmousedown",".ob-dynamic-rec-link","stay"],["disabled","a#redirect-btn"],["href",".unlock-step-link"],["href","[href*=\"discord\"]"],["href",".MediaStep","stay"],["href","[href=\"/bestporn.html\"]"],["disabled","button#getlink"],["disabled","button#gotolink"],["id","#div-gpt-ad-footer"],["id","#div-gpt-ad-pagebottom"],["id","#div-gpt-ad-relatedbottom-1"],["id","#div-gpt-ad-sidebottom"],["disabled",".downloadbtn"],["href","[onclick^=\"pop\"]"],["disabled","#gotolink"],["style","[style*=\"background-image: url\"]","stay"],["href","[href*=\"click?\"]","stay"],["href",".atas > a[href*=\"/redirect\"][onclick]"],["onload","[onload^=\"window.open\"]"],["href","a[href*=\"torrentico.top/sim/go.php\"]"],["onclick","[type=\"submit\"]"],["onclick","a#downloadbtn[onclick^=\"window.open\"]","stay"],["onclick","a[onclick]"],["onclick","a[onclick*=\"window.open\"]"],["style","[style^=\"background\"]","stay"],["href","[target^=\"_\"]","stay"],["href","[target=\"_blank\"]","stay"],["href","[href*=\"jump\"]","stay"],["style","#over"],["oncontextmenu","body"],["onclick","[onclick*=\"_blank\"]","stay"],["onclick","button[onclick*=\"open\"]"],["onclick","button[id][onclick*=\".html\"]"],["data-id|data-p","[data-id],[data-p]","stay"],["onclick","button[onclick^=\"window.open\"]","stay"],["onclick","a[href][onclick^=\"openit\"]","stay"],["onclick|oncontextmenu|onmouseover","a[href][onclick*=\"this.href\"]","stay"],["onclick","a[onclick=\"fire_download_click_tracking();\"]","complete"],["class|style","div[id^=\"los40_gpt\"]"],["data-woman-ex","a[href][data-woman-ex]"],["data-trm-action|data-trm-category|data-trm-label",".trm_event","stay"]];
328
+ const hostnamesMap = new Map([["adbull.*",0],["bs.to",0],["burningseries.*",0],["payskip.org",0],["dozarte.com",0],["nextorrent.*",0],["sportlive.*",0],["pornoborshch.com",0],["imgprime.com",1],["magnetdl.com",2],["magnetdl.org",2],["pelisplus.*",3],["pelispedia.*",[3,18,19]],["cine-calidad.*",3],["igg-games.com",4],["crazyvidup.com",4],["douploads.*",5],["vinaurl.*",6],["22pixx.xyz",[7,8,9]],["games2rule.com",10],["games4king.com",10],["sexykittenporn.com",11],["errotica-archives.com",11],["mega4up.*",12],["zeefiles.*",12],["amyscans.com",13],["cinetux.*",13],["dpstream.*",13],["allcalidad.*",13],["pelis28.*",13],["dvdgayonline.com",13],["supergoku.com",13],["jetanimes.*",13],["openloading.com",13],["anxcinema.*",13],["dvdgayporn.com",13],["latinohentai.com",13],["vumoo.cc",13],["pelishouse.*",13],["filerio.in",14],["fastconverter.net",14],["mlwbd.*",15],["xxx-image.com",16],["jacquieetmichel.net",17],["pelispedia24.*",18],["premiumstream.live",20],["newsonthegotoday.com",21],["tr.link",22],["gitizle.vip",23],["shtms.co",23],["aylink.co",24],["cpmlink.pro",[24,28]],["satoshi-win.xyz",25],["promo-visits.site",26],["bitzite.com",27],["host-buzz.com",29],["insmyst.com",29],["wp2host.com",29],["blogtechh.com",29],["lnbz.la",29],["techbixby.com",29],["blogmyst.com",29],["stagatvfiles.com",29],["tpi.li",30],["oii.io",31],["megaurl.in",32],["megafly.in",32],["donpelis.com",32],["go.linkify.ru",33],["smutty.com",34],["strcloud.*",35],["streamtape.*",35],["streamta.*",35],["strtape.*",35],["strtapeadblock.*",35],["iseekgirls.com",36],["tio.ch",37],["fzm.*",38],["fzmovies.*",38],["fztvseries.live",38],["mobiletvshows.site",38],["tvseries.in",38],["lite-link.*",39],["egao.in",40],["javtrailers.com",41],["hindustantimes.com",42],["itsfuck.com",43],["stilltube.com",43],["thumpertalk.com",44],["adz7short.space",45],["waploaded.*",46],["allwpworld.com",47],["veoplanet.com",48],["blogdatecnologia.net",49],["diariodecasamento.com",49],["eusaudavel.net",49],["modaestiloeafins.com",49],["portalmundocurioso.com",49],["receitasabores.com",49],["turismoeviagem.com",49],["bowfile.com",50],["av01.tv",51],["firstpost.com",[52,53]],["appsmodz.com",54],["note1s.com",54],["paste1s.com",54],["so1.asia",55],["methodspoint.com",56],["welt.de",57],["top1iq.com",58],["sub1s.com",59],["utopiascans.com",60],["mboost.me",61],["watchanime.video",62],["adzz.in",[63,64]],["soranews24.com",[65,66,67,68]],["datanodes.to",69],["javchill.com",70],["proappapk.com",71],["seznamzpravy.cz",[72,73]],["link.idblog.eu.org",74],["jockantv.com",75],["domaha.tv",76],["xxxrip.net",76],["sextor.org",76],["sex-torrent.net",76],["timestamp.fr",77],["yt2conv.com",78],["av01.media",79],["flixtor2.to",80],["karaoketexty.cz",[81,82]],["cimanow.online",83],["work.ink",84],["freeplayervideo.com",85],["nazarickol.com",85],["player-cdn.com",85],["playhydrax.com",85],["18kalebettv.xyz",86],["19kalebettv.xyz",86],["tokuzilla.net",87],["swiftuploads.com",88],["filecrypt.*",89],["vidplay.*",90],["vizcloud.*",90],["loader.fo",[91,92]],["forum.blu-ray.com",93],["videezy.com",94],["los40.com",95],["woman.excite.co.jp",96],["demae-can.com",97]]);
329
329
  const exceptionsMap = new Map([]);
330
330
  const hasEntities = true;
331
331
  const hasAncestors = false;
@@ -103,7 +103,7 @@ function runAt(fn, when) {
103
103
  const tokens = Array.isArray(state) ? state : [ state ];
104
104
  for ( const token of tokens ) {
105
105
  const prop = `${token}`;
106
- if ( targets.hasOwnProperty(prop) === false ) { continue; }
106
+ if ( Object.hasOwn(targets, prop) === false ) { continue; }
107
107
  return targets[prop];
108
108
  }
109
109
  return 0;
@@ -315,8 +315,8 @@ function safeSelf() {
315
315
  /******************************************************************************/
316
316
 
317
317
  const scriptletGlobals = {}; // eslint-disable-line
318
- const argsList = [["hidden","button"],["twig-body"],["get-link",".ybtn.get-link[target=\"_blank\"]","stay"],["get-link",".btn-success.get-link[target=\"_blank\"]","stay"],["has-sidebar-adz|DashboardPage-inner","div[class^=\"DashboardPage-inner\"]","stay"],["hasStickyAd","div.hasStickyAd[class^=\"SetPage\"]","stay"],["cnx-ad-container|cnx-ad-bid-slot"],["vjs-hidden",".vjs-control-bar","stay"],["hidden",".panel-body > .text-center > button"],["disabled","a#redirect-btn"],["td-ad-background-link"],["download-font-button2",".download-font-button"],["unclickable","","stay"],["ad-controls",".bitmovinplayer-container.ad-controls"],["froc-blur","","stay"],["rodo","body.rodo"]];
319
- const hostnamesMap = new Map([["apps2app.com",0],["appsmodz.com",0],["xda-developers.com",1],["paid4.link",2],["go.gets4link.com",3],["quizlet.com",[4,5]],["funker530.com",6],["av01.tv",7],["so1.asia",8],["top1iq.com",9],["artribune.com",10],["bestfonts.pro",11],["falatron.com",12],["sbs.com.au",13],["kwejk.pl",14],["filmweb.pl",15]]);
318
+ const argsList = [["twig-body"],["get-link",".ybtn.get-link[target=\"_blank\"]","stay"],["get-link",".btn-success.get-link[target=\"_blank\"]","stay"],["has-sidebar-adz|DashboardPage-inner","div[class^=\"DashboardPage-inner\"]","stay"],["hasStickyAd","div.hasStickyAd[class^=\"SetPage\"]","stay"],["cnx-ad-container|cnx-ad-bid-slot"],["vjs-hidden",".vjs-control-bar","stay"],["hidden","button"],["hidden",".panel-body > .text-center > button"],["disabled","a#redirect-btn"],["td-ad-background-link"],["download-font-button2",".download-font-button"],["unclickable","","stay"],["ad-controls",".bitmovinplayer-container.ad-controls"],["froc-blur","","stay"],["rodo","body.rodo"]];
319
+ const hostnamesMap = new Map([["xda-developers.com",0],["paid4.link",1],["go.gets4link.com",2],["quizlet.com",[3,4]],["funker530.com",5],["av01.tv",6],["appsmodz.com",7],["so1.asia",8],["top1iq.com",9],["artribune.com",10],["bestfonts.pro",11],["falatron.com",12],["sbs.com.au",13],["kwejk.pl",14],["filmweb.pl",15]]);
320
320
  const exceptionsMap = new Map([]);
321
321
  const hasEntities = false;
322
322
  const hasAncestors = false;
@@ -285,8 +285,8 @@ function safeSelf() {
285
285
  /******************************************************************************/
286
286
 
287
287
  const scriptletGlobals = {}; // eslint-disable-line
288
- const argsList = [["da325"],["ref_cookie"],["/^/"],["PageCount"],["__adblocker"],[],["qusnyQusny"],["/vs|to|vs_spon|tgpOut|current_click/"],["ab"],["video_view_count"],["/__adblocker|ccuid/"],["realm.cookiesAndJavascript"],["kt_qparams"],["kt_referer"],["blaize_tracking_id"],["akaclientip"],["hive_geoloc"],["MicrosoftApplicationsTelemetryDeviceId"],["MicrosoftApplicationsTelemetryFirstLaunchTime"],["/optimizelyEndUserId|s_fid|sc_tcr|s_cc/"],["_boundless_tracking_id"],["/LithiumVisitor|ValueSurveyVisitorCount|VISITOR_BEACON/"],["kt_ips"],["/^(_pc|cX_)/","when","scroll keydown"],["/^AMCVS?_/"],["disqus_unique","when","scroll keydown"],["/_shopify_(y|sa_)/","when","scroll keydown"],["/ana_client_session_id|wshh_uid/"],["/articlesRead|previousPage/"],["ahoy_visitor"],["ahoy_visit"],["/_alooma/"],["/^DEVICEFP/"],["/^_pk_/"],["_pc_private"],["_vid_t"],["/^(_tccl_|_scc_session|fpfid)/"],["didomi_token"]];
289
- const hostnamesMap = new Map([["zootube1.com",0],["subdivx.com",1],["adultasianporn.com",2],["jetpunk.com",3],["blick.ch",4],["xxxxsx.com",5],["seznam.cz",6],["sexvideos.host",7],["nexusmods.com",8],["fullxh.com",9],["galleryxh.site",9],["megaxh.com",9],["movingxh.world",9],["seexh.com",9],["unlockxh4.com",9],["valuexh.life",9],["xhaccess.com",9],["xhadult2.com",9],["xhadult3.com",9],["xhadult4.com",9],["xhadult5.com",9],["xhamster.*",9],["xhamster1.*",9],["xhamster10.*",9],["xhamster11.*",9],["xhamster12.*",9],["xhamster13.*",9],["xhamster14.*",9],["xhamster15.*",9],["xhamster16.*",9],["xhamster17.*",9],["xhamster18.*",9],["xhamster19.*",9],["xhamster20.*",9],["xhamster2.*",9],["xhamster3.*",9],["xhamster4.*",9],["xhamster42.*",9],["xhamster46.com",9],["xhamster5.*",9],["xhamster7.*",9],["xhamster8.*",9],["xhamsterporno.mx",9],["xhbig.com",9],["xhbranch5.com",9],["xhchannel.com",9],["xhdate.world",9],["xhday.com",9],["xhday1.com",9],["xhlease.world",9],["xhmoon5.com",9],["xhofficial.com",9],["xhopen.com",9],["xhplanet1.com",9],["xhplanet2.com",9],["xhreal2.com",9],["xhreal3.com",9],["xhspot.com",9],["xhtotal.com",9],["xhtree.com",9],["xhvictory.com",9],["xhwebsite.com",9],["xhwebsite2.com",9],["xhwebsite5.com",9],["xhwide1.com",9],["xhwide2.com",9],["xhwide5.com",9],["laurelberninteriors.com",10],["beaumontenterprise.com",11],["chron.com",11],["ctinsider.com",11],["ctpost.com",11],["expressnews.com",11],["houstonchronicle.com",11],["lmtonline.com",11],["middletownpress.com",11],["mrt.com",11],["newstimes.com",11],["nhregister.com",11],["registercitizen.com",11],["sfchronicle.com",11],["stamfordadvocate.com",11],["thehour.com",11],["timesunion.com",11],["heavyfetish.com",[12,13,22]],["columbian.com",14],["nypost.com",14],["pagesix.com",14],["factable.com",[15,16]],["bing.com",17],["msn.com",17],["web.skype.com",[17,18]],["1und1.de",19],["boundless.com",20],["community.fortinet.com",21],["camhub.cc",22],["kissjav.*",22],["severeporn.com",22],["shemale6.com",22],["watchporn.to",22],["bizjournals.com",[23,24]],["businessinsider.de",23],["computerbild.de",23],["disqus.com",25],["ozlosleep.com",26],["worldstar.com",27],["androidpolice.com",28],["makeuseof.com",28],["movieweb.com",28],["xda-developers.com",28],["dev.to",[29,30]],["vpnmentor.com",31],["www.hoyolab.com",32],["www.hoyoverse.com",32],["liquipedia.net",33],["thehindu.com",34],["farmersjournal.ie",35],["souq-design.com",36],["tv5mondeplus.com",37]]);
288
+ const argsList = [["da325"],["ref_cookie"],["/^/"],["PageCount"],["__adblocker"],[],["qusnyQusny"],["/vs|to|vs_spon|tgpOut|current_click/"],["ab"],["video_view_count"],["/__adblocker|ccuid/"],["realm.cookiesAndJavascript"],["kt_qparams"],["kt_referer"],["blaize_tracking_id"],["akaclientip"],["hive_geoloc"],["MicrosoftApplicationsTelemetryDeviceId"],["MicrosoftApplicationsTelemetryFirstLaunchTime"],["/optimizelyEndUserId|s_fid|sc_tcr|s_cc/"],["_boundless_tracking_id"],["/LithiumVisitor|ValueSurveyVisitorCount|VISITOR_BEACON/"],["kt_ips"],["/^(_pc|cX_)/","when","scroll keydown"],["/^AMCVS?_/"],["disqus_unique","when","scroll keydown"],["/_shopify_(y|sa_)/","when","scroll keydown"],["/ana_client_session_id|wshh_uid/"],["/articlesRead|previousPage/"],["ahoy_visitor"],["ahoy_visit"],["/_alooma/"],["/_vf|mantisid|pbjs_/"],["/^DEVICEFP/"],["/^_pk_/"],["_pc_private"],["_vid_t"],["/^(_tccl_|_scc_session|fpfid)/"],["didomi_token"]];
289
+ const hostnamesMap = new Map([["zootube1.com",0],["subdivx.com",1],["adultasianporn.com",2],["jetpunk.com",3],["blick.ch",4],["xxxxsx.com",5],["seznam.cz",6],["sexvideos.host",7],["nexusmods.com",8],["fullxh.com",9],["galleryxh.site",9],["megaxh.com",9],["movingxh.world",9],["seexh.com",9],["unlockxh4.com",9],["valuexh.life",9],["xhaccess.com",9],["xhadult2.com",9],["xhadult3.com",9],["xhadult4.com",9],["xhadult5.com",9],["xhamster.*",9],["xhamster1.*",9],["xhamster10.*",9],["xhamster11.*",9],["xhamster12.*",9],["xhamster13.*",9],["xhamster14.*",9],["xhamster15.*",9],["xhamster16.*",9],["xhamster17.*",9],["xhamster18.*",9],["xhamster19.*",9],["xhamster20.*",9],["xhamster2.*",9],["xhamster3.*",9],["xhamster4.*",9],["xhamster42.*",9],["xhamster46.com",9],["xhamster5.*",9],["xhamster7.*",9],["xhamster8.*",9],["xhamsterporno.mx",9],["xhbig.com",9],["xhbranch5.com",9],["xhchannel.com",9],["xhdate.world",9],["xhday.com",9],["xhday1.com",9],["xhlease.world",9],["xhmoon5.com",9],["xhofficial.com",9],["xhopen.com",9],["xhplanet1.com",9],["xhplanet2.com",9],["xhreal2.com",9],["xhreal3.com",9],["xhspot.com",9],["xhtotal.com",9],["xhtree.com",9],["xhvictory.com",9],["xhwebsite.com",9],["xhwebsite2.com",9],["xhwebsite5.com",9],["xhwide1.com",9],["xhwide2.com",9],["xhwide5.com",9],["laurelberninteriors.com",10],["beaumontenterprise.com",11],["chron.com",11],["ctinsider.com",11],["ctpost.com",11],["expressnews.com",11],["houstonchronicle.com",11],["lmtonline.com",11],["middletownpress.com",11],["mrt.com",11],["newstimes.com",11],["nhregister.com",11],["registercitizen.com",11],["sfchronicle.com",11],["stamfordadvocate.com",11],["thehour.com",11],["timesunion.com",11],["heavyfetish.com",[12,13,22]],["columbian.com",14],["nypost.com",14],["pagesix.com",14],["factable.com",[15,16]],["bing.com",17],["msn.com",17],["web.skype.com",[17,18]],["1und1.de",19],["boundless.com",20],["community.fortinet.com",21],["camhub.cc",22],["kissjav.*",22],["severeporn.com",22],["shemale6.com",22],["watchporn.to",22],["bizjournals.com",[23,24]],["businessinsider.de",23],["computerbild.de",23],["disqus.com",25],["ozlosleep.com",26],["worldstar.com",27],["androidpolice.com",28],["makeuseof.com",28],["movieweb.com",28],["xda-developers.com",28],["dev.to",[29,30]],["vpnmentor.com",31],["mirror.co.uk",32],["www.hoyolab.com",33],["www.hoyoverse.com",33],["liquipedia.net",34],["thehindu.com",35],["farmersjournal.ie",36],["souq-design.com",37],["tv5mondeplus.com",38]]);
290
290
  const exceptionsMap = new Map([]);
291
291
  const hasEntities = true;
292
292
  const hasAncestors = false;