PageSourceSearch

https://www.pinkun.com/send-us-your-news/

html pinkun.com collected 2026-10-02 05:18:54 UTC 238,353 bytes, 3,662 lines download raw bytes

1<!-- standard - CustomHeader-Site.html --> <!DOCTYPE html>
2<html lang="en" xmlns:fb="http://www.facebook.com/2008/fbml" xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#">
3<head>
4    
5    <link rel="preconnect" href="https://d2zv5rkii46miq.cloudfront.net" />
6    <link rel="preconnect" href="https://visitanalytics.userreport.com" />
7    <link rel="preconnect" href="https://a02342.pinkun.com" />
8    <link rel="preconnect" href="https://securepubads.g.doubleclick.net" />
9    <link rel="preconnect" href="https://cdn.adsafeprotected.com" />
10    <link rel="preconnect" href="https://micro.rubiconproject.com" />
11    <link rel="preconnect" href="https://experience.tinypass.com" />
12    <link rel="preconnect" href="https://c.amazon-adsystem.com" />
13    <link rel="preconnect" href="https://tpc.googlesyndication.com">
14    <link rel="preconnect" href="https://pagead2.googlesyndication.com">
15    <link rel="preconnect" href="https://www.googletagservices.com">
16    <link rel="preconnect" href="https://cdn.ampproject.org">
17    <link rel="preconnect" href="https://securepubads.g.doubleclick.net">
18
19    <title>Send us your news</title>
20
21    <meta charset="utf-8">
22    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=1">
23    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
24    <meta name="OMG-Verify-V1" content="4389-366acdfc-5224-4c07-bb70-f74d8fbfc2db" />
25    <meta name="robots" content="max-image-preview:large">
26    <meta name="format-detection" content="telephone=no">
27
28    
28<script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["*"]},session_trace:{sampling_rate:0.0,mode:"FIXED_RATE",enabled:true,error_sampling_rate:0.0},performance:{capture_marks:false,capture_detail:false,capture_measures:true},browser_consent_mode:{enabled:false},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"1134382346",accountID:"962803",trustKey:"962803",xpid:"XQAFWVZQGwIAXFhTAAYBVFI=",licenseKey:"fd15ff24ac",applicationID:"1089177626",browserID:"1134382346"};;/*! For license information please see nr-loader-spa-1.322.0.min.js.LICENSE.txt */
29(()=>{var e={8122(e,t,r){"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),s=0===Object.keys(r).length?e:r;for(let a in s)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):e[a]instanceof Map||e[a]instanceof Set||e[a]instanceof Date||e[a]instanceof RegExp?r[a]=e[a]:"object"==typeof e[a]&&null!==t[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){r[a]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555(e,t,r){"use strict";r.d(t,{f:()=>a});var n=r(384),i=r(8122);const s={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0};function a(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}r.d(t,["D",0,e=>(0,i.a)(e,s)])},7699(e,t,r){"use strict";var n=r(860);const i={[n.K7.logging]:!0,[n.K7.genericEvents]:!0,[n.K7.jserrors]:!0,[n.K7.ajax]:!0};r.d(t,["It",0,1e6,"KC",0,i,"qh",0,"SESSION_ERROR"])},9324(e,t,r){"use strict";r.d(t,["A",0,"@newrelic/rrweb","x",0,"1.322.0"])},981(e,t,r){"use strict";r.d(t,["R",0,{AJAX:"AjaxRequest",PA:"PageAction",UA:"UserAction",BP:"BrowserPerformance",WS:"WebSocket",SPV:"SecurityPolicyViolation",JSE:"JavaScriptError",LOG:"Log",PVE:"PageView",PVT:"PageViewTiming",SR:"SessionReplay",ST:"SessionTrace",BI:"BrowserInteraction"}])},9752(e,t,r){"use strict";const n="newrelic-iframe-",i=n+"timing-update",s=n+"api",a=n+"api-response",o=n+"vitals-update",c=n+"ajax";r.d(t,["$8",0,o,"Gi",0,a,"KU",0,c,"Pl",0,n,"cS",0,s,"cr",0,i])},6154(e,t,r){"use strict";var n=r(1863);const i="undefined"!=typeof window&&!!window.document,s="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),o=Boolean("hidden"===a?.document?.visibilityState),c=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=d&&"undefined"==typeof SharedWorker,l=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),f=Date.now()-(0,n.t)();r.d(t,["OF",0,d,"RI",0,i,"WN",0,f,"bv",0,s,"gm",0,a,"lR",0,l,"m",0,c,"mw",0,o,"sb",0,u,"zk",0,()=>{const e=a?.performance?.getEntriesByType?.("navigation")?.[0];if(e&&e.responseStart>0&&e.responseStart<a.performance.now())return e}])},7295(e,t,r){"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>s});var n=[];function i(e){if(!e||s(e))return!1;if(0===n.length)return!0;if("*"===n[0].hostname)return!1;for(var t=0;t<n.length;t++){var r=n[t];if(r.hostname.test(e.hostname)&&r.pathname.test(e.pathname))return!1}return!0}function s(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;if("*"===r)return void(n=[{hostname:"*"}]);0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let s,a;i>0?(s=r.substring(0,i),a=r.substring(i)):(s=r,a="*");let[c]=s.split(":");n.push({hostname:o(c),pathname:o(a,!0)})}}function o(e,t=!1){const r=e.replace(/[.+?^${}()|[\]\\]/g,e=>"\\"+e).replace(/\*/g,".*?");return new RegExp((t?"^":"")+r+"$")}},3241(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(6154);function i(e={}){try{n.gm.dispatchEvent(new CustomEvent("newrelic",{detail:e}))}catch(e){}}},1687(e,t,r){"use strict";r.d(t,{Ak:()=>o,Ze:()=>d,x3:()=>c});var n=r(3241),i=r(3606),s=r(860),a=r(2646);function o(e,t){if(!e)return;const r={staged:!1,priority:s.P3[t]||0};
29e.runtime.drainRegistry.get(t)||e.runtime.drainRegistry.set(t,r)}function c(e,t){if(!e)return;const r=e.runtime.drainRegistry;r&&(r.get(t)&&r.delete(t),l(e,t,!1),r.size&&u(e))}function d(e,t="feature",r=!1){if(e){if(!e.runtime.drainRegistry.get(t)||r)return l(e,t);e.runtime.drainRegistry.get(t).staged=!0,u(e)}}function u(e){if(!e)return;const t=Array.from(e.runtime.drainRegistry);t.every(([e,t])=>t.staged)&&(t.sort((e,t)=>e[1].priority-t[1].priority),t.forEach(([t])=>{e.runtime.drainRegistry.delete(t),l(e,t)}))}function l(e,t,r=!0){if(!e)return;const s=e.ee,o=i.i.handlers;if(s&&!s.aborted&&s.backlog&&o){if((0,n.W)({type:"lifecycle",name:"drain",feature:t}),r){const e=s.backlog[t],r=o[t];if(r){for(let t=0;e&&t<e.length;++t)f(e[t],r);Object.entries(r).forEach(([e,t])=>{Object.values(t||{}).forEach(t=>{t[0]?.on&&t[0].context()instanceof a.y&&!t[0].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}s.isolatedBacklog||delete o[t],s.backlog[t]=null,s.emit("drain-"+t,[])}}function f(e,t){var r=e[1];Object.values(t[r]||{}).forEach(t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],s=e[2];n.apply(i,s)}})}},7836(e,t,r){"use strict";var n=r(384),i=r(8990),s=r(2646),a=r(5607);const o="nr@context:".concat(a.W),c=function e(t,r){var n={},a={},u={},l=!1;try{l=16===r.length&&d.initializedAgents?.[r]?.runtime.isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,s){!1!==s&&(s=!0);if(c.aborted&&!i)return;t&&s&&t.emit(e,r,n);var o=h(n);g(e).forEach(e=>{e.apply(o,r)});var d=v()[a[e]];d&&d.push([f,e,r,o]);return o},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach(([e,n])=>{a[n]=t,t in r||(r[t]=[])})},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach(e=>{delete f.backlog[e]})},isBuffering:function(e){return!!v()[a[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof s.y?e:e?(0,i.I)(e,o,()=>new s.y(o)):new s.y(o)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return u[t]=u[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=c),r.d(t,["P",0,o,"ee",0,c])},2646(e,t,r){"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908(e,t,r){"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,s){s?(s.buffer([e],i),s.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(9908);s.on=a;var i=s.handlers={};function s(e,t,r,s){a(s||n.d,i,e,t,r)}function a(e,t,r,i,s){s||(s="feature"),e||(e=n.d);var a=t[s]=t[s]||{};(a[r]=a[r]||[]).push([e,i])}},3878(e,t,r){"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function s(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>s,jT:()=>n,sp:()=>i})},5607(e,t,r){"use strict";const n=(0,r(9566).bz)();r.d(t,["W",0,n])},9566(e,t,r){"use strict";r.d(t,{LA:()=>a,ZF:()=>o,bz:()=>s,el:()=>c});var n=r(6154);function i(e,t){return e?15&e[t]:16*Math.random()|0}function s(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".split("").map(e=>"x"===e?i(t,r++).toString(16):"y"===e?(3&i()|8).toString(16):e).join("")}function a(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,s=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var o=0;o<e;o++)a.push(i(r,s++).toString(16));return a.join("")}function o(){return a(16)}function c(){return a(32)}},2614(e,t,r){"use strict";r.d(t,["BB",0,18e5,"Wt",0,"NRBA_SESSION::","g",0,{OFF:0,FULL:1,ERROR:2},"iL",0,{SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},"tS",0,{STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},"wk",0,144e5])},733(e,t,r){"use strict";function n(e,t){return function(e){let t=2166136261;for(let r=0;r<e.length;r++)t^=e.charCodeAt(r),t=Math.imul(t,16777619);return(t>>>0).toString(16).padStart(8,"0")}("".concat(String(e),":").concat(String(t)))}r.d(t,{Y:()=>n})},1863(e,t,r){"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},9119(e,t,r){"use strict";r.d(t,{L:()=>s});var n=/([^?#]*)[^#]*(#[^?]*|$).*/,i=/([^?#]*)().*/;function s(e,t){return e?e.replace(t?n:i,"$1$2"):e}},7485(e,t,r){"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},7866(e,t,r){"use strict";r.d(t,["Nc",0,/^\s*at Function code \(Function code:\d+:\d+\)\s*/i,"cn",0,/^\s*(?:([^@]*)(?:\(.*?\))?@)?((?:file|http|https|chrome|safari-extension).*?):(\d+)(?::(\d+))?\s*$/i,"fL",0,/^\s*at .+ \(eval at \S+ \((?:(?:file|http|https):[^)]+)?\)(?:, [^:]*:\d+:\d+)?\)$/i,"h3",0,/function (.+?)\s*\(/,"hB",0,/^\s*at (?:((?:\[object object\])?(?:[^(]*\([^)]*\))*[^()]*(?: \[as \S+\])?) )?\(?((?:file|http|https|chrome-extension):.*?)?:(\d+)(?::(\d+))?\)?\s*$/i])},944(e,t,r){"use strict";r.d(t,{R:()=>i});var n=r(3241);function i(e,t){"function"==typeof console.debug&&(console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t),(0,n.W)({drained:null,type:"data",name:"warn",feature:"warn",data:{code:e,secondary:t}}))}},8990(e,t,r){"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389(e,t,r){"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout(()=>{i=clearTimeout(i)},t)),n||(clearTimeout(i),i=setTimeout(()=>{e.apply(this,r)},t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},1910(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(944);const i=new Map;function s(...e){return e.every(e=>{if(i.has(e))return i.get(e);const t="function"==typeof e?e.toString():"",r=t.includes("[native code]"),s=t.includes("nrWrapper");return r||s||(0,n.R)(64,e?.name||t),i.set(e,r),r})}},3304(e,t,r){"use strict";r.d(t,{A:()=>i});var n=r(7836);function i(e){try{return JSON.stringify(e,(()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}})())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},9232(e,t,r){"use strict";r.d(t,["f",0,{MFE:"MFE",BA:"BA"}])},7560(e,t,r){"use strict";r.d(t,{N:()=>a,j:()=>c});var n=r(9119),i=r(944);const s=(0,r(6389).J)(e=>(0,i.R)(80,e));function a(e){if(!Array.isArray(e?.assets)||!e.assets.length)return;
29const t=e.assets.map(o).filter(Boolean);return t.length?{assets:t,scripts:t.filter(e=>e.isScript)}:void 0}function o(e){if(!e||"object"!=typeof e)return;const{matcher:t,type:r}=e;let i="string"==typeof t&&t.endsWith(".js");return void 0!==r&&(!function(e){return"script"===e||"asset"===e}(r)?s(r):i=function(e){return"script"===e}(r)),a=t,"[object RegExp]"===Object.prototype.toString.call(a)?{pattern:t,test:e=>(t.lastIndex=0,t.test((0,n.L)(e))),isScript:i}:"string"==typeof t&&t.length>0?{pattern:t,test:e=>(0,n.L)(e).includes(t),isScript:i}:void s(t);var a}function c(e,t,{scriptsOnly:r=!1}={}){if(!e||!t)return!1;return(r?e.scripts:e.assets).some(e=>e.test(t))}},5718(e,t,r){"use strict";r.d(t,{xo:()=>T,AZ:()=>v,cI:()=>g,Qr:()=>A,QL:()=>y});var n=r(6154),i=r(1863),s=r(9119),a=r(7866);class o{dom=new c;performance=new c;constructor(e){this.url=e,this.claimedBy=new Set}get script(){const e=Math.max(this.dom.start,this.performance.end);return{start:e,end:Math.max(this.dom.end,this.performance.end,e)}}}class c{start=0;end=0;value=void 0}function d(e=()=>{},t){return{get:()=>void 0!==t?t:e(),set:e=>{t=e}}}let u;try{u=v(y())[0]}catch(e){u=v(e)[0]}const l=new Map;let f=[];const h=new WeakMap;function p(e){let t=h.get(e);return t||(t={weighedAssetUrls:new Set,recordManifestScriptWindow:(t,r)=>{t&&(e.scriptStart=e.scriptStart>0?Math.min(e.scriptStart,t):t),r&&(e.scriptEnd=e.scriptEnd>0?Math.max(e.scriptEnd,r):r)}},h.set(e,t)),t}function g(e){return l.get(e)}function m(e){const t=g(e);
29if(t)return t;const r=new o(e);if(l.set(e,r),l.size>1e3){const e=l.keys().next().value;l.delete(e)}return r}if(n.gm.MutationObserver&&n.gm.document){new MutationObserver(e=>{e.forEach(e=>{e.addedNodes.forEach(e=>{if("SCRIPT"===e.nodeName&&e.src){const t=m((0,s.L)(e.src));t.dom.start=(0,i.t)(),t.dom.value=e;const r=()=>{t.dom.end=(0,i.t)()};["load","error"].forEach(t=>e.addEventListener(t,r,{once:!0}))}})})}).observe(n.gm.document,{childList:!0,subtree:!0})}if(n.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{if((e=>"script"===e.initiatorType||["link","fetch"].includes(e.initiatorType)&&(0,s.L)(e.name).endsWith(".js"))(e)){const t=m((0,s.L)(e.name));t.performance.start=Math.floor(e.startTime),t.performance.end=Math.floor(e.responseEnd),t.performance.value=e}if(!f.length)return;const t=[];f.forEach(({test:r,addedAt:n},s)=>{(r(e)||(0,i.t)()-n>1e4)&&t.push(s)}),f=f.filter((e,r)=>!t.includes(r))})}).observe({type:"resource",buffered:!0})}function v(e){if(!e||"string"!=typeof e)return[];const t=new Set,r=e.split("\n");for(const e of r){const r=e.match(a.cn)||e.match(a.hB)||e.match(a.fL);if(r&&r[2])t.add((0,s.L)(r[2]));else{const r=e.match(/\(([^)]+\.js):\d+:\d+\)/)||e.match(/^\s+at\s+([^\s(]+\.js):\d+:\d+/);r&&r[1]&&t.add((0,s.L)(r[1]))}}return[...t]}function y(){let e;try{const t=Error.stackTraceLimit;Error.stackTraceLimit=50,e=(new Error).stack,Error.stackTraceLimit=t}catch(t){e=(new Error).stack}return e}function b(e,t){return(0,s.L)(e.name)===t}function E(e,t){e.fetchStart=Math.floor(t.startTime),e.fetchEnd=Math.floor(t.responseEnd),e.asset=t.name,e.type=t.initiatorType,w(e,t)}function w(e,t){const r=(0,s.L)(t.name),{weighedAssetUrls:n}=p(e);n.has(r)||(n.add(r),e.totalWeight=(e.totalWeight||0)+(t.transferSize||0),"blocking"===t.renderBlockingStatus?e.renderBlocking=!0:"non-blocking"===t.renderBlockingStatus&&!0!==e.renderBlocking&&(e.renderBlocking=!1))}function R(e,t,r,n,i){if(w(e,t),"scripts"!==i&&"all"!==i)return;if("all"===i||r.isScript){const r=Math.floor(t.startTime),n=Math.floor(t.responseEnd);e.fetchStart=e.fetchStart>0?Math.min(e.fetchStart,r):r,e.fetchEnd=e.fetchEnd>0?Math.max(e.fetchEnd,n):n}if(r.isScript){const r=g((0,s.L)(t.name));if(r){const t=()=>{const{start:t,end:n}=r.script;p(e).recordManifestScriptWindow(t,n)};t(),!r.dom.end&&r.dom.value&&["load","error"].forEach(e=>r.dom.value.addEventListener(e,t,{once:!0}))}n.resolved||(e.asset=t.name,e.type=t.initiatorType,n.resolved=!0)}}function T(e,t){const r=t?.manifest;if(!r||!r.assets.length)return;const s={resolved:!1},a=new Set(r.assets);(n.gm.performance?.getEntriesByType("resource")||[]).forEach(r=>{const n=[...a].find(e=>e.test(r.name));n&&(R(e,r,n,s,t.timingMethod),a.delete(n))}),a.size&&function(e,t,r,s){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:n=>{const i=[...t].find(e=>e.test(n.name));return i&&(R(e,n,i,r,s),t.delete(i)),0===t.size}})}(e,a,s,t.timingMethod)}function A(e){const t=e?.id,r={registeredAt:(0,i.t)(),reportedAt:void 0,fetchStart:0,fetchEnd:0,scriptStart:0,scriptEnd:0,asset:void 0,type:"unknown",totalWeight:0,renderBlocking:void 0},a=y();if(!a)return r;const o=n.gm.performance?.getEntriesByType("navigation")?.[0]?.name||"";try{const e=v(a),c=(e.length>1?e.filter(e=>u!==e):e)[0];if(!c)return r;if(o.includes(c))return r.asset=(0,s.L)(o),r.type="inline",r;r.correlation=g(c);const l=r.correlation?.performance.value||n.gm.performance?.getEntriesByType("resource")?.find(e=>b(e,c));if(l)E(r,l);else{(function(e){if(!e||!n.gm.document)return!1;try{const t=n.gm.document.querySelectorAll('link[rel="preload"][as="script"]');for(const r of t)if((0,s.L)(r.href)===e)return!0}catch(e){}return!1})(c)&&(r.asset=c,r.type="preload"),function(e,t){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:r=>!!b(r,t)&&(E(e,r),!0)})}(r,c)}const h=r.correlation,m=!!t&&!!h?.claimedBy.has(t);h&&t&&h.claimedBy.add(t);const y=()=>{const e=h?.script.start;if(!m||!e)return!1;return r.registeredAt-e>1e4};let w=0,R=0;p(r).recordManifestScriptWindow=(e,t)=>{e&&(w=w>0?Math.min(w,e):e),t&&(R=R>0?Math.max(R,t):t)},Object.defineProperty(r,"scriptStart",d(()=>{const e=y()?r.registeredAt:h?.script.start??r.fetchEnd;return w>0?Math.min(e,w):e})),Object.defineProperty(r,"scriptEnd",d(()=>{const e=y()?r.registeredAt:h?.script.end??r.registeredAt;return R>0?Math.max(e,R):e}))}catch(e){}return r}},5732(e,t,r){"use strict";r.d(t,{$5:()=>m,B5:()=>g,K6:()=>u,M$:()=>
29o,Ms:()=>d,NG:()=>c,Ux:()=>h,YA:()=>p,yx:()=>l});var n=r(5718),i=r(7560),s=r(9119),a=r(9232);function o(e){return e?.type===a.f.MFE}function c(e,t){if(!y(e,t))return;const r=t.runtime.registeredEntities;return r?.find(t=>t.metadata.target.iframeInterfaceId===e)}function d(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities;return r?.filter(t=>String(t.metadata.target.id)===String(e)).map(e=>e.metadata.target)||[]}function u(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=(0,s.L)(e),a=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!1}):!!t.metadata.timings?.asset&&(0,s.L)(t.metadata.timings.asset)===n});return f(a).map(e=>e.metadata.target)}function l(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!0}):!!t.metadata.timings?.asset?.endsWith(e)});return f(n).map(e=>e.metadata.target)}function f(e){if(!e?.length)return e||[];const t=new Map,r=[];for(const n of e){const e=n.metadata?.timings?.asset;if(!e){r.push(n);continue}const i="".concat(e,"::").concat(n.metadata?.target?.id),s=t.get(i);if(s){if(s.metadata.target?.blocked&&!n.metadata.target?.blocked){const e=r.indexOf(s);-1!==e&&(r[e]=n),t.set(i,n)}}else t.set(i,n),r.push(n)}return r}function h(e,t){return v(t)?o(e)?e.attributes:t.agentRef.runtime.v2Target.attributes:{}}function p(e,t){return g(e,t)?{"child.id":e.id,"child.type":e.type,...h(void 0,t)}:{}}function g(e,t){return o(e)&&!!v(t)&&t.agentRef.init.api.register.duplicate_data_to_container}function m(e){if(!e?.runtime)return[];if(!y(!0,e)||!e.runtime.registeredEntities?.length)return[e.runtime.v2Target];const t=[];try{var r=(0,n.AZ)((0,n.QL)());let i=r.length-1;for(;r[i];)t.push(...l(r[i--],e))}catch(e){}const i=function(e){const t=new Set,r=[];for(const n of e){const e=n?.instance;t.has(e)||(t.add(e),r.push(n))}return r}(t);return i.length||i.push(e.runtime.v2Target),i}function v(e){return 2===e?.harvestEndpointVersion}function y(e,t){return!!e&&!!t?.init.api.register.enabled}},5289(e,t,r){"use strict";r.d(t,{GG:()=>a,Qr:()=>c,sB:()=>o});var n=r(3878),i=r(6389);function s(){return"undefined"==typeof document||"complete"===document.readyState}function a(e,t){if(s())return e();const r=(0,i.J)(e),a=setInterval(()=>{s()&&(clearInterval(a),r())},500);(0,n.sp)("load",r,t)}function o(e){if(s())return e();(0,n.DD)("DOMContentLoaded",e)}function c(e){if(s())return e();(0,n.sp)("popstate",e)}},384(e,t,r){"use strict";r.d(t,{Zm:()=>c,bQ:()=>u,dV:()=>d,pV:()=>l});var n=r(6154),i=r(1863),s=r(944),a=r(1910);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function c(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function d(){let e=c();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate||n.gm.setInterval,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket},(0,a.i)(...Object.values(e.o))),e}function u(e,t){let r=c();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t,2===Object.keys(r.initializedAgents).length&&(0,s.R)(69)}function l(){return function(){let e=c();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=c();const t=e.init||{};e.init={...t}}(),d(),function(){let e=c();const t=e.loader_config||{};e.loader_config={...t}}(),c()}r.d(t,["NT",0,o])},2843(e,t,r){"use strict";r.d(t,{G:()=>s,u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)},r,i)}function s(e,t,r){(0,n.sp)("pagehide",e,t,r)}},8139(e,t,r){"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),s=r(8990),a=r(6154);const o={},c=a.gm.XMLHttpRequest,d="addEventListener",u="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e,t){var r=function(e){return(e||n.ee).get("events")}(e);if(o[r.debugId]++)return r;o[r.debugId]=1;var f=(0,i.YM)(r,!0,t);function p(e){f.inPlace(e,[d,u],"-",g)}function g(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,p),c&&h(c.prototype,p),h(a.gm,p)),r.on(d+"-start",function(e,t){var r=e[1];if(null!==r&&("function"==typeof r||"object"==typeof r)&&"newrelic"!==e[0]){var n=(0,s.I)(r,l,function(){var e={object:function(){if("function"!=typeof r.handleEvent)return;return r.handleEvent.apply(r,arguments)},function:r}[typeof r];return e?f(e,"fn-",null,e.name||"anonymous"):r});this.wrapped=e[1]=n}}),r.on(u+"-start",function(e){e[1]=this.wrapped||e[1]}),r}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,d);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434(e,t,r){"use strict";r.d(t,{YM:()=>d});var n=r(7836),i=r(5607),s=r(5732);const a="nr@original:".concat(i.W);var o=Object.prototype.hasOwnProperty,c=!1;function d(e,t,r){return e||(e=n.ee),i.inPlace=function(e,t,r,n,s,a){r||(r="");const o="-"===r.charAt(0);for(let c=0;c<t.length;c++){const d=t[c],u=e[d];l(u)||(e[d]=i(u,o?d+r:r,n,d,s,a))}},i.flag=a,i;function i(t,n,i,c,f,h){return l(t)?t:(n||(n=""),nrWrapper[a]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach(function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})}),t}catch(e){u([e],r)}for(var n in e)o.call(e,n)&&(t[n]=e[n])}
29(t,nrWrapper,e),nrWrapper);function nrWrapper(){var a,o,l,p;let g,m;try{o=this,a=[...arguments],m=h?(0,s.$5)(r):[r?.runtime?.v2Target],l="function"==typeof i?i(a,o):i||{}}catch(t){u([t,"",[a,o,c],l],e)}d(n+"start",[a,o,c,m],l,f);const v=performance.now();let y;try{return p=t.apply(o,a),y=performance.now(),p}catch(e){throw y=performance.now(),d(n+"err",[a,o,e,m],l,f),g=e,g}finally{const e=y-v,t={start:v,end:y,duration:e,isLongTask:e>=50,methodName:c,thrownError:g};t.isLongTask&&d("long-task",[t,o,m],l,f),d(n+"end",[a,o,p,m],l,f)}}}function d(r,n,i,s){if(!c||t){var a=c;c=!0;try{e.emit(r,n,i,t,s)}catch(t){u([t,r,n,i],e)}c=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function l(e){return!(e&&"function"==typeof e&&e.apply&&!e[a])}r.d(t,["Jt",0,a])},9300(e,t,r){"use strict";const n=r(860).K7.ajax;r.d(t,["TZ",0,n,"f5",0,"ajaxRequest.id","mo",0,{NONE:"none",FAILURES:"failures",ALL:"all"}])},3333(e,t,r){"use strict";var n=r(981);const i=r(860).K7.genericEvents,s=[n.R.PA,n.R.UA,n.R.BP];r.d(t,["$v",0,{RESOURCES:"experimental.resources",REGISTER:"register"},"TZ",0,i,"Zp",0,["auxclick","click","copy","keydown","paste","scrollend"],"kd",0,s,"qN",0,["focus","blur"]])},6774(e,t,r){"use strict";const n=r(860).K7.jserrors;r.d(t,["T",0,n])},993(e,t,r){"use strict";const n=r(860).K7.logging;r.d(t,["A$",0,{OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},"TZ",0,n,"p_",0,{ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"}])},3785(e,t,r){"use strict";r.d(t,{R:()=>c,b:()=>d});var n=r(9908),i=r(1863),s=r(860),a=r(3969),o=r(993);function c(e,t,r={},c=o.p_.INFO,d=!0,u,l=(0,i.t)()){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,s.K7.metrics,e),(0,n.p)("log",[l,t,r,c,d,u],void 0,s.K7.logging,e)}function d(e){return"string"==typeof e&&Object.values(o.p_).some(t=>t===e.toUpperCase().trim())}},3969(e,t,r){"use strict";const n=r(860).K7.metrics;r.d(t,["TZ",0,n,"XG",0,"storeEventMetrics","xV",0,"storeSupportabilityMetrics"])},6630(e,t,r){"use strict";const n=r(860).K7.pageViewEvent;r.d(t,["T",0,n])},782(e,t,r){"use strict";const n=r(860).K7.pageViewTiming;r.d(t,["T",0,n])},6344(e,t,r){"use strict";var n=r(2614);const i=r(860).K7.sessionReplay,s={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0}
29;r.d(t,["Qb",0,{API:"api",RESUME:"resume",SWITCH_TO_FULL:"switchToFull",INITIALIZE:"initialize",PRELOAD:"preload"},"TZ",0,i,"Vh",0,"errorDuringReplay","_s",0,{DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},"bc",0,{RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},"yP",0,s])},5270(e,t,r){"use strict";r.d(t,{Aw:()=>a,SR:()=>s,rF:()=>o});var n=r(384),i=r(7767);function s(e){return!!(0,n.dV)().o.MO&&(0,i.V)(e)&&!0===e?.session_trace.enabled}function a(e){return!0===e?.session_replay.preload&&s(e)}function o(e,t){try{if("string"==typeof t?.type&&"password"===t.type.toLowerCase())return"*".repeat(e?.length||0);if(void 0!==t?.dataset?.nrUnmask||t?.classList?.contains("nr-unmask"))return e}catch(e){}return"string"==typeof e?e.replace(/[\S]/g,"*"):"*".repeat(e?.length||0)}},3738(e,t,r){"use strict";const n=r(860).K7.sessionTrace,i="-start",s="-end",a="fn"+i,o="fn"+s;r.d(t,["He",0,"bstResource","Kp",0,s,"Lc",0,o,"Rz",0,"pushState","TZ",0,n,"bD",0,"resource","bc",0,{CROSS_TAB:{message:"Session Entity was set to OFF on another tab"},ENTITLEMENTS:{message:"Session Trace is not allowed and will not be started"},RESET:{message:"Session was reset"},SESSION_CHANGED:{message:"Session identifier changed unexpectedly"}},"d3",0,i,"uP",0,a])},3962(e,t,r){"use strict";const n=r(860).K7.softNav;r.d(t,["O2",0,{INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},"OV",0,"popstate","Qu",0,{INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},"TZ",0,n,"ih",0,{IP:"in progress",PF:"pending finish",FIN:"finished",CAN:"cancelled"},"pP",0,"initialPageLoad","tC",0,["click","keydown","submit"]])},4234(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(1687);class i{constructor(e,t){this.agentRef=e,this.ee=e?.ee,this.featureName=t,this.blocked=!1}deregisterDrain(){(0,n.x3)(this.agentRef,this.featureName)}}},7767(e,t,r){"use strict";var n=r(6154);r.d(t,["V",0,e=>n.RI&&!0===e?.privacy.cookies_enabled])},8362(e,t,r){"use strict";r.d(t,{d:()=>s});var n=r(9566),i=r(1741);class s extends i.W{agentIdentifier=(0,n.LA)(16)}},1741(e,t,r){"use strict";r.d(t,{W:()=>s});var n=r(944),i=r(4261);class s{#e(e,...t){if(this[e]!==s.prototype[e])return this[e](...t);(0,n.R)(35,e)}addPageAction(e,t){return this.#e(i.hG,e,t)}register(e){return this.#e(i.eY,e)}recordCustomEvent(e,t){return this.#e(i.fF,e,t)}setPageViewName(e,t){return this.#e(i.Fw,e,t)}setCustomAttribute(e,t,r){return this.#e(i.cD,e,t,r)}noticeError(e,t){return this.#e(i.o5,e,t)}setUserId(e,t=!1){return this.#e(i.Dl,e,t)}setApplicationVersion(e){return this.#e(i.nb,e)}setErrorHandler(e){return this.#e(i.bt,e)}addRelease(e,t){return this.#e(i.k6,e,t)}log(e,t){return this.#e("log",e,t)}start(){return this.#e("start")}finished(e){return this.#e(i.BL,e)}recordReplay(){return this.#e(i.CH)}pauseReplay(){return this.#e(i.Tb)}addToTrace(e){return this.#e(i.U2,e)}setCurrentRouteName(e){return this.#e(i.PA,e)}interaction(e){return this.#e(i.dT,e)}wrapLogger(e,t,r){return this.#e(i.Wb,e,t,r)}measure(e,t){return this.#e(i.V1,e,t)}consent(e){return this.#e(i.Pv,e)}}},4261(e,t,r){"use strict";r.d(t,["BL",0,"finished","CH",0,"recordReplay","Dl",0,"setUserId","Fw",0,"setPageViewName","PA",0,"setCurrentRouteName","Pv",0,"consent","Tb",0,"pauseReplay","U2",0,"addToTrace","V1",0,"measure","Wb",0,"wrapLogger","bt",0,"setErrorHandler","cD",0,"setCustomAttribute","dT",0,"interaction","eY",0,"register","fF",0,"recordCustomEvent","hG",0,"addPageAction","hw",0,"api-ixn-","k6",0,"addRelease","nb",0,"setApplicationVersion","o5",0,"noticeError"])},1738(e,t,r){"use strict";r.d(t,{U:()=>l,Y:()=>u});var n=r(3241),i=r(9908),s=r(1863),a=r(944),o=r(3969),c=r(8362),d=r(860);function u(e,t,r,s){const u=s||r;!u||u[e]&&u[e]!==c.d.prototype[e]||(u[e]=function(){(0,i.p)(o.xV,["API/"+e+"/called"],void 0,d.K7.metrics,r.ee),(0,n.W)({drained:!!r.runtime?.activatedFeatures,type:"data",name:"api",feature:"api-"+e,data:{}});try{return t.apply(this,arguments)}catch(e){(0,a.R)(23,e)}})}function l(e,t,r,n,a){const o=e.info;null===r?delete o.jsAttributes[t]:o.jsAttributes[t]=r,(a||null===r)&&(0,i.p)("api-"+n,[(0,s.t)(),t,r],void 0,"session",e.ee)}},8374(e,t,r){r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860(e,t,r){"use strict";const n="events",i="jserrors",s="browser/blobs",a="browser/logs",o={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations"},c={[o.pageViewEvent]:1,[o.pageViewTiming]:2,[o.metrics]:3,[o.jserrors]:4,[o.softNav]:5,[o.ajax]:6,[o.sessionTrace]:7,[o.sessionReplay]:8,[o.logging]:9,[o.genericEvents]:10},d={[o.pageViewEvent]:"rum",[o.pageViewTiming]:n,[o.ajax]:n,[o.softNav]:n,[o.metrics]:i,[o.jserrors]:i,[o.sessionTrace]:s,[o.sessionReplay]:s,[o.logging]:a,[o.genericEvents]:"ins"};r.d(t,["$J",0,d,"K7",0,o,"P3",0,c,"XX",0,i,"Yy",0,a,"df",0,s,"hg",0,"connect"])}};const t={};function r(n){const i=t[n];if(void 0!==i)return i.exports;const s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.m=e,r.d=(e,t)=>{if(Array.isArray(t))for(var n=0;n<t.length;){var i=t[n++],s=t[n++];r.o(e,i)?0===s&&n++:0===s?Object.defineProperty(e,i,{enumerable:!0,value:t[n++]}):Object.defineProperty(e,i,{enumerable:!0,get:s})}else for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,n)=>(r.f[n](e,t),t),[])),r.u=e=>({212:"nr-spa-compressor",238:"nr-spa-iframe-message-handler",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-1.322.0.min.js"),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="NRBA-1.322.0.PROD:";r.l=(n,i,s,a)=>
29{if(e[n])return void e[n].push(i);let o,c;if(void 0!==s){const e=document.getElementsByTagName("script");for(var d=0;d<e.length;d++){const r=e[d];if(r.getAttribute("src")==n||r.getAttribute("data-webpack")==t+s){o=r;break}}}if(!o){c=!0;var u={478:"sha512-SARROoir04gFygxlr/+mTI+PyMeFL+epi1vnUA2G5mTQ7s3G44ItQBJKbOaIMdIE5OBzuaKhb4k5JYta0NICxg==",249:"sha512-6DKQo5WP7YlpzX6l9UfYkgGLGK2oITdoaYTcZtgl5Foa22NY63lED/0z1hBBLeD7qZCz/YdlY19/r8drlol1tg==",212:"sha512-CYxuvSpDx6ErqWJwAvpoHn54eY37YdMcFao/axOumlw3BsSL7yioOeB2LWViY/Njs818sQG10dSglUhYCMfLPw==",238:"sha512-mvbMILWa3ohYst+u6TLfNrmtY2swUIB3rbJFN/uzt3W62KhgvUVwB81UEZ1R0/it5bfrQ5EVz864pi/CAmucNQ=="};o=document.createElement("script"),o.charset="utf-8",r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",t+s),o.src=n,0!==o.src.indexOf(window.location.origin+"/")&&(o.crossOrigin="anonymous"),u[a]&&(o.integrity=u[a])}e[n]=[i];const l=(t,r)=>{o.onerror=o.onload=null,clearTimeout(f);const i=e[n];if(delete e[n],o.parentNode?.removeChild(o),i?.forEach(e=>e(r)),t)return t(r)},f=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),c&&document.head.appendChild(o)}})(),r.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="https://js-agent.newrelic.com/",(()=>{const e={38:0,788:0};r.f.j=(t,n)=>{let i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{const s=new Promise((r,n)=>i=e[t]=[r,n]);n.push(i[2]=s);const a=r.p+r.u(t),o=new Error,c=n=>{if(r.o(e,t)&&(i=e[t],0!==i&&(e[t]=void 0),i)){const e=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;o.message="Loading chunk "+t+" failed: ("+e+": "+r+")",o.name="ChunkLoadError",o.type=e,o.request=r,i[1](o)}};r.l(a,c,"chunk-"+t,t)}};const t=(t,n)=>{let[i,s,a]=n;var o,c,d=0;if(i.some(t=>0!==e[t])){for(o in s)r.o(s,o)&&(r.m[o]=s[o]);if(a)a(r)}for(t&&t(n);d<i.length;d++)c=i[d],r.o(e,c)&&e[c]&&e[c][0](),e[c]=0},n=self["webpackChunk:NRBA-1.322.0.PROD"]=self["webpackChunk:NRBA-1.322.0.PROD"]||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),(()=>{"use strict";r(8374);var e=r(8362),t=r(860);const n=Object.values(t.K7);var i=r(384),s=r(1741);var a=r(2555),o=r(3333),c=r(9300);const d=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var u=r(2614),l=r(944),f=r(8122);const h="[data-nr-mask]",p=e=>(0,f.a)(e,(()=>{const e={feature_flags:[],experimental:{register:!1,resources:!1,iframe_bridge:!1,iframe_domains:[]},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0,capture_payloads:c.mo.NONE},api:{register:{get enabled(){return e.feature_flags.includes(o.$v.REGISTER)||e.experimental.register},set enabled(t){e.experimental.register=t},duplicate_data_to_container:!1,get allow_iframe_bridge(){return e.feature_flags.includes(o.$v.IFRAME_BRIDGE)||e.experimental.iframe_bridge},set allow_iframe_bridge(t){e.experimental.iframe_bridge=t},get iframe_domains(){return e.experimental.iframe_domains},set iframe_domains(t){Array.isArray(t)?e.experimental.iframe_domains=t:(0,l.R)(1,t)}}},browser_consent_mode:{enabled:!1},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1,capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(o.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:u.wk,inactiveMs:u.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inl
29ine_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){d(t)?e.mask_selector="".concat(t,",").concat(h):""===t||null===t?e.mask_selector=h:(0,l.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){d(t)?e.block_selector+=",".concat(t):""!==t&&(0,l.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,l.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]},web_sockets:{enabled:!1}}})());var g=r(6154),m=r(9324);let v=0;const y={buildEnv:"PROD",distMethod:"CDN",version:m.x,originTime:g.WN},b={consented:!1},E={activatedFeatures:void 0,appMetadata:{},configured:!1,get consented(){return this.session?.state?.consent||b.consented},set consented(e){b.consented=e},customTransaction:void 0,denyList:[],disabled:!1,drainRegistry:new Map,connector:void 0,harvester:void 0,v2Target:void 0,isolatedBacklog:!1,isRecording:!1,loaderType:void 0,maxBytes:3e4,obfuscator:void 0,onerror:void 0,ptid:void 0,releaseIds:{},session:void 0,timeKeeper:void 0,registeredEntities:[],jsAttributesMetadata:{bytes:0},get harvestCount(){return++v},listeningForIframeMessages:!1};var w=r(9232);var R=r(7836),T=r(3241);const A={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0};var S=r(9908),x=r(9752);function O(e,t={},n,o){let{init:c,info:d,loader_config:u,runtime:l={},exposed:h=!0}=t;if(!d){const e=(0,i.pV)();c=e.init,d=e.info,u=e.loader_config}var m;e.init=p(c||{}),e.loader_config=(m=u||{},(0,f.a)(m,A)),d.jsAttributes??={},g.bv&&(d.jsAttributes.isWorker=!0),e.info=(0,a.D)(d);const v=e.init;e.runtime??=(e=>{const t=(0,f.a)(e,E),r=Object.keys(y).reduce((e,t)=>(e[t]={value:y[t],writable:!1,configurable:!0,enumerable:!0},e),{});return Object.defineProperties(t,r)})(l),e.runtime.v2Target??={type:w.f.BA,instance:e.agentIdentifier,get id(){return e.runtime.appMetadata?.agents?.[0]?.entityGuid},get attributes(){return{"entity.guid":this.id,appId:e.info.applicationID}}},v.proxy.assets&&(e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e})(v.proxy.assets),e.runtime.configured||(Object.defineProperty(e,"beacons",{get:()=>[e.info.beacon,e.info.errorBeacon,e.init.proxy.assets,e.init.proxy.beacon].filter(Boolean)}),Object.defineProperty(e.runtime,"denyList",{get:()=>[...e.init.ajax.deny_list||[],...e.init.ajax.block_internal?e.beacons:[]]}),e.runtime.ptid=e.agentIdentifier,function(e){const t=(0,i.pV)();Object.getOwnPropertyNames(s.W.prototype).forEach(r=>{const n=s.W.prototype[r];if("function"!=typeof n||"constructor"===n)return;let i=t[r];e[r]&&!1!==e.exposed&&"micro-agent"!==e.runtime?.loaderType&&(t[r]=(...t)=>{const n=e[r](...t);return i?i(...t):n})})}(e),e.runtime.loaderType=n,e.ee=R.ee.get(e.agentIdentifier),e.exposed=h,(0,T.W)({drained:!!e.runtime.activatedFeatures,type:"lifecycle",name:"initialize",feature:void 0,data:e.config}),e.init.api.register.allow_iframe_bridge&&g.gm.addEventListener("message",t=>{"string"==typeof t.data?.type&&t.data.type.startsWith(x.Pl)&&(0,S.p)("iframe-message",[t],void 0,"IFRAME",e.ee)}),e.runtime.configured=!0)}var _=r(1863),k=r(4261),N=r(1738);var L=r(1687),M=r(4234),P=r(5289),I=r(5270),j=r(7767),C=r(6389),D=r(7699);const B=new WeakSet,H=new WeakMap;class W extends M.W{constructor(e,t){super(e,t),this.abortHandler=void 0,this.featAggregate=void 0,this.loadedSuccessfully=void 0,this.onAggregateImported=new Promise(e=>{this.loadedSuccessfully=e}),this.deferred=Promise.resolve(),!1===e.init[this.featureName].autoStart?this.deferred=new Promise((t,r)=>{this.ee.on("manual-start-all",(0,C.J)(()=>{(0,L.Ak)(e,this.featureName),t()}))}):(0,L.Ak)(e,t)}importAggregator(e,t,n={}){if(this.featAggregate)return;const i=async()=>{if(await this.deferred,this.#t(e),!(0,a.f)(e.info))return(0,l.R)(43),e.ee.abort(),void this.loadedSuccessfully(!1);try{await async function(e,t,n){if(H.has(e))return H.get(e);const i=(async()=>
29{if((0,j.V)(e.init))try{const{setupAgentSession:t}=await r.e(478).then(r.bind(r,8766));t(e)}catch(e){(0,l.R)(20,e),t.emit("internal-error",[e]),(0,S.p)(D.qh,[e],void 0,n,t)}if(e.init.api.register.allow_iframe_bridge)try{const{setupIframeMFEMessageListener:t}=await r.e(238).then(r.bind(r,6417));t(e)}catch(e){(0,l.R)(23,e)}const[{Connector:i},{Harvester:s}]=await Promise.all([r.e(478).then(r.bind(r,6589)),r.e(478).then(r.bind(r,5237))]);e.runtime.connector=new i(e),e.runtime.harvester=new s(e);const a=Object.values(e.features).filter(t=>e.runtime.drainRegistry.has(t.featureName));Promise.all(a.map(e=>e.onAggregateImported)).then(()=>e.runtime.harvester.startTimer())})();H.set(e,i),await i}(e,this.ee,this.featureName)}catch(e){return(0,l.R)(79,e),this.ee.abort(),void this.loadedSuccessfully(!1)}try{if(!this.#r(this.featureName,e.runtime.session,e.init))return this.abortHandler?.(),(0,L.Ze)(this.agentRef,this.featureName),void this.loadedSuccessfully(!1);const{Aggregate:r}=await t();this.featAggregate=new r(e,n),e.runtime.harvester.initializedAggregates.push(this.featAggregate),this.loadedSuccessfully(!0)}catch(e){(0,l.R)(34,e),this.abortHandler?.(),(0,L.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1)}};g.RI?(0,P.GG)(()=>i(),!0):i()}#r(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return(0,I.SR)(n)&&!!r;case t.K7.sessionTrace:return!!r;default:return!0}}#t(e){if(!B.has(e)&&(B.add(e),!(0,a.f)(e.info))){const t=(0,i.pV)();let r={...t.info?.jsAttributes};try{r={...r,...e.info?.jsAttributes}}catch(e){}O(e,{...t,info:{...t.info,jsAttributes:r},runtime:e.runtime},e.runtime.loaderType)}}}var U=r(6630);class K extends W{static featureName=U.T;constructor(e){var t;super(e,U.T),this.setupInspectionEvents(),t=e,(0,N.Y)(k.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,S.p)("api-"+k.Fw,[(0,_.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>e.init.feature_flags.includes("rum_v2")?r.e(478).then(r.bind(r,908)):r.e(478).then(r.bind(r,7927)))}setupInspectionEvents(){const e=(e,t)=>{e&&(0,T.W)({timeStamp:e.timeStamp,loaded:"complete"===e.target.readyState,type:"window",name:t,data:e.target.location+""})};(0,P.sB)(t=>{e(t,"DOMContentLoaded")}),(0,P.GG)(t=>{e(t,"load")}),(0,P.Qr)(t=>{e(t,"navigate")}),this.ee.on(u.tS.UPDATE,(e,t)=>{(0,T.W)({type:"lifecycle",name:"session",data:t})})}}class F extends e.d{constructor(e){var t;(super(),g.gm)?(this.features={},(0,i.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(K),O(this,e,e.loaderType||"agent"),t=this,(0,N.Y)(k.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,N.U)(t,e,r,k.cD,n);(0,l.R)(40,typeof r)}else(0,l.R)(39,typeof e)},t),function(e){(0,N.Y)(k.Dl,function(t,r=!1){if("string"!=typeof t&&null!==t)return void(0,l.R)(41,typeof t);const n=e.info.jsAttributes["enduser.id"];r&&null!=n&&n!==t?(0,S.p)("api-setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,N.U)(e,"enduser.id",t,k.Dl,!0)},e)}(this),function(e){(0,N.Y)(k.nb,function(t){if("string"==typeof t||null===t)return(0,N.U)(e,"application.version",t,k.nb,!1);(0,l.R)(42,typeof t)},e)}(this),function(e){(0,N.Y)("start",function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,N.Y)(k.Pv,function(t=!0){if("boolean"==typeof t){if((0,S.p)("api-"+k.Pv,[t],void 0,"session",e.ee),e.runtime.consented=t,t){const t=e.features.page_view_event;t.onAggregateImported.then(e=>{const r=t.featAggregate;e&&!r.sentRum&&r.sendRum?.()})}}else(0,l.R)(65,typeof t)},e)}(this),this.run()):(0,l.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const e=function(e){const t={};return n.forEach(r=>{t[r]=!!e[r]?.enabled}),t}(this.init),r=[...this.desiredFeatures],i=this.init.feature_flags.includes("rum_v2");r.sort((e,r)=>t.P3[e.featureName]-t.P3[r.featureName]),r.forEach(r=>{if(!e[r.featureName]&&(i||r.featureName!==t.K7.pageViewEvent))return;const n=function(e){switch(e){case t.K7.ajax:return[t.K7.jserrors];case t.K7.sessionTrace:return[t.K7.ajax,t.K7.pageViewEvent];case t.K7.sessionReplay:return[t.K7.sessionTrace];case t.K7.pageViewTiming:return[t.K7.pageViewEvent];default:return[]}}(r.featureName).filter(e=>!(e in this.features));n.length>0&&(0,l.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)})}catch(e){(0,l.R)(22,e);for(const e in this.features)this.features[e].abortHandler?.();const t=(0,i.Zm)();delete t.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return t.ee.get(this.agentIdentifier).abort(),!1}}}var V=r(2843),z=r(782);class G extends W{static featureName=z.T;constructor(e){super(e,z.T),g.RI&&((0,V.u)(()=>(0,S.p)("docHidden",[(0,_.t)()],void 0,z.T,this.ee),!0),(0,V.G)(()=>(0,S.p)("winPagehide",[(0,_.t)()],void 0,z.T,this.ee)),this.importAggregator(e,()=>r.e(478).then(r.bind(r,9917))))}}var q=r(3969);class Y extends W{static featureName=q.TZ;constructor(e){super(e,q.TZ),this.importAggregator(e,()=>r.e(478).then(r.bind(r,6555)))}}var Z=r(6774),J=r(3878),X=r(3304);class Q{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,X.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function ee(e){return ne(e)?e:new Q(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic,e?.cause)}function te(e){const t="Unhandled Promise Rejection: ";if(!e?.reason)return;if(ne(e.reason)){try{e.reason.message.startsWith(t)||(e.reason.message=t+e.reason.message)}catch(e){}return ee(e.reason)}const r=ee(e.reason);return(r.message||"").startsWith(t)||(r.message=t+r.message),r}function re(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new Q(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic,e.cause);return t.name=SyntaxError.name,t}return ne(e.error)?e.error:ee(e)}function ne(e){return e instanceof Error&&!!e.stack}function ie(e,r,n,i,s=(0,_.t)()){"string"==typeof e&&(e=new Error(e)),(0,S.p)("err",[e,s,!1,r,n.runtime.isRecording,void 0,i],void 0,t.K7.jserrors,n.ee),(0,S.p)("uaErr",[],void 0,t.K7.genericEvents,n.ee)}var se=r(993),ae=r(3785);function oe(e,{customAttributes:t={},level:r=se.p_.INFO}={},n,i,s=(0,_.t)()){(0,ae.R)(n.ee,e,t,r,!1,i,s)}function ce(e,r,n,i,s=(0,_.t)()){(0,S.p)("api-"+k.hG,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}function de(e,r,n,i,s=(0,_.t)()){const{start:a,end:o,customAttributes:c}=r||{},d={customAttributes:c||{}};if("object"!=typeof d.customAttributes||"string"!=typeof e||0===e.length)return void(0,l.R)(57);const u=(e,t)=>
29null==e?t:"number"==typeof e?e:e instanceof PerformanceMark?e.startTime:Number.NaN;if(d.start=u(a,0),d.end=u(o,s),Number.isNaN(d.start)||Number.isNaN(d.end))(0,l.R)(57);else{if(d.duration=d.end-d.start,!(d.duration<0))return(0,S.p)("api-"+k.V1,[d,e,i],void 0,t.K7.genericEvents,n.ee),d;(0,l.R)(58)}}function ue(e,r={},n,i,s=(0,_.t)()){(0,S.p)("api-"+k.fF,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}var le=r(5718);const fe=(e,t)=>e?.nrMfeId===t.id&&(!e?.nrMfeObserved||e?.nrMfeObserved===t.instance),he=e=>{try{return g.gm.CSS.escape(e)}catch(t){return e}},pe=(e,t={})=>{const r=t.id,n=t.instance;if(!e||!r||!n)return!1;try{let r=1===e.nodeType?e:e.parentElement;for(;r?.tagName;){if(fe(r.dataset,t))return r.dataset.nrMfeObserved=n,!0;r=r.parentNode}}catch(e){}return!1},ge=(e,t)=>{const r=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]')),n=(Array.from(r)||[]).find(t=>fe(t.dataset,e));let i=!!n;i&&(n.dataset.nrMfeObserved??=e.instance);const s=new g.gm.MutationObserver(r=>{r.forEach(r=>{r.addedNodes.forEach(r=>{const n=1===r.nodeType?r:null;!i&&fe(n?.dataset,e)&&(s.disconnect(),s.observe(n,{childList:!0,subtree:!0}),i=!0,n.dataset.nrMfeObserved=e.instance),(e=>{try{return e?.textContent?.trim()||["img","video","canvas","svg"].includes(e?.nodeName?.toLowerCase())}catch(e){return!1}})(r)&&(i||pe(r,e))&&t(r,s)})})});return s.observe(n||g.gm.document,{childList:!0,subtree:!0}),s},me=(e,t,r)=>{try{const n=new g.gm.PerformanceObserver(e=>{e.getEntries().forEach(r)});return n.observe(t),e.push(n),n}catch(e){return null}};function ve(e,t){let r,n,i=!1;const s=e=>null==e?e:e-(t?.scriptStart||t?.registeredAt||0),a={fcp:{get value(){const e=s(r);return e>1e4?void 0:e},set value(e){i||(r=e)}},lcp:{get value(){if(void 0!==a.fcp.value)return s(n)},set value(e){i||(n=e)}},cls:{value:void 0},inp:{value:void 0},disconnect:()=>{}};if(!(e&&g.RI&&g.gm.MutationObserver&&g.gm.PerformanceObserver))return a;const o=[];setTimeout(()=>{r||a.disconnect()},1e4);const c=()=>{if(!i){if(null==r){const e=(0,_.t)();if(s(e)>1e4)return void a.disconnect();r=e}n??=(0,_.t)(),a.cls.value??=0}},d=ge(e,(e,t)=>{c(),t.disconnect()});o.push(d);let u=0,l=null;const f=new Set;try{l=new g.gm.ResizeObserver(e=>{i||e.forEach(e=>{try{const t=e.contentRect.width*e.contentRect.height;t>u&&(u=t,a.lcp.value=(0,_.t)()),l.unobserve(e.target)}catch(e){}})})}catch(e){}const h=ge(e,e=>{if(c(),l)try{const t=1===e.nodeType?e:e.parentElement;t&&!f.has(t)&&(f.add(t),"IMG"===t.tagName?t.complete?l.observe(t):t.addEventListener("load",()=>{l.observe(t)},{once:!0}):"VIDEO"===t.tagName?t.readyState>=2?l.observe(t):t.addEventListener("loadeddata",()=>{l.observe(t)},{once:!0}):l.observe(t))}catch(e){}});l&&o.push(l),o.push(h),me(o,{type:"layout-shift",buffered:!0},t=>{i||t.hadRecentInput||(t.sources||[]).some(r=>!!pe(r.node,e)&&(c(),a.cls.value+=t.value,!0))}),me(o,{type:"event",buffered:!0,durationThreshold:40},t=>{!i&&t.interactionId&&pe(t.target,e)&&(void 0===a.inp.value||t.duration>a.inp.value)&&(c(),a.inp.value=t.duration)});const p=["pointerdown","keydown"],m=()=>{p.forEach(e=>{g.gm.removeEventListener(e,v,{passive:!0})})};a.disconnect=()=>{i=!0,o.forEach(e=>{try{e?.disconnect()}catch(e){}}),m(),["visibilitychange","pagehide"].forEach(e=>{g.gm.removeEventListener(e,a.disconnect,{once:!0,passive:!0})})};const v=t=>{pe(t?.target,e)&&((()=>{try{h?.disconnect(),l?.disconnect()}catch(e){}})(),m())};p.forEach(e=>{g.gm.addEventListener(e,v,{passive:!0})}),["visibilitychange","pagehide"].forEach(e=>{g.gm.addEventListener(e,a.disconnect,{once:!0,passive:!0})});const y=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]'));return Array.from(y||[]).some(t=>fe(t.dataset,e))&&c(),a}var ye=r(9566),be=r(7560),Ee=r(9119);const we=["entry","scripts","all"],Re=["name","id","type"],Te=new Map([[ce,"addPageAction"],[oe,"log"],[de,"measure"],[ie,"noticeError"],[ue,"recordCustomEvent"]]),Ae={experimental:(0,C.J)(()=>(0,l.R)(54,"newrelic.register")),disabled:(0,C.J)(()=>(0,l.R)(55)),invalidTarget:(0,C.J)(e=>(0,l.R)(48,e)),deregistered:(0,C.J)(()=>(0,l.R)(68)),invalidTimingMethod:(0,C.J)(e=>(0,l.R)(80,e)),duplicateName:(0,C.J)(e=>(0,l.R)(81,e)),duplicateId:(0,C.J)(e=>(0,l.R)(82,e))};function Se(e){(0,N.Y)(k.eY,function(t){return xe(e,t)},e)}function xe(e,r){Ae.experimental(),r||={},r.instance=(0,ye.LA)(8),r.type=w.f.MFE,r.licenseKey||=e.info.licenseKey,r.blocked=!1,("object"!=typeof r.tags||null===r.tags||Array.isArray(r.tags))&&(r.tags={}),r.parent??={get id(){return e.runtime.appMetadata.agents?.[0].entityGuid},type:w.f.BA},r.manifest=(0,be.N)(r.manifest),void 0===r.timingMethod||we.includes(r.timingMethod)||(Ae.invali
29dTimingMethod(r.timingMethod),r.timingMethod=void 0);const n=(0,le.Qr)(r);r.manifest&&(0,le.xo)(n,r);const i=ve(r,n),s=(0,Ee.L)(""+location),a={};Object.prototype.hasOwnProperty.call(r,"attributes")||Object.defineProperty(r,"attributes",{get:()=>({...a,"source.id":r.id,"source.name":r.name,"source.type":r.type,"parent.type":r.parent?.type||w.f.BA,"parent.id":r.parent?.id})}),Object.entries(r.tags).forEach(([e,t])=>{Re.includes(e)||(a["source.".concat(e)]=t)});let o=()=>{};const c=e.runtime.registeredEntities,d=e=>{r.blocked=!0,o=e};function u(e){return"string"==typeof e&&!!e.trim()&&e.trim().length<501}e.init.api.register.enabled||d(Ae.disabled),u(r.id)&&u(r.name)||d(()=>Ae.invalidTarget(r)),c.forEach(e=>{try{const{name:t,id:n}=e.metadata.target;t===r.name&&n!==r.id&&Ae.duplicateName(r),n===r.id&&t!==r.name&&Ae.duplicateId(r)}catch(e){}});const f={addPageAction:(t,n={})=>m(ce,[t,{...a,...n},e],r),deregister:()=>{p(),d(Ae.deregistered)},log:(t,n={})=>m(oe,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),measure:(t,n={})=>m(de,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),noticeError:(t,n={})=>m(ie,[t,{...a,...n},e],r),recordCustomEvent:(t,n={})=>m(ue,[t,{...a,...n},e],r),setApplicationVersion:e=>g("application.version",e),setCustomAttribute:(e,t)=>g(e,t),setUserId:e=>g("enduser.id",e),metadata:{get customAttributes(){return a},target:r,timings:n,vitals:i,events:{latestTimestamp:void 0}}},h=()=>(r.blocked&&o(),r.blocked);function p(){if(n.reportedAt)return;n.reportedAt=(0,_.t)(),i.disconnect(),n.fcp=i.fcp,n.lcp=i.lcp,n.cls=i.cls,n.inp=i.inp;const e=n.fetchEnd-n.fetchStart,t=n.scriptEnd-n.scriptStart,r={assetUrl:n.asset,assetType:n.type,registerUrl:s,deregisterUrl:(0,Ee.L)(""+location),pageUrl:void 0,currentUrl:void 0,timeAlive:n.reportedAt-n.registeredAt,timeToBeRequested:n.fetchStart,timeToExecute:t,timeToFetch:e,timeToLoad:e+t,t
29imeToRegister:n.registeredAt,totalWeight:n.totalWeight,...void 0!==n.renderBlocking&&{renderBlocking:n.renderBlocking},...i.fcp.value>=0&&{"vitals.fcp.value":i.fcp.value},...i.lcp.value>=0&&{"vitals.lcp.value":i.lcp.value},...i.cls.value>=0&&{"vitals.cls.value":i.cls.value},...i.inp.value>=0&&{"vitals.inp.value":i.inp.value}};f.recordCustomEvent("MicroFrontEndTiming",r)}h()||(c.push(f),(0,V.G)(p));const g=(e,t)=>{h()||(a[e]=t)},m=(r,n,i)=>{if(h()&&r!==xe)return;const s=f.metadata.events.latestTimestamp??(0,_.t)();f.metadata.events.latestTimestamp=void 0;const a=Te.get(r)||"unknown";(0,S.p)(q.xV,["API/register/".concat(a,"/called")],void 0,t.K7.metrics,e.ee);try{return r(...n,i,s)}catch(e){(0,l.R)(50,e)}};return f}class Oe extends W{static featureName=Z.T;constructor(e){var t;super(e,Z.T),t=e,(0,N.Y)(k.o5,(e,r)=>ie(e,r,t),t),function(e){(0,N.Y)(k.bt,function(t){e.runtime.onerror=t},e)}(e),function(e){let t=0;(0,N.Y)(k.k6,function(e,r){++t>10||(this.runtime.releaseIds[e.slice(-200)]=(""+r).slice(-200))},e)}(e),Se(e);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(t,r)=>{this.abortHandler&&(0,S.p)("ierr",[ee(t),(0,_.t)(),!0,{},e.runtime.isRecording,r],void 0,this.featureName,this.ee)}),g.gm.addEventListener("unhandledrejection",t=>{this.abortHandler&&(0,S.p)("err",[te(t),(0,_.t)(),!1,{unhandledPromiseRejection:1},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),g.gm.addEventListener("error",t=>{this.abortHandler&&(0,S.p)("err",[re(t),(0,_.t)(),!1,{},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e,()=>r.e(478).then(r.bind(r,9377)))}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var _e=r(8990);let ke=1;function Ne(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===g.gm?0:(0,_e.I)(e,"nr@id",function(){return ke++})}function Le(e){if("string"==typeof e)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,X.A)(e).length}catch(e){return}}}var Me=r(8139),Pe=r(3434),Ie=r(5732);const je={},Ce=["open","send","setRequestHeader"];function De(e,t){var r=e||R.ee;const n=function(e){return(e||R.ee).get("xhr")}(r);if(void 0===g.gm.XMLHttpRequest)return n;if(je[n.debugId]++)return n;je[n.debugId]=1,(0,Me.u)(r,t);var i=(0,Pe.YM)(n,void 0,t),s=g.gm.XMLHttpRequest,a=g.gm.MutationObserver,o=g.gm.Promise,c=g.gm.setInterval,d="readystatechange",u=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],f=[],h=g.gm.XMLHttpRequest=function(e){const r=new s(e),a=n.context(r);a.targets=(0,Ie.$5)(t);try{n.emit("new-xhr",[r],a),r.addEventListener(d,(o=a,function(){var e=this;e.readyState>3&&!o.resolved&&(o.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,u,"fn-",E)}),(0,J.jT)(!1))}catch(e){(0,l.R)(15,e);try{n.emit("internal-error",[e])}catch(e){}}var o;return r};function p(e,t){i.inPlace(t,["onreadystatechange"],"fn-",E)}if(function(e,t){for(var r in e)t[r]=e[r]}(s,h),h.prototype=s.prototype,i.inPlace(h.prototype,Ce,"-xhr-",E),n.on("send-xhr-start",function(e,t){p(e,t),function(e){f.push(e),a&&(m?m.then(b):c?c(b):(v=-v,y.data=v))}(t)}),n.on("open-xhr-start",p),a){var m=o&&o.resolve();if(!c&&!o){var v=1,y=document.createTextNode(v);new a(b).observe(y,{characterData:!0})}}else r.on("fn-end",function(e){e[0]&&e[0].type===d||b()});function b(){for(var e=0;e<f.length;e++)p(0,f[e]);f.length&&(f=[])}function E(e,t){return t}return n}var Be="fetch-",He=Be+"body-",We=["arrayBuffer","blob","json","text","formData"],Ue=g.gm.Request,Ke=g.gm.Response,Fe="prototype";const Ve={};function ze(e,t){const r=function(e){return(e||R.ee).get("fetch")}(e);if(!(Ue&&Ke&&g.gm.fetch))return r;if(Ve[r.debugId]++)return r;function n(e,n,i){var s=e[n];"function"==typeof s&&(e[n]=function(){var e=[...arguments];const n={},a=(0,Ie.$5)(t);var o;r.emit(i+"before-start",[e],n),n[R.P]&&n[R.P].dt&&(o=n[R.P].dt);var c=s.apply(this,e);return r.emit(i+"start",[e,o],c),c.then(function(e){return r.emit(i+"end",[null,e,a],c),e},function(e){throw r.emit(i+"end",[e,void 0,a],c),e})})}
29return Ve[r.debugId]=1,We.forEach(e=>{n(Ue[Fe],e,He),n(Ke[Fe],e,He)}),n(g.gm,"fetch",Be),r.on(Be+"end",function(e,n,i){var s=this;if(s.targets=i||[t.runtime.v2Target],n){var a=n.headers.get("content-length");null!==a&&(s.rxSize=a),r.emit(Be+"done",[null,n],s)}else r.emit(Be+"done",[e],s)}),r}var Ge=r(7485);class qe{constructor(e){this.agentRef=e}generateTracePayload(e){const t=this.agentRef.loader_config;if(!this.shouldGenerateTrace(e)||!t)return null;var r=(t.accountID||"").toString()||null,n=(t.agentID||"").toString()||null,i=(t.trustKey||"").toString()||null;if(!r||!n)return null;var s=(0,ye.ZF)(),a=(0,ye.el)(),o=Date.now(),c={spanId:s,traceId:a,timestamp:o};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(c.traceContextParentHeader=this.generateTraceContextParentHeader(s,a),c.traceContextStateHeader=this.generateTraceContextStateHeader(s,o,r,n,i)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(c.newrelicHeader=this.generateTraceHeader(s,a,o,r,n,i)),c}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,s){if(!("function"==typeof g.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return s&&n!==s&&(a.d.tk=s),btoa((0,X.A)(a))}shouldGenerateTrace(e){return this.agentRef.init?.distributed_tracing?.enabled&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1;const r=this.agentRef.init?.distributed_tracing;if(e.sameOrigin)t=!0;else if(r?.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,Ge.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}excludeNewrelicHeader(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.cors_use_tracecontext_headers}}var Ye=r(7295);function Ze(e){return"string"==typeof e?e:e instanceof(0,i.dV)().o.REQ?e.url:g.gm?.URL&&e instanceof URL?e.href:void 0}function $e(e,t){var r=(0,Ge.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}var Je=["load","error","abort","timeout"],Xe=Je.length,Qe=(0,i.dV)().o.REQ,et=(0,i.dV)().o.XHR;const tt="X-NewRelic-App-Data",rt="internal-error";class nt extends W{static featureName=c.TZ;constructor(e){super(e,c.TZ),this.dt=new qe(e),this.handler=(e,t,r,n)=>(0,S.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};g.gm?.performance?.getEntriesByType("resource").forEach(r=>{if(r.initiatorType in e&&0!==r.responseStatus){const n={status:r.responseStatus},i={rxSize:r.transferSize,duration:Math.floor(r.duration),cbTime:0};$e(n,r.name),this.handler("xhr",[n,i,r.startTime,r.responseEnd,e[r.initiatorType]],void 0,t.K7.ajax)}})}catch(e){}ze(this.ee,e),De(this.ee,e),function(e,r,n,i){const s=[c.mo.ALL,c.mo.FAILURES].includes(e.init.ajax?.capture_payloads);function a(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=A,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},t.latestLongtaskEnd=0,e.addEventListener("load",function(r){O(t,e)},(0,J.jT)(!1)),g.lR||e.addEventListener("progress",function(e){t.lastSize=e.loaded},(0,J.jT)(!1))}function o(e){this.params={method:e[0]},$e(this,e[1]),this.metrics={}}function d(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var n=i.generateTracePayload(this.parsedOrigin);if(n){var s=!1;n.newrelicHeader&&(r.setRequestHeader("newrelic",n.newrelicHeader),s=!0),n.traceContextParentHeader&&(r.setRequestHeader("traceparent",n.traceContextParentHeader),n.traceContextStateHeader&&r.setRequestHeader("tracestate",n.traceContextStateHeader),s=!0),s&&(this.dt=n)}}function u(e,t){s&&e.length>=2&&(this.requestHeaders??={},this.requestHeaders[e[0].toLowerCase()]=e[1])}function l(e,t){var n=this.metrics,i=e[0],s=this;if(n&&i){var a=Le(i);a&&(n.txSize=a)}this.startTime=(0,_.t)(),this.requestBody=i,this.listener=function(e){try{"abort"!==e.type||s.loadCaptureCalled||(s.params.aborted=!0),("load"
29!==e.type||s.called===s.totalCbs&&(s.onloadCalled||"function"!=typeof t.onload)&&"function"==typeof s.end)&&s.end(t)}catch(e){try{r.emit(rt,[e])}catch(e){}}};for(var o=0;o<Xe;o++)t.addEventListener(Je[o],this.listener,(0,J.jT)(!1))}function f(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function h(e,t){var r=""+Ne(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function p(e,t){var r=""+Ne(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function m(){this.endTime=(0,_.t)()}function v(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-added",[e[1],e[2]],t)}function y(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-removed",[e[1],e[2]],t)}function b(e,t,r){t instanceof et&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,_.t)()))}function E(e,t){this.xhrCbStart&&r.emit("xhr-cb-time",[(0,_.t)()-this.xhrCbStart,this.onload,t],t)}function w(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&g.RI&&(t=""+g.gm.location.href):e[0]&&e[0].url?t=e[0].url:g.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,Ge.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var n=i.generateTracePayload(this.parsedOrigin);if(n&&(n.newrelicHeader||n.traceContextParentHeader))if(e[0]&&e[0].headers)o(e[0].headers,n)&&(this.dt=n);else{var s={};for(var a in r)s[a]=r[a];s.headers=new Headers(r.headers||{}),o(s.headers,n)&&(this.dt=n),e.length>1?e[1]=s:e.push(s)}}function o(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function R(e,t){this.params={},this.metrics={},this.startTime=(0,_.t)(),this.dt=t;let[r,n={}]=e;$e(this,Ze(r));const i=(""+(r&&r instanceof Qe&&r.method||n.method||"GET")).toUpperCase();this.params.method=i,this.txSize=Le(n.body||r?.body)||0;try{var a=n.headers||r?.headers;if(s&&a)if(this.requestHeaders??={},a instanceof Headers)a.forEach(function(e,t){this.requestHeaders[t.toLowerCase()]=e}.bind(this));else if("object"==typeof a)for(var o in a)this.requestHeaders[o.toLowerCase()]=a[o]}catch(e){}this.requestBody=n.body||r?.body}function T(e,t){if(this.endTime=(0,_.t)(),this.params||(this.params={}),(0,Ye.iW)(this.params))return;this.params.status=t?t.status:0;const n=()=>{const e=+this.rxSize,t=null==this.rxSize||isNaN(e)?void 0:e,r={txSize:this.txSize,rxSize:t,duration:this.endTime-this.startTime},n=[this.params,r,this.startTime,this.endTime,"fetch"];this.targets.forEach(e=>x(n,this,e))};t&&s?t.clone().text().then(e=>{this.responseBody=e,this.rxSize&&"0"!==this.rxSize&&0!==this.rxSize||void 0===e||0===this.params.status||(this.rxSize=Le(e)),t?.headers&&(this.responseHeaders={},t.headers.forEach(function(e,t){this.responseHeaders[t.toLowerCase()]=e}.bind(this)))}).catch(e=>{r.emit(rt,[e])}).finally(()=>{n()}):n()}function A(e){const t=this.params,n=this.metrics;if(this.ended)return;this.ended=!0;for(let t=0;t<Xe;t++)e.removeEventListener(Je[t],this.listener,!1);if(t.aborted)return;if((0,Ye.iW)(t))return;if(n.duration=this.endTime-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):O(this,e),n.cbTime=this.cbTime,s){try{this.responseBody=e.responseText}catch(t){this.responseBody=e.response}if((!n.rxSize||0===n.rxSize)&&void 0!==this.responseBody&&0!==t.status){const e=Le(this.responseBody);void 0!==e&&(n.rxSize=e)}try{this.responseHeaders=function(e){const t={};return e?(e.split("\r\n").forEach(function(e){const r=e.indexOf(": ");if(r>0){const n=e.substring(0,r),i=e.substring(r+2);t[n.toLowerCase()]=i}}),t):t}(e.getAllResponseHeaders())}catch(e){r.emit(rt,[e])}}const i=[t,n,this.startTime,this.endTime,"xhr"];this.targets.forEach(e=>x(i,this,e))}function x(e,r,i){n("xhr",[...e,i],r,t.K7.ajax)}function O(e,n){e.params.status=n.status;var i=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?Le(e.response):"text"===r||""===r||void 0===r?Le(e.responseText):void 0}(n,e.lastSize);if(void 0!==i&&0!==n.status&&(e.metrics.rxSize=i),e.sameOrigin&&n.getAllResponseHeaders().indexOf(tt)>=0){var s=n.getResponseHeader(tt);s&&((0,S.p)("sm",["Ajax/CrossApplicationTracing/Header/Seen"],void 0,t.K7.metrics,r),e.params.cat=s.split(", ").pop())}e.loadCaptureCalled=!0}r.on("new-xhr",a),r.on("open-xhr-start",o),r.on("open-xhr-end",d),r.on("send-xhr-start",l),r.on("setRequestHeader-xhr-start",u),r.on("xhr-cb-time",f),r.on("xhr-load-added",h),r.on("xhr-load-removed",p),r.on("xhr-resolved",m),r.on("addEventListener-end",v),r.on("removeEventListener-end",y),r.on("fn-end",E),r.on("fetch-before-start",w),r.on("fetch-start",R),r.on("fn-start",b),r.on("fetch-done",T)}(e,this.ee,this.handler,this.dt),this.importAggregator(e,()=>r.e(478).then(r.bind(r,3845)))}}const it={},st=["pushState","replaceState"];function at(e,t){const r=function(e){return(e||R.ee).get("history")}(e);return!g.RI||it[r.debugId]++||(it[r.debugId]=1,(0,Pe.YM)(r,void 0,t).inPlace(window.history,st,"-")),r}var ot=r(3738);function ct(e){(0,N.Y)(k.BL,function(r=Date.now()){const n=r-g.WN;n<0&&(0,l.R)(62,r),(0,S.p)(q.XG,[k.BL,{time:n}],void 0,t.K7.metrics,e.ee),e.addToTrace({name:k.BL,start:r,origin:"nr"}),(0,S.p)("api-"+k.hG,[n,k.BL],void 0,t.K7.genericEvents,e.ee)},e)}const{He:dt,bD:ut,d3:lt,Kp:ft,TZ:ht,Lc:pt,uP:gt,Rz:mt}=ot;class vt extends W{static featureName=ht;constructor(e){var n;super(e,ht),n=e,(0,N.Y)(k.U2,function(e){if(!(e&&"object"==typeof e&&e.name&&e.start))return;const r={n:e.name,s:e.start-g.WN,e:(e.end||e.start)-g.WN,o:e.origin||"",t:"api"};r.s<0||r.e<0||r.e<r.s?(0,l.R)(61,{start:r.s,end:r.e}):(0,S.p)("bstApi",[r],void 0,t.K7.sessionTrace,n.ee)},n),ct(e);
29if(!(0,j.V)(e.init))return void this.deregisterDrain();const i=this.ee;let s;at(i,e),this.eventsEE=(0,Me.u)(i,e),this.eventsEE.on(gt,function(e,t){this.bstStart=(0,_.t)()}),this.eventsEE.on(pt,function(e,r){(0,S.p)("bst",[e[0],r,this.bstStart,(0,_.t)()],void 0,t.K7.sessionTrace,i)}),i.on(mt+lt,function(e){this.time=(0,_.t)(),this.startPath=location.pathname+location.hash}),i.on(mt+ft,function(e){(0,S.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,t.K7.sessionTrace,i)});try{s=new PerformanceObserver(e=>{const r=e.getEntries();(0,S.p)(dt,[r],void 0,t.K7.sessionTrace,i)}),s.observe({type:ut,buffered:!0})}catch(e){}this.importAggregator(e,()=>r.e(478).then(r.bind(r,6974)),{resourceObserver:s})}}var yt=r(733),bt=r(6344);class Et extends W{static featureName=bt.TZ;#i;recorder;constructor(e){var n;let i;super(e,bt.TZ),n=e,(0,N.Y)(k.CH,function(){(0,S.p)(k.CH,[],void 0,t.K7.sessionReplay,n.ee)},n),function(e){(0,N.Y)(k.Tb,function(){(0,S.p)(k.Tb,[],void 0,t.K7.sessionReplay,e.ee)},e)}(e);const s="".concat(u.Wt).concat((0,yt.Y)(e.info.licenseKey,e.info.applicationID));try{i=JSON.parse(localStorage.getItem(s))}catch(e){}(0,I.SR)(e.init)&&this.ee.on(k.CH,()=>this.#s()),this.#a(i)&&this.importRecorder().then(e=>{e.startRecording(bt.Qb.PRELOAD,i?.sessionReplayMode)}),this.abortHandler=this.#n,this.importAggregator(this.agentRef,()=>r.e(478).then(r.bind(r,6167)),this),this.ee.on("err",e=>{this.blocked||this.agentRef.runtime.isRecording&&(this.errorNoticed=!0,(0,S.p)(bt.Vh,[e],void 0,this.featureName,this.ee))})}#a(e){return e&&(e.sessionReplayMode===u.g.FULL||e.sessionReplayMode===u.g.ERROR)||(0,I.Aw)(this.agentRef.init)}importRecorder(){return this.recorder?Promise.resolve(this.recorder):(this.#i??=Promise.all([r.e(478),r.e(249)]).then(r.bind(r,4866)).then(({Recorder:e})=>(this.recorder=new e(this),this.recorder)).catch(e=>{throw this.ee.emit("internal-error",[e]),this.blocked=!0,e}),this.#i)}#s(){this.blocked||(this.featAggregate?this.featAggregate.mode!==u.g.FULL&&this.featAggregate.initializeRecording(u.g.FULL,!0,bt.Qb.API):this.importRecorder().then(()=>{this.recorder.startRecording(bt.Qb.API,u.g.FULL)}))}#n(){this.recorder?.stopRecording()}}var wt=r(3962);class Rt extends W{static featureName=wt.TZ;constructor(e){if(super(e,wt.TZ),function(e){const r=e.ee.get("tracer");function n(){}(0,N.Y)(k.dT,function(e){return(new n).get("object"==typeof e?e:{})},e);const i=n.prototype={createTracer:function(n,i){var s={},a=this,o="function"==typeof i;return(0,S.p)(q.xV,["API/createTracer/called"],void 0,t.K7.metrics,e.ee),function(){if(r.emit((o?"":"no-")+"fn-start",[(0,_.t)(),a,o],s),o)try{return i.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw r.emit("fn-err",[arguments,this,t],s),t}finally{r.emit("fn-end",[(0,_.t)()],s)}}}};["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach(r=>{N.Y.apply(this,[r,function(){return(0,S.p)(k.hw+r,[performance.now(),...arguments],this,t.K7.softNav,e.ee),this},e,i])}),(0,N.Y)(k.PA,function(){(0,S.p)(k.hw+"routeName",[performance.now(),...arguments],void 0,t.K7.softNav,e.ee)},e)}(e),!g.RI||!(0,i.dV)().o.MO)return;const n=at(this.ee,e);try{this.removeOnAbort=new AbortController}catch(e){}wt.tC.forEach(e=>{(0,J.sp)(e,e=>{c(e)},!0,this.removeOnAbort?.signal)}
29);const s=()=>(0,S.p)("newURL",[(0,_.t)(),""+window.location],void 0,this.featureName,this.ee);n.on("pushState-end",s),n.on("replaceState-end",s),(0,J.sp)(wt.OV,e=>{c(e),(0,S.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)},!0,this.removeOnAbort?.signal);let a=!1;const o=new((0,i.dV)().o.MO)((e,t)=>{a||(a=!0,requestAnimationFrame(()=>{(0,S.p)("newDom",[(0,_.t)()],void 0,this.featureName,this.ee),a=!1}))}),c=(0,C.s)(e=>{"loading"!==document.readyState&&((0,S.p)("newUIEvent",[e],void 0,this.featureName,this.ee),o.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0}))},100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),o.disconnect(),this.abortHandler=void 0},this.importAggregator(e,()=>r.e(478).then(r.bind(r,4393)),{domObserver:o})}}var Tt=r(981);const At={},St=new Set;function xt(e){return"string"==typeof e?{type:"string",size:(new TextEncoder).encode(e).length}:e instanceof ArrayBuffer?{type:"ArrayBuffer",size:e.byteLength}:e instanceof Blob?{type:"Blob",size:e.size}:e instanceof DataView?{type:"DataView",size:e.byteLength}:ArrayBuffer.isView(e)?{type:"TypedArray",size:e.byteLength}:{type:"unknown",size:0}}class Ot{constructor(e,t){this.timestamp=(0,_.t)(),this.currentUrl=(0,Ee.L)(window.location.href),this.socketId=(0,ye.LA)(8),this.requestedUrl=(0,Ee.L)(e),this.requestedProtocols=Array.isArray(t)?t.join(","):t||"",this.openedAt=void 0,this.protocol=void 0,this.extensions=void 0,this.binaryType=void 0,this.messageOrigin=void 0,this.messageCount=0,this.messageBytes=0,this.messageBytesMin=0,this.messageBytesMax=0,this.messageTypes=void 0,this.sendCount=0,this.sendBytes=0,this.sendBytesMin=0,this.sendBytesMax=0,this.sendTypes=void 0,this.closedAt=void 0,this.closeCode=void 0,this.closeReason="unknown",this.closeWasClean=void 0,this.connectedDuration=0,this.hasErrors=void 0}}class _t extends W{static featureName=o.TZ;constructor(e){super(e,o.TZ);const n=e.init.feature_flags.includes("websockets")||e.init.web_sockets?.enabled,s=!e.init.feature_flags.includes("no_spv"),a=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.performance.resources.enabled,e.init.user_actions.enabled,n,s];var c;let d;if(c=e,(0,N.Y)(k.hG,(e,t)=>ce(e,t,c),c),function(e){(0,N.Y)(k.fF,(t,r)=>ue(t,r,e),e)}(e),ct(e),Se(e),function(e){(0,N.Y)(k.V1,(t,r)=>de(t,r,e),e)}(e),this.removeOnAbort=new AbortController,this.abortHandler=()=>{this.removeOnAbort.abort(),this.abortHandler=void 0},n){const u=function(e,t){if(!(0,i.dV)().o.WS)return e;const r=e.get("websockets");if(At[r.debugId]++)return r;At[r.debugId]=1,(0,V.G)(()=>{const e=(0,_.t)();St.forEach(t=>{t.nrData.closedAt=e,t.nrData.closeCode=1001,t.nrData.closeReason="Page navigating away",t.nrData.closeWasClean=!1,t.nrData.openedAt&&(t.nrData.connectedDuration=e-t.nrData.openedAt),r.emit("ws",[t.nrData,t.targets],t)})});
29class n extends WebSocket{static name=Tt.R.WS;static toString(){return"function WebSocket() { [native code] }"}toString(){return"[object WebSocket]"}get[Symbol.toStringTag](){return n.name}#o(e){(e.__newrelic??={}).socketId=this.nrData.socketId,this.nrData.hasErrors??=!0}constructor(...e){super(...e),this.nrData=new Ot(e[0],e[1]),this.targets=(0,Ie.$5)(t),this.addEventListener("open",()=>{this.nrData.openedAt=(0,_.t)(),["protocol","extensions","binaryType"].forEach(e=>{this.nrData[e]=this[e]}),St.add(this)}),this.addEventListener("message",e=>{const{type:t,size:r}=xt(e.data);this.nrData.messageOrigin??=(0,Ee.L)(e.origin),this.nrData.messageCount++,this.nrData.messageBytes+=r,this.nrData.messageBytesMin=Math.min(this.nrData.messageBytesMin||1/0,r),this.nrData.messageBytesMax=Math.max(this.nrData.messageBytesMax,r),(this.nrData.messageTypes??"").includes(t)||(this.nrData.messageTypes=this.nrData.messageTypes?"".concat(this.nrData.messageTypes,",").concat(t):t)}),this.addEventListener("close",e=>{this.nrData.closedAt=(0,_.t)(),this.nrData.closeCode=e.code,e.reason&&(this.nrData.closeReason=e.reason),this.nrData.closeWasClean=e.wasClean,this.nrData.connectedDuration=this.nrData.closedAt-this.nrData.openedAt,St.delete(this),r.emit("ws",[this.nrData,this.targets],this)})}addEventListener(e,t,...r){const n=this,i="function"==typeof t?function(...e){try{return t.apply(this,e)}catch(e){throw n.#o(e),e}}:t?.handleEvent?{handleEvent:function(...e){try{return t.handleEvent.apply(t,e)}catch(e){throw n.#o(e),e}}}:t;return super.addEventListener(e,i,...r)}send(e){if(this.readyState===WebSocket.OPEN){const{type:t,size:r}=xt(e);this.nrData.sendCount++,this.nrData.sendBytes+=r,this.nrData.sendBytesMin=Math.min(this.nrData.sendBytesMin||1/0,r),this.nrData.sendBytesMax=Math.max(this.nrData.sendBytesMax,r),(this.nrData.sendTypes??"").includes(t)||(this.nrData.sendTypes=this.nrData.sendTypes?"".concat(this.nrData.sendTypes,",").concat(t):t)}try{return super.send(e)}catch(e){throw this.#o(e),e}}close(...e){try{super.close(...e)}catch(e){throw this.#o(e),e}}}return g.gm.WebSocket=n,r}(this.ee,e);u.on("ws",(e,t)=>{(0,S.p)("ws-complete",[e,t],void 0,this.featureName,this.ee)})}if(s){if("function"==typeof g.gm.ReportingObserver){const l=new g.gm.ReportingObserver(e=>{e.forEach(e=>{(0,S.p)("spv",[kt(e),(0,_.t)()],void 0,t.K7.genericEvents,this.ee)}),l.disconnect()},{types:["csp-violation"],buffered:!0});l.observe()}g.gm.addEventListener("securitypolicyviolation",e=>{(0,S.p)("spv",[kt(e),e.timeStamp],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal))}if(g.RI){if(ze(this.ee,e),De(this.ee,e),d=at(this.ee,e),e.init.user_actions.enabled){function f(t){const r=(0,Ge.D)(t);return e.beacons.includes(r.hostname+":"+r.port)}function h(){d.emit("navChange")}o.Zp.forEach(e=>(0,J.sp)(e,e=>(0,S.p)("ua",[e],void 0,this.featureName,this.ee),!0)),o.qN.forEac
29h(e=>{const t=(0,C.s)(e=>{(0,S.p)("ua",[e],void 0,this.featureName,this.ee)},500,{leading:!0});(0,J.sp)(e,t)}),g.gm.addEventListener("error",()=>{(0,S.p)("uaErr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal)),this.ee.on("open-xhr-start",(e,r)=>{f(e[1])||r.addEventListener("readystatechange",()=>{2===r.readyState&&(0,S.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(void 0,this.removeOnAbort.signal))}),this.ee.on("fetch-start",e=>{e.length>=1&&!f(Ze(e[0]))&&(0,S.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)}),d.on("pushState-end",h),d.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,J.jT)(!0,this.removeOnAbort.signal)),window.addEventListener("popstate",h,(0,J.jT)(!0,this.removeOnAbort.signal))}if(e.init.performance.resources.enabled&&g.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{(0,S.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)})}).observe({type:"resource",buffered:!0})}}a.some(e=>e)?this.importAggregator(e,()=>r.e(478).then(r.bind(r,8019))):this.deregisterDrain()}}function kt(e){const t=e.body??e;return{blockedUrl:t.blockedURL??e.blockedURI,documentUrl:t.documentURL??e.documentURI,effectiveDirective:t.effectiveDirective,originalPolicy:t.originalPolicy,sourceFile:t.sourceFile,statusCode:t.statusCode,lineNumber:t.lineNumber,columnNumber:t.columnNumber,disposition:"reporting"===t.disposition?"report":t.disposition,sample:t.sample,referrer:t.referrer}}var Nt=r(2646);const Lt=new Map;function Mt(e,t,r,n,i=!0,s){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const a=function(e){return(e||R.ee).get("logger")}(e),o=(0,Pe.YM)(a,void 0,s),c=new Nt.y(R.P);c.level=n.level,c.customAttributes=n.customAttributes,c.autoCaptured=i;const d=t[r]?.[Pe.Jt]||t[r];return Lt.set(d,c),o.inPlace(t,[r],"wrap-logger-",()=>Lt.get(d),void 0,!0),a}var Pt=r(1910);class It extends W{static featureName=se.TZ;constructor(e){var t;super(e,se.TZ),t=e,(0,N.Y)("log",(e,r)=>oe(e,r,t),t),function(e){(0,N.Y)(k.Wb,(t,r,{customAttributes:n={},level:i=se.p_.INFO}={})=>{Mt(e.ee,t,r,{customAttributes:n,level:i},!1,e)},e)}(e),Se(e);const n=this.ee;["log","error","warn","info","debug","trace"].forEach(t=>{(0,Pt.i)(g.gm.console[t]),Mt(n,g.gm.console,t,{level:"log"===t?"info":t},void 0,e)}),this.ee.on("wrap-logger-end",function([t],r,i,s=[e.runtime.v2Target]){const{level:a,customAttributes:o,autoCaptured:c}=this;s.forEach(e=>{(0,ae.R)(n,t,o,a,c,e)})}),this.importAggregator(e,()=>r.e(478).then(r.bind(r,5288)))}}new F({features:[nt,K,G,vt,Et,Y,Oe,_t,It,Rt],loaderType:"spa"})})()})();</script>
29
30    	<meta property="fb:pages" content="" />
31	<meta name="title" content="Norwich City News | The Pink Un"/>
32	<meta name="description" content="Norwich City, King's Lynn, Lowestoft Town and Norfolk football news and message boards from The Pink Un."/>
33	<meta name="keywords" content=""/>
34
35<script type="application/ld+json">
36    {
37        "@context": "http://schema.org",
38        "@type": "WebPage",
39        "headline": "Send Us Your News Index",
40        "url": "https://www.pinkun.com/send-us-your-news/"
41    }
42</script>
42
43
44
45
46
47
48
49
50
51    <link id="page_stylesheet_vars" href="/resources/responsive-static/build/mds/css/archant-pink-un-sans-serif-vars.css?r=vjoPdzgg" rel="stylesheet" type="text/css">
52
53    <link href="/resources/responsive-static/build/mds/css/header-footer.css?r=vjoPdzgg" rel="stylesheet" type="text/css">
54
55    <link id="page_stylesheet" href="/resources/responsive-static/build/mds/css/blockhomepage.css?r=vjoPdzgg" rel="stylesheet" type="text/css">
56
57    
58
59    <link rel="shortcut icon" href="/resources/images/13966049/" type="image/vnd.microsoft.icon">
60    <link rel="icon" href="/resources/images/13966049/" type="image/vnd.microsoft.icon">
61
62        
62<script>
63        window.startExec = performance.now();
64    </script>
64
65
66    
66<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js" integrity="sha384-1H217gwSVyLSIfaLxHbE7dRb3v4mYCKbpQvzx0cegeju1MVsGrX5xXxAvs/HgeFs" crossorigin="anonymous"></script>
vendor: 1 bytes, line 66
66
67<script src="https://code.jquery.com/jquery-migrate-3.6.0.js" integrity="sha384-ekzRTCLAU/LqHRBjnphRAxgZZvGdoP+TfkGGsX+tBJpRdM7r2/89ZZNzC/7YTJXX" crossorigin="anonymous"></script>
vendor: 1 bytes, line 67
67
68<script type="text/javascript" src="/resources/shared/responsive-sync/?r=vjoPdzgg"></script>
68
69
70<script type="text/javascript">
71    data_layer_helper.setIsArticle(false);
72    data_layer_helper.setCookieDomain('.pinkun.com');
73    data_layer_helper.setModuleType('BlockHomepageModule');
74    data_layer_helper.setLocalInfoFolder('');
75    data_layer_helper.setHomesData('', '', '', 'home');
76    data_layer_helper.setPrimaryDomain('www.pinkun.com');
77    data_layer_helper.setPath('/');
78    data_layer_helper.setGoogleNetworkCode('154725070');
79    data_layer_helper.setArticleTimestamp('');
80    data_layer_helper.setPathOverride();
81
82
83    var extraTags = [];
84    
85        extraTags.push('user_level_anonymous');
86    
87
88    var data_layer = {
89        environment: {
90            is_test_site: 'no',
91            is_live_site: 'yes',
92            is_paywall_site: 'yes',
93            is_portable_screen: (data_layer_helper.isMobileScreen()) ? 'yes' : 'no',
94            is_desktop_screen: (data_layer_helper.isMobileScreen()) ? 'no' : 'yes',
95            is_mobile_device: data_layer_helper.getMobileDevice(),
96            is_tablet_device: data_layer_helper.getTabletDevice(),
97            server: 'webapp-857f48ddbd-jg26q',
98            platform: 'Martini'
99        },
100        site: {
101            id: '1188',
102            comments_subscriber_only: 'no',
103            viafoura_site_id: '00000000-0000-4000-8000-ecd803bfcdd1',
104            comments_use_viafoura: 'yes',
105            centre_id: '30',
106            centre_name: '',
107            country: 'England',
108            name: 'The Pink Un',
109            name_with_prefix_capitalised_possessive: 'The Pink Un\'s',
110            name_with_prefix_lower_possessive: 'The Pink Un\'s',
111            domain: 'www.pinkun.com',
112            editor_name: 'Richard Porritt',
113            onboarding_enabled: 'no',
114            onboarding_flow_id: 'onboarding_disabled',
115            allowing_mr_replacement: '',
116            cookie_domain: '.pinkun.com',
117            uses_cmp: 'yes',
118            short_domain: 'pinkun',
119            using_piano_id: 'yes',
120            enable_skimlinks: 'no',
121            skimlinks_domain_id: '',
122            disable_newsletters: 'no',
123            is_archant_site: 'yes',
124            shc_merchant_name: '',
125            piano_application_group: 'Sport',
126            piano_site_name: 'The Pink Un',
127            piano_site_name_possessive: 'The Pink Un\'s',
128            piano_site_name_with_prefix_lower: 'The Pink Un',
129            piano_site_name_with_prefix_capitalised: 'The Pink Un',
130            piano_site_name_with_prefix_capitalised_possessive: 'The Pink Un\'s',
131            piano_site_name_with_prefix_lower_possessive: 'The Pink Un\'s',
132            piano_location_primary: 'Norwich',
133            piano_location_primary_possessive: 'Norwich\'s',
134            piano_location_county: 'Norfolk',
135            piano_location_county_possessive: 'Norfolk\'s',
136            piano_primary_sports_team: 'Norwich City',
137            piano_primary_sports_team_nickname: 'Canaries',
138            piano_primary_sports_team_sport: 'Football',
139            piano_primary_sports_team_possessive: 'Norwich City\'s',
140            piano_primary_sports_team_nickname_possessive: 'Canaries\'',
141            piano_self_service_cancellation_setting: 'None',
142            has_app: 'yes',
143            app_provider: 'pagesuite',
144            app_platform: 'pagesuite-hybrid',
145            app_store_url_ios: 'https://apps.apple.com/app/pink-un/id1582153815',
146            app_store_url_google_play: 'https://play.google.com/store/apps/details?id=com.archant.pinkun.app',
147            cloudflare_turnstyle_site_key: '',
148        },
149        page: {
150            module: 'BlockHomepageModule',
151            referrer: data_layer_helper.getReferrerHostName(),
152            name: '(www) ' + data_layer_helper.getOmniturePath(),
153            title: document.title,
154            path: data_layer_helper.getOmniturePath(),
155            section: data_layer_helper.getPathFragment(0),
156            subsection: data_layer_helper.getPathFragment(1),
157            subsection_2: data_layer_helper.getPathFragment(2),
158            subsection_3: data_layer_helper.getPathFragment(3),
159            reference: qs.get('ref'),
160            layout: '',
161            ad_timing: data_layer_helper.getCookie('adtiming'),
162            template_namespace: 'standard',
163            template: '',
164            colour_scheme: '',
165            layout_template: '',
166            mds_font: 'sans-serif',
167            user_used_app_last_24hours: '',
168            user_used_app_last_7days: '',
169            user_used_app_last_14days: '',
170            mds_colour_palette: 'archant-pink-un',
171            feature_block_a_enabled: ($('[data-name="Feature Article Block A"]').length > 0) ? 'yes' : 'no',
172            feature_block_b_variant: (typeof $('[data-name="Feature Article Block B"]').data('variant') === 'undefined') ? '' : $('[data-name="Feature Article Block B"]').data('variant'),
173            is_article_list: 'no',
174            error_404: '',
175            top_stories_article_count: '',
176            interstitial_dedupe_top_stories: '',
177            interstitial_desktop_height: '',
178            interstitial_mobile_height: '',
179            interstitial_tablet_height: '',
180            interstitial_piano_module_id: '',
181            interstitial_using_recommendations: '',
182            interstitial_recommendation_header: '',
183            interstitial_article_count: '',
184            news_stories_article_count: '',
185            site_newspaper_archive_enabled: 'no',
186            site_newspaper_archive_number_of_pages: '',
187            site_newspaper_archive_start_year: 0,
188            article_originates_from_this_site: '',
189            article_originates_from_site: '',
190            article_originates_from_url: ''
191        },
192        user: {
193            id: '',
194            first_name: '',
195            advertising_experience: 'Ad-Full',
196            is_privacy_plus: 'no',
197            is_alist: 'no',
198            level: data_layer_helper.getCookie('nq_ul'),
199            seen_cmp: (data_layer_helper.getCookie('_sp_enable_dfp_personalized_ads') === 'true' || data_layer_helper.getCookie('_sp_enable_dfp_personalized_ads') === 'false') ? 'yes' : 'no',
200            given_consent: (data_layer_helper.getCookie('_sp_enable_dfp_personalized_ads') === 'true') ? 'yes' : 'no',
201            consent_string: data_layer_helper.getConsentString(),
202            type: 'anonymous',
203            parsely_type: 'Anonymous',
204            chartbeat_type: 'anon',
205            type_as_int: '1',
206            is_logged_in: 'no',
207            is_admin: 'no',
208            is_internal_admin: '',
209            has_full_admin_link_permissions: '',
210            has_registered: (data_layer_helper.getCookie('nqr') !== null) ? 'yes' : 'no',
211            comments_verified: '',
212            comments_verified_date: '',
213            user_email_is_verified: '',
214            user_email_is_verified_date: '',
215            mobile_number_is_verified: '',
216            mobile_number_is_verified_date: '',
217            user_needs_email_verification: '',
218            user_needs_mobile_verification: '',
219            user_too_many_requests: '',
220            age_decade:  '0' ,
221            gender:  'u' ,
222            is_known: data_layer_helper.getCookie('__siren') ? 'yes' : 'no',
223            hash: '',
224            lr_hash_1: '',
225            lr_hash_2: '',
226            lr_hash_3: '',
227            gender:  'u' ,
228            user_decade:  '0' ,
229            subscription_plan: '',
230            subscription_tier: 'null',
231            subscription_plan_and_frequency: ' - ',
232            commented: (data_layer_helper.isArticle() && qs.get('action') === 'success') ? 'yes' : 'no',
233            time_since_last_visit: 'not implemented (maybe drop)',
234            device: data_layer_helper.getDevice(),
235            using_ad_blocker_sourcepoint: data_layer_helper.getSourcepointAdbockStatus(),
236            admin_user_name: '',
237            is_admin_internal: '',
238            is_admin_external: '',
239            card_expired: '',
240            card_will_expire: '',
241            expires_urgency: '',
242            abandoned_cart: 'no',
243            subscription_expired: 'no',
244            is_archant_site: 'yes',
245            signed_up_primary_news_newsletter: 'no',
246            signed_up_primary_sport_newsletter: 'no',
247            played_free_puzzles_last_7days: '',
248            played_paid_puzzles_last_7days: '',
249            commenter_badge: '',
250            upper_role: '',
251        },
252        analytics: {
253            hierachy: 'newsquest,,www.pinkun.com,' + data_layer_helper.getPathFragment(3).replace(/\//,','),
254            link_filters: 'javascript:,pinkun.com,fish4.co.uk,adsys.newsquest.co.uk,www.exchangeandmart.co.uk,www.communigate.co.uk,',
255            tracking_block: data_layer_helper.getTrackingFromCookie('tracking_block', ''),
256            tracking_block_index: data_layer_helper.getTrackingFromCookie('tracking_block_index', ''),
257            previous_page_name: data_layer_helper.getCookie('nq_prev_page'),
258            advert_id: '',
259            position_in_list: data_layer_helper.getTrackingFromCookie('o-prop30', ''),
260            featured_content: data_layer_helper.getTrackingFromCookie('o-ref', qs.get('ref')),
261            account: data_layer_helper.getAccount()
262        },
263        chartbeat: {
264            enabled: "no",
265            id: "",
266            domain: "",
267            sections: ''
268        },
269        parsely: {
270            enabled: "yes",
271            site_id: "pinkun.com",
272            type: 'Anonymous'
273        },
274        piano: {
275            tags: data_layer_helper.getPianoTags({
276                      piano_domain: 'pinkun',
277                      piano_master: '',
278                      breaking_news: false,
279                      editorial_opinion: false,
280                      free_subscriber: false,
281                      free_subscriber: false,
282                      has_video: false,
283                      is_article: false,
284                      article_content_level : '',
285                      article_content_level_open_access: false,
286                      picture_gallery_id: false,
287                      user_is_newsquest: false,
288                      user_is_entra_authenticated: false,
289                      user_logged_in: false,
290                      is_live_article: false,
291                      why_free_subscriber: '',
292                      extra_tags: extraTags,
293                      is_covid_headline: false,
294                      is_covid_body: false,
295                      is_alist: false,
296                      audio_provider_bytecast: false
297                  }
298            ),
299            custom_variables: {
300                article_length: '',
301                application_group: 'Sport',
302                content_is_editorial_opinion: 'no',
303                base_url: 'https://www.pinkun.com',
304                full_url: document.location.href,
305                from_discover: (document.referrer === "android-app://com.google.android.googlequicksearchbox/") ? 'yes' : 'no',
306                mds_font: 'sans-serif',
307                mds_colour_palette: 'archant-pink-un',
308                site_name: 'The Pink Un',
309                site_name_possessive: 'The Pink Un\'s',
310                site_name_with_prefix_capitalised: 'The Pink Un',
311                site_name_with_prefix_lower: 'The Pink Un',
312                site_name_with_prefix_capitalised_possessive: 'The Pink Un\'s',
313                site_name_with_prefix_lower_possessive: 'The Pink Un\'s',
314                location_primary: 'Norwich',
315                location_primary_possessive: 'Norwich\'s',
316                location_county: 'Norfolk',
317                location_county_possessive: 'Norfolk\'s',
318                site_has_primary_sports_team: 'yes',
319                primary_sports_team: 'Norwich City',
320                primary_sports_team_nickname: 'Canaries',
321                primary_sports_team_sport: 'Football',
322                primary_sports_team_possessive: 'Norwich City\'s',
323                primary_sports_team_nickname_possessive: 'Canaries\'',
324                site_id: '1188',
325                content_level: '',
326                content_author: '',
327                content_id: '',
328                content_is_article: 'no',
329                content_primary_topic: '',
330                user_seen_consent_modal: ($.cookie('_sp_enable_dfp_personalized_ads') === 'true' || $.cookie('_sp_enable_dfp_personalized_ads') === 'false') ? 'yes' : 'no',
331                site_section: data_layer_helper.getPathFragment(0, true),
332                article_published_yyyy: '',
333                user_played_free_puzzles_last_7days: '',
334                user_played_paid_puzzles_last_7days: '',
335                anon_user_played_free_puzzles_last_7days: data_layer_helper.untrackedPuzzleCheck(),
336                home_delivery_phone_number: '',
337                content_is_restricted: data_layer_helper.getRestrictedContent('', '', '', ''),
338                day_of_week: data_layer_helper.getDayOfWeek(),
339                user_card_expired: '',
340                user_card_will_expire: '',
341                user_expires_urgency: '',
342                user_used_app_last_24hours: '',
343                user_used_app_last_7days: '',
344                user_used_app_last_14days: '',
345                user_subscription_tier: 'null',
346                user_is_newsquest: 'no',
347                primary_news_newsletter_id: '2409',
348                primary_news_newsletter_name: 'The Pink Un',
349                primary_news_newsletter_description: 'Receive the latest Norwich City news, fixtures and match coverage.',
350                primary_sport_newsletter_id: '2409',
351                primary_sport_newsletter_name: 'The Pink Un',
352                primary_sport_newsletter_description: 'Receive the latest Norwich City news, fixtures and match coverage.',
353                user_signed_up_primary_news_newsletter: 'no',
354                user_signed_up_primary_sport_newsletter: 'no',
355                newsletter_auto_promote: '',
356                newsletter_auto_promote_name: '',
357                newsletter_auto_promote_description: '',
358                newsletter_auto_promote_ID: '',
359                site_has_app: 'yes',
360                site_app_store_url_ios: 'https://apps.apple.com/app/pink-un/id1582153815',
361                site_app_store_url_google_play: 'https://play.google.com/store/apps/details?id=com.archant.pinkun.app',
362                subsets_experiment_id: '',
363                site_section1: data_layer_helper.getPathFragment(1, true), // GBL required
364                site_newspaper_archive_enabled: 'no',
365                site_newspaper_archive_number_of_pages: '',
366                site_newspaper_archive_start_year: 0,
367                article_originates_from_this_site: '',
368                article_originates_from_site: '',
369                article_originates_from_url: ''
370            },
371            native_variables: {
372                setContentCreated: '',
373                setContentIsNative:  'no',
374                setContentAuthor: '',
375                setContentSection: data_layer_helper.getPathFragment(0, true)
376            }
377        },
378        article: {
379            cscore:'',
380            showing_preview: '',
381            is_article: data_layer_helper.isArticle() ? 'yes' : 'no',
382            id : '',
383            length_type: '',
384            character_count: '',
385            author: ''.toLowerCase(),
386            e_var15: ''.toLowerCase(),
387            context: '',
388            content_level: '',
389            content_level_open_access: '',
390            content_level_combined: ',,no',
391            content_is_restricted: data_layer_helper.getRestrictedContent('', '', '', ''),
392            increment: (data_layer_helper.isArticle()) ? '+1' : '',
393            sponsor: '',
394            contributions: '0',
395            is_sponsored: 'no',
396            headline: '',
397            age: data_layer_helper.getArticleAge(),
398            upload_date: '',
399            publish_date: '',
400            update_date: '',
401            rating: '',
402            source: data_layer_helper.getSource(''),
403            subjects: (typeof articleSubjects === 'object') ? articleSubjects.join(',') : '',
404            context: '',
405            grapeshot_context: (typeof gs_channels !== 'undefined') ? gs_channels : '',
406            allow_comments: 'no',
407            total_comments: '',
408            originating_site_id: '',
409            parent_article_site_id: '',
410            parent_article_id: '',
411            originating_article_id: '',
412            parent_originating_site_id: '',
413            is_original_to_site: '',
414            is_cloned: '',
415            parent_article_url: '',
416            use_skimlinks: 'no',
417            content_primary_topic: '',
418            taxonomy: {
419                article_types: '',
420                topics: '',
421                sports: '',
422                sports_teams: '',
423                locations: '',
424                shared_content: '',
425                free_tags: '',
426                farming: ''
427            },
428            audio: {
429                has_audio: 'no',
430                provider: ''
431            },
432            article_comments_use_viafoura: ''
433        },
434        homes: {
435            search_bedrooms_minimum: '',
436            search_location: 'home',
437            search_price_minimum: '',
438            search_price_maximum: '',
439            list: '',
440            id: ''
441        },
442        video: {
443            exists: 'no',
444            auto_play_enabled: data_layer_helper.getAutoPlay('no')
445        },
446        contributions: {
447            allow_text: '',
448            allow_image: '',
449            user_contributions_number: '0',
450            has_user_contributions: 'no'
451        },
452        search: {
453            keywords: qs.get('search'),
454            results: ''
455        },
456        announcements: {
457            category: ''
458        },
459        config: {
460            google_analytics_id: 'UA-63174771-6',
461            site_template_set: 'standard',
462            path: '/',
463            top_level_section: 'send-us-your-news',
464            polar_property_id: 'NA-DAILECHO-11238979',
465            gallery_show_advert_after: '5',
466            disable_outbrain_with_ad_light: 'no',
467            disable_outbrain: 'no',
468        },
469        dfp: {
470            is_landing: 'no',
471            module_path: 'home',
472            weather_band: '',
473            weather_summary: ''.toLowerCase(),
474            id: data_layer_helper.getGoogleId(),
475            display_screen: data_layer_helper.isMobileScreen() ? 'mobile' : 'desktop',
476            can_show_billboard: (window.screen.width > 960) ? 'y' : 'n'
477        },
478        dates: {
479            date: (new Date()).toLocaleDateString('en-GB'),
480            hour: (new Date()).getHours(),
481            day: data_layer_helper.getDayOfWeek(),
482            weekend: ((new Date()).getDay() === 6 || (new Date()).getDay() === 0) ? 'Weekend' : 'Weekday'
483        },
484        memorials: {
485            contact_phone_number: '',
486            contact_email_address: '',
487            publications: JSON.parse('' || '[]'),
488            user: {
489                id: '',
490                email_verified: 'no',
491                type: ''
492            },
493            funeral_director: {
494                id: '',
495                person_urn: ''
496            }
497        }
498    }
499
500    data_layer_helper.storeCurrentPageName(data_layer.page.name);
501
502    window.dispatchEvent(new Event('data-layer-loaded'))
503
504      data_layer.piano.custom_variables.user_used_app_last_24hours = 'no';
505      data_layer.piano.custom_variables.user_used_app_last_7days = 'no';
506      data_layer.piano.custom_variables.user_used_app_last_14days = 'no';
507  if (data_layer.article.is_article !== 'yes') {
508      data_layer.piano.custom_variables.site_module = 'BlockHomepageModule';
509      data_layer.piano.custom_variables.puzzles_landing_page = 'no';
510      data_layer.piano.custom_variables.puzzles_display_page = 'no';
511  }
512</script>
512
513 
514<script
515  src="https://assets.adobedtm.com/499440d21de9/54b957ecfb7e/launch-98090dfa3d73.min.js"
516  async
517></script>
517
518 
519
520<script>"use strict";function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}!function(){var t=function(){var t,e,o=[],n=window,r=n;for(;r;){try{if(r.frames.__tcfapiLocator){t=r;break}}catch(t){}if(r===n.top)break;r=r.parent}t||(!function t(){var e=n.document,o=!!n.frames.__tcfapiLocator;if(!o)if(e.body){var r=e.createElement("iframe");r.style.cssText="display:none",r.name="__tcfapiLocator",r.title="tcfapiLocator",e.body.appendChild(r)}else setTimeout(t,5);return!o}(),n.__tcfapi=function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];if(!n.length)return o;"setGdprApplies"===n[0]?n.length>3&&2===parseInt(n[1],10)&&"boolean"==typeof n[3]&&(e=n[3],"function"==typeof n[2]&&n[2]("set",!0)):"ping"===n[0]?"function"==typeof n[2]&&n[2]({gdprApplies:e,cmpLoaded:!1,cmpStatus:"stub"}):o.push(n)},n.addEventListener("message",(function(t){var e="string"==typeof t.data,o={};if(e)try{o=JSON.parse(t.data)}catch(t){}else o=t.data;var n="object"===_typeof(o)&&null!==o?o.__tcfapiCall:null;n&&window.__tcfapi(n.command,n.version,(function(o,r){var a={__tcfapiReturn:{returnValue:o,success:r,callId:n.callId}};t&&t.source&&t.source.postMessage&&t.source.postMessage(e?JSON.stringify(a):a,"*")}),n.parameter)}),!1))};"undefined"!=typeof module?module.exports=t:t()}();</script>
520
521
522<script type = "text/javascript">
523( function () {
524
525    window._sp_ = {
526        config: {
527            baseEndpoint: 'https://a02342.pinkun.com',
528            accountId: 52,
529            targetingParams:{
530                subscribed: false,
531                privacy: false
532            },
533            gdpr: { },
534            events: {
535                onMessageReady: function (message_type) {
536                    trackSPEvents('event76');
537                },
538                onMessageChoiceSelect: function (message_type, choice_id, choice_type_id) {
539                    console.log('message_type: ', message_type);
540                    console.log('choice_id: ', choice_id);
541                    console.log('choice_type_id: ', choice_type_id);
542                    if ('yes' === 'yes') {
543                        if (choice_type_id === 12) {
544                            trackSPEvents('event83'); //Consent Banner Reject All
545                            trackSPEvents('event82'); //Journalism Message Shown
546                        }
547                        if (choice_type_id === 11) {
548                            trackSPEvents('event78');
549                        }
550                        if (choice_type_id === 9) {
551                            trackSPEvents('event77');
552                        }
553                    } else {
554                        // these are the second argument in non-gate
555                        if (choice_type_id === 12) {
556                            trackSPEvents('event77');
557                        }
558
559                        if (choice_type_id === 11) {
560                            trackSPEvents('event78');
561                        }
562
563                        if (choice_type_id === 13) {
564		                    trackSPEvents('event83');
565                        }
566                    }
567                },
568                onPrivacyManagerActionStatus: function(message_type, status, actionType) {
569                    console.log('message_type: ' + message_type);
570                    console.log('status: ' + status);
571                    console.log('actionType: ' + actionType);
572                    if ('yes' === 'yes') {
573                        if (actionType === 11) {
574                            trackSPEvents('event79'); //Privacy Manager Accept
575                        }
576                        if (actionType === 9) {
577                            trackSPEvents('event68'); //Privacy Manager Redirect
578                        }
579                        if (actionType === 1) {
580                            trackSPEvents('event75'); //Forced tcf String Change
581                        }
582                    } else {
583                    // these are the second argument in non-gate
584                        if (actionType === 13) {
585                            trackSPEvents('event81'); //Privacy Manager Reject
586                        }
587                        if (actionType === 11) {
588                            trackSPEvents('event79'); //Privacy Manager Accept
589                        }
590                        if (actionType === 1) {
591                            trackSPEvents('event80'); //Privacy Manager Save & Exit
592                        }
593                    }
594                },
595                onPMCancel: function (message_type) {
596                    console.log('onPMCancel', message_type);
597                    trackSPEvents('event84'); //Privacy Manager Back
598                },
599            }
600        }
601    }
602
603    if (typeof window.__tcfapi === 'function') {
604        window.__tcfapi('addEventListener', 2, function (tcData, success) {
605            console.log('SP: Event Listen:', tcData, success);
606            if (success && tcData.eventStatus === 'useractioncomplete') {
607                setTcfCookie(tcData.purpose.consents, tcData.purpose.legitimateInterests);
608
609                var csnt = 'none';
610                if ($.cookie('_sp_enable_dfp_personalized_ads') === 'true') {
611                    csnt = 'yes';
612                } else if ($.cookie('_sp_enable_dfp_personalized_ads') === 'false') {
613                    csnt = 'no';
614                }
615                googletag.cmd.push(function() {
616                    // console.log('DFP: Cookie check - setting dfpcsnt to ', csnt);
617                    googletag.pubads().setTargeting('dfpcsnt', csnt);
618                });
619                // ready to start DFP
620                // console.log('PIANO: setting unrestricted via useractioncomplete');
621                // runPiano('unrestricted');
622                startAdvertising(tcData.listenerId);
623
624                var e = new Event('launch:cmp:choice-made');
625                window.dispatchEvent(e);
626            } else if (success && tcData.eventStatus === 'tcloaded') {
627                // tcloaded means a valid TCF v2.0 string is available
628                // console.log('PIANO: setting unrestricted via tcloaded');
629                // runPiano('unrestricted');
630                if (tcData.gdprApplies === false) {
631                    $.cookie('_sp_enable_dfp_personalized_ads', 'true', {domain: '.pinkun.com', path: '/', expires: 100});
632                }
633                startAdvertising(tcData.listenerId);
634
635            } else if (success && tcData.eventStatus === 'useractionnotcomplete') {
636                // do nothing - this means the user has not made a choice yet
637            } else if (success && tcData.eventStatus === 'cmpuishown') {
638                // do nothing - this means the CMP UI has been shown
639            } else if (!success) {
640                // $.cookie('_sp_enable_dfp_personalized_ads', 'true', {domain: '.pinkun.com', path: '/', expires: 100});
641                // startAdvertising();
642            } else {
643                // console.log('PIANO: setting restricted');
644                // runPiano('restricted');
645            }
646        });
647    }
648
649    
650
651    document.addEventListener('click', function (e) {
652        const option = e.target.closest('.gdpr-option-v2');
653
654        if (!option) return;
655
656        e.preventDefault();
657        sendEvent76 = false;
658
659        const id = option.dataset.v2Id;
660        const isGate = option.dataset.isGate;
661
662        if (isGate === 'yes') {
663            trackSPEvents('event87');
664            _sp_.gdpr.loadPrivacyManagerModal(id);
665        } else {
666            trackSPEvents('event77');
667            _sp_.gdpr.loadPrivacyManagerModal(id);
668        }
669    });
670
671    function getTcfData() {
672        if (typeof window.__tcfapi !== 'function') {
673            console.warn('TCF API unavailable');
674            return;
675        }
676        window.__tcfapi('addEventListener', 2, function(data, success) {
677            if (!data.purpose || !data.purpose.consents || !data.purpose.legitimateInterests) {
678                // console.log('DFP: No TCF data found, not setting cookies');
679                return;
680            }
681            setTcfCookie(data.purpose.consents, data.purpose.legitimateInterests);
682        }, [755]);
683    }
684    getTcfData();
685
686    function setTcfCookie(data, legitimateInterests) {
687        var consents = [];
688        $.each(data, function(id, consent)  {
689            var c = (consent === true) ? 'yes' : 'no';
690            consents.push(c)
691        });
692        // console.log('DFP: consents length: ', consents.length);
693        if (consents.length !== 10) {
694            // consents = consents.fill('no', consents.length, 10);
695            for (var i = consents.length; i < 10; i++) {
696                consents[i] = 'no';
697            }
698        }
699        // console.log('DFP: Found consents to store in cookie:', consents);
700        $.cookie('prev-tcf-v2', consents.join(','), {domain: '.pinkun.com', path: '/', expires: 100});
701
702        var consentEvent4 = 'none';
703        if (typeof data[4] !== 'undefined') {
704            consentEvent4 = data[4] ? 'true' : 'false';
705        }
706        $.cookie('_sp_enable_dfp_personalized_ads', consentEvent4, {domain: '.pinkun.com', path: '/', expires: 100});
707
708        var legitInterest = 'none';
709        if (legitimateInterests && typeof legitimateInterests[2] !== 'undefined') {
710            legitInterest = legitimateInterests[2] ? 'true' : 'false';
711        }
712
713        $.cookie('_sp_legitimate_interests', legitInterest , {domain: '.pinkun.com', path: '/', expires: 100});
714    }
715
716    var sendEvent76 = true;
717
718    function trackSPEvents(events) {
719        if (events === 'event76' && !sendEvent76) {
720            return;
721        } else if (events === 'event76') {
722            sendEvent76 = false;
723        }
724
725        if (typeof window.s !== 'object') {
726            // console.log('DFP: No window.s object found, trying again in 1 second');
727            window.setTimeout(function () { trackSPEvents(events)} , 1000);
728            return;
729        }
730
731        // console.log("ADB: Tracking %s", events);
732        // Re-create the Omniture object so the data can be tracked.
733        var s = window.s;
734
735        if (events.indexOf('event70') !== -1) {
736            // console.log('DFP: Events passed, added evars');
737            s.eVar35 = 'enabled';
738            s.prop35 = 'enabled';
739        }
740
741        s.events = events;
742        s.linkTrackEvents = events;
743        s.linkTrackVars = "eVar2,eVar3,eVar4,eVar5,eVar6,evar7,evar8,evar9,eVar16,eVar19,eVar26,eVar35,eVar43,eVar67,prop35";
744        s.suppressPageView = true;
745        s.tl(true,'o','Ad Block');
746    }
747
748    function startAdvertising(id)
749    {
750        if (typeof window.doNotAdvertise !== 'undefined' && window.doNotAdvertise === true) {
751            return;
752        }
753
754        // console.log("DFP: Is the page fully loaded?", window.googleReady);
755        if (window.googleReady !== true) {
756            window.setTimeout(function () {
757                // console.log('DFP: Google not fully loaded yet, pausing quarter of a second before trying again');
758                startAdvertising(id);
759            }, 250);
760            return;
761        }
762
763        // Ensure that we never run this code twice
764        if (window.advertisingStart === true) {
765            return;
766        }
767        // console.log('DFP: Running advertisement');
768        window.advertisingStart = true;
769
770        var googletag = window.googletag;
771        // init google objects and array
772        (function() {
773            var gads = document.createElement('script');
774            gads.async = true;
775            gads.type = 'text/javascript';
776            gads.src = 'https://securepubads.g.doubleclick.net/tag/js/gpt.js';
777            var node = document.getElementsByTagName('script')[0];
778            node.parentNode.insertBefore(gads, node);
779        })();
780
781        // launch the exco slideshow player
782        launchExcoSlideshow();
783
784        // load facebook etc
785        loadSocials();
786
787        // Checking our decision to use headerbidding (shorterned as prebid) is correct
788        // via system logic, and that we have the simplified consent to do so
789        if (usePrebid && $.cookie('_sp_enable_dfp_personalized_ads') === 'true') {
790            var e = new Event('launch:sourcepoint:consentaccepted');
791            window.dispatchEvent(e);
792
793            // AP code initialisation
794            // the script is loaded via launch, once we have detected a consent signal via the datalayer.
795            fetchAp();
796
797            var site = 'desktop';
798            var _site = 'desktop';
799
800            // load IAS scripts and set up vars
801            (function() {
802                var ias = document.createElement('script');
803                ias.async = true;
804                ias.type = 'text/javascript';
805                ias.src = 'https://cdn.adsafeprotected.com/iasPET.1.js';
806                var node = document.getElementsByTagName('script')[0];
807                node.parentNode.insertBefore(ias, node);
808            })();
809
810            // load the prebid script
811            (function() {
812                var pbs = document.createElement('script');
813                pbs.async = true;
814                pbs.type = 'text/javascript';
815                pbs.src = 'https://micro.rubiconproject.com/prebid/dynamic/11022.js?group=newsquest';
816                var node = document.getElementsByTagName('script')[0];
817                node.parentNode.insertBefore(pbs, node);
818            })();
819
820            // tell google to actually get the bids from all relevant vendors when loaded
821            googletag.cmd.push(function () {
822                fetchHeaderBids();
823            });
824        }
825
826        // Outbrain
827        if (
828            (window.data_layer.user.advertising_experience === 'Ad-Free' || window.data_layer.config.disable_outbrain === 'yes') ||
829            (window.data_layer.user.advertising_experience === 'Ad-Light' && window.data_layer.config.disable_outbrain_with_ad_light === 'yes')
830        ) {
831            // console.log("No Outbrain script loading due to page settings");
832        } else {
833            // console.log("Loading Outbrain");
834            var ob = document.createElement('script');
835            ob.async = true;
836            ob.type = 'text/javascript';
837            ob.src = 'https://widgets.outbrain.com/outbrain.js';
838            var node = document.getElementsByTagName('script')[0];
839            node.parentNode.insertBefore(ob, node);
840        }
841
842
843        // remove the listener
844        if (id !== null) {
845            window.__tcfapi('removeEventListener', 2, function (success) { }, id);
846        }
847    }
848
849    /**
850     * Wait until we have advertising consent to show this advertising
851     * based replacement for the single image on our article pages
852     * This logic is based on excoSlidshowPlayerID that only appears on the page
853     * if a user is NOT a subscriber (including privacy plus) and the page has the
854     * correct information to show it (doesn't have a video, not in sport etc)
855     */
856    function launchExcoSlideshow() {
857        const slideShowPlayerId = window.excoSlideshowPlayerId;
858        // if we do not have a player id, we do not need to do anything
859        if (!slideShowPlayerId) {
860            return;
861        }
862
863        // this is exco's supplied code, modified for our use
864        (function (d, s, n) {
865            fjs = d.getElementsByTagName(s)[0];
866            js = d.createElement(s);
867            js.className = n;
868            js.src = '//player.ex.co/player/' + slideShowPlayerId;
869            js.setAttribute('programmatic', 'true');
870	        js.onload = function () {
871                const playerApi = ExCoPlayer.connect(slideShowPlayerId);
872                playerApi.init({});
873
874                playerApi.on('player-load', function(data) {
875                    $('.mar-article-image').remove();
876                    if (window.screen.width > 800) {
877                        $('.article-hero').attr('style', 'order: 1');
878                    }
879                    window.hide_overlay_for_exco = true;
880                });
881            };
882            fjs.parentNode.insertBefore(js, fjs);
883        }(document, 'script', 'exco-player'));
884    }
885
886    function loadSocials()
887    {
888        const socials = [
889            'https://platform.twitter.com/widgets.js',
890            'https://connect.facebook.net/en_US/all.js#xfbml=1',
891            'https://www.tiktok.com/embed.js',
892        ];
893
894        socials.forEach((social) => {
895            var script = document.createElement('script');
896            script.src = social;
897            script.async = true;
898            document.getElementsByTagName('head')[0].appendChild(script);
899        });
900    }
901
902
903})();
904
905</script>
vendor: 1 bytes, line 905
905
906<script src="https://a02342.pinkun.com/unified/wrapperMessagingWithoutDetection.js"></script>
906
907
908<script>
909window.usePiano = true;
910window.selectedOfferId = null;
911window.selectedTermId = null;
912</script>
vendor: 1 bytes, line 912
912
913<script>
914document.cookie = "__adblocker=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/";
915var setNptTechAdblockerCookie = function(adblocker) {
916    var d = new Date();
917    d.setTime(d.getTime() + 60 * 60 * 24 * 2 * 1000);
918    document.cookie = "__adblocker=" + (adblocker ? "true" : "false") + "; expires=" + d.toUTCString() + "; path=/";
919}
920var script = document.createElement("script");
921script.setAttribute("async", true);
922script.setAttribute("src", "//www.npttech.com/advertising.js");
923script.setAttribute("onerror", "setNptTechAdblockerCookie(true);");
924document.getElementsByTagName("head")[0].appendChild(script);
925</script>
925
926
927<script>
928// window.pdl = window.pdl || {};
929// window.pdl.requireConsent = 'v2';
930
931// Store entry point unless it's a user or subscribe page
932// to redirect after subscription
933const excludedPaths = ['/user/', '/subscribe/'];
934
935const shouldExclude = excludedPaths.some(path =>
936  window.location.pathname.includes(path)
937);
938
939if (!shouldExclude) {
940  sessionStorage.setItem(
941    'last_piano_page_interacted_with',
942    window.location.pathname
943  );
944}
945
946tp = window.tp || [];
947
948function runPiano(restrictedMode) {
949    // console.log('Running Piano with restricted mode:', restrictedMode);
950    // tp.push(['init', function() {
951    //      console.log('Piano purpose map, before calling setAllPurposes()', tp.consent.getByPurpose());
952    // }]);
953    // if (restrictedMode === 'restricted') {
954    //     // If we're in restricted mode, we need to set some specific parameters
955    //     tp.push(['init', function() {
956    //         tp.consent.setAllPurposes('opt-out')
957    //     }]);
958    // } else {
959    //     tp.push(['init', function() {
960    //         tp.consent.setAllPurposes('opt-in')
961    //     }]);
962    // }
963    // tp.push(['init', function() {
964    //     console.log('Piano purpose map, after calling setAllPurposes()', tp.consent.getByPurpose());
965    // }]);
966    // init Piano ID
967    tp.push(['init', function() {
968        tp.pianoId.init();
969    }]);
970
971    const isGooglebot = window.isRobot.googleBot();
972
973    const isArticle = (data_layer.article.is_article === 'yes');
974
975    const isCl3 = (parseInt(data_layer.article.content_level, 10) === 3);
976
977    if (isGooglebot) {
978        // we don't load Piano from all non-article pages
979        if (!isArticle) {
980            return;
981        }
982
983        // If we are on an article, we do not load piano on CL0, 1, or 2
984        if (!isCl3) {
985            return;
986        }
987    }
988    Object.keys(data_layer.piano.custom_variables).forEach(function (k) {
989        var v = data_layer.piano.custom_variables[k];
990
991        if (v != '') {
992            tp.push(["setCustomVariable", k, v]);
993        }
994    });
995
996    Object.keys(data_layer.piano.native_variables).forEach(function (k) {
997        var v = data_layer.piano.native_variables[k];
998        if (v != '') {
999            tp.push([k, v]);
1000        }
1001    });
1002
1003    tp.push(['setTags', data_layer.piano.tags]);
1004
1005   (function(src){
1006        var a=document.createElement("script");
1007        a.type = "text/javascript";
1008        a.async=true;
1009        a.src=src;
1010        var b=document.getElementsByTagName("script")[0];
1011        b.parentNode.insertBefore(a, b)
1012    })("//experience.tinypass.com/xbuilder/experience/load?aid=1ZqOQbU7pu");
1013}
1014
1015// Init Piano
1016const debug = document.cookie
1017    .split('; ')
1018    .find(row => row.startsWith('debug='))
1019    ?.split('=')[1];
1020
1021tp.push(["setDebug", debug === '1']);
1022
1023tp.push(["setApplePayMerchantId", 'merchant.nq.subssites.piano']);
1024
1025tp.push(["setUsePianoIdUserProvider", true ]);
1026
1027tp.push(["addHandler", "loginRequired", function(params) {
1028    // If they're already signed in, we don't need to do anything special.
1029    if (tp.user.isUserValid()) {
1030        return;
1031    }
1032    if (typeof window._overridePianoDefault !== 'undefined' && window._overridePianoDefault !== true) {
1033        console.log("TPL Called")
1034        tp.pianoId.show({
1035            screen: 'login',
1036            displayMode: 'modal',
1037            loggedIn: (data) => {
1038                pianoId.loggedIn();
1039            },
1040            loggedOut: () => {
1041                console.log('TP-TJ: user logged out');
1042            },
1043            registrationSuccess: () => {
1044                pianoId.registered();
1045            },
1046            width: '500px',
1047            height: '460px',
1048        });
1049    }
1050}]);
1051
1052tp.push(["addHandler", "checkoutSelectTerm", function (termDetails) {
1053    if (typeof termDetails.termId !== 'undefined') {
1054        window.selectedTermId = termDetails.termId;
1055    }
1056}]);
1057
1058tp.push(["addHandler", "showTemplate", function (templateParams) {
1059    showPianoTarget(templateParams);
1060}]);
1061
1062tp.push(["addHandler", "showOffer", function (offerParams) {
1063    window.shownOffer = true;
1064
1065    // Store some data we might need later.
1066    if (typeof offerParams.offerId !== 'undefined') {
1067        window.selectedOfferId = offerParams.offerId;
1068    }
1069
1070    showPianoTarget(offerParams);
1071}]);
1072
1073function handleFullWidthBanner(selector) {
1074    if (selector === '#po-overlay-articlegate-full-width-full-article-scroll-below') {
1075        document.querySelector(selector).classList.add(selector.replace('#', ''));
1076    }
1077    document.querySelector(selector).style.minHeight = "254px";
1078    document.querySelector('#subscription-content').style.display = 'none';
1079    document.querySelectorAll('.send-us-your-news-cta').forEach((el) => { el.style.display = 'none'; });
1080    document.querySelectorAll('.mega-news-block').forEach((el) => { el.style.display = 'none'; });
1081
1082    const block = document.querySelector(selector);
1083    const containerBlock = block.parentElement;
1084    const containerBlockHeight = 254; // to prevent abrupt jumping
1085
1086    if (!block) { return; }
1087
1088    block.style.display = 'block';
1089
1090    const blockRect = block.getBoundingClientRect();
1091    const startTop = blockRect.top + window.scrollY;
1092    const blockHeight = blockRect.height;
1093    const screenWidth = window.screen.width;
1094
1095    let lastState = ''; // 'top', 'bottom', 'default'
1096
1097    function getScrollbarWidth() {
1098        return window.innerWidth - document.documentElement.clientWidth;
1099    }
1100
1101    function updatePosition() {
1102        const scrollY = window.scrollY;
1103        const viewportHeight = window.innerHeight;
1104        const bottomTrigger = startTop + blockHeight - viewportHeight;
1105
1106        let newState = 'default';
1107
1108        if (scrollY > startTop && screenWidth >= 768) {
1109            newState = 'top';
1110        } else if (scrollY < bottomTrigger && screenWidth >= 768) {
1111            newState = 'bottom';
1112        } else if (scrollY < bottomTrigger + 90 && screenWidth < 768) {
1113            newState = 'bottom-mobile';
1114        }
1115
1116        const scrollbarWidth = getScrollbarWidth();
1117
1118        if (newState !== lastState) {
1119            switch (newState) {
1120                case 'top':
1121                    block.style.position = 'fixed';
1122                    block.style.top = '0';
1123                    block.style.bottom = 'auto';
1124                    block.style.marginLeft = '0';
1125                    block.style.marginRight = '0';
1126                    containerBlock.style.minHeight = `${containerBlockHeight}px`;
1127                    break;
1128
1129                case 'bottom':
1130                    block.style.position = 'fixed';
1131                    block.style.bottom = '0';
1132                    block.style.top = 'auto';
1133                    block.style.marginLeft = '0';
1134                    block.style.marginRight = '0';
1135                    block.style.width = `calc(100vw - ${scrollbarWidth}px)`;
1136                    containerBlock.style.minHeight = 'unset';
1137                    break;
1138
1139                case 'bottom-mobile':
1140                    block.style.position = 'fixed';
1141                    block.style.bottom = '90px';
1142                    block.style.top = 'auto';
1143                    block.style.marginLeft = 'calc(-100vw + 100%)';
1144                    block.style.marginRight = 'calc(-100vw + 100%)';
1145                    containerBlock.style.minHeight = 'unset';
1146                    break;
1147
1148                default:
1149                    block.style.position = '';
1150                    block.style.top = '';
1151                    block.style.bottom = '';
1152                    block.style.width = `calc(100vw - ${scrollbarWidth}px)`;
1153                    block.style.marginLeft = '-100vw';
1154                    block.style.marginRight = '-100vw';
1155                    containerBlock.style.minHeight = 'unset';
1156                    break;
1157            }
1158
1159            lastState = newState;
1160        }
1161
1162        requestAnimationFrame(updatePosition);
1163    }
1164
1165    updatePosition();
1166    window.addEventListener('resize', updatePosition);
1167}
1168
1169function trackLocation(forceValidLocation = false) {
1170    var currentLocation = window.location.pathname;
1171
1172    let valid = false;
1173
1174    if (currentLocation.indexOf('puzzles') > -1) {
1175        valid = true;
1176    }
1177
1178    if (currentLocation.indexOf('pagesuite') > -1) {
1179        valid = true;
1180    }
1181
1182    var articleMatch = currentLocation.match(/(\d+)\.[^\/]+\/(r\/)?$/);
1183    if (articleMatch != null) {
1184        valid = true;
1185    }
1186
1187    if (forceValidLocation) {
1188        valid = true;
1189    }
1190
1191    if (currentLocation.indexOf('subscribe') > -1) {
1192        valid = false;
1193    }
1194
1195    if (!valid) {
1196        return;
1197    }
1198
1199    $.cookie('last-piano-page-interacted-with', currentLocation, {path: '/', domain: window.data_layer.site.cookie_domain});
1200}
1201
1202function trackPianoWithNewRelic(templateName) {
1203    if (this.newrelic && typeof this.newrelic === 'object') {
1204        newrelic.setCustomAttribute('user_was_shown_piano_experience', templateName);
1205    }
1206}
1207
1208function handleOfferShow(params) {
1209    console.log('Piano params', params);
1210
1211    // If on the subscription page and the URL has a term ID and offer ID, show the relevant offer.
1212    if (typeof location.pathname !== 'undefined' && location.pathname === '/subscribe/') {
1213        var offerId = location.search.match(/offer_id=([A-Z0-9]+)/);
1214        if (offerId !== null && offerId.length > 1) {
1215            offerId = offerId[1];
1216        }
1217        var termId = location.search.match(/term_id=([A-Z0-9]+)/);
1218        if (termId !== null && termId.length > 1) {
1219            termId = termId[1];
1220        }
1221        if (offerId !== null && termId !== null) {
1222            tp.offer.show({'termId': termId, 'offerId': offerId});
1223        }
1224    }
1225
1226    // we are only tracking
1227    var templateId = params.templateId;
1228    var variantId = params.templateVariantId;
1229    if (params.containerSelector !== '#po-inline-articlegate-fullarticle' &&
1230        params.containerSelector !== '#po-overlay-articlegate-full-width-full-article-scroll-below' &&
1231        params.containerSelector !== '#po-inline-articlegate-partialarticle' &&
1232        params.containerSelector !== '#po-overlay-articlegate-full-width-scroll-below'
1233    ) {
1234        $.get('/ws/piano/templatename/', {template_id: templateId, variant_id: variantId}, function (response) {
1235            trackPianoSimplified(params, response.name);
1236        });
1237        return;
1238    }
1239
1240
1241    $.get('/ws/piano/templatename/', {template_id: templateId, variant_id: variantId}, function (response) {
1242        trackPiano(params, response.name);
1243    });
1244}
1245
1246function trackPiano(params, templateName) {
1247    trackPianoWithNewRelic(templateName);
1248
1249    if (typeof params.activeMeters === 'string') {
1250        activeMeters = JSON.parse(params.activeMeters);
1251    } else {
1252        activeMeters = params.activeMeters;
1253    }
1254
1255    var s = window.s;
1256    if (!s || !s.pageName) {
1257        // console.log("ADB: Setting s from backup");
1258        s = window.backupAdobe;
1259        window.s = s;
1260    }
1261
1262    // this would call when CL3 is a hard gate
1263    if (!activeMeters && data_layer.article.content_level === '3') {
1264        s.eVar59 = templateName;
1265        s.eVar58 = data_layer.article.content_level;
1266        s.events = "event91";
1267        s.linkTrackVars="eVar58,eVar2,eVar3,eVar4,eVar5,eVar6,eVar15,eVar16,eVar19,eVar25,eVar26,eVar28,eVar43,eVar59,eVar61,eVar62,eVar79,eVar104,eVar106,eVar107,eVar108,eVar118,prop63,list3,events";
1268        s.linkTrackEvents="event91";
1269        s.tl(document, 'o', 'Metered Access Notice');
1270        s.events = '';
1271        return;
1272    }
1273
1274    if (!activeMeters) {
1275        return;
1276    }
1277
1278    var meterData = activeMeters[0];
1279
1280    var meterName = meterData.meterName.toLowerCase();
1281
1282    // track event 5
1283    if (meterName.indexOf('cl1') !== -1 || meterName.indexOf('cl2') !== -1 || meterName.indexOf('cl3') !== -1 || params.containerSelector === '#po-inline-articlegate-partialarticle' || params.containerSelector === '#po-overlay-articlegate-full-width-scroll-below') {
1284        s.eVar58 = data_layer.article.content_level;
1285        s.eVar80 = meterData.meterName + ',' +  meterData.views + ',' + meterData.totalViews + ',' + meterData.viewsLeft + ',' + meterData.maxViews;
1286        s.eVar59 = templateName;
1287        s.events = "event5";
1288        s.linkTrackVars="eVar58,eVar2,eVar3,eVar4,eVar5,eVar6,eVar16,eVar19,eVar25,eVar26,eVar28,eVar43,eVar59,eVar61,eVar62,prop63,eVar80,eVar79,eVar118,list3, events";
1289        s.linkTrackEvents="event5";
1290    } else {
1291        s.eVar80 = meterData.meterName + ',' +  meterData.views + ',' + meterData.totalViews + ',' + meterData.viewsLeft + ',' + meterData.maxViews;
1292        s.eVar59 = templateName;
1293        s.linkTrackVars="eVar2,eVar3,eVar4,eVar5,eVar6,eVar16,eVar19,eVar25,eVar26,eVar28,eVar43,eVar59,eVar61,eVar62,prop63,eVar80,eVar79,eVar118,list3, events";
1294    }
1295    s.tl(document, 'o', 'Metered Access Notice');
1296    s.events = '';
1297
1298}
1299
1300/**
1301 * Just track the template name in 78 for non-article-interrupts/gates
1302 */
1303function trackPianoSimplified(params, templateName)
1304{
1305    trackPianoWithNewRelic(templateName);
1306
1307    var s = window.s;
1308    if (!s || !s.pageName) {
1309        // console.log("ADB: Setting s from backup");
1310        s = window.backupAdobe;
1311        window.s = s;
1312    }
1313    s.eVar78 = templateName;
1314    s.events = 'event90';
1315    s.linkTrackEvents="event90";
1316    s.linkTrackVars="eVar2,eVar3,eVar4,eVar5,eVar6,eVar16,eVar19,eVar25,eVar26,eVar28,eVar43,eVar59,eVar61,eVar62,prop63,eVar80,eVar79,eVar118,list3,eVar78, events";
1317    s.tl(document, 'o', 'Piano Template');
1318}
1319
1320function raiseLaunchEvent(name) {
1321    var e = new Event('launch:piano:' + name);
1322    window.dispatchEvent(e);
1323}
1324
1325function removePianoToast() {
1326    setTimeout(() => {
1327        document.getElementById('po-overlay-toast-left').remove()
1328    }, 30000)
1329}
1330
1331function showPianoTarget(params) {
1332    handleOfferShow(params);
1333    trackLocation();
1334
1335    if ($(params.containerSelector).length > 0) {
1336        const displayType = $(params.containerSelector).attr('data-display');
1337
1338        if (displayType) {
1339            $(params.containerSelector).addClass(`shown-${displayType}`);
1340        } else {
1341            $(params.containerSelector).addClass('shown').show();
1342        }
1343
1344        if ($(params.containerSelector).hasClass('piano--block-level') || $(params.containerSelector).hasClass('piano--inside-block')) {
1345            $(params.containerSelector).show();
1346        }
1347
1348        if (
1349            params.containerSelector === '#po-overlay-articlegate-full-width-scroll-below' ||
1350            params.containerSelector === '#po-overlay-articlegate-full-width-full-article-scroll-below'
1351        ) {
1352            handleFullWidthBanner(params.containerSelector);
1353        }
1354
1355        if ($(params.containerSelector) === '#po-inline-subscribe-page') {
1356            $(params.containerSelector).show();
1357        }
1358
1359        if (['#po-inline-blocksystem-target-e'].includes(params.containerSelector)) {
1360            $('#po-inline-blocksystem-target-e').show();
1361            $('.piano-promo-container').show();
1362        }
1363
1364        if (params.containerSelector === '#po-overlay-toast-left') {
1365            removePianoToast()
1366        }
1367
1368        if (params.containerSelector === '#po-overlay-toast-main-navigation') {
1369            removePianoToast()
1370        }
1371
1372        if (params.containerSelector === '#po-inline-articlewall-partialarticle-closable') {
1373            $('#po-inline-articlegate-partialarticle').css('display', 'none');
1374        }
1375
1376        if (params.containerSelector === '#po-inline-articlewall-fullarticle-closable') {
1377            $('#po-inline-articlegate-fullarticle').css('display', 'none');
1378        }
1379
1380        if (params.containerSelector === '#po-overlay-articlegate-full-width-full-article-scroll-below-closable') {
1381            $('#po-overlay-articlegate-full-width-full-article-scroll-below').css('display', 'none');
1382        }
1383    }
1384}
1385
1386tp.push(["addHandler", "checkoutComplete", function(conversion) {
1387    var s = window.s;
1388    s.events = s.apl(s.events, "event4", ",", 1); // Set the subscription counter event.
1389    s.events = s.apl(s.events, "purchase", ",", 1); // Set the purchase event.
1390    s.products = "Subscription : Metered Access;" + conversion.termId + ";1;"+conversion.chargeAmount;
1391    s.linkTrackEvents = "event4,purchase";
1392    s.purchaseID = conversion.termConversionId;
1393    s.pageName = '(www) /subscribe/complete/';
1394    // wipe out errors
1395    s.eVar31 = '';
1396    s.linkTrackVars="eVar2,eVar3,eVar5,eVar6,eVar7,eVar8,eVar9,eVar10,eVar15,eVar16,eVar17,eVar18,eVar19,eVar20,eVar22,eVar23,eVar24,eVar25,eVar26,eVar61,eVar62,events,products,purchaseID";
1397
1398    s.tl(true, 'o', 'Subscription');
1399
1400    $.cookie('resourceConverted', conversion.rid, {path: '/', domain: window.data_layer.site.cookie_domain});
1401    $.cookie('pianoConverted', '1', {path: '/', domain: window.data_layer.site.cookie_domain});
1402    raiseLaunchEvent('checkoutComplete');
1403
1404    // Clean Session Storage
1405    sessionStorage.removeItem('nq_selected_offer_id');
1406    sessionStorage.removeItem('nq_selected_term_id');
1407    sessionStorage.removeItem('nq_adobe_tracking_article_dimensions');
1408    sessionStorage.removeItem('nq_adobe_tracking_visiting_dimensions');
1409
1410    // Show Onboarding modal after subscription
1411    const lastPage = sessionStorage.getItem('last_piano_page_interacted_with');
1412    const baseUrl = lastPage || window.location.href;
1413
1414    const url = new URL(baseUrl, window.location.origin);
1415    url.searchParams.set('show-onboarding', 'yes');
1416
1417    setTimeout(() => {
1418        window.location.href = url.pathname + url.search;
1419    }, 2000);
1420}]);
1421
1422tp.push(["addHandler", "checkoutPaymentError", function(errorData) {
1423    var s = window.s;
1424    s.pageName = '(www) /subscribe/error/';
1425    s.eVar31 = errorData.message;
1426    s.tl(true, 'o', 'CheckoutPaymentError');
1427
1428    raiseLaunchEvent('checkoutPaymentError');
1429}]);
1430
1431tp.push(["addHandler", "checkoutError", function(errorData) {
1432    var s = window.s;
1433    s.pageName = '(www) /subscribe/error/';
1434    s.eVar31 = errorData.message;
1435    s.tl(true, 'o', 'CheckoutError');
1436    raiseLaunchEvent('checkoutError');
1437}]);
1438
1439tp.push(["addHandler", "startCheckout", function(options) {
1440    sessionStorage.setItem("nq_selected_offer_id", options.offerId);
1441    sessionStorage.setItem("nq_selected_term_id", options.termId);
1442
1443    if (!tp.user.isUserValid()) {
1444        window.location = '/user/create-account/subscribe/';
1445        return;
1446    }
1447
1448    var s = window.s;
1449    s.eVar2 = '(www) /subscribe/payment/';
1450    s.pageName = '(www) /subscribe/payment/';
1451    const storedAdobeArticleDimensions = sessionStorage.getItem('nq_adobe_tracking_article_dimensions');
1452    const storedAdobeVisitingDimensions = sessionStorage.getItem('nq_adobe_tracking_visiting_dimensions');
1453    if (storedAdobeVisitingDimensions) {
1454        const storedAdobeVisitingDimensionsObj = JSON.parse(storedAdobeVisitingDimensions);
1455        s.eVar10 = storedAdobeVisitingDimensionsObj.eVar10;
1456        s.eVar22 = storedAdobeVisitingDimensionsObj.eVar22;
1457        s.eVar23 = storedAdobeVisitingDimensionsObj.eVar23;
1458        s.eVar24 = storedAdobeVisitingDimensionsObj.eVar24;
1459    }
1460    if (storedAdobeArticleDimensions) {
1461        const storedAdobeArticleDimensionsObj = JSON.parse(storedAdobeArticleDimensions);
1462        s.eVar10 = storedAdobeArticleDimensionsObj.eVar10;
1463        s.eVar15 = storedAdobeArticleDimensionsObj.eVar15;
1464        s.eVar22 = storedAdobeArticleDimensionsObj.eVar22;
1465        s.eVar23 = storedAdobeArticleDimensionsObj.eVar23;
1466        s.eVar24 = storedAdobeArticleDimensionsObj.eVar24;
1467        s.eVar25 = storedAdobeArticleDimensionsObj.eVar25;
1468    }
1469    // wipe out errors
1470    s.eVar31 = '';
1471    s.events = '';
1472    raiseLaunchEvent('startCheckout');
1473    s.linkTrackVars="eVar10,eVar15,eVar22,eVar23,eVar24,eVar25";
1474    s.t();
1475}]);
1476
1477tp.push(["addHandler", "checkoutClose", function(conversion) {
1478    raiseLaunchEvent('checkoutClose');
1479
1480    // Did they abandon the cart? If so: was anything in their cart?
1481    if (typeof conversion.state === 'undefined' || conversion.state !== 'close') {
1482        return;
1483    }
1484    if (window.selectedOfferId === null || window.selectedTermId === null) {
1485        return;
1486    }
1487    $.post('/ws/piano/abandoned-cart/', {offer_id: window.selectedOfferId, term_id: window.selectedTermId});
1488}]);
1489
1490tp.push(["addHandler", "meterExpired", function(meterData){
1491    var msg = "<div><b>meterName:</b> " + meterData.meterName
1492        + "&nbsp; | &nbsp;<b>views:</b> " + meterData.views
1493        + "&nbsp; | &nbsp;<b>totalViews:</b> " + meterData.totalViews
1494        + "&nbsp; | &nbsp;<b>viewsLeft:</b> " + meterData.viewsLeft
1495        + "&nbsp; | &nbsp;<b>maxViews:</b> " + meterData.maxViews
1496        + "&nbsp; | &nbsp;<b>callback:</b> " + meterData.callback + '</div>';
1497    if ($.cookie('nq-show-piano-viewer') === 'yes') {
1498        $('#piano-meter-value').html(msg);
1499        $('#piano-meter-display').show();
1500        $('#piano-meter-display-content').append(msg);
1501    }
1502    var cVal = window.location.href;
1503
1504    trackLocation(true);
1505
1506    console.log("Piano Meter Expired:", meterData.meterName);
1507    if (meterData.meterName === 'CL1 Meter') {
1508        console.log("Piano: Setting meter expired cookie");
1509        $.cookie('isMeterExpired', 'yes', {path: '/', domain: window.data_layer.site.cookie_domain, expires: 1});
1510    }
1511
1512    raiseLaunchEvent('meterExpired');
1513
1514}]);
1515
1516tp.push(["addHandler", "meterActive", function(meterData){
1517    var msg = "<div><b>meterName:</b> " + meterData.meterName
1518        + "&nbsp; | &nbsp;<b>views:</b> " + meterData.views
1519        + "&nbsp; | &nbsp;<b>totalViews:</b> " + meterData.totalViews
1520        + "&nbsp; | &nbsp;<b>viewsLeft:</b> " + meterData.viewsLeft
1521        + "&nbsp; | &nbsp;<b>maxViews:</b> " + meterData.maxViews
1522        + "&nbsp; | &nbsp;<b>callback:</b> " + meterData.callback + '</div>';
1523    if ($.cookie('nq-show-piano-viewer') === 'yes') {
1524        $('#piano-meter-value').html(msg);
1525        $('#piano-meter-display').show();
1526        $('#piano-meter-display-content').append(msg);
1527    }
1528
1529    console.log("Piano Meter running total:", meterData.meterName,  meterData.totalViews, meterData.maxViews, meterData);
1530    if (meterData.meterName === 'CL1 Meter' && meterData.totalViews >= meterData.maxViews) {
1531        $.cookie('isMeterExpired', 'yes', {path: '/', domain: window.data_layer.site.cookie_domain, expires: 1});
1532    } else {
1533        $.cookie('isMeterExpired', 'no', {path: '/', domain: window.data_layer.site.cookie_domain, expires: 1});
1534    }
1535}]);
1536
1537
1538
1539runPiano('unrestricted');
1540
1541</script>
1541
1542
1543
1544
1545
1546    
1546<script type='text/javascript'>
1547    var googletag = googletag || {};
1548    googletag.cmd = googletag.cmd || [];
1549    var iasDataHandler, __iasPET = __iasPET || {};
1550    __iasPET.queue = __iasPET.queue || [];
1551    __iasPET.pubId = '931298';
1552
1553    var pbjs = pbjs || {};
1554    pbjs.que = pbjs.que || [];
1555
1556    var carbonRealtime = JSON.parse(window.localStorage.getItem('ccRealtimeData'));
1557    var ozoneSettings = {};
1558    var ozoneTargeting = {
1559        carbon_segment: carbonRealtime ? carbonRealtime.audiences.map(x => (x.id)) : []
1560    };
1561
1562
1563    function isMobile() {
1564        if (window.screen.width < 728) {
1565            return true;
1566        }
1567        return false;
1568    }
1569    var usePrebid = true;
1570    var whiteList = false;
1571    var adLight = false;
1572    
1573        whiteList = true;
1574        usePrebid = false;
1575        var whiteListAds = {};
1576    
1577    
1578    var blackListAds = [];
1579
1580    if (usePrebid) {
1581        // disable initial load so prebid can do its stuff
1582        // console.log('DFP: Disabling initial load');
1583        googletag.cmd.push(function() {
1584            // console.log('DFP: Disabling initial load - read by DFP');
1585            googletag.pubads().disableInitialLoad();
1586        });
1587    }
1588    </script>
1588
1589
1590    
1590<script>
1591
1592    /**
1593     * Adds key-values to page level of Google Publisher Tag
1594     * @example
1595     * addKeyValuesToGPT({"ap_a": ["1100"], "ap_x": ["134123"]})
1596     * @param {Object} keyValues
1597     */
1598     function addAsKeyValuesToGPT(keyValues) {
1599        if (!googletag.pubads) {
1600            googletag.cmd.push(function () {
1601                addAsKeyValuesToGPT(keyValues);
1602            });
1603            return;
1604        }
1605        for (const key in keyValues) {
1606            if (Object.hasOwnProperty.call(keyValues, key)) {
1607                const value = keyValues[key];
1608                googletag.pubads().setTargeting(key, value);
1609            }
1610        }
1611    }
1612
1613    function onAudienceProjectDataAvailable(dataResponse) {
1614        console.log("AudienceProject data returned", dataResponse);
1615
1616        // in keyValues there are full-reach key-values created, they needs to be sent to GAM and added to Prebid adform ad-units
1617        if (dataResponse.keyValues) {
1618            addAsKeyValuesToGPT(dataResponse.keyValues);
1619        }
1620    }
1621
1622    function fetchAp() {
1623        AudienceProjectData.fetch('saknewsquest', {
1624            integrateWithCmp: true,
1625            waitForCmpConsent: true
1626        }, onAudienceProjectDataAvailable);
1627    }
1628
1629
1630    </script>
1630
1631
1632
1633<script>
1634        if (typeof gs_channels === 'undefined') {
1635            gs_channels = "";
1636        }
1637        rpx_init = ({
1638            qry         : 'https://www.pinkun.com',
1639            section     : 'home',
1640            site        : 'www.pinkun.com',
1641            context     : '',
1642            weather     : ''.toLowerCase(),
1643            temp        : '',
1644            gs_channels : gs_channels,
1645            age         :  '0' ,
1646            gender      :  'u' ,
1647            nqd         : '' // intentionall blank
1648        });
1649    </script>
1649
1650    
1650<script type='text/javascript' src='https://pagead2.googlesyndication.com/pagead/imgad?id=CICAgKDLqv_TbRABGAEoATIIgOw1LHg7xnFAt-_HogU'></script>
1650
1651    
1651<script>
1652
1653    var bidTimeout = 1200;
1654    window.unfilteredAdUnits = [{"sizes":[1,1],"alternate_mobile_size":"","slotType":"outofpage","domName":"DFP_out_of_page","positionName":"out_of_page","isVast":false,"collapseContainer":false,"targets":["takeover"],"useRubicon":false,"rubicon_desktop_zone_id":"","rubicon_mobile_zone_id":"","rubicon_desktop_size_ids":[""],"rubicon_mobile_size_ids":[""],"appnexus_desktop_placement_id":"","appnexus_mobile_placement_id":"","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":false,"groupm_desktop_placement_id":"","groupm_mobile_placement_id":""},{"sizes":[[300,250],[300,600]],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_premium_mpu","positionName":"premium_mpu","isVast":false,"collapseContainer":false,"targets":["takeover"],"useRubicon":true,"rubicon_desktop_zone_id":"297382","rubicon_mobile_zone_id":"331020","rubicon_desktop_size_ids":["10","15"],"rubicon_mobile_size_ids":["10","15"],"appnexus_desktop_placement_id":"10550686","appnexus_mobile_placement_id":"10550760","criteo_desktop_placement_id":"744494","criteo_mobile_placement_id":"760443","use_amazon":true,"groupm_desktop_placement_id":"14304603","groupm_mobile_placement_id":"16550455"},{"sizes":[300,250],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_standard_mpu_1","positionName":"standard_mpu_1","isVast":false,"collapseContainer":true,"targets":["takeover"],"useRubicon":true,"rubicon_desktop_zone_id":"297390","rubicon_mobile_zone_id":"331024","rubicon_desktop_size_ids":["15"],"rubicon_mobile_size_ids":["15"],"appnexus_desktop_placement_id":"10550683","appnexus_mobile_placement_id":"10550759","criteo_desktop_placement_id":"744435","criteo_mobile_placement_id":"760547","use_amazon":true,"groupm_desktop_placement_id":"17946307","groupm_mobile_placement_id":"13260893"},{"sizes":[300,250],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_standard_mpu_2","positionName":"standard_mpu_2","isVast":false,"collapseContainer":true,"targets":["takeover"],"useRubicon":true,"rubicon_desktop_zone_id":"331028","rubicon_mobile_zone_id":"534778","rubicon_desktop_size_ids":["15"],"rubicon_mobile_size_ids":["15"],"appnexus_desktop_placement_id":"10550687","appnexus_mobile_placement_id":"10550761","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":true,"groupm_desktop_placement_id":"17375910","groupm_mobile_placement_id":"17375922"},{"sizes":[[970,250],[728,90]],"alternate_mobile_size":[320,50],"slotType":"standard","domName":"DFP_top_leaderboard","positionName":"top_leaderboard","isVast":false,"collapseContainer":true,"targets":["takeover"],"useRubicon":true,"rubicon_desktop_zone_id":"297380","rubicon_mobile_zone_id":"297370","rubicon_desktop_size_ids":["2","57"],"rubicon_mobile_size_ids":["43"],"appnexus_desktop_placement_id":"10550668","appnexus_mobile_placement_id":"10550747","criteo_desktop_placement_id":"985648","criteo_mobile_placement_id":"","use_amazon":true,"groupm_desktop_placement_id":"14304608","groupm_mobile_placement_id":"17479428"},{"sizes":[728,90],"alternate_mobile_size":[320,50],"slotType":"standard","domName":"DFP_leaderboard_1","positionName":"leaderboard_1","isVast":false,"collapseContainer":true,"targets":[""],"useRubicon":true,"rubicon_desktop_zone_id":"425706","rubicon_mobile_zone_id":"449748","rubicon_desktop_size_ids":["2"],"rubicon_mobile_size_ids":["43"],"appnexus_desktop_placement_id":"10550688","appnexus_mobile_placement_id":"10550762","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":true,"groupm_desktop_placement_id":"16550485","groupm_mobile_placement_id":"17479427"},{"sizes":[728,90],"alternate_mobile_size":[320,50],"slotType":"standard","domName":"DFP_leaderboard_2","positionName":"leaderboard_2","isVast":false,"collapseContainer":true,"targets":[""],"useRubicon":true,"rubicon_desktop_zone_id":"425708","rubicon_mobile_zone_id":"449750","rubicon_desktop_size_ids":["2"],"rubicon_mobile_size_ids":["43"],"appnexus_desktop_placement_id":"10550689","appnexus_mobile_placement_id":"10550766","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":true,"groupm_desktop_placement_id":"17375905","groupm_mobile_placement_id":"16550500"},{"sizes":[728,90],"alternate_mobile_size":[[300,100],[320,50]],"slotType":"standard","domName":"DFP_bottom_leaderboard","positionName":"bottom_leaderboard","isVast":false,"collapseContainer":false,"targets":[""],"useRubicon":true,"rubicon_desktop_zone_id":"297378","rubicon_mobile_zone_id":"425710","rubicon_desktop_size_ids":["2"],"rubicon_mobile_size_ids":["43"],"appnexus_desktop_placement_id":"10550678","appnexus_mobile_placement_id":"10550748","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":true,"groupm_desktop_placement_id":"17377997","groupm_mobile_placement_id":"17479454"},{"sizes":[["fluid"],[280,130],[1,1]],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_high_vis","positionName":"high_vis","isVast":false,"collapseContainer":true,"targets":[""],"useRubicon":false,"rubicon_desktop_zone_id":"","rubicon_mobile_zone_id":"","rubicon_desktop_size_ids":[""],"rubicon_mobile_size_ids":[""],"appnexus_desktop_placement_id":"","appnexus_mobile_placement_id":"","criteo_desktop_placement_id":"985647","criteo_mobile_placement_id":"","use_amazon":false,"groupm_desktop_placement_id":"","groupm_mobile_placement_id":""}];
1655
1656    
1657
1658    //whenever you want header bids call this function
1659    function fetchHeaderBids() {
1660        //Load the APS JavaScript Library
1661        !function(a9,a,p,s,t,A,g){if(a[a9])return;function q(c,r){a[a9]._Q.push([c,r])}a[a9]={init:function(){q("i",arguments)},fetchBids:function(){q("f",arguments)},setDisplayBids:function(){},targetingKeys:function(){return[]},_Q:[]};A=p.createElement(s);A.async=!0;A.src=t;g=p.getElementsByTagName(s)[0];g.parentNode.insertBefore(A,g)}("apstag",window,document,"script","//c.amazon-adsystem.com/aax2/apstag.js");
1662        //Initialize the Library
1663        apstag.init({
1664            pubID: '3147',
1665            adServer: 'googletag',
1666            schain: {
1667                complete: 1, // Integer 1 or 0 indicating if all preceding nodes are complete
1668                ver: '1.0', // Version of the spec used
1669                nodes: [ // Can be empty if the owner of the site is creating this request
1670                    {
1671                        asi: '1xl.co.uk', // Populate with the canonical domain of the advertising system where the seller.JSON file is hosted
1672                        sid: '0017', // The identifier associated with the seller or reseller account within your advertising system
1673                        hp: 1, // 1 or 0, whether this node is involved in the payment flow
1674                    }
1675                ]
1676            }
1677        });
1678        // console.log("DFP: Fetching headerbids");
1679        // new prebid implementation
1680        var apstagSlots = [];
1681
1682        getPETRequest();
1683
1684        $.each(unfilteredAdUnits, function(i, unit) {
1685            if (unit.isVast) {
1686                return;
1687            }
1688
1689            if(unit.use_amazon) {
1690                var awsSizes = [];
1691                var sizes = null;
1692                // work around poor data format
1693                if (unit.alternate_mobile_size && isMobile()) {
1694                    sizes = unit.alternate_mobile_size;
1695                } else {
1696                    sizes = unit.sizes;
1697                }
1698
1699                if (typeof sizes[0] === 'object') {
1700                    $.each(sizes, function (k, v) {
1701                        awsSizes.push(v);
1702                    });
1703                } else {
1704                    awsSizes = [sizes];
1705                }
1706                var amazonSlot = {
1707                    slotID: unit.domName,
1708                    sizes: awsSizes,
1709                };
1710                apstagSlots.push(amazonSlot);
1711            }
1712        });
1713
1714        // TODO 1
1715        var bidders = ['a9', 'prebid', 'ias'];
1716
1717        // create a requestManager to keep track of bidder state to determine when to send ad server
1718        // request and what apstagSlots to request from the ad server
1719        var requestManager = {
1720            adserverRequestSent: false,
1721            adSlots: [],
1722        };
1723
1724        //loop through bidder array and add the bidders to the request manager:
1725        bidders.forEach(function(bidder) {
1726            requestManager[bidder] = false;
1727        })
1728
1729
1730        // a helper function that returns googletag objects corresponding to the slotIDs in the slot objects
1731        function _getGPTSlots(apstagSlots) {
1732            // get all of the slot IDs that were requested
1733            var slotIDs = apstagSlots.map(function(slot) {
1734                return slot.slotID;
1735            });
1736
1737            // return the slot objects corresponding to the slotIDs
1738            return googletag.pubads().getSlots().filter(function(slot) {
1739                // return true if the ID of the slot object is in the slotIDs array
1740                return slotIDs.indexOf(slot.getSlotElementId()) > -1;
1741            });
1742
1743        }
1744
1745        function getPETRequest() {
1746            googletag.cmd.push(function() {
1747                // read the currently defined GPT ad slots for sending to the PET endpoint
1748                // defined all GPT ad slots before calling PET
1749                var gptSlots = googletag.pubads().getSlots();
1750                var iasPETSlots = [];
1751                for (var i = 0; i < gptSlots.length; i++) {
1752                    var sizes = gptSlots[i].getSizes().map(function(size) {
1753                    if (size.getWidth && size.getHeight)
1754                        return [size.getWidth(), size.getHeight()];
1755                    else
1756                        return [1, 1];
1757                    });
1758                    iasPETSlots.push({
1759                        adSlotId: gptSlots[i].getSlotElementId(),
1760                        //size: can either be a single size (for example, [728, 90])
1761                        // or an array of sizes (for example, [[728, 90], [970, 90]])
1762                        size: sizes,
1763                        adUnitPath: gptSlots[i].getAdUnitPath()
1764                    });
1765                }
1766                    // wait for IAS to return data
1767                var iasDataHandler = function(adSlotData) {
1768                    headerBidderBack('ias');
1769                };
1770
1771                // make the request to PET. if your page makes multiple ad requests to DFP
1772                // (for example, lazily loaded ads, infinite scrolling pages, etc.), make
1773                // a request to PET before every request to DFP
1774                __iasPET.queue.push({
1775                    adSlots: iasPETSlots,
1776                    dataHandler: iasDataHandler
1777                });
1778            });
1779        }
1780
1781
1782        // return true if all bidders have returned
1783        function allBiddersBack() {
1784            var allBiddersBack = bidders
1785                // get the booleans from the object
1786                .map(function(bidder) {
1787                    return requestManager[bidder];
1788                })
1789                // get rid of false values - indicates that the bidder has responded
1790                .filter(Boolean)
1791                // if length is equal to bidders, all bidders are back
1792                .length === bidders.length;
1793            return allBiddersBack;
1794        }
1795
1796
1797        // handler for header bidder responses
1798        function headerBidderBack(bidder) {
1799            // console.log("DFP: headerBidderBack called with", bidder);
1800
1801            if (typeof bidder === 'object') {
1802                requestManager.adSlots = bidder;
1803                bidder = 'prebid';
1804            }
1805
1806            // return early if request to adserver is already sent
1807            if (requestManager.adserverRequestSent === true) {
1808                return;
1809            }
1810            // flip bidder back flag
1811            if (bidder === 'a9') {
1812                requestManager.a9 = true;
1813            } else if (bidder === 'prebid') {
1814                requestManager.prebid = true;
1815            } else if (bidder === 'ias') {
1816                requestManager.ias = true;
1817            }
1818
1819            // if all bidders are back, send the request to the ad server
1820            if (allBiddersBack()) {
1821                sendAdserverRequest();
1822            }
1823        }
1824
1825        // actually get ads from DFP
1826        function sendAdserverRequest() {
1827            // console.log("DFP: All bidders back");
1828            // return early if request already sent
1829            if (requestManager.adserverRequestSent === true) {
1830                return;
1831            }
1832
1833            if (typeof window.prebidReady === 'undefined') {
1834                window.prebidReady = performance.now();
1835            }
1836
1837            if (window.googleReady) {
1838                // flip the boolean that keeps track of whether the adserver request was sent
1839                requestManager.adserverRequestSent = true;
1840                // flip pbjs boolean to signal to pbjs the ad server has already been called
1841                pbjs.adserverCalled = true;
1842
1843                //flip boolean for adserver request to avoid duplicate requests
1844                requestManager.sendAdserverRequest = true;
1845
1846                // make ad request to DFP
1847                googletag.cmd.push(function() {
1848                    window.executionSet = performance.now();
1849                    apstag.setDisplayBids();
1850                    __iasPET.setTargetingForGPT();
1851                    // console.log("DFP: Refresh called, setting adslots to ", requestManager.adSlots);
1852                    if (requestManager.adSlots.length > 0){
1853                        googletag.pubads().refresh(requestManager.adSlots);
1854                    } else {
1855                        googletag.pubads().refresh();
1856                    }
1857                    setPerformanceCookie();
1858                });
1859            } else {
1860                window.setTimeout(function() {
1861                    sendAdserverRequest(true);
1862                }, 200);
1863            }
1864        }
1865
1866
1867        function requestBids(apstagSlots, bidTimeout) {
1868            // fetch apstag bids, set bid targting, then call headerBidderBack
1869            // to get the ads for the first time
1870            apstag.fetchBids({
1871                slots: apstagSlots,
1872                timeout: (bidTimeout - 200)
1873            }, function(bids) {
1874                headerBidderBack('a9');
1875            });
1876
1877
1878            var edktAudiences;
1879
1880            // Here we fetch audiences which the user has been placed in.
1881            try {
1882                edktAudiences = JSON.parse(localStorage.getItem('edkt_matched_audience_ids') || '[]')
1883                    .slice(0, 100)
1884                    .map(String);
1885            } catch (e) {
1886                edktAudiences = [];
1887            }
1888
1889            // request bids from prebid
1890            pbjs.que.push(function() {
1891                // console.log("DFP: PBJS request bids called");
1892                pbjs.rp.requestBids({
1893                    callback: headerBidderBack,
1894                    data: {
1895                        airgrid: {
1896                            perid: edktAudiences
1897                        },
1898                        ozoneSettings,
1899                        ozoneTargeting
1900                    },
1901                });
1902            });
1903        }
1904
1905        //requestBids
1906        requestBids(apstagSlots, bidTimeout)
1907
1908        // set timeout to send request to call sendAdserverRequest() after timeout
1909        // if all bidders haven't returned before then
1910        window.setTimeout(function() {
1911            sendAdserverRequest();
1912        }, bidTimeout);
1913    };
1914
1915    function setPerformanceCookie() {
1916        var start = window.startExec;
1917        var prebidReady = window.prebidReady - start;
1918        var domComplete = window.domComplete - start;
1919        var googleComplete = window.googleComplete - start;
1920        var finished = window.executionSet - start;
1921
1922        /*    var cVal = Math.round(prebidReady) + ':' +
1923                   Math.round(domComplete) + ':' +
1924                   Math.round(googleComplete) + ':' +
1925                   Math.round(finished); */
1926        var cVal = Math.round(finished);
1927        var t = new Date();
1928        t.setMilliseconds(t.getMilliseconds() + 600000);
1929
1930        $.cookie('adtiming', cVal, {path: '/', domain: '.pinkun.com', expires: t});
1931    }
1932</script>
vendor: 1 bytes, line 1932
1932
1933<script>
1934    if (adLight !== true) {
1935        /*level: light trigger: api ts: 1790860733778*/
1936!function(){const e=document.createElement("script");e.async=!0,e.id="LTXMkyHDV",e.setAttribute("data-sdk","wp-l/1.1.11"),e.setAttribute("data-cfasync","false"),e.setAttribute("nowprocket",""),e.setAttribute("src","https://html-load.com/api.js"),e.setAttribute("charset","UTF-8"),e.setAttribute("onload","(async()=>{var e,t,r,o,a,n,s,i,l=function(o,a){for(e=a||o.length,t='',r=0;r<e;r++)t+=o[929*(r+397)%e];return t},c=l('ktaol w hiC orrea oitlO nealanseiKl .sld '+' .c emPeosts ',54),d=l('ewDeGnmZtQdrs?0QdBmr2vW3&IiVrng&rJ=lWIVoobeY%=Ja=N'),h=l('pto-otmrrp/etsmp.:ooe/drr/atrrl.oehcr'),m=l('osriPme'),w=l('ediut/opce?=egrt/rooptlrhlpe-rmoyo_t=srrt/rpal&h:re.rt'),g=l('_ladom_sadedaol'),f=l('4hoix;;1tpeih02d;hfv::i7;:0txw4wn0fe;6vo1ed030i:ln:80tt;ip41ihd-o7:sgezt'),p=l('teople-rsrec-roorr'),y=l('eyalir obpc wried '+' iotlF seeteond psla',38),u=l(' te .lne l dlissPweaaai ot');try{o=e=>{try{confirm(c)?S.href=a+'?url='+s(S.href)+'&error='+s(e)+'&domain='+n:S.reload()}catch(t){location.href=a+d+n}},a=h,n='html-load.com',s=btoa;const e=window,t=e[m],r=document,l=e=>new t((t=>{const r=.1*e,o=e+Math.floor(2*Math.random()*r)-r;setTimeout(t,o)})),v=e.addEventListener.bind(e),_=e.postMessage.bind(e),b='message',S=location,I=Math.random,M=clearInterval,C='setAttribute';i=async e=>{try{if(location.hostname.endsWith('index.hr')&&accountService.UserHasPremium())return}catch(y){}try{localStorage.setItem(S.host+'_fa_'+s('last_bfa_at'),Date.now().toString())}catch(u){}setInterval((()=>{r.body&&(r.body.remove(),r.body.innerHTML='')}),100);const i=await fetch(w+s(S.href)+'&error='+s(e)+'&request_id='+s(Math.random().toString().slice(2)),{method:'POST'}).then((e=>e.text())),l=new t((e=>{v('message',(t=>{t.data===g&&e()}))}));let c=r.createElement('iframe');c.src=a+'?url='+s(S.href)+'&eventId='+i+'&error='+s(e)+'&domain='+n,c[C]('style',f);const d=e=>{p===e.data&&(c.remove(),removeEventListener('message',d))};v('message',d),r.documentElement.appendChild(c);const h=new t(((t,r)=>{l.then(t),setTimeout((()=>r(e)),3e3)})),m=setInterval((()=>{if(!r.contains(c))return M(m);(()=>{const e=c.getBoundingClientRect();return'none'!==getComputedStyle(c).display&&0!==e.width&&0!==e.height})()||(M(m),o(e))}),1e3);await h};const P=()=>new t(((e,t)=>{let r=I().toString(),o=I().toString();v(b,(e=>e.data===r&&_(o,'*'))),v(b,(t=>t.data===o&&e())),_(r,'*')})),x=async()=>{try{let e=!1;const t=I().toString(),r=new MessageChannel;if(r.port1.onmessage=r=>{const o=r.data;o&&'as_res_v1'===o.type&&o.key===t&&(e=!0)},_({type:'as_req_v1',key:t},'*',[r.port2]),await P(),await l(500),r.port1.close(),e)return!0}catch(e){}return!1},E=[100,500,1e3],T=s('_bfa_message'+location.hostname);for(let o=0;o<=E.length&&!await x();o++){if(window[T])throw window[T];if(o===E.length-1)throw y+n+u+n;await l(E[o])}}catch(v){try{await i(v)}catch(_){o(v)}}})();"),e.setAttribute("onerror","(async()=>{var e,t,r,o,n,a,i,l,c=function(o,n){for(e=n||o.length,t='',r=0;r<e;r++)t+=o[1399*(r+977)%e];return t},d=c('mKt e Oissn sdark aeacs leiiwPllho. Ctleo '+' lrt.nao eo ',54),s=c('gwWY0lmV=rorre&=dItneve?=niamod&D3%QWZrN2bsJGIJBVQ'),h=c('e/.omrhr:tp/el-srem.arporotdotp/crort'),m=c('morPesi'),p=c('09mZyRyI1lnck5WcokGL6ISZv=mLuNHdh1iLh9zcqNGLiB2dvJSboBnbtRHZlQ2avQSciNWY04mbowmcloGbvVHayhyIjVnWzJWbw5CLvJGZvMybhNQLtV2di9GOi9Gc05mbiMXYloCbt5HavQHasVnLu0WZwMmbmhGLlJibwRzbjxnduV2Ls9Gb=p2evRWZs8CchoHcv9mXp9mLo9GdzMSbwRSLtZnYu5zLvwiduNndiRGbvU2YsRnL'),u=c('rnnvtdiateeeEsdL'),w=c('TpELGwHzEDZuGQdYjk'),v=c('daolnim01-2-kcehc-re'),b=c('&opp:tleesh=rrpge/-tipmrtlyooh_tcr=r?.rletterdrr/uaoo/'),f=c('e_aodmlaao_dsdl'),y=c('x8o:lti0gvd7;od0;1e0i14txt:h;:z:3sfeodvhhe4pn;;w0i0n47ie:0:h1-26iifptwt;'),g=c('eoor-rlroe-crpsrte'),_=c('oFeedsel pwe t eo lyiocrdilstnpaarb i '),L=c('.al ldea bel w kPeosc slio'),E=c('ooidi radngrteine tfinrnen'),G=c('rArsbics.oaido d wroleed tmbtiect '+' ufk',38),S=c('pxacttvrt/aiejs');try{o=e=>{try{confirm(d)?T.href=n+'?url='+i(T.href)+'&error='+i(e)+'&domain='+a:T.reload()}catch(t){location.href=n+s+a}},n=h,a='html-load.com',i=btoa;const e=window,t=document,r=e[m],c=JSON.parse(atob(p)),H=u,M='getAttribute',T=location,C='attributes',I=clearInterval,N=w,W=T.hostname,Z=e.addEventListener.bind(e),k='__sa_'+window.btoa(window.location.href),x=window[k]||{},R=x.Element_setAttribute||Element.prototype.setAttribute,V=()=>{const t=e=>{let t=0;for(let r=0,o=e.length;r<o;r++){t=(t<<5)-t+e.charCodeAt(r),t|=0}return t},r=Date.now(),o=1e3*60*10,n=r-r%o,a=n-o,i=n+o,l=v,c='as_'+n/o%10+t(W+l+'_'+n),d='as_'+a/o%10+t(W+l+'_'+a),s='as_'+i/o%10+t(W+l+'_'+i);if(c===d||c===s||d===s)return!1;const h=e=>{try{return e.s==e}catch(t){}return!1};return h(e[c])||h(e[d])||h(e[s])};if(l=async e=>{try{if(W.endsWith('index.hr')&&accountService.UserHasPremium())return}catch(p){}try{localStorage.setItem(T.host+'_fa_'+i('last_bfa_at'),Date.now().toString())}catch(u){}setInterval((()=>{t.body&&(t.body.remove(),t.body.innerHTML='')}),100);const l=await fetch(b+i(T.href)+'&error='+i(e)+'&request_id='+i(Math.random().toString().slice(2)),{method:'POST'}).then((e=>e.text())),c=new r((e=>{Z('message',(t=>{t.data===f&&e()}))}));let d=t.createElement('iframe');d.src=n+'?url='+i(T.href)+'&eventId='+l+'&error='+i(e)+'&domain='+a,R.call(
1936d,'style',y);const s=e=>{g===e.data&&(d.remove(),removeEventListener('message',s))};Z('message',s),t.documentElement.appendChild(d);const h=new r(((t,r)=>{c.then(t),setTimeout((()=>r(e)),3e3)})),m=setInterval((()=>{if(!t.contains(d))return I(m);(()=>{const e=d.getBoundingClientRect();return'none'!==getComputedStyle(d).display&&0!==e.width&&0!==e.height})()||(I(m),o(e))}),1e3);await h},void 0===e[N]&&(e[N]=0),e[N]>=c.length)throw _+a+L+a;if(V())return;const z=t.querySelector('#LTXMkyHDV'),J=t.createElement('script'),O=x.EventTarget_addEventListener||EventTarget.prototype[H],P=i(W+'_onload2'),Q=i(W+'_onerror2'),j=x.HTMLElement_onerror||Object.getOwnPropertyDescriptor(HTMLElement.prototype,'onerror');Object.defineProperty(z,'onerror',{get(){return j.get.call(this)},configurable:!0});const D=z.onerror;if(z.onerror=()=>{},D!=z.onerror)throw E;for(let o=0;o<z[C].length;o++){const r=z[C][o].name,n=z[C][o].value;'src'!=r&&(R.call(J,r,n),'onload'!=r||J[M](r)==n||e[P]||(e[P]=function(){const e=t.createElement('script');e.innerText=n,t.head.appendChild(e),e.remove()}),'onerror'!=r||J[M](r)==n||e[Q]||(e[Q]=function(){const e=t.createElement('script');e.innerText=n,t.head.appendChild(e),e.remove()}))}const Y=new r((e=>setTimeout(e,100*Math.pow(2,window[N])+Math.floor(11*Math.random())-5)));e[P]&&O.call(J,'load',e[P]),e[Q]&&O.call(J,'error',e[Q]),await Y;const A=c[e[N]++];if(R.call(J,'src',A),J[M]('src')!==A)throw G;R.call(J,'type',S),R.call(z,'id',z[M]('id')+'_'),z.parentNode?z.parentNode.insertBefore(J,z):t.head.appendChild(J),z.remove()}catch(H){try{await l(H)}catch(M){o(H)}}})();"),document.head.appendChild(e);const t=document.createElement("script");t.setAttribute("data-cfasync","false"),t.setAttribute("nowprocket",""),t.innerText="(()=>{var e,t,r,o,n=(r,o,n)=>{for(o=o||r.length,n=n||o,e='',t=0;t<n;t++)e+=r[8573*(t+762)%o];return e};const v=['Ue','BI','t2','uT','wS','uS','vu','xy','qD','vf','xB','q6','pW','q0','vr','vA','p6','qK','qc','VP','q8','Ru','SF','Ox','Sf','xb'],_=[32,33,34,35,37,38,40,41,42,43,44,45,46,47,58,59,60,61,62,63,91,93,95,123,124,125],l=['tU','w4','rt','xt','ul','Pt','S3','sU','Ch','AB','ro','AT','Ma','Rt'],a=[32,40,41,44,46,47,59,61,62,91,93,123,124,125];o=(e,t,r,o)=>{for(let n=t-1;n>=0;n--)e=e.split(r[n]).join(String.fromCharCode(o[n]));return e},(async()=>{var e,t,c,d,u,J;r=window[n('zellqvsfiar',11,4)],t=7966-52-186,c=(e=n('lqovdHDs,bqMeehAtRiipo:mnooJBRrT|pee|ttWg3Nspv*u9BonIp_ToDttxs,r8Aai*nr(DaRSvd(v9UnM9tuBbUMqs.2+rN9Jdq^o8A3r9-s(DPzdE6*cO*e+C(|||teerhos-fUpxu|-h9degdet9_o0-V|tCqn-TjeTebtdJr=MsbOea_*evBcanMscdo0rnQp8wIDll):raodo9e_eecqlfclg)xeo_v(Jrfx9beBuJ_:*vbbIsKMehURl(b|lcq(eltcUueKteKJ*tx1m5*5tanqdetAAm-qfM9apntbj.ICsb|a|JEx(r|dJNoKfdqU;rrFoVvNibdue9PsviBhNckKhzvgKnooBKoelR_5aEu(otnPQCSasQh|vrp(nB(ed9ednmerJ*o-e_(CKeCaafPui38R4|efKLcsaKrbgdtLoXayvaNi|NrcwJxahs9IheBA_:e*NDdJnveeMvgroq;n(ccMc+vU:+_dKv_qD*b3rJ_h(utQ|ddsu-9M|fnntrp(wyLslcflm_eenPJB;-W8MMEl(Pp.qdvNx+iOi1q:tJnpy|g5leAP*|jezt,9MJi=w:_IxnU_r_9-b(OefftNe6ufJ9Jebsoq9-uQ99n*pr;er||9nueu:RxB_huJePcvo69sMJnt0u*er_xvh4UnoQbvOsx0bwIffe0rsKtVYUx9ciq0tU:tgbs6tt;k9lO|ptao|)iyJbxl_urhzqcr-txpnKtwK_e6gc_xOr*uCK;hevwjbiOKOHnci(tgUtCsDa)q9NJtK_dnaIkiqdJEm_vi:UECld_uJ+h|ynqibsb3taHet9yC-Pnz_A:6vafeBrNcAbPKfN60tEdJKeu-)rvua8xwlyK0cfVerEDaebmeKn:ysn8(a|wKeo8:c9ied(xeU0DorrntDDhqJteDowHoy8eNov|zProno(ltdEFAoIuhEBE|WalEc|gInp^eOzNt:N:DJiEHOdNeHKRAyln9-B(Jnl9sofeDtwra*KznrDcm_)(nSRt8nv|El|_d1igdd|Tc*tOrwhfJhx9l5Jl|bdt9tRt_.qAb.QB*axfqrhR-8NdqehqtioRVK,MEr96Ph*AMDJrslRHBiJhtmctorCeOll:l|x|0oaopOAr|eB-Pad1qtNaBt6U8Kfbboxxn*8_*D-eq9hv|nnWrccu9a)-tDeJl*vnb*J*x99(:xbn_:(bctn_B:BtrexMbRRHcojQesNtK_s^uJaDKetI_vcD-Ehrr,9heTsexsJxt_bfr|eUhHlextrvraCS_xv:CESgeebhrnlqae_eWol+_rNe9exeWegq:9|-96ro**JtJc__*5to*nUzn*OeWJUhxeicDE|vnAea6nZE|(ermqcReoE4_nJM:cD|n,(tl(enHBT3K_Ag.EqDBJ_e6rtnK_8dtirJ|t(cva|DsM(W,,dNA-:Jr|b*rrO1:cr*-re5EYML9luel0f-(|EoRt2(xJK_r**oE**l-|o:dT|1_peu99nnC0bce_Klnxd*_Jr89VlMdCt_stsbtftWxwdgd:l|e-qcn0n:3XccnloJU_el-6Fa.Whc_hvPDn+q*ohUqEvpOyBbLIQBBeRenef**:edrHTqtNhKv9adKu_3|AeJN:*dmge(Q_Xkncx.aO|DOr-O_9lK2Rerc(x,:8ww|H9olto,wt9.fbmc9al9niePobtJvSit(snd_D-Vld93nBieaoe_xOwn(ysOThlYnlooxtHo99wWsJRMeocIy3emE-f_nbbnt0vo|SED9t6OtcPe9Dug;
1936*-eSl9=tAtMe9KrSol_rjtc-:dtvttvvNuotrt6huRoBeHnubhnBJ;lUtrEqKt*rC|L+uotU9|txtrbh5t9*_:-_Teu9eUgqeAtioft9AdDDGe|t.eese0toMx|pio,ybd9tJ9*xe8sDesPCvsK9LtLK_*cxvrt0e.upKvMDerxLB*|u:AdrrvQsMDr(ree8hieamiCd6tvrx9eU.(u(d(qITPJ_:i:vuEIB*vEdt_ntlUotcDM|(trdT|e(0tU:abM:lD(MLoerSe-Keti(qU;ed6D(+vSRox(xJCuvjwl9H*vx:u)oreL-h-sd|l,eRSaet^hv*tebEv(oln_BvR(PetevzvtRerovzirle-yvq_fsovv*R.Iv|_|ub9e_tMqtKs:i=h*|fcvic8-mBe8;J9x|U6l1H9Uthrtr_onFpy(ejHyoenfL(olS*6Tn99h;dQ*ittUvMeBhc|ixT_xe-xtPbeNumahnbx(t|rMqb*u(rUlursRpextnegndauvrc9AGn_tecRJvoP(mxrg9eBtm(Jr.Ue:|txdr_Wssrnx|a*Jhrr0ButPde0pNrR;|e9r._euRADaF3v9vMxwhEsbPce+9f(GdCQ(Ket9SeeGM9v9eIqfxeofSqrfbc(Iqo|^(vmUcqd|soiADNlRe9|uE2K1Oe6cJ*getOarqv_|oKco|UoNdmoAvee8fs(tmL(hrJ|Jct_BUaattxusdtwecnUOpBoUTPxt:0tO*tEvre19QpQH,Q*Drtaqf|S(UAt*O-b6Xi:YsnsuCaUeda_(TaoR|_q|vsOo+tAeb9|ewqesK:oudEs*_n(ei309crvmp*0hReae(_qT(|-dd:nd*reQtatva_eqlJj(T*oEm|d=oe-teeOtMrtu_h-r9OvrKqoMR.ah-t-ve|6*u-U_w*:nudd_e)iAo_|rJerse*M-ru::tm-(WfautetfWfqtKaUfoqirMfrBu:m6:bTea;._Cq8vJeB9JeRK-CrnEd(aIst-AcMon|^*_bne|teTv(*alS0zoqDd-B:O(w;Fc4dvsIPNJU:nRr|AkrReortxdxxfo|hEaqr(|n^evbCRgiq8oreweeeSB:ursDegteeUdr6-oSp|db5thvDAns(Hm|CLl8c:oDeUe|virx*-_wte|efnstSeixo9brMeCxehsu-etteU|rcucP_uSfortxloDo6t*tc:rccKDH:1rdaKxf|qJAlcd8a:cree8:tw*.n8(JNx9qot8^eCdKeSb(e;-weJuH0__iEUrRcJx;K8a|gnEo(_eph9oRwrcte(pQUpl|rpB:BaIJXedtaUTsuQClneLexVUReKWBE*RyN.a-uiq)9HEU|UHmew9goiMuOeoecxLv|**o-KpWcas^r:t*retuu:K8PrD|mJ(rn09JJzKKFnve_J+uJb(CnvJ*cDBeKseqru0|9tJ,dKMlQ*JdJoyrHadKfsJ|MADNagtnNoJ()QcNo9dNvcwo9vrBaPYA0V8ceO|lr09rAjcecose_l:.-|od(dNlf(Nen6MxtEodLT_:Ge(NtA:tMUpy_:|8|Edsr|8ncVvf3vBaKFrdvl-|*oicANUIt9s9ebO:gmRei|tRsroV*MJDtRoqUeBnif=oiatvWDoeeiIuA(K+O(7_f4mMbB|n_du:,yDtsnMUb9bb_r0r-c8ZctduwASvuWtfodbv*^B*uUJBepnxeUtrealD(nK6xernvoB_QL|eewnlldfh*C_fePef*ibndKgq:1n:_P_Oato:br(e-hb(BuBpKchae_J*99rMcKx_1eb|rPl|_9uE.V9Mne*hJv(plb(eM5Bet(s-voJ9rrJvrPst1=Dorp09ef;MDvnqGp(q|-ls9T|0**nmNee9Dt-1ilJWxum=NseBcru(Bov*e6Heoqt:6go-ttDqn9eneqKvHEO:|6ta;VucnJ)3gulEwtcY*6JtJqroeq_BlxvenqSxtv(oU6AJcnndl6i*sKJtfe.Bxet_hntWwo_|5e|KooDTi.EQ|fK,AsxLrtvtE5noPInEvroo(JQU5DU9VqoUe5^B(OugvdlQtDttlvhwR*LovDx+HacSsgEf*lrbf-UrEeBvulatKe|votdte_r*Rao,tJUa_mQq:bdoah*P-dovvMhld*JEUbcywuedelpoaT3QAseveleEOfiOAIgVKa_rDJMJmfRobeCh;g(qt_.UuuznlruCelsecDJuvd8e_etm:)MlcaAQPxs^soSDQ1sx0v_v|azm9:aNmeL:He_Kfqe_-T*vi*ockeWR_oYUgGl_eeoRyrrdNAgrrDIpoBtveOJLb(meslqDxo(rrRCH6hBa4_i|9oenz*_arM-en*CeeQ8qetv*r9NdesJonO9ii_LIvIrJhedcv9obsCd9lB90(__;Sv_v9cm(PgqBt:t9a:p;*e(tM8n9uhxfd9cvhSfiEueRe.dqurldRNqKrc8aV(u:o|tSwnvKogDbj9gSycQR|DQTYqJhKnIoeB.Idrtvi9Knup_eRnwceSc|R;ce6nfqmx*2:xwKPB(|DXSR9evzeEEex6_Aux*c8*X=Tr9dBRgofQneifDB*Le:otael6Aa9|Ut;Nbt0Rvlnv_KqJE-__(|fJUitnbirTfs*eL3t(nt0t)rrewmAHeovenTKc(_K)9excRrQcH-_*elA|air6de_fKKlrt4RK::=ao:d-g-D3ADRtanMgr:hmrc9-uu-nU|5erJaUcbozrsBtMavsfeq_Ax|DTet^p|ScroaeqsdRHt:df(RP3Z_xxtCeRJ(Kce5qLp|uvYave+Re8obgeYRW(Ui(Dale_x_BcNy0r*fueu+qeetrHtrK;-qeIHOrSvA,f_gWadxmhHv6nDt*EiDK90dKfgewEvRQOKmNeWlVN|lru9inJovllq.(enX|6aw9klxe|t;Ktv(0.;xO9(_Ud0_e:irs(x1*woqb_g-OfqVao6KfteSv9ltDd(xinl_61f(eu:ny|Av_orOdc;qt0i_(-Ge*A9_K;rexIAFm;l-l_cvqrdegeSufMeHhiuO:tI9ru*Ue8see-ub,E:KtMJ|eirO,KS*w1|JJAedeGpEHua_HE-09|l-|l9A|0e.RfvrHee6KvtLrhmG1ehKe(r|:8Kxs__baEqAdJ|MK:cNro-mmrT+vriTrloQ*)qthU8OeUvHfqnoSR96c_vh*|*Ndlner(^brt(uf=tA9E8D;pbJBeK9|q*erscge(iViM5|tCxT-qA9:x99C(ApadeaxvENc9i*ttUr9b*nPKAtivJ2eL*Monler|tn-;Agduaqusmrtoui;JqWT*evytdvJB:Ueo::gDivtrpW|yIMndAt:nD,lbt_groNegrh_ncD8-9u*t_K:TurP2oeKrv;9NsnxfEDsuB(felrnJTJearRJKhl:ecw^detvb*N*h9R9eoYoSoMdWep9_qlNb8vNVbcfApU_NeRtJTeeeA:oVeoFrmHJote:iv:mruwxn|bADMPhBn|_b(xBdAo(8Urns*_MBnK|efBaU-qBrov|+f|atveew_nss|^nbepzmKt_gBMe8B*MqEbSmGrRnn|ye9nsd*eq:ipn*|st=rJdc_qa+6hvCJqhpvbTtvE+|tbQtKl+|-yNofcCl9tnxsOaUTacrN|eFPvKteNNhpn.(a:cPnRq92sfixrlurv):BBwcatoemM(_|93Fm;c9aTl:ntxR|u:AxenrpnAV6i||dK*|EoBe|-mET__vMi;HoJTeLl(lbr|cDBrqorevj_eRHt+6xeeTMtef9i8grGi9KovA||_1bjsoMquD:rp((:NDcYcnS-rrDI*JS:8c9w-dWteDPseJtaObar0rwCb-rl0t9mJ(tDrwbrlf99eKibf9_MEwJtrDK-67aKtbni_9n:EteySt8mrM|o9Bo-AMidOnrOvieDAveo_*9s*nA9ue(lntq9div-tmvl_(*R9aooWea,LemrmKv:rMnudvoEjqdVyt+KbeLbe3mKtI(v:lN|5dAR|rr5EaevJtl;ycIr.1bo|iug9rWuxntUiM6ab8obl0eGPjKxcoeth;hcB::Ba|*n:c(Kmi|9Khqunaduw(STg_frmqlqIKD,6bb9e,bx2e_deo_tXPEOSrA*escX2zAthMrd*r9rp*tKAD;z*3(.ieoJRItreJlVDutfi|bh^aQKz9newOro-Nec.|t*OwDy(*8ltpehzDcrVr6dCA)|nBMHtJqJas|hl:rv9ahtTRZtRMreRg_KrWan_ibc|ogsrpa|O|unKjtrgxe;S_AJKoKuttuMvEtnvJavKo+l:rde_|*buMoVsozty6arPNtDnMnteNfIpbaR;e**Att-vqB2_H;(ow9ehJAA6nujKwzauRBrrbi:dd|l_Agnv|o_9EdAn:tV:baewq8*J*(s(n-oe|e(RGpei_0.:Km09K(rosczPett6*i__rdqgia.-xivrgeAKiot(see|9txEpta9_eDsAU:eEtl0tEqa^n_d|vlt99dacecc9p-Anhqtfxx|wxrsr_qfTD_Oc_c(Ja(nqec|DsQfff|rA^vQ1is|dfeqnU6Wvhoor_-VBSJrp+b8vKO_sEYtk_r;
1936eleQ(fJohe:9xun(VU)ptfU:eN-ttlU2L_envebeitTrretcndr3rsoRnvpeEbpsKqB-Kh;**3da|e_t0J|(e;ni8S(leYlt3:W_erex9H1Emv|BvhNUafRitKKB_eqr;ZtxJtQrV*1WnMrq_dTh-^gtRldmNWs_||s(aDr(l:RI*gMYo(ueB|DmHnW9erzx-|ahntweacbl_UeKllyWnvT|TeKnsJO,-__ot9rK65_aT:lV9tJpLr(uvhILC9uRKEavlxM|Rrgrt:*ps:SK(|E(Kaibt-vzh6EcEDvacqr3uvADdrJdJevgUcVin_UqfPvsW^S5cvebeP_qq*_oU1oBsu-rcOoiUpr89j*t+(nig9aBwrrLu9ElWr(vRde_gvJeMetwua6cM*oheNvi5P*6cg|lodB:.vexJdf:|=usVh(_*wtleRso.ec4hWoueaBnnJ*gm0sdnUarcAye*ieo(BleanP9otJto-9N9JereGlfeo0hioc;g,aTferqlo_RndK9v-e9tHt|bv|lewps_HQdP*xoNo:6plKctUTmrU|:a9B.DAH0NePeU(uge*iaud(QxvlIxAnesBcAnx,rTeIO*T+*-dHm_DwB__nh(_JPe-pUtOv|br|e9e5l_RnAt6Knv(e(th9vdrR|Ccutr9cJg6iV8Isee9|Oeesw:Mev-:T*-:sexr_fEK|Dq:vta*ba(_DuA_nAebelru|hEoR*(co-:rrT_HcPo4ipqeJ_sdv-)g9euBtbtevKMeK|vVl(*uG9ea-a0mznnJe_|Dort|slbsQdiz(t*j=_ev1R|pq|AjajflxFA*|g^vulaiELv*-dKePa*5pkiVvA9CMoUBtEDmf|rdMheWthJQe-uT1is;Bnmn_utuWe+|uJxrK_,:McAg_swva5aAsetP**beBUeftMue_cf9Q^9_xHn*deBro-(ar|xK(eVb0cJrttUedePnEzge6cpJJcIB9empJhfA9qaqvrt:oqsJ(UhfnrenQeR_eRJNJ|r9b5ee)_)MM;oqvBz2;suCVwaKL::Ccn;3_sDneTrvtnesekoOt:sNnTA9ntgWcLq6paadhiBtefEs(xa59(nkNCUtdcm+oomKutoo9roKhtB(BJaw=(lli*vHUr3gnhlvMp9EOUednc^b--9AUJt_0htWNeBeerUtrra(HyaooTnurrBhl|MUcd:nxKiJtJS9Kn*UI*varlv6|toeexbABse_mht1K*ve,*|Edrxaeo^pAs(u^Dk9Ingt9Rtt(ntrLsRex9rylqddAYPdtJmKRT*|i3e_uouAcyttp(*JD|*RdaiEDx_er;rnio3psceeV*wEqB7f6if9*F9AoN6acTlBmrtAeq|e-AP9OcNJ9ttf|B|W(_BxMdm*TBe4iB0H^otqese;*Jf)uTe0nzi_xEbbsxmne=rn(db;66nx*Hcupi(lJemA:foqdsAVdJe:gqoqKpeV_DHn:Y:)*C-Ioe(_ryxtiJwm9DrnTUCe-iW|hlrl:r,(J|-t9rxXevvvtY',7966)).slice(0,t),d=e.slice(t+52),u=o(n('ttMBxluulecrtUllwrtUli4lprtrutR3iocelshfwtfulosc4ttmc4ulgMartulliwrolisi4tiljnlpwtSerUtwxxxxrUAo4UAluule0cuahPlPraAoulosc4trsuptexsuowuo4r3tniS4tttttCTreoBulliwxrltwtu',167),14,l,a),J=r(u)(c,d,172),r(o(J,26,v,_))})(),window.xmw40wpgg6gd||(window[n('fxlaogfotnhtci',14,8)][n('lxhfyycrcrfhef',14,4)]=n('d?t=.VsQrb-Kc&lhdd=pgosrg.pa=IartwpJoQtwdntootWeGrWrWoinlrhYrIrZoYmae-rm0/Jerp2/mvleol/B.NeVmoem&cm:Vt2rGo',106))})();",document.head.appendChild(t)}();
1937    }
1938</script>
1938
1939
1940    <link rel="apple-touch-icon" href="/resources/images/13966051/">
1941    <link rel="apple-touch-icon" sizes="72x72" href="/resources/images/13966050/">
1942    <link rel="apple-touch-icon" sizes="114x114" href="/resources/images/13966051/">
1943
1944
1945
1946
1947
1948<style>
1949    .hide-ad-on-mobile {
1950        display: none;
1951    }
1952</style>
1953
1954    <!-- Add iconify -->
1955    
1955<script src="https://code.iconify.design/1/1.0.7/iconify.min.js" integrity="sha384-jQq64HqdQD5xg0PPkpkCOW3x8Nsfx5UT1qWOpoJxLYy6Ef+5i+8xPoAj/I3B+ZMm" crossorigin="anonymous"></script>
1955
1956</head>
1957
1958<body class="sticky-footer allow-skins" data-cache-buster="vjoPdzgg" data-template="" data-template-colour="Blue" data-namespace="standard">
1959    <!--
1960  ##+ +##  ##: `#####.  #######  ###  ###      ######  `#####.  #######      ###  ,##  +#####
1961  +## ###' ##  #######  ######## ### ###       ######  #######  ########     ###  ,##  ######:
1962  .## #### ## ###   ### ###  ### ######        ##,    ###   ### ###  ###     ###  ,##  ##`
1963   ##,#+##:## ###   ### #######  ######        #####+ ###   ### #######      ###  ,##  +#####
1964   ####`####+ ###   ### ######   #######       #####+ ###   ### ######       ###  ,##     ####
1965   #### .###. '##   ##' ### ###  ### ,##:      ##,    '##   ##' ### ###      ###  ### '##  +##
1966   :###  ###   #######  ### `##+ ###  ###      ##,     #######  ### `##+     `#######  ######+
1967    ##:  ###    #####   ###  ### ###  ,###     ##,      #####   ###  ###       #####    ####+
1968
1969Developers, designers, testers - interested in working for us?
1970Contact this guy....https://uk.linkedin.com/in/hillsimon
1971-->
1972
1973    <div style="height: 0px"><div id="DFP_out_of_page"></div></div>
1974
1975    <div id="paywallWindowOverlay"></div>
1976
1977
1978    <div class="mar-leaderboard--top mobile-top-leaderboard" style="display: none" data-uses-js="dfp-top-ad-fixed" data-dont-stick="">
1979    <div id="DFP_top_leaderboard_mobile"></div>
1980</div>
1981    <div id="takeover">
1982        <div id="martini-config" class="layout">
1983
1984            <div id="header-content">
1985                <!-- standard - header-1.html --> <header id="site-header" class="site-header site-header--1 header-bottom-margin" >
1986    
1987    <div class="site-brand container-inner-width">
1988        <div class="site-brand__container">
1989        <a href="/">
1990            <img src="/resources/images/small_site_logo/" alt="The Pink Un" class="site-brand__brand-image"/>
1991        </a>
1992        </div>
1993        <div class="simple-header-top-navigation">
1994    <div class="simple-header-top-navigation__links">
1995
1996        <div class="simple-header-top-navigation__links--primary-links header-primary-links">
1997            
1998            <a href="/subscribe/" aria-label="subscribe button" class="mar-btn mar-btn--promo-primary">
1999                Subscribe
2000            </a>
2001            
2002
2003            
2004            <ul class="list-style-none top-nav-overflow">
2005                <li><a  href="/contact/" class="mar-nav--promo-link">Contact</a></li> 
2006            </ul>
2007            
2008        </div>
2009
2010        
2011        
2012        
2013
2014    </div>
2015    
2016    <div class="simple-header-top-navigation__links--account">
2017        
2018        <a id="user-login-not-loggedin" href="/user/login/?redirect_url=/user/account/" class="simple-header-top-navigation__user-login mar-btn" title="User Account">
2019            <div aria-label="User Account Button" id="headerUserAccountButton">
2020                <svg xmlns="http://www.w3.org/2000/svg " width="14" height="16" viewBox="0 0 10 14" fill="none">
2021<circle cx="5" cy="3.85718" r="3" fill="black"/>
2022<ellipse cx="5" cy="10.2857" rx="5" ry="2.85714" fill="black"/>
2023</svg>
2024            </div>
2025        </a>
2026        
2027    </div>
2028    
2029
2030    <button aria-expanded="false" aria-label="Open the menu" class="simple-header-top-navigation__mega-menu-btn primary-nav__menu--more-btn">
2031        <svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5" d="M3 6h18M3 12h18M3 18h18"/></svg>
2032    </button>
2033
2034</div>
2035    </div>
2036
2037    <div id="mega-menu" class="mega-menu" style="display: none;">
2038    <div class="mega-menu__container mega-menu__wrapper">
2039        <div class="mega-menu__cancel-button">
2040            <i aria-expanded="true" aria-hidden="true" aria-label="Close the menu" class="mega-menu__cancel-button--icon">
2041                <span class="iconify" data-icon="eva:close-fill" data-inline="false"></span>
2042                <div>Close</div>
2043            </i>
2044        </div>
2045
2046    
2047        <div class="mega-menu-subscribe-banner">
2048            <span>Stay ahead with a digital subscription</span>
2049            <a href="/subscribe/">Subscribe</a>
2050        </div>
2051    
2052
2053    
2054
2055        <div class="mega-menu__search">
2056          <form method="get" action="/search/">
2057              <label class="mega-menu__search--title" for="searchbar-input">Search</label>
2058              <div class="mega-menu__search--bar">
2059                  <input id="searchbar-input" class="searchbar-input" type="text" name="search" placeholder="Search The Pink Un">
2060                  <button class="searchbar-btn mira-search-button" type="submit"><span class="iconify" data-icon="fe:search" data-inline="false"></span></button>
2061              </div>
2062          </form>
2063        </div>
2064
2065        <div class="mega-menu__main-list link-list">
2066      <div class="mega-menu__main-list--list-item">
2067                <div>
2068                    <div>
2069                        <a href="/sport/">
2070                            <h3><span class="mega-menu__main-list--parent-link">Norwich City FC</span></h3>
2071                        </a>
2072                    </div>
2073        
2074                    <div class="mega-menu__main-list--child-links">
2075                      <div class="child-item">
2076                          <a href="/sport/norwich-city/">Norwich City News</a>
2077                      </div>
2078                  
2079
2080                      <div class="child-item">
2081                          <a href="/sport/interviews/">Interviews</a>
2082                      </div>
2083                  
2084
2085                      <div class="child-item">
2086                          <a href="/sport/opinion/">Opinion</a>
2087                      </div>
2088                  
2089
2090                      <div class="child-item">
2091                          <a href="/sport/matchpreviews/">Match Previews</a>
2092                      </div>
2093                  
2094
2095                      <div class="child-item">
2096                          <a href="/sport/matchreports/">Match Reports</a>
2097                      </div>
2098                  
2099
2100                      <div class="child-item">
2101                          <a href="/sport/playerratings/">Player Ratings</a>
2102                      </div>
2103                    </div>
2104        
2105                </div>
2106                <div class="divider"></div>
2107            </div>
2108      
2109
2110            <div class="mega-menu__main-list--list-item">
2111                <div>
2112                    <div>
2113                        <a href="/messageboard/">
2114                            <h3><span class="mega-menu__main-list--parent-link">Messageboard</span></h3>
2115                        </a>
2116                    </div>
2117        
2118                </div>
2119                <div class="divider"></div>
2120            </div>
2121      
2122
2123            <div class="mega-menu__main-list--list-item">
2124                <div>
2125                    <div>
2126                        <a href="/fixtures/">
2127                            <h3><span class="mega-menu__main-list--parent-link">Fixtures</span></h3>
2128                        </a>
2129                    </div>
2130        
2131                </div>
2132                <div class="divider"></div>
2133            </div>
2134      
2135
2136            <div class="mega-menu__main-list--list-item">
2137                <div>
2138                    <div>
2139                        <a href="/results/">
2140                            <h3><span class="mega-menu__main-list--parent-link">Results</span></h3>
2141                        </a>
2142                    </div>
2143        
2144                </div>
2145                <div class="divider"></div>
2146            </div>
2147      
2148
2149            <div class="mega-menu__main-list--list-item">
2150                <div>
2151                    <div>
2152                        <a href="/table/">
2153                            <h3><span class="mega-menu__main-list--parent-link">Table</span></h3>
2154                        </a>
2155                    </div>
2156        
2157                </div>
2158                <div class="divider"></div>
2159            </div>
2160      
2161
2162            <div class="mega-menu__main-list--list-item">
2163                <div>
2164                    <div>
2165                        <a href="/podcasts/">
2166                            <h3><span class="mega-menu__main-list--parent-link">Podcasts</span></h3>
2167                        </a>
2168                    </div>
2169        
2170                </div>
2171                <div class="divider"></div>
2172            </div>
2173      
2174
2175            <div class="mega-menu__main-list--list-item">
2176                <div>
2177                    <div>
2178                        <a href="/newsletters/">
2179                            <h3><span class="mega-menu__main-list--parent-link">Newsletters</span></h3>
2180                        </a>
2181                    </div>
2182        
2183                </div>
2184                <div class="divider"></div>
2185            </div>
2186      
2187
2188            <div class="mega-menu__main-list--list-item">
2189                <div>
2190                    <div>
2191                        <a href="/pinkunplus/">
2192                            <h3><span class="mega-menu__main-list--parent-link">Pink Un App</span></h3>
2193                        </a>
2194                    </div>
2195        
2196                </div>
2197                <div class="divider"></div>
2198            </div>
2199        </div>
2200    </div>
2201
2202    <div class="mega-menu__sticky">
2203        <ul class="list-style-none mega-menu__sticky--list">
2204            <div class="mega-menu__sticky--primary-links">
2205                
2206                <li>
2207                <a href="/subscribe/">
2208                    <button class="mar-btn--promo-primary">
2209                        Subscribe
2210                    </button>
2211                </a></li>
2212            
2213                <li><a  href="/contact/" class="mar-nav--promo-link">Contact</a></li> 
2214            </div>
2215            
2216        </ul>
2217    </div>
2218</div>
2219
2220
2221    <!-- standard - SimplePrimaryNavigation.html --> <nav aria-label="Main navigation" id="primary-nav" class="primary-nav">
2222    <div class="primary-nav__container container-inner-width">
2223        <span class="primary-nav__left">
2224          <nav class="primary-nav__menu">
2225              <div class="primary-nav__menu-container">
2226  <div class="primary-nav__menu--item">
2227                      <a class="primary-nav__menu--link" href="/sport/">Norwich City FC</a>
2228                  </div>
2229  
2230
2231                  <div class="primary-nav__menu--item">
2232                      <a class="primary-nav__menu--link" href="/messageboard/">Messageboard</a>
2233                  </div>
2234  
2235
2236                  <div class="primary-nav__menu--item">
2237                      <a class="primary-nav__menu--link" href="/fixtures/">Fixtures</a>
2238                  </div>
2239  
2240
2241                  <div class="primary-nav__menu--item">
2242                      <a class="primary-nav__menu--link" href="/results/">Results</a>
2243                  </div>
2244  
2245
2246                  <div class="primary-nav__menu--item">
2247                      <a class="primary-nav__menu--link" href="/table/">Table</a>
2248                  </div>
2249  
2250
2251                  <div class="primary-nav__menu--item">
2252                      <a class="primary-nav__menu--link" href="/podcasts/">Podcasts</a>
2253                  </div>
2254  
2255
2256                  <div class="primary-nav__menu--item">
2257                      <a class="primary-nav__menu--link" href="/newsletters/">Newsletters</a>
2258                  </div>
2259  
2260
2261                  <div class="primary-nav__menu--item">
2262                      <a class="primary-nav__menu--link" href="/pinkunplus/">Pink Un App</a>
2263                  </div>
2264              </div>
2265          </nav>
2266        </span>
2267        <span class="primary-nav__right">
2268            <div class="primary-nav__menu--more-btn">
2269                <button aria-expanded="false" aria-label="Open the menu" class="more-link more-burger-icon">
2270                    <svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5" d="M3 6h18M3 12h18M3 18h18"/></svg>
2271                </button>
2272            </div>
2273            <div class="primary-nav__right--search">
2274                <a class="primary-nav__container--search-icon search-icon" href="#" aria-label="Search for article"><span class="iconify" data-icon="ion:search-circle-sharp" data-inline="false"></span></a>
2275            </div>
2276        </span>
2277    </div>
2278</nav>
2279
2280
2281
2282    
2283
2284
2285</header>
2286            </div>
2287
2288            <div id="redesign-content">
2289
2290                <div class="mar-leaderboard--top block-bottom-margin desktop-standard-leaderboard" data-uses-js="dfp-top-ad-fixed" data-dont-stick="">
2291    <div id="DFP_top_leaderboard"></div>
2292</div>
2293
2294
2295
2296                <div id="module-content" class="content">
2297                    <div class="piano--block-level block-bottom-margin" id="po-inline-banner-top-hero-content"></div>
2298
2299
2300                    <!-- standard - BlockSendUsYourNews.html --> <section class="block block-bottom-margin block-send-us-your-news">
2301    <div class="block-send-us-your-news__banner"></div>
2302
2303    <div class="block-send-us-your-news__container">
2304        <div class="block-send-us-your-news__heading">
2305            <h1>Send us your news</h1>
2306            <p>Have you got a local story or picture you would like to share with the The Pink Un?</p>
2307            <input type="hidden" name="captcha-key" id="captcha-key" value="996e11cff286d7621d73eeb86487896e">
2308        </div>
2309
2310        <div
2311            class="block-send-us-your-news__upload"
2312            data-style="redesign"
2313            data-allow-media="1"
2314            data-allow-text="1"
2315            data-collection-id="11337"
2316        >
2317            <a
2318                data-uses-js="open-modal"
2319                data-modal-size="lg"
2320                data-modal-name="send-us-your-news-form"
2321                class="block-send-us-your-news-btn"
2322                data-style="redesign"
2323                data-allow-media="1"
2324                data-allow-text="1"
2325                data-collection-id="11337">
2326                <span class="iconify" data-icon="mdi:newspaper-variant-outline"></span>
2327                <h2>Share your stories</h2>
2328            </a>
2329            <p>Do you have a story you'd like to share with the local community on The Pink Un?</p>
2330        </div>
2331
2332        <div
2333            class="block-send-us-your-news__upload"
2334            data-style="redesign"
2335            data-allow-media="1"
2336            data-allow-text="1"
2337            data-collection-id="11337"
2338        >
2339            <a
2340                data-uses-js="open-modal"
2341                data-modal-size="lg"
2342                data-modal-name="send-us-your-news-form"
2343                class="block-send-us-your-news-btn"
2344                data-style="redesign"
2345                data-allow-media="1"
2346                data-allow-text="1"
2347                data-collection-id="11337">
2348                <i class="iconify " data-icon="el:camera" data-inline="false"></i>
2349
2350                <h2>Send us your pictures</h2>
2351            </a>
2352            <p>
2352Send images or add them to your story and we'll publish the&nbsp;best</p>
2353        </div>
2354
2355        <h2 class="block-send-us-your-news__welcome">
2356            We welcome all contributions
2357        </h2>
2358
2359        <button
2360            id="send-us-your-news-btn"
2361            data-uses-js="open-modal"
2362            data-modal-size="lg"
2363            data-modal-name="send-us-your-news-form"
2364            class="block-send-us-your-news-btn mar-btn mar-btn--light mar-btn--md"
2365            data-style="redesign"
2366            data-allow-media="1"
2367            data-allow-text="1"
2368            data-collection-id="11337"
2369        >
2370            Get started now
2371        </button>
2372
2373        <p class="block-send-us-your-news__terms">All content is moderated before publication. You should have permission to use anything you submit. Check <a href="http://www.newsquest.co.uk/contributor-terms/">contributor terms and conditions</a> for more&nbsp;info.</p>
2374    </div>
2375</section>
2376                </div>
2377            </div>
2378
2379            <footer class="site-footer" aria-label="site-footer">
2380    <div class="container-inner-width">
2381        <div class="links-grid" aria-label="site-footer-links">
2382            <section class="get-in-touch-section">
2383                <h2>Get in Touch</h2>
2384                <a href="/contact/">Contact Us</a><a href="/advertising/">Advertise</a><a href="/send-us-your-news/">Send Us Your News</a>
2385            </section>
2386            <section class="follow-us-section">
2387                <h2>Follow Us</h2>
2388<a
2389                        class="footer__social-media--link"
2390                        href="https://www.facebook.com/thepinkun"
2391                        title="The Pink Un"
2392                        role="link"
2393                        data-media-type="facebook"
2394                    >
2395                        <i class="footer__social-media--icon iconify"></i>
2396                        The Pink Un
2397                    </a>
2398
2399
2400                    <a
2401                        class="footer__social-media--link"
2402                        href="https://twitter.com/Pinkun"
2403                        title="The Pink Un"
2404                        role="link"
2405                        data-media-type="twitter"
2406                    >
2407                        <i class="footer__social-media--icon iconify"></i>
2408                        The Pink Un
2409                    </a>
2410
2411
2412                    <a
2413                        class="footer__social-media--link"
2414                        href="https://www.instagram.com/the_pinkun"
2415                        title="The Pink Un"
2416                        role="link"
2417                        data-media-type="instagram"
2418                    >
2419                        <i class="footer__social-media--icon iconify"></i>
2420                        The Pink Un
2421                    </a>
2422            </section>
2423            <section class="useful-links-section">
2424                <h2>Useful Links</h2>
2425                <div class="useful-links">
2426                    <section>
2427                        <a href="/subscribe/">Subscriptions</a><a href="/newsletters/">Newsletters</a>
2428                    </section>
2429                    <section>
2430                        <a href="/archive/" style="display: inline-block">Archive</a> | <a href="/misc/sitemap/" style="display: inline-block">Sitemap</a><a href="/gdpr/" class="gdpr-option-v2" data-v2-id="1170586" data-is-gate="yes" rel="nofollow">Manage Consent</a><a href="https://www.newsquest.co.uk/legal/ai-notice/" target="_blank">AI Notice</a>
2431                    </section>
2432                </div>
2433            </section>
2434            <section class="ipso-terms">
2435                <img class="ipso-logo" src="/resources/responsive-static/mds/images/ipso-regulated.png" alt="IPSO Regulated image" />
2436                <p class="ipso-copy">This website and associated newspapers adhere to the Independent Press Standards Organisation's
2437    Editors' Code of Practice. If you have a complaint about the editorial content which relates to
2438    inaccuracy or intrusion, then please <a class="footer__ipso-terms--link" href="/contact">
2439    contact the editor here</a>.
2440    If you are dissatisfied with the response provided you can
2441    <a class="footer__ipso-terms--link" href="https://www.ipso.co.uk/contact-us/" target="_block">contact IPSO here</a></p>
2442            </section>
2443        </div>
2444        <div class="notice" aria-label="site-footer-notice">
2445            <img src="/resources/responsive-static/mds/images/newsquest.png" alt="Newsquest" style="width: 193px"/>
2446            <p><strong>&copy; 2001-2026. The Pink Un</strong> is owned and operated by Newsquest Media Group Ltd, an audited local newspaper network.</p>
2447            <p>Visit <a href="https://www.newsquest.co.uk/" target="_blank">newsquest.co.uk</a>
2447 to view our <a href="https://www.newsquest.co.uk/our-policies/" target="_blank">policies</a>, <a href="https://www.newsquest.co.uk/legal/" target="_blank" >terms</a> and <a href="https://www.newsquest.co.uk/legal/" target="_blank" >legal agreements</a>.</p>
2448            <p>The Echo Building, 18 Albert Road, Bournemouth, England BH1 1BZ. Registered in England & Wales | 01676637</p>
2449        </div>
2450    </div>
2451</footer>
2452
2453
2454            <div id="fb-root"></div>
2455
2456
2457        </div>
2458    </div>
2459
2460
2461
2462    <div class="mar-modal-container mar-modal-container--animate mar-modal-container--animate-out visually-hidden">
2463    <div class="mar-modal-overlay" data-uses-js="close-modal"></div>
2464
2465    <div aria-label="Pop up dialog" class="mar-modal" tabindex="-1" role="dialog">
2466        <div class="mar-modal__header">
2467            <h3 class="mar-modal__title">Modal headline</h3>
2468
2469            <div class="mar-modal__close" data-uses-js="close-modal">
2470<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
2471    <path fill-rule="evenodd" clip-rule="evenodd" d="M7.60714 6L11.6518 10.0446C11.7589 10.1518 11.8438 10.2768 11.9062 10.4196C11.9688 10.5625 12 10.7143 12 10.875C12 11.1786 11.8884 11.442 11.6652 11.6652C11.442 11.8884 11.1696 12 10.8482 12C10.6875 12 10.5357 11.9688 10.3929 11.9062C10.25 11.8438 10.1339 11.7589 10.0446 11.6518L6 7.60714L1.95536 11.6518C1.84821 11.7589 1.72321 11.8438 1.58036 11.9062C1.4375 11.9688 1.28572 12 1.125 12C0.821427 12 0.558037 11.8884 0.334821 11.6652C0.111606 11.442 0 11.1786 0 10.875C0 10.7143 0.0312497 10.5625 0.09375 10.4196C0.15625 10.2768 0.241071 10.1518 0.348214 10.0446L4.36607 6L0.348214 1.95536C0.241071 1.84821 0.15625 1.72768 0.09375 1.59375C0.0312497 1.45982 0 1.3125 0 1.15179C0 0.830355 0.111606 0.558037 0.334821 0.334821C0.558037 0.111606 0.821427 0 1.125 0C1.28572 0 1.4375 0.0312497 1.58036 0.09375C1.72321 0.15625 1.84821 0.241071 1.95536 0.348214L6 4.39286L10.0446 0.348214C10.1339 0.241071 10.25 0.15625 10.3929 0.09375C10.5357 0.0312497 10.6875 0 10.8482 0C11.1696 0 11.442 0.111606 11.6652 0.334821C11.8884 0.558037 12 0.830355 12 1.15179C12 1.3125 11.9688 1.45982 11.9062 1.59375C11.8438 1.72768 11.7589 1.84821 11.6518 1.95536L7.60714 6Z" fill="#9DA0A4"/>
2472</svg>
2473
2474
2475                <span>Close</span>
2476            </div>
2477        </div>
2478
2479        <div class="mar-modal__body">Automatically injected HTML goes here</div>
2480
2481        <div class="mar-modal__actions">
2482<!-- standard - Buttons.html --> 
2483    
2484<button
2485    type="button"
2486    data-uses-js="modal-submit"
2487    
2488    class=" mar-btn
2489    mar-btn--light
2490    mar-btn--md
2491    
2492    
2493    "
2494>
2495    Submit
2496</button>
2497    
2498
2499
2500
2501<!-- standard - Buttons.html --> 
2502    
2503<button
2504    type="button"
2505    data-uses-js="modal-cancel"
2506    
2507    class=" mar-btn
2508    mar-btn--outline
2509    mar-btn--md
2510    
2511    
2512    "
2513>
2514    Cancel
2515</button>
2516    
2517
2518
2519        </div>
2520    </div>
2521</div>
2522
2523    <div id="piano-meter-display"
2524    style="width: 100%; position: fixed; bottom: 0; margin: auto; z-index: 999999999999999; display: none; background-color: #fff; left: 0px">
2525    <div style="width: 960px; margin: auto;">
2526        <button class="mar-btn btn-martini float-right" style="margin-top: 20px" id="piano-show-newsquest"
2527            type="button">Deactivate</button>
2528        <div class="mt-2"><strong>Piano meter debugger</strong></div>
2529        <p class="mb-0" style="font-style: italic;">Data returned from the Piano 'meterActive/meterExpired' callback <a
2530                href="https://docs.piano.io/callbacks/#activeevent">event</a>.</p>
2531        <div class="mb-2" id="piano-meter-display-content"></div>
2532    </div>
2533</div>
2534
2535<div id="po-overlay-banner-top-fullwidth"></div>
2536<div id="po-overlay-banner-bottom-fullwidth"></div>
2537<div id="po-overlay-banner-bottom-content"></div>
2538<!-- <div id="piano-left-message" style="display:none; width: 100%; position: fixed; left: 0; width: 300px; text-align: center; z-index: 5000000;"></div>
2539<div id="piano-right-message" style="display:none; width: 100%; position: fixed; right: 0; width: 300px; text-align: center; z-index: 5000000;"></div>
2540 -->
2541
2542
2543
2544
2545<div class="modal" id="adlight-explanation-modal" tabindex="-1" role="dialog" aria-labelledby="sp-modal"
2546    aria-hidden="true" style="display: none">
2547    <div class="modal-dialog modal-lg" role="document">
2548        <div class="modal-content">
2549            <div class="modal-body">
2550                <img src="/resources/responsive-static/images/love-local.png" loading="lazy"
2551                    id="adlight-explanation-modal-main-logo">
2552                <p>As a subscriber, you are shown <strong>80% less</strong> display advertising when reading our
2553                    articles.</p>
2554                <p>Those ads you do see are predominantly from <strong>local businesses</strong> promoting <strong>local
2555                        services</strong>. </p>
2556                <p>These adverts enable local businesses to get in front of their target audience – the <strong>local
2557                        community</strong>.</p>
2558                <img src="/resources/images/pixel/" id="adlight-explanation-modal-image" style="display: none">
2559                <p class="italic">It is important that we continue to promote these adverts as our local businesses need
2560                    as much support as possible during these challenging times.</p>
2561            </div>
2562            <div class="modal-footer">
2563                <button type="button" class="mar-btn mar-btn--dark" data-dismiss="modal">Close</button>
2564            </div>
2565        </div>
2566    </div>
2567</div>
2568
2569<div id="po-overlay-toast-left"></div>
2570<div id="po-overlay-toast-main-navigation"></div>
2571    
2571<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"fd15ff24ac","applicationID":"1089177626","transactionName":"NVNWZkNXWxAEVxBdCwwZd0dCQloOSnYIWwcJfltfVEZUBAB5C1ARDlMOCFZTWwYXVRBRFwdYUEdCT1oWF1oBQxdKHw==","queueTime":0,"applicationTime":124,"atts":"GRRVEAtNSB4=","errorBeacon":"bam.nr-data.net","agent":""}</script>
2571
2572</body>
2573
2574<div id="outbrain-holder">
2575    <div id="DFP_standard_mpu_3"></div>
2576    <div id="DFP_standard_mpu_4"></div>
2577    <div id="DFP_standard_mpu_5"></div>
2578    <div id="DFP_standard_mpu_6"></div>
2579    <div id="DFP_standard_mpu_7"></div>
2580</div>
2581<script>
2582
2583const elementToObserve = document.querySelector("#outbrain-holder");
2584
2585// create a new instance of `MutationObserver` named `observer`,
2586// passing it a callback function
2587const observer = new MutationObserver(function(e) {
2588    $.each(e, function(j, obs) {
2589        $.each(obs.removedNodes, function (i, node) {
2590            var id = $(node).attr('id');
2591            addAdSlot(id, id.replace('DFP_', ''));
2592        });
2593    });
2594});
2595
2596// call `observe()` on that MutationObserver instance,
2597// passing it the element to observe, and the options object
2598observer.observe(elementToObserve, {subtree: true, childList: true});
2599</script>
2599
2600
2601<script>
2602window.domComplete = performance.now();
2603</script>
2603
2604
2605<script type="text/javascript">
2606path = document.location.href.split("/");
2607var prop30 = qs.get('lp');
2608var prop43 = qs.get('ref');
2609var pType="BlockHomepageModule"
2610
2611if (pType === 'BlockArticleModule' || pType === 'NationalNewsModule' || pType === 'BlockWhatsOnModule') {
2612    pType = 'ArticleModule';
2613}
2614for(x=4; x<7; x++)
2615{
2616    if (typeof path[x] == 'undefined')
2617    {
2618        path[x] = '';
2619    }
2620    if(path[x] == "" || (pType == "ArticleModule" && path[x].match(/[0-9]+\./)) || (path[x].indexOf('?') > -1))
2621    {
2622        path[x] = path[x-1];
2623    }
2624    else
2625    {
2626        path[x] = path[x-1] + "/" + path[x];
2627    }
2628    path[x] = path[x].replace(/\/undefined/g,"");
2629}
2630sitename = path[2].split(".");
2631
2632pathN= unescape(document.location.pathname.toString());
2633matches = pathN.match(/(\w+)\.(in|near|compare)\.([\,a-zA-Z0-9\ _-]+)[\/]?$/);
2634detailMatches = pathN.match(/(\w+)\.detail\.(.*)$/);
2635if (detailMatches !== null && detailMatches.length > 1)
2636{
2637    matches = detailMatches;
2638}
2639
2640if (matches !== null && matches.length > 1)
2641{
2642    var subfolder = '';
2643    path[3] = 'li';
2644    path[4] = 'li/'+subfolder;
2645    path[5] = 'li/'+subfolder+'/'+matches[1];
2646    path[6] = 'li/'+subfolder+'/'+matches[1];
2647}
2648if (pathN === '/')
2649{
2650    path[3] = 'homepage';
2651    path[4] = 'homepage';
2652    path[5] = 'homepage';
2653    path[6] = 'homepage';
2654}
2655
2656
2657function filterArray(arr) {
2658    var retArr = [];
2659    $.each(arr, function(i, part) {
2660        if (part !== '') {
2661            retArr.push(part);
2662        }
2663    });
2664
2665    return retArr;
2666}
2667</script>
2667
2668
2669
2670<script type="text/javascript">
2671var known = $.cookie('__siren') ? '1' : '0' ;
2672</script>
2672
2673
2674<script type="text/javascript">
2675
2676var known = $.cookie('__siren') ? '1' : '0' ;
2677var ref = document.referrer;
2678var parser = document.createElement('a');
2679parser.href = ref;
2680
2681// values in the below MUST be strings
2682var targeting = {
2683    'context': '',
2684    
2685    'domain': 'www.pinkun.com',
2686    'isLanding': 'no',
2687    'top_path': 'home',
2688    'weather': ''.toLowerCase(),
2689    'jbsjs': ''.toLowerCase(),
2690    'site_search': '',
2691    'bmd_cat': '',
2692    'wt': '',
2693    'cmpid': qs.get('cmpid'),
2694    'refdm': parser.hostname,
2695    'k': known,
2696    'g':  'u' ,
2697    'a':  '0' ,
2698    'topic': '',
2699    'publication': '',
2700    'primary_tag_future_use': '',
2701    'site': (isMobile()) ? 'mobile': 'desktop',
2702    'r': data_layer.user.subscription_plan !== ''
2703        ? '2'       // 2 = subscribed
2704        : data_layer.user.is_logged_in == 'yes'
2705            ? '1'   // 1 = registered
2706            : '0',  // 0 = anonymous
2707};
2708
2709if (!usePrebid) {
2710    targeting.adrq = 'adl';
2711}
2712
2713if (data_layer.video.exists === 'yes') {
2714    targeting.ptype = 'video';
2715}
2716
2717if ($.cookie('isMeterExpired') === 'yes' && window.data_layer.article.is_article) {
2718    var articleContentLevel = parseInt(window.data_layer.article.content_level, 10) || 0; // account for NaN
2719    if (articleContentLevel !== 0 && window.data_layer.article.content_level_open_access === 'no') {
2720        targeting.ao = 'y';
2721    }
2722}
2723
2724if ($.cookie('_sp_enable_dfp_personalized_ads') === 'true') {
2725    targeting.dfpcsnt = 'yes';
2726} else if ($.cookie('_sp_enable_dfp_personalized_ads') === 'false') {
2727    targeting.dfpcsnt = 'no';
2728} else {
2729    targeting.dfpcsnt = 'none';
2730}
2731
2732if (typeof MobileDetect !== "undefined") {
2733    targeting.canbb = (window.screen.width > 960) ? 'y' : 'n';
2734}
2735
2736if (typeof module_targeting === "object") {
2737    targeting = addToTargeting(targeting, module_targeting);
2738}
2739
2740// $.each(apData, function (k, v) {
2741//     targeting[k] = v;
2742// });
2743
2744// if (typeof gs_channels !== 'undefined') {
2745//     targeting.gs_channels = gs_channels;
2746// }
2747
2748targeting = addToTargeting(targeting, data_layer_helper.homesData);
2749
2750targeting.article_id = '';
2751var googleSiteName = 'www.pinkun.com';
2752var googlePath = '/';
2753
2754var googleNetworkCode = 154725070;
2755
2756var googleChildNetworkCode = 22694024870;
2757var googleId = '/'+googleNetworkCode + ',' + googleChildNetworkCode + '/' + googleSiteName+googlePath;
2758
2759if (googleId.charAt(googleId.length - 1) === '/') {
2760    googleId = googleId.slice(0, -1);
2761}
2762
2763var googletag = googletag || {};
2764googletag.cmd = googletag.cmd || [];
2765
2766googletag.cmd.push(function () {
2767    var _YB = _YB || {
2768        ab: function () {
2769            return _YB.dool ? "b" : "a" + Math.floor(Math.random() * 10);
2770        },
2771        dool: Math.random() >= 0.1,
2772    };
2773    var yb_ab;
2774    if (Math.random() <= 0.9) {
2775        yb_ab = _YB.ab();
2776    } else {
2777        yb_ab = "c";
2778    }
2779    googletag.pubads().setTargeting("yb_ab", yb_ab);
2780});
2781
2782googletag.cmd.push(function() {
2783    googletag.pubads().set("adsense_background_color", "FFFFFF");
2784    googletag.pubads().setTargeting('rfs', "0");
2785    $.each(targeting, function (key, value) {
2786
2787        // No real value so exclude
2788        if (value === 0 || value === '' || value === null) {
2789            return;
2790        }
2791        googletag.pubads().setTargeting(key, value);
2792    });
2793
2794});
2795
2796if (isMobile() && '' === 'top') {
2797    $('.desktop-standard-leaderboard').remove();
2798    $('.mobile-top-leaderboard').show();
2799    $('#DFP_top_leaderboard_mobile').attr('id', 'DFP_top_leaderboard');
2800} else {
2801    $('.mobile-top-leaderboard').remove();
2802}
2803// Ads
2804var adUnits = [];
2805
2806hideAdsByScreensize();
2807
2808if (blackListAds.length > 0) {
2809    removeBlacklistAds(blackListAds);
2810}
2811
2812$.each(unfilteredAdUnits, function (i, unit) {
2813    removeWhitelistAds(unit);
2814});
2815
2816// set up a holder for all the adverts so we can do things with them later
2817var dfpHolder = {};
2818// the set up code
2819googletag.cmd.push(function() {
2820    $.each(adUnits, function(i, data) {
2821
2822        // check if the dom exists
2823        if ($('#'+data.domName).length === 0) {
2824            return;
2825        }
2826
2827        var dfp = null;
2828
2829        if (data.slotType === 'standard')
2830        {
2831            // get the correct sizes, using the alternate_sizes if they exist and we are on a mobile site
2832            var sizes = data.sizes;
2833            if (data.alternate_mobile_size && isMobile()) {
2834                sizes = data.alternate_mobile_size;
2835            }
2836            // push this ad slot through
2837            dfp = googletag.defineSlot(googleId, sizes, data.domName)
2838                .addService(googletag.pubads())
2839                .setTargeting("position", data.positionName)
2840                .setCollapseEmptyDiv(data.collapseContainer);
2841            // check if we have an array of targets, and assign them as a companion if we do
2842            if (data.targets instanceof Array && data.targets.length > 0 ) {
2843                dfp.setTargeting('companion', data.targets);
2844            }
2845
2846        }
2847        else if (data.slotType === 'outofpage')
2848        {
2849            dfp = googletag.defineOutOfPageSlot(googleId, data.domName)
2850                .addService(googletag.pubads())
2851                .setTargeting("position", data.positionName)
2852                .setCollapseEmptyDiv(data.collapseContainer);
2853            // check if we have an array of targets, and assign them as a companion if we do
2854            if (data.targets instanceof Array && data.targets.length > 0 ) {
2855                dfp.setTargeting('companion', data.targets);
2856            }
2857        }
2858
2859        // store
2860        dfpHolder[data.domName] = dfp;
2861
2862    });
2863
2864    if (adLight === true) {
2865        googletag.pubads().setCategoryExclusion('adlight');
2866        // var adlightexplanation = '<div class="adlight-explanation">I\'m a subscriber <a href="#" class="adlight-explanation-link">Why am I seeing this advert?</a></div>';
2867        // if ($('#DFP_premium_mpu').length > 0) {
2868        //     $('#DFP_premium_mpu').before(adlightexplanation);
2869        // }
2870
2871        // if ($('#DFP_standard_mpu_1').length > 0) {
2872        //     $('#DFP_standard_mpu_1').before(adlightexplanation);
2873        // }
2874
2875        // var imageIds = [11497497, 11497535, 11497536, 11497541, 11497542, 11497545, 11497546, 11497547];
2876        // var imageId = imageIds[Math.floor(Math.random() * imageIds.length)];
2877        // $('.adlight-explanation-link').click(function(e) {
2878        //     e.preventDefault();
2879        //     $('#adlight-explanation-modal-image').attr('src', '/resources/images/' + imageId + '/').show();
2880        //     $('#adlight-explanation-modal').modal();
2881        // });
2882    }
2883
2884    // send the request
2885    googletag.pubads().enableSingleRequest();
2886
2887    googletag.enableServices();
2888
2889    googletag.pubads().addEventListener('slotVisibilityChanged', function(event) {
2890        if (event.slot.getResponseInformation().creativeTemplateId === 828288 ||
2891            event.slot.getResponseInformation().creativeTemplateId === 12383216 ) {
2892            console.log('DFP: Magic template id detected, not refreshing');
2893            return;
2894        }
2895        var slotName = '';
2896        $.each(dfpHolder, function (a, e) {
2897            if (e == event.slot) {
2898                slotName = a;
2899            }
2900        });
2901        if (typeof window.advertisingTimer !== 'undefined') {
2902            var perc = event.inViewPercentage;
2903            window.advertisingTimer.timer(slotName, perc);
2904        }
2905    });
2906});
2907
2908// the display code
2909$.each(adUnits, function(i, data) {
2910
2911    // check if the dom exists
2912    if ($('#'+data.domName).length === 0) {
2913        return;
2914    }
2915
2916    if (data.domName === 'DFP_interstitial_mpu') {
2917        if (!inter.checkVisit()) {
2918            return;
2919        }
2920    }
2921
2922    // are we manually loading it?
2923    if ($('#'+data.domName).attr('data-manual-loading') === "yes") {
2924        return;
2925    }
2926    // for mobile, we check if the dom element has the data-delay-loading attribute set to "1"
2927    else if ($('#'+data.domName).attr('data-delay-loading') === "yes") {
2928
2929        // load it
2930        $('#'+data.domName).appear();
2931        $(document.body).on('appear', '#'+data.domName, function(e, allElement) {
2932
2933            // don't call it many times
2934            if ($(this).attr('data-processed') === 'yes') {
2935                return;
2936            }
2937
2938            $(this).attr('data-processed', 'yes');
2939
2940            // display the google ad
2941            googletag.display(data.domName);
2942            googletag.pubads().refresh([dfpHolder[data.domName]]);
2943        });
2944        return;
2945    }
2946    googletag.cmd.push(function() {
2947        googletag.display(data.domName);
2948    });
2949});
2950window.googleComplete = performance.now();
2951window.googleReady = true;
2952
2953// METHODS
2954function addToTargeting(targeting, data) {
2955    if (!data) {
2956        return targeting;
2957    }
2958    $.each(data, function (key, value) {
2959        if (!value) {
2960            return;
2961        }
2962        targeting[key] = value;
2963    });
2964    return targeting;
2965}
2966
2967function addAdSlot(slotName, slot, initHidden) {
2968    console.log("Add ad slot called for %s %s", slotName, slot);
2969    // check if item already exists
2970    if (typeof window.dfpHolder[slotName] !== 'undefined') {
2971        return;
2972    }
2973
2974    if (window.adLight === true) {
2975        return;
2976    }
2977    window.googletag.cmd.push(function() {
2978        var dfp = googletag.defineSlot(window.googleId, [[300,250]], slotName)
2979            .setTargeting('position', [slot])
2980            .addService(googletag.pubads());
2981        window.dfpHolder[slotName] = dfp;
2982
2983        if (!initHidden) {
2984            googletag.pubads().refresh([dfp]);
2985
2986            return;
2987        }
2988    });
2989}
2990
2991function hideAdsByScreensize() {
2992    if (window.screen.width < 728 && $('#BlockArticleContainer').length > 0) {
2993        if ('1188' === '1147') {
2994            $('#DFP_out_of_page').remove();
2995        } else {
2996            $('#DFP_premium_mpu').remove();
2997        }
2998        $('#DFP_on_scroll').remove();
2999    } else if (window.screen.width < 728 &&
3000        ( $(".article-grid__uber[data-top-stories-articles='7'][data-news-list-articles='9']").length > 0 ||
3001        $(".article-grid__uber[data-top-stories-articles='7'][data-news-list-articles='12']").length > 0  ||
3002        $(".article-grid__uber[data-top-stories-articles='7'][data-news-list-articles='18']").length > 0  ||
3003        $(".article-grid__uber[data-top-stories-articles='7'][data-news-list-articles='24']").length > 0 )
3004    ) {
3005        const adElement = document.querySelector('#high_vis_container');
3006        $('.omnicard[data-position="5"]').after(adElement);
3007    }
3008
3009    if ('1188' === '1147' && window.screen.width > 450) {
3010        $('#DFP_bottom_leaderboard').remove();
3011    }
3012
3013    if ('1188' === '1147' && window.screen.width < 728) {
3014        $('#DFP_top_leaderboard').remove();
3015    }
3016
3017    if ('1188' === '1147') {
3018        $('#DFP_teads').remove();
3019        $('#DFP_out_of_page').remove();
3020    }
3021
3022    if ($('#comments-in-page').length === 1 && window.screen.width > 450) {
3023        $('#DFP_top_leaderboard').parent().remove();
3024        $('#DFP_bottom_leaderboard').parent().remove();
3025        // $('#DFP_standard_mpu_1').parent().remove();
3026    }
3027}
3028
3029function removeBlacklistAds(blackListAds) {
3030    $.each(blackListAds, function(i, name) {
3031        removeAdContainer(name);
3032    });
3033}
3034
3035function removeWhitelistAds(unit) {
3036    // VAST (video) ad units never get displayed in here.
3037    if (unit.isVast) {
3038        return;
3039    }
3040
3041    // if we have an ad-light experience
3042    if (whiteList === true) {
3043        if (typeof whiteListAds[unit.positionName] === 'undefined') {
3044            removeAdContainer(unit.domName)
3045            return;
3046        }
3047    }
3048
3049    adUnits.push(unit);
3050}
3051
3052function removeAdContainer(name) {
3053    const element = document.getElementById(name);
3054    // doesn't exist? exit
3055    if(!element) {
3056        return;
3057    }
3058
3059    const parent = element.parentElement;
3060    if (parent && parent.classList.contains('block-bottom-margin')) {
3061        // if immediate parent contains block-bottom-margin as a class, remove the parent as well
3062        parent.classList.remove('block-bottom-margin');
3063    }
3064    if (parent && parent.classList.contains('mar-leaderboard--top')) {
3065        // in case of leaderboard, remove as has min-height
3066        parent.remove();
3067        return;
3068    }
3069
3070    if (parent && parent.classList.contains('mar-leaderboard--bottom')) {
3071        // in case of article ad container, remove as has min-height
3072        parent.remove();
3073        return;
3074    }
3075
3076    element.remove();
3077}
3078</script>
3078
3079
3080
3081<script src="/resources/responsive-static/build/mds/js/global.js?cb=vjoPdzgg"></script>
3081
3082
3083
3084
3085
3086
3087<script src="/__siren/"></script>
3087
3088
3089
3090
3091<script type="text/javascript">
3092    var s_account="newsquestgroupprod";
3093</script>
3093
3094
3095<script type="text/javascript" src="/resources/responsive-static/vendor/adobe/VisitorAPI.js?cb=vjoPdzgg"></script>
vendor: 1 bytes, line 3095
3095
3096<script type="text/javascript" src="/resources/responsive-static/vendor/adobe/omniture.js?cb=vjoPdzgg"></script>
3096
3097
3098<script type="text/javascript">
3099
3100function getOmniturePath() {
3101    var path = '';
3102    if ($('#gallery-base-url').length === 1) {
3103        path = $('#gallery-base-url').val();
3104    }
3105    else {
3106        path = window.location.pathname;
3107    }
3108    return path;
3109}
3110
3111function getPositionFromCookie() {
3112    const cookieName = 'tracking_block_index';
3113
3114    const ref = document.cookie
3115        .split('; ')
3116        .find(row => row.startsWith(`${cookieName}=`))
3117        ?.slice(cookieName.length + 1);
3118
3119    document.cookie = `${cookieName}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/; domain=${window.data_layer.site.cookie_domain}`;
3120
3121    return ref ? decodeURIComponent(ref) : undefined;
3122}
3123function getRefFromCookie() {
3124    const cookieName = 'tracking_block';
3125
3126    const ref = document.cookie
3127        .split('; ')
3128        .find(row => row.startsWith(`${cookieName}=`))
3129        ?.split('=')[1];
3130
3131    // Remove the cookie
3132    document.cookie = `${cookieName}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/; domain=${window.data_layer.site.cookie_domain}`;
3133
3134    return ref;
3135}
3136
3137function getOmnitureTrackingFromCookie(key, preExistingValue) {
3138    var ref = $.cookie('o-' + key);
3139    if(typeof(ref) === 'undefined') {
3140    	ref  = preExistingValue
3141    } else {
3142    	ref = decodeURIComponent(ref);
3143    	$.removeCookie('o-' + key, {
3144            path: '/',
3145            domain: window.data_layer.site.cookie_domain,
3146        });
3147    }
3148    return ref;
3149}
3150
3151function getValidatedAPList() {
3152
3153    var validList = [1100, 1101, 1002, 1006, 1010, 1014, 1018, 1022, 1200, 1202, 1205, 1300, 1602, 1605, 1608, 1612, 1616, 1500, 1503, 1507, 1509, 1512, 1402, 1406, 1409, 1412, 1416, 14331, 14333, 14335, 14336, 14339, 14342, 14344, 14345, 14346, 14350, 14351, 14353, 14359, 14366, 14370, 14371, 14377, 14388, 14394, 14396, 14399, 14407, 14221, 14423, 15679, 15681, 15682, 15683, 15684, 15686, 15687, 15688, 15975];
3154
3155    var data = getAudienceProjectTargetingData();
3156    if (!data || !data.ap_x) {
3157        return '';
3158    }
3159
3160    validData = [];
3161    $.each(data.ap_x, function(i, td) {
3162        if ($.inArray(parseInt(td, 10), validList) !== -1) {
3163            validData.push(td);
3164        }
3165    });
3166
3167    return validData.join(',');
3168}
3169
3170path = document.location.href.split("/");
3171
3172var qs = new URLSearchParams(window.location.search);
3173
3174var prop30 = qs.get('lp');
3175var prop43 = qs.get('ref');
3176var pType="BlockHomepageModule"
3177
3178if (pType === 'BlockArticleModule' || pType === 'NationalNewsModule' || pType === 'BlockWhatsOnModule') {
3179    pType = 'ArticleModule';
3180}
3181
3182for(x=4; x<7; x++)
3183{
3184    if (typeof path[x] == 'undefined')
3185    {
3186        path[x] = '';
3187    }
3188    if(path[x] == "" || (pType == "ArticleModule" && path[x].match(/[0-9]+\./)) || (path[x].indexOf('?') > -1))
3189    {
3190        path[x] = path[x-1];
3191    }
3192    else
3193    {
3194        path[x] = path[x-1] + "/" + path[x];
3195    }
3196    path[x] = path[x].replace(/\/undefined/g,"");
3197}
3198pathN= unescape(document.location.pathname.toString());
3199matches = pathN.match(/(\w+)\.(in|near|compare)\.([\,a-zA-Z0-9\ _-]+)[\/]?$/);
3200detailMatches = pathN.match(/(\w+)\.detail\.(.*)$/);
3201if (detailMatches !== null && detailMatches.length > 1)
3202{
3203    matches = detailMatches;
3204}
3205
3206if (matches !== null && matches.length > 1)
3207{
3208    var subfolder = '';
3209    path[3] = 'li';
3210    path[4] = 'li/'+subfolder;
3211    path[5] = 'li/'+subfolder+'/'+matches[1];
3212    path[6] = 'li/'+subfolder+'/'+matches[1];
3213}
3214if (pathN === '/')
3215{
3216    path[3] = 'homepage';
3217    path[4] = 'homepage';
3218    path[5] = 'homepage';
3219    path[6] = 'homepage';
3220}
3221
3222
3223/* You may give each page an identifying name, server, and channel on
3224the next lines. */
3225s.pageName="(www) "+getOmniturePath();
3226s.pageName = s.pageName.toLowerCase();
3227s.server="martini";
3228s.channel="";
3229s.pageType="";
3230s.prop1= qs.get('search');
3231s.prop2="";
3232s.prop3=document.title;
3233s.prop4="";
3234s.prop5="BlockHomepageModule"; /* get from Martini */
3235s.prop6=path[3].toLowerCase();
3236s.prop7=path[4].toLowerCase();
3237s.prop8=path[5].toLowerCase();
3238s.prop9=path[6].toLowerCase();
3239s.prop10="";
3240
3241s.prop16=path[2].toLowerCase();
3242s.prop17="";
3243s.prop18="Martini";
3244s.prop19="1";
3245s.prop20 = s.getPreviousValue(s.pageName, 'gpv_pn');
3246s.prop42 = "";
3247s.prop53 = 'standard';
3248s.prop54 = '';
3249s.prop55 = '';
3250s.prop56 = "";
3251s.prop57 = ($('[data-name="Feature Article Block A"]').length > 0) ? 'Enabled' : 'Disabled';
3252s.prop58 = document.querySelector('[data-name="Feature Article Block B"]')?.dataset.variant;
3253s.prop59 = getRefFromCookie();
3254s.prop60 = getPositionFromCookie();
3255s.prop73 = document.cookie.split('; ').find(row => row.startsWith('adtiming='))?.split('=')[1] || null;
3256
3257var eVar67 = [];
3258
3259if ($.cookie('consentUUID')) {
3260    eVar67.push('yes');
3261} else {
3262    eVar67.push('no');
3263}
3264if ($.cookie('_sp_enable_dfp_personalized_ads') === 'true') {
3265    eVar67.push('yes');
3266} else if ($.cookie('_sp_enable_dfp_personalized_ads') === 'false') {
3267    eVar67.push('no');
3268} else {
3269    eVar67.push('none');
3270}
3271
3272if ($.cookie('_sp_legitimate_interests') === 'true') {
3273    eVar67.push('yes');
3274} else if ($.cookie('_sp_legitimate_interests') === 'false') {
3275    eVar67.push('no');
3276} else {
3277    eVar67.push('none');
3278}
3279
3280//if ($.cookie('euconsent')) {
3281//    eVar67.push($.cookie('euconsent'));
3282//} else {
3283//    eVar67.push('none');
3284//}
3285
3286s.eVar67 = eVar67.join(',');
3287// console.log('ADB: setting eVar67 to %s', eVar67.join(','));
3288
3289if ($.cookie('prev-tcf-v2')) {
3290    // console.log('ADB: Setting eVar68 to ', $.cookie('prev-tcf-v2'));
3291    s.eVar68 = $.cookie('prev-tcf-v2');
3292}
3293
3294if (typeof iabNames !== 'undefined') {
3295    s.prop29 = iabNames.join(',');
3296} else if (typeof iabIds !== 'undefined') {
3297    s.prop29 = iabIds.join(',');
3298}
3299
3300if (s.prop20 && s.prop20 !== 'no value') {
3301    s.prop21 = s.getPercentPageViewed();
3302} else {
3303    s.prop21 = '';
3304}
3305
3306if (typeof __siren !== 'undefined') {
3307    s.eVar27 = __siren;
3308}
3309
3310s.prop22 = s.getDaysSinceLastVisit('s_lv');
3311
3312
3313s.prop43=getOmnitureTrackingFromCookie('ref', prop43);
3314s.prop25 = ''
3315
3316s.prop27 = '';
3317
3318s.prop30 = getOmnitureTrackingFromCookie('prop30', prop30);
3319s.linkInternalFilters="javascript:,pinkun.com,fish4.co.uk,adsys.newsquest.co.uk,www.exchangeandmart.co.uk,www.communigate.co.uk,"
3320s.eVar61=(new Date()).toLocaleDateString("en-GB");
3321/* s.eVar62=(new Date()).toLocaleDateString("en-GB"); */
3322
3323
3324
3325
3326
3327
3328/* Article-site-cloning data */
3329s.eVar90 = window.data_layer.article.parent_originating_site_id;
3330s.eVar91 = window.data_layer.article.originating_article_id;
3331s.eVar92 = window.data_layer.article.is_original_to_site;
3332s.eVar95 = window.data_layer.site.using_piano_id;
3333s.eVar106 = '';
3334
3335s.eVar109 = '';
3336
3337/* Uber block article counts */
3338s.eVar93 = window.data_layer.page.top_stories_article_count + ':' + window.data_layer.page.interstitial_article_count + ':' + window.data_layer.page.news_stories_article_count;
3339
3340/* Conversion Variables */
3341s.campaign=""
3342s.state=""
3343s.zip=""
3344s.events=""
3345s.products=""
3346s.purchaseID=""
3347s.eVar14=""
3348try {
3349    s.list3=getValidatedAPList();
3350} catch (e) {
3351    // do nothing
3352}
3353
3354
3355
3356
3357// Initial fotorama tracking.
3358var moduleType = null;
3359if (s.prop5 === 'ArticleModule' || s.prop5 == 'PropertyModuleReplacement' || s.prop5 === 'BlockArticleModule') {
3360    moduleType = 'article';
3361} else if (s.prop5 === 'PictureGalleryModule') {
3362    moduleType = 'gallery';
3363}
3364
3365if ($('#comments-in-page').length === 1) {
3366    moduleType = 'comments';
3367}
3368
3369if (moduleType === 'article' || moduleType === 'gallery' || moduleType === 'comments') {
3370    var imagePath = '';
3371
3372    if ($('.fotorama').length > 0) {
3373        // Get the first Fotorama image.
3374        try {
3375            var el = $('.fotorama').data('fotorama').data[0].html;
3376            var url = $(el).find('div').css('background-image');
3377            imagePath = url.replace('url(','').replace(')','').replace(/\"/gi, "");
3378        } catch (e) {
3379        }
3380    } else {
3381        // If there's just one image (i.e. it's not a gallery), find its path.
3382        var imagePathSingle = $('#mainImage').attr('src');
3383        if (typeof imagePathSingle !== 'undefined') {
3384            imagePath = imagePathSingle.split('.')[0] + '/';
3385        }
3386    }
3387    var imageParts = imagePath.split('/');
3388    if (imageParts.length > 1) {
3389        s.eVar37 = imageParts[imageParts.length - 2];
3390        s.prop37 = imageParts[imageParts.length - 2];
3391        s.events = s.apl(s.events, 'event7', ',', 2);
3392    }
3393    s.eVar36 = moduleType;
3394    s.prop36 = moduleType;
3395}
3396
3397
3398
3399// Education pages.
3400if (s.prop5 === 'ResponsiveEducationModule') {
3401    // School profile page.
3402    if ($('#eduOverview').length > 0) {
3403        s.eVar40 = $('#eduOverview').data('school-status');
3404        s.prop40 = s.eVar40;
3405        s.prop41 = 'edu-' + $('#eduOverview').data('school-urn');
3406        s.prop46 = $('#town').text();
3407    }
3408
3409    // Comparison page.
3410    if ($('#eduComparisonTable').length > 0) {
3411        s.list1 = '';
3412    }
3413
3414    // Results page.
3415    if ($('.school-results').length > 0) {
3416        s.list1 = '';
3417
3418        // Track the search criteria.
3419        s.prop44 = '';
3420        s.prop45 = "".toLowerCase();
3421        s.prop46 = "".toLowerCase();
3422        s.prop49 = '';
3423        s.prop50 = '';
3424        s.prop51 = '';
3425        s.eVar2 = s.prop50;
3426
3427        var newSearch = false;
3428        if (newSearch) {
3429            s.events = s.apl(s.events, 'event17', ',', 1);
3430        }
3431    }
3432}
3433
3434// Notices Module
3435if (s.prop5 === 'NewsquestModulesNoticesModule') {
3436    // Notices Find page.
3437    if (s.pageName.includes('notices/find')) {
3438        s.pageName = '(www) /notices/find/';
3439        s.eVar50 = '';
3440        const noticesURL = new URL(window.location.href);
3441        const noticesParams = new URLSearchParams(noticesURL.search);
3442
3443        s.eVar1 = noticesParams.has('keyword') ? noticesParams.get('keyword') : 'None';
3444        s.eVar51 = noticesParams.has('sort') ? noticesParams.get('sprt') : 'best';
3445        s.eVar52 = noticesParams.has('p') ? (parseInt(noticesParams.get('p'), 10) + 1) : 1;
3446        s.eVar53 = noticesParams.has('type') ? noticesParams.get('type') : 'All';
3447        s.eVar54 = noticesParams.has('nearby') ? noticesParams.get('nearby') : 'no';
3448        s.eVar55 = noticesParams.has('daterange') ? noticesParams.get('daterange') : 'last-month';
3449
3450        if (noticesParams.has('sort')) {
3451            switch (noticesParams.get('sort')) {
3452                case 'date_asc':
3453                    s.eVar51 = 'oldest';
3454                    break;
3455                case 'date_desc':
3456                    s.eVar51 = 'newest';
3457                    break;
3458                case 'best_match':
3459                    s.eVar51 = 'best';
3460                    break;
3461                default:
3462                    s.eVar51 = noticesParams.get('sort');
3463                    break;
3464            }
3465        }
3466
3467        // Concatenate all search params into eVar44
3468        if (noticesParams.size > 0) {
3469            const searchParams = new URL(window.location.href).searchParams;
3470            s.eVar44 = '';
3471            searchParams.forEach((value, key) => {
3472                s.eVar44 += `${key}=${value},`;
3473            });
3474        } else {
3475            s.eVar44 = '';
3476        }
3477
3478        // Adobe Search Event triggering
3479        const setNoticePaginationClicked = (value) => {
3480            localStorage.setItem("isNoticePaginationClicked", value);
3481        };
3482
3483        const noticeSearchInput = document.getElementById("notices-search");
3484        const noticeSearchBtn = document.getElementById("notice-search-find");
3485        const noticePaginationBtns = document.querySelectorAll('.notice-find__pagination .pagination-btn');
3486        const noticePaginationBtnPrev = document.querySelector('.pagination-btn-previous svg');
3487        const noticePaginationBtnNext = document.querySelector('.pagination-btn-next svg');
3488
3489        noticeSearchInput?.addEventListener('change', () => setNoticePaginationClicked('false'));
3490        noticeSearchBtn?.addEventListener('click', () => setNoticePaginationClicked('false'));
3491
3492        noticePaginationBtns.forEach(btn => {
3493            btn.addEventListener('click', () => setNoticePaginationClicked('true'));
3494        });
3495
3496        noticePaginationBtnPrev?.addEventListener('click', () => setNoticePaginationClicked('true'));
3497        noticePaginationBtnNext?.addEventListener('click', () => setNoticePaginationClicked('true'));
3498
3499        if (localStorage.getItem("isNoticePaginationClicked") === 'false') {
3500            s.events = s.apl(s.events, 'event1', ',', 1);
3501        }
3502    }
3503
3504    if (/notices\/funeral-directors\/(\d+)\.([a-zA-Z0-9-?]+)?/.test(s.pageName)) {
3505        s.pageName = '(www) /notices/funeral-director/';
3506        s.eVar41 = '';
3507    }
3508}
3509
3510if (s.prop5 === 'NewsquestModulesNoticeModule') {
3511    s.eVar41 = '';
3512    const type = window.announcement_data?.details?.type || '';
3513    const subCategory = window.announcement_data?.details?.sub_category || '';
3514    s.eVar40 = type !== 'Tribute' ? type : `${type} - ${subCategory}`;
3515    s.eVar42 = window.announcement_data?.details?.id || '';
3516    s.eVar107 = '';
3517    s.eVar119 = '';
3518    s.eVar120 = '';
3519    s.eVar2 = "(www) /notice/";
3520}
3521
3522//New Property module
3523if (s.prop5 === 'ResponsivePropertyModule') {
3524    /*
3525        Use prop42 for single and list pages, for list pages use hyphen separate lists of id's
3526    */
3527    
3528    
3529    //Property's all over the place (homepage, searches etc - HOM-133
3530
3531    //Property Detail - HOM-131, HOM-134, HOM-130
3532
3533    //Contact us submissions - HOM-137
3534    if($('#propertyModule.agent-details').length > 0) {
3535        //Add a click handler for a.contact-detail
3536    }
3537
3538
3539}
3540
3541// is their a video tag on the page?
3542if ($('.exco-embed').length > 0) {
3543    console.log('VID: setting tracking for event50');
3544    s.events = s.apl(s.events, 'event50', ',', 1);
3545}
3546
3547var foundAutoPlayVid = false;
3548$('.jw-outer').each(function (a, domEle) {
3549    if ($(this).data('multimedia-block') === 'no' && !foundAutoPlayVid) {
3550        console.log('VID: setting tracking for event51');
3551        s.events = s.apl(s.events, 'event51', ',', 1);
3552        foundAutoPlayVid = true;
3553    }
3554});
3555
3556
3557
3558
3559
3560
3561
3562s.eVar66 = 'Ad-Full';
3563s.eVar114 = '';
3564
3565
3566
3567    // var eVar65Copy = s.getValOnce(s.eVar65, "ev65", 0);
3568    // if (eVar65Copy !== '' && s.prop20.indexOf("/my/subscription/activate/") > -1) {
3569    //     s.events = s.apl(s.events, "event4", ",", 1); // Set the subscription counter event.
3570    //     s.events = s.apl(s.events, "purchase", ",", 1); // Set the purchase event.
3571    //     s.products = "Subscription : Metered Access;" + eVar65Copy + ";1;";
3572    //     s.purchaseID = "";
3573    // }
3574
3575
3576if(qs.get('action') === 'success' && (s.prop5 === 'ArticleModule' || s.prop5 === 'BMDModule' || s.prop5 === 'BlockArticleModule')) {
3577    s.events=s.apl(s.events,'event9',',',2)
3578}
3579/* Hierarchy Variables */
3580s.hier1="newsquest," + "" + ",www.pinkun.com," + path[6].replace(/\//,",");
3581
3582if (typeof MartiniFotorama !== 'undefined') {
3583    MartiniFotorama.loadOmniture(s);
3584}
3585s.prop39 = "0";
3586
3587
3588
3589// Tracking usage of Bytecast audio embeds in articles.
3590s.eVar82 = 'no';
3591s.eVar83 = '';
3592
3593    console.log('ADB: starting');
3594    console.log('Google Bot Browser: ', window.isRobot.googleBot()); //TODO Remove this log after QA
3595
3596// Tracking of Commenting Registration FLow
3597if (s.prop5 !== 'BlockArticleModule') {
3598    const storedAdobeDimensions = sessionStorage.getItem('nq_adobe_tracking_article_dimensions');
3599    if (storedAdobeDimensions) {
3600        const storedAdobeDimensionObj = JSON.parse(storedAdobeDimensions);
3601        s.eVar10 = storedAdobeDimensionObj.eVar10;
3602        s.eVar15 = storedAdobeDimensionObj.eVar15;
3603        s.eVar22 = storedAdobeDimensionObj.eVar22;
3604        s.eVar23 = storedAdobeDimensionObj.eVar23;
3605        s.eVar24 = storedAdobeDimensionObj.eVar24;
3606        s.eVar25 = storedAdobeDimensionObj.eVar25;
3607        s.eVar28 = storedAdobeDimensionObj.eVar28;
3608        s.eVar60 = storedAdobeDimensionObj.eVar60;
3609        s.eVar104 = storedAdobeDimensionObj.eVar104;
3610        s.eVar106 = storedAdobeDimensionObj.eVar106;
3611        s.eVar107 = storedAdobeDimensionObj.eVar107;
3612        s.eVar108 = storedAdobeDimensionObj.eVar108;
3613        s.prop63 = storedAdobeDimensionObj.prop63;
3614    }
3615}
3616
3617if (window.location.href.includes("/user/create-account/commenting/")) {
3618    s.eVar2 = '(www) /user/create-account/commenting/';
3619}
3620
3621/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/
3622if (qs.get('callback') !== 'in' && !window.isRobot.googleBot()) {
3623    var s_code=s.t();
3624    var backupAdobe = s;
3625
3626    if(s_code)document.write(s_code)
3627}
3628
3629// Storing the visiting dimensions
3630if (s.eVar10 || s.eVar22 || s.eVar23 || s.eVar24) {
3631    const adobeTrackingVisitingDimensions = {
3632        eVar10: s.eVar10,
3633        eVar22: s.eVar22,
3634        eVar23: s.eVar23,
3635        eVar24: s.eVar24,
3636    }
3637    sessionStorage.setItem('nq_adobe_tracking_visiting_dimensions', JSON.stringify(adobeTrackingVisitingDimensions));
3638}
3639
3640//--></script>
3640
3641<!-- End SiteCatalyst code version: H.19.3. -->
3642
3643
3644
3645
3646    
3646<script src="/resources/responsive-static/build/mds/js/send-us-your-news.js?cb=vjoPdzgg"></script>
3646
3647
3648
3649<script>
3650    if ('' !== '') {
3651        setTimeout(function() {
3652            data_layer_helper.loadScript(
3653                "/resources/responsive-static/build/mds-next/js/.js?cb=vjoPdzgg",
3654                true,
3655                null,
3656                "module"
3657            )
3658        }, 500);
3659    }
3660</script>
3660
3661
3662</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.