prebid.js 10.2.0 → 10.4.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 (1650) hide show
  1. package/.github/dependabot.yml +8 -0
  2. package/.github/workflows/scripts/codepath-notification +1 -0
  3. package/creative/renderers/display/renderer.js +3 -4
  4. package/dist/chunks/1plusXRtdProvider.js +1 -1
  5. package/dist/chunks/33acrossAnalyticsAdapter.js +1 -1
  6. package/dist/chunks/33acrossBidAdapter.js +1 -1
  7. package/dist/chunks/33acrossBidAdapter.metadata.js +1 -1
  8. package/dist/chunks/33acrossIdSystem.js +1 -1
  9. package/dist/chunks/33acrossIdSystem.metadata.js +1 -1
  10. package/dist/chunks/acuityadsBidAdapter.metadata.js +1 -1
  11. package/dist/chunks/adagioAnalyticsAdapter.js +1 -1
  12. package/dist/chunks/adagioBidAdapter.js +1 -1
  13. package/dist/chunks/adagioBidAdapter.metadata.js +1 -1
  14. package/dist/chunks/adagioRtdProvider.metadata.js +1 -1
  15. package/dist/chunks/adagioUtils.js +1 -1
  16. package/dist/chunks/addefendBidAdapter.js +1 -1
  17. package/dist/chunks/addefendBidAdapter.metadata.js +1 -1
  18. package/dist/chunks/adfBidAdapter.metadata.js +1 -1
  19. package/dist/chunks/adfusionBidAdapter.metadata.js +1 -1
  20. package/dist/chunks/adgenerationBidAdapter.js +1 -1
  21. package/dist/chunks/adheseBidAdapter.metadata.js +1 -1
  22. package/dist/chunks/adkernelAdnBidAdapter.metadata.js +1 -1
  23. package/dist/chunks/adkernelBidAdapter.metadata.js +1 -1
  24. package/dist/chunks/adlooxRtdProvider.js +1 -1
  25. package/dist/chunks/admaticBidAdapter.metadata.js +1 -1
  26. package/dist/chunks/admixerBidAdapter.js +1 -1
  27. package/dist/chunks/admixerBidAdapter.metadata.js +1 -1
  28. package/dist/chunks/admixerIdSystem.metadata.js +1 -1
  29. package/dist/chunks/adnowBidAdapter.metadata.js +1 -1
  30. package/dist/chunks/adnuntiusBidAdapter.metadata.js +1 -1
  31. package/dist/chunks/adnuntiusRtdProvider.metadata.js +1 -1
  32. package/dist/chunks/adotBidAdapter.metadata.js +1 -1
  33. package/dist/chunks/adponeBidAdapter.metadata.js +1 -1
  34. package/dist/chunks/adqueryBidAdapter.js +1 -1
  35. package/dist/chunks/adqueryBidAdapter.metadata.js +1 -1
  36. package/dist/chunks/adqueryIdSystem.metadata.js +1 -1
  37. package/dist/chunks/adrelevantisBidAdapter.js +1 -1
  38. package/dist/chunks/adrinoBidAdapter.metadata.js +1 -1
  39. package/dist/chunks/ads_interactiveBidAdapter.metadata.js +1 -1
  40. package/dist/chunks/adstirBidAdapter.js +1 -1
  41. package/dist/chunks/adtargetBidAdapter.metadata.js +1 -1
  42. package/dist/chunks/adtelligentBidAdapter.metadata.js +1 -1
  43. package/dist/chunks/adtelligentIdSystem.metadata.js +1 -1
  44. package/dist/chunks/adtrgtmeBidAdapter.js +1 -1
  45. package/dist/chunks/aduptechBidAdapter.metadata.js +1 -1
  46. package/dist/chunks/advertisingBidAdapter.js +1 -1
  47. package/dist/chunks/adxcgAnalyticsAdapter.js +1 -1
  48. package/dist/chunks/adxcgBidAdapter.js +1 -1
  49. package/dist/chunks/adyoulikeBidAdapter.js +1 -1
  50. package/dist/chunks/adyoulikeBidAdapter.metadata.js +1 -1
  51. package/dist/chunks/agmaAnalyticsAdapter.js +1 -1
  52. package/dist/chunks/aidemBidAdapter.metadata.js +1 -1
  53. package/dist/chunks/airgridRtdProvider.metadata.js +1 -1
  54. package/dist/chunks/ajaBidAdapter.js +1 -1
  55. package/dist/chunks/alkimiBidAdapter.metadata.js +1 -1
  56. package/dist/chunks/ampliffyBidAdapter.metadata.js +1 -1
  57. package/dist/chunks/amxBidAdapter.js +1 -1
  58. package/dist/chunks/amxBidAdapter.metadata.js +1 -1
  59. package/dist/chunks/amxIdSystem.js +1 -1
  60. package/dist/chunks/amxIdSystem.metadata.js +1 -1
  61. package/dist/chunks/aniviewBidAdapter.js +1 -1
  62. package/dist/chunks/aniviewBidAdapter.metadata.js +1 -1
  63. package/dist/chunks/anonymisedRtdProvider.metadata.js +1 -1
  64. package/dist/chunks/appierAnalyticsAdapter.js +1 -1
  65. package/dist/chunks/appierBidAdapter.metadata.js +1 -1
  66. package/dist/chunks/appnexusBidAdapter.js +1 -1
  67. package/dist/chunks/appnexusBidAdapter.metadata.js +1 -1
  68. package/dist/chunks/appnexusUtils.js +1 -1
  69. package/dist/chunks/appushBidAdapter.metadata.js +1 -1
  70. package/dist/chunks/apstreamBidAdapter.metadata.js +1 -1
  71. package/dist/chunks/asoBidAdapter.js +1 -1
  72. package/dist/chunks/audiencerunBidAdapter.metadata.js +1 -1
  73. package/dist/chunks/axisBidAdapter.metadata.js +1 -1
  74. package/dist/chunks/axonixBidAdapter.js +1 -1
  75. package/dist/chunks/azerionedgeRtdProvider.metadata.js +1 -1
  76. package/dist/chunks/beopBidAdapter.js +1 -1
  77. package/dist/chunks/beopBidAdapter.metadata.js +1 -1
  78. package/dist/chunks/betweenBidAdapter.metadata.js +1 -1
  79. package/dist/chunks/bidglassBidAdapter.js +1 -1
  80. package/dist/chunks/bidmaticBidAdapter.metadata.js +1 -1
  81. package/dist/chunks/bidtheatreBidAdapter.metadata.js +1 -1
  82. package/dist/chunks/big-richmediaBidAdapter.js +1 -1
  83. package/dist/chunks/bitmediaBidAdapter.js +1 -1
  84. package/dist/chunks/bliinkBidAdapter.metadata.js +1 -1
  85. package/dist/chunks/blockthroughBidAdapter.js +1 -1
  86. package/dist/chunks/blockthroughBidAdapter.metadata.js +1 -1
  87. package/dist/chunks/blueBidAdapter.metadata.js +1 -1
  88. package/dist/chunks/bmsBidAdapter.metadata.js +1 -1
  89. package/dist/chunks/bmtmBidAdapter.js +1 -1
  90. package/dist/chunks/boldwinBidAdapter.metadata.js +1 -1
  91. package/dist/chunks/bridBidAdapter.js +1 -1
  92. package/dist/chunks/bridBidAdapter.metadata.js +1 -1
  93. package/dist/chunks/bridgewellBidAdapter.js +1 -1
  94. package/dist/chunks/browsiBidAdapter.metadata.js +1 -1
  95. package/dist/chunks/bucksenseBidAdapter.metadata.js +1 -1
  96. package/dist/chunks/carodaBidAdapter.js +1 -1
  97. package/dist/chunks/carodaBidAdapter.metadata.js +1 -1
  98. package/dist/chunks/categoryTranslation.metadata.js +1 -1
  99. package/dist/chunks/ccxBidAdapter.metadata.js +1 -1
  100. package/dist/chunks/ceeIdSystem.metadata.js +1 -1
  101. package/dist/chunks/chromeAiRtdProvider.metadata.js +1 -1
  102. package/dist/chunks/chtnwBidAdapter.js +1 -1
  103. package/dist/chunks/chunk-core.js +1 -1
  104. package/dist/chunks/compassBidAdapter.metadata.js +1 -1
  105. package/dist/chunks/conceptxBidAdapter.metadata.js +1 -1
  106. package/dist/chunks/concertBidAdapter.js +1 -1
  107. package/dist/chunks/connatixBidAdapter.metadata.js +1 -1
  108. package/dist/chunks/connectIdSystem.metadata.js +1 -1
  109. package/dist/chunks/connectadBidAdapter.js +1 -1
  110. package/dist/chunks/connectadBidAdapter.metadata.js +1 -1
  111. package/dist/chunks/consumableBidAdapter.js +1 -1
  112. package/dist/chunks/contentexchangeBidAdapter.metadata.js +1 -1
  113. package/dist/chunks/contxtfulBidAdapter.js +1 -1
  114. package/dist/chunks/conversantBidAdapter.js +1 -1
  115. package/dist/chunks/conversantBidAdapter.metadata.js +1 -1
  116. package/dist/chunks/copper6sspBidAdapter.metadata.js +1 -1
  117. package/dist/chunks/cpmstarBidAdapter.metadata.js +1 -1
  118. package/dist/chunks/craftBidAdapter.js +1 -1
  119. package/dist/chunks/creative-renderer-display.js +1 -1
  120. package/dist/chunks/criteoBidAdapter.js +1 -1
  121. package/dist/chunks/criteoBidAdapter.metadata.js +1 -1
  122. package/dist/chunks/criteoIdSystem.metadata.js +1 -1
  123. package/dist/chunks/cryptoUtils.js +1 -0
  124. package/dist/chunks/cwireBidAdapter.js +1 -1
  125. package/dist/chunks/cwireBidAdapter.metadata.js +1 -1
  126. package/dist/chunks/czechAdIdSystem.metadata.js +1 -1
  127. package/dist/chunks/dailymotionBidAdapter.js +1 -1
  128. package/dist/chunks/dailymotionBidAdapter.metadata.js +1 -1
  129. package/dist/chunks/debugging-standalone.js +1 -1
  130. package/dist/chunks/debugging.metadata.js +1 -1
  131. package/dist/chunks/deepintentBidAdapter.metadata.js +1 -1
  132. package/dist/chunks/deltaprojectsBidAdapter.metadata.js +1 -1
  133. package/dist/chunks/dependencies.json +13 -0
  134. package/dist/chunks/dianomiBidAdapter.metadata.js +1 -1
  135. package/dist/chunks/digitalMatterBidAdapter.metadata.js +1 -1
  136. package/dist/chunks/distroscaleBidAdapter.metadata.js +1 -1
  137. package/dist/chunks/docereeAdManagerBidAdapter.metadata.js +1 -1
  138. package/dist/chunks/docereeBidAdapter.metadata.js +1 -1
  139. package/dist/chunks/dspxBidAdapter.js +1 -1
  140. package/dist/chunks/dspxBidAdapter.metadata.js +1 -1
  141. package/dist/chunks/dxkultureBidAdapter.js +1 -1
  142. package/dist/chunks/e_volutionBidAdapter.metadata.js +1 -1
  143. package/dist/chunks/edge226BidAdapter.metadata.js +1 -1
  144. package/dist/chunks/eplanningBidAdapter.js +1 -1
  145. package/dist/chunks/equativBidAdapter.js +1 -1
  146. package/dist/chunks/equativBidAdapter.metadata.js +1 -1
  147. package/dist/chunks/eskimiBidAdapter.js +1 -1
  148. package/dist/chunks/eskimiBidAdapter.metadata.js +1 -1
  149. package/dist/chunks/etargetBidAdapter.metadata.js +1 -1
  150. package/dist/chunks/euidIdSystem.js +1 -1
  151. package/dist/chunks/euidIdSystem.metadata.js +1 -1
  152. package/dist/chunks/exadsBidAdapter.js +1 -1
  153. package/dist/chunks/exadsBidAdapter.metadata.js +1 -1
  154. package/dist/chunks/excoBidAdapter.js +1 -1
  155. package/dist/chunks/feedadBidAdapter.js +1 -1
  156. package/dist/chunks/feedadBidAdapter.metadata.js +1 -1
  157. package/dist/chunks/finativeBidAdapter.js +1 -1
  158. package/dist/chunks/fwsspBidAdapter.metadata.js +1 -1
  159. package/dist/chunks/gamoshiBidAdapter.metadata.js +1 -1
  160. package/dist/chunks/getintentBidAdapter.js +1 -1
  161. package/dist/chunks/glomexBidAdapter.metadata.js +1 -1
  162. package/dist/chunks/gmosspBidAdapter.js +1 -1
  163. package/dist/chunks/goldbachBidAdapter.metadata.js +1 -1
  164. package/dist/chunks/greenbidsAnalyticsAdapter.js +1 -1
  165. package/dist/chunks/greenbidsBidAdapter.js +1 -1
  166. package/dist/chunks/greenbidsBidAdapter.metadata.js +1 -1
  167. package/dist/chunks/greenbidsRtdProvider.js +1 -1
  168. package/dist/chunks/gridBidAdapter.js +1 -1
  169. package/dist/chunks/gridBidAdapter.metadata.js +1 -1
  170. package/dist/chunks/gumgumBidAdapter.js +1 -1
  171. package/dist/chunks/gumgumBidAdapter.metadata.js +1 -1
  172. package/dist/chunks/h12mediaBidAdapter.js +1 -1
  173. package/dist/chunks/hadronIdSystem.metadata.js +1 -1
  174. package/dist/chunks/hadronRtdProvider.metadata.js +1 -1
  175. package/dist/chunks/holidBidAdapter.metadata.js +1 -1
  176. package/dist/chunks/hybridBidAdapter.metadata.js +1 -1
  177. package/dist/chunks/hypelabBidAdapter.js +1 -1
  178. package/dist/chunks/iasRtdProvider.js +1 -1
  179. package/dist/chunks/id5AnalyticsAdapter.js +1 -1
  180. package/dist/chunks/id5IdSystem.js +1 -1
  181. package/dist/chunks/id5IdSystem.metadata.js +1 -1
  182. package/dist/chunks/identityLinkIdSystem.metadata.js +1 -1
  183. package/dist/chunks/illuminBidAdapter.metadata.js +1 -1
  184. package/dist/chunks/impactifyBidAdapter.metadata.js +1 -1
  185. package/dist/chunks/improvedigitalBidAdapter.js +1 -1
  186. package/dist/chunks/improvedigitalBidAdapter.metadata.js +1 -1
  187. package/dist/chunks/inmobiBidAdapter.js +1 -1
  188. package/dist/chunks/inmobiBidAdapter.metadata.js +1 -1
  189. package/dist/chunks/innityBidAdapter.metadata.js +1 -1
  190. package/dist/chunks/insticatorBidAdapter.js +1 -1
  191. package/dist/chunks/insticatorBidAdapter.metadata.js +1 -1
  192. package/dist/chunks/intentIqAnalyticsAdapter.js +1 -1
  193. package/dist/chunks/intentIqIdSystem.metadata.js +1 -1
  194. package/dist/chunks/invibesBidAdapter.metadata.js +1 -1
  195. package/dist/chunks/ipromBidAdapter.metadata.js +1 -1
  196. package/dist/chunks/ixBidAdapter.js +1 -1
  197. package/dist/chunks/ixBidAdapter.metadata.js +1 -1
  198. package/dist/chunks/jixieBidAdapter.js +1 -1
  199. package/dist/chunks/justIdSystem.metadata.js +1 -1
  200. package/dist/chunks/justpremiumBidAdapter.js +1 -1
  201. package/dist/chunks/justpremiumBidAdapter.metadata.js +1 -1
  202. package/dist/chunks/jwplayerBidAdapter.metadata.js +1 -1
  203. package/dist/chunks/jwplayerRtdProvider.js +1 -1
  204. package/dist/chunks/jwplayerVideoProvider.js +1 -1
  205. package/dist/chunks/kargoBidAdapter.js +1 -1
  206. package/dist/chunks/kargoBidAdapter.metadata.js +1 -1
  207. package/dist/chunks/kimberliteBidAdapter.js +1 -1
  208. package/dist/chunks/kubientBidAdapter.js +1 -1
  209. package/dist/chunks/kubientBidAdapter.metadata.js +1 -1
  210. package/dist/chunks/kueezRtbBidAdapter.metadata.js +1 -1
  211. package/dist/chunks/lassoBidAdapter.js +1 -1
  212. package/dist/chunks/lifestreetBidAdapter.js +1 -1
  213. package/dist/chunks/limelightDigitalBidAdapter.metadata.js +1 -1
  214. package/dist/chunks/liveIntentId.js +1 -1
  215. package/dist/chunks/liveIntentIdSystem.metadata.js +1 -1
  216. package/dist/chunks/liveIntentRtdProvider.metadata.js +1 -1
  217. package/dist/chunks/livewrappedBidAdapter.metadata.js +1 -1
  218. package/dist/chunks/logicadBidAdapter.js +1 -1
  219. package/dist/chunks/loopmeBidAdapter.metadata.js +1 -1
  220. package/dist/chunks/lotamePanoramaIdSystem.metadata.js +1 -1
  221. package/dist/chunks/luceadBidAdapter.js +1 -1
  222. package/dist/chunks/luceadBidAdapter.metadata.js +1 -1
  223. package/dist/chunks/luponmediaBidAdapter.metadata.js +1 -1
  224. package/dist/chunks/mabidderBidAdapter.js +1 -1
  225. package/dist/chunks/madsenseBidAdapter.js +1 -1
  226. package/dist/chunks/madvertiseBidAdapter.metadata.js +1 -1
  227. package/dist/chunks/magniteAnalyticsAdapter.js +1 -1
  228. package/dist/chunks/malltvAnalyticsAdapter.js +1 -1
  229. package/dist/chunks/marsmediaBidAdapter.js +1 -1
  230. package/dist/chunks/marsmediaBidAdapter.metadata.js +1 -1
  231. package/dist/chunks/mediaConsortiumBidAdapter.metadata.js +1 -1
  232. package/dist/chunks/mediaforceBidAdapter.metadata.js +1 -1
  233. package/dist/chunks/mediafuseBidAdapter.js +1 -1
  234. package/dist/chunks/mediafuseBidAdapter.metadata.js +1 -1
  235. package/dist/chunks/mediagoBidAdapter.metadata.js +1 -1
  236. package/dist/chunks/mediakeysBidAdapter.metadata.js +1 -1
  237. package/dist/chunks/medianetBidAdapter.js +1 -1
  238. package/dist/chunks/medianetBidAdapter.metadata.js +1 -1
  239. package/dist/chunks/medianetUtils.js +1 -1
  240. package/dist/chunks/mediasquareBidAdapter.js +1 -1
  241. package/dist/chunks/mediasquareBidAdapter.metadata.js +1 -1
  242. package/dist/chunks/mgidBidAdapter.js +1 -1
  243. package/dist/chunks/mgidBidAdapter.metadata.js +1 -1
  244. package/dist/chunks/mgidRtdProvider.metadata.js +1 -1
  245. package/dist/chunks/mgidXBidAdapter.metadata.js +1 -1
  246. package/dist/chunks/minutemediaBidAdapter.metadata.js +1 -1
  247. package/dist/chunks/missenaBidAdapter.js +1 -1
  248. package/dist/chunks/missenaBidAdapter.metadata.js +1 -1
  249. package/dist/chunks/mobianRtdProvider.metadata.js +1 -1
  250. package/dist/chunks/mobilefuseBidAdapter.js +1 -1
  251. package/dist/chunks/mobilefuseBidAdapter.metadata.js +1 -1
  252. package/dist/chunks/mobkoiBidAdapter.metadata.js +1 -1
  253. package/dist/chunks/mobkoiIdSystem.metadata.js +1 -1
  254. package/dist/chunks/nativeryBidAdapter.metadata.js +1 -1
  255. package/dist/chunks/nativoBidAdapter.metadata.js +1 -1
  256. package/dist/chunks/newspassidBidAdapter.metadata.js +1 -1
  257. package/dist/chunks/nextMillenniumBidAdapter.js +1 -1
  258. package/dist/chunks/nextMillenniumBidAdapter.metadata.js +1 -1
  259. package/dist/chunks/nextrollBidAdapter.metadata.js +1 -1
  260. package/dist/chunks/nexx360BidAdapter.metadata.js +1 -1
  261. package/dist/chunks/nexx360Utils.js +1 -1
  262. package/dist/chunks/nobidAnalyticsAdapter.js +1 -1
  263. package/dist/chunks/nobidBidAdapter.js +1 -1
  264. package/dist/chunks/nobidBidAdapter.metadata.js +1 -1
  265. package/dist/chunks/nodalsAiRtdProvider.js +1 -1
  266. package/dist/chunks/nodalsAiRtdProvider.metadata.js +1 -1
  267. package/dist/chunks/novatiqIdSystem.metadata.js +1 -1
  268. package/dist/chunks/oguryBidAdapter.js +1 -1
  269. package/dist/chunks/oguryBidAdapter.metadata.js +1 -1
  270. package/dist/chunks/omsBidAdapter.metadata.js +1 -1
  271. package/dist/chunks/onetagBidAdapter.js +1 -1
  272. package/dist/chunks/onetagBidAdapter.metadata.js +1 -1
  273. package/dist/chunks/ooloAnalyticsAdapter.js +1 -1
  274. package/dist/chunks/openwebBidAdapter.metadata.js +1 -1
  275. package/dist/chunks/openxBidAdapter.js +1 -1
  276. package/dist/chunks/openxBidAdapter.metadata.js +1 -1
  277. package/dist/chunks/operaadsBidAdapter.metadata.js +1 -1
  278. package/dist/chunks/optidigitalBidAdapter.js +1 -1
  279. package/dist/chunks/optidigitalBidAdapter.metadata.js +1 -1
  280. package/dist/chunks/optoutBidAdapter.metadata.js +1 -1
  281. package/dist/chunks/orbidderBidAdapter.js +1 -1
  282. package/dist/chunks/orbidderBidAdapter.metadata.js +1 -1
  283. package/dist/chunks/outbrainBidAdapter.js +1 -1
  284. package/dist/chunks/outbrainBidAdapter.metadata.js +1 -1
  285. package/dist/chunks/ozoneBidAdapter.metadata.js +1 -1
  286. package/dist/chunks/pairIdSystem.metadata.js +1 -1
  287. package/dist/chunks/performaxBidAdapter.metadata.js +1 -1
  288. package/dist/chunks/pgamsspBidAdapter.metadata.js +1 -1
  289. package/dist/chunks/pixfutureBidAdapter.js +1 -1
  290. package/dist/chunks/pixfutureBidAdapter.metadata.js +1 -1
  291. package/dist/chunks/playdigoBidAdapter.metadata.js +1 -1
  292. package/dist/chunks/prebid-core.metadata.js +1 -1
  293. package/dist/chunks/precisoBidAdapter.metadata.js +1 -1
  294. package/dist/chunks/prismaBidAdapter.metadata.js +1 -1
  295. package/dist/chunks/programmaticXBidAdapter.metadata.js +1 -1
  296. package/dist/chunks/proxistoreBidAdapter.metadata.js +1 -1
  297. package/dist/chunks/publinkIdSystem.js +1 -1
  298. package/dist/chunks/publinkIdSystem.metadata.js +1 -1
  299. package/dist/chunks/pubmaticAnalyticsAdapter.js +1 -1
  300. package/dist/chunks/pubmaticBidAdapter.js +1 -1
  301. package/dist/chunks/pubmaticBidAdapter.metadata.js +1 -1
  302. package/dist/chunks/pubmaticIdSystem.metadata.js +1 -1
  303. package/dist/chunks/pubwiseAnalyticsAdapter.js +1 -1
  304. package/dist/chunks/pubxaiAnalyticsAdapter.js +1 -1
  305. package/dist/chunks/pulsepointBidAdapter.js +1 -1
  306. package/dist/chunks/pulsepointBidAdapter.metadata.js +1 -1
  307. package/dist/chunks/pwbidBidAdapter.metadata.js +1 -1
  308. package/dist/chunks/pxyzBidAdapter.js +1 -1
  309. package/dist/chunks/qtBidAdapter.metadata.js +1 -1
  310. package/dist/chunks/quantcastBidAdapter.js +1 -1
  311. package/dist/chunks/quantcastBidAdapter.metadata.js +1 -1
  312. package/dist/chunks/quantcastIdSystem.metadata.js +1 -1
  313. package/dist/chunks/r2b2BidAdapter.metadata.js +1 -1
  314. package/dist/chunks/raynRtdProvider.metadata.js +1 -1
  315. package/dist/chunks/readpeakBidAdapter.js +1 -1
  316. package/dist/chunks/readpeakBidAdapter.metadata.js +1 -1
  317. package/dist/chunks/relaidoBidAdapter.js +1 -1
  318. package/dist/chunks/relayBidAdapter.metadata.js +1 -1
  319. package/dist/chunks/relevantdigitalBidAdapter.metadata.js +1 -1
  320. package/dist/chunks/resetdigitalBidAdapter.metadata.js +1 -1
  321. package/dist/chunks/responsiveAdsBidAdapter.metadata.js +1 -1
  322. package/dist/chunks/retailspotBidAdapter.js +1 -1
  323. package/dist/chunks/retailspotBidAdapter.metadata.js +1 -1
  324. package/dist/chunks/revcontentBidAdapter.metadata.js +1 -1
  325. package/dist/chunks/rhythmoneBidAdapter.js +1 -1
  326. package/dist/chunks/rhythmoneBidAdapter.metadata.js +1 -1
  327. package/dist/chunks/richaudienceBidAdapter.metadata.js +1 -1
  328. package/dist/chunks/riseBidAdapter.metadata.js +1 -1
  329. package/dist/chunks/riseUtils.js +1 -1
  330. package/dist/chunks/rixengineBidAdapter.metadata.js +1 -1
  331. package/dist/chunks/rtbhouseBidAdapter.metadata.js +1 -1
  332. package/dist/chunks/rubiconBidAdapter.js +1 -1
  333. package/dist/chunks/rubiconBidAdapter.metadata.js +1 -1
  334. package/dist/chunks/rumbleBidAdapter.js +1 -0
  335. package/dist/chunks/rumbleBidAdapter.metadata.js +1 -0
  336. package/dist/chunks/scatteredBidAdapter.metadata.js +1 -1
  337. package/dist/chunks/seedingAllianceBidAdapter.js +1 -1
  338. package/dist/chunks/seedingAllianceBidAdapter.metadata.js +1 -1
  339. package/dist/chunks/seedtagBidAdapter.js +1 -1
  340. package/dist/chunks/seedtagBidAdapter.metadata.js +1 -1
  341. package/dist/chunks/semantiqRtdProvider.metadata.js +1 -1
  342. package/dist/chunks/setupadBidAdapter.metadata.js +1 -1
  343. package/dist/chunks/sevioBidAdapter.js +1 -0
  344. package/dist/chunks/sevioBidAdapter.metadata.js +1 -0
  345. package/dist/chunks/sharedIdSystem.metadata.js +1 -1
  346. package/dist/chunks/sharethroughAnalyticsAdapter.js +1 -1
  347. package/dist/chunks/sharethroughBidAdapter.js +1 -1
  348. package/dist/chunks/sharethroughBidAdapter.metadata.js +1 -1
  349. package/dist/chunks/showheroes-bsBidAdapter.js +1 -1
  350. package/dist/chunks/showheroes-bsBidAdapter.metadata.js +1 -1
  351. package/dist/chunks/silvermobBidAdapter.metadata.js +1 -1
  352. package/dist/chunks/sirdataRtdProvider.metadata.js +1 -1
  353. package/dist/chunks/slimcutBidAdapter.metadata.js +1 -1
  354. package/dist/chunks/smaatoBidAdapter.js +1 -1
  355. package/dist/chunks/smaatoBidAdapter.metadata.js +1 -1
  356. package/dist/chunks/smartadserverBidAdapter.js +1 -1
  357. package/dist/chunks/smartadserverBidAdapter.metadata.js +1 -1
  358. package/dist/chunks/smartxBidAdapter.js +1 -1
  359. package/dist/chunks/smartxBidAdapter.metadata.js +1 -1
  360. package/dist/chunks/smartyadsBidAdapter.metadata.js +1 -1
  361. package/dist/chunks/smilewantedBidAdapter.js +1 -1
  362. package/dist/chunks/smilewantedBidAdapter.metadata.js +1 -1
  363. package/dist/chunks/snigelBidAdapter.js +1 -1
  364. package/dist/chunks/snigelBidAdapter.metadata.js +1 -1
  365. package/dist/chunks/sonaradsBidAdapter.js +1 -1
  366. package/dist/chunks/sonaradsBidAdapter.metadata.js +1 -1
  367. package/dist/chunks/sonobiBidAdapter.js +1 -1
  368. package/dist/chunks/sonobiBidAdapter.metadata.js +1 -1
  369. package/dist/chunks/sovrnBidAdapter.js +1 -1
  370. package/dist/chunks/sovrnBidAdapter.metadata.js +1 -1
  371. package/dist/chunks/sparteoBidAdapter.js +1 -1
  372. package/dist/chunks/sparteoBidAdapter.metadata.js +1 -1
  373. package/dist/chunks/ssmasBidAdapter.metadata.js +1 -1
  374. package/dist/chunks/sspBCBidAdapter.js +1 -1
  375. package/dist/chunks/sspBCBidAdapter.metadata.js +1 -1
  376. package/dist/chunks/stackadaptBidAdapter.metadata.js +1 -1
  377. package/dist/chunks/startioBidAdapter.metadata.js +1 -1
  378. package/dist/chunks/stroeerCoreBidAdapter.metadata.js +1 -1
  379. package/dist/chunks/stvBidAdapter.js +1 -1
  380. package/dist/chunks/stvBidAdapter.metadata.js +1 -1
  381. package/dist/chunks/sublimeBidAdapter.js +1 -1
  382. package/dist/chunks/sublimeBidAdapter.metadata.js +1 -1
  383. package/dist/chunks/taboolaBidAdapter.js +1 -1
  384. package/dist/chunks/taboolaBidAdapter.metadata.js +1 -1
  385. package/dist/chunks/taboolaIdSystem.metadata.js +1 -1
  386. package/dist/chunks/tappxBidAdapter.js +1 -1
  387. package/dist/chunks/tappxBidAdapter.metadata.js +1 -1
  388. package/dist/chunks/targetVideoBidAdapter.js +1 -1
  389. package/dist/chunks/targetVideoBidAdapter.metadata.js +1 -1
  390. package/dist/chunks/teadsBidAdapter.js +1 -1
  391. package/dist/chunks/teadsBidAdapter.metadata.js +1 -1
  392. package/dist/chunks/teadsIdSystem.metadata.js +1 -1
  393. package/dist/chunks/tealBidAdapter.metadata.js +1 -1
  394. package/dist/chunks/terceptAnalyticsAdapter.js +1 -1
  395. package/dist/chunks/themoneytizerBidAdapter.js +1 -1
  396. package/dist/chunks/themoneytizerBidAdapter.metadata.js +1 -1
  397. package/dist/chunks/tncIdSystem.metadata.js +1 -1
  398. package/dist/chunks/topicsFpdModule.metadata.js +1 -1
  399. package/dist/chunks/trionBidAdapter.js +1 -1
  400. package/dist/chunks/tripleliftBidAdapter.js +1 -1
  401. package/dist/chunks/tripleliftBidAdapter.metadata.js +1 -1
  402. package/dist/chunks/ttdBidAdapter.js +1 -1
  403. package/dist/chunks/ttdBidAdapter.metadata.js +1 -1
  404. package/dist/chunks/twistDigitalBidAdapter.metadata.js +1 -1
  405. package/dist/chunks/ucfunnelAnalyticsAdapter.js +1 -1
  406. package/dist/chunks/uid2IdSystem.js +1 -1
  407. package/dist/chunks/underdogmediaBidAdapter.js +1 -1
  408. package/dist/chunks/underdogmediaBidAdapter.metadata.js +1 -1
  409. package/dist/chunks/undertoneBidAdapter.js +1 -1
  410. package/dist/chunks/undertoneBidAdapter.metadata.js +1 -1
  411. package/dist/chunks/unifiedIdSystem.metadata.js +1 -1
  412. package/dist/chunks/unrulyBidAdapter.js +1 -1
  413. package/dist/chunks/unrulyBidAdapter.metadata.js +1 -1
  414. package/dist/chunks/userId.js +1 -1
  415. package/dist/chunks/userId.metadata.js +1 -1
  416. package/dist/chunks/validationFpdModule.metadata.js +1 -1
  417. package/dist/chunks/vidazooBidAdapter.metadata.js +1 -1
  418. package/dist/chunks/vidazooUtils.js +1 -1
  419. package/dist/chunks/videobyteBidAdapter.js +1 -1
  420. package/dist/chunks/vidoomyBidAdapter.metadata.js +1 -1
  421. package/dist/chunks/viewdeosDXBidAdapter.metadata.js +1 -1
  422. package/dist/chunks/viouslyBidAdapter.metadata.js +1 -1
  423. package/dist/chunks/visxBidAdapter.js +1 -1
  424. package/dist/chunks/visxBidAdapter.metadata.js +1 -1
  425. package/dist/chunks/vlybyBidAdapter.metadata.js +1 -1
  426. package/dist/chunks/voxBidAdapter.metadata.js +1 -1
  427. package/dist/chunks/vrtcalBidAdapter.metadata.js +1 -1
  428. package/dist/chunks/vuukleBidAdapter.js +1 -1
  429. package/dist/chunks/vuukleBidAdapter.metadata.js +1 -1
  430. package/dist/chunks/weboramaRtdProvider.js +1 -1
  431. package/dist/chunks/weboramaRtdProvider.metadata.js +1 -1
  432. package/dist/chunks/welectBidAdapter.metadata.js +1 -1
  433. package/dist/chunks/widespaceBidAdapter.js +1 -1
  434. package/dist/chunks/winrBidAdapter.js +1 -1
  435. package/dist/chunks/yahooAdsBidAdapter.js +1 -1
  436. package/dist/chunks/yahooAdsBidAdapter.metadata.js +1 -1
  437. package/dist/chunks/yandexBidAdapter.js +1 -1
  438. package/dist/chunks/yieldlabBidAdapter.metadata.js +1 -1
  439. package/dist/chunks/yieldliftBidAdapter.metadata.js +1 -1
  440. package/dist/chunks/yieldloveBidAdapter.metadata.js +1 -1
  441. package/dist/chunks/yieldmoBidAdapter.js +1 -1
  442. package/dist/chunks/yieldmoBidAdapter.metadata.js +1 -1
  443. package/dist/chunks/yieldoneAnalyticsAdapter.js +1 -1
  444. package/dist/chunks/zeotapIdPlusIdSystem.metadata.js +1 -1
  445. package/dist/chunks/zeta_globalBidAdapter.metadata.js +1 -1
  446. package/dist/chunks/zeta_global_sspBidAdapter.metadata.js +1 -1
  447. package/dist/not-for-prod/prebid.js +443 -438
  448. package/dist/src/creative/renderers/display/renderer.js +3 -4
  449. package/dist/src/creative/renderers/display/renderer.js.map +1 -1
  450. package/dist/src/libraries/adagioUtils/adagioUtils.js +1 -1
  451. package/dist/src/libraries/analyticsAdapter/AnalyticsAdapter.js.map +1 -1
  452. package/dist/src/libraries/appnexusUtils/anKeywords.js +15 -1
  453. package/dist/src/libraries/appnexusUtils/anKeywords.js.map +1 -1
  454. package/dist/src/libraries/consentManagement/cmUtils.js.map +1 -1
  455. package/dist/src/libraries/creative-renderer-display/renderer.d.ts +1 -1
  456. package/dist/src/libraries/creative-renderer-display/renderer.js +1 -1
  457. package/dist/src/libraries/creative-renderer-display/renderer.js.map +1 -1
  458. package/dist/src/libraries/cryptoUtils/wallets.js +14 -0
  459. package/dist/src/libraries/cryptoUtils/wallets.js.map +1 -0
  460. package/dist/src/libraries/dspxUtils/bidderUtils.js.map +1 -1
  461. package/dist/src/libraries/impUtils.js +36 -0
  462. package/dist/src/libraries/impUtils.js.map +1 -0
  463. package/dist/src/libraries/liveIntentId/externalIdSystem.js +1 -1
  464. package/dist/src/libraries/liveIntentId/idSystem.js +1 -1
  465. package/dist/src/libraries/liveIntentId/shared.js +20 -0
  466. package/dist/src/libraries/liveIntentId/shared.js.map +1 -1
  467. package/dist/src/libraries/medianetUtils/constants.js +1 -1
  468. package/dist/src/libraries/nexx360Utils/index.js +1 -1
  469. package/dist/src/libraries/nexx360Utils/index.js.map +1 -1
  470. package/dist/src/libraries/ortbConverter/converter.js.map +1 -1
  471. package/dist/src/libraries/riseUtils/index.js +1 -1
  472. package/dist/src/libraries/vidazooUtils/bidderUtils.js +1 -1
  473. package/dist/src/libraries/video/constants/events.js.map +1 -1
  474. package/dist/src/metadata/modules/33acrossBidAdapter.js +1 -1
  475. package/dist/src/metadata/modules/33acrossIdSystem.js +1 -1
  476. package/dist/src/metadata/modules/acuityadsBidAdapter.js +1 -1
  477. package/dist/src/metadata/modules/adagioBidAdapter.js +1 -1
  478. package/dist/src/metadata/modules/adagioRtdProvider.js +1 -1
  479. package/dist/src/metadata/modules/addefendBidAdapter.js +1 -1
  480. package/dist/src/metadata/modules/adfBidAdapter.js +1 -1
  481. package/dist/src/metadata/modules/adfusionBidAdapter.js +1 -1
  482. package/dist/src/metadata/modules/adheseBidAdapter.js +1 -1
  483. package/dist/src/metadata/modules/adkernelAdnBidAdapter.js +1 -1
  484. package/dist/src/metadata/modules/adkernelBidAdapter.js +1 -1
  485. package/dist/src/metadata/modules/admaticBidAdapter.js +1 -1
  486. package/dist/src/metadata/modules/admixerBidAdapter.js +1 -1
  487. package/dist/src/metadata/modules/admixerIdSystem.js +1 -1
  488. package/dist/src/metadata/modules/adnowBidAdapter.js +1 -1
  489. package/dist/src/metadata/modules/adnuntiusBidAdapter.js +1 -1
  490. package/dist/src/metadata/modules/adnuntiusRtdProvider.js +1 -1
  491. package/dist/src/metadata/modules/adotBidAdapter.js +1 -1
  492. package/dist/src/metadata/modules/adponeBidAdapter.js +1 -1
  493. package/dist/src/metadata/modules/adqueryBidAdapter.js +1 -1
  494. package/dist/src/metadata/modules/adqueryIdSystem.js +1 -1
  495. package/dist/src/metadata/modules/adrinoBidAdapter.js +1 -1
  496. package/dist/src/metadata/modules/ads_interactiveBidAdapter.js +1 -1
  497. package/dist/src/metadata/modules/adtargetBidAdapter.js +1 -1
  498. package/dist/src/metadata/modules/adtelligentBidAdapter.js +1 -1
  499. package/dist/src/metadata/modules/adtelligentIdSystem.js +1 -1
  500. package/dist/src/metadata/modules/aduptechBidAdapter.js +1 -1
  501. package/dist/src/metadata/modules/adyoulikeBidAdapter.js +1 -1
  502. package/dist/src/metadata/modules/aidemBidAdapter.js +1 -1
  503. package/dist/src/metadata/modules/airgridRtdProvider.js +1 -1
  504. package/dist/src/metadata/modules/alkimiBidAdapter.js +1 -1
  505. package/dist/src/metadata/modules/ampliffyBidAdapter.js +1 -1
  506. package/dist/src/metadata/modules/amxBidAdapter.js +1 -1
  507. package/dist/src/metadata/modules/amxIdSystem.js +1 -1
  508. package/dist/src/metadata/modules/aniviewBidAdapter.js +1 -1
  509. package/dist/src/metadata/modules/anonymisedRtdProvider.js +1 -1
  510. package/dist/src/metadata/modules/appierBidAdapter.js +1 -1
  511. package/dist/src/metadata/modules/appnexusBidAdapter.js +1 -1
  512. package/dist/src/metadata/modules/appushBidAdapter.js +1 -1
  513. package/dist/src/metadata/modules/apstreamBidAdapter.js +1 -1
  514. package/dist/src/metadata/modules/audiencerunBidAdapter.js +1 -1
  515. package/dist/src/metadata/modules/axisBidAdapter.js +1 -1
  516. package/dist/src/metadata/modules/azerionedgeRtdProvider.js +1 -1
  517. package/dist/src/metadata/modules/beopBidAdapter.js +1 -1
  518. package/dist/src/metadata/modules/betweenBidAdapter.js +1 -1
  519. package/dist/src/metadata/modules/bidmaticBidAdapter.js +1 -1
  520. package/dist/src/metadata/modules/bidtheatreBidAdapter.js +1 -1
  521. package/dist/src/metadata/modules/bliinkBidAdapter.js +1 -1
  522. package/dist/src/metadata/modules/blockthroughBidAdapter.js +1 -1
  523. package/dist/src/metadata/modules/blueBidAdapter.js +1 -1
  524. package/dist/src/metadata/modules/bmsBidAdapter.js +1 -1
  525. package/dist/src/metadata/modules/boldwinBidAdapter.js +1 -1
  526. package/dist/src/metadata/modules/bridBidAdapter.js +1 -1
  527. package/dist/src/metadata/modules/browsiBidAdapter.js +1 -1
  528. package/dist/src/metadata/modules/bucksenseBidAdapter.js +1 -1
  529. package/dist/src/metadata/modules/carodaBidAdapter.js +1 -1
  530. package/dist/src/metadata/modules/categoryTranslation.js +1 -1
  531. package/dist/src/metadata/modules/ccxBidAdapter.js +1 -1
  532. package/dist/src/metadata/modules/ceeIdSystem.js +1 -1
  533. package/dist/src/metadata/modules/chromeAiRtdProvider.js +1 -1
  534. package/dist/src/metadata/modules/compassBidAdapter.js +1 -1
  535. package/dist/src/metadata/modules/conceptxBidAdapter.js +1 -1
  536. package/dist/src/metadata/modules/connatixBidAdapter.js +1 -1
  537. package/dist/src/metadata/modules/connectIdSystem.js +1 -1
  538. package/dist/src/metadata/modules/connectadBidAdapter.js +1 -1
  539. package/dist/src/metadata/modules/contentexchangeBidAdapter.js +1 -1
  540. package/dist/src/metadata/modules/conversantBidAdapter.js +1 -1
  541. package/dist/src/metadata/modules/copper6sspBidAdapter.js +1 -1
  542. package/dist/src/metadata/modules/cpmstarBidAdapter.js +1 -1
  543. package/dist/src/metadata/modules/criteoBidAdapter.js +1 -1
  544. package/dist/src/metadata/modules/criteoIdSystem.js +1 -1
  545. package/dist/src/metadata/modules/cwireBidAdapter.js +1 -1
  546. package/dist/src/metadata/modules/czechAdIdSystem.js +1 -1
  547. package/dist/src/metadata/modules/dailymotionBidAdapter.js +1 -1
  548. package/dist/src/metadata/modules/debugging.js +1 -1
  549. package/dist/src/metadata/modules/deepintentBidAdapter.js +1 -1
  550. package/dist/src/metadata/modules/deltaprojectsBidAdapter.js +1 -1
  551. package/dist/src/metadata/modules/dianomiBidAdapter.js +1 -1
  552. package/dist/src/metadata/modules/digitalMatterBidAdapter.js +1 -1
  553. package/dist/src/metadata/modules/distroscaleBidAdapter.js +1 -1
  554. package/dist/src/metadata/modules/docereeAdManagerBidAdapter.js +1 -1
  555. package/dist/src/metadata/modules/docereeBidAdapter.js +1 -1
  556. package/dist/src/metadata/modules/dspxBidAdapter.js +1 -1
  557. package/dist/src/metadata/modules/e_volutionBidAdapter.js +1 -1
  558. package/dist/src/metadata/modules/edge226BidAdapter.js +1 -1
  559. package/dist/src/metadata/modules/equativBidAdapter.js +1 -1
  560. package/dist/src/metadata/modules/eskimiBidAdapter.js +1 -1
  561. package/dist/src/metadata/modules/etargetBidAdapter.js +1 -1
  562. package/dist/src/metadata/modules/euidIdSystem.js +1 -1
  563. package/dist/src/metadata/modules/exadsBidAdapter.js +1 -1
  564. package/dist/src/metadata/modules/feedadBidAdapter.js +1 -1
  565. package/dist/src/metadata/modules/fwsspBidAdapter.js +1 -1
  566. package/dist/src/metadata/modules/gamoshiBidAdapter.js +1 -1
  567. package/dist/src/metadata/modules/glomexBidAdapter.js +1 -1
  568. package/dist/src/metadata/modules/goldbachBidAdapter.js +1 -1
  569. package/dist/src/metadata/modules/greenbidsBidAdapter.js +1 -1
  570. package/dist/src/metadata/modules/gridBidAdapter.js +1 -1
  571. package/dist/src/metadata/modules/gumgumBidAdapter.js +1 -1
  572. package/dist/src/metadata/modules/hadronIdSystem.js +1 -1
  573. package/dist/src/metadata/modules/hadronRtdProvider.js +1 -1
  574. package/dist/src/metadata/modules/holidBidAdapter.js +1 -1
  575. package/dist/src/metadata/modules/hybridBidAdapter.js +1 -1
  576. package/dist/src/metadata/modules/id5IdSystem.js +1 -1
  577. package/dist/src/metadata/modules/identityLinkIdSystem.js +1 -1
  578. package/dist/src/metadata/modules/illuminBidAdapter.js +1 -1
  579. package/dist/src/metadata/modules/impactifyBidAdapter.js +1 -1
  580. package/dist/src/metadata/modules/improvedigitalBidAdapter.js +1 -1
  581. package/dist/src/metadata/modules/inmobiBidAdapter.js +1 -1
  582. package/dist/src/metadata/modules/innityBidAdapter.js +1 -1
  583. package/dist/src/metadata/modules/insticatorBidAdapter.js +1 -1
  584. package/dist/src/metadata/modules/intentIqIdSystem.js +1 -1
  585. package/dist/src/metadata/modules/invibesBidAdapter.js +1 -1
  586. package/dist/src/metadata/modules/ipromBidAdapter.js +1 -1
  587. package/dist/src/metadata/modules/ixBidAdapter.js +1 -1
  588. package/dist/src/metadata/modules/justIdSystem.js +1 -1
  589. package/dist/src/metadata/modules/justpremiumBidAdapter.js +1 -1
  590. package/dist/src/metadata/modules/jwplayerBidAdapter.js +1 -1
  591. package/dist/src/metadata/modules/kargoBidAdapter.js +1 -1
  592. package/dist/src/metadata/modules/kubientBidAdapter.js +1 -1
  593. package/dist/src/metadata/modules/kueezRtbBidAdapter.js +1 -1
  594. package/dist/src/metadata/modules/limelightDigitalBidAdapter.js +1 -1
  595. package/dist/src/metadata/modules/liveIntentIdSystem.js +1 -1
  596. package/dist/src/metadata/modules/liveIntentRtdProvider.js +1 -1
  597. package/dist/src/metadata/modules/livewrappedBidAdapter.js +1 -1
  598. package/dist/src/metadata/modules/loopmeBidAdapter.js +1 -1
  599. package/dist/src/metadata/modules/lotamePanoramaIdSystem.js +1 -1
  600. package/dist/src/metadata/modules/luceadBidAdapter.js +1 -1
  601. package/dist/src/metadata/modules/luponmediaBidAdapter.js +1 -1
  602. package/dist/src/metadata/modules/madvertiseBidAdapter.js +1 -1
  603. package/dist/src/metadata/modules/marsmediaBidAdapter.js +1 -1
  604. package/dist/src/metadata/modules/mediaConsortiumBidAdapter.js +1 -1
  605. package/dist/src/metadata/modules/mediaforceBidAdapter.js +1 -1
  606. package/dist/src/metadata/modules/mediafuseBidAdapter.js +1 -1
  607. package/dist/src/metadata/modules/mediagoBidAdapter.js +1 -1
  608. package/dist/src/metadata/modules/mediakeysBidAdapter.js +1 -1
  609. package/dist/src/metadata/modules/medianetBidAdapter.js +1 -1
  610. package/dist/src/metadata/modules/mediasquareBidAdapter.js +1 -1
  611. package/dist/src/metadata/modules/mgidBidAdapter.js +1 -1
  612. package/dist/src/metadata/modules/mgidRtdProvider.js +1 -1
  613. package/dist/src/metadata/modules/mgidXBidAdapter.js +1 -1
  614. package/dist/src/metadata/modules/minutemediaBidAdapter.js +1 -1
  615. package/dist/src/metadata/modules/missenaBidAdapter.js +1 -1
  616. package/dist/src/metadata/modules/mobianRtdProvider.js +1 -1
  617. package/dist/src/metadata/modules/mobilefuseBidAdapter.js +1 -1
  618. package/dist/src/metadata/modules/mobkoiBidAdapter.js +1 -1
  619. package/dist/src/metadata/modules/mobkoiIdSystem.js +1 -1
  620. package/dist/src/metadata/modules/nativeryBidAdapter.js +1 -1
  621. package/dist/src/metadata/modules/nativoBidAdapter.js +1 -1
  622. package/dist/src/metadata/modules/newspassidBidAdapter.js +1 -1
  623. package/dist/src/metadata/modules/nextMillenniumBidAdapter.js +1 -1
  624. package/dist/src/metadata/modules/nextrollBidAdapter.js +1 -1
  625. package/dist/src/metadata/modules/nexx360BidAdapter.js +1 -1
  626. package/dist/src/metadata/modules/nobidBidAdapter.js +1 -1
  627. package/dist/src/metadata/modules/nodalsAiRtdProvider.js +1 -1
  628. package/dist/src/metadata/modules/novatiqIdSystem.js +1 -1
  629. package/dist/src/metadata/modules/oguryBidAdapter.js +1 -1
  630. package/dist/src/metadata/modules/omsBidAdapter.js +1 -1
  631. package/dist/src/metadata/modules/onetagBidAdapter.js +1 -1
  632. package/dist/src/metadata/modules/openwebBidAdapter.js +1 -1
  633. package/dist/src/metadata/modules/openxBidAdapter.js +1 -1
  634. package/dist/src/metadata/modules/operaadsBidAdapter.js +1 -1
  635. package/dist/src/metadata/modules/optidigitalBidAdapter.js +1 -1
  636. package/dist/src/metadata/modules/optoutBidAdapter.js +1 -1
  637. package/dist/src/metadata/modules/orbidderBidAdapter.js +1 -1
  638. package/dist/src/metadata/modules/outbrainBidAdapter.js +1 -1
  639. package/dist/src/metadata/modules/ozoneBidAdapter.js +1 -1
  640. package/dist/src/metadata/modules/pairIdSystem.js +1 -1
  641. package/dist/src/metadata/modules/performaxBidAdapter.js +1 -1
  642. package/dist/src/metadata/modules/pgamsspBidAdapter.js +1 -1
  643. package/dist/src/metadata/modules/pixfutureBidAdapter.js +1 -1
  644. package/dist/src/metadata/modules/playdigoBidAdapter.js +1 -1
  645. package/dist/src/metadata/modules/prebid-core.js +1 -1
  646. package/dist/src/metadata/modules/precisoBidAdapter.js +1 -1
  647. package/dist/src/metadata/modules/prismaBidAdapter.js +1 -1
  648. package/dist/src/metadata/modules/programmaticXBidAdapter.js +1 -1
  649. package/dist/src/metadata/modules/proxistoreBidAdapter.js +1 -1
  650. package/dist/src/metadata/modules/publinkIdSystem.js +1 -1
  651. package/dist/src/metadata/modules/pubmaticBidAdapter.js +1 -1
  652. package/dist/src/metadata/modules/pubmaticIdSystem.js +1 -1
  653. package/dist/src/metadata/modules/pulsepointBidAdapter.js +1 -1
  654. package/dist/src/metadata/modules/pwbidBidAdapter.js +1 -1
  655. package/dist/src/metadata/modules/qtBidAdapter.js +1 -1
  656. package/dist/src/metadata/modules/quantcastBidAdapter.js +1 -1
  657. package/dist/src/metadata/modules/quantcastIdSystem.js +1 -1
  658. package/dist/src/metadata/modules/r2b2BidAdapter.js +1 -1
  659. package/dist/src/metadata/modules/raynRtdProvider.js +1 -1
  660. package/dist/src/metadata/modules/readpeakBidAdapter.js +1 -1
  661. package/dist/src/metadata/modules/relayBidAdapter.js +1 -1
  662. package/dist/src/metadata/modules/relevantdigitalBidAdapter.js +1 -1
  663. package/dist/src/metadata/modules/resetdigitalBidAdapter.js +1 -1
  664. package/dist/src/metadata/modules/responsiveAdsBidAdapter.js +1 -1
  665. package/dist/src/metadata/modules/retailspotBidAdapter.js +1 -1
  666. package/dist/src/metadata/modules/revcontentBidAdapter.js +1 -1
  667. package/dist/src/metadata/modules/rhythmoneBidAdapter.js +1 -1
  668. package/dist/src/metadata/modules/richaudienceBidAdapter.js +1 -1
  669. package/dist/src/metadata/modules/riseBidAdapter.js +1 -1
  670. package/dist/src/metadata/modules/rixengineBidAdapter.js +1 -1
  671. package/dist/src/metadata/modules/rtbhouseBidAdapter.js +1 -1
  672. package/dist/src/metadata/modules/rubiconBidAdapter.js +1 -1
  673. package/dist/src/metadata/modules/rumbleBidAdapter.js +2 -0
  674. package/dist/src/metadata/modules/scatteredBidAdapter.js +1 -1
  675. package/dist/src/metadata/modules/seedingAllianceBidAdapter.js +1 -1
  676. package/dist/src/metadata/modules/seedtagBidAdapter.js +1 -1
  677. package/dist/src/metadata/modules/semantiqRtdProvider.js +1 -1
  678. package/dist/src/metadata/modules/setupadBidAdapter.js +1 -1
  679. package/dist/src/metadata/modules/sevioBidAdapter.js +2 -0
  680. package/dist/src/metadata/modules/sharedIdSystem.js +1 -1
  681. package/dist/src/metadata/modules/sharethroughBidAdapter.js +1 -1
  682. package/dist/src/metadata/modules/showheroes-bsBidAdapter.js +1 -1
  683. package/dist/src/metadata/modules/silvermobBidAdapter.js +1 -1
  684. package/dist/src/metadata/modules/sirdataRtdProvider.js +1 -1
  685. package/dist/src/metadata/modules/slimcutBidAdapter.js +1 -1
  686. package/dist/src/metadata/modules/smaatoBidAdapter.js +1 -1
  687. package/dist/src/metadata/modules/smartadserverBidAdapter.js +1 -1
  688. package/dist/src/metadata/modules/smartxBidAdapter.js +1 -1
  689. package/dist/src/metadata/modules/smartyadsBidAdapter.js +1 -1
  690. package/dist/src/metadata/modules/smilewantedBidAdapter.js +1 -1
  691. package/dist/src/metadata/modules/snigelBidAdapter.js +1 -1
  692. package/dist/src/metadata/modules/sonaradsBidAdapter.js +1 -1
  693. package/dist/src/metadata/modules/sonobiBidAdapter.js +1 -1
  694. package/dist/src/metadata/modules/sovrnBidAdapter.js +1 -1
  695. package/dist/src/metadata/modules/sparteoBidAdapter.js +1 -1
  696. package/dist/src/metadata/modules/ssmasBidAdapter.js +1 -1
  697. package/dist/src/metadata/modules/sspBCBidAdapter.js +1 -1
  698. package/dist/src/metadata/modules/stackadaptBidAdapter.js +1 -1
  699. package/dist/src/metadata/modules/startioBidAdapter.js +1 -1
  700. package/dist/src/metadata/modules/stroeerCoreBidAdapter.js +1 -1
  701. package/dist/src/metadata/modules/stvBidAdapter.js +1 -1
  702. package/dist/src/metadata/modules/sublimeBidAdapter.js +1 -1
  703. package/dist/src/metadata/modules/taboolaBidAdapter.js +1 -1
  704. package/dist/src/metadata/modules/taboolaIdSystem.js +1 -1
  705. package/dist/src/metadata/modules/tappxBidAdapter.js +1 -1
  706. package/dist/src/metadata/modules/targetVideoBidAdapter.js +1 -1
  707. package/dist/src/metadata/modules/teadsBidAdapter.js +1 -1
  708. package/dist/src/metadata/modules/teadsIdSystem.js +1 -1
  709. package/dist/src/metadata/modules/tealBidAdapter.js +1 -1
  710. package/dist/src/metadata/modules/themoneytizerBidAdapter.js +1 -1
  711. package/dist/src/metadata/modules/tncIdSystem.js +1 -1
  712. package/dist/src/metadata/modules/topicsFpdModule.js +1 -1
  713. package/dist/src/metadata/modules/tripleliftBidAdapter.js +1 -1
  714. package/dist/src/metadata/modules/ttdBidAdapter.js +1 -1
  715. package/dist/src/metadata/modules/twistDigitalBidAdapter.js +1 -1
  716. package/dist/src/metadata/modules/underdogmediaBidAdapter.js +1 -1
  717. package/dist/src/metadata/modules/undertoneBidAdapter.js +1 -1
  718. package/dist/src/metadata/modules/unifiedIdSystem.js +1 -1
  719. package/dist/src/metadata/modules/unrulyBidAdapter.js +1 -1
  720. package/dist/src/metadata/modules/userId.js +1 -1
  721. package/dist/src/metadata/modules/validationFpdModule.js +1 -1
  722. package/dist/src/metadata/modules/vidazooBidAdapter.js +1 -1
  723. package/dist/src/metadata/modules/vidoomyBidAdapter.js +1 -1
  724. package/dist/src/metadata/modules/viewdeosDXBidAdapter.js +1 -1
  725. package/dist/src/metadata/modules/viouslyBidAdapter.js +1 -1
  726. package/dist/src/metadata/modules/visxBidAdapter.js +1 -1
  727. package/dist/src/metadata/modules/vlybyBidAdapter.js +1 -1
  728. package/dist/src/metadata/modules/voxBidAdapter.js +1 -1
  729. package/dist/src/metadata/modules/vrtcalBidAdapter.js +1 -1
  730. package/dist/src/metadata/modules/vuukleBidAdapter.js +1 -1
  731. package/dist/src/metadata/modules/weboramaRtdProvider.js +1 -1
  732. package/dist/src/metadata/modules/welectBidAdapter.js +1 -1
  733. package/dist/src/metadata/modules/yahooAdsBidAdapter.js +1 -1
  734. package/dist/src/metadata/modules/yieldlabBidAdapter.js +1 -1
  735. package/dist/src/metadata/modules/yieldliftBidAdapter.js +1 -1
  736. package/dist/src/metadata/modules/yieldloveBidAdapter.js +1 -1
  737. package/dist/src/metadata/modules/yieldmoBidAdapter.js +1 -1
  738. package/dist/src/metadata/modules/zeotapIdPlusIdSystem.js +1 -1
  739. package/dist/src/metadata/modules/zeta_globalBidAdapter.js +1 -1
  740. package/dist/src/metadata/modules/zeta_global_sspBidAdapter.js +1 -1
  741. package/dist/src/modules/1plusXRtdProvider.js +6 -2
  742. package/dist/src/modules/1plusXRtdProvider.js.map +1 -1
  743. package/dist/src/modules/33acrossAnalyticsAdapter.js +1 -1
  744. package/dist/src/modules/33acrossBidAdapter.js +1 -1
  745. package/dist/src/modules/33acrossIdSystem.js +1 -1
  746. package/dist/src/modules/adWMGBidAdapter.js.map +1 -1
  747. package/dist/src/modules/adagioAnalyticsAdapter.js +1 -1
  748. package/dist/src/modules/adagioBidAdapter.js +1 -1
  749. package/dist/src/modules/addefendBidAdapter.js +1 -1
  750. package/dist/src/modules/adgenerationBidAdapter.js +1 -1
  751. package/dist/src/modules/adlooxRtdProvider.js +1 -1
  752. package/dist/src/modules/admixerBidAdapter.js +5 -4
  753. package/dist/src/modules/admixerBidAdapter.js.map +1 -1
  754. package/dist/src/modules/adqueryBidAdapter.js +1 -1
  755. package/dist/src/modules/adrelevantisBidAdapter.js +1 -1
  756. package/dist/src/modules/adspiritBidAdapter.js.map +1 -1
  757. package/dist/src/modules/adstirBidAdapter.js +1 -1
  758. package/dist/src/modules/adtrgtmeBidAdapter.js +1 -1
  759. package/dist/src/modules/adtrgtmeBidAdapter.js.map +1 -1
  760. package/dist/src/modules/advertisingBidAdapter.js +2 -2
  761. package/dist/src/modules/adxcgAnalyticsAdapter.js +1 -1
  762. package/dist/src/modules/adxcgBidAdapter.js +4 -39
  763. package/dist/src/modules/adxcgBidAdapter.js.map +1 -1
  764. package/dist/src/modules/adyoulikeBidAdapter.js +1 -1
  765. package/dist/src/modules/agmaAnalyticsAdapter.js +1 -1
  766. package/dist/src/modules/ajaBidAdapter.js +1 -1
  767. package/dist/src/modules/amxBidAdapter.js +2 -2
  768. package/dist/src/modules/amxBidAdapter.js.map +1 -1
  769. package/dist/src/modules/amxIdSystem.js +1 -1
  770. package/dist/src/modules/aniviewBidAdapter.js +1 -1
  771. package/dist/src/modules/appierAnalyticsAdapter.js +1 -1
  772. package/dist/src/modules/appnexusBidAdapter.js +2 -2
  773. package/dist/src/modules/asoBidAdapter.js +1 -1
  774. package/dist/src/modules/axonixBidAdapter.js +1 -1
  775. package/dist/src/modules/beopBidAdapter.js +2 -2
  776. package/dist/src/modules/bidglassBidAdapter.js +1 -1
  777. package/dist/src/modules/bitmediaBidAdapter.js +1 -1
  778. package/dist/src/modules/blockthroughBidAdapter.js +1 -1
  779. package/dist/src/modules/bmtmBidAdapter.js +1 -1
  780. package/dist/src/modules/bridBidAdapter.js +1 -1
  781. package/dist/src/modules/bridgewellBidAdapter.js +1 -1
  782. package/dist/src/modules/carodaBidAdapter.js +1 -1
  783. package/dist/src/modules/chromeAiRtdProvider.js.map +1 -1
  784. package/dist/src/modules/chtnwBidAdapter.js +1 -1
  785. package/dist/src/modules/concertBidAdapter.js +1 -1
  786. package/dist/src/modules/connectadBidAdapter.js +1 -1
  787. package/dist/src/modules/consentManagementGpp.js.map +1 -1
  788. package/dist/src/modules/consentManagementTcf.js.map +1 -1
  789. package/dist/src/modules/consentManagementUsp.js.map +1 -1
  790. package/dist/src/modules/consumableBidAdapter.js +1 -1
  791. package/dist/src/modules/contxtfulBidAdapter.js +1 -1
  792. package/dist/src/modules/conversantBidAdapter.js +1 -1
  793. package/dist/src/modules/craftBidAdapter.js +1 -1
  794. package/dist/src/modules/criteoBidAdapter.js +2 -2
  795. package/dist/src/modules/currency.js.map +1 -1
  796. package/dist/src/modules/cwireBidAdapter.js +1 -1
  797. package/dist/src/modules/cwireBidAdapter.js.map +1 -1
  798. package/dist/src/modules/dailymotionBidAdapter.js +1 -1
  799. package/dist/src/modules/dailymotionBidAdapter.js.map +1 -1
  800. package/dist/src/modules/dchain.js.map +1 -1
  801. package/dist/src/modules/dspxBidAdapter.js +1 -1
  802. package/dist/src/modules/dspxBidAdapter.js.map +1 -1
  803. package/dist/src/modules/dxkultureBidAdapter.js +1 -1
  804. package/dist/src/modules/eightPodBidAdapter.js.map +1 -1
  805. package/dist/src/modules/eplanningBidAdapter.js +1 -1
  806. package/dist/src/modules/equativBidAdapter.js +1 -1
  807. package/dist/src/modules/eskimiBidAdapter.js +1 -1
  808. package/dist/src/modules/euidIdSystem.js +1 -1
  809. package/dist/src/modules/exadsBidAdapter.js +1 -1
  810. package/dist/src/modules/excoBidAdapter.js +3 -3
  811. package/dist/src/modules/feedadBidAdapter.js +2 -2
  812. package/dist/src/modules/finativeBidAdapter.js +1 -1
  813. package/dist/src/modules/genericAnalyticsAdapter.js.map +1 -1
  814. package/dist/src/modules/geolocationRtdProvider.js.map +1 -1
  815. package/dist/src/modules/getintentBidAdapter.js +4 -2
  816. package/dist/src/modules/getintentBidAdapter.js.map +1 -1
  817. package/dist/src/modules/gmosspBidAdapter.js +1 -1
  818. package/dist/src/modules/gmosspBidAdapter.js.map +1 -1
  819. package/dist/src/modules/gppControl_usstates.js.map +1 -1
  820. package/dist/src/modules/gptPreAuction.d.ts +3 -3
  821. package/dist/src/modules/gptPreAuction.js.map +1 -1
  822. package/dist/src/modules/greenbidsAnalyticsAdapter.js +1 -1
  823. package/dist/src/modules/greenbidsBidAdapter.js +1 -1
  824. package/dist/src/modules/greenbidsRtdProvider.js +1 -1
  825. package/dist/src/modules/gridBidAdapter.js +2 -2
  826. package/dist/src/modules/gumgumBidAdapter.js +2 -2
  827. package/dist/src/modules/h12mediaBidAdapter.js +1 -1
  828. package/dist/src/modules/hypelabBidAdapter.js +1 -1
  829. package/dist/src/modules/iasRtdProvider.js +110 -5
  830. package/dist/src/modules/iasRtdProvider.js.map +1 -1
  831. package/dist/src/modules/id5AnalyticsAdapter.js +1 -1
  832. package/dist/src/modules/id5IdSystem.js +1 -1
  833. package/dist/src/modules/improvedigitalBidAdapter.js +1 -1
  834. package/dist/src/modules/inmobiBidAdapter.js +1 -1
  835. package/dist/src/modules/insticatorBidAdapter.js +1 -1
  836. package/dist/src/modules/intentIqAnalyticsAdapter.js +1 -1
  837. package/dist/src/modules/intentIqAnalyticsAdapter.js.map +1 -1
  838. package/dist/src/modules/intentIqIdSystem.js.map +1 -1
  839. package/dist/src/modules/ixBidAdapter.js +1 -1
  840. package/dist/src/modules/jixieBidAdapter.js +1 -1
  841. package/dist/src/modules/justpremiumBidAdapter.js +1 -1
  842. package/dist/src/modules/jwplayerRtdProvider.js +6 -2
  843. package/dist/src/modules/jwplayerRtdProvider.js.map +1 -1
  844. package/dist/src/modules/jwplayerVideoProvider.js +12 -9
  845. package/dist/src/modules/jwplayerVideoProvider.js.map +1 -1
  846. package/dist/src/modules/kargoBidAdapter.js +1 -1
  847. package/dist/src/modules/kimberliteBidAdapter.js +1 -1
  848. package/dist/src/modules/kubientBidAdapter.js +0 -1
  849. package/dist/src/modules/kubientBidAdapter.js.map +1 -1
  850. package/dist/src/modules/lassoBidAdapter.js +1 -1
  851. package/dist/src/modules/lifestreetBidAdapter.js +1 -1
  852. package/dist/src/modules/logicadBidAdapter.js +1 -1
  853. package/dist/src/modules/luceadBidAdapter.js +1 -1
  854. package/dist/src/modules/mabidderBidAdapter.js +1 -1
  855. package/dist/src/modules/madsenseBidAdapter.js +1 -1
  856. package/dist/src/modules/magniteAnalyticsAdapter.js +1 -1
  857. package/dist/src/modules/malltvAnalyticsAdapter.js +1 -1
  858. package/dist/src/modules/marsmediaBidAdapter.js +1 -1
  859. package/dist/src/modules/mediafuseBidAdapter.js +2 -2
  860. package/dist/src/modules/medianetAnalyticsAdapter.js.map +1 -1
  861. package/dist/src/modules/medianetBidAdapter.js +6 -2
  862. package/dist/src/modules/medianetBidAdapter.js.map +1 -1
  863. package/dist/src/modules/mediasquareBidAdapter.js +2 -2
  864. package/dist/src/modules/mgidBidAdapter.js +1 -1
  865. package/dist/src/modules/michaoBidAdapter.js.map +1 -1
  866. package/dist/src/modules/missenaBidAdapter.js +1 -1
  867. package/dist/src/modules/mobilefuseBidAdapter.js +1 -1
  868. package/dist/src/modules/multibid/index.js.map +1 -1
  869. package/dist/src/modules/nextMillenniumBidAdapter.js +1 -1
  870. package/dist/src/modules/nexverseBidAdapter.js.map +1 -1
  871. package/dist/src/modules/nobidAnalyticsAdapter.js +1 -1
  872. package/dist/src/modules/nobidBidAdapter.js +1 -1
  873. package/dist/src/modules/nodalsAiRtdProvider.js +4 -2
  874. package/dist/src/modules/nodalsAiRtdProvider.js.map +1 -1
  875. package/dist/src/modules/oguryBidAdapter.js +1 -1
  876. package/dist/src/modules/onetagBidAdapter.js +1 -1
  877. package/dist/src/modules/onetagBidAdapter.js.map +1 -1
  878. package/dist/src/modules/ooloAnalyticsAdapter.js +1 -1
  879. package/dist/src/modules/openxBidAdapter.js +7 -2
  880. package/dist/src/modules/openxBidAdapter.js.map +1 -1
  881. package/dist/src/modules/optidigitalBidAdapter.js +1 -1
  882. package/dist/src/modules/orbidderBidAdapter.js +1 -1
  883. package/dist/src/modules/outbrainBidAdapter.js +1 -1
  884. package/dist/src/modules/pixfutureBidAdapter.js +2 -2
  885. package/dist/src/modules/prebidServerBidAdapter/index.js.map +1 -1
  886. package/dist/src/modules/priceFloors.d.ts +2 -2
  887. package/dist/src/modules/priceFloors.js.map +1 -1
  888. package/dist/src/modules/publinkIdSystem.js +1 -1
  889. package/dist/src/modules/pubmaticAnalyticsAdapter.js +2 -2
  890. package/dist/src/modules/pubmaticBidAdapter.js +23 -3
  891. package/dist/src/modules/pubmaticBidAdapter.js.map +1 -1
  892. package/dist/src/modules/pubmaticRtdProvider.js.map +1 -1
  893. package/dist/src/modules/pubwiseAnalyticsAdapter.js +1 -1
  894. package/dist/src/modules/pubxaiAnalyticsAdapter.js +1 -1
  895. package/dist/src/modules/pulsepointBidAdapter.js +2 -38
  896. package/dist/src/modules/pulsepointBidAdapter.js.map +1 -1
  897. package/dist/src/modules/pxyzBidAdapter.js +1 -1
  898. package/dist/src/modules/quantcastBidAdapter.js +1 -1
  899. package/dist/src/modules/readpeakBidAdapter.js +1 -1
  900. package/dist/src/modules/readpeakBidAdapter.js.map +1 -1
  901. package/dist/src/modules/relaidoBidAdapter.js +1 -1
  902. package/dist/src/modules/retailspotBidAdapter.js +1 -1
  903. package/dist/src/modules/rhythmoneBidAdapter.js +1 -1
  904. package/dist/src/modules/rtdModule/index.js.map +1 -1
  905. package/dist/src/modules/rtdModule/spec.js.map +1 -1
  906. package/dist/src/modules/rubiconBidAdapter.js +6 -2
  907. package/dist/src/modules/rubiconBidAdapter.js.map +1 -1
  908. package/dist/src/modules/rumbleBidAdapter.js +103 -0
  909. package/dist/src/modules/rumbleBidAdapter.js.map +1 -0
  910. package/dist/src/modules/schain.js.map +1 -1
  911. package/dist/src/modules/seedingAllianceBidAdapter.js +1 -1
  912. package/dist/src/modules/seedtagBidAdapter.js +1 -1
  913. package/dist/src/modules/sevioBidAdapter.js +254 -0
  914. package/dist/src/modules/sevioBidAdapter.js.map +1 -0
  915. package/dist/src/modules/sharedIdSystem.js.map +1 -1
  916. package/dist/src/modules/sharethroughAnalyticsAdapter.js +1 -1
  917. package/dist/src/modules/sharethroughBidAdapter.js +1 -1
  918. package/dist/src/modules/showheroes-bsBidAdapter.js +1 -1
  919. package/dist/src/modules/smaatoBidAdapter.js +1 -1
  920. package/dist/src/modules/smartadserverBidAdapter.js +1 -1
  921. package/dist/src/modules/smartxBidAdapter.js +1 -1
  922. package/dist/src/modules/smilewantedBidAdapter.js +1 -1
  923. package/dist/src/modules/snigelBidAdapter.js +1 -1
  924. package/dist/src/modules/sonaradsBidAdapter.js +2 -2
  925. package/dist/src/modules/sonobiBidAdapter.js +1 -1
  926. package/dist/src/modules/sovrnBidAdapter.js +1 -1
  927. package/dist/src/modules/sparteoBidAdapter.js +1 -1
  928. package/dist/src/modules/sspBCBidAdapter.js +1 -1
  929. package/dist/src/modules/storageControl.js.map +1 -1
  930. package/dist/src/modules/stvBidAdapter.js +1 -1
  931. package/dist/src/modules/sublimeBidAdapter.js +2 -2
  932. package/dist/src/modules/taboolaBidAdapter.js +1 -1
  933. package/dist/src/modules/tappxBidAdapter.js +1 -1
  934. package/dist/src/modules/targetVideoBidAdapter.js +1 -1
  935. package/dist/src/modules/tcfControl.js.map +1 -1
  936. package/dist/src/modules/teadsBidAdapter.js +1 -1
  937. package/dist/src/modules/terceptAnalyticsAdapter.js +1 -1
  938. package/dist/src/modules/themoneytizerBidAdapter.js +1 -3
  939. package/dist/src/modules/themoneytizerBidAdapter.js.map +1 -1
  940. package/dist/src/modules/trionBidAdapter.js +1 -1
  941. package/dist/src/modules/tripleliftBidAdapter.js +1 -1
  942. package/dist/src/modules/ttdBidAdapter.js +9 -2
  943. package/dist/src/modules/ttdBidAdapter.js.map +1 -1
  944. package/dist/src/modules/ucfunnelAnalyticsAdapter.js +1 -1
  945. package/dist/src/modules/uid2IdSystem.js +1 -1
  946. package/dist/src/modules/underdogmediaBidAdapter.js +1 -1
  947. package/dist/src/modules/undertoneBidAdapter.js +1 -1
  948. package/dist/src/modules/unrulyBidAdapter.js +1 -1
  949. package/dist/src/modules/userId/index.js +12 -8
  950. package/dist/src/modules/userId/index.js.map +1 -1
  951. package/dist/src/modules/userId/spec.js.map +1 -1
  952. package/dist/src/modules/validationFpdModule/index.js.map +1 -1
  953. package/dist/src/modules/videoModule/index.js.map +1 -1
  954. package/dist/src/modules/videobyteBidAdapter.js +1 -1
  955. package/dist/src/modules/visxBidAdapter.js +1 -1
  956. package/dist/src/modules/vuukleBidAdapter.js +1 -1
  957. package/dist/src/modules/weboramaRtdProvider.js +30 -11
  958. package/dist/src/modules/weboramaRtdProvider.js.map +1 -1
  959. package/dist/src/modules/welectBidAdapter.js.map +1 -1
  960. package/dist/src/modules/widespaceBidAdapter.js +1 -1
  961. package/dist/src/modules/winrBidAdapter.js +1 -1
  962. package/dist/src/modules/yahooAdsBidAdapter.js +1 -1
  963. package/dist/src/modules/yandexBidAdapter.js +47 -15
  964. package/dist/src/modules/yandexBidAdapter.js.map +1 -1
  965. package/dist/src/modules/yieldmoBidAdapter.js +2 -2
  966. package/dist/src/modules/yieldoneAnalyticsAdapter.js +1 -1
  967. package/dist/src/package.json +2 -3
  968. package/dist/src/public/rumbleBidAdapter.js +1 -0
  969. package/dist/src/public/sevioBidAdapter.js +1 -0
  970. package/dist/src/src/activities/params.d.ts +5 -0
  971. package/dist/src/src/activities/params.js +6 -0
  972. package/dist/src/src/activities/params.js.map +1 -1
  973. package/dist/src/src/activities/redactor.js.map +1 -1
  974. package/dist/src/src/adRendering.js.map +1 -1
  975. package/dist/src/src/adUnits.js.map +1 -1
  976. package/dist/src/src/adapterManager.js.map +1 -1
  977. package/dist/src/src/adapters/bidderFactory.js.map +1 -1
  978. package/dist/src/src/ajax.js.map +1 -1
  979. package/dist/src/src/auction.js.map +1 -1
  980. package/dist/src/src/banner.js.map +1 -1
  981. package/dist/src/src/bidTTL.js.map +1 -1
  982. package/dist/src/src/bidderSettings.js.map +1 -1
  983. package/dist/src/src/bidfactory.js.map +1 -1
  984. package/dist/src/src/config.js +3 -3
  985. package/dist/src/src/config.js.map +1 -1
  986. package/dist/src/src/consentHandler.js.map +1 -1
  987. package/dist/src/src/constants.js.map +1 -1
  988. package/dist/src/src/cpmBucketManager.js.map +1 -1
  989. package/dist/src/src/debugging.js +1 -1
  990. package/dist/src/src/events.js.map +1 -1
  991. package/dist/src/src/fpd/enrichment.js.map +1 -1
  992. package/dist/src/src/hook.js.map +1 -1
  993. package/dist/src/src/mediaTypes.js.map +1 -1
  994. package/dist/src/src/native.js.map +1 -1
  995. package/dist/src/src/prebid.js +2 -2
  996. package/dist/src/src/prebid.js.map +1 -1
  997. package/dist/src/src/prebidGlobal.js.map +1 -1
  998. package/dist/src/src/refererDetection.js.map +1 -1
  999. package/dist/src/src/storageManager.js +26 -25
  1000. package/dist/src/src/storageManager.js.map +1 -1
  1001. package/dist/src/src/targeting.d.ts +7 -7
  1002. package/dist/src/src/targeting.js.map +1 -1
  1003. package/dist/src/src/types/common.d.js.map +1 -1
  1004. package/dist/src/src/types/common.d.ts +29 -29
  1005. package/dist/src/src/types/local/buildOptions.d.js.map +1 -1
  1006. package/dist/src/src/types/local/shim.d.js.map +1 -1
  1007. package/dist/src/src/types/objects.d.js.map +1 -1
  1008. package/dist/src/src/types/objects.d.ts +15 -15
  1009. package/dist/src/src/types/ortb/common.d.js.map +1 -1
  1010. package/dist/src/src/types/ortb/common.d.ts +1 -1
  1011. package/dist/src/src/types/ortb/ext/dchain.d.js.map +1 -1
  1012. package/dist/src/src/types/ortb/ext/dchain.d.ts +69 -69
  1013. package/dist/src/src/types/ortb/ext/dsa.d.js.map +1 -1
  1014. package/dist/src/src/types/ortb/ext/dsa.d.ts +50 -50
  1015. package/dist/src/src/types/ortb/request.d.js.map +1 -1
  1016. package/dist/src/src/types/ortb/request.d.ts +21 -21
  1017. package/dist/src/src/types/ortb/response.d.js.map +1 -1
  1018. package/dist/src/src/types/ortb/response.d.ts +6 -6
  1019. package/dist/src/src/types/summary/core.d.ts +5 -5
  1020. package/dist/src/src/userSync.js.map +1 -1
  1021. package/dist/src/src/utils/objects.js.map +1 -1
  1022. package/dist/src/src/utils/perfMetrics.js.map +1 -1
  1023. package/dist/src/src/utils/promise.js.map +1 -1
  1024. package/dist/src/src/utils/ttlCollection.js.map +1 -1
  1025. package/dist/src/src/video.js.map +1 -1
  1026. package/dist/src/src/videoCache.js.map +1 -1
  1027. package/dist/src/test/helpers/index_adapter_utils.js +1 -1
  1028. package/dist/src/test/helpers/index_adapter_utils.js.map +1 -1
  1029. package/dist/src/test/helpers/refererDetectionHelper.js.map +1 -1
  1030. package/dist/src/test/mocks/timers.js +12 -12
  1031. package/dist/src/test/mocks/timers.js.map +1 -1
  1032. package/dist/src/test/spec/adloader_spec.js.map +1 -1
  1033. package/dist/src/test/spec/config_spec.js +9 -3
  1034. package/dist/src/test/spec/config_spec.js.map +1 -1
  1035. package/dist/src/test/spec/libraries/greedy/greedyPromise_spec.js +2 -2
  1036. package/dist/src/test/spec/libraries/greedy/greedyPromise_spec.js.map +1 -1
  1037. package/dist/src/test/spec/modules/1plusXRtdProvider_spec.js +2 -9
  1038. package/dist/src/test/spec/modules/1plusXRtdProvider_spec.js.map +1 -1
  1039. package/dist/src/test/spec/modules/33acrossAnalyticsAdapter_spec.js +2 -2
  1040. package/dist/src/test/spec/modules/33acrossBidAdapter_spec.js +1 -1
  1041. package/dist/src/test/spec/modules/33acrossIdSystem_spec.js +1 -1
  1042. package/dist/src/test/spec/modules/adagioAnalyticsAdapter_spec.js +4 -4
  1043. package/dist/src/test/spec/modules/adgridBidAdapter_spec.js.map +1 -1
  1044. package/dist/src/test/spec/modules/adkernelAdnBidAdapter_spec.js.map +1 -1
  1045. package/dist/src/test/spec/modules/adkernelBidAdapter_spec.js.map +1 -1
  1046. package/dist/src/test/spec/modules/admediaBidAdapter_spec.js.map +1 -1
  1047. package/dist/src/test/spec/modules/adnuntiusBidAdapter_spec.js.map +1 -1
  1048. package/dist/src/test/spec/modules/adqueryBidAdapter_spec.js +1 -1
  1049. package/dist/src/test/spec/modules/adrelevantisBidAdapter_spec.js +1 -1
  1050. package/dist/src/test/spec/modules/adspiritBidAdapter_spec.js.map +1 -1
  1051. package/dist/src/test/spec/modules/adtrgtmeBidAdapter_spec.js +1 -1
  1052. package/dist/src/test/spec/modules/adtrgtmeBidAdapter_spec.js.map +1 -1
  1053. package/dist/src/test/spec/modules/adtrueBidAdapter_spec.js.map +1 -1
  1054. package/dist/src/test/spec/modules/advertisingBidAdapter_spec.js +9 -9
  1055. package/dist/src/test/spec/modules/advertisingBidAdapter_spec.js.map +1 -1
  1056. package/dist/src/test/spec/modules/adyoulikeBidAdapter_spec.js +3 -3
  1057. package/dist/src/test/spec/modules/ajaBidAdapter_spec.js +2 -2
  1058. package/dist/src/test/spec/modules/amxBidAdapter_spec.js +2 -2
  1059. package/dist/src/test/spec/modules/appierAnalyticsAdapter_spec.js +1 -1
  1060. package/dist/src/test/spec/modules/appnexusBidAdapter_spec.js +2 -2
  1061. package/dist/src/test/spec/modules/asoBidAdapter_spec.js +1 -1
  1062. package/dist/src/test/spec/modules/bidmaticBidAdapter_spec.js.map +1 -1
  1063. package/dist/src/test/spec/modules/blockthroughBidAdapter_spec.js +1 -1
  1064. package/dist/src/test/spec/modules/bridBidAdapter_spec.js +1 -1
  1065. package/dist/src/test/spec/modules/criteoBidAdapter_spec.js +1 -1
  1066. package/dist/src/test/spec/modules/dailymotionBidAdapter_spec.js +4 -4
  1067. package/dist/src/test/spec/modules/datablocksBidAdapter_spec.js.map +1 -1
  1068. package/dist/src/test/spec/modules/deepintentBidAdapter_spec.js.map +1 -1
  1069. package/dist/src/test/spec/modules/dexertoBidAdapter_spec.js.map +1 -1
  1070. package/dist/src/test/spec/modules/dochaseBidAdapter_spec.js.map +1 -1
  1071. package/dist/src/test/spec/modules/dspxBidAdapter_spec.js.map +1 -1
  1072. package/dist/src/test/spec/modules/dxkultureBidAdapter_spec.js +1 -1
  1073. package/dist/src/test/spec/modules/ehealthcaresolutionsBidAdapter_spec.js.map +1 -1
  1074. package/dist/src/test/spec/modules/enrichmentLiftMeasurement_spec.js.map +1 -1
  1075. package/dist/src/test/spec/modules/eplanningBidAdapter_spec.js +1 -1
  1076. package/dist/src/test/spec/modules/equativBidAdapter_spec.js +1 -1
  1077. package/dist/src/test/spec/modules/equativBidAdapter_spec.js.map +1 -1
  1078. package/dist/src/test/spec/modules/excoBidAdapter_spec.js +1 -1
  1079. package/dist/src/test/spec/modules/feedadBidAdapter_spec.js +2 -2
  1080. package/dist/src/test/spec/modules/finativeBidAdapter_spec.js.map +1 -1
  1081. package/dist/src/test/spec/modules/ftrackIdSystem_spec.js.map +1 -1
  1082. package/dist/src/test/spec/modules/fwsspBidAdapter_spec.js.map +1 -1
  1083. package/dist/src/test/spec/modules/gmosspBidAdapter_spec.js +2 -2
  1084. package/dist/src/test/spec/modules/greenbidsAnalyticsAdapter_spec.js +1 -1
  1085. package/dist/src/test/spec/modules/gridBidAdapter_spec.js +6 -6
  1086. package/dist/src/test/spec/modules/gumgumBidAdapter_spec.js +1 -1
  1087. package/dist/src/test/spec/modules/hypelabBidAdapter_spec.js.map +1 -1
  1088. package/dist/src/test/spec/modules/iasRtdProvider_spec.js +104 -1
  1089. package/dist/src/test/spec/modules/iasRtdProvider_spec.js.map +1 -1
  1090. package/dist/src/test/spec/modules/id5IdSystem_spec.js +4 -4
  1091. package/dist/src/test/spec/modules/insticatorBidAdapter_spec.js +1 -1
  1092. package/dist/src/test/spec/modules/intentIqIdSystem_spec.js.map +1 -1
  1093. package/dist/src/test/spec/modules/invibesBidAdapter_spec.js.map +1 -1
  1094. package/dist/src/test/spec/modules/ixBidAdapter_spec.js +2 -2
  1095. package/dist/src/test/spec/modules/justpremiumBidAdapter_spec.js +1 -1
  1096. package/dist/src/test/spec/modules/kargoBidAdapter_spec.js +1 -1
  1097. package/dist/src/test/spec/modules/kargoBidAdapter_spec.js.map +1 -1
  1098. package/dist/src/test/spec/modules/lane4BidAdapter_spec.js.map +1 -1
  1099. package/dist/src/test/spec/modules/lemmaDigitalBidAdapter_spec.js.map +1 -1
  1100. package/dist/src/test/spec/modules/liveIntentExternalIdSystem_spec.js +29 -10
  1101. package/dist/src/test/spec/modules/liveIntentExternalIdSystem_spec.js.map +1 -1
  1102. package/dist/src/test/spec/modules/liveIntentIdMinimalSystem_spec.js +19 -0
  1103. package/dist/src/test/spec/modules/liveIntentIdMinimalSystem_spec.js.map +1 -1
  1104. package/dist/src/test/spec/modules/liveIntentIdSystem_spec.js +58 -1
  1105. package/dist/src/test/spec/modules/liveIntentIdSystem_spec.js.map +1 -1
  1106. package/dist/src/test/spec/modules/liveIntentRtdProvider_spec.js.map +1 -1
  1107. package/dist/src/test/spec/modules/magniteAnalyticsAdapter_spec.js +1 -1
  1108. package/dist/src/test/spec/modules/malltvAnalyticsAdapter_spec.js +1 -1
  1109. package/dist/src/test/spec/modules/mediaeyesBidAdapter_spec.js.map +1 -1
  1110. package/dist/src/test/spec/modules/mediafuseBidAdapter_spec.js +2 -2
  1111. package/dist/src/test/spec/modules/mediagoBidAdapter_spec.js.map +1 -1
  1112. package/dist/src/test/spec/modules/medianetBidAdapter_spec.js +43 -26
  1113. package/dist/src/test/spec/modules/medianetBidAdapter_spec.js.map +1 -1
  1114. package/dist/src/test/spec/modules/mediasquareBidAdapter_spec.js.map +1 -1
  1115. package/dist/src/test/spec/modules/missenaBidAdapter_spec.js +1 -1
  1116. package/dist/src/test/spec/modules/nexx360BidAdapter_spec.js.map +1 -1
  1117. package/dist/src/test/spec/modules/nobidAnalyticsAdapter_spec.js +1 -1
  1118. package/dist/src/test/spec/modules/nobidBidAdapter_spec.js +1 -1
  1119. package/dist/src/test/spec/modules/nobidBidAdapter_spec.js.map +1 -1
  1120. package/dist/src/test/spec/modules/oguryBidAdapter_spec.js +1 -1
  1121. package/dist/src/test/spec/modules/onetagBidAdapter_spec.js.map +1 -1
  1122. package/dist/src/test/spec/modules/openxBidAdapter_spec.js +113 -0
  1123. package/dist/src/test/spec/modules/openxBidAdapter_spec.js.map +1 -1
  1124. package/dist/src/test/spec/modules/optoutBidAdapter_spec.js.map +1 -1
  1125. package/dist/src/test/spec/modules/orbitsoftBidAdapter_spec.js.map +1 -1
  1126. package/dist/src/test/spec/modules/outbrainBidAdapter_spec.js +3 -3
  1127. package/dist/src/test/spec/modules/oxxionAnalyticsAdapter_spec.js.map +1 -1
  1128. package/dist/src/test/spec/modules/ozoneBidAdapter_spec.js.map +1 -1
  1129. package/dist/src/test/spec/modules/prebidServerBidAdapter_spec.js +4 -4
  1130. package/dist/src/test/spec/modules/prebidServerBidAdapter_spec.js.map +1 -1
  1131. package/dist/src/test/spec/modules/prismaBidAdapter_spec.js.map +1 -1
  1132. package/dist/src/test/spec/modules/publinkIdSystem_spec.js +5 -5
  1133. package/dist/src/test/spec/modules/pubmaticAnalyticsAdapter_spec.js +6 -6
  1134. package/dist/src/test/spec/modules/pubmaticBidAdapter_spec.js +58 -0
  1135. package/dist/src/test/spec/modules/pubmaticBidAdapter_spec.js.map +1 -1
  1136. package/dist/src/test/spec/modules/pubmaticRtdProvider_spec.js.map +1 -1
  1137. package/dist/src/test/spec/modules/pubwiseAnalyticsAdapter_spec.js +1 -1
  1138. package/dist/src/test/spec/modules/pubxaiAnalyticsAdapter_spec.js +6 -6
  1139. package/dist/src/test/spec/modules/pwbidBidAdapter_spec.js.map +1 -1
  1140. package/dist/src/test/spec/modules/quantcastBidAdapter_spec.js +6 -6
  1141. package/dist/src/test/spec/modules/readpeakBidAdapter_spec.js +4 -4
  1142. package/dist/src/test/spec/modules/relaidoBidAdapter_spec.js +1 -1
  1143. package/dist/src/test/spec/modules/relevadRtdProvider_spec.js.map +1 -1
  1144. package/dist/src/test/spec/modules/relevatehealthBidAdapter_spec.js.map +1 -1
  1145. package/dist/src/test/spec/modules/richaudienceBidAdapter_spec.js.map +1 -1
  1146. package/dist/src/test/spec/modules/rubiconBidAdapter_spec.js +2 -2
  1147. package/dist/src/test/spec/modules/rubiconBidAdapter_spec.js.map +1 -1
  1148. package/dist/src/test/spec/modules/rumbleBidAdapter_spec.js +110 -0
  1149. package/dist/src/test/spec/modules/rumbleBidAdapter_spec.js.map +1 -0
  1150. package/dist/src/test/spec/modules/sevioBidAdapter_spec.js +182 -0
  1151. package/dist/src/test/spec/modules/sevioBidAdapter_spec.js.map +1 -0
  1152. package/dist/src/test/spec/modules/smaatoBidAdapter_spec.js.map +1 -1
  1153. package/dist/src/test/spec/modules/smarticoBidAdapter_spec.js.map +1 -1
  1154. package/dist/src/test/spec/modules/smartxBidAdapter_spec.js +1 -1
  1155. package/dist/src/test/spec/modules/sonaradsBidAdapter_spec.js +5 -5
  1156. package/dist/src/test/spec/modules/sovrnBidAdapter_spec.js +1 -1
  1157. package/dist/src/test/spec/modules/sparteoBidAdapter_spec.js +3 -3
  1158. package/dist/src/test/spec/modules/sspBCBidAdapter_spec.js +1 -1
  1159. package/dist/src/test/spec/modules/stvBidAdapter_spec.js.map +1 -1
  1160. package/dist/src/test/spec/modules/taboolaBidAdapter_spec.js +1 -1
  1161. package/dist/src/test/spec/modules/tapnativeBidAdapter_spec.js.map +1 -1
  1162. package/dist/src/test/spec/modules/targetVideoBidAdapter_spec.js +2 -2
  1163. package/dist/src/test/spec/modules/themoneytizerBidAdapter_spec.js +0 -5
  1164. package/dist/src/test/spec/modules/themoneytizerBidAdapter_spec.js.map +1 -1
  1165. package/dist/src/test/spec/modules/trionBidAdapter_spec.js +1 -1
  1166. package/dist/src/test/spec/modules/ttdBidAdapter_spec.js +24 -3
  1167. package/dist/src/test/spec/modules/ttdBidAdapter_spec.js.map +1 -1
  1168. package/dist/src/test/spec/modules/ucfunnelAnalyticsAdapter_spec.js +1 -1
  1169. package/dist/src/test/spec/modules/uid2IdSystem_spec.js.map +1 -1
  1170. package/dist/src/test/spec/modules/unrulyBidAdapter_spec.js +3 -3
  1171. package/dist/src/test/spec/modules/userId_spec.js +41 -6
  1172. package/dist/src/test/spec/modules/userId_spec.js.map +1 -1
  1173. package/dist/src/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +1738 -9
  1174. package/dist/src/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js.map +1 -1
  1175. package/dist/src/test/spec/modules/videobyteBidAdapter_spec.js +1 -1
  1176. package/dist/src/test/spec/modules/visxBidAdapter_spec.js +12 -12
  1177. package/dist/src/test/spec/modules/winrBidAdapter_spec.js +1 -1
  1178. package/dist/src/test/spec/modules/yahooAdsBidAdapter_spec.js +1 -1
  1179. package/dist/src/test/spec/modules/yandexBidAdapter_spec.js +107 -2
  1180. package/dist/src/test/spec/modules/yandexBidAdapter_spec.js.map +1 -1
  1181. package/dist/src/test/spec/modules/yieldoneAnalyticsAdapter_spec.js +2 -2
  1182. package/dist/src/test/spec/refererDetection_spec.js.map +1 -1
  1183. package/dist/src/test/spec/unit/core/storageManager_spec.js +18 -1
  1184. package/dist/src/test/spec/unit/core/storageManager_spec.js.map +1 -1
  1185. package/dist/src/test/spec/unit/core/targeting_spec.js.map +1 -1
  1186. package/dist/src/test/spec/utils_spec.js.map +1 -1
  1187. package/eslint.config.js +2 -6
  1188. package/gulpfile.js +0 -7
  1189. package/libraries/analyticsAdapter/AnalyticsAdapter.ts +28 -28
  1190. package/libraries/appnexusUtils/anKeywords.js +11 -0
  1191. package/libraries/consentManagement/cmUtils.ts +18 -18
  1192. package/libraries/creative-renderer-display/renderer.js +1 -1
  1193. package/libraries/cryptoUtils/wallets.js +38 -0
  1194. package/libraries/dspxUtils/bidderUtils.js +1 -1
  1195. package/libraries/impUtils.js +33 -0
  1196. package/libraries/liveIntentId/shared.js +16 -0
  1197. package/libraries/nexx360Utils/index.js +8 -8
  1198. package/libraries/ortbConverter/converter.ts +79 -79
  1199. package/libraries/video/constants/events.ts +5 -5
  1200. package/metadata/modules/33acrossBidAdapter.json +1 -1
  1201. package/metadata/modules/33acrossIdSystem.json +1 -1
  1202. package/metadata/modules/acuityadsBidAdapter.json +1 -1
  1203. package/metadata/modules/adagioBidAdapter.json +1 -1
  1204. package/metadata/modules/adagioRtdProvider.json +1 -1
  1205. package/metadata/modules/addefendBidAdapter.json +1 -1
  1206. package/metadata/modules/adfBidAdapter.json +1 -1
  1207. package/metadata/modules/adfusionBidAdapter.json +1 -1
  1208. package/metadata/modules/adheseBidAdapter.json +1 -1
  1209. package/metadata/modules/adkernelAdnBidAdapter.json +1 -1
  1210. package/metadata/modules/adkernelBidAdapter.json +4 -4
  1211. package/metadata/modules/admaticBidAdapter.json +2 -2
  1212. package/metadata/modules/admixerBidAdapter.json +8 -1
  1213. package/metadata/modules/admixerIdSystem.json +1 -1
  1214. package/metadata/modules/adnowBidAdapter.json +1 -1
  1215. package/metadata/modules/adnuntiusBidAdapter.json +1 -1
  1216. package/metadata/modules/adnuntiusRtdProvider.json +1 -1
  1217. package/metadata/modules/adotBidAdapter.json +1 -1
  1218. package/metadata/modules/adponeBidAdapter.json +1 -1
  1219. package/metadata/modules/adqueryBidAdapter.json +1 -1
  1220. package/metadata/modules/adqueryIdSystem.json +1 -1
  1221. package/metadata/modules/adrinoBidAdapter.json +1 -1
  1222. package/metadata/modules/ads_interactiveBidAdapter.json +1 -1
  1223. package/metadata/modules/adtargetBidAdapter.json +1 -1
  1224. package/metadata/modules/adtelligentBidAdapter.json +3 -3
  1225. package/metadata/modules/adtelligentIdSystem.json +1 -1
  1226. package/metadata/modules/aduptechBidAdapter.json +1 -1
  1227. package/metadata/modules/adyoulikeBidAdapter.json +1 -1
  1228. package/metadata/modules/aidemBidAdapter.json +1 -1
  1229. package/metadata/modules/airgridRtdProvider.json +1 -1
  1230. package/metadata/modules/alkimiBidAdapter.json +1 -1
  1231. package/metadata/modules/ampliffyBidAdapter.json +1 -1
  1232. package/metadata/modules/amxBidAdapter.json +1 -1
  1233. package/metadata/modules/amxIdSystem.json +1 -1
  1234. package/metadata/modules/aniviewBidAdapter.json +1 -1
  1235. package/metadata/modules/anonymisedRtdProvider.json +1 -1
  1236. package/metadata/modules/appierBidAdapter.json +15 -29
  1237. package/metadata/modules/appnexusBidAdapter.json +5 -5
  1238. package/metadata/modules/appushBidAdapter.json +1 -1
  1239. package/metadata/modules/apstreamBidAdapter.json +1 -1
  1240. package/metadata/modules/audiencerunBidAdapter.json +1 -1
  1241. package/metadata/modules/axisBidAdapter.json +1 -1
  1242. package/metadata/modules/azerionedgeRtdProvider.json +1 -1
  1243. package/metadata/modules/beopBidAdapter.json +1 -1
  1244. package/metadata/modules/betweenBidAdapter.json +1 -1
  1245. package/metadata/modules/bidmaticBidAdapter.json +1 -1
  1246. package/metadata/modules/bidtheatreBidAdapter.json +1 -1
  1247. package/metadata/modules/bliinkBidAdapter.json +1 -1
  1248. package/metadata/modules/blockthroughBidAdapter.json +1 -1
  1249. package/metadata/modules/blueBidAdapter.json +1 -1
  1250. package/metadata/modules/bmsBidAdapter.json +1 -1
  1251. package/metadata/modules/boldwinBidAdapter.json +1 -1
  1252. package/metadata/modules/bridBidAdapter.json +1 -1
  1253. package/metadata/modules/browsiBidAdapter.json +1 -1
  1254. package/metadata/modules/bucksenseBidAdapter.json +1 -1
  1255. package/metadata/modules/carodaBidAdapter.json +1 -1
  1256. package/metadata/modules/categoryTranslation.json +1 -1
  1257. package/metadata/modules/ccxBidAdapter.json +1 -1
  1258. package/metadata/modules/ceeIdSystem.json +1 -1
  1259. package/metadata/modules/chromeAiRtdProvider.json +1 -1
  1260. package/metadata/modules/compassBidAdapter.json +1 -1
  1261. package/metadata/modules/conceptxBidAdapter.json +1 -1
  1262. package/metadata/modules/connatixBidAdapter.json +1 -1
  1263. package/metadata/modules/connectIdSystem.json +1 -1
  1264. package/metadata/modules/connectadBidAdapter.json +1 -1
  1265. package/metadata/modules/contentexchangeBidAdapter.json +1 -1
  1266. package/metadata/modules/conversantBidAdapter.json +1 -1
  1267. package/metadata/modules/copper6sspBidAdapter.json +1 -1
  1268. package/metadata/modules/cpmstarBidAdapter.json +1 -1
  1269. package/metadata/modules/criteoBidAdapter.json +1 -1
  1270. package/metadata/modules/criteoIdSystem.json +1 -1
  1271. package/metadata/modules/cwireBidAdapter.json +1 -1
  1272. package/metadata/modules/czechAdIdSystem.json +1 -1
  1273. package/metadata/modules/dailymotionBidAdapter.json +1 -1
  1274. package/metadata/modules/debugging.json +1 -1
  1275. package/metadata/modules/deepintentBidAdapter.json +1 -1
  1276. package/metadata/modules/deltaprojectsBidAdapter.json +1 -1
  1277. package/metadata/modules/dianomiBidAdapter.json +1 -1
  1278. package/metadata/modules/digitalMatterBidAdapter.json +1 -1
  1279. package/metadata/modules/distroscaleBidAdapter.json +1 -1
  1280. package/metadata/modules/docereeAdManagerBidAdapter.json +3 -3
  1281. package/metadata/modules/docereeBidAdapter.json +3 -3
  1282. package/metadata/modules/dspxBidAdapter.json +1 -1
  1283. package/metadata/modules/e_volutionBidAdapter.json +1 -1
  1284. package/metadata/modules/edge226BidAdapter.json +3 -3
  1285. package/metadata/modules/equativBidAdapter.json +1 -1
  1286. package/metadata/modules/eskimiBidAdapter.json +1 -1
  1287. package/metadata/modules/etargetBidAdapter.json +1 -1
  1288. package/metadata/modules/euidIdSystem.json +1 -1
  1289. package/metadata/modules/exadsBidAdapter.json +1 -1
  1290. package/metadata/modules/feedadBidAdapter.json +1 -1
  1291. package/metadata/modules/fwsspBidAdapter.json +1 -1
  1292. package/metadata/modules/gamoshiBidAdapter.json +1 -1
  1293. package/metadata/modules/glomexBidAdapter.json +1 -1
  1294. package/metadata/modules/goldbachBidAdapter.json +1 -1
  1295. package/metadata/modules/greenbidsBidAdapter.json +1 -1
  1296. package/metadata/modules/gridBidAdapter.json +1 -1
  1297. package/metadata/modules/gumgumBidAdapter.json +1 -1
  1298. package/metadata/modules/hadronIdSystem.json +1 -1
  1299. package/metadata/modules/hadronRtdProvider.json +1 -1
  1300. package/metadata/modules/holidBidAdapter.json +1 -1
  1301. package/metadata/modules/hybridBidAdapter.json +1 -1
  1302. package/metadata/modules/id5IdSystem.json +1 -1
  1303. package/metadata/modules/identityLinkIdSystem.json +1 -1
  1304. package/metadata/modules/illuminBidAdapter.json +1 -1
  1305. package/metadata/modules/impactifyBidAdapter.json +1 -1
  1306. package/metadata/modules/improvedigitalBidAdapter.json +1 -1
  1307. package/metadata/modules/inmobiBidAdapter.json +1 -1
  1308. package/metadata/modules/innityBidAdapter.json +1 -1
  1309. package/metadata/modules/insticatorBidAdapter.json +1 -1
  1310. package/metadata/modules/intentIqIdSystem.json +1 -1
  1311. package/metadata/modules/invibesBidAdapter.json +1 -1
  1312. package/metadata/modules/ipromBidAdapter.json +1 -1
  1313. package/metadata/modules/ixBidAdapter.json +1 -1
  1314. package/metadata/modules/justIdSystem.json +1 -1
  1315. package/metadata/modules/justpremiumBidAdapter.json +1 -1
  1316. package/metadata/modules/jwplayerBidAdapter.json +1 -1
  1317. package/metadata/modules/kargoBidAdapter.json +1 -1
  1318. package/metadata/modules/kubientBidAdapter.json +3 -8
  1319. package/metadata/modules/kueezRtbBidAdapter.json +1 -1
  1320. package/metadata/modules/limelightDigitalBidAdapter.json +2 -2
  1321. package/metadata/modules/liveIntentIdSystem.json +1 -1
  1322. package/metadata/modules/liveIntentRtdProvider.json +1 -1
  1323. package/metadata/modules/livewrappedBidAdapter.json +1 -1
  1324. package/metadata/modules/loopmeBidAdapter.json +1 -1
  1325. package/metadata/modules/lotamePanoramaIdSystem.json +1 -1
  1326. package/metadata/modules/luceadBidAdapter.json +1 -1
  1327. package/metadata/modules/luponmediaBidAdapter.json +1 -1
  1328. package/metadata/modules/madvertiseBidAdapter.json +1 -1
  1329. package/metadata/modules/marsmediaBidAdapter.json +1 -1
  1330. package/metadata/modules/mediaConsortiumBidAdapter.json +1 -1
  1331. package/metadata/modules/mediaforceBidAdapter.json +1 -1
  1332. package/metadata/modules/mediafuseBidAdapter.json +1 -1
  1333. package/metadata/modules/mediagoBidAdapter.json +1 -1
  1334. package/metadata/modules/mediakeysBidAdapter.json +1 -1
  1335. package/metadata/modules/medianetBidAdapter.json +2 -2
  1336. package/metadata/modules/mediasquareBidAdapter.json +1 -1
  1337. package/metadata/modules/mgidBidAdapter.json +1 -1
  1338. package/metadata/modules/mgidRtdProvider.json +1 -1
  1339. package/metadata/modules/mgidXBidAdapter.json +1 -1
  1340. package/metadata/modules/minutemediaBidAdapter.json +1 -1
  1341. package/metadata/modules/missenaBidAdapter.json +1 -1
  1342. package/metadata/modules/mobianRtdProvider.json +1 -1
  1343. package/metadata/modules/mobilefuseBidAdapter.json +1 -1
  1344. package/metadata/modules/mobkoiBidAdapter.json +1 -1
  1345. package/metadata/modules/mobkoiIdSystem.json +1 -1
  1346. package/metadata/modules/nativeryBidAdapter.json +1 -1
  1347. package/metadata/modules/nativoBidAdapter.json +1 -1
  1348. package/metadata/modules/newspassidBidAdapter.json +1 -1
  1349. package/metadata/modules/nextMillenniumBidAdapter.json +1 -1
  1350. package/metadata/modules/nextrollBidAdapter.json +1 -1
  1351. package/metadata/modules/nexx360BidAdapter.json +8 -8
  1352. package/metadata/modules/nobidBidAdapter.json +2 -2
  1353. package/metadata/modules/nodalsAiRtdProvider.json +1 -1
  1354. package/metadata/modules/novatiqIdSystem.json +1 -1
  1355. package/metadata/modules/oguryBidAdapter.json +1 -1
  1356. package/metadata/modules/omsBidAdapter.json +1 -1
  1357. package/metadata/modules/onetagBidAdapter.json +1 -1
  1358. package/metadata/modules/openwebBidAdapter.json +1 -1
  1359. package/metadata/modules/openxBidAdapter.json +1 -1
  1360. package/metadata/modules/operaadsBidAdapter.json +1 -1
  1361. package/metadata/modules/optidigitalBidAdapter.json +1 -1
  1362. package/metadata/modules/optoutBidAdapter.json +1 -1
  1363. package/metadata/modules/orbidderBidAdapter.json +1 -1
  1364. package/metadata/modules/outbrainBidAdapter.json +1 -1
  1365. package/metadata/modules/ozoneBidAdapter.json +1 -1
  1366. package/metadata/modules/pairIdSystem.json +1 -1
  1367. package/metadata/modules/performaxBidAdapter.json +4 -5
  1368. package/metadata/modules/pgamsspBidAdapter.json +1 -1
  1369. package/metadata/modules/pixfutureBidAdapter.json +1 -1
  1370. package/metadata/modules/playdigoBidAdapter.json +1 -1
  1371. package/metadata/modules/prebid-core.json +2 -2
  1372. package/metadata/modules/precisoBidAdapter.json +1 -1
  1373. package/metadata/modules/prismaBidAdapter.json +1 -1
  1374. package/metadata/modules/programmaticXBidAdapter.json +1 -1
  1375. package/metadata/modules/proxistoreBidAdapter.json +1 -1
  1376. package/metadata/modules/publinkIdSystem.json +1 -1
  1377. package/metadata/modules/pubmaticBidAdapter.json +1 -1
  1378. package/metadata/modules/pubmaticIdSystem.json +1 -1
  1379. package/metadata/modules/pulsepointBidAdapter.json +1 -1
  1380. package/metadata/modules/pwbidBidAdapter.json +1 -1
  1381. package/metadata/modules/qtBidAdapter.json +1 -1
  1382. package/metadata/modules/quantcastBidAdapter.json +1 -1
  1383. package/metadata/modules/quantcastIdSystem.json +1 -1
  1384. package/metadata/modules/r2b2BidAdapter.json +1 -1
  1385. package/metadata/modules/raynRtdProvider.json +1 -1
  1386. package/metadata/modules/readpeakBidAdapter.json +1 -1
  1387. package/metadata/modules/relayBidAdapter.json +1 -1
  1388. package/metadata/modules/relevantdigitalBidAdapter.json +1 -1
  1389. package/metadata/modules/resetdigitalBidAdapter.json +1 -1
  1390. package/metadata/modules/responsiveAdsBidAdapter.json +1 -1
  1391. package/metadata/modules/retailspotBidAdapter.json +1 -1
  1392. package/metadata/modules/revcontentBidAdapter.json +7 -117
  1393. package/metadata/modules/rhythmoneBidAdapter.json +1 -1
  1394. package/metadata/modules/richaudienceBidAdapter.json +1 -1
  1395. package/metadata/modules/riseBidAdapter.json +2 -2
  1396. package/metadata/modules/rixengineBidAdapter.json +1 -1
  1397. package/metadata/modules/rtbhouseBidAdapter.json +1 -1
  1398. package/metadata/modules/rubiconBidAdapter.json +1 -1
  1399. package/metadata/modules/rumbleBidAdapter.json +13 -0
  1400. package/metadata/modules/scatteredBidAdapter.json +1 -1
  1401. package/metadata/modules/seedingAllianceBidAdapter.json +1 -1
  1402. package/metadata/modules/seedtagBidAdapter.json +1 -1
  1403. package/metadata/modules/semantiqRtdProvider.json +1 -1
  1404. package/metadata/modules/setupadBidAdapter.json +1 -1
  1405. package/metadata/modules/sevioBidAdapter.json +18 -0
  1406. package/metadata/modules/sharedIdSystem.json +1 -1
  1407. package/metadata/modules/sharethroughBidAdapter.json +1 -1
  1408. package/metadata/modules/showheroes-bsBidAdapter.json +1 -1
  1409. package/metadata/modules/silvermobBidAdapter.json +1 -1
  1410. package/metadata/modules/sirdataRtdProvider.json +1 -1
  1411. package/metadata/modules/slimcutBidAdapter.json +1 -1
  1412. package/metadata/modules/smaatoBidAdapter.json +1 -1
  1413. package/metadata/modules/smartadserverBidAdapter.json +1 -1
  1414. package/metadata/modules/smartxBidAdapter.json +1 -1
  1415. package/metadata/modules/smartyadsBidAdapter.json +1 -1
  1416. package/metadata/modules/smilewantedBidAdapter.json +1 -1
  1417. package/metadata/modules/snigelBidAdapter.json +1 -1
  1418. package/metadata/modules/sonaradsBidAdapter.json +1 -1
  1419. package/metadata/modules/sonobiBidAdapter.json +1 -1
  1420. package/metadata/modules/sovrnBidAdapter.json +4 -4
  1421. package/metadata/modules/sparteoBidAdapter.json +1 -1
  1422. package/metadata/modules/ssmasBidAdapter.json +1 -1
  1423. package/metadata/modules/sspBCBidAdapter.json +1 -1
  1424. package/metadata/modules/stackadaptBidAdapter.json +1 -1
  1425. package/metadata/modules/startioBidAdapter.json +1 -1
  1426. package/metadata/modules/stroeerCoreBidAdapter.json +1 -1
  1427. package/metadata/modules/stvBidAdapter.json +1 -1
  1428. package/metadata/modules/sublimeBidAdapter.json +1 -1
  1429. package/metadata/modules/taboolaBidAdapter.json +1 -1
  1430. package/metadata/modules/taboolaIdSystem.json +1 -1
  1431. package/metadata/modules/tappxBidAdapter.json +1 -1
  1432. package/metadata/modules/targetVideoBidAdapter.json +1 -1
  1433. package/metadata/modules/teadsBidAdapter.json +1 -1
  1434. package/metadata/modules/teadsIdSystem.json +1 -1
  1435. package/metadata/modules/tealBidAdapter.json +1 -1
  1436. package/metadata/modules/themoneytizerBidAdapter.json +3 -8
  1437. package/metadata/modules/tncIdSystem.json +1 -1
  1438. package/metadata/modules/topicsFpdModule.json +1 -1
  1439. package/metadata/modules/tripleliftBidAdapter.json +1 -1
  1440. package/metadata/modules/ttdBidAdapter.json +1 -1
  1441. package/metadata/modules/twistDigitalBidAdapter.json +1 -1
  1442. package/metadata/modules/underdogmediaBidAdapter.json +1 -1
  1443. package/metadata/modules/undertoneBidAdapter.json +1 -1
  1444. package/metadata/modules/unifiedIdSystem.json +1 -1
  1445. package/metadata/modules/unrulyBidAdapter.json +1 -1
  1446. package/metadata/modules/userId.json +1 -1
  1447. package/metadata/modules/validationFpdModule.json +1 -1
  1448. package/metadata/modules/vidazooBidAdapter.json +1 -1
  1449. package/metadata/modules/vidoomyBidAdapter.json +1 -1
  1450. package/metadata/modules/viewdeosDXBidAdapter.json +1 -1
  1451. package/metadata/modules/viouslyBidAdapter.json +1 -1
  1452. package/metadata/modules/visxBidAdapter.json +1 -1
  1453. package/metadata/modules/vlybyBidAdapter.json +1 -1
  1454. package/metadata/modules/voxBidAdapter.json +1 -1
  1455. package/metadata/modules/vrtcalBidAdapter.json +1 -1
  1456. package/metadata/modules/vuukleBidAdapter.json +1 -1
  1457. package/metadata/modules/weboramaRtdProvider.json +1 -1
  1458. package/metadata/modules/welectBidAdapter.json +1 -1
  1459. package/metadata/modules/yahooAdsBidAdapter.json +1 -1
  1460. package/metadata/modules/yieldlabBidAdapter.json +1 -1
  1461. package/metadata/modules/yieldliftBidAdapter.json +1 -1
  1462. package/metadata/modules/yieldloveBidAdapter.json +1 -1
  1463. package/metadata/modules/yieldmoBidAdapter.json +1 -1
  1464. package/metadata/modules/zeotapIdPlusIdSystem.json +1 -1
  1465. package/metadata/modules/zeta_globalBidAdapter.json +1 -1
  1466. package/metadata/modules/zeta_global_sspBidAdapter.json +1 -1
  1467. package/metadata/modules.json +23 -2
  1468. package/modules/1plusXRtdProvider.js +6 -2
  1469. package/modules/adWMGBidAdapter.js +8 -8
  1470. package/modules/admixerBidAdapter.js +9 -4
  1471. package/modules/adspiritBidAdapter.js +8 -8
  1472. package/modules/adtrgtmeBidAdapter.js +2 -2
  1473. package/modules/adxcgBidAdapter.js +2 -36
  1474. package/modules/amxBidAdapter.js +3 -3
  1475. package/modules/chromeAiRtdProvider.js +5 -5
  1476. package/modules/consentManagementGpp.ts +11 -11
  1477. package/modules/consentManagementTcf.ts +33 -33
  1478. package/modules/consentManagementUsp.ts +14 -14
  1479. package/modules/currency.ts +59 -59
  1480. package/modules/cwireBidAdapter.js +2 -2
  1481. package/modules/dailymotionBidAdapter.js +4 -4
  1482. package/modules/dchain.ts +4 -4
  1483. package/modules/dspxBidAdapter.js +8 -8
  1484. package/modules/eightPodBidAdapter.js +8 -8
  1485. package/modules/genericAnalyticsAdapter.ts +50 -50
  1486. package/modules/geolocationRtdProvider.ts +48 -48
  1487. package/modules/getintentBidAdapter.js +4 -2
  1488. package/modules/gmosspBidAdapter.js +1 -1
  1489. package/modules/gppControl_usstates.ts +40 -40
  1490. package/modules/gptPreAuction.ts +34 -34
  1491. package/modules/iasRtdProvider.js +87 -5
  1492. package/modules/intentIqAnalyticsAdapter.js +8 -8
  1493. package/modules/intentIqIdSystem.js +2 -2
  1494. package/modules/jwplayerRtdProvider.js +6 -2
  1495. package/modules/jwplayerVideoProvider.js +13 -9
  1496. package/modules/kubientBidAdapter.js +0 -1
  1497. package/modules/medianetAnalyticsAdapter.js +5 -5
  1498. package/modules/medianetBidAdapter.js +5 -1
  1499. package/modules/michaoBidAdapter.ts +7 -7
  1500. package/modules/multibid/index.ts +31 -31
  1501. package/modules/nexverseBidAdapter.js +1 -1
  1502. package/modules/nodalsAiRtdProvider.js +4 -2
  1503. package/modules/onetagBidAdapter.js +12 -12
  1504. package/modules/openxBidAdapter.js +6 -1
  1505. package/modules/prebidServerBidAdapter/index.ts +130 -130
  1506. package/modules/priceFloors.ts +131 -131
  1507. package/modules/pubmaticBidAdapter.js +21 -1
  1508. package/modules/pubmaticRtdProvider.js +143 -143
  1509. package/modules/pulsepointBidAdapter.js +3 -38
  1510. package/modules/readpeakBidAdapter.js +17 -17
  1511. package/modules/rtdModule/index.ts +8 -8
  1512. package/modules/rtdModule/spec.ts +30 -30
  1513. package/modules/rubiconBidAdapter.js +5 -1
  1514. package/modules/rumbleBidAdapter.js +128 -0
  1515. package/modules/rumbleBidAdapter.md +114 -0
  1516. package/modules/schain.ts +4 -4
  1517. package/modules/sevioBidAdapter.js +262 -0
  1518. package/modules/sevioBidAdapter.md +29 -0
  1519. package/modules/sharedIdSystem.ts +29 -29
  1520. package/modules/storageControl.ts +72 -72
  1521. package/modules/tcfControl.ts +60 -60
  1522. package/modules/themoneytizerBidAdapter.js +2 -4
  1523. package/modules/ttdBidAdapter.js +11 -1
  1524. package/modules/ttdBidAdapter.md +3 -1
  1525. package/modules/userId/index.ts +129 -119
  1526. package/modules/userId/spec.ts +136 -136
  1527. package/modules/validationFpdModule/index.ts +4 -4
  1528. package/modules/videoModule/index.ts +37 -37
  1529. package/modules/weboramaRtdProvider.js +30 -11
  1530. package/modules/welectBidAdapter.js +3 -3
  1531. package/modules/yandexBidAdapter.js +67 -24
  1532. package/package.json +2 -3
  1533. package/src/activities/params.js +6 -0
  1534. package/src/activities/redactor.ts +8 -8
  1535. package/src/adRendering.ts +61 -61
  1536. package/src/adUnits.ts +100 -100
  1537. package/src/adapterManager.ts +605 -605
  1538. package/src/adapters/bidderFactory.ts +99 -99
  1539. package/src/ajax.ts +39 -39
  1540. package/src/auction.ts +217 -217
  1541. package/src/banner.ts +28 -28
  1542. package/src/bidTTL.ts +16 -16
  1543. package/src/bidderSettings.ts +46 -46
  1544. package/src/bidfactory.ts +107 -107
  1545. package/src/config.ts +65 -65
  1546. package/src/consentHandler.ts +25 -25
  1547. package/src/constants.ts +14 -14
  1548. package/src/cpmBucketManager.ts +7 -7
  1549. package/src/events.ts +75 -75
  1550. package/src/fpd/enrichment.ts +8 -8
  1551. package/src/hook.ts +14 -14
  1552. package/src/mediaTypes.ts +16 -16
  1553. package/src/native.ts +62 -62
  1554. package/src/prebid.ts +362 -362
  1555. package/src/prebidGlobal.ts +18 -18
  1556. package/src/refererDetection.ts +54 -54
  1557. package/src/storageManager.ts +76 -73
  1558. package/src/targeting.ts +215 -215
  1559. package/src/types/common.d.ts +29 -29
  1560. package/src/types/local/buildOptions.d.ts +3 -3
  1561. package/src/types/local/shim.d.ts +6 -6
  1562. package/src/types/objects.d.ts +15 -15
  1563. package/src/types/ortb/common.d.ts +1 -1
  1564. package/src/types/ortb/ext/dchain.d.ts +69 -69
  1565. package/src/types/ortb/ext/dsa.d.ts +50 -50
  1566. package/src/types/ortb/request.d.ts +21 -21
  1567. package/src/types/ortb/response.d.ts +6 -6
  1568. package/src/userSync.ts +32 -32
  1569. package/src/utils/objects.ts +11 -11
  1570. package/src/utils/perfMetrics.ts +193 -193
  1571. package/src/utils/promise.ts +14 -14
  1572. package/src/utils/ttlCollection.ts +25 -25
  1573. package/src/video.ts +73 -73
  1574. package/src/videoCache.ts +60 -60
  1575. package/test/helpers/index_adapter_utils.js +1 -2
  1576. package/test/helpers/refererDetectionHelper.js +2 -2
  1577. package/test/mocks/timers.js +12 -9
  1578. package/test/spec/adloader_spec.js +13 -13
  1579. package/test/spec/config_spec.js +9 -3
  1580. package/test/spec/libraries/greedy/greedyPromise_spec.js +2 -2
  1581. package/test/spec/modules/1plusXRtdProvider_spec.js +2 -9
  1582. package/test/spec/modules/adgridBidAdapter_spec.js +6 -6
  1583. package/test/spec/modules/adkernelAdnBidAdapter_spec.js +127 -127
  1584. package/test/spec/modules/adkernelBidAdapter_spec.js +308 -308
  1585. package/test/spec/modules/admediaBidAdapter_spec.js +34 -34
  1586. package/test/spec/modules/adnuntiusBidAdapter_spec.js +7 -7
  1587. package/test/spec/modules/adspiritBidAdapter_spec.js +1 -1
  1588. package/test/spec/modules/adtrgtmeBidAdapter_spec.js +3 -3
  1589. package/test/spec/modules/adtrueBidAdapter_spec.js +19 -19
  1590. package/test/spec/modules/advertisingBidAdapter_spec.js +2 -2
  1591. package/test/spec/modules/bidmaticBidAdapter_spec.js +2 -2
  1592. package/test/spec/modules/datablocksBidAdapter_spec.js +115 -115
  1593. package/test/spec/modules/deepintentBidAdapter_spec.js +51 -51
  1594. package/test/spec/modules/dexertoBidAdapter_spec.js +16 -16
  1595. package/test/spec/modules/dochaseBidAdapter_spec.js +17 -17
  1596. package/test/spec/modules/dspxBidAdapter_spec.js +23 -23
  1597. package/test/spec/modules/ehealthcaresolutionsBidAdapter_spec.js +17 -17
  1598. package/test/spec/modules/enrichmentLiftMeasurement_spec.js +8 -8
  1599. package/test/spec/modules/equativBidAdapter_spec.js +1 -1
  1600. package/test/spec/modules/finativeBidAdapter_spec.js +11 -11
  1601. package/test/spec/modules/ftrackIdSystem_spec.js +16 -16
  1602. package/test/spec/modules/fwsspBidAdapter_spec.js +5 -5
  1603. package/test/spec/modules/hypelabBidAdapter_spec.js +9 -9
  1604. package/test/spec/modules/iasRtdProvider_spec.js +89 -8
  1605. package/test/spec/modules/intentIqIdSystem_spec.js +3 -3
  1606. package/test/spec/modules/invibesBidAdapter_spec.js +2 -2
  1607. package/test/spec/modules/kargoBidAdapter_spec.js +7 -7
  1608. package/test/spec/modules/lane4BidAdapter_spec.js +17 -17
  1609. package/test/spec/modules/lemmaDigitalBidAdapter_spec.js +37 -37
  1610. package/test/spec/modules/liveIntentExternalIdSystem_spec.js +5 -0
  1611. package/test/spec/modules/liveIntentIdMinimalSystem_spec.js +5 -0
  1612. package/test/spec/modules/liveIntentIdSystem_spec.js +38 -0
  1613. package/test/spec/modules/liveIntentRtdProvider_spec.js +2 -2
  1614. package/test/spec/modules/mediaeyesBidAdapter_spec.js +166 -166
  1615. package/test/spec/modules/mediagoBidAdapter_spec.js +1 -1
  1616. package/test/spec/modules/medianetBidAdapter_spec.js +1724 -1707
  1617. package/test/spec/modules/mediasquareBidAdapter_spec.js +7 -7
  1618. package/test/spec/modules/nexx360BidAdapter_spec.js +6 -6
  1619. package/test/spec/modules/nobidBidAdapter_spec.js +16 -16
  1620. package/test/spec/modules/onetagBidAdapter_spec.js +47 -47
  1621. package/test/spec/modules/openxBidAdapter_spec.js +129 -0
  1622. package/test/spec/modules/optoutBidAdapter_spec.js +1 -1
  1623. package/test/spec/modules/orbitsoftBidAdapter_spec.js +85 -85
  1624. package/test/spec/modules/oxxionAnalyticsAdapter_spec.js +1 -1
  1625. package/test/spec/modules/ozoneBidAdapter_spec.js +439 -439
  1626. package/test/spec/modules/prebidServerBidAdapter_spec.js +2 -2
  1627. package/test/spec/modules/prismaBidAdapter_spec.js +6 -6
  1628. package/test/spec/modules/pubmaticBidAdapter_spec.js +73 -3
  1629. package/test/spec/modules/pubmaticRtdProvider_spec.js +1389 -1389
  1630. package/test/spec/modules/pwbidBidAdapter_spec.js +25 -25
  1631. package/test/spec/modules/relevadRtdProvider_spec.js +1 -1
  1632. package/test/spec/modules/relevatehealthBidAdapter_spec.js +16 -16
  1633. package/test/spec/modules/richaudienceBidAdapter_spec.js +10 -10
  1634. package/test/spec/modules/rubiconBidAdapter_spec.js +7 -7
  1635. package/test/spec/modules/rumbleBidAdapter_spec.js +125 -0
  1636. package/test/spec/modules/sevioBidAdapter_spec.js +209 -0
  1637. package/test/spec/modules/smaatoBidAdapter_spec.js +30 -30
  1638. package/test/spec/modules/smarticoBidAdapter_spec.js +10 -10
  1639. package/test/spec/modules/stvBidAdapter_spec.js +32 -32
  1640. package/test/spec/modules/tapnativeBidAdapter_spec.js +17 -17
  1641. package/test/spec/modules/themoneytizerBidAdapter_spec.js +0 -6
  1642. package/test/spec/modules/ttdBidAdapter_spec.js +27 -2
  1643. package/test/spec/modules/uid2IdSystem_spec.js +3 -3
  1644. package/test/spec/modules/userId_spec.js +41 -7
  1645. package/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +1953 -154
  1646. package/test/spec/modules/yandexBidAdapter_spec.js +128 -0
  1647. package/test/spec/refererDetection_spec.js +11 -11
  1648. package/test/spec/unit/core/storageManager_spec.js +20 -1
  1649. package/test/spec/unit/core/targeting_spec.js +8 -8
  1650. package/test/spec/utils_spec.js +25 -25
@@ -1 +1 @@
1
- {"version":3,"file":"utils_spec.js","names":["getAdServerTargeting","expect","TARGETING_KEYS","utils","binarySearch","deepEqual","encodeMacroURI","memoize","sizesToSizeTuples","waitForElementToLoad","convertCamelToUnderscore","getWinDimensions","internal","assert","require","describe","obj_string","obj_number","obj_object","obj_array","obj_function","type_string","type_number","type_object","type_array","type_function","sandbox","beforeEach","sinon","createSandbox","afterEach","restore","it","equal","canAccessWindowTop","stub","returns","$sf","ext","geom","window","isSafeFrameWindow","obj","a","b","output","getBidIdParameter","parseQueryStringParameters","expectedResult","encodeURIComponent","transformAdServerTargetingObj","Object","keys","expected","SIZE","PRICE_BUCKET","AD_ID","BIDDER","target","source","c","assign","entries","in","out","forEach","_ref","t","input","to","eql","sizes","parseSizesInput","size","parseGPTSingleSizeArray","undefined","parseGPTSingleSizeArrayToRtbSize","w","h","isA","isFn","isStr","isArray","isPlainObject","isEmpty","contains","ok","callback","_map","v","k","o","createInvisibleIframe","id","height","width","hspace","vspace","marginWidth","marginHeight","scrolling","frameBorder","src","style","arr","count","key","length","spy","delayed","delayExecution","i","notCalled","called","firstCall","args","test","first","value1","deepAccess","value2","value3","value","doesNotThrow","testObj","prop","nestedObj","nestedProp","deepSetValue","notEqual","level1","level2","adUnit","mediaType","comeWithMe","notNeeded","builtObject","getDefinedParams","code","mediaTypes","video","context","renderer","render","bid","player","url","bids","bidder","params","placementId","adUnitCopy","deepClone","be","adUnits","key1","getUserConfiguredParams","var1","test1","var2","test2","parsed","parseUrl","have","property","search","foo","bar","noDecodeWholeURL","buildUrl","protocol","hostname","port","pathname","hash","decodeSearchAsString","_ref2","doc","document","implementation","createHTMLDocument","toInsert","createElement","getElementsByTagName","inserted","insertElement","firstChild","lastChild","userAgentStub","userAgent","before","navigator","get","after","isSafariBrowser","object1","propA","subPropA","object2","subPropB","resultWithoutMergeDeep","deep","resultWithMergeDeep","mergeDeep","depth0_A","depth1_A","depth2_A","depth2_B","depth3_A","depth4_A","depth1_B","object3","depth0_B","result","depth1_C","depth1_D","obj1","banner","sizeConfig","minViewPort","obj2","primitive1","primitive2","Typed","outer","checkTypes","false","Array","prototype","unitTestTempProp","true","stringOne","cyrb53Hash","not","stringTwo","element","callbacks","delay","arguments","Promise","resolve","setTimeout","then","event","dispatchEvent","Event","nowValue","Date","valueOf","val","getUnixTimestampFromNow","anotherKey","third","fourth","sub","array","convertObjectToArray","JSON","stringify","script","attrs","setScriptAttributes","dataset","second_prop","jsonObj","key2","key3","key4","safeJSONEncode","callsFake","cachedResult","CompressionStream","newCompressionStream","error","isGzipCompressionSupported","secondCall","originalCompressionStream","global","constructor","type","Error","readable","ReadableStream","start","controller","enqueue","Uint8Array","close","writable","WritableStream","data","compressedData","compressDataWithGZip","instanceOf","greaterThan","nonStringData","fn","from","mem","callCount","clear","_len","_key","join","tests","_ref3","_ref4","el","pos","clock","useFakeTimers","now","resetWinDimensionsSpy","tick","calledOnce","calledTwice"],"sourceRoot":"../../../..","sources":["test/spec/utils_spec.js"],"sourcesContent":["import {getAdServerTargeting} from 'test/fixtures/fixtures.js';\nimport {expect} from 'chai';\nimport {TARGETING_KEYS} from 'src/constants.js';\nimport * as utils from 'src/utils.js';\nimport {binarySearch, deepEqual, encodeMacroURI, memoize, sizesToSizeTuples, waitForElementToLoad} from 'src/utils.js';\nimport {convertCamelToUnderscore} from '../../libraries/appnexusUtils/anUtils.js';\nimport { getWinDimensions, internal } from '../../src/utils.js';\n\nvar assert = require('assert');\n\ndescribe('Utils', function () {\n var obj_string = 's';\n var obj_number = 1;\n var obj_object = {};\n var obj_array = [];\n var obj_function = function () {};\n\n var type_string = 'String';\n var type_number = 'Number';\n var type_object = 'Object';\n var type_array = 'Array';\n var type_function = 'Function';\n\n describe('canAccessWindowTop', function () {\n let sandbox;\n\n beforeEach(function () {\n sandbox = sinon.createSandbox();\n });\n\n afterEach(function () {\n sandbox.restore();\n });\n it('should return true if window.top is accessible', function () {\n assert.equal(utils.canAccessWindowTop(), true);\n });\n\n it('should return false if window.top is not accessible', function () {\n sandbox.stub(utils.internal, 'getWindowTop').returns(false);\n assert.equal(utils.canAccessWindowTop(), false);\n });\n });\n\n describe('isSafeFrameWindow', function () {\n // SafeFrames implementation\n // https://iabtechlab.com/wp-content/uploads/2016/03/SafeFrames_v1.1_final.pdf\n const $sf = {\n ext: {\n geom: function() {}\n }\n };\n\n afterEach(function() {\n delete window.$sf;\n })\n\n it('should return true if window.$sf is accessible', function () {\n window.$sf = $sf;\n assert.equal(utils.isSafeFrameWindow(), true);\n });\n\n it('should return false if window.$sf is missimplemented', function () {\n window.$sf = {};\n assert.equal(utils.isSafeFrameWindow(), false);\n });\n\n it('should return false if window.$sf is missing', function () {\n assert.equal(utils.isSafeFrameWindow(), false);\n });\n });\n\n describe('getBidIdParameter', function () {\n it('should return value of the key in input object', function () {\n var obj = {\n a: 'valueA',\n b: 'valueB'\n };\n var output = utils.getBidIdParameter('a', obj);\n assert.equal(output, 'valueA');\n });\n\n it('should return empty string, if the key is not existsed in the object', function () {\n var obj = {\n a: 'valueA',\n b: 'valueB'\n };\n var output = utils.getBidIdParameter('c', obj);\n assert.equal(output, '');\n });\n });\n\n describe('parseQueryStringParameters', function () {\n it('should append query string to existing using the input obj', function () {\n var obj = {\n a: 'http://example.com/?foo=bar&bar=foo',\n b: 'abc[\"def\"]'\n };\n\n var output = utils.parseQueryStringParameters(obj);\n var expectedResult = 'a=' + encodeURIComponent('http://example.com/?foo=bar&bar=foo') + '&b=' + encodeURIComponent('abc[\"def\"]');\n assert.equal(output, expectedResult);\n });\n\n it('should return an empty string, if input obj is empty', function () {\n var obj = {};\n var output = utils.parseQueryStringParameters(obj);\n assert.equal(output, '');\n });\n });\n\n describe('transformAdServerTargetingObj', function () {\n it('should append query string to existing using the input obj', function () {\n var obj = getAdServerTargeting();\n\n var output = utils.transformAdServerTargetingObj(obj[Object.keys(obj)[0]]);\n var expected = 'foobar=300x250%2C300x600%2C0x0&' + TARGETING_KEYS.SIZE + '=300x250&' + TARGETING_KEYS.PRICE_BUCKET + '=10.00&' + TARGETING_KEYS.AD_ID + '=233bcbee889d46d&' + TARGETING_KEYS.BIDDER + '=appnexus&' + TARGETING_KEYS.SIZE + '_triplelift=0x0&' + TARGETING_KEYS.PRICE_BUCKET + '_triplelift=10.00&' + TARGETING_KEYS.AD_ID + '_triplelift=222bb26f9e8bd&' + TARGETING_KEYS.BIDDER + '_triplelift=triplelift&' + TARGETING_KEYS.SIZE + '_appnexus=300x250&' + TARGETING_KEYS.PRICE_BUCKET + '_appnexus=10.00&' + TARGETING_KEYS.AD_ID + '_appnexus=233bcbee889d46d&' + TARGETING_KEYS.BIDDER + '_appnexus=appnexus&' + TARGETING_KEYS.SIZE + '_pagescience=300x250&' + TARGETING_KEYS.PRICE_BUCKET + '_pagescience=10.00&' + TARGETING_KEYS.AD_ID + '_pagescience=25bedd4813632d7&' + TARGETING_KEYS.BIDDER + '_pagescienc=pagescience&' + TARGETING_KEYS.SIZE + '_brightcom=300x250&' + TARGETING_KEYS.PRICE_BUCKET + '_brightcom=10.00&' + TARGETING_KEYS.AD_ID + '_brightcom=26e0795ab963896&' + TARGETING_KEYS.BIDDER + '_brightcom=brightcom&' + TARGETING_KEYS.SIZE + '_brealtime=300x250&' + TARGETING_KEYS.PRICE_BUCKET + '_brealtime=10.00&' + TARGETING_KEYS.AD_ID + '_brealtime=275bd666f5a5a5d&' + TARGETING_KEYS.BIDDER + '_brealtime=brealtime&' + TARGETING_KEYS.SIZE + '_pubmatic=300x250&' + TARGETING_KEYS.PRICE_BUCKET + '_pubmatic=10.00&' + TARGETING_KEYS.AD_ID + '_pubmatic=28f4039c636b6a7&' + TARGETING_KEYS.BIDDER + '_pubmatic=pubmatic&' + TARGETING_KEYS.SIZE + '_rubicon=300x600&' + TARGETING_KEYS.PRICE_BUCKET + '_rubicon=10.00&' + TARGETING_KEYS.AD_ID + '_rubicon=29019e2ab586a5a&' + TARGETING_KEYS.BIDDER + '_rubicon=rubicon';\n assert.equal(output, expected);\n });\n\n it('should return an empty string, if input obj is empty', function () {\n var obj = {};\n var output = utils.transformAdServerTargetingObj(obj);\n assert.equal(output, '');\n });\n });\n\n describe('extend', function () {\n it('should merge two input object', function () {\n var target = {\n a: '1',\n b: '2'\n };\n\n var source = {\n c: '3'\n };\n\n var expectedResult = {\n a: '1',\n b: '2',\n c: '3'\n };\n\n var output = Object.assign(target, source);\n assert.deepEqual(output, expectedResult);\n });\n\n it('should merge two input object even though target object is empty', function () {\n var target = {};\n var source = {\n c: '3'\n };\n\n var output = Object.assign(target, source);\n assert.deepEqual(output, source);\n });\n\n it('just return target object, if the source object is empty', function () {\n var target = {\n a: '1',\n b: '2'\n };\n var source = {};\n\n var output = Object.assign(target, source);\n assert.deepEqual(output, target);\n });\n });\n\n describe('sizesToSizeTuples', () => {\n Object.entries({\n 'single size, numerical': {\n in: [1, 2],\n out: [[1, 2]]\n },\n 'single size, numerical, nested': {\n in: [[1, 2]],\n out: [[1, 2]]\n },\n 'multiple sizes, numerical': {\n in: [[1, 2], [3, 4]],\n out: [[1, 2], [3, 4]]\n },\n 'single size, string': {\n in: '1x2',\n out: [[1, 2]]\n },\n 'multiple sizes, string': {\n in: '1x2, 4x3',\n out: [[1, 2], [4, 3]]\n },\n 'incorrect size, numerical': {\n in: [1],\n out: []\n },\n 'incorrect size, string': {\n in: '1x',\n out: []\n }\n }).forEach(([t, {in: input, out}]) => {\n it(`can parse ${t}`, () => {\n expect(sizesToSizeTuples(input)).to.eql(out);\n })\n })\n })\n\n describe('parseSizesInput', function () {\n it('should return query string using multi size array', function () {\n var sizes = [[728, 90], [970, 90]];\n var output = utils.parseSizesInput(sizes);\n assert.deepEqual(output, ['728x90', '970x90']);\n });\n\n it('should return query string using single size array', function () {\n var sizes = [728, 90];\n var output = utils.parseSizesInput(sizes);\n assert.deepEqual(output, ['728x90']);\n });\n\n it('should return query string using string input', function () {\n var sizes = '300x250,970x90';\n var output = utils.parseSizesInput(sizes);\n assert.deepEqual(output, ['300x250', '970x90']);\n });\n\n it('return undefined if input array is empty', function () {\n var sizes = [];\n var output = utils.parseSizesInput(sizes);\n assert.deepEqual(output, []);\n });\n });\n\n describe('parseGPTSingleSizeArray', function () {\n it('should return size string with input single size array', function () {\n var size = [300, 250];\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, '300x250');\n });\n\n it('should return size string with input single size array', function () {\n var size = ['300', '250'];\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, '300x250');\n });\n\n it('return undefined using string input', function () {\n var size = '1';\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined using number input', function () {\n var size = 1;\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined using one length single array', function () {\n var size = [300];\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined if the input is empty', function () {\n var size = '';\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined if the input is not a number', function () {\n var size = ['foo', 'bar'];\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined if the input is not a number 2', function () {\n var size = ['foo', 300];\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, undefined);\n });\n });\n\n describe('parseGPTSingleSizeArrayToRtbSize', function () {\n it('should return size string with input single size array', function () {\n var size = [300, 250];\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.deepEqual(output, {w: 300, h: 250});\n });\n\n it('should return size string with input single size array', function () {\n var size = ['300', '250'];\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.deepEqual(output, {w: 300, h: 250});\n });\n\n it('return undefined using string input', function () {\n var size = '1';\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined using number input', function () {\n var size = 1;\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined using one length single array', function () {\n var size = [300];\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined if the input is empty', function () {\n var size = '';\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined if the input is not a number', function () {\n var size = ['foo', 'bar'];\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined if the input is not a number 2', function () {\n var size = [300, 'foo'];\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.equal(output, undefined);\n });\n });\n\n describe('isA', function () {\n it('should return true with string object', function () {\n var output = utils.isA(obj_string, type_string);\n assert.deepEqual(output, true);\n });\n\n it('should return false with object', function () {\n var output = utils.isA(obj_object, type_string);\n assert.deepEqual(output, false);\n });\n\n it('should return true with object', function () {\n var output = utils.isA(obj_object, type_object);\n assert.deepEqual(output, true);\n });\n\n it('should return false with array object', function () {\n var output = utils.isA(obj_array, type_object);\n assert.deepEqual(output, false);\n });\n\n it('should return true with array object', function () {\n var output = utils.isA(obj_array, type_array);\n assert.deepEqual(output, true);\n });\n\n it('should return false with array object', function () {\n var output = utils.isA(obj_array, type_function);\n assert.deepEqual(output, false);\n });\n\n it('should return true with function', function () {\n var output = utils.isA(obj_function, type_function);\n assert.deepEqual(output, true);\n });\n\n it('should return false with number', function () {\n var output = utils.isA(obj_function, type_number);\n assert.deepEqual(output, false);\n });\n\n it('should return true with number', function () {\n var output = utils.isA(obj_number, type_number);\n assert.deepEqual(output, true);\n });\n });\n\n describe('isFn', function () {\n it('should return true with input function', function () {\n var output = utils.isFn(obj_function);\n assert.deepEqual(output, true);\n });\n\n it('should return false with input string', function () {\n var output = utils.isFn(obj_string);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input number', function () {\n var output = utils.isFn(obj_number);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input Array', function () {\n var output = utils.isFn(obj_array);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input object', function () {\n var output = utils.isFn(obj_object);\n assert.deepEqual(output, false);\n });\n });\n\n describe('isStr', function () {\n it('should return true with input string', function () {\n var output = utils.isStr(obj_string);\n assert.deepEqual(output, true);\n });\n\n it('should return false with input number', function () {\n var output = utils.isStr(obj_number);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input object', function () {\n var output = utils.isStr(obj_object);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input array', function () {\n var output = utils.isStr(obj_array);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input function', function () {\n var output = utils.isStr(obj_function);\n assert.deepEqual(output, false);\n });\n });\n\n describe('isArray', function () {\n it('should return false with input string', function () {\n var output = utils.isArray(obj_string);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input number', function () {\n var output = utils.isArray(obj_number);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input object', function () {\n var output = utils.isArray(obj_object);\n assert.deepEqual(output, false);\n });\n\n it('should return true with input array', function () {\n var output = utils.isArray(obj_array);\n assert.deepEqual(output, true);\n });\n\n it('should return false with input function', function () {\n var output = utils.isArray(obj_function);\n assert.deepEqual(output, false);\n });\n });\n\n describe('isPlainObject', function () {\n it('should return false with input string', function () {\n var output = utils.isPlainObject(obj_string);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input number', function () {\n var output = utils.isPlainObject(obj_number);\n assert.deepEqual(output, false);\n });\n\n it('should return true with input object', function () {\n var output = utils.isPlainObject(obj_object);\n assert.deepEqual(output, true);\n });\n\n it('should return false with input array', function () {\n var output = utils.isPlainObject(obj_array);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input function', function () {\n var output = utils.isPlainObject(obj_function);\n assert.deepEqual(output, false);\n });\n });\n\n describe('isEmpty', function () {\n it('should return true with empty object', function () {\n var output = utils.isEmpty(obj_object);\n assert.deepEqual(output, true);\n });\n\n it('should return false with non-empty object', function () {\n var obj = { a: 'b' };\n var output = utils.isEmpty(obj);\n assert.deepEqual(output, false);\n });\n\n it('should return false with null', function () {\n var obj = null;\n var output = utils.isEmpty(obj);\n assert.deepEqual(output, true);\n });\n });\n\n describe('contains', function () {\n it('should return true if the input string contains in the input obj', function () {\n var output = utils.contains('123', '1');\n assert.deepEqual(output, true);\n });\n\n it('should return false if the input string do not contain in the input obj', function () {\n var output = utils.contains('234', '1');\n assert.deepEqual(output, false);\n });\n\n it('should return false if the input string is empty', function () {\n var output = utils.contains();\n assert.ok(!output, 'an empty string returns false');\n });\n });\n\n describe('_map', function () {\n it('return empty array when input object is empty', function () {\n var input = {};\n var callback = function () {};\n\n var output = utils._map(input, callback);\n assert.deepEqual(output, []);\n });\n\n it('return value array with vaild input object', function () {\n var input = { a: 'A', b: 'B' };\n var callback = function (v) { return v; };\n\n var output = utils._map(input, callback);\n assert.deepEqual(output, ['A', 'B']);\n });\n\n it('return value array with vaild input object_callback func changed 1', function () {\n var input = { a: 'A', b: 'B' };\n var callback = function (v, k) { return v + k; };\n\n var output = utils._map(input, callback);\n assert.deepEqual(output, ['Aa', 'Bb']);\n });\n\n it('return value array with vaild input object_callback func changed 2', function () {\n var input = { a: 'A', b: 'B' };\n var callback = function (v, k, o) { return o; };\n\n var output = utils._map(input, callback);\n assert.deepEqual(output, [input, input]);\n });\n });\n\n describe('createInvisibleIframe', function () {\n var output = utils.createInvisibleIframe();\n\n it('return iframe - id', function () {\n assert.ok(output.id);\n });\n\n it('return iframe - height', function () {\n assert.deepEqual(output.height, 0);\n });\n\n it('return iframe - width', function () {\n assert.deepEqual(output.width, 0);\n });\n\n it('return iframe - hspace', function () {\n assert.deepEqual(output.hspace, '0');\n });\n\n it('return iframe - vspace', function () {\n assert.deepEqual(output.vspace, '0');\n });\n\n it('return iframe - marginWidth', function () {\n assert.deepEqual(output.marginWidth, '0');\n });\n\n it('return iframe - marginHeight', function () {\n assert.deepEqual(output.marginHeight, '0');\n });\n\n it('return iframe - scrolling', function () {\n assert.deepEqual(output.scrolling, 'no');\n });\n\n it('return iframe - frameBorder', function () {\n assert.deepEqual(output.frameBorder, '0');\n });\n\n it('return iframe - src', function () {\n assert.deepEqual(output.src, 'about:blank');\n });\n\n it('return iframe - style', function () {\n assert.ok(output.style);\n });\n });\n\n describe('polyfill test', function () {\n it('should not add polyfill to array', function() {\n var arr = ['hello', 'world'];\n var count = 0;\n for (var key in arr) {\n count++;\n }\n assert.equal(arr.length, count, 'Polyfill test fails');\n });\n });\n\n describe('delayExecution', function () {\n it('should execute the core function after the correct number of calls', function () {\n const callback = sinon.spy();\n const delayed = utils.delayExecution(callback, 5);\n for (let i = 0; i < 4; i++) {\n delayed();\n }\n assert(callback.notCalled);\n delayed(3);\n assert(callback.called)\n assert.equal(callback.firstCall.args[0], 3);\n });\n });\n\n describe('deepAccess', function() {\n var obj = {\n 1: 2,\n test: {\n first: 11\n }\n };\n\n it('should allow deep access of object properties', function() {\n var value1 = utils.deepAccess(obj, 'test');\n assert.deepEqual(value1, obj.test);\n\n var value2 = utils.deepAccess(obj, 'test.first');\n assert.equal(value2, 11);\n\n var value3 = utils.deepAccess(obj, '1');\n assert.equal(value3, 2);\n });\n\n it('should allow safe access (returning undefined for missing properties and not throwing exceptions)', function() {\n var value;\n\n assert.doesNotThrow(function() {\n value = utils.deepAccess(obj, 'test.second.third');\n });\n\n assert.equal(value, undefined);\n });\n });\n\n describe('deepSetValue', function() {\n it('should set existing properties at various depths', function() {\n const testObj = {\n prop: 'value',\n nestedObj: {\n nestedProp: 'nestedValue'\n }\n };\n utils.deepSetValue(testObj, 'prop', 'newValue');\n assert.equal(testObj.prop, 'newValue');\n utils.deepSetValue(testObj, 'nestedObj.nestedProp', 'newNestedValue');\n assert.equal(testObj.nestedObj.nestedProp, 'newNestedValue');\n });\n\n it('should create object levels between top and bottom of given path if they do not exist', function() {\n const testObj = {};\n utils.deepSetValue(testObj, 'level1.level2', 'value');\n assert.notEqual(testObj.level1, undefined);\n assert.notEqual(testObj.level1.level2, undefined);\n assert.equal(testObj.level1.level2, 'value');\n });\n });\n\n describe('getDefinedParams', function () {\n it('builds an object consisting of defined params', function () {\n const adUnit = {\n mediaType: 'video',\n comeWithMe: 'ifuwant2live',\n notNeeded: 'do not include',\n };\n\n const builtObject = utils.getDefinedParams(adUnit, [\n 'mediaType', 'comeWithMe'\n ]);\n\n assert.deepEqual(builtObject, {\n mediaType: 'video',\n comeWithMe: 'ifuwant2live',\n });\n });\n });\n\n describe('deepClone', function () {\n it('deep copies objects', function () {\n const adUnit = [{\n code: 'swan',\n mediaTypes: {video: {context: 'outstream'}},\n renderer: {\n render: bid => player.render(bid),\n url: '/video/renderer.js'\n },\n bids: [{\n bidder: 'dharmaInitiative',\n params: { placementId: '481516', }\n }],\n }];\n\n const adUnitCopy = utils.deepClone(adUnit);\n expect(adUnitCopy[0].renderer.url).to.be.a('string');\n expect(adUnitCopy[0].renderer.render).to.be.a('function');\n });\n });\n\n describe('getUserConfiguredParams', function () {\n const adUnits = [{\n code: 'adUnit1',\n bids: [{\n bidder: 'bidder1',\n params: {\n key1: 'value1'\n }\n }, {\n bidder: 'bidder2'\n }]\n }];\n\n it('should return params configured', function () {\n const output = utils.getUserConfiguredParams(adUnits, 'adUnit1', 'bidder1');\n const expected = [{\n key1: 'value1'\n }];\n assert.deepEqual(output, expected);\n });\n\n it('should return array containting empty object, if bidder present and no params are configured', function () {\n const output = utils.getUserConfiguredParams(adUnits, 'adUnit1', 'bidder2');\n const expected = [{}];\n assert.deepEqual(output, expected);\n });\n\n it('should return empty array, if bidder is not present', function () {\n const output = utils.getUserConfiguredParams(adUnits, 'adUnit1', 'bidder3');\n const expected = [];\n assert.deepEqual(output, expected);\n });\n\n it('should return empty array, if adUnit is not present', function () {\n const output = utils.getUserConfiguredParams(adUnits, 'adUnit2', 'bidder3');\n const expected = [];\n assert.deepEqual(output, expected);\n });\n });\n\n describe('convertCamelToUnderscore', function () {\n it('returns converted string value using underscore syntax instead of camelCase', function () {\n const var1 = 'placementIdTest';\n const test1 = convertCamelToUnderscore(var1);\n expect(test1).to.equal('placement_id_test');\n\n const var2 = 'my_test_value';\n const test2 = convertCamelToUnderscore(var2);\n expect(test2).to.equal(var2);\n });\n });\n\n describe('URL helpers', function () {\n describe('parseUrl()', function () {\n let parsed;\n\n beforeEach(function () {\n parsed = utils.parseUrl('http://example.com:3000/pathname/?search=test&foo=bar&bar=foo%26foo%3Dxxx#hash');\n });\n\n it('extracts the protocol', function () {\n expect(parsed).to.have.property('protocol', 'http');\n });\n\n it('extracts the hostname', function () {\n expect(parsed).to.have.property('hostname', 'example.com');\n });\n\n it('extracts the port', function () {\n expect(parsed).to.have.property('port', 3000);\n });\n\n it('extracts the pathname', function () {\n expect(parsed).to.have.property('pathname', '/pathname/');\n });\n\n it('extracts the search query', function () {\n expect(parsed).to.have.property('search');\n expect(parsed.search).to.eql({\n foo: 'xxx',\n search: 'test',\n bar: 'foo',\n });\n });\n\n it('extracts the hash', function () {\n expect(parsed).to.have.property('hash', 'hash');\n });\n\n it('extracts the host', function () {\n expect(parsed).to.have.property('host', 'example.com:3000');\n });\n });\n\n describe('parseUrl(url, {noDecodeWholeURL: true})', function () {\n let parsed;\n\n beforeEach(function () {\n parsed = utils.parseUrl('http://example.com:3000/pathname/?search=test&foo=bar&bar=foo%26foo%3Dxxx#hash', {noDecodeWholeURL: true});\n });\n\n it('extracts the search query', function () {\n expect(parsed).to.have.property('search');\n expect(parsed.search).to.eql({\n foo: 'bar',\n search: 'test',\n bar: 'foo%26foo%3Dxxx',\n });\n });\n });\n\n describe('buildUrl()', function () {\n it('formats an object in to a URL', function () {\n expect(utils.buildUrl({\n protocol: 'http',\n hostname: 'example.com',\n port: 3000,\n pathname: '/pathname/',\n search: {foo: 'bar', search: 'test', bar: 'foo%26foo%3Dxxx'},\n hash: 'hash'\n })).to.equal('http://example.com:3000/pathname/?foo=bar&search=test&bar=foo%26foo%3Dxxx#hash');\n });\n\n it('will use defaults for missing properties', function () {\n expect(utils.buildUrl({\n hostname: 'example.com'\n })).to.equal('http://example.com');\n });\n });\n\n describe('parseUrl(url, {decodeSearchAsString: true})', function () {\n let parsed;\n\n beforeEach(function () {\n parsed = utils.parseUrl('http://example.com:3000/pathname/?search=test&foo=bar&bar=foo%26foo%3Dxxx#hash', {decodeSearchAsString: true});\n });\n\n it('extracts the search query', function () {\n expect(parsed).to.have.property('search');\n expect(parsed.search).to.equal('?search=test&foo=bar&bar=foo&foo=xxx');\n });\n });\n\n describe('encodeMacroURI', () => {\n [\n ['https://www.example.com', 'https://www.example.com'],\n ['https://www.example/${MACRO}', 'https://www.example/${MACRO}'],\n ['http://www.example/è', `http://www.example/${encodeURIComponent('è')}`],\n ['https://www.${MACRO_1}/${MACRO_1}/${MACRO_2}è', 'https://www.${MACRO_1}/${MACRO_1}/${MACRO_2}' + encodeURIComponent('è')],\n ['http://${MACRO}${MACRO}/${MACRO}', 'http://${MACRO}${MACRO}/${MACRO}'],\n ['{MACRO}${MACRO}', `${encodeURIComponent('{MACRO}')}\\${MACRO}`],\n ['https://www.example.com?p=${AUCTION_PRICE}', 'https://www.example.com?p=${AUCTION_PRICE}']\n ].forEach(([input, expected]) => {\n it(`can encode ${input} -> ${expected}`, () => {\n expect(encodeMacroURI(input)).to.eql(expected);\n })\n })\n })\n });\n\n describe('insertElement', function () {\n let doc;\n\n beforeEach(function () {\n doc = document.implementation.createHTMLDocument('insertElementTest');\n });\n\n it('returns a node at the top of the target by default', function () {\n const toInsert = doc.createElement('div');\n const target = doc.getElementsByTagName('body')[0];\n const inserted = utils.insertElement(toInsert, doc, 'body');\n expect(inserted).to.equal(target.firstChild);\n });\n\n it('returns a node at bottom of target if 4th argument is true', function () {\n const toInsert = doc.createElement('div');\n const target = doc.getElementsByTagName('html')[0];\n const inserted = utils.insertElement(toInsert, doc, 'html', true);\n expect(inserted).to.equal(target.lastChild);\n });\n\n it('returns a node at top of the head if no target is given', function () {\n const toInsert = doc.createElement('div');\n const target = doc.getElementsByTagName('head')[0];\n const inserted = utils.insertElement(toInsert, doc);\n expect(inserted).to.equal(target.firstChild);\n });\n });\n\n describe('isSafariBrowser', function () {\n let userAgentStub;\n let userAgent;\n\n before(function () {\n userAgentStub = sinon.stub(navigator, 'userAgent').get(function () {\n return userAgent;\n });\n });\n\n after(function () {\n userAgentStub.restore();\n });\n\n it('properly detects safari', function () {\n userAgent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/536.25 (KHTML, like Gecko) Version/6.0 Safari/536.25';\n expect(utils.isSafariBrowser()).to.equal(true);\n });\n it('does not flag Chrome on MacOS', function () {\n userAgent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36';\n expect(utils.isSafariBrowser()).to.equal(false);\n });\n it('does not flag Chrome iOS', function () {\n userAgent = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/80.0.3987.95 Mobile/15E148 Safari/604.1';\n expect(utils.isSafariBrowser()).to.equal(false);\n });\n it('does not flag Firefox iOS', function () {\n userAgent = 'Mozilla/5.0 (iPhone; CPU OS 13_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) FxiOS/23.0 Mobile/15E148 Safari/605.1.15';\n expect(utils.isSafariBrowser()).to.equal(false);\n });\n it('does not flag Windows Edge', function () {\n userAgent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.74 Safari/537.36 Edg/79.0.309.43';\n expect(utils.isSafariBrowser()).to.equal(false);\n });\n });\n\n describe('mergeDeep', function() {\n it('properly merge objects that share same property names', function() {\n const object1 = {\n propA: {\n subPropA: 'abc'\n }\n };\n const object2 = {\n propA: {\n subPropB: 'def'\n }\n };\n\n const resultWithoutMergeDeep = Object.assign({}, object1, object2);\n expect(resultWithoutMergeDeep).to.deep.equal({\n propA: {\n subPropB: 'def'\n }\n });\n\n const resultWithMergeDeep = utils.mergeDeep({}, object1, object2);\n expect(resultWithMergeDeep).to.deep.equal({\n propA: {\n subPropA: 'abc',\n subPropB: 'def'\n }\n });\n });\n\n it('properly merge objects that have different depths', function() {\n const object1 = {\n depth0_A: {\n depth1_A: {\n depth2_A: 123\n }\n }\n };\n const object2 = {\n depth0_A: {\n depth1_A: {\n depth2_B: {\n depth3_A: {\n depth4_A: 'def'\n }\n }\n },\n depth1_B: 'abc'\n }\n };\n const object3 = {\n depth0_B: 456\n };\n\n const result = utils.mergeDeep({}, object1, object2, object3);\n expect(result).to.deep.equal({\n depth0_A: {\n depth1_A: {\n depth2_A: 123,\n depth2_B: {\n depth3_A: {\n depth4_A: 'def'\n }\n }\n },\n depth1_B: 'abc'\n },\n depth0_B: 456\n });\n });\n\n it('properly merge objects with various property types', function() {\n const object1 = {\n depth0_A: {\n depth1_A: ['a', 'b', 'c'],\n depth1_B: 'abc',\n depth1_C: 123\n }\n };\n const object2 = {\n depth0_A: {\n depth1_A: ['d', 'e', 'f'],\n depth1_D: true,\n }\n };\n\n const result = utils.mergeDeep({}, object1, object2);\n expect(result).to.deep.equal({\n depth0_A: {\n depth1_A: ['a', 'b', 'c', 'd', 'e', 'f'],\n depth1_B: 'abc',\n depth1_C: 123,\n depth1_D: true,\n }\n });\n });\n });\n\n describe('deepEqual', function() {\n it('should return \"true\" if comparing the same object', function() {\n const obj1 = {\n banner: {\n sizeConfig: [\n { minViewPort: [0, 0], sizes: [] },\n { minViewPort: [1000, 0], sizes: [[1000, 300], [1000, 90], [970, 250], [970, 90], [728, 90]] },\n ],\n },\n };\n const obj2 = obj1;\n expect(utils.deepEqual(obj1, obj2)).to.equal(true);\n });\n it('should return \"true\" if two deeply nested objects are equal', function() {\n const obj1 = {\n banner: {\n sizeConfig: [\n { minViewPort: [0, 0], sizes: [] },\n { minViewPort: [1000, 0], sizes: [[1000, 300], [1000, 90], [970, 250], [970, 90], [728, 90]] },\n ],\n },\n };\n const obj2 = {\n banner: {\n sizeConfig: [\n { minViewPort: [0, 0], sizes: [] },\n { minViewPort: [1000, 0], sizes: [[1000, 300], [1000, 90], [970, 250], [970, 90], [728, 90]] },\n ],\n },\n };\n expect(utils.deepEqual(obj1, obj2)).to.equal(true);\n });\n it('should return \"true\" if comparting the same primitive values', function() {\n const primitive1 = 'Prebid.js';\n const primitive2 = 'Prebid.js';\n expect(utils.deepEqual(primitive1, primitive2)).to.equal(true);\n });\n it('should return \"false\" if comparing two different primitive values', function() {\n const primitive1 = 12;\n const primitive2 = 123;\n expect(utils.deepEqual(primitive1, primitive2)).to.equal(false);\n });\n it('should return \"false\" if comparing two different deeply nested objects', function() {\n const obj1 = {\n banner: {\n sizeConfig: [\n { minViewPort: [0, 0], sizes: [] },\n { minViewPort: [1000, 0], sizes: [[1000, 300], [1000, 90], [970, 250], [970, 90], [728, 90]] },\n ],\n },\n };\n const obj2 = {\n banner: {\n sizeConfig: [\n { minViewPort: [0, 0], sizes: [] },\n { minViewPort: [1000, 0], sizes: [[1000, 300], [728, 90]] },\n ],\n },\n }\n expect(utils.deepEqual(obj1, obj2)).to.equal(false);\n });\n it('should check types if {matchTypes: true}', () => {\n function Typed(obj) {\n Object.assign(this, obj);\n }\n const obj = {key: 'value'};\n expect(deepEqual({outer: obj}, {outer: new Typed(obj)}, {checkTypes: true})).to.be.false;\n });\n it('should work when adding properties to the prototype of Array', () => {\n after(function () {\n delete Array.prototype.unitTestTempProp;\n });\n // eslint-disable-next-line no-extend-native\n Array.prototype.unitTestTempProp = 'testing';\n expect(deepEqual([], [])).to.be.true;\n });\n\n describe('cyrb53Hash', function() {\n it('should return the same hash for the same string', function() {\n const stringOne = 'string1';\n expect(utils.cyrb53Hash(stringOne)).to.equal(utils.cyrb53Hash(stringOne));\n });\n it('should return a different hash for the same string with different seeds', function() {\n const stringOne = 'string1';\n expect(utils.cyrb53Hash(stringOne, 1)).to.not.equal(utils.cyrb53Hash(stringOne, 2));\n });\n it('should return a different hash for different strings with the same seed', function() {\n const stringOne = 'string1';\n const stringTwo = 'string2';\n expect(utils.cyrb53Hash(stringOne)).to.not.equal(utils.cyrb53Hash(stringTwo));\n });\n it('should return a string value, not a number', function() {\n const stringOne = 'string1';\n expect(typeof utils.cyrb53Hash(stringOne)).to.equal('string');\n });\n });\n });\n\n describe('waitForElementToLoad', () => {\n let element;\n let callbacks;\n\n function callback() {\n callbacks++;\n }\n\n function delay(delay = 0) {\n return new Promise((resolve) => {\n window.setTimeout(resolve, delay);\n })\n }\n\n beforeEach(() => {\n callbacks = 0;\n element = window.document.createElement('div');\n });\n\n it('should respect timeout if set', () => {\n waitForElementToLoad(element, 50).then(callback);\n return delay(60).then(() => {\n expect(callbacks).to.equal(1);\n });\n });\n\n ['load', 'error'].forEach((event) => {\n it(`should complete on '${event} event'`, () => {\n waitForElementToLoad(element).then(callback);\n element.dispatchEvent(new Event(event));\n return delay().then(() => {\n expect(callbacks).to.equal(1);\n })\n });\n });\n });\n\n describe('getUnixTimestampFromNow', () => {\n it('correctly obtains unix timestamp', () => {\n const nowValue = new Date('2024-01-01').valueOf();\n sinon.stub(Date, 'now').returns(nowValue);\n let val = utils.getUnixTimestampFromNow();\n expect(val).equal(nowValue);\n\n val = utils.getUnixTimestampFromNow(1);\n expect(val).equal(nowValue + (1000 * 60 * 60 * 24));\n\n val = utils.getUnixTimestampFromNow(1, 'd');\n expect(val).equal(nowValue + (1000 * 60 * 60 * 24));\n\n val = utils.getUnixTimestampFromNow(1, 'm');\n expect(val).equal(nowValue + (1000 * 60 * 60 * 24 / 1440));\n\n val = utils.getUnixTimestampFromNow(2, 'm');\n expect(val).equal(nowValue + (1000 * 60 * 60 * 24 * 2 / 1440));\n\n // any value that isn't 'm' or 'd' gets treated as Date.now();\n val = utils.getUnixTimestampFromNow(10, 'o');\n expect(val).equal(nowValue);\n });\n });\n\n describe('convertObjectToArray', () => {\n it('correctly converts object to array', () => {\n const obj = {key: 1, anotherKey: 'fred', third: ['fred'], fourth: {sub: {obj: 'test'}}};\n const array = utils.convertObjectToArray(obj);\n\n expect(JSON.stringify(array[0])).equal(JSON.stringify({'key': 1}))\n expect(JSON.stringify(array[1])).equal(JSON.stringify({'anotherKey': 'fred'}))\n expect(JSON.stringify(array[2])).equal(JSON.stringify({'third': ['fred']}))\n expect(JSON.stringify(array[3])).equal(JSON.stringify({'fourth': {sub: {obj: 'test'}}}));\n expect(array.length).to.equal(4);\n });\n });\n\n describe('setScriptAttributes', () => {\n it('correctly adds attributes from an object', () => {\n const script = document.createElement('script');\n const attrs = {\n 'data-first_prop': '1',\n 'data-second_prop': 'b',\n 'id': 'newId'\n };\n script.id = 'oldId';\n utils.setScriptAttributes(script, attrs);\n expect(script.dataset['first_prop']).to.equal('1');\n expect(script.dataset.second_prop).to.equal('b');\n expect(script.id).to.equal('newId');\n });\n });\n\n describe('safeJSONParse', () => {\n it('correctly encodes valid input', () => {\n const jsonObj = {\n key1: 'val1',\n key2: {\n key3: 100,\n key4: true\n }\n };\n const result = utils.safeJSONEncode(jsonObj);\n expect(result).to.equal(`{\"key1\":\"val1\",\"key2\":{\"key3\":100,\"key4\":true}}`);\n });\n it('return empty string for stringify errors', () => {\n const jsonObj = {k: 2n};\n const result = utils.safeJSONEncode(jsonObj);\n expect(result).to.equal('');\n });\n });\n\n describe('isGzipCompressionSupported', () => {\n let sandbox;\n\n beforeEach(() => {\n sandbox = sinon.createSandbox();\n sandbox.stub(utils, 'isGzipCompressionSupported').callsFake((() => {\n let cachedResult;\n return function () {\n if (cachedResult !== undefined) {\n return cachedResult;\n }\n try {\n if (typeof window.CompressionStream === 'undefined') {\n cachedResult = false;\n } else {\n const newCompressionStream = new window.CompressionStream('gzip');\n cachedResult = true;\n }\n } catch (error) {\n cachedResult = false;\n }\n return cachedResult;\n };\n })());\n });\n\n afterEach(() => {\n sandbox.restore();\n });\n\n it('should return true if CompressionStream is available', () => {\n window.CompressionStream = class {}; // Mock valid CompressionStream\n expect(utils.isGzipCompressionSupported()).to.be.true;\n });\n\n it('should return false if CompressionStream is undefined', () => {\n delete window.CompressionStream; // Simulate an unsupported environment\n expect(utils.isGzipCompressionSupported()).to.be.false;\n });\n\n it('should cache the result after first execution', () => {\n window.CompressionStream = class {}; // Mock valid CompressionStream\n\n const firstCall = utils.isGzipCompressionSupported();\n const secondCall = utils.isGzipCompressionSupported();\n\n expect(firstCall).to.equal(secondCall); // Ensure memoization is working\n });\n });\n\n describe('compressDataWithGZip', () => {\n let originalCompressionStream;\n\n beforeEach(() => {\n originalCompressionStream = global.CompressionStream;\n global.CompressionStream = class {\n constructor(type) {\n if (type !== 'gzip') {\n throw new Error('Unsupported compression type');\n }\n this.readable = new ReadableStream({\n start(controller) {\n controller.enqueue(new Uint8Array([1, 2, 3, 4]));\n controller.close();\n }\n });\n this.writable = new WritableStream();\n }\n };\n });\n\n afterEach(() => {\n if (originalCompressionStream) {\n global.CompressionStream = originalCompressionStream;\n } else {\n delete global.CompressionStream;\n }\n });\n\n it('should compress data correctly when CompressionStream is available', async () => {\n const data = JSON.stringify({ test: 'data' });\n const compressedData = await utils.compressDataWithGZip(data);\n\n expect(compressedData).to.be.instanceOf(Uint8Array);\n expect(compressedData.length).to.be.greaterThan(0);\n expect(compressedData).to.deep.equal(new Uint8Array([1, 2, 3, 4]));\n });\n\n it('should handle non-string input by stringifying it', async () => {\n const nonStringData = { test: 'data' };\n const compressedData = await utils.compressDataWithGZip(nonStringData);\n\n expect(compressedData).to.be.instanceOf(Uint8Array);\n expect(compressedData.length).to.be.greaterThan(0);\n expect(compressedData).to.deep.equal(new Uint8Array([1, 2, 3, 4]));\n });\n });\n});\n\ndescribe('memoize', () => {\n let fn;\n\n beforeEach(() => {\n fn = sinon.stub().callsFake(function() {\n return Array.from(arguments);\n });\n });\n\n it('delegates to fn', () => {\n expect(memoize(fn)('one', 'two')).to.eql(['one', 'two']);\n });\n\n it('caches result after first call, if first argument is the same', () => {\n const mem = memoize(fn);\n mem('one', 'two');\n expect(mem('one', 'three')).to.eql(['one', 'two']);\n expect(fn.callCount).to.equal(1);\n });\n\n it('delegates again when the first argument changes', () => {\n const mem = memoize(fn);\n mem('one', 'two');\n expect(mem('two', 'one')).to.eql(['two', 'one']);\n expect(fn.callCount).to.eql(2);\n });\n\n it('can clear cache with .clear', () => {\n const mem = memoize(fn);\n mem('arg');\n mem.clear();\n expect(mem('arg')).to.eql(['arg']);\n expect(fn.callCount).to.equal(2);\n });\n\n it('allows setting cache keys', () => {\n const mem = memoize(fn, (...args) => args.join(','))\n mem('one', 'two');\n mem('one', 'three');\n expect(mem('one', 'three')).to.eql(['one', 'three']);\n expect(fn.callCount).to.eql(2);\n });\n\n describe('binarySearch', () => {\n [\n {\n arr: [],\n tests: [\n ['any', 0]\n ]\n },\n {\n arr: [10],\n tests: [\n [5, 0],\n [10, 0],\n [20, 1],\n ],\n },\n {\n arr: [10, 20, 30, 30, 40],\n tests: [\n [5, 0],\n [15, 1],\n [10, 0],\n [30, 2],\n [35, 4],\n [40, 4],\n [100, 5]\n ]\n }\n ].forEach(({arr, tests}) => {\n describe(`on ${arr}`, () => {\n tests.forEach(([el, pos]) => {\n it(`finds index for ${el} => ${pos}`, () => {\n expect(binarySearch(arr, el)).to.equal(pos);\n });\n });\n });\n })\n })\n})\n\ndescribe('getWinDimensions', () => {\n let clock;\n\n beforeEach(() => {\n clock = sinon.useFakeTimers({ now: new Date() });\n });\n\n afterEach(() => {\n clock.restore();\n });\n\n it('should invoke resetWinDimensions once per 20ms', () => {\n const resetWinDimensionsSpy = sinon.spy(internal, 'resetWinDimensions');\n getWinDimensions();\n clock.tick(1);\n getWinDimensions();\n clock.tick(1);\n getWinDimensions();\n clock.tick(1);\n getWinDimensions();\n sinon.assert.calledOnce(resetWinDimensionsSpy);\n clock.tick(18);\n getWinDimensions();\n sinon.assert.calledTwice(resetWinDimensionsSpy);\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"utils_spec.js","names":["getAdServerTargeting","expect","TARGETING_KEYS","utils","binarySearch","deepEqual","encodeMacroURI","memoize","sizesToSizeTuples","waitForElementToLoad","convertCamelToUnderscore","getWinDimensions","internal","assert","require","describe","obj_string","obj_number","obj_object","obj_array","obj_function","type_string","type_number","type_object","type_array","type_function","sandbox","beforeEach","sinon","createSandbox","afterEach","restore","it","equal","canAccessWindowTop","stub","returns","$sf","ext","geom","window","isSafeFrameWindow","obj","a","b","output","getBidIdParameter","parseQueryStringParameters","expectedResult","encodeURIComponent","transformAdServerTargetingObj","Object","keys","expected","SIZE","PRICE_BUCKET","AD_ID","BIDDER","target","source","c","assign","entries","in","out","forEach","_ref","t","input","to","eql","sizes","parseSizesInput","size","parseGPTSingleSizeArray","undefined","parseGPTSingleSizeArrayToRtbSize","w","h","isA","isFn","isStr","isArray","isPlainObject","isEmpty","contains","ok","callback","_map","v","k","o","createInvisibleIframe","id","height","width","hspace","vspace","marginWidth","marginHeight","scrolling","frameBorder","src","style","arr","count","key","length","spy","delayed","delayExecution","i","notCalled","called","firstCall","args","test","first","value1","deepAccess","value2","value3","value","doesNotThrow","testObj","prop","nestedObj","nestedProp","deepSetValue","notEqual","level1","level2","adUnit","mediaType","comeWithMe","notNeeded","builtObject","getDefinedParams","code","mediaTypes","video","context","renderer","render","bid","player","url","bids","bidder","params","placementId","adUnitCopy","deepClone","be","adUnits","key1","getUserConfiguredParams","var1","test1","var2","test2","parsed","parseUrl","have","property","search","foo","bar","noDecodeWholeURL","buildUrl","protocol","hostname","port","pathname","hash","decodeSearchAsString","_ref2","doc","document","implementation","createHTMLDocument","toInsert","createElement","getElementsByTagName","inserted","insertElement","firstChild","lastChild","userAgentStub","userAgent","before","navigator","get","after","isSafariBrowser","object1","propA","subPropA","object2","subPropB","resultWithoutMergeDeep","deep","resultWithMergeDeep","mergeDeep","depth0_A","depth1_A","depth2_A","depth2_B","depth3_A","depth4_A","depth1_B","object3","depth0_B","result","depth1_C","depth1_D","obj1","banner","sizeConfig","minViewPort","obj2","primitive1","primitive2","Typed","outer","checkTypes","false","Array","prototype","unitTestTempProp","true","stringOne","cyrb53Hash","not","stringTwo","element","callbacks","delay","arguments","Promise","resolve","setTimeout","then","event","dispatchEvent","Event","nowValue","Date","valueOf","val","getUnixTimestampFromNow","anotherKey","third","fourth","sub","array","convertObjectToArray","JSON","stringify","script","attrs","setScriptAttributes","dataset","second_prop","jsonObj","key2","key3","key4","safeJSONEncode","callsFake","cachedResult","CompressionStream","newCompressionStream","error","isGzipCompressionSupported","secondCall","originalCompressionStream","global","constructor","type","Error","readable","ReadableStream","start","controller","enqueue","Uint8Array","close","writable","WritableStream","data","compressedData","compressDataWithGZip","instanceOf","greaterThan","nonStringData","fn","from","mem","callCount","clear","_len","_key","join","tests","_ref3","_ref4","el","pos","clock","useFakeTimers","now","resetWinDimensionsSpy","tick","calledOnce","calledTwice"],"sourceRoot":"../../../..","sources":["test/spec/utils_spec.js"],"sourcesContent":["import {getAdServerTargeting} from 'test/fixtures/fixtures.js';\nimport {expect} from 'chai';\nimport {TARGETING_KEYS} from 'src/constants.js';\nimport * as utils from 'src/utils.js';\nimport {binarySearch, deepEqual, encodeMacroURI, memoize, sizesToSizeTuples, waitForElementToLoad} from 'src/utils.js';\nimport {convertCamelToUnderscore} from '../../libraries/appnexusUtils/anUtils.js';\nimport { getWinDimensions, internal } from '../../src/utils.js';\n\nvar assert = require('assert');\n\ndescribe('Utils', function () {\n var obj_string = 's';\n var obj_number = 1;\n var obj_object = {};\n var obj_array = [];\n var obj_function = function () {};\n\n var type_string = 'String';\n var type_number = 'Number';\n var type_object = 'Object';\n var type_array = 'Array';\n var type_function = 'Function';\n\n describe('canAccessWindowTop', function () {\n let sandbox;\n\n beforeEach(function () {\n sandbox = sinon.createSandbox();\n });\n\n afterEach(function () {\n sandbox.restore();\n });\n it('should return true if window.top is accessible', function () {\n assert.equal(utils.canAccessWindowTop(), true);\n });\n\n it('should return false if window.top is not accessible', function () {\n sandbox.stub(utils.internal, 'getWindowTop').returns(false);\n assert.equal(utils.canAccessWindowTop(), false);\n });\n });\n\n describe('isSafeFrameWindow', function () {\n // SafeFrames implementation\n // https://iabtechlab.com/wp-content/uploads/2016/03/SafeFrames_v1.1_final.pdf\n const $sf = {\n ext: {\n geom: function() {}\n }\n };\n\n afterEach(function() {\n delete window.$sf;\n })\n\n it('should return true if window.$sf is accessible', function () {\n window.$sf = $sf;\n assert.equal(utils.isSafeFrameWindow(), true);\n });\n\n it('should return false if window.$sf is missimplemented', function () {\n window.$sf = {};\n assert.equal(utils.isSafeFrameWindow(), false);\n });\n\n it('should return false if window.$sf is missing', function () {\n assert.equal(utils.isSafeFrameWindow(), false);\n });\n });\n\n describe('getBidIdParameter', function () {\n it('should return value of the key in input object', function () {\n var obj = {\n a: 'valueA',\n b: 'valueB'\n };\n var output = utils.getBidIdParameter('a', obj);\n assert.equal(output, 'valueA');\n });\n\n it('should return empty string, if the key is not existsed in the object', function () {\n var obj = {\n a: 'valueA',\n b: 'valueB'\n };\n var output = utils.getBidIdParameter('c', obj);\n assert.equal(output, '');\n });\n });\n\n describe('parseQueryStringParameters', function () {\n it('should append query string to existing using the input obj', function () {\n var obj = {\n a: 'http://example.com/?foo=bar&bar=foo',\n b: 'abc[\"def\"]'\n };\n\n var output = utils.parseQueryStringParameters(obj);\n var expectedResult = 'a=' + encodeURIComponent('http://example.com/?foo=bar&bar=foo') + '&b=' + encodeURIComponent('abc[\"def\"]');\n assert.equal(output, expectedResult);\n });\n\n it('should return an empty string, if input obj is empty', function () {\n var obj = {};\n var output = utils.parseQueryStringParameters(obj);\n assert.equal(output, '');\n });\n });\n\n describe('transformAdServerTargetingObj', function () {\n it('should append query string to existing using the input obj', function () {\n var obj = getAdServerTargeting();\n\n var output = utils.transformAdServerTargetingObj(obj[Object.keys(obj)[0]]);\n var expected = 'foobar=300x250%2C300x600%2C0x0&' + TARGETING_KEYS.SIZE + '=300x250&' + TARGETING_KEYS.PRICE_BUCKET + '=10.00&' + TARGETING_KEYS.AD_ID + '=233bcbee889d46d&' + TARGETING_KEYS.BIDDER + '=appnexus&' + TARGETING_KEYS.SIZE + '_triplelift=0x0&' + TARGETING_KEYS.PRICE_BUCKET + '_triplelift=10.00&' + TARGETING_KEYS.AD_ID + '_triplelift=222bb26f9e8bd&' + TARGETING_KEYS.BIDDER + '_triplelift=triplelift&' + TARGETING_KEYS.SIZE + '_appnexus=300x250&' + TARGETING_KEYS.PRICE_BUCKET + '_appnexus=10.00&' + TARGETING_KEYS.AD_ID + '_appnexus=233bcbee889d46d&' + TARGETING_KEYS.BIDDER + '_appnexus=appnexus&' + TARGETING_KEYS.SIZE + '_pagescience=300x250&' + TARGETING_KEYS.PRICE_BUCKET + '_pagescience=10.00&' + TARGETING_KEYS.AD_ID + '_pagescience=25bedd4813632d7&' + TARGETING_KEYS.BIDDER + '_pagescienc=pagescience&' + TARGETING_KEYS.SIZE + '_brightcom=300x250&' + TARGETING_KEYS.PRICE_BUCKET + '_brightcom=10.00&' + TARGETING_KEYS.AD_ID + '_brightcom=26e0795ab963896&' + TARGETING_KEYS.BIDDER + '_brightcom=brightcom&' + TARGETING_KEYS.SIZE + '_brealtime=300x250&' + TARGETING_KEYS.PRICE_BUCKET + '_brealtime=10.00&' + TARGETING_KEYS.AD_ID + '_brealtime=275bd666f5a5a5d&' + TARGETING_KEYS.BIDDER + '_brealtime=brealtime&' + TARGETING_KEYS.SIZE + '_pubmatic=300x250&' + TARGETING_KEYS.PRICE_BUCKET + '_pubmatic=10.00&' + TARGETING_KEYS.AD_ID + '_pubmatic=28f4039c636b6a7&' + TARGETING_KEYS.BIDDER + '_pubmatic=pubmatic&' + TARGETING_KEYS.SIZE + '_rubicon=300x600&' + TARGETING_KEYS.PRICE_BUCKET + '_rubicon=10.00&' + TARGETING_KEYS.AD_ID + '_rubicon=29019e2ab586a5a&' + TARGETING_KEYS.BIDDER + '_rubicon=rubicon';\n assert.equal(output, expected);\n });\n\n it('should return an empty string, if input obj is empty', function () {\n var obj = {};\n var output = utils.transformAdServerTargetingObj(obj);\n assert.equal(output, '');\n });\n });\n\n describe('extend', function () {\n it('should merge two input object', function () {\n var target = {\n a: '1',\n b: '2'\n };\n\n var source = {\n c: '3'\n };\n\n var expectedResult = {\n a: '1',\n b: '2',\n c: '3'\n };\n\n var output = Object.assign(target, source);\n assert.deepEqual(output, expectedResult);\n });\n\n it('should merge two input object even though target object is empty', function () {\n var target = {};\n var source = {\n c: '3'\n };\n\n var output = Object.assign(target, source);\n assert.deepEqual(output, source);\n });\n\n it('just return target object, if the source object is empty', function () {\n var target = {\n a: '1',\n b: '2'\n };\n var source = {};\n\n var output = Object.assign(target, source);\n assert.deepEqual(output, target);\n });\n });\n\n describe('sizesToSizeTuples', () => {\n Object.entries({\n 'single size, numerical': {\n in: [1, 2],\n out: [[1, 2]]\n },\n 'single size, numerical, nested': {\n in: [[1, 2]],\n out: [[1, 2]]\n },\n 'multiple sizes, numerical': {\n in: [[1, 2], [3, 4]],\n out: [[1, 2], [3, 4]]\n },\n 'single size, string': {\n in: '1x2',\n out: [[1, 2]]\n },\n 'multiple sizes, string': {\n in: '1x2, 4x3',\n out: [[1, 2], [4, 3]]\n },\n 'incorrect size, numerical': {\n in: [1],\n out: []\n },\n 'incorrect size, string': {\n in: '1x',\n out: []\n }\n }).forEach(([t, {in: input, out}]) => {\n it(`can parse ${t}`, () => {\n expect(sizesToSizeTuples(input)).to.eql(out);\n })\n })\n })\n\n describe('parseSizesInput', function () {\n it('should return query string using multi size array', function () {\n var sizes = [[728, 90], [970, 90]];\n var output = utils.parseSizesInput(sizes);\n assert.deepEqual(output, ['728x90', '970x90']);\n });\n\n it('should return query string using single size array', function () {\n var sizes = [728, 90];\n var output = utils.parseSizesInput(sizes);\n assert.deepEqual(output, ['728x90']);\n });\n\n it('should return query string using string input', function () {\n var sizes = '300x250,970x90';\n var output = utils.parseSizesInput(sizes);\n assert.deepEqual(output, ['300x250', '970x90']);\n });\n\n it('return undefined if input array is empty', function () {\n var sizes = [];\n var output = utils.parseSizesInput(sizes);\n assert.deepEqual(output, []);\n });\n });\n\n describe('parseGPTSingleSizeArray', function () {\n it('should return size string with input single size array', function () {\n var size = [300, 250];\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, '300x250');\n });\n\n it('should return size string with input single size array', function () {\n var size = ['300', '250'];\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, '300x250');\n });\n\n it('return undefined using string input', function () {\n var size = '1';\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined using number input', function () {\n var size = 1;\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined using one length single array', function () {\n var size = [300];\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined if the input is empty', function () {\n var size = '';\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined if the input is not a number', function () {\n var size = ['foo', 'bar'];\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined if the input is not a number 2', function () {\n var size = ['foo', 300];\n var output = utils.parseGPTSingleSizeArray(size);\n assert.equal(output, undefined);\n });\n });\n\n describe('parseGPTSingleSizeArrayToRtbSize', function () {\n it('should return size string with input single size array', function () {\n var size = [300, 250];\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.deepEqual(output, {w: 300, h: 250});\n });\n\n it('should return size string with input single size array', function () {\n var size = ['300', '250'];\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.deepEqual(output, {w: 300, h: 250});\n });\n\n it('return undefined using string input', function () {\n var size = '1';\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined using number input', function () {\n var size = 1;\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined using one length single array', function () {\n var size = [300];\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined if the input is empty', function () {\n var size = '';\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined if the input is not a number', function () {\n var size = ['foo', 'bar'];\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.equal(output, undefined);\n });\n\n it('return undefined if the input is not a number 2', function () {\n var size = [300, 'foo'];\n var output = utils.parseGPTSingleSizeArrayToRtbSize(size);\n assert.equal(output, undefined);\n });\n });\n\n describe('isA', function () {\n it('should return true with string object', function () {\n var output = utils.isA(obj_string, type_string);\n assert.deepEqual(output, true);\n });\n\n it('should return false with object', function () {\n var output = utils.isA(obj_object, type_string);\n assert.deepEqual(output, false);\n });\n\n it('should return true with object', function () {\n var output = utils.isA(obj_object, type_object);\n assert.deepEqual(output, true);\n });\n\n it('should return false with array object', function () {\n var output = utils.isA(obj_array, type_object);\n assert.deepEqual(output, false);\n });\n\n it('should return true with array object', function () {\n var output = utils.isA(obj_array, type_array);\n assert.deepEqual(output, true);\n });\n\n it('should return false with array object', function () {\n var output = utils.isA(obj_array, type_function);\n assert.deepEqual(output, false);\n });\n\n it('should return true with function', function () {\n var output = utils.isA(obj_function, type_function);\n assert.deepEqual(output, true);\n });\n\n it('should return false with number', function () {\n var output = utils.isA(obj_function, type_number);\n assert.deepEqual(output, false);\n });\n\n it('should return true with number', function () {\n var output = utils.isA(obj_number, type_number);\n assert.deepEqual(output, true);\n });\n });\n\n describe('isFn', function () {\n it('should return true with input function', function () {\n var output = utils.isFn(obj_function);\n assert.deepEqual(output, true);\n });\n\n it('should return false with input string', function () {\n var output = utils.isFn(obj_string);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input number', function () {\n var output = utils.isFn(obj_number);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input Array', function () {\n var output = utils.isFn(obj_array);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input object', function () {\n var output = utils.isFn(obj_object);\n assert.deepEqual(output, false);\n });\n });\n\n describe('isStr', function () {\n it('should return true with input string', function () {\n var output = utils.isStr(obj_string);\n assert.deepEqual(output, true);\n });\n\n it('should return false with input number', function () {\n var output = utils.isStr(obj_number);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input object', function () {\n var output = utils.isStr(obj_object);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input array', function () {\n var output = utils.isStr(obj_array);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input function', function () {\n var output = utils.isStr(obj_function);\n assert.deepEqual(output, false);\n });\n });\n\n describe('isArray', function () {\n it('should return false with input string', function () {\n var output = utils.isArray(obj_string);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input number', function () {\n var output = utils.isArray(obj_number);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input object', function () {\n var output = utils.isArray(obj_object);\n assert.deepEqual(output, false);\n });\n\n it('should return true with input array', function () {\n var output = utils.isArray(obj_array);\n assert.deepEqual(output, true);\n });\n\n it('should return false with input function', function () {\n var output = utils.isArray(obj_function);\n assert.deepEqual(output, false);\n });\n });\n\n describe('isPlainObject', function () {\n it('should return false with input string', function () {\n var output = utils.isPlainObject(obj_string);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input number', function () {\n var output = utils.isPlainObject(obj_number);\n assert.deepEqual(output, false);\n });\n\n it('should return true with input object', function () {\n var output = utils.isPlainObject(obj_object);\n assert.deepEqual(output, true);\n });\n\n it('should return false with input array', function () {\n var output = utils.isPlainObject(obj_array);\n assert.deepEqual(output, false);\n });\n\n it('should return false with input function', function () {\n var output = utils.isPlainObject(obj_function);\n assert.deepEqual(output, false);\n });\n });\n\n describe('isEmpty', function () {\n it('should return true with empty object', function () {\n var output = utils.isEmpty(obj_object);\n assert.deepEqual(output, true);\n });\n\n it('should return false with non-empty object', function () {\n var obj = { a: 'b' };\n var output = utils.isEmpty(obj);\n assert.deepEqual(output, false);\n });\n\n it('should return false with null', function () {\n var obj = null;\n var output = utils.isEmpty(obj);\n assert.deepEqual(output, true);\n });\n });\n\n describe('contains', function () {\n it('should return true if the input string contains in the input obj', function () {\n var output = utils.contains('123', '1');\n assert.deepEqual(output, true);\n });\n\n it('should return false if the input string do not contain in the input obj', function () {\n var output = utils.contains('234', '1');\n assert.deepEqual(output, false);\n });\n\n it('should return false if the input string is empty', function () {\n var output = utils.contains();\n assert.ok(!output, 'an empty string returns false');\n });\n });\n\n describe('_map', function () {\n it('return empty array when input object is empty', function () {\n var input = {};\n var callback = function () {};\n\n var output = utils._map(input, callback);\n assert.deepEqual(output, []);\n });\n\n it('return value array with vaild input object', function () {\n var input = { a: 'A', b: 'B' };\n var callback = function (v) { return v; };\n\n var output = utils._map(input, callback);\n assert.deepEqual(output, ['A', 'B']);\n });\n\n it('return value array with vaild input object_callback func changed 1', function () {\n var input = { a: 'A', b: 'B' };\n var callback = function (v, k) { return v + k; };\n\n var output = utils._map(input, callback);\n assert.deepEqual(output, ['Aa', 'Bb']);\n });\n\n it('return value array with vaild input object_callback func changed 2', function () {\n var input = { a: 'A', b: 'B' };\n var callback = function (v, k, o) { return o; };\n\n var output = utils._map(input, callback);\n assert.deepEqual(output, [input, input]);\n });\n });\n\n describe('createInvisibleIframe', function () {\n var output = utils.createInvisibleIframe();\n\n it('return iframe - id', function () {\n assert.ok(output.id);\n });\n\n it('return iframe - height', function () {\n assert.deepEqual(output.height, 0);\n });\n\n it('return iframe - width', function () {\n assert.deepEqual(output.width, 0);\n });\n\n it('return iframe - hspace', function () {\n assert.deepEqual(output.hspace, '0');\n });\n\n it('return iframe - vspace', function () {\n assert.deepEqual(output.vspace, '0');\n });\n\n it('return iframe - marginWidth', function () {\n assert.deepEqual(output.marginWidth, '0');\n });\n\n it('return iframe - marginHeight', function () {\n assert.deepEqual(output.marginHeight, '0');\n });\n\n it('return iframe - scrolling', function () {\n assert.deepEqual(output.scrolling, 'no');\n });\n\n it('return iframe - frameBorder', function () {\n assert.deepEqual(output.frameBorder, '0');\n });\n\n it('return iframe - src', function () {\n assert.deepEqual(output.src, 'about:blank');\n });\n\n it('return iframe - style', function () {\n assert.ok(output.style);\n });\n });\n\n describe('polyfill test', function () {\n it('should not add polyfill to array', function() {\n var arr = ['hello', 'world'];\n var count = 0;\n for (var key in arr) {\n count++;\n }\n assert.equal(arr.length, count, 'Polyfill test fails');\n });\n });\n\n describe('delayExecution', function () {\n it('should execute the core function after the correct number of calls', function () {\n const callback = sinon.spy();\n const delayed = utils.delayExecution(callback, 5);\n for (let i = 0; i < 4; i++) {\n delayed();\n }\n assert(callback.notCalled);\n delayed(3);\n assert(callback.called)\n assert.equal(callback.firstCall.args[0], 3);\n });\n });\n\n describe('deepAccess', function() {\n var obj = {\n 1: 2,\n test: {\n first: 11\n }\n };\n\n it('should allow deep access of object properties', function() {\n var value1 = utils.deepAccess(obj, 'test');\n assert.deepEqual(value1, obj.test);\n\n var value2 = utils.deepAccess(obj, 'test.first');\n assert.equal(value2, 11);\n\n var value3 = utils.deepAccess(obj, '1');\n assert.equal(value3, 2);\n });\n\n it('should allow safe access (returning undefined for missing properties and not throwing exceptions)', function() {\n var value;\n\n assert.doesNotThrow(function() {\n value = utils.deepAccess(obj, 'test.second.third');\n });\n\n assert.equal(value, undefined);\n });\n });\n\n describe('deepSetValue', function() {\n it('should set existing properties at various depths', function() {\n const testObj = {\n prop: 'value',\n nestedObj: {\n nestedProp: 'nestedValue'\n }\n };\n utils.deepSetValue(testObj, 'prop', 'newValue');\n assert.equal(testObj.prop, 'newValue');\n utils.deepSetValue(testObj, 'nestedObj.nestedProp', 'newNestedValue');\n assert.equal(testObj.nestedObj.nestedProp, 'newNestedValue');\n });\n\n it('should create object levels between top and bottom of given path if they do not exist', function() {\n const testObj = {};\n utils.deepSetValue(testObj, 'level1.level2', 'value');\n assert.notEqual(testObj.level1, undefined);\n assert.notEqual(testObj.level1.level2, undefined);\n assert.equal(testObj.level1.level2, 'value');\n });\n });\n\n describe('getDefinedParams', function () {\n it('builds an object consisting of defined params', function () {\n const adUnit = {\n mediaType: 'video',\n comeWithMe: 'ifuwant2live',\n notNeeded: 'do not include',\n };\n\n const builtObject = utils.getDefinedParams(adUnit, [\n 'mediaType', 'comeWithMe'\n ]);\n\n assert.deepEqual(builtObject, {\n mediaType: 'video',\n comeWithMe: 'ifuwant2live',\n });\n });\n });\n\n describe('deepClone', function () {\n it('deep copies objects', function () {\n const adUnit = [{\n code: 'swan',\n mediaTypes: {video: {context: 'outstream'}},\n renderer: {\n render: bid => player.render(bid),\n url: '/video/renderer.js'\n },\n bids: [{\n bidder: 'dharmaInitiative',\n params: { placementId: '481516', }\n }],\n }];\n\n const adUnitCopy = utils.deepClone(adUnit);\n expect(adUnitCopy[0].renderer.url).to.be.a('string');\n expect(adUnitCopy[0].renderer.render).to.be.a('function');\n });\n });\n\n describe('getUserConfiguredParams', function () {\n const adUnits = [{\n code: 'adUnit1',\n bids: [{\n bidder: 'bidder1',\n params: {\n key1: 'value1'\n }\n }, {\n bidder: 'bidder2'\n }]\n }];\n\n it('should return params configured', function () {\n const output = utils.getUserConfiguredParams(adUnits, 'adUnit1', 'bidder1');\n const expected = [{\n key1: 'value1'\n }];\n assert.deepEqual(output, expected);\n });\n\n it('should return array containting empty object, if bidder present and no params are configured', function () {\n const output = utils.getUserConfiguredParams(adUnits, 'adUnit1', 'bidder2');\n const expected = [{}];\n assert.deepEqual(output, expected);\n });\n\n it('should return empty array, if bidder is not present', function () {\n const output = utils.getUserConfiguredParams(adUnits, 'adUnit1', 'bidder3');\n const expected = [];\n assert.deepEqual(output, expected);\n });\n\n it('should return empty array, if adUnit is not present', function () {\n const output = utils.getUserConfiguredParams(adUnits, 'adUnit2', 'bidder3');\n const expected = [];\n assert.deepEqual(output, expected);\n });\n });\n\n describe('convertCamelToUnderscore', function () {\n it('returns converted string value using underscore syntax instead of camelCase', function () {\n const var1 = 'placementIdTest';\n const test1 = convertCamelToUnderscore(var1);\n expect(test1).to.equal('placement_id_test');\n\n const var2 = 'my_test_value';\n const test2 = convertCamelToUnderscore(var2);\n expect(test2).to.equal(var2);\n });\n });\n\n describe('URL helpers', function () {\n describe('parseUrl()', function () {\n let parsed;\n\n beforeEach(function () {\n parsed = utils.parseUrl('http://example.com:3000/pathname/?search=test&foo=bar&bar=foo%26foo%3Dxxx#hash');\n });\n\n it('extracts the protocol', function () {\n expect(parsed).to.have.property('protocol', 'http');\n });\n\n it('extracts the hostname', function () {\n expect(parsed).to.have.property('hostname', 'example.com');\n });\n\n it('extracts the port', function () {\n expect(parsed).to.have.property('port', 3000);\n });\n\n it('extracts the pathname', function () {\n expect(parsed).to.have.property('pathname', '/pathname/');\n });\n\n it('extracts the search query', function () {\n expect(parsed).to.have.property('search');\n expect(parsed.search).to.eql({\n foo: 'xxx',\n search: 'test',\n bar: 'foo',\n });\n });\n\n it('extracts the hash', function () {\n expect(parsed).to.have.property('hash', 'hash');\n });\n\n it('extracts the host', function () {\n expect(parsed).to.have.property('host', 'example.com:3000');\n });\n });\n\n describe('parseUrl(url, {noDecodeWholeURL: true})', function () {\n let parsed;\n\n beforeEach(function () {\n parsed = utils.parseUrl('http://example.com:3000/pathname/?search=test&foo=bar&bar=foo%26foo%3Dxxx#hash', {noDecodeWholeURL: true});\n });\n\n it('extracts the search query', function () {\n expect(parsed).to.have.property('search');\n expect(parsed.search).to.eql({\n foo: 'bar',\n search: 'test',\n bar: 'foo%26foo%3Dxxx',\n });\n });\n });\n\n describe('buildUrl()', function () {\n it('formats an object in to a URL', function () {\n expect(utils.buildUrl({\n protocol: 'http',\n hostname: 'example.com',\n port: 3000,\n pathname: '/pathname/',\n search: {foo: 'bar', search: 'test', bar: 'foo%26foo%3Dxxx'},\n hash: 'hash'\n })).to.equal('http://example.com:3000/pathname/?foo=bar&search=test&bar=foo%26foo%3Dxxx#hash');\n });\n\n it('will use defaults for missing properties', function () {\n expect(utils.buildUrl({\n hostname: 'example.com'\n })).to.equal('http://example.com');\n });\n });\n\n describe('parseUrl(url, {decodeSearchAsString: true})', function () {\n let parsed;\n\n beforeEach(function () {\n parsed = utils.parseUrl('http://example.com:3000/pathname/?search=test&foo=bar&bar=foo%26foo%3Dxxx#hash', {decodeSearchAsString: true});\n });\n\n it('extracts the search query', function () {\n expect(parsed).to.have.property('search');\n expect(parsed.search).to.equal('?search=test&foo=bar&bar=foo&foo=xxx');\n });\n });\n\n describe('encodeMacroURI', () => {\n [\n ['https://www.example.com', 'https://www.example.com'],\n ['https://www.example/${MACRO}', 'https://www.example/${MACRO}'],\n ['http://www.example/è', `http://www.example/${encodeURIComponent('è')}`],\n ['https://www.${MACRO_1}/${MACRO_1}/${MACRO_2}è', 'https://www.${MACRO_1}/${MACRO_1}/${MACRO_2}' + encodeURIComponent('è')],\n ['http://${MACRO}${MACRO}/${MACRO}', 'http://${MACRO}${MACRO}/${MACRO}'],\n ['{MACRO}${MACRO}', `${encodeURIComponent('{MACRO}')}\\${MACRO}`],\n ['https://www.example.com?p=${AUCTION_PRICE}', 'https://www.example.com?p=${AUCTION_PRICE}']\n ].forEach(([input, expected]) => {\n it(`can encode ${input} -> ${expected}`, () => {\n expect(encodeMacroURI(input)).to.eql(expected);\n })\n })\n })\n });\n\n describe('insertElement', function () {\n let doc;\n\n beforeEach(function () {\n doc = document.implementation.createHTMLDocument('insertElementTest');\n });\n\n it('returns a node at the top of the target by default', function () {\n const toInsert = doc.createElement('div');\n const target = doc.getElementsByTagName('body')[0];\n const inserted = utils.insertElement(toInsert, doc, 'body');\n expect(inserted).to.equal(target.firstChild);\n });\n\n it('returns a node at bottom of target if 4th argument is true', function () {\n const toInsert = doc.createElement('div');\n const target = doc.getElementsByTagName('html')[0];\n const inserted = utils.insertElement(toInsert, doc, 'html', true);\n expect(inserted).to.equal(target.lastChild);\n });\n\n it('returns a node at top of the head if no target is given', function () {\n const toInsert = doc.createElement('div');\n const target = doc.getElementsByTagName('head')[0];\n const inserted = utils.insertElement(toInsert, doc);\n expect(inserted).to.equal(target.firstChild);\n });\n });\n\n describe('isSafariBrowser', function () {\n let userAgentStub;\n let userAgent;\n\n before(function () {\n userAgentStub = sinon.stub(navigator, 'userAgent').get(function () {\n return userAgent;\n });\n });\n\n after(function () {\n userAgentStub.restore();\n });\n\n it('properly detects safari', function () {\n userAgent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/536.25 (KHTML, like Gecko) Version/6.0 Safari/536.25';\n expect(utils.isSafariBrowser()).to.equal(true);\n });\n it('does not flag Chrome on MacOS', function () {\n userAgent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36';\n expect(utils.isSafariBrowser()).to.equal(false);\n });\n it('does not flag Chrome iOS', function () {\n userAgent = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/80.0.3987.95 Mobile/15E148 Safari/604.1';\n expect(utils.isSafariBrowser()).to.equal(false);\n });\n it('does not flag Firefox iOS', function () {\n userAgent = 'Mozilla/5.0 (iPhone; CPU OS 13_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) FxiOS/23.0 Mobile/15E148 Safari/605.1.15';\n expect(utils.isSafariBrowser()).to.equal(false);\n });\n it('does not flag Windows Edge', function () {\n userAgent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.74 Safari/537.36 Edg/79.0.309.43';\n expect(utils.isSafariBrowser()).to.equal(false);\n });\n });\n\n describe('mergeDeep', function() {\n it('properly merge objects that share same property names', function() {\n const object1 = {\n propA: {\n subPropA: 'abc'\n }\n };\n const object2 = {\n propA: {\n subPropB: 'def'\n }\n };\n\n const resultWithoutMergeDeep = Object.assign({}, object1, object2);\n expect(resultWithoutMergeDeep).to.deep.equal({\n propA: {\n subPropB: 'def'\n }\n });\n\n const resultWithMergeDeep = utils.mergeDeep({}, object1, object2);\n expect(resultWithMergeDeep).to.deep.equal({\n propA: {\n subPropA: 'abc',\n subPropB: 'def'\n }\n });\n });\n\n it('properly merge objects that have different depths', function() {\n const object1 = {\n depth0_A: {\n depth1_A: {\n depth2_A: 123\n }\n }\n };\n const object2 = {\n depth0_A: {\n depth1_A: {\n depth2_B: {\n depth3_A: {\n depth4_A: 'def'\n }\n }\n },\n depth1_B: 'abc'\n }\n };\n const object3 = {\n depth0_B: 456\n };\n\n const result = utils.mergeDeep({}, object1, object2, object3);\n expect(result).to.deep.equal({\n depth0_A: {\n depth1_A: {\n depth2_A: 123,\n depth2_B: {\n depth3_A: {\n depth4_A: 'def'\n }\n }\n },\n depth1_B: 'abc'\n },\n depth0_B: 456\n });\n });\n\n it('properly merge objects with various property types', function() {\n const object1 = {\n depth0_A: {\n depth1_A: ['a', 'b', 'c'],\n depth1_B: 'abc',\n depth1_C: 123\n }\n };\n const object2 = {\n depth0_A: {\n depth1_A: ['d', 'e', 'f'],\n depth1_D: true,\n }\n };\n\n const result = utils.mergeDeep({}, object1, object2);\n expect(result).to.deep.equal({\n depth0_A: {\n depth1_A: ['a', 'b', 'c', 'd', 'e', 'f'],\n depth1_B: 'abc',\n depth1_C: 123,\n depth1_D: true,\n }\n });\n });\n });\n\n describe('deepEqual', function() {\n it('should return \"true\" if comparing the same object', function() {\n const obj1 = {\n banner: {\n sizeConfig: [\n { minViewPort: [0, 0], sizes: [] },\n { minViewPort: [1000, 0], sizes: [[1000, 300], [1000, 90], [970, 250], [970, 90], [728, 90]] },\n ],\n },\n };\n const obj2 = obj1;\n expect(utils.deepEqual(obj1, obj2)).to.equal(true);\n });\n it('should return \"true\" if two deeply nested objects are equal', function() {\n const obj1 = {\n banner: {\n sizeConfig: [\n { minViewPort: [0, 0], sizes: [] },\n { minViewPort: [1000, 0], sizes: [[1000, 300], [1000, 90], [970, 250], [970, 90], [728, 90]] },\n ],\n },\n };\n const obj2 = {\n banner: {\n sizeConfig: [\n { minViewPort: [0, 0], sizes: [] },\n { minViewPort: [1000, 0], sizes: [[1000, 300], [1000, 90], [970, 250], [970, 90], [728, 90]] },\n ],\n },\n };\n expect(utils.deepEqual(obj1, obj2)).to.equal(true);\n });\n it('should return \"true\" if comparting the same primitive values', function() {\n const primitive1 = 'Prebid.js';\n const primitive2 = 'Prebid.js';\n expect(utils.deepEqual(primitive1, primitive2)).to.equal(true);\n });\n it('should return \"false\" if comparing two different primitive values', function() {\n const primitive1 = 12;\n const primitive2 = 123;\n expect(utils.deepEqual(primitive1, primitive2)).to.equal(false);\n });\n it('should return \"false\" if comparing two different deeply nested objects', function() {\n const obj1 = {\n banner: {\n sizeConfig: [\n { minViewPort: [0, 0], sizes: [] },\n { minViewPort: [1000, 0], sizes: [[1000, 300], [1000, 90], [970, 250], [970, 90], [728, 90]] },\n ],\n },\n };\n const obj2 = {\n banner: {\n sizeConfig: [\n { minViewPort: [0, 0], sizes: [] },\n { minViewPort: [1000, 0], sizes: [[1000, 300], [728, 90]] },\n ],\n },\n }\n expect(utils.deepEqual(obj1, obj2)).to.equal(false);\n });\n it('should check types if {matchTypes: true}', () => {\n function Typed(obj) {\n Object.assign(this, obj);\n }\n const obj = {key: 'value'};\n expect(deepEqual({outer: obj}, {outer: new Typed(obj)}, {checkTypes: true})).to.be.false;\n });\n it('should work when adding properties to the prototype of Array', () => {\n after(function () {\n delete Array.prototype.unitTestTempProp;\n });\n // eslint-disable-next-line no-extend-native\n Array.prototype.unitTestTempProp = 'testing';\n expect(deepEqual([], [])).to.be.true;\n });\n\n describe('cyrb53Hash', function() {\n it('should return the same hash for the same string', function() {\n const stringOne = 'string1';\n expect(utils.cyrb53Hash(stringOne)).to.equal(utils.cyrb53Hash(stringOne));\n });\n it('should return a different hash for the same string with different seeds', function() {\n const stringOne = 'string1';\n expect(utils.cyrb53Hash(stringOne, 1)).to.not.equal(utils.cyrb53Hash(stringOne, 2));\n });\n it('should return a different hash for different strings with the same seed', function() {\n const stringOne = 'string1';\n const stringTwo = 'string2';\n expect(utils.cyrb53Hash(stringOne)).to.not.equal(utils.cyrb53Hash(stringTwo));\n });\n it('should return a string value, not a number', function() {\n const stringOne = 'string1';\n expect(typeof utils.cyrb53Hash(stringOne)).to.equal('string');\n });\n });\n });\n\n describe('waitForElementToLoad', () => {\n let element;\n let callbacks;\n\n function callback() {\n callbacks++;\n }\n\n function delay(delay = 0) {\n return new Promise((resolve) => {\n window.setTimeout(resolve, delay);\n })\n }\n\n beforeEach(() => {\n callbacks = 0;\n element = window.document.createElement('div');\n });\n\n it('should respect timeout if set', () => {\n waitForElementToLoad(element, 50).then(callback);\n return delay(60).then(() => {\n expect(callbacks).to.equal(1);\n });\n });\n\n ['load', 'error'].forEach((event) => {\n it(`should complete on '${event} event'`, () => {\n waitForElementToLoad(element).then(callback);\n element.dispatchEvent(new Event(event));\n return delay().then(() => {\n expect(callbacks).to.equal(1);\n })\n });\n });\n });\n\n describe('getUnixTimestampFromNow', () => {\n it('correctly obtains unix timestamp', () => {\n const nowValue = new Date('2024-01-01').valueOf();\n sinon.stub(Date, 'now').returns(nowValue);\n let val = utils.getUnixTimestampFromNow();\n expect(val).equal(nowValue);\n\n val = utils.getUnixTimestampFromNow(1);\n expect(val).equal(nowValue + (1000 * 60 * 60 * 24));\n\n val = utils.getUnixTimestampFromNow(1, 'd');\n expect(val).equal(nowValue + (1000 * 60 * 60 * 24));\n\n val = utils.getUnixTimestampFromNow(1, 'm');\n expect(val).equal(nowValue + (1000 * 60 * 60 * 24 / 1440));\n\n val = utils.getUnixTimestampFromNow(2, 'm');\n expect(val).equal(nowValue + (1000 * 60 * 60 * 24 * 2 / 1440));\n\n // any value that isn't 'm' or 'd' gets treated as Date.now();\n val = utils.getUnixTimestampFromNow(10, 'o');\n expect(val).equal(nowValue);\n });\n });\n\n describe('convertObjectToArray', () => {\n it('correctly converts object to array', () => {\n const obj = {key: 1, anotherKey: 'fred', third: ['fred'], fourth: {sub: {obj: 'test'}}};\n const array = utils.convertObjectToArray(obj);\n\n expect(JSON.stringify(array[0])).equal(JSON.stringify({'key': 1}))\n expect(JSON.stringify(array[1])).equal(JSON.stringify({'anotherKey': 'fred'}))\n expect(JSON.stringify(array[2])).equal(JSON.stringify({'third': ['fred']}))\n expect(JSON.stringify(array[3])).equal(JSON.stringify({'fourth': {sub: {obj: 'test'}}}));\n expect(array.length).to.equal(4);\n });\n });\n\n describe('setScriptAttributes', () => {\n it('correctly adds attributes from an object', () => {\n const script = document.createElement('script');\n const attrs = {\n 'data-first_prop': '1',\n 'data-second_prop': 'b',\n 'id': 'newId'\n };\n script.id = 'oldId';\n utils.setScriptAttributes(script, attrs);\n expect(script.dataset['first_prop']).to.equal('1');\n expect(script.dataset.second_prop).to.equal('b');\n expect(script.id).to.equal('newId');\n });\n });\n\n describe('safeJSONParse', () => {\n it('correctly encodes valid input', () => {\n const jsonObj = {\n key1: 'val1',\n key2: {\n key3: 100,\n key4: true\n }\n };\n const result = utils.safeJSONEncode(jsonObj);\n expect(result).to.equal(`{\"key1\":\"val1\",\"key2\":{\"key3\":100,\"key4\":true}}`);\n });\n it('return empty string for stringify errors', () => {\n const jsonObj = {k: 2n};\n const result = utils.safeJSONEncode(jsonObj);\n expect(result).to.equal('');\n });\n });\n\n describe('isGzipCompressionSupported', () => {\n let sandbox;\n\n beforeEach(() => {\n sandbox = sinon.createSandbox();\n sandbox.stub(utils, 'isGzipCompressionSupported').callsFake((() => {\n let cachedResult;\n return function () {\n if (cachedResult !== undefined) {\n return cachedResult;\n }\n try {\n if (typeof window.CompressionStream === 'undefined') {\n cachedResult = false;\n } else {\n const newCompressionStream = new window.CompressionStream('gzip');\n cachedResult = true;\n }\n } catch (error) {\n cachedResult = false;\n }\n return cachedResult;\n };\n })());\n });\n\n afterEach(() => {\n sandbox.restore();\n });\n\n it('should return true if CompressionStream is available', () => {\n window.CompressionStream = class {}; // Mock valid CompressionStream\n expect(utils.isGzipCompressionSupported()).to.be.true;\n });\n\n it('should return false if CompressionStream is undefined', () => {\n delete window.CompressionStream; // Simulate an unsupported environment\n expect(utils.isGzipCompressionSupported()).to.be.false;\n });\n\n it('should cache the result after first execution', () => {\n window.CompressionStream = class {}; // Mock valid CompressionStream\n\n const firstCall = utils.isGzipCompressionSupported();\n const secondCall = utils.isGzipCompressionSupported();\n\n expect(firstCall).to.equal(secondCall); // Ensure memoization is working\n });\n });\n\n describe('compressDataWithGZip', () => {\n let originalCompressionStream;\n\n beforeEach(() => {\n originalCompressionStream = global.CompressionStream;\n global.CompressionStream = class {\n constructor(type) {\n if (type !== 'gzip') {\n throw new Error('Unsupported compression type');\n }\n this.readable = new ReadableStream({\n start(controller) {\n controller.enqueue(new Uint8Array([1, 2, 3, 4]));\n controller.close();\n }\n });\n this.writable = new WritableStream();\n }\n };\n });\n\n afterEach(() => {\n if (originalCompressionStream) {\n global.CompressionStream = originalCompressionStream;\n } else {\n delete global.CompressionStream;\n }\n });\n\n it('should compress data correctly when CompressionStream is available', async () => {\n const data = JSON.stringify({ test: 'data' });\n const compressedData = await utils.compressDataWithGZip(data);\n\n expect(compressedData).to.be.instanceOf(Uint8Array);\n expect(compressedData.length).to.be.greaterThan(0);\n expect(compressedData).to.deep.equal(new Uint8Array([1, 2, 3, 4]));\n });\n\n it('should handle non-string input by stringifying it', async () => {\n const nonStringData = { test: 'data' };\n const compressedData = await utils.compressDataWithGZip(nonStringData);\n\n expect(compressedData).to.be.instanceOf(Uint8Array);\n expect(compressedData.length).to.be.greaterThan(0);\n expect(compressedData).to.deep.equal(new Uint8Array([1, 2, 3, 4]));\n });\n });\n});\n\ndescribe('memoize', () => {\n let fn;\n\n beforeEach(() => {\n fn = sinon.stub().callsFake(function() {\n return Array.from(arguments);\n });\n });\n\n it('delegates to fn', () => {\n expect(memoize(fn)('one', 'two')).to.eql(['one', 'two']);\n });\n\n it('caches result after first call, if first argument is the same', () => {\n const mem = memoize(fn);\n mem('one', 'two');\n expect(mem('one', 'three')).to.eql(['one', 'two']);\n expect(fn.callCount).to.equal(1);\n });\n\n it('delegates again when the first argument changes', () => {\n const mem = memoize(fn);\n mem('one', 'two');\n expect(mem('two', 'one')).to.eql(['two', 'one']);\n expect(fn.callCount).to.eql(2);\n });\n\n it('can clear cache with .clear', () => {\n const mem = memoize(fn);\n mem('arg');\n mem.clear();\n expect(mem('arg')).to.eql(['arg']);\n expect(fn.callCount).to.equal(2);\n });\n\n it('allows setting cache keys', () => {\n const mem = memoize(fn, (...args) => args.join(','))\n mem('one', 'two');\n mem('one', 'three');\n expect(mem('one', 'three')).to.eql(['one', 'three']);\n expect(fn.callCount).to.eql(2);\n });\n\n describe('binarySearch', () => {\n [\n {\n arr: [],\n tests: [\n ['any', 0]\n ]\n },\n {\n arr: [10],\n tests: [\n [5, 0],\n [10, 0],\n [20, 1],\n ],\n },\n {\n arr: [10, 20, 30, 30, 40],\n tests: [\n [5, 0],\n [15, 1],\n [10, 0],\n [30, 2],\n [35, 4],\n [40, 4],\n [100, 5]\n ]\n }\n ].forEach(({arr, tests}) => {\n describe(`on ${arr}`, () => {\n tests.forEach(([el, pos]) => {\n it(`finds index for ${el} => ${pos}`, () => {\n expect(binarySearch(arr, el)).to.equal(pos);\n });\n });\n });\n })\n })\n})\n\ndescribe('getWinDimensions', () => {\n let clock;\n\n beforeEach(() => {\n clock = sinon.useFakeTimers({ now: new Date() });\n });\n\n afterEach(() => {\n clock.restore();\n });\n\n it('should invoke resetWinDimensions once per 20ms', () => {\n const resetWinDimensionsSpy = sinon.spy(internal, 'resetWinDimensions');\n getWinDimensions();\n clock.tick(1);\n getWinDimensions();\n clock.tick(1);\n getWinDimensions();\n clock.tick(1);\n getWinDimensions();\n sinon.assert.calledOnce(resetWinDimensionsSpy);\n clock.tick(18);\n getWinDimensions();\n sinon.assert.calledTwice(resetWinDimensionsSpy);\n });\n});\n"],"mappings":"AAAA,SAAQA,oBAAoB,QAAO,2BAA2B;AAC9D,SAAQC,MAAM,QAAO,MAAM;AAC3B,SAAQC,cAAc,QAAO,kBAAkB;AAC/C,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,SAAQC,YAAY,EAAEC,SAAS,EAAEC,cAAc,EAAEC,OAAO,EAAEC,iBAAiB,EAAEC,oBAAoB,QAAO,cAAc;AACtH,SAAQC,wBAAwB,QAAO,0CAA0C;AACjF,SAASC,gBAAgB,EAAEC,QAAQ,QAAQ,oBAAoB;AAE/D,IAAIC,MAAM,GAAGC,OAAO,CAAC,QAAQ,CAAC;AAE9BC,QAAQ,CAAC,OAAO,EAAE,YAAY;EAC5B,IAAIC,UAAU,GAAG,GAAG;EACpB,IAAIC,UAAU,GAAG,CAAC;EAClB,IAAIC,UAAU,GAAG,CAAC,CAAC;EACnB,IAAIC,SAAS,GAAG,EAAE;EAClB,IAAIC,YAAY,GAAG,SAAAA,CAAA,EAAY,CAAC,CAAC;EAEjC,IAAIC,WAAW,GAAG,QAAQ;EAC1B,IAAIC,WAAW,GAAG,QAAQ;EAC1B,IAAIC,WAAW,GAAG,QAAQ;EAC1B,IAAIC,UAAU,GAAG,OAAO;EACxB,IAAIC,aAAa,GAAG,UAAU;EAE9BV,QAAQ,CAAC,oBAAoB,EAAE,YAAY;IACzC,IAAIW,OAAO;IAEXC,UAAU,CAAC,YAAY;MACrBD,OAAO,GAAGE,KAAK,CAACC,aAAa,CAAC,CAAC;IACjC,CAAC,CAAC;IAEFC,SAAS,CAAC,YAAY;MACpBJ,OAAO,CAACK,OAAO,CAAC,CAAC;IACnB,CAAC,CAAC;IACFC,EAAE,CAAC,gDAAgD,EAAE,YAAY;MAC/DnB,MAAM,CAACoB,KAAK,CAAC9B,KAAK,CAAC+B,kBAAkB,CAAC,CAAC,EAAE,IAAI,CAAC;IAChD,CAAC,CAAC;IAEFF,EAAE,CAAC,qDAAqD,EAAE,YAAY;MACpEN,OAAO,CAACS,IAAI,CAAChC,KAAK,CAACS,QAAQ,EAAE,cAAc,CAAC,CAACwB,OAAO,CAAC,KAAK,CAAC;MAC3DvB,MAAM,CAACoB,KAAK,CAAC9B,KAAK,CAAC+B,kBAAkB,CAAC,CAAC,EAAE,KAAK,CAAC;IACjD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFnB,QAAQ,CAAC,mBAAmB,EAAE,YAAY;IACxC;IACA;IACA,MAAMsB,GAAG,GAAG;MACVC,GAAG,EAAE;QACHC,IAAI,EAAE,SAAAA,CAAA,EAAW,CAAC;MACpB;IACF,CAAC;IAEDT,SAAS,CAAC,YAAW;MACnB,OAAOU,MAAM,CAACH,GAAG;IACnB,CAAC,CAAC;IAEFL,EAAE,CAAC,gDAAgD,EAAE,YAAY;MAC/DQ,MAAM,CAACH,GAAG,GAAGA,GAAG;MAChBxB,MAAM,CAACoB,KAAK,CAAC9B,KAAK,CAACsC,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC;IAC/C,CAAC,CAAC;IAEFT,EAAE,CAAC,sDAAsD,EAAE,YAAY;MACrEQ,MAAM,CAACH,GAAG,GAAG,CAAC,CAAC;MACfxB,MAAM,CAACoB,KAAK,CAAC9B,KAAK,CAACsC,iBAAiB,CAAC,CAAC,EAAE,KAAK,CAAC;IAChD,CAAC,CAAC;IAEFT,EAAE,CAAC,8CAA8C,EAAE,YAAY;MAC7DnB,MAAM,CAACoB,KAAK,CAAC9B,KAAK,CAACsC,iBAAiB,CAAC,CAAC,EAAE,KAAK,CAAC;IAChD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF1B,QAAQ,CAAC,mBAAmB,EAAE,YAAY;IACxCiB,EAAE,CAAC,gDAAgD,EAAE,YAAY;MAC/D,IAAIU,GAAG,GAAG;QACRC,CAAC,EAAE,QAAQ;QACXC,CAAC,EAAE;MACL,CAAC;MACD,IAAIC,MAAM,GAAG1C,KAAK,CAAC2C,iBAAiB,CAAC,GAAG,EAAEJ,GAAG,CAAC;MAC9C7B,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE,QAAQ,CAAC;IAChC,CAAC,CAAC;IAEFb,EAAE,CAAC,sEAAsE,EAAE,YAAY;MACrF,IAAIU,GAAG,GAAG;QACRC,CAAC,EAAE,QAAQ;QACXC,CAAC,EAAE;MACL,CAAC;MACD,IAAIC,MAAM,GAAG1C,KAAK,CAAC2C,iBAAiB,CAAC,GAAG,EAAEJ,GAAG,CAAC;MAC9C7B,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE,EAAE,CAAC;IAC1B,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF9B,QAAQ,CAAC,4BAA4B,EAAE,YAAY;IACjDiB,EAAE,CAAC,4DAA4D,EAAE,YAAY;MAC3E,IAAIU,GAAG,GAAG;QACRC,CAAC,EAAE,qCAAqC;QACxCC,CAAC,EAAE;MACL,CAAC;MAED,IAAIC,MAAM,GAAG1C,KAAK,CAAC4C,0BAA0B,CAACL,GAAG,CAAC;MAClD,IAAIM,cAAc,GAAG,IAAI,GAAGC,kBAAkB,CAAC,qCAAqC,CAAC,GAAG,KAAK,GAAGA,kBAAkB,CAAC,YAAY,CAAC;MAChIpC,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAEG,cAAc,CAAC;IACtC,CAAC,CAAC;IAEFhB,EAAE,CAAC,sDAAsD,EAAE,YAAY;MACrE,IAAIU,GAAG,GAAG,CAAC,CAAC;MACZ,IAAIG,MAAM,GAAG1C,KAAK,CAAC4C,0BAA0B,CAACL,GAAG,CAAC;MAClD7B,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE,EAAE,CAAC;IAC1B,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF9B,QAAQ,CAAC,+BAA+B,EAAE,YAAY;IACpDiB,EAAE,CAAC,4DAA4D,EAAE,YAAY;MAC3E,IAAIU,GAAG,GAAG1C,oBAAoB,CAAC,CAAC;MAEhC,IAAI6C,MAAM,GAAG1C,KAAK,CAAC+C,6BAA6B,CAACR,GAAG,CAACS,MAAM,CAACC,IAAI,CAACV,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;MAC1E,IAAIW,QAAQ,GAAG,iCAAiC,GAAGnD,cAAc,CAACoD,IAAI,GAAG,WAAW,GAAGpD,cAAc,CAACqD,YAAY,GAAG,SAAS,GAAGrD,cAAc,CAACsD,KAAK,GAAG,mBAAmB,GAAGtD,cAAc,CAACuD,MAAM,GAAG,YAAY,GAAGvD,cAAc,CAACoD,IAAI,GAAG,kBAAkB,GAAGpD,cAAc,CAACqD,YAAY,GAAG,oBAAoB,GAAGrD,cAAc,CAACsD,KAAK,GAAG,4BAA4B,GAAGtD,cAAc,CAACuD,MAAM,GAAG,yBAAyB,GAAGvD,cAAc,CAACoD,IAAI,GAAG,oBAAoB,GAAGpD,cAAc,CAACqD,YAAY,GAAG,kBAAkB,GAAGrD,cAAc,CAACsD,KAAK,GAAG,4BAA4B,GAAGtD,cAAc,CAACuD,MAAM,GAAG,qBAAqB,GAAGvD,cAAc,CAACoD,IAAI,GAAG,uBAAuB,GAAGpD,cAAc,CAACqD,YAAY,GAAG,qBAAqB,GAAGrD,cAAc,CAACsD,KAAK,GAAG,+BAA+B,GAAGtD,cAAc,CAACuD,MAAM,GAAG,0BAA0B,GAAGvD,cAAc,CAACoD,IAAI,GAAG,qBAAqB,GAAGpD,cAAc,CAACqD,YAAY,GAAG,mBAAmB,GAAGrD,cAAc,CAACsD,KAAK,GAAG,6BAA6B,GAAGtD,cAAc,CAACuD,MAAM,GAAG,uBAAuB,GAAGvD,cAAc,CAACoD,IAAI,GAAG,qBAAqB,GAAGpD,cAAc,CAACqD,YAAY,GAAG,mBAAmB,GAAGrD,cAAc,CAACsD,KAAK,GAAG,6BAA6B,GAAGtD,cAAc,CAACuD,MAAM,GAAG,uBAAuB,GAAGvD,cAAc,CAACoD,IAAI,GAAG,oBAAoB,GAAGpD,cAAc,CAACqD,YAAY,GAAG,kBAAkB,GAAGrD,cAAc,CAACsD,KAAK,GAAG,4BAA4B,GAAGtD,cAAc,CAACuD,MAAM,GAAG,qBAAqB,GAAGvD,cAAc,CAACoD,IAAI,GAAG,mBAAmB,GAAGpD,cAAc,CAACqD,YAAY,GAAG,iBAAiB,GAAGrD,cAAc,CAACsD,KAAK,GAAG,2BAA2B,GAAGtD,cAAc,CAACuD,MAAM,GAAG,kBAAkB;MACllD5C,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAEQ,QAAQ,CAAC;IAChC,CAAC,CAAC;IAEFrB,EAAE,CAAC,sDAAsD,EAAE,YAAY;MACrE,IAAIU,GAAG,GAAG,CAAC,CAAC;MACZ,IAAIG,MAAM,GAAG1C,KAAK,CAAC+C,6BAA6B,CAACR,GAAG,CAAC;MACrD7B,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE,EAAE,CAAC;IAC1B,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF9B,QAAQ,CAAC,QAAQ,EAAE,YAAY;IAC7BiB,EAAE,CAAC,+BAA+B,EAAE,YAAY;MAC9C,IAAI0B,MAAM,GAAG;QACXf,CAAC,EAAE,GAAG;QACNC,CAAC,EAAE;MACL,CAAC;MAED,IAAIe,MAAM,GAAG;QACXC,CAAC,EAAE;MACL,CAAC;MAED,IAAIZ,cAAc,GAAG;QACnBL,CAAC,EAAE,GAAG;QACNC,CAAC,EAAE,GAAG;QACNgB,CAAC,EAAE;MACL,CAAC;MAED,IAAIf,MAAM,GAAGM,MAAM,CAACU,MAAM,CAACH,MAAM,EAAEC,MAAM,CAAC;MAC1C9C,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAEG,cAAc,CAAC;IAC1C,CAAC,CAAC;IAEFhB,EAAE,CAAC,kEAAkE,EAAE,YAAY;MACjF,IAAI0B,MAAM,GAAG,CAAC,CAAC;MACf,IAAIC,MAAM,GAAG;QACXC,CAAC,EAAE;MACL,CAAC;MAED,IAAIf,MAAM,GAAGM,MAAM,CAACU,MAAM,CAACH,MAAM,EAAEC,MAAM,CAAC;MAC1C9C,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAEc,MAAM,CAAC;IAClC,CAAC,CAAC;IAEF3B,EAAE,CAAC,0DAA0D,EAAE,YAAY;MACzE,IAAI0B,MAAM,GAAG;QACXf,CAAC,EAAE,GAAG;QACNC,CAAC,EAAE;MACL,CAAC;MACD,IAAIe,MAAM,GAAG,CAAC,CAAC;MAEf,IAAId,MAAM,GAAGM,MAAM,CAACU,MAAM,CAACH,MAAM,EAAEC,MAAM,CAAC;MAC1C9C,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAEa,MAAM,CAAC;IAClC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF3C,QAAQ,CAAC,mBAAmB,EAAE,MAAM;IAClCoC,MAAM,CAACW,OAAO,CAAC;MACb,wBAAwB,EAAE;QACxBC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACVC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;MACd,CAAC;MACD,gCAAgC,EAAE;QAChCD,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACZC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;MACd,CAAC;MACD,2BAA2B,EAAE;QAC3BD,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpBC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;MACtB,CAAC;MACD,qBAAqB,EAAE;QACrBD,EAAE,EAAE,KAAK;QACTC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;MACd,CAAC;MACD,wBAAwB,EAAE;QACxBD,EAAE,EAAE,UAAU;QACdC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;MACtB,CAAC;MACD,2BAA2B,EAAE;QAC3BD,EAAE,EAAE,CAAC,CAAC,CAAC;QACPC,GAAG,EAAE;MACP,CAAC;MACD,wBAAwB,EAAE;QACxBD,EAAE,EAAE,IAAI;QACRC,GAAG,EAAE;MACP;IACF,CAAC,CAAC,CAACC,OAAO,CAACC,IAAA,IAA2B;MAAA,IAA1B,CAACC,CAAC,EAAE;QAACJ,EAAE,EAAEK,KAAK;QAAEJ;MAAG,CAAC,CAAC,GAAAE,IAAA;MAC/BlC,EAAE,CAAC,aAAamC,CAAC,EAAE,EAAE,MAAM;QACzBlE,MAAM,CAACO,iBAAiB,CAAC4D,KAAK,CAAC,CAAC,CAACC,EAAE,CAACC,GAAG,CAACN,GAAG,CAAC;MAC9C,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFjD,QAAQ,CAAC,iBAAiB,EAAE,YAAY;IACtCiB,EAAE,CAAC,mDAAmD,EAAE,YAAY;MAClE,IAAIuC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;MAClC,IAAI1B,MAAM,GAAG1C,KAAK,CAACqE,eAAe,CAACD,KAAK,CAAC;MACzC1D,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC,CAAC;IAEFb,EAAE,CAAC,oDAAoD,EAAE,YAAY;MACnE,IAAIuC,KAAK,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC;MACrB,IAAI1B,MAAM,GAAG1C,KAAK,CAACqE,eAAe,CAACD,KAAK,CAAC;MACzC1D,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC,CAAC;IAEFb,EAAE,CAAC,+CAA+C,EAAE,YAAY;MAC9D,IAAIuC,KAAK,GAAG,gBAAgB;MAC5B,IAAI1B,MAAM,GAAG1C,KAAK,CAACqE,eAAe,CAACD,KAAK,CAAC;MACzC1D,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC,CAAC;IAEFb,EAAE,CAAC,0CAA0C,EAAE,YAAY;MACzD,IAAIuC,KAAK,GAAG,EAAE;MACd,IAAI1B,MAAM,GAAG1C,KAAK,CAACqE,eAAe,CAACD,KAAK,CAAC;MACzC1D,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,EAAE,CAAC;IAC9B,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF9B,QAAQ,CAAC,yBAAyB,EAAE,YAAY;IAC9CiB,EAAE,CAAC,wDAAwD,EAAE,YAAY;MACvE,IAAIyC,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC;MACrB,IAAI5B,MAAM,GAAG1C,KAAK,CAACuE,uBAAuB,CAACD,IAAI,CAAC;MAChD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE,SAAS,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,wDAAwD,EAAE,YAAY;MACvE,IAAIyC,IAAI,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC;MACzB,IAAI5B,MAAM,GAAG1C,KAAK,CAACuE,uBAAuB,CAACD,IAAI,CAAC;MAChD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE,SAAS,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,qCAAqC,EAAE,YAAY;MACpD,IAAIyC,IAAI,GAAG,GAAG;MACd,IAAI5B,MAAM,GAAG1C,KAAK,CAACuE,uBAAuB,CAACD,IAAI,CAAC;MAChD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE8B,SAAS,CAAC;IACjC,CAAC,CAAC;IAEF3C,EAAE,CAAC,qCAAqC,EAAE,YAAY;MACpD,IAAIyC,IAAI,GAAG,CAAC;MACZ,IAAI5B,MAAM,GAAG1C,KAAK,CAACuE,uBAAuB,CAACD,IAAI,CAAC;MAChD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE8B,SAAS,CAAC;IACjC,CAAC,CAAC;IAEF3C,EAAE,CAAC,gDAAgD,EAAE,YAAY;MAC/D,IAAIyC,IAAI,GAAG,CAAC,GAAG,CAAC;MAChB,IAAI5B,MAAM,GAAG1C,KAAK,CAACuE,uBAAuB,CAACD,IAAI,CAAC;MAChD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE8B,SAAS,CAAC;IACjC,CAAC,CAAC;IAEF3C,EAAE,CAAC,wCAAwC,EAAE,YAAY;MACvD,IAAIyC,IAAI,GAAG,EAAE;MACb,IAAI5B,MAAM,GAAG1C,KAAK,CAACuE,uBAAuB,CAACD,IAAI,CAAC;MAChD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE8B,SAAS,CAAC;IACjC,CAAC,CAAC;IAEF3C,EAAE,CAAC,+CAA+C,EAAE,YAAY;MAC9D,IAAIyC,IAAI,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC;MACzB,IAAI5B,MAAM,GAAG1C,KAAK,CAACuE,uBAAuB,CAACD,IAAI,CAAC;MAChD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE8B,SAAS,CAAC;IACjC,CAAC,CAAC;IAEF3C,EAAE,CAAC,iDAAiD,EAAE,YAAY;MAChE,IAAIyC,IAAI,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC;MACvB,IAAI5B,MAAM,GAAG1C,KAAK,CAACuE,uBAAuB,CAACD,IAAI,CAAC;MAChD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE8B,SAAS,CAAC;IACjC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF5D,QAAQ,CAAC,kCAAkC,EAAE,YAAY;IACvDiB,EAAE,CAAC,wDAAwD,EAAE,YAAY;MACvE,IAAIyC,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC;MACrB,IAAI5B,MAAM,GAAG1C,KAAK,CAACyE,gCAAgC,CAACH,IAAI,CAAC;MACzD5D,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE;QAACgC,CAAC,EAAE,GAAG;QAAEC,CAAC,EAAE;MAAG,CAAC,CAAC;IAC5C,CAAC,CAAC;IAEF9C,EAAE,CAAC,wDAAwD,EAAE,YAAY;MACvE,IAAIyC,IAAI,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC;MACzB,IAAI5B,MAAM,GAAG1C,KAAK,CAACyE,gCAAgC,CAACH,IAAI,CAAC;MACzD5D,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE;QAACgC,CAAC,EAAE,GAAG;QAAEC,CAAC,EAAE;MAAG,CAAC,CAAC;IAC5C,CAAC,CAAC;IAEF9C,EAAE,CAAC,qCAAqC,EAAE,YAAY;MACpD,IAAIyC,IAAI,GAAG,GAAG;MACd,IAAI5B,MAAM,GAAG1C,KAAK,CAACyE,gCAAgC,CAACH,IAAI,CAAC;MACzD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE8B,SAAS,CAAC;IACjC,CAAC,CAAC;IAEF3C,EAAE,CAAC,qCAAqC,EAAE,YAAY;MACpD,IAAIyC,IAAI,GAAG,CAAC;MACZ,IAAI5B,MAAM,GAAG1C,KAAK,CAACyE,gCAAgC,CAACH,IAAI,CAAC;MACzD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE8B,SAAS,CAAC;IACjC,CAAC,CAAC;IAEF3C,EAAE,CAAC,gDAAgD,EAAE,YAAY;MAC/D,IAAIyC,IAAI,GAAG,CAAC,GAAG,CAAC;MAChB,IAAI5B,MAAM,GAAG1C,KAAK,CAACyE,gCAAgC,CAACH,IAAI,CAAC;MACzD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE8B,SAAS,CAAC;IACjC,CAAC,CAAC;IAEF3C,EAAE,CAAC,wCAAwC,EAAE,YAAY;MACvD,IAAIyC,IAAI,GAAG,EAAE;MACb,IAAI5B,MAAM,GAAG1C,KAAK,CAACyE,gCAAgC,CAACH,IAAI,CAAC;MACzD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE8B,SAAS,CAAC;IACjC,CAAC,CAAC;IAEF3C,EAAE,CAAC,+CAA+C,EAAE,YAAY;MAC9D,IAAIyC,IAAI,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC;MACzB,IAAI5B,MAAM,GAAG1C,KAAK,CAACyE,gCAAgC,CAACH,IAAI,CAAC;MACzD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE8B,SAAS,CAAC;IACjC,CAAC,CAAC;IAEF3C,EAAE,CAAC,iDAAiD,EAAE,YAAY;MAChE,IAAIyC,IAAI,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;MACvB,IAAI5B,MAAM,GAAG1C,KAAK,CAACyE,gCAAgC,CAACH,IAAI,CAAC;MACzD5D,MAAM,CAACoB,KAAK,CAACY,MAAM,EAAE8B,SAAS,CAAC;IACjC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF5D,QAAQ,CAAC,KAAK,EAAE,YAAY;IAC1BiB,EAAE,CAAC,uCAAuC,EAAE,YAAY;MACtD,IAAIa,MAAM,GAAG1C,KAAK,CAAC4E,GAAG,CAAC/D,UAAU,EAAEK,WAAW,CAAC;MAC/CR,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,IAAI,CAAC;IAChC,CAAC,CAAC;IAEFb,EAAE,CAAC,iCAAiC,EAAE,YAAY;MAChD,IAAIa,MAAM,GAAG1C,KAAK,CAAC4E,GAAG,CAAC7D,UAAU,EAAEG,WAAW,CAAC;MAC/CR,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,gCAAgC,EAAE,YAAY;MAC/C,IAAIa,MAAM,GAAG1C,KAAK,CAAC4E,GAAG,CAAC7D,UAAU,EAAEK,WAAW,CAAC;MAC/CV,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,IAAI,CAAC;IAChC,CAAC,CAAC;IAEFb,EAAE,CAAC,uCAAuC,EAAE,YAAY;MACtD,IAAIa,MAAM,GAAG1C,KAAK,CAAC4E,GAAG,CAAC5D,SAAS,EAAEI,WAAW,CAAC;MAC9CV,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,sCAAsC,EAAE,YAAY;MACrD,IAAIa,MAAM,GAAG1C,KAAK,CAAC4E,GAAG,CAAC5D,SAAS,EAAEK,UAAU,CAAC;MAC7CX,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,IAAI,CAAC;IAChC,CAAC,CAAC;IAEFb,EAAE,CAAC,uCAAuC,EAAE,YAAY;MACtD,IAAIa,MAAM,GAAG1C,KAAK,CAAC4E,GAAG,CAAC5D,SAAS,EAAEM,aAAa,CAAC;MAChDZ,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,kCAAkC,EAAE,YAAY;MACjD,IAAIa,MAAM,GAAG1C,KAAK,CAAC4E,GAAG,CAAC3D,YAAY,EAAEK,aAAa,CAAC;MACnDZ,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,IAAI,CAAC;IAChC,CAAC,CAAC;IAEFb,EAAE,CAAC,iCAAiC,EAAE,YAAY;MAChD,IAAIa,MAAM,GAAG1C,KAAK,CAAC4E,GAAG,CAAC3D,YAAY,EAAEE,WAAW,CAAC;MACjDT,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,gCAAgC,EAAE,YAAY;MAC/C,IAAIa,MAAM,GAAG1C,KAAK,CAAC4E,GAAG,CAAC9D,UAAU,EAAEK,WAAW,CAAC;MAC/CT,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,IAAI,CAAC;IAChC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF9B,QAAQ,CAAC,MAAM,EAAE,YAAY;IAC3BiB,EAAE,CAAC,wCAAwC,EAAE,YAAY;MACvD,IAAIa,MAAM,GAAG1C,KAAK,CAAC6E,IAAI,CAAC5D,YAAY,CAAC;MACrCP,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,IAAI,CAAC;IAChC,CAAC,CAAC;IAEFb,EAAE,CAAC,uCAAuC,EAAE,YAAY;MACtD,IAAIa,MAAM,GAAG1C,KAAK,CAAC6E,IAAI,CAAChE,UAAU,CAAC;MACnCH,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,uCAAuC,EAAE,YAAY;MACtD,IAAIa,MAAM,GAAG1C,KAAK,CAAC6E,IAAI,CAAC/D,UAAU,CAAC;MACnCJ,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,sCAAsC,EAAE,YAAY;MACrD,IAAIa,MAAM,GAAG1C,KAAK,CAAC6E,IAAI,CAAC7D,SAAS,CAAC;MAClCN,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,uCAAuC,EAAE,YAAY;MACtD,IAAIa,MAAM,GAAG1C,KAAK,CAAC6E,IAAI,CAAC9D,UAAU,CAAC;MACnCL,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF9B,QAAQ,CAAC,OAAO,EAAE,YAAY;IAC5BiB,EAAE,CAAC,sCAAsC,EAAE,YAAY;MACrD,IAAIa,MAAM,GAAG1C,KAAK,CAAC8E,KAAK,CAACjE,UAAU,CAAC;MACpCH,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,IAAI,CAAC;IAChC,CAAC,CAAC;IAEFb,EAAE,CAAC,uCAAuC,EAAE,YAAY;MACtD,IAAIa,MAAM,GAAG1C,KAAK,CAAC8E,KAAK,CAAChE,UAAU,CAAC;MACpCJ,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,uCAAuC,EAAE,YAAY;MACtD,IAAIa,MAAM,GAAG1C,KAAK,CAAC8E,KAAK,CAAC/D,UAAU,CAAC;MACpCL,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,sCAAsC,EAAE,YAAY;MACrD,IAAIa,MAAM,GAAG1C,KAAK,CAAC8E,KAAK,CAAC9D,SAAS,CAAC;MACnCN,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,yCAAyC,EAAE,YAAY;MACxD,IAAIa,MAAM,GAAG1C,KAAK,CAAC8E,KAAK,CAAC7D,YAAY,CAAC;MACtCP,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF9B,QAAQ,CAAC,SAAS,EAAE,YAAY;IAC9BiB,EAAE,CAAC,uCAAuC,EAAE,YAAY;MACtD,IAAIa,MAAM,GAAG1C,KAAK,CAAC+E,OAAO,CAAClE,UAAU,CAAC;MACtCH,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,uCAAuC,EAAE,YAAY;MACtD,IAAIa,MAAM,GAAG1C,KAAK,CAAC+E,OAAO,CAACjE,UAAU,CAAC;MACtCJ,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,uCAAuC,EAAE,YAAY;MACtD,IAAIa,MAAM,GAAG1C,KAAK,CAAC+E,OAAO,CAAChE,UAAU,CAAC;MACtCL,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,qCAAqC,EAAE,YAAY;MACpD,IAAIa,MAAM,GAAG1C,KAAK,CAAC+E,OAAO,CAAC/D,SAAS,CAAC;MACrCN,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,IAAI,CAAC;IAChC,CAAC,CAAC;IAEFb,EAAE,CAAC,yCAAyC,EAAE,YAAY;MACxD,IAAIa,MAAM,GAAG1C,KAAK,CAAC+E,OAAO,CAAC9D,YAAY,CAAC;MACxCP,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF9B,QAAQ,CAAC,eAAe,EAAE,YAAY;IACpCiB,EAAE,CAAC,uCAAuC,EAAE,YAAY;MACtD,IAAIa,MAAM,GAAG1C,KAAK,CAACgF,aAAa,CAACnE,UAAU,CAAC;MAC5CH,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,uCAAuC,EAAE,YAAY;MACtD,IAAIa,MAAM,GAAG1C,KAAK,CAACgF,aAAa,CAAClE,UAAU,CAAC;MAC5CJ,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,sCAAsC,EAAE,YAAY;MACrD,IAAIa,MAAM,GAAG1C,KAAK,CAACgF,aAAa,CAACjE,UAAU,CAAC;MAC5CL,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,IAAI,CAAC;IAChC,CAAC,CAAC;IAEFb,EAAE,CAAC,sCAAsC,EAAE,YAAY;MACrD,IAAIa,MAAM,GAAG1C,KAAK,CAACgF,aAAa,CAAChE,SAAS,CAAC;MAC3CN,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,yCAAyC,EAAE,YAAY;MACxD,IAAIa,MAAM,GAAG1C,KAAK,CAACgF,aAAa,CAAC/D,YAAY,CAAC;MAC9CP,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF9B,QAAQ,CAAC,SAAS,EAAE,YAAY;IAC9BiB,EAAE,CAAC,sCAAsC,EAAE,YAAY;MACrD,IAAIa,MAAM,GAAG1C,KAAK,CAACiF,OAAO,CAAClE,UAAU,CAAC;MACtCL,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,IAAI,CAAC;IAChC,CAAC,CAAC;IAEFb,EAAE,CAAC,2CAA2C,EAAE,YAAY;MAC1D,IAAIU,GAAG,GAAG;QAAEC,CAAC,EAAE;MAAI,CAAC;MACpB,IAAIE,MAAM,GAAG1C,KAAK,CAACiF,OAAO,CAAC1C,GAAG,CAAC;MAC/B7B,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,+BAA+B,EAAE,YAAY;MAC9C,IAAIU,GAAG,GAAG,IAAI;MACd,IAAIG,MAAM,GAAG1C,KAAK,CAACiF,OAAO,CAAC1C,GAAG,CAAC;MAC/B7B,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,IAAI,CAAC;IAChC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF9B,QAAQ,CAAC,UAAU,EAAE,YAAY;IAC/BiB,EAAE,CAAC,kEAAkE,EAAE,YAAY;MACjF,IAAIa,MAAM,GAAG1C,KAAK,CAACkF,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC;MACvCxE,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,IAAI,CAAC;IAChC,CAAC,CAAC;IAEFb,EAAE,CAAC,yEAAyE,EAAE,YAAY;MACxF,IAAIa,MAAM,GAAG1C,KAAK,CAACkF,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC;MACvCxE,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,KAAK,CAAC;IACjC,CAAC,CAAC;IAEFb,EAAE,CAAC,kDAAkD,EAAE,YAAY;MACjE,IAAIa,MAAM,GAAG1C,KAAK,CAACkF,QAAQ,CAAC,CAAC;MAC7BxE,MAAM,CAACyE,EAAE,CAAC,CAACzC,MAAM,EAAE,+BAA+B,CAAC;IACrD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF9B,QAAQ,CAAC,MAAM,EAAE,YAAY;IAC3BiB,EAAE,CAAC,+CAA+C,EAAE,YAAY;MAC9D,IAAIoC,KAAK,GAAG,CAAC,CAAC;MACd,IAAImB,QAAQ,GAAG,SAAAA,CAAA,EAAY,CAAC,CAAC;MAE7B,IAAI1C,MAAM,GAAG1C,KAAK,CAACqF,IAAI,CAACpB,KAAK,EAAEmB,QAAQ,CAAC;MACxC1E,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,EAAE,CAAC;IAC9B,CAAC,CAAC;IAEFb,EAAE,CAAC,4CAA4C,EAAE,YAAY;MAC3D,IAAIoC,KAAK,GAAG;QAAEzB,CAAC,EAAE,GAAG;QAAEC,CAAC,EAAE;MAAI,CAAC;MAC9B,IAAI2C,QAAQ,GAAG,SAAAA,CAAUE,CAAC,EAAE;QAAE,OAAOA,CAAC;MAAE,CAAC;MAEzC,IAAI5C,MAAM,GAAG1C,KAAK,CAACqF,IAAI,CAACpB,KAAK,EAAEmB,QAAQ,CAAC;MACxC1E,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC,CAAC;IAEFb,EAAE,CAAC,oEAAoE,EAAE,YAAY;MACnF,IAAIoC,KAAK,GAAG;QAAEzB,CAAC,EAAE,GAAG;QAAEC,CAAC,EAAE;MAAI,CAAC;MAC9B,IAAI2C,QAAQ,GAAG,SAAAA,CAAUE,CAAC,EAAEC,CAAC,EAAE;QAAE,OAAOD,CAAC,GAAGC,CAAC;MAAE,CAAC;MAEhD,IAAI7C,MAAM,GAAG1C,KAAK,CAACqF,IAAI,CAACpB,KAAK,EAAEmB,QAAQ,CAAC;MACxC1E,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC,CAAC;IAEFb,EAAE,CAAC,oEAAoE,EAAE,YAAY;MACnF,IAAIoC,KAAK,GAAG;QAAEzB,CAAC,EAAE,GAAG;QAAEC,CAAC,EAAE;MAAI,CAAC;MAC9B,IAAI2C,QAAQ,GAAG,SAAAA,CAAUE,CAAC,EAAEC,CAAC,EAAEC,CAAC,EAAE;QAAE,OAAOA,CAAC;MAAE,CAAC;MAE/C,IAAI9C,MAAM,GAAG1C,KAAK,CAACqF,IAAI,CAACpB,KAAK,EAAEmB,QAAQ,CAAC;MACxC1E,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAE,CAACuB,KAAK,EAAEA,KAAK,CAAC,CAAC;IAC1C,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFrD,QAAQ,CAAC,uBAAuB,EAAE,YAAY;IAC5C,IAAI8B,MAAM,GAAG1C,KAAK,CAACyF,qBAAqB,CAAC,CAAC;IAE1C5D,EAAE,CAAC,oBAAoB,EAAE,YAAY;MACnCnB,MAAM,CAACyE,EAAE,CAACzC,MAAM,CAACgD,EAAE,CAAC;IACtB,CAAC,CAAC;IAEF7D,EAAE,CAAC,wBAAwB,EAAE,YAAY;MACvCnB,MAAM,CAACR,SAAS,CAACwC,MAAM,CAACiD,MAAM,EAAE,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF9D,EAAE,CAAC,uBAAuB,EAAE,YAAY;MACtCnB,MAAM,CAACR,SAAS,CAACwC,MAAM,CAACkD,KAAK,EAAE,CAAC,CAAC;IACnC,CAAC,CAAC;IAEF/D,EAAE,CAAC,wBAAwB,EAAE,YAAY;MACvCnB,MAAM,CAACR,SAAS,CAACwC,MAAM,CAACmD,MAAM,EAAE,GAAG,CAAC;IACtC,CAAC,CAAC;IAEFhE,EAAE,CAAC,wBAAwB,EAAE,YAAY;MACvCnB,MAAM,CAACR,SAAS,CAACwC,MAAM,CAACoD,MAAM,EAAE,GAAG,CAAC;IACtC,CAAC,CAAC;IAEFjE,EAAE,CAAC,6BAA6B,EAAE,YAAY;MAC5CnB,MAAM,CAACR,SAAS,CAACwC,MAAM,CAACqD,WAAW,EAAE,GAAG,CAAC;IAC3C,CAAC,CAAC;IAEFlE,EAAE,CAAC,8BAA8B,EAAE,YAAY;MAC7CnB,MAAM,CAACR,SAAS,CAACwC,MAAM,CAACsD,YAAY,EAAE,GAAG,CAAC;IAC5C,CAAC,CAAC;IAEFnE,EAAE,CAAC,2BAA2B,EAAE,YAAY;MAC1CnB,MAAM,CAACR,SAAS,CAACwC,MAAM,CAACuD,SAAS,EAAE,IAAI,CAAC;IAC1C,CAAC,CAAC;IAEFpE,EAAE,CAAC,6BAA6B,EAAE,YAAY;MAC5CnB,MAAM,CAACR,SAAS,CAACwC,MAAM,CAACwD,WAAW,EAAE,GAAG,CAAC;IAC3C,CAAC,CAAC;IAEFrE,EAAE,CAAC,qBAAqB,EAAE,YAAY;MACpCnB,MAAM,CAACR,SAAS,CAACwC,MAAM,CAACyD,GAAG,EAAE,aAAa,CAAC;IAC7C,CAAC,CAAC;IAEFtE,EAAE,CAAC,uBAAuB,EAAE,YAAY;MACtCnB,MAAM,CAACyE,EAAE,CAACzC,MAAM,CAAC0D,KAAK,CAAC;IACzB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFxF,QAAQ,CAAC,eAAe,EAAE,YAAY;IACpCiB,EAAE,CAAC,kCAAkC,EAAE,YAAW;MAChD,IAAIwE,GAAG,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;MAC5B,IAAIC,KAAK,GAAG,CAAC;MACb,KAAK,IAAIC,GAAG,IAAIF,GAAG,EAAE;QACnBC,KAAK,EAAE;MACT;MACA5F,MAAM,CAACoB,KAAK,CAACuE,GAAG,CAACG,MAAM,EAAEF,KAAK,EAAE,qBAAqB,CAAC;IACxD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF1F,QAAQ,CAAC,gBAAgB,EAAE,YAAY;IACrCiB,EAAE,CAAC,oEAAoE,EAAE,YAAY;MACnF,MAAMuD,QAAQ,GAAG3D,KAAK,CAACgF,GAAG,CAAC,CAAC;MAC5B,MAAMC,OAAO,GAAG1G,KAAK,CAAC2G,cAAc,CAACvB,QAAQ,EAAE,CAAC,CAAC;MACjD,KAAK,IAAIwB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,CAAC,EAAEA,CAAC,EAAE,EAAE;QAC1BF,OAAO,CAAC,CAAC;MACX;MACAhG,MAAM,CAAC0E,QAAQ,CAACyB,SAAS,CAAC;MAC1BH,OAAO,CAAC,CAAC,CAAC;MACVhG,MAAM,CAAC0E,QAAQ,CAAC0B,MAAM,CAAC;MACvBpG,MAAM,CAACoB,KAAK,CAACsD,QAAQ,CAAC2B,SAAS,CAACC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFpG,QAAQ,CAAC,YAAY,EAAE,YAAW;IAChC,IAAI2B,GAAG,GAAG;MACR,CAAC,EAAE,CAAC;MACJ0E,IAAI,EAAE;QACJC,KAAK,EAAE;MACT;IACF,CAAC;IAEDrF,EAAE,CAAC,+CAA+C,EAAE,YAAW;MAC7D,IAAIsF,MAAM,GAAGnH,KAAK,CAACoH,UAAU,CAAC7E,GAAG,EAAE,MAAM,CAAC;MAC1C7B,MAAM,CAACR,SAAS,CAACiH,MAAM,EAAE5E,GAAG,CAAC0E,IAAI,CAAC;MAElC,IAAII,MAAM,GAAGrH,KAAK,CAACoH,UAAU,CAAC7E,GAAG,EAAE,YAAY,CAAC;MAChD7B,MAAM,CAACoB,KAAK,CAACuF,MAAM,EAAE,EAAE,CAAC;MAExB,IAAIC,MAAM,GAAGtH,KAAK,CAACoH,UAAU,CAAC7E,GAAG,EAAE,GAAG,CAAC;MACvC7B,MAAM,CAACoB,KAAK,CAACwF,MAAM,EAAE,CAAC,CAAC;IACzB,CAAC,CAAC;IAEFzF,EAAE,CAAC,mGAAmG,EAAE,YAAW;MACjH,IAAI0F,KAAK;MAET7G,MAAM,CAAC8G,YAAY,CAAC,YAAW;QAC7BD,KAAK,GAAGvH,KAAK,CAACoH,UAAU,CAAC7E,GAAG,EAAE,mBAAmB,CAAC;MACpD,CAAC,CAAC;MAEF7B,MAAM,CAACoB,KAAK,CAACyF,KAAK,EAAE/C,SAAS,CAAC;IAChC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF5D,QAAQ,CAAC,cAAc,EAAE,YAAW;IAClCiB,EAAE,CAAC,kDAAkD,EAAE,YAAW;MAChE,MAAM4F,OAAO,GAAG;QACdC,IAAI,EAAE,OAAO;QACbC,SAAS,EAAE;UACTC,UAAU,EAAE;QACd;MACF,CAAC;MACD5H,KAAK,CAAC6H,YAAY,CAACJ,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC;MAC/C/G,MAAM,CAACoB,KAAK,CAAC2F,OAAO,CAACC,IAAI,EAAE,UAAU,CAAC;MACtC1H,KAAK,CAAC6H,YAAY,CAACJ,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,CAAC;MACrE/G,MAAM,CAACoB,KAAK,CAAC2F,OAAO,CAACE,SAAS,CAACC,UAAU,EAAE,gBAAgB,CAAC;IAC9D,CAAC,CAAC;IAEF/F,EAAE,CAAC,uFAAuF,EAAE,YAAW;MACrG,MAAM4F,OAAO,GAAG,CAAC,CAAC;MAClBzH,KAAK,CAAC6H,YAAY,CAACJ,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC;MACrD/G,MAAM,CAACoH,QAAQ,CAACL,OAAO,CAACM,MAAM,EAAEvD,SAAS,CAAC;MAC1C9D,MAAM,CAACoH,QAAQ,CAACL,OAAO,CAACM,MAAM,CAACC,MAAM,EAAExD,SAAS,CAAC;MACjD9D,MAAM,CAACoB,KAAK,CAAC2F,OAAO,CAACM,MAAM,CAACC,MAAM,EAAE,OAAO,CAAC;IAC9C,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFpH,QAAQ,CAAC,kBAAkB,EAAE,YAAY;IACvCiB,EAAE,CAAC,+CAA+C,EAAE,YAAY;MAC9D,MAAMoG,MAAM,GAAG;QACbC,SAAS,EAAE,OAAO;QAClBC,UAAU,EAAE,cAAc;QAC1BC,SAAS,EAAE;MACb,CAAC;MAED,MAAMC,WAAW,GAAGrI,KAAK,CAACsI,gBAAgB,CAACL,MAAM,EAAE,CACjD,WAAW,EAAE,YAAY,CAC1B,CAAC;MAEFvH,MAAM,CAACR,SAAS,CAACmI,WAAW,EAAE;QAC5BH,SAAS,EAAE,OAAO;QAClBC,UAAU,EAAE;MACd,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFvH,QAAQ,CAAC,WAAW,EAAE,YAAY;IAChCiB,EAAE,CAAC,qBAAqB,EAAE,YAAY;MACpC,MAAMoG,MAAM,GAAG,CAAC;QACdM,IAAI,EAAE,MAAM;QACZC,UAAU,EAAE;UAACC,KAAK,EAAE;YAACC,OAAO,EAAE;UAAW;QAAC,CAAC;QAC3CC,QAAQ,EAAE;UACRC,MAAM,EAAEC,GAAG,IAAIC,MAAM,CAACF,MAAM,CAACC,GAAG,CAAC;UACjCE,GAAG,EAAE;QACP,CAAC;QACDC,IAAI,EAAE,CAAC;UACLC,MAAM,EAAE,kBAAkB;UAC1BC,MAAM,EAAE;YAAEC,WAAW,EAAE;UAAU;QACnC,CAAC;MACH,CAAC,CAAC;MAEF,MAAMC,UAAU,GAAGpJ,KAAK,CAACqJ,SAAS,CAACpB,MAAM,CAAC;MAC1CnI,MAAM,CAACsJ,UAAU,CAAC,CAAC,CAAC,CAACT,QAAQ,CAACI,GAAG,CAAC,CAAC7E,EAAE,CAACoF,EAAE,CAAC9G,CAAC,CAAC,QAAQ,CAAC;MACpD1C,MAAM,CAACsJ,UAAU,CAAC,CAAC,CAAC,CAACT,QAAQ,CAACC,MAAM,CAAC,CAAC1E,EAAE,CAACoF,EAAE,CAAC9G,CAAC,CAAC,UAAU,CAAC;IAC3D,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF5B,QAAQ,CAAC,yBAAyB,EAAE,YAAY;IAC9C,MAAM2I,OAAO,GAAG,CAAC;MACfhB,IAAI,EAAE,SAAS;MACfS,IAAI,EAAE,CAAC;QACLC,MAAM,EAAE,SAAS;QACjBC,MAAM,EAAE;UACNM,IAAI,EAAE;QACR;MACF,CAAC,EAAE;QACDP,MAAM,EAAE;MACV,CAAC;IACH,CAAC,CAAC;IAEFpH,EAAE,CAAC,iCAAiC,EAAE,YAAY;MAChD,MAAMa,MAAM,GAAG1C,KAAK,CAACyJ,uBAAuB,CAACF,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC;MAC3E,MAAMrG,QAAQ,GAAG,CAAC;QAChBsG,IAAI,EAAE;MACR,CAAC,CAAC;MACF9I,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAEQ,QAAQ,CAAC;IACpC,CAAC,CAAC;IAEFrB,EAAE,CAAC,8FAA8F,EAAE,YAAY;MAC7G,MAAMa,MAAM,GAAG1C,KAAK,CAACyJ,uBAAuB,CAACF,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC;MAC3E,MAAMrG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;MACrBxC,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAEQ,QAAQ,CAAC;IACpC,CAAC,CAAC;IAEFrB,EAAE,CAAC,qDAAqD,EAAE,YAAY;MACpE,MAAMa,MAAM,GAAG1C,KAAK,CAACyJ,uBAAuB,CAACF,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC;MAC3E,MAAMrG,QAAQ,GAAG,EAAE;MACnBxC,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAEQ,QAAQ,CAAC;IACpC,CAAC,CAAC;IAEFrB,EAAE,CAAC,qDAAqD,EAAE,YAAY;MACpE,MAAMa,MAAM,GAAG1C,KAAK,CAACyJ,uBAAuB,CAACF,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC;MAC3E,MAAMrG,QAAQ,GAAG,EAAE;MACnBxC,MAAM,CAACR,SAAS,CAACwC,MAAM,EAAEQ,QAAQ,CAAC;IACpC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFtC,QAAQ,CAAC,0BAA0B,EAAE,YAAY;IAC/CiB,EAAE,CAAC,6EAA6E,EAAE,YAAY;MAC5F,MAAM6H,IAAI,GAAG,iBAAiB;MAC9B,MAAMC,KAAK,GAAGpJ,wBAAwB,CAACmJ,IAAI,CAAC;MAC5C5J,MAAM,CAAC6J,KAAK,CAAC,CAACzF,EAAE,CAACpC,KAAK,CAAC,mBAAmB,CAAC;MAE3C,MAAM8H,IAAI,GAAG,eAAe;MAC5B,MAAMC,KAAK,GAAGtJ,wBAAwB,CAACqJ,IAAI,CAAC;MAC5C9J,MAAM,CAAC+J,KAAK,CAAC,CAAC3F,EAAE,CAACpC,KAAK,CAAC8H,IAAI,CAAC;IAC9B,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFhJ,QAAQ,CAAC,aAAa,EAAE,YAAY;IAClCA,QAAQ,CAAC,YAAY,EAAE,YAAY;MACjC,IAAIkJ,MAAM;MAEVtI,UAAU,CAAC,YAAY;QACrBsI,MAAM,GAAG9J,KAAK,CAAC+J,QAAQ,CAAC,gFAAgF,CAAC;MAC3G,CAAC,CAAC;MAEFlI,EAAE,CAAC,uBAAuB,EAAE,YAAY;QACtC/B,MAAM,CAACgK,MAAM,CAAC,CAAC5F,EAAE,CAAC8F,IAAI,CAACC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;MACrD,CAAC,CAAC;MAEFpI,EAAE,CAAC,uBAAuB,EAAE,YAAY;QACtC/B,MAAM,CAACgK,MAAM,CAAC,CAAC5F,EAAE,CAAC8F,IAAI,CAACC,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;MAC5D,CAAC,CAAC;MAEFpI,EAAE,CAAC,mBAAmB,EAAE,YAAY;QAClC/B,MAAM,CAACgK,MAAM,CAAC,CAAC5F,EAAE,CAAC8F,IAAI,CAACC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;MAC/C,CAAC,CAAC;MAEFpI,EAAE,CAAC,uBAAuB,EAAE,YAAY;QACtC/B,MAAM,CAACgK,MAAM,CAAC,CAAC5F,EAAE,CAAC8F,IAAI,CAACC,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC;MAC3D,CAAC,CAAC;MAEFpI,EAAE,CAAC,2BAA2B,EAAE,YAAY;QAC1C/B,MAAM,CAACgK,MAAM,CAAC,CAAC5F,EAAE,CAAC8F,IAAI,CAACC,QAAQ,CAAC,QAAQ,CAAC;QACzCnK,MAAM,CAACgK,MAAM,CAACI,MAAM,CAAC,CAAChG,EAAE,CAACC,GAAG,CAAC;UAC3BgG,GAAG,EAAE,KAAK;UACVD,MAAM,EAAE,MAAM;UACdE,GAAG,EAAE;QACP,CAAC,CAAC;MACJ,CAAC,CAAC;MAEFvI,EAAE,CAAC,mBAAmB,EAAE,YAAY;QAClC/B,MAAM,CAACgK,MAAM,CAAC,CAAC5F,EAAE,CAAC8F,IAAI,CAACC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;MACjD,CAAC,CAAC;MAEFpI,EAAE,CAAC,mBAAmB,EAAE,YAAY;QAClC/B,MAAM,CAACgK,MAAM,CAAC,CAAC5F,EAAE,CAAC8F,IAAI,CAACC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;MAC7D,CAAC,CAAC;IACJ,CAAC,CAAC;IAEFrJ,QAAQ,CAAC,yCAAyC,EAAE,YAAY;MAC9D,IAAIkJ,MAAM;MAEVtI,UAAU,CAAC,YAAY;QACrBsI,MAAM,GAAG9J,KAAK,CAAC+J,QAAQ,CAAC,gFAAgF,EAAE;UAACM,gBAAgB,EAAE;QAAI,CAAC,CAAC;MACrI,CAAC,CAAC;MAEFxI,EAAE,CAAC,2BAA2B,EAAE,YAAY;QAC1C/B,MAAM,CAACgK,MAAM,CAAC,CAAC5F,EAAE,CAAC8F,IAAI,CAACC,QAAQ,CAAC,QAAQ,CAAC;QACzCnK,MAAM,CAACgK,MAAM,CAACI,MAAM,CAAC,CAAChG,EAAE,CAACC,GAAG,CAAC;UAC3BgG,GAAG,EAAE,KAAK;UACVD,MAAM,EAAE,MAAM;UACdE,GAAG,EAAE;QACP,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ,CAAC,CAAC;IAEFxJ,QAAQ,CAAC,YAAY,EAAE,YAAY;MACjCiB,EAAE,CAAC,+BAA+B,EAAE,YAAY;QAC9C/B,MAAM,CAACE,KAAK,CAACsK,QAAQ,CAAC;UACpBC,QAAQ,EAAE,MAAM;UAChBC,QAAQ,EAAE,aAAa;UACvBC,IAAI,EAAE,IAAI;UACVC,QAAQ,EAAE,YAAY;UACtBR,MAAM,EAAE;YAACC,GAAG,EAAE,KAAK;YAAED,MAAM,EAAE,MAAM;YAAEE,GAAG,EAAE;UAAiB,CAAC;UAC5DO,IAAI,EAAE;QACR,CAAC,CAAC,CAAC,CAACzG,EAAE,CAACpC,KAAK,CAAC,gFAAgF,CAAC;MAChG,CAAC,CAAC;MAEFD,EAAE,CAAC,0CAA0C,EAAE,YAAY;QACzD/B,MAAM,CAACE,KAAK,CAACsK,QAAQ,CAAC;UACpBE,QAAQ,EAAE;QACZ,CAAC,CAAC,CAAC,CAACtG,EAAE,CAACpC,KAAK,CAAC,oBAAoB,CAAC;MACpC,CAAC,CAAC;IACJ,CAAC,CAAC;IAEFlB,QAAQ,CAAC,6CAA6C,EAAE,YAAY;MAClE,IAAIkJ,MAAM;MAEVtI,UAAU,CAAC,YAAY;QACrBsI,MAAM,GAAG9J,KAAK,CAAC+J,QAAQ,CAAC,gFAAgF,EAAE;UAACa,oBAAoB,EAAE;QAAI,CAAC,CAAC;MACzI,CAAC,CAAC;MAEF/I,EAAE,CAAC,2BAA2B,EAAE,YAAY;QAC1C/B,MAAM,CAACgK,MAAM,CAAC,CAAC5F,EAAE,CAAC8F,IAAI,CAACC,QAAQ,CAAC,QAAQ,CAAC;QACzCnK,MAAM,CAACgK,MAAM,CAACI,MAAM,CAAC,CAAChG,EAAE,CAACpC,KAAK,CAAC,sCAAsC,CAAC;MACxE,CAAC,CAAC;IACJ,CAAC,CAAC;IAEFlB,QAAQ,CAAC,gBAAgB,EAAE,MAAM;MAC/B,CACE,CAAC,yBAAyB,EAAE,yBAAyB,CAAC,EACtD,CAAC,8BAA8B,EAAE,8BAA8B,CAAC,EAChE,CAAC,sBAAsB,EAAE,sBAAsBkC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,EACzE,CAAC,+CAA+C,EAAE,8CAA8C,GAAGA,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAC3H,CAAC,kCAAkC,EAAE,kCAAkC,CAAC,EACxE,CAAC,iBAAiB,EAAE,GAAGA,kBAAkB,CAAC,SAAS,CAAC,WAAW,CAAC,EAChE,CAAC,4CAA4C,EAAE,4CAA4C,CAAC,CAC7F,CAACgB,OAAO,CAAC+G,KAAA,IAAuB;QAAA,IAAtB,CAAC5G,KAAK,EAAEf,QAAQ,CAAC,GAAA2H,KAAA;QAC1BhJ,EAAE,CAAC,cAAcoC,KAAK,OAAOf,QAAQ,EAAE,EAAE,MAAM;UAC7CpD,MAAM,CAACK,cAAc,CAAC8D,KAAK,CAAC,CAAC,CAACC,EAAE,CAACC,GAAG,CAACjB,QAAQ,CAAC;QAChD,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFtC,QAAQ,CAAC,eAAe,EAAE,YAAY;IACpC,IAAIkK,GAAG;IAEPtJ,UAAU,CAAC,YAAY;MACrBsJ,GAAG,GAAGC,QAAQ,CAACC,cAAc,CAACC,kBAAkB,CAAC,mBAAmB,CAAC;IACvE,CAAC,CAAC;IAEFpJ,EAAE,CAAC,oDAAoD,EAAE,YAAY;MACnE,MAAMqJ,QAAQ,GAAGJ,GAAG,CAACK,aAAa,CAAC,KAAK,CAAC;MACzC,MAAM5H,MAAM,GAAGuH,GAAG,CAACM,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;MAClD,MAAMC,QAAQ,GAAGrL,KAAK,CAACsL,aAAa,CAACJ,QAAQ,EAAEJ,GAAG,EAAE,MAAM,CAAC;MAC3DhL,MAAM,CAACuL,QAAQ,CAAC,CAACnH,EAAE,CAACpC,KAAK,CAACyB,MAAM,CAACgI,UAAU,CAAC;IAC9C,CAAC,CAAC;IAEF1J,EAAE,CAAC,4DAA4D,EAAE,YAAY;MAC3E,MAAMqJ,QAAQ,GAAGJ,GAAG,CAACK,aAAa,CAAC,KAAK,CAAC;MACzC,MAAM5H,MAAM,GAAGuH,GAAG,CAACM,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;MAClD,MAAMC,QAAQ,GAAGrL,KAAK,CAACsL,aAAa,CAACJ,QAAQ,EAAEJ,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC;MACjEhL,MAAM,CAACuL,QAAQ,CAAC,CAACnH,EAAE,CAACpC,KAAK,CAACyB,MAAM,CAACiI,SAAS,CAAC;IAC7C,CAAC,CAAC;IAEF3J,EAAE,CAAC,yDAAyD,EAAE,YAAY;MACxE,MAAMqJ,QAAQ,GAAGJ,GAAG,CAACK,aAAa,CAAC,KAAK,CAAC;MACzC,MAAM5H,MAAM,GAAGuH,GAAG,CAACM,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;MAClD,MAAMC,QAAQ,GAAGrL,KAAK,CAACsL,aAAa,CAACJ,QAAQ,EAAEJ,GAAG,CAAC;MACnDhL,MAAM,CAACuL,QAAQ,CAAC,CAACnH,EAAE,CAACpC,KAAK,CAACyB,MAAM,CAACgI,UAAU,CAAC;IAC9C,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF3K,QAAQ,CAAC,iBAAiB,EAAE,YAAY;IACtC,IAAI6K,aAAa;IACjB,IAAIC,SAAS;IAEbC,MAAM,CAAC,YAAY;MACjBF,aAAa,GAAGhK,KAAK,CAACO,IAAI,CAAC4J,SAAS,EAAE,WAAW,CAAC,CAACC,GAAG,CAAC,YAAY;QACjE,OAAOH,SAAS;MAClB,CAAC,CAAC;IACJ,CAAC,CAAC;IAEFI,KAAK,CAAC,YAAY;MAChBL,aAAa,CAAC7J,OAAO,CAAC,CAAC;IACzB,CAAC,CAAC;IAEFC,EAAE,CAAC,yBAAyB,EAAE,YAAY;MACxC6J,SAAS,GAAG,iHAAiH;MAC7H5L,MAAM,CAACE,KAAK,CAAC+L,eAAe,CAAC,CAAC,CAAC,CAAC7H,EAAE,CAACpC,KAAK,CAAC,IAAI,CAAC;IAChD,CAAC,CAAC;IACFD,EAAE,CAAC,+BAA+B,EAAE,YAAY;MAC9C6J,SAAS,GAAG,2HAA2H;MACvI5L,MAAM,CAACE,KAAK,CAAC+L,eAAe,CAAC,CAAC,CAAC,CAAC7H,EAAE,CAACpC,KAAK,CAAC,KAAK,CAAC;IACjD,CAAC,CAAC;IACFD,EAAE,CAAC,0BAA0B,EAAE,YAAY;MACzC6J,SAAS,GAAG,+IAA+I;MAC3J5L,MAAM,CAACE,KAAK,CAAC+L,eAAe,CAAC,CAAC,CAAC,CAAC7H,EAAE,CAACpC,KAAK,CAAC,KAAK,CAAC;IACjD,CAAC,CAAC;IACFD,EAAE,CAAC,2BAA2B,EAAE,YAAY;MAC1C6J,SAAS,GAAG,sIAAsI;MAClJ5L,MAAM,CAACE,KAAK,CAAC+L,eAAe,CAAC,CAAC,CAAC,CAAC7H,EAAE,CAACpC,KAAK,CAAC,KAAK,CAAC;IACjD,CAAC,CAAC;IACFD,EAAE,CAAC,4BAA4B,EAAE,YAAY;MAC3C6J,SAAS,GAAG,oIAAoI;MAChJ5L,MAAM,CAACE,KAAK,CAAC+L,eAAe,CAAC,CAAC,CAAC,CAAC7H,EAAE,CAACpC,KAAK,CAAC,KAAK,CAAC;IACjD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,WAAW,EAAE,YAAW;IAC/BiB,EAAE,CAAC,uDAAuD,EAAE,YAAW;MACrE,MAAMmK,OAAO,GAAG;QACdC,KAAK,EAAE;UACLC,QAAQ,EAAE;QACZ;MACF,CAAC;MACD,MAAMC,OAAO,GAAG;QACdF,KAAK,EAAE;UACLG,QAAQ,EAAE;QACZ;MACF,CAAC;MAED,MAAMC,sBAAsB,GAAGrJ,MAAM,CAACU,MAAM,CAAC,CAAC,CAAC,EAAEsI,OAAO,EAAEG,OAAO,CAAC;MAClErM,MAAM,CAACuM,sBAAsB,CAAC,CAACnI,EAAE,CAACoI,IAAI,CAACxK,KAAK,CAAC;QAC3CmK,KAAK,EAAE;UACLG,QAAQ,EAAE;QACZ;MACF,CAAC,CAAC;MAEF,MAAMG,mBAAmB,GAAGvM,KAAK,CAACwM,SAAS,CAAC,CAAC,CAAC,EAAER,OAAO,EAAEG,OAAO,CAAC;MACjErM,MAAM,CAACyM,mBAAmB,CAAC,CAACrI,EAAE,CAACoI,IAAI,CAACxK,KAAK,CAAC;QACxCmK,KAAK,EAAE;UACLC,QAAQ,EAAE,KAAK;UACfE,QAAQ,EAAE;QACZ;MACF,CAAC,CAAC;IACJ,CAAC,CAAC;IAEFvK,EAAE,CAAC,mDAAmD,EAAE,YAAW;MACjE,MAAMmK,OAAO,GAAG;QACdS,QAAQ,EAAE;UACRC,QAAQ,EAAE;YACRC,QAAQ,EAAE;UACZ;QACF;MACF,CAAC;MACD,MAAMR,OAAO,GAAG;QACdM,QAAQ,EAAE;UACRC,QAAQ,EAAE;YACRE,QAAQ,EAAE;cACRC,QAAQ,EAAE;gBACRC,QAAQ,EAAE;cACZ;YACF;UACF,CAAC;UACDC,QAAQ,EAAE;QACZ;MACF,CAAC;MACD,MAAMC,OAAO,GAAG;QACdC,QAAQ,EAAE;MACZ,CAAC;MAED,MAAMC,MAAM,GAAGlN,KAAK,CAACwM,SAAS,CAAC,CAAC,CAAC,EAAER,OAAO,EAAEG,OAAO,EAAEa,OAAO,CAAC;MAC7DlN,MAAM,CAACoN,MAAM,CAAC,CAAChJ,EAAE,CAACoI,IAAI,CAACxK,KAAK,CAAC;QAC3B2K,QAAQ,EAAE;UACRC,QAAQ,EAAE;YACRC,QAAQ,EAAE,GAAG;YACbC,QAAQ,EAAE;cACRC,QAAQ,EAAE;gBACRC,QAAQ,EAAE;cACZ;YACF;UACF,CAAC;UACDC,QAAQ,EAAE;QACZ,CAAC;QACDE,QAAQ,EAAE;MACZ,CAAC,CAAC;IACJ,CAAC,CAAC;IAEFpL,EAAE,CAAC,oDAAoD,EAAE,YAAW;MAClE,MAAMmK,OAAO,GAAG;QACdS,QAAQ,EAAE;UACRC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;UACzBK,QAAQ,EAAE,KAAK;UACfI,QAAQ,EAAE;QACZ;MACF,CAAC;MACD,MAAMhB,OAAO,GAAG;QACdM,QAAQ,EAAE;UACRC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;UACzBU,QAAQ,EAAE;QACZ;MACF,CAAC;MAED,MAAMF,MAAM,GAAGlN,KAAK,CAACwM,SAAS,CAAC,CAAC,CAAC,EAAER,OAAO,EAAEG,OAAO,CAAC;MACpDrM,MAAM,CAACoN,MAAM,CAAC,CAAChJ,EAAE,CAACoI,IAAI,CAACxK,KAAK,CAAC;QAC3B2K,QAAQ,EAAE;UACRC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;UACxCK,QAAQ,EAAE,KAAK;UACfI,QAAQ,EAAE,GAAG;UACbC,QAAQ,EAAE;QACZ;MACF,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFxM,QAAQ,CAAC,WAAW,EAAE,YAAW;IAC/BiB,EAAE,CAAC,mDAAmD,EAAE,YAAW;MACjE,MAAMwL,IAAI,GAAG;QACXC,MAAM,EAAE;UACNC,UAAU,EAAE,CACV;YAAEC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEpJ,KAAK,EAAE;UAAG,CAAC,EAClC;YAAEoJ,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAAEpJ,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;UAAE,CAAC;QAElG;MACF,CAAC;MACD,MAAMqJ,IAAI,GAAGJ,IAAI;MACjBvN,MAAM,CAACE,KAAK,CAACE,SAAS,CAACmN,IAAI,EAAEI,IAAI,CAAC,CAAC,CAACvJ,EAAE,CAACpC,KAAK,CAAC,IAAI,CAAC;IACpD,CAAC,CAAC;IACFD,EAAE,CAAC,6DAA6D,EAAE,YAAW;MAC3E,MAAMwL,IAAI,GAAG;QACXC,MAAM,EAAE;UACNC,UAAU,EAAE,CACV;YAAEC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEpJ,KAAK,EAAE;UAAG,CAAC,EAClC;YAAEoJ,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAAEpJ,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;UAAE,CAAC;QAElG;MACF,CAAC;MACD,MAAMqJ,IAAI,GAAG;QACXH,MAAM,EAAE;UACNC,UAAU,EAAE,CACV;YAAEC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEpJ,KAAK,EAAE;UAAG,CAAC,EAClC;YAAEoJ,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAAEpJ,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;UAAE,CAAC;QAElG;MACF,CAAC;MACDtE,MAAM,CAACE,KAAK,CAACE,SAAS,CAACmN,IAAI,EAAEI,IAAI,CAAC,CAAC,CAACvJ,EAAE,CAACpC,KAAK,CAAC,IAAI,CAAC;IACpD,CAAC,CAAC;IACFD,EAAE,CAAC,8DAA8D,EAAE,YAAW;MAC5E,MAAM6L,UAAU,GAAG,WAAW;MAC9B,MAAMC,UAAU,GAAG,WAAW;MAC9B7N,MAAM,CAACE,KAAK,CAACE,SAAS,CAACwN,UAAU,EAAEC,UAAU,CAAC,CAAC,CAACzJ,EAAE,CAACpC,KAAK,CAAC,IAAI,CAAC;IAChE,CAAC,CAAC;IACFD,EAAE,CAAC,mEAAmE,EAAE,YAAW;MACjF,MAAM6L,UAAU,GAAG,EAAE;MACrB,MAAMC,UAAU,GAAG,GAAG;MACtB7N,MAAM,CAACE,KAAK,CAACE,SAAS,CAACwN,UAAU,EAAEC,UAAU,CAAC,CAAC,CAACzJ,EAAE,CAACpC,KAAK,CAAC,KAAK,CAAC;IACjE,CAAC,CAAC;IACFD,EAAE,CAAC,wEAAwE,EAAE,YAAW;MACtF,MAAMwL,IAAI,GAAG;QACXC,MAAM,EAAE;UACNC,UAAU,EAAE,CACV;YAAEC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEpJ,KAAK,EAAE;UAAG,CAAC,EAClC;YAAEoJ,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAAEpJ,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;UAAE,CAAC;QAElG;MACF,CAAC;MACD,MAAMqJ,IAAI,GAAG;QACXH,MAAM,EAAE;UACNC,UAAU,EAAE,CACV;YAAEC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEpJ,KAAK,EAAE;UAAG,CAAC,EAClC;YAAEoJ,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAAEpJ,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;UAAE,CAAC;QAE/D;MACF,CAAC;MACDtE,MAAM,CAACE,KAAK,CAACE,SAAS,CAACmN,IAAI,EAAEI,IAAI,CAAC,CAAC,CAACvJ,EAAE,CAACpC,KAAK,CAAC,KAAK,CAAC;IACrD,CAAC,CAAC;IACFD,EAAE,CAAC,0CAA0C,EAAE,MAAM;MACnD,SAAS+L,KAAKA,CAACrL,GAAG,EAAE;QAClBS,MAAM,CAACU,MAAM,CAAC,IAAI,EAAEnB,GAAG,CAAC;MAC1B;MACA,MAAMA,GAAG,GAAG;QAACgE,GAAG,EAAE;MAAO,CAAC;MAC1BzG,MAAM,CAACI,SAAS,CAAC;QAAC2N,KAAK,EAAEtL;MAAG,CAAC,EAAE;QAACsL,KAAK,EAAE,IAAID,KAAK,CAACrL,GAAG;MAAC,CAAC,EAAE;QAACuL,UAAU,EAAE;MAAI,CAAC,CAAC,CAAC,CAAC5J,EAAE,CAACoF,EAAE,CAACyE,KAAK;IAC1F,CAAC,CAAC;IACFlM,EAAE,CAAC,8DAA8D,EAAE,MAAM;MACvEiK,KAAK,CAAC,YAAY;QAChB,OAAOkC,KAAK,CAACC,SAAS,CAACC,gBAAgB;MACzC,CAAC,CAAC;MACF;MACAF,KAAK,CAACC,SAAS,CAACC,gBAAgB,GAAG,SAAS;MAC5CpO,MAAM,CAACI,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAACgE,EAAE,CAACoF,EAAE,CAAC6E,IAAI;IACtC,CAAC,CAAC;IAEFvN,QAAQ,CAAC,YAAY,EAAE,YAAW;MAChCiB,EAAE,CAAC,iDAAiD,EAAE,YAAW;QAC/D,MAAMuM,SAAS,GAAG,SAAS;QAC3BtO,MAAM,CAACE,KAAK,CAACqO,UAAU,CAACD,SAAS,CAAC,CAAC,CAAClK,EAAE,CAACpC,KAAK,CAAC9B,KAAK,CAACqO,UAAU,CAACD,SAAS,CAAC,CAAC;MAC3E,CAAC,CAAC;MACFvM,EAAE,CAAC,yEAAyE,EAAE,YAAW;QACvF,MAAMuM,SAAS,GAAG,SAAS;QAC3BtO,MAAM,CAACE,KAAK,CAACqO,UAAU,CAACD,SAAS,EAAE,CAAC,CAAC,CAAC,CAAClK,EAAE,CAACoK,GAAG,CAACxM,KAAK,CAAC9B,KAAK,CAACqO,UAAU,CAACD,SAAS,EAAE,CAAC,CAAC,CAAC;MACrF,CAAC,CAAC;MACFvM,EAAE,CAAC,yEAAyE,EAAE,YAAW;QACvF,MAAMuM,SAAS,GAAG,SAAS;QAC3B,MAAMG,SAAS,GAAG,SAAS;QAC3BzO,MAAM,CAACE,KAAK,CAACqO,UAAU,CAACD,SAAS,CAAC,CAAC,CAAClK,EAAE,CAACoK,GAAG,CAACxM,KAAK,CAAC9B,KAAK,CAACqO,UAAU,CAACE,SAAS,CAAC,CAAC;MAC/E,CAAC,CAAC;MACF1M,EAAE,CAAC,4CAA4C,EAAE,YAAW;QAC1D,MAAMuM,SAAS,GAAG,SAAS;QAC3BtO,MAAM,CAAC,OAAOE,KAAK,CAACqO,UAAU,CAACD,SAAS,CAAC,CAAC,CAAClK,EAAE,CAACpC,KAAK,CAAC,QAAQ,CAAC;MAC/D,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,sBAAsB,EAAE,MAAM;IACrC,IAAI4N,OAAO;IACX,IAAIC,SAAS;IAEb,SAASrJ,QAAQA,CAAA,EAAG;MAClBqJ,SAAS,EAAE;IACb;IAEA,SAASC,KAAKA,CAAA,EAAY;MAAA,IAAXA,KAAK,GAAAC,SAAA,CAAAnI,MAAA,QAAAmI,SAAA,QAAAnK,SAAA,GAAAmK,SAAA,MAAG,CAAC;MACtB,OAAO,IAAIC,OAAO,CAAEC,OAAO,IAAK;QAC9BxM,MAAM,CAACyM,UAAU,CAACD,OAAO,EAAEH,KAAK,CAAC;MACnC,CAAC,CAAC;IACJ;IAEAlN,UAAU,CAAC,MAAM;MACfiN,SAAS,GAAG,CAAC;MACbD,OAAO,GAAGnM,MAAM,CAAC0I,QAAQ,CAACI,aAAa,CAAC,KAAK,CAAC;IAChD,CAAC,CAAC;IAEFtJ,EAAE,CAAC,+BAA+B,EAAE,MAAM;MACxCvB,oBAAoB,CAACkO,OAAO,EAAE,EAAE,CAAC,CAACO,IAAI,CAAC3J,QAAQ,CAAC;MAChD,OAAOsJ,KAAK,CAAC,EAAE,CAAC,CAACK,IAAI,CAAC,MAAM;QAC1BjP,MAAM,CAAC2O,SAAS,CAAC,CAACvK,EAAE,CAACpC,KAAK,CAAC,CAAC,CAAC;MAC/B,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,CAAC,MAAM,EAAE,OAAO,CAAC,CAACgC,OAAO,CAAEkL,KAAK,IAAK;MACnCnN,EAAE,CAAC,uBAAuBmN,KAAK,SAAS,EAAE,MAAM;QAC9C1O,oBAAoB,CAACkO,OAAO,CAAC,CAACO,IAAI,CAAC3J,QAAQ,CAAC;QAC5CoJ,OAAO,CAACS,aAAa,CAAC,IAAIC,KAAK,CAACF,KAAK,CAAC,CAAC;QACvC,OAAON,KAAK,CAAC,CAAC,CAACK,IAAI,CAAC,MAAM;UACxBjP,MAAM,CAAC2O,SAAS,CAAC,CAACvK,EAAE,CAACpC,KAAK,CAAC,CAAC,CAAC;QAC/B,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,yBAAyB,EAAE,MAAM;IACxCiB,EAAE,CAAC,kCAAkC,EAAE,MAAM;MAC3C,MAAMsN,QAAQ,GAAG,IAAIC,IAAI,CAAC,YAAY,CAAC,CAACC,OAAO,CAAC,CAAC;MACjD5N,KAAK,CAACO,IAAI,CAACoN,IAAI,EAAE,KAAK,CAAC,CAACnN,OAAO,CAACkN,QAAQ,CAAC;MACzC,IAAIG,GAAG,GAAGtP,KAAK,CAACuP,uBAAuB,CAAC,CAAC;MACzCzP,MAAM,CAACwP,GAAG,CAAC,CAACxN,KAAK,CAACqN,QAAQ,CAAC;MAE3BG,GAAG,GAAGtP,KAAK,CAACuP,uBAAuB,CAAC,CAAC,CAAC;MACtCzP,MAAM,CAACwP,GAAG,CAAC,CAACxN,KAAK,CAACqN,QAAQ,GAAI,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAG,CAAC;MAEnDG,GAAG,GAAGtP,KAAK,CAACuP,uBAAuB,CAAC,CAAC,EAAE,GAAG,CAAC;MAC3CzP,MAAM,CAACwP,GAAG,CAAC,CAACxN,KAAK,CAACqN,QAAQ,GAAI,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAG,CAAC;MAEnDG,GAAG,GAAGtP,KAAK,CAACuP,uBAAuB,CAAC,CAAC,EAAE,GAAG,CAAC;MAC3CzP,MAAM,CAACwP,GAAG,CAAC,CAACxN,KAAK,CAACqN,QAAQ,GAAI,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAK,CAAC;MAE1DG,GAAG,GAAGtP,KAAK,CAACuP,uBAAuB,CAAC,CAAC,EAAE,GAAG,CAAC;MAC3CzP,MAAM,CAACwP,GAAG,CAAC,CAACxN,KAAK,CAACqN,QAAQ,GAAI,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,IAAK,CAAC;;MAE9D;MACAG,GAAG,GAAGtP,KAAK,CAACuP,uBAAuB,CAAC,EAAE,EAAE,GAAG,CAAC;MAC5CzP,MAAM,CAACwP,GAAG,CAAC,CAACxN,KAAK,CAACqN,QAAQ,CAAC;IAC7B,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFvO,QAAQ,CAAC,sBAAsB,EAAE,MAAM;IACrCiB,EAAE,CAAC,oCAAoC,EAAE,MAAM;MAC7C,MAAMU,GAAG,GAAG;QAACgE,GAAG,EAAE,CAAC;QAAEiJ,UAAU,EAAE,MAAM;QAAEC,KAAK,EAAE,CAAC,MAAM,CAAC;QAAEC,MAAM,EAAE;UAACC,GAAG,EAAE;YAACpN,GAAG,EAAE;UAAM;QAAC;MAAC,CAAC;MACvF,MAAMqN,KAAK,GAAG5P,KAAK,CAAC6P,oBAAoB,CAACtN,GAAG,CAAC;MAE7CzC,MAAM,CAACgQ,IAAI,CAACC,SAAS,CAACH,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC9N,KAAK,CAACgO,IAAI,CAACC,SAAS,CAAC;QAAC,KAAK,EAAE;MAAC,CAAC,CAAC,CAAC;MAClEjQ,MAAM,CAACgQ,IAAI,CAACC,SAAS,CAACH,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC9N,KAAK,CAACgO,IAAI,CAACC,SAAS,CAAC;QAAC,YAAY,EAAE;MAAM,CAAC,CAAC,CAAC;MAC9EjQ,MAAM,CAACgQ,IAAI,CAACC,SAAS,CAACH,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC9N,KAAK,CAACgO,IAAI,CAACC,SAAS,CAAC;QAAC,OAAO,EAAE,CAAC,MAAM;MAAC,CAAC,CAAC,CAAC;MAC3EjQ,MAAM,CAACgQ,IAAI,CAACC,SAAS,CAACH,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC9N,KAAK,CAACgO,IAAI,CAACC,SAAS,CAAC;QAAC,QAAQ,EAAE;UAACJ,GAAG,EAAE;YAACpN,GAAG,EAAE;UAAM;QAAC;MAAC,CAAC,CAAC,CAAC;MACxFzC,MAAM,CAAC8P,KAAK,CAACpJ,MAAM,CAAC,CAACtC,EAAE,CAACpC,KAAK,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,qBAAqB,EAAE,MAAM;IACpCiB,EAAE,CAAC,0CAA0C,EAAE,MAAM;MACnD,MAAMmO,MAAM,GAAGjF,QAAQ,CAACI,aAAa,CAAC,QAAQ,CAAC;MAC/C,MAAM8E,KAAK,GAAG;QACZ,iBAAiB,EAAE,GAAG;QACtB,kBAAkB,EAAE,GAAG;QACvB,IAAI,EAAE;MACR,CAAC;MACDD,MAAM,CAACtK,EAAE,GAAG,OAAO;MACnB1F,KAAK,CAACkQ,mBAAmB,CAACF,MAAM,EAAEC,KAAK,CAAC;MACxCnQ,MAAM,CAACkQ,MAAM,CAACG,OAAO,CAAC,YAAY,CAAC,CAAC,CAACjM,EAAE,CAACpC,KAAK,CAAC,GAAG,CAAC;MAClDhC,MAAM,CAACkQ,MAAM,CAACG,OAAO,CAACC,WAAW,CAAC,CAAClM,EAAE,CAACpC,KAAK,CAAC,GAAG,CAAC;MAChDhC,MAAM,CAACkQ,MAAM,CAACtK,EAAE,CAAC,CAACxB,EAAE,CAACpC,KAAK,CAAC,OAAO,CAAC;IACrC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,eAAe,EAAE,MAAM;IAC9BiB,EAAE,CAAC,+BAA+B,EAAE,MAAM;MACxC,MAAMwO,OAAO,GAAG;QACd7G,IAAI,EAAE,MAAM;QACZ8G,IAAI,EAAE;UACJC,IAAI,EAAE,GAAG;UACTC,IAAI,EAAE;QACR;MACF,CAAC;MACD,MAAMtD,MAAM,GAAGlN,KAAK,CAACyQ,cAAc,CAACJ,OAAO,CAAC;MAC5CvQ,MAAM,CAACoN,MAAM,CAAC,CAAChJ,EAAE,CAACpC,KAAK,CAAC,iDAAiD,CAAC;IAC5E,CAAC,CAAC;IACFD,EAAE,CAAC,0CAA0C,EAAE,MAAM;MACnD,MAAMwO,OAAO,GAAG;QAAC9K,CAAC,EAAE;MAAE,CAAC;MACvB,MAAM2H,MAAM,GAAGlN,KAAK,CAACyQ,cAAc,CAACJ,OAAO,CAAC;MAC5CvQ,MAAM,CAACoN,MAAM,CAAC,CAAChJ,EAAE,CAACpC,KAAK,CAAC,EAAE,CAAC;IAC7B,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,4BAA4B,EAAE,MAAM;IAC3C,IAAIW,OAAO;IAEXC,UAAU,CAAC,MAAM;MACfD,OAAO,GAAGE,KAAK,CAACC,aAAa,CAAC,CAAC;MAC/BH,OAAO,CAACS,IAAI,CAAChC,KAAK,EAAE,4BAA4B,CAAC,CAAC0Q,SAAS,CAAC,CAAC,MAAM;QACjE,IAAIC,YAAY;QAChB,OAAO,YAAY;UACjB,IAAIA,YAAY,KAAKnM,SAAS,EAAE;YAC9B,OAAOmM,YAAY;UACrB;UACA,IAAI;YACF,IAAI,OAAOtO,MAAM,CAACuO,iBAAiB,KAAK,WAAW,EAAE;cACnDD,YAAY,GAAG,KAAK;YACtB,CAAC,MAAM;cACL,MAAME,oBAAoB,GAAG,IAAIxO,MAAM,CAACuO,iBAAiB,CAAC,MAAM,CAAC;cACjED,YAAY,GAAG,IAAI;YACrB;UACF,CAAC,CAAC,OAAOG,KAAK,EAAE;YACdH,YAAY,GAAG,KAAK;UACtB;UACA,OAAOA,YAAY;QACrB,CAAC;MACH,CAAC,EAAE,CAAC,CAAC;IACP,CAAC,CAAC;IAEFhP,SAAS,CAAC,MAAM;MACdJ,OAAO,CAACK,OAAO,CAAC,CAAC;IACnB,CAAC,CAAC;IAEFC,EAAE,CAAC,sDAAsD,EAAE,MAAM;MAC/DQ,MAAM,CAACuO,iBAAiB,GAAG,MAAM,EAAE,CAAC,CAAC;MACrC9Q,MAAM,CAACE,KAAK,CAAC+Q,0BAA0B,CAAC,CAAC,CAAC,CAAC7M,EAAE,CAACoF,EAAE,CAAC6E,IAAI;IACvD,CAAC,CAAC;IAEFtM,EAAE,CAAC,uDAAuD,EAAE,MAAM;MAChE,OAAOQ,MAAM,CAACuO,iBAAiB,CAAC,CAAC;MACjC9Q,MAAM,CAACE,KAAK,CAAC+Q,0BAA0B,CAAC,CAAC,CAAC,CAAC7M,EAAE,CAACoF,EAAE,CAACyE,KAAK;IACxD,CAAC,CAAC;IAEFlM,EAAE,CAAC,+CAA+C,EAAE,MAAM;MACxDQ,MAAM,CAACuO,iBAAiB,GAAG,MAAM,EAAE,CAAC,CAAC;;MAErC,MAAM7J,SAAS,GAAG/G,KAAK,CAAC+Q,0BAA0B,CAAC,CAAC;MACpD,MAAMC,UAAU,GAAGhR,KAAK,CAAC+Q,0BAA0B,CAAC,CAAC;MAErDjR,MAAM,CAACiH,SAAS,CAAC,CAAC7C,EAAE,CAACpC,KAAK,CAACkP,UAAU,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFpQ,QAAQ,CAAC,sBAAsB,EAAE,MAAM;IACrC,IAAIqQ,yBAAyB;IAE7BzP,UAAU,CAAC,MAAM;MACfyP,yBAAyB,GAAGC,MAAM,CAACN,iBAAiB;MACpDM,MAAM,CAACN,iBAAiB,GAAG,MAAM;QAC/BO,WAAWA,CAACC,IAAI,EAAE;UAChB,IAAIA,IAAI,KAAK,MAAM,EAAE;YACnB,MAAM,IAAIC,KAAK,CAAC,8BAA8B,CAAC;UACjD;UACA,IAAI,CAACC,QAAQ,GAAG,IAAIC,cAAc,CAAC;YACjCC,KAAKA,CAACC,UAAU,EAAE;cAChBA,UAAU,CAACC,OAAO,CAAC,IAAIC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;cAChDF,UAAU,CAACG,KAAK,CAAC,CAAC;YACpB;UACF,CAAC,CAAC;UACF,IAAI,CAACC,QAAQ,GAAG,IAAIC,cAAc,CAAC,CAAC;QACtC;MACF,CAAC;IACH,CAAC,CAAC;IAEFnQ,SAAS,CAAC,MAAM;MACd,IAAIsP,yBAAyB,EAAE;QAC7BC,MAAM,CAACN,iBAAiB,GAAGK,yBAAyB;MACtD,CAAC,MAAM;QACL,OAAOC,MAAM,CAACN,iBAAiB;MACjC;IACF,CAAC,CAAC;IAEF/O,EAAE,CAAC,oEAAoE,EAAE,YAAY;MACnF,MAAMkQ,IAAI,GAAGjC,IAAI,CAACC,SAAS,CAAC;QAAE9I,IAAI,EAAE;MAAO,CAAC,CAAC;MAC7C,MAAM+K,cAAc,GAAG,MAAMhS,KAAK,CAACiS,oBAAoB,CAACF,IAAI,CAAC;MAE7DjS,MAAM,CAACkS,cAAc,CAAC,CAAC9N,EAAE,CAACoF,EAAE,CAAC4I,UAAU,CAACP,UAAU,CAAC;MACnD7R,MAAM,CAACkS,cAAc,CAACxL,MAAM,CAAC,CAACtC,EAAE,CAACoF,EAAE,CAAC6I,WAAW,CAAC,CAAC,CAAC;MAClDrS,MAAM,CAACkS,cAAc,CAAC,CAAC9N,EAAE,CAACoI,IAAI,CAACxK,KAAK,CAAC,IAAI6P,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC,CAAC;IAEF9P,EAAE,CAAC,mDAAmD,EAAE,YAAY;MAClE,MAAMuQ,aAAa,GAAG;QAAEnL,IAAI,EAAE;MAAO,CAAC;MACtC,MAAM+K,cAAc,GAAG,MAAMhS,KAAK,CAACiS,oBAAoB,CAACG,aAAa,CAAC;MAEtEtS,MAAM,CAACkS,cAAc,CAAC,CAAC9N,EAAE,CAACoF,EAAE,CAAC4I,UAAU,CAACP,UAAU,CAAC;MACnD7R,MAAM,CAACkS,cAAc,CAACxL,MAAM,CAAC,CAACtC,EAAE,CAACoF,EAAE,CAAC6I,WAAW,CAAC,CAAC,CAAC;MAClDrS,MAAM,CAACkS,cAAc,CAAC,CAAC9N,EAAE,CAACoI,IAAI,CAACxK,KAAK,CAAC,IAAI6P,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF/Q,QAAQ,CAAC,SAAS,EAAE,MAAM;EACxB,IAAIyR,EAAE;EAEN7Q,UAAU,CAAC,MAAM;IACf6Q,EAAE,GAAG5Q,KAAK,CAACO,IAAI,CAAC,CAAC,CAAC0O,SAAS,CAAC,YAAW;MACrC,OAAO1C,KAAK,CAACsE,IAAI,CAAC3D,SAAS,CAAC;IAC9B,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF9M,EAAE,CAAC,iBAAiB,EAAE,MAAM;IAC1B/B,MAAM,CAACM,OAAO,CAACiS,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAACnO,EAAE,CAACC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;EAC1D,CAAC,CAAC;EAEFtC,EAAE,CAAC,+DAA+D,EAAE,MAAM;IACxE,MAAM0Q,GAAG,GAAGnS,OAAO,CAACiS,EAAE,CAAC;IACvBE,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC;IACjBzS,MAAM,CAACyS,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAACrO,EAAE,CAACC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAClDrE,MAAM,CAACuS,EAAE,CAACG,SAAS,CAAC,CAACtO,EAAE,CAACpC,KAAK,CAAC,CAAC,CAAC;EAClC,CAAC,CAAC;EAEFD,EAAE,CAAC,iDAAiD,EAAE,MAAM;IAC1D,MAAM0Q,GAAG,GAAGnS,OAAO,CAACiS,EAAE,CAAC;IACvBE,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC;IACjBzS,MAAM,CAACyS,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAACrO,EAAE,CAACC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAChDrE,MAAM,CAACuS,EAAE,CAACG,SAAS,CAAC,CAACtO,EAAE,CAACC,GAAG,CAAC,CAAC,CAAC;EAChC,CAAC,CAAC;EAEFtC,EAAE,CAAC,6BAA6B,EAAE,MAAM;IACtC,MAAM0Q,GAAG,GAAGnS,OAAO,CAACiS,EAAE,CAAC;IACvBE,GAAG,CAAC,KAAK,CAAC;IACVA,GAAG,CAACE,KAAK,CAAC,CAAC;IACX3S,MAAM,CAACyS,GAAG,CAAC,KAAK,CAAC,CAAC,CAACrO,EAAE,CAACC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAClCrE,MAAM,CAACuS,EAAE,CAACG,SAAS,CAAC,CAACtO,EAAE,CAACpC,KAAK,CAAC,CAAC,CAAC;EAClC,CAAC,CAAC;EAEFD,EAAE,CAAC,2BAA2B,EAAE,MAAM;IACpC,MAAM0Q,GAAG,GAAGnS,OAAO,CAACiS,EAAE,EAAE;MAAA,SAAAK,IAAA,GAAA/D,SAAA,CAAAnI,MAAA,EAAIQ,IAAI,OAAAgH,KAAA,CAAA0E,IAAA,GAAAC,IAAA,MAAAA,IAAA,GAAAD,IAAA,EAAAC,IAAA;QAAJ3L,IAAI,CAAA2L,IAAA,IAAAhE,SAAA,CAAAgE,IAAA;MAAA;MAAA,OAAK3L,IAAI,CAAC4L,IAAI,CAAC,GAAG,CAAC;IAAA,EAAC;IACpDL,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC;IACjBA,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC;IACnBzS,MAAM,CAACyS,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAACrO,EAAE,CAACC,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACpDrE,MAAM,CAACuS,EAAE,CAACG,SAAS,CAAC,CAACtO,EAAE,CAACC,GAAG,CAAC,CAAC,CAAC;EAChC,CAAC,CAAC;EAEFvD,QAAQ,CAAC,cAAc,EAAE,MAAM;IAC7B,CACE;MACEyF,GAAG,EAAE,EAAE;MACPwM,KAAK,EAAE,CACL,CAAC,KAAK,EAAE,CAAC,CAAC;IAEd,CAAC,EACD;MACExM,GAAG,EAAE,CAAC,EAAE,CAAC;MACTwM,KAAK,EAAE,CACL,CAAC,CAAC,EAAE,CAAC,CAAC,EACN,CAAC,EAAE,EAAE,CAAC,CAAC,EACP,CAAC,EAAE,EAAE,CAAC,CAAC;IAEX,CAAC,EACD;MACExM,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;MACzBwM,KAAK,EAAE,CACL,CAAC,CAAC,EAAE,CAAC,CAAC,EACN,CAAC,EAAE,EAAE,CAAC,CAAC,EACP,CAAC,EAAE,EAAE,CAAC,CAAC,EACP,CAAC,EAAE,EAAE,CAAC,CAAC,EACP,CAAC,EAAE,EAAE,CAAC,CAAC,EACP,CAAC,EAAE,EAAE,CAAC,CAAC,EACP,CAAC,GAAG,EAAE,CAAC,CAAC;IAEZ,CAAC,CACF,CAAC/O,OAAO,CAACgP,KAAA,IAAkB;MAAA,IAAjB;QAACzM,GAAG;QAAEwM;MAAK,CAAC,GAAAC,KAAA;MACrBlS,QAAQ,CAAC,MAAMyF,GAAG,EAAE,EAAE,MAAM;QAC1BwM,KAAK,CAAC/O,OAAO,CAACiP,KAAA,IAAe;UAAA,IAAd,CAACC,EAAE,EAAEC,GAAG,CAAC,GAAAF,KAAA;UACtBlR,EAAE,CAAC,mBAAmBmR,EAAE,OAAOC,GAAG,EAAE,EAAE,MAAM;YAC1CnT,MAAM,CAACG,YAAY,CAACoG,GAAG,EAAE2M,EAAE,CAAC,CAAC,CAAC9O,EAAE,CAACpC,KAAK,CAACmR,GAAG,CAAC;UAC7C,CAAC,CAAC;QACJ,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC;AAEFrS,QAAQ,CAAC,kBAAkB,EAAE,MAAM;EACjC,IAAIsS,KAAK;EAET1R,UAAU,CAAC,MAAM;IACf0R,KAAK,GAAGzR,KAAK,CAAC0R,aAAa,CAAC;MAAEC,GAAG,EAAE,IAAIhE,IAAI,CAAC;IAAE,CAAC,CAAC;EAClD,CAAC,CAAC;EAEFzN,SAAS,CAAC,MAAM;IACduR,KAAK,CAACtR,OAAO,CAAC,CAAC;EACjB,CAAC,CAAC;EAEFC,EAAE,CAAC,gDAAgD,EAAE,MAAM;IACzD,MAAMwR,qBAAqB,GAAG5R,KAAK,CAACgF,GAAG,CAAChG,QAAQ,EAAE,oBAAoB,CAAC;IACvED,gBAAgB,CAAC,CAAC;IAClB0S,KAAK,CAACI,IAAI,CAAC,CAAC,CAAC;IACb9S,gBAAgB,CAAC,CAAC;IAClB0S,KAAK,CAACI,IAAI,CAAC,CAAC,CAAC;IACb9S,gBAAgB,CAAC,CAAC;IAClB0S,KAAK,CAACI,IAAI,CAAC,CAAC,CAAC;IACb9S,gBAAgB,CAAC,CAAC;IAClBiB,KAAK,CAACf,MAAM,CAAC6S,UAAU,CAACF,qBAAqB,CAAC;IAC9CH,KAAK,CAACI,IAAI,CAAC,EAAE,CAAC;IACd9S,gBAAgB,CAAC,CAAC;IAClBiB,KAAK,CAACf,MAAM,CAAC8S,WAAW,CAACH,qBAAqB,CAAC;EACjD,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
package/eslint.config.js CHANGED
@@ -98,6 +98,7 @@ module.exports = [
98
98
  rules: {
99
99
  'comma-dangle': 'off',
100
100
  semi: 'off',
101
+ 'no-undef': 2,
101
102
  'space-before-function-paren': 'off',
102
103
  'import/extensions': ['error', 'ignorePackages'],
103
104
  'no-restricted-syntax': [
@@ -120,8 +121,6 @@ module.exports = [
120
121
 
121
122
  eqeqeq: 'off',
122
123
  'no-return-assign': 'off',
123
- 'no-throw-literal': 'off',
124
- 'no-undef': 2,
125
124
  'no-useless-escape': 'off',
126
125
  'no-console': 'error',
127
126
  'jsdoc/check-types': 'off',
@@ -144,7 +143,6 @@ module.exports = [
144
143
  'jsdoc/require-yields-check': 'off',
145
144
  'jsdoc/tag-lines': 'off',
146
145
  'no-var': 'off',
147
- 'no-empty': 'off',
148
146
  'no-void': 'off',
149
147
  'array-callback-return': 'off',
150
148
  'prefer-const': 'off',
@@ -162,7 +160,6 @@ module.exports = [
162
160
  '@stylistic/multiline-ternary': 'off',
163
161
  '@stylistic/computed-property-spacing': 'off',
164
162
  '@stylistic/lines-between-class-members': 'off',
165
- '@stylistic/indent': 'off',
166
163
  '@stylistic/comma-dangle': 'off',
167
164
  '@stylistic/object-curly-newline': 'off',
168
165
  '@stylistic/object-property-newline': 'off',
@@ -244,8 +241,7 @@ module.exports = [
244
241
  'no-unused-expressions': 'off',
245
242
  'no-undef': 'off',
246
243
  'no-unused-vars': 'off',
247
- 'camelcase': 'off',
248
- 'no-global-assign': 'off'
244
+ 'camelcase': 'off'
249
245
  }
250
246
  },
251
247
  {
package/gulpfile.js CHANGED
@@ -443,11 +443,6 @@ function testCoverage(done) {
443
443
  }, done);
444
444
  }
445
445
 
446
- function coveralls() { // 2nd arg is a dependency: 'test' must be finished
447
- // first send results of istanbul's test coverage to coveralls.io.
448
- return execaTask('cat build/coverage/lcov.info | node_modules/coveralls-next/bin/coveralls.js')();
449
- }
450
-
451
446
  // This task creates postbid.js. Postbid setup is different from prebid.js
452
447
  // More info can be found here http://prebid.org/overview/what-is-post-bid.html
453
448
 
@@ -549,8 +544,6 @@ gulp.task('test', gulp.series(clean, lint, 'test-all-features-disabled', 'test-o
549
544
 
550
545
  gulp.task('test-coverage', gulp.series(clean, precompile(), testCoverage));
551
546
 
552
- gulp.task('coveralls', gulp.series('test-coverage', coveralls));
553
-
554
547
  // npm will by default use .gitignore, so create an .npmignore that is a copy of it except it includes "dist"
555
548
  gulp.task('setup-npmignore', execaTask("sed 's/^\\/\\?dist\\/\\?$//g;w .npmignore' .gitignore", {quiet: true}));
556
549
  gulp.task('build', gulp.series(clean, 'build-bundle-prod', updateCreativeExample, setupDist));