1<!doctype html> 2<html lang="en-US" class="no-js"> 3<head> 4 <meta charset="UTF-8">
4<script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"594424436",accountID:"4028038",trustKey:"66686",xpid:"UAYFWVZQABAFUFFVDggGUlE=",licenseKey:"NRJS-31a57c2b1fe38cc7620",applicationID:"540799145",browserID:"594424436"};;/*! For license information please see nr-loader-spa-1.322.0.min.js.LICENSE.txt */ 5(()=>{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};
5e.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;
5const 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);
5if(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$:()=>
5o,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])}
5(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}
5;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)=>
5{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
5ine_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()=>
5{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)=>
5null==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
5dTimingMethod(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
5imeToRegister: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})})}
5return 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"
5!==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);
5if(!(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)}
5);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)})});
5class 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
5h(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>
5 6 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0" /><style>li#wp-admin-bar-my-sites ul#wp-admin-bar-my-sites-list {height: 550px !important; width: 1100px !important; display: flex !important; flex-direction: column !important; flex-wrap: wrap !important;}</style><style>#wpadminbar .menupop li.hover>.ab-sub-wrapper {z-index: 9999 !important;}#wpadminbar .ab-sub-wrapper,#wpadminbar ul,#wpadminbar ul li {z-index: inherit !important;}</style><meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /> 7 8 <!-- This site is optimized with the Yoast SEO plugin v28.5 - https://yoast.com/product/yoast-seo-wordpress/ --> 9 <title>CD Foundation</title> 10 <meta name="description" content="The Continuous Delivery Foundation is an open-source community improving the world's ability to deliver software with security and speed." /> 11 <link rel="canonical" href="https://cd.foundation/" /> 12 <meta property="og:locale" content="en_US" /> 13 <meta property="og:type" content="website" /> 14 <meta property="og:title" content="CD Foundation" /> 15 <meta property="og:description" content="An open source community improving the world's ability to deliver software with security and speed | CD Foundation" /> 16 <meta property="og:url" content="https://cd.foundation/" /> 17 <meta property="og:site_name" content="CD Foundation" /> 18 <meta property="article:modified_time" content="2026-07-30T14:45:46+00:00" /> 19 <meta property="og:image" content="https://cd.foundation/wp-content/uploads/sites/35/2023/07/CDF-Home-Social-1024x536.png" /> 20 <meta property="og:image:width" content="1024" /> 21 <meta property="og:image:height" content="536" /> 22 <meta property="og:image:type" content="image/png" /> 23 <meta name="twitter:card" content="summary_large_image" /> 24 <meta name="twitter:title" content="CD Foundation" /> 25 <meta name="twitter:description" content="An open source community improving the world's ability to deliver software with security and speed | CD Foundation" /> 26 <meta name="twitter:image" content="https://cd.foundation/wp-content/uploads/sites/35/2023/07/CDF-Home-Social.png" /> 27
27<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https:\/\/schema.org","@graph":[]}</script>
27 28 <!-- / Yoast SEO plugin. --> 29 30 31<link rel='dns-prefetch' href='//use.fontawesome.com' /> 32<link rel='dns-prefetch' href='//fonts.googleapis.com' /> 33<link rel="alternate" type="application/rss+xml" title="CD Foundation » Feed" href="https://cd.foundation/feed/" /> 34<link rel="alternate" type="application/rss+xml" title="CD Foundation » Comments Feed" href="https://cd.foundation/comments/feed/" /> 35<link rel="alternate" type="text/calendar" title="CD Foundation » iCal Feed" href="https://cd.foundation/events/?ical=1" /> 36<style id="wp-img-auto-sizes-contain-inline-css"> 37img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 38/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 39</style> 40<link rel='stylesheet' id='tribe-events-pro-mini-calendar-block-styles-css' href='https://cd.foundation/wp-content/plugins/events-calendar-pro/build/css/tribe-events-pro-mini-calendar-block.css?ver=7.8.3' media='all' /> 41<style id="wp-emoji-styles-inline-css"> 42 43 img.wp-smiley, img.emoji { 44 display: inline !important; 45 border: none !important; 46 box-shadow: none !important; 47 height: 1em !important; 48 width: 1em !important; 49 margin: 0 0.07em !important; 50 vertical-align: -0.1em !important; 51 background: none !important; 52 padding: 0 !important; 53 } 54/*# sourceURL=wp-emoji-styles-inline-css */ 55</style> 56<style id="wp-block-library-inline-css"> 57:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;
57--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-break:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style^=border-color],[style*=";border-color"],[style*="; border-color"]){border-style:solid}html :where([style^=border-top-color],[style*=";border-top-color"],[style*="; border-top-color"]){border-top-style:solid}html :where([style^=border-right-color],[style*=";border-right-color"],[style*="; border-right-color"]){border-right-style:solid}html :where([style^=border-bottom-color],[style*=";border-bottom-color"],[style*="; border-bottom-color"]){border-bottom-style:solid}html :where([style^=border-left-color],[style*=";border-left-color"],[style*="; border-left-color"]){border-left-style:solid}html :where([style^=border-width],[style*=";border-width"],[style*="; border-width"]){border-style:solid}html :where([style^=border-top-width],[style*=";border-top-width"],[style*="; border-top-width"]){border-top-style:solid}html :where([style^=border-right-width],[style*=";border-right-width"],[style*="; border-right-width"]){border-right-style:solid}html :where([style^=border-bottom-width],[style*=";border-bottom-width"],[style*="; border-bottom-width"]){border-bottom-style:solid}html :where([style^=border-left-width],[style*=";border-left-width"],[style*="; border-left-width"]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}} 58 59/*# sourceURL=/wp-includes/css/dist/block-library/common.min.css */ 60</style> 61 62<style id="global-styles-inline-css"> 63:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);
63--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:root { --wp--style--global--content-size: 1300px;--wp--style--global--wide-size: 1300px; }:where(body) { margin: 0; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
63.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 64/*# sourceURL=global-styles-inline-css */ 65</style> 66 67<link rel='stylesheet' id='people-grid-style-css' href='https://cd.foundation/wp-content/themes/salient-child/vc-addons/css/people.css?ver=18.3.0' media='all' /> 68<link rel='stylesheet' id='salient-child-featherlight-style-css' href='https://cd.foundation/wp-content/themes/salient-child/vc-addons/css/featherlight.css?ver=7.1.2' media='all' /> 69<link rel='stylesheet' id='wp-job-manager-job-listings-css' href='https://cd.foundation/wp-content/plugins/wp-job-manager/assets/dist/css/job-listings.css?ver=f443818ecf38545ee113' media='all' /> 70<link rel='stylesheet' id='youtube-playlist-css' href='https://cd.foundation/wp-content/themes/salient-child/vc-addons/css/youtube-playlist.css?ver=1.0.0' media='all' /> 71<link rel='stylesheet' id='cookie-settings-style-css' href='https://cd.foundation/wp-content/themes/salient-child/includes/cookie-settings/cookie-settings.css?ver=18.3.0' media='all' /> 72<link rel='stylesheet' id='salient-child-style-css' href='https://cd.foundation/wp-content/themes/salient-child/style.css?ver=18.3.0' media='all' /> 73<link rel='stylesheet' id='vc-addons-style-css' href='https://cd.foundation/wp-content/themes/salient-child/vc-addons/css/vc-addons.css?ver=18.3.0' media='all' /> 74<link rel='stylesheet' id='templates-style-css' href='https://cd.foundation/wp-content/themes/salient-child/templates/css/templates.css?ver=1790229020' media='all' /> 75<link rel='stylesheet' id='widgets-style-css' href='https://cd.foundation/wp-content/themes/salient-child/widgets/css/widgets.css?ver=18.3.0' media='all' /> 76<link rel='stylesheet' id='results-style-css' href='https://cd.foundation/wp-content/themes/salient-child/search-filter/css/results.css?ver=18.3.0' media='all' /> 77<link rel='stylesheet' id='fonts-style-css' href='https://cd.foundation/wp-content/themes/salient-child/fonts/fonts.css?ver=18.3.0' media='all' /> 78<link rel='stylesheet' id='events-calendar-style-css' href='https://cd.foundation/wp-content/themes/salient-child/css/events-calendar.css?ver=18.3.0' media='all' /> 79<link rel='stylesheet' id='linux-foundation-components-style-css' href='https://cd.foundation/wp-content/themes/salient-child/vc-addons/css/linux-foundation-components.css?ver=18.3.0' media='all' /> 80<link rel='stylesheet' id='latest-posts-style-css' href='https://cd.foundation/wp-content/themes/salient-child/vc-addons/css/latest-posts.css?ver=18.3.0' media='all' /> 81<link rel='stylesheet' id='projects-style-css' href='https://cd.foundation/wp-content/themes/salient-child/vc-addons/css/projects.css?ver=18.3.0' media='all' /> 82<link rel='stylesheet' id='members-style-css' href='https://cd.foundation/wp-content/themes/salient-child/vc-addons/css/members.css?ver=18.3.0' media='all' /> 83<link rel='stylesheet' id='insights-style-css' href='https://cd.foundation/wp-content/themes/salient-child/templates/css/insights.css?ver=1790229020' media='all' /> 84<link rel='stylesheet' id='projects-banner-style-css' href='https://cd.foundation/wp-content/themes/salient-child/css/projects-banner.css?ver=18.3.0' media='all' /> 85<link rel='stylesheet' id='font-awesome-css' href='https://use.fontawesome.com/releases/v6.0.0/css/all.css?ver=6.0.0' media='all' /> 86<link rel='stylesheet' id='font-awesome-shim-css' href='https://use.fontawesome.com/releases/v6.0.0/css/v4-shims.css?ver=6.0.0' media='all' /> 87<link rel='stylesheet' id='salient-grid-system-css' href='https://cd.foundation/wp-content/themes/salient/css/build/grid-system.css?ver=18.3.0' media='all' /> 88<link rel='stylesheet' id='main-styles-css' href='https://cd.foundation/wp-content/themes/salient/css/build/style.css?ver=18.3.0' media='all' /> 89<style id="main-styles-inline-css"> 90html body[data-header-resize="1"] .container-wrap, 91 html body[data-header-format="left-header"][data-header-resize="0"] .container-wrap, 92 html body[data-header-resize="0"] .container-wrap, 93 body[data-header-format="left-header"][data-header-resize="0"] .container-wrap { 94 padding-top: 0; 95 } 96 .main-content > .row > #breadcrumbs.yoast { 97 padding: 20px 0; 98 }
99/*# sourceURL=main-styles-inline-css */ 100</style> 101<link rel='stylesheet' id='nectar-element-recent-posts-css' href='https://cd.foundation/wp-content/themes/salient/css/build/elements/element-recent-posts.css?ver=18.3.0' media='all' /> 102<link rel='stylesheet' id='nectar-basic-events-calendar-css' href='https://cd.foundation/wp-content/themes/salient/css/build/third-party/events-calendar.css?ver=18.3.0' media='all' /> 103<link rel='stylesheet' id='nectar-brands-css' href='https://cd.foundation/wp-content/themes/salient/css/nectar-brands.css?ver=18.3.0' media='all' /> 104<link rel='stylesheet' id='nectar_default_font_open_sans-css' href='https://fonts.googleapis.com/css?family=Open+Sans%3A300%2C400%2C600%2C700&subset=latin%2Clatin-ext' media='all' /> 105<link rel='stylesheet' id='responsive-css' href='https://cd.foundation/wp-content/themes/salient/css/build/responsive.css?ver=18.3.0' media='all' /> 106<link rel='stylesheet' id='skin-ascend-css' href='https://cd.foundation/wp-content/themes/salient/css/build/ascend.css?ver=18.3.0' media='all' /> 107<link rel='stylesheet' id='salient-wp-menu-dynamic-css' href='https://cd.foundation/wp-content/uploads/sites/35/salient/menu-dynamic.css?ver=11261' media='all' /> 108<link rel='stylesheet' id='tablepress-default-css' href='https://cd.foundation/wp-content/plugins/tablepress/css/build/default.css?ver=3.3.4' media='all' /> 109<link rel='stylesheet' id='js_composer_front-css' href='https://cd.foundation/wp-content/themes/salient/css/build/plugins/js_composer.css?ver=18.3.0' media='all' /> 110<link rel='stylesheet' id='dynamic-css-css' href='https://cd.foundation/wp-content/uploads/sites/35/salient/salient-dynamic-styles-multi-id-35.css?ver=94514' media='all' /> 111<style id="dynamic-css-inline-css"> 112#header-space{background-color:#ffffff}@media only screen and (min-width:1000px){body #ajax-content-wrap.no-scroll{min-height:calc(100vh - 95px);height:calc(100vh - 95px)!important;}}@media only screen and (min-width:1000px){#page-header-wrap.fullscreen-header,#page-header-wrap.fullscreen-header #page-header-bg,html:not(.nectar-box-roll-loaded) .nectar-box-roll > #page-header-bg.fullscreen-header,.nectar_fullscreen_zoom_recent_projects,#nectar_fullscreen_rows:not(.afterLoaded) > div{height:calc(100vh - 94px);}.wpb_row.vc_row-o-full-height.top-level,.wpb_row.vc_row-o-full-height.top-level > .col.span_12{min-height:calc(100vh - 94px);}html:not(.nectar-box-roll-loaded) .nectar-box-roll > #page-header-bg.fullscreen-header{top:95px;}.nectar-slider-wrap[data-fullscreen="true"]:not(.loaded),.nectar-slider-wrap[data-fullscreen="true"]:not(.loaded) .swiper-container{height:calc(100vh - 93px)!important;}.admin-bar .nectar-slider-wrap[data-fullscreen="true"]:not(.loaded),.admin-bar .nectar-slider-wrap[data-fullscreen="true"]:not(.loaded) .swiper-container{height:calc(100vh - 93px - 32px)!important;}}.admin-bar[class*="page-template-template-no-header"] .wpb_row.vc_row-o-full-height.top-level,.admin-bar[class*="page-template-template-no-header"] .wpb_row.vc_row-o-full-height.top-level > .col.span_12{min-height:calc(100vh - 32px);}body[class*="page-template-template-no-header"] .wpb_row.vc_row-o-full-height.top-level,body[class*="page-template-template-no-header"] .wpb_row.vc_row-o-full-height.top-level > .col.span_12{min-height:100vh;}@media only screen and (max-width:999px){.using-mobile-browser #nectar_fullscreen_rows:not(.afterLoaded):not([data-mobile-disable="on"]) > div{height:calc(100vh - 100px);}.using-mobile-browser .wpb_row.vc_row-o-full-height.top-level,.using-mobile-browser .wpb_row.vc_row-o-full-height.top-level > .col.span_12,[data-permanent-transparent="1"].using-mobile-browser .wpb_row.vc_row-o-full-height.top-level,[data-permanent-transparent="1"].using-mobile-browser .wpb_row.vc_row-o-full-height.top-level > .col.span_12{min-height:calc(100vh - 100px);}html:not(.nectar-box-roll-loaded) .nectar-box-roll > #page-header-bg.fullscreen-header,.nectar_fullscreen_zoom_recent_projects,.nectar-slider-wrap[data-fullscreen="true"]:not(.loaded),.nectar-slider-wrap[data-fullscreen="true"]:not(.loaded) .swiper-container,#nectar_fullscreen_rows:not(.afterLoaded):not([data-mobile-disable="on"]) > div{height:calc(100vh - 47px);}
112.wpb_row.vc_row-o-full-height.top-level,.wpb_row.vc_row-o-full-height.top-level > .col.span_12{min-height:calc(100vh - 47px);}body[data-transparent-header="false"] #ajax-content-wrap.no-scroll{min-height:calc(100vh - 47px);height:calc(100vh - 47px);}}#nectar_fullscreen_rows{background-color:transparent;}.nectar-shape-divider-wrap{position:absolute;top:auto;bottom:0;left:0;right:0;width:100%;height:150px;z-index:3;transform:translateZ(0);}.post-area.span_9 .nectar-shape-divider-wrap{overflow:hidden;}.nectar-shape-divider-wrap[data-front="true"]{z-index:50;}.nectar-shape-divider-wrap[data-style="waves_opacity"] svg path:first-child{opacity:0.6;}.nectar-shape-divider-wrap[data-style="curve_opacity"] svg path:nth-child(1),.nectar-shape-divider-wrap[data-style="waves_opacity_alt"] svg path:nth-child(1){opacity:0.15;}.nectar-shape-divider-wrap[data-style="curve_opacity"] svg path:nth-child(2),.nectar-shape-divider-wrap[data-style="waves_opacity_alt"] svg path:nth-child(2){opacity:0.3;}.nectar-shape-divider{width:100%;left:0;bottom:-1px;height:100%;position:absolute;}.nectar-shape-divider-wrap.no-color .nectar-shape-divider{fill:#fff;}@media only screen and (max-width:999px){.nectar-shape-divider-wrap:not([data-using-percent-val="true"]) .nectar-shape-divider{height:75%;}.nectar-shape-divider-wrap[data-style="clouds"]:not([data-using-percent-val="true"]) .nectar-shape-divider{height:55%;}}@media only screen and (max-width:690px){.nectar-shape-divider-wrap:not([data-using-percent-val="true"]) .nectar-shape-divider{height:33%;}.nectar-shape-divider-wrap[data-style="clouds"]:not([data-using-percent-val="true"]) .nectar-shape-divider{height:33%;}}#ajax-content-wrap .nectar-shape-divider-wrap[data-height="1"] .nectar-shape-divider,#ajax-content-wrap .nectar-shape-divider-wrap[data-height="1px"] .nectar-shape-divider{height:1px;}.nectar-shape-divider-wrap[data-position="top"]{top:-1px;bottom:auto;}.nectar-shape-divider-wrap[data-position="top"]{transform:rotate(180deg)}.col.padding-1-percent > .vc_column-inner,.col.padding-1-percent > .n-sticky > .vc_column-inner{padding:calc(600px * 0.01);}@media only screen and (max-width:690px){.col.padding-1-percent > .vc_column-inner,.col.padding-1-percent > .n-sticky > .vc_column-inner{padding:calc(100vw * 0.01);}}@media only screen and (min-width:1000px){.col.padding-1-percent > .vc_column-inner,.col.padding-1-percent > .n-sticky > .vc_column-inner{padding:calc((100vw - 180px) * 0.01);}.column_container:not(.vc_col-sm-12) .col.padding-1-percent > .vc_column-inner{padding:calc((100vw - 180px) * 0.005);}}@media only screen and (min-width:1425px){.col.padding-1-percent > .vc_column-inner{padding:calc(1245px * 0.01);}.column_container:not(.vc_col-sm-12) .col.padding-1-percent > .vc_column-inner{padding:calc(1245px * 0.005);}}.full-width-content .col.padding-1-percent > .vc_column-inner{padding:calc(100vw * 0.01);}@media only screen and (max-width:999px){.full-width-content .col.padding-1-percent > .vc_column-inner{padding:calc(100vw * 0.01);}}@media only screen and (min-width:1000px){.full-width-content .column_container:not(.vc_col-sm-12) .col.padding-1-percent > .vc_column-inner{padding:calc(100vw * 0.005);}}.flex_gap_desktop_10px> .vc_column-inner > .wpb_wrapper{gap:10px;}.col.padding-2-percent > .vc_column-inner,.col.padding-2-percent > .n-sticky > .vc_column-inner{padding:calc(600px * 0.03);}@media only screen and (max-width:690px){.col.padding-2-percent > .vc_column-inner,.col.padding-2-percent > .n-sticky > .vc_column-inner{padding:calc(100vw * 0.03);}}@media only screen and (min-width:1000px){.col.padding-2-percent > .vc_column-inner,.col.padding-2-percent > .n-sticky > .vc_column-inner{padding:calc((100vw - 180px) * 0.02);}.column_container:not(.vc_col-sm-12) .col.padding-2-percent > .vc_column-inner{padding:calc((100vw - 180px) * 0.01);}}@media only screen and (min-width:1425px){.col.padding-2-percent > .vc_column-inner{padding:calc(1245px * 0.02);}.column_container:not(.vc_col-sm-12) .col.padding-2-percent > .vc_column-inner{padding:calc(1245px * 0.01);}}.full-width-content .col.padding-2-percent > .vc_column-inner{padding:calc(100vw * 0.02);}@media only screen and (max-width:999px){.full-width-content .col.padding-2-percent > .vc_column-inner{padding:calc(100vw * 0.03);}}@media only screen and (min-width:1000px){.full-width-content .column_container:not(.vc_col-sm-12) .col.padding-2-percent > .vc_column-inner{padding:calc(100vw * 0.01);}}.img-with-aniamtion-wrap[data-border-radius="5px"] .img-with-animation,.img-with-aniamtion-wrap[data-border-radius="5px"] .inner,.img-with-aniamtion-wrap[data-border-radius="5px"] .hover-wrap{border-radius:5px;}.img-with-aniamtion-wrap[data-border-radius="5px"]{--nectar-radius:5px;}.screen-reader-text,.nectar-skip-to-content:not(:focus){border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);
112height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;}.row .col img:not([srcset]){width:auto;}.row .col img.img-with-animation.nectar-lazy:not([srcset]){width:100%;} 113.grid-tags-wrapper { 114 display: none; 115} 116table#tablepress-2, 117table#tablepress-2 * { 118 border: 0 !important; 119} 120 121table#tablepress-2 th { 122 font-family: Open Sans !important; 123 font-size: 24px !important; 124 line-height: 36px !important; 125 font-weight: 400 !important; 126 background-color: #ffffff !important; 127} 128 129table#tablepress-2 p, 130table#tablepress-2 a { 131 font-size: 18px; 132} 133 134table#tablepress-2 td { 135 vertical-align: middle; 136} 137 138body:not(.woocommerce-cart) .main-content table tr:nth-child(2n + 1) { 139 background-color: #fafafa !important; 140} 141 142table#tablepress-2 ul { 143 margin-bottom: 0 !important; 144} 145 146table#tablepress-2 img { 147 object-fit: contain; 148 min-width: 100px; 149} 150 151.nectar-love { 152 display: none !important; 153} 154 155.tribe-common-l-container.tribe-events-l-container { 156 padding-bottom: 40px !important; 157} 158 159.tribe-filter-bar-c-filter__toggle:focus { 160 outline: none !important; 161} 162 163.tribe-events-after-html * { 164 margin: 0 !important; 165 padding-bottom: 40px; 166} 167 168.tribe-events-after-html, 169.tribe-events-before-html { 170 text-align: center; 171 padding: 0; 172} 173 174ul.tribe-related-events.tribe-clearfix { 175 width: 100% !important; 176} 177 178nav.tribe-events-nav-pagination li { 179 list-style: none !important; 180} 181 182.meta-comment-count { 183 display: none !important; 184} 185 186.home .blog-recent .col .post-header h3, 187.blog-recent .col .post-header h3 { 188 font-size: 24px !important; 189} 190 191#footer-outer #footer-widgets .col ul li a, 192.widget_text { 193 font-size: 14px !important; 194} 195 196#footer-outer #footer-widgets { 197 padding: 0px 0px !important; 198 color: #969696 !important; 199} 200 201/* CTA styles */ 202 203#call-to-action { 204 background-image: linear-gradient(90deg, #f7941d, #ee2723); 205} 206 207#call-to-action .triangle { 208 display: none; 209} 210 211#call-to-action .nectar-button { 212 padding-top: 6px !important; 213 padding-bottom: 6px !important; 214} 215 216#call-to-action .nectar-button:hover { 217 background-color: #fff !important; 218 color: #000 !important; 219 opacity: 0.87; 220} 221 222/* Add margin to mobile menu top item */ 223 224.off-canvas-menu-container .menu .menu-item:first-child { 225 margin-top: 30px; 226} 227 228/* CATEGORY BLOG FEATURED IMAGES */ 229 230.category-blog .post .content-inner .post-featured-img img { 231 display: none; 232} 233 234/* WP POST IMAGE MAX SIZE */ 235 236.wp-post-image { 237 max-width: 400px !important; 238} 239 240.search .wp-post-image { 241 max-width: 100% !important; 242} 243 244@media only screen and (max-width: 600px) { 245 .tribe-events-list .tribe-events-loop .tribe-events-event-image { 246 float: none !important; 247 } 248} 249 250/* JOBS */ 251ul.job_types li { 252 list-style: none !important; 253} 254 255/* SITE MIGRATION */ 256.grid-design.outer img { 257 width: 100%; 258 max-height: 270px !important; 259 margin-bottom: 5px; 260} 261 262.category-time-wrapper { 263 font-size: 14px; 264 padding-bottom: 5px; 265} 266 267.grid-design.title { 268 margin-bottom: 24px; 269} 270/*# sourceURL=dynamic-css-inline-css */ 271</style> 272<link rel='stylesheet' id='redux-google-fonts-salient_redux-css' href='https://fonts.googleapis.com/css?family=Open+Sans:600,400,700%7CRoboto:400,300&ver=7.1.2' media='all' />
273<script id="jquery-core-js" src="https://cd.foundation/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script>
vendor: 1 bytes, line 273
273
274<script id="jquery-migrate-js" src="https://cd.foundation/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1"></script>
vendor: 1 bytes, line 274
274
275<script type="text/javascript" nonce="14c08f7ff4c14acf3a0285187b266101"></script>
275<link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://cd.foundation/xmlrpc.php?rsd" /> 276<meta name="generator" content="WordPress 7.1.2" /> 277<link rel='shortlink' href='https://cd.foundation/' /> 278<meta name="tec-api-version" content="v1"><meta name="tec-api-origin" content="https://cd.foundation"><link rel="alternate" href="https://cd.foundation/wp-json/tribe/events/v1/" />
278<script type="text/javascript" nonce="14c08f7ff4c14acf3a0285187b266101"> var root = document.getElementsByTagName( "html" )[0]; root.setAttribute( "class", "js" ); </script>
278<script 279 src="https://transcend-cdn.com/cm/f484e2d0-ad2e-43a9-9d64-d07f6fa20966/airgap.js" 280 data-cfasync="false" 281 data-prompt="auto" 282></script>
282 283<!-- LFX Segments Analytics -->
284<script src="https://lfx-segment.platform.linuxfoundation.org/latest/lfx-segment-analytics.min.js"></script>
284
285<script type="text/javascript" nonce="14c08f7ff4c14acf3a0285187b266101"> 286 // Initialize with default configuration (no custom write key needed) 287 LfxAnalytics.LfxSegmentsAnalytics.getInstance().init(); 288</script>
288
289<script type="text/javascript" 290src="https://100008483.collect.igodigital.com/collect.js"> </script>
290 291
292<script type="text/javascript" nonce="14c08f7ff4c14acf3a0285187b266101"> 293_etmc.push(["setOrgId", "100008483"]); 294_etmc.push(["trackPageView", { "item" : "Continuous_Delivery_Foundation"}]); 295</script>
295 296<!-- Google Tag Manager -->
297<script type="text/javascript" nonce="14c08f7ff4c14acf3a0285187b266101">
vendor: 331 bytes, lines 297-301
297(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 298new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 299j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 300'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 301})(window,document,'script','dataLayer','
301GTM-NB6PDMP
vendor: 3 bytes, line 301
301');
301</script>
301 302<!-- End Google Tag Manager --><meta name="generator" content="Powered by WPBakery Page Builder - drag and drop page builder for WordPress."/> 303<style data-type="vc_custom-css">.nectar-button.fixed-size { 304 width: 275px; 305} 306 307.single-recent-post .featured-image-crop { 308 max-height:270px !important; 309 height:270px !important; 310 311}</style><link rel="icon" href="https://cd.foundation/wp-content/uploads/sites/35/2019/02/cropped-favicon-32x32.png" sizes="32x32" /> 312<link rel="icon" href="https://cd.foundation/wp-content/uploads/sites/35/2019/02/cropped-favicon-192x192.png" sizes="192x192" /> 313<link rel="apple-touch-icon" href="https://cd.foundation/wp-content/uploads/sites/35/2019/02/cropped-favicon-180x180.png" /> 314<meta name="msapplication-TileImage" content="https://cd.foundation/wp-content/uploads/sites/35/2019/02/cropped-favicon-270x270.png" /> 315<style id="wp-custom-css"> 316<!-- wp:paragraph --> 317<p><em>An interview with Jalander Ramagiri, Ericsson Software Technology | Conducted by Maria Ashby, Armory</em></p> 318<!-- /wp:paragraph --> 319 320<!-- wp:paragraph --> 321<p>We are just a few days from <a href="https://events.linuxfoundation.org/spinnaker-summit/" target="_blank" rel="noreferrer noopener">Spinnaker Summit</a>. This year it is co-located with KubeCon + CloudNativeCon and <a href="https://events.linuxfoundation.org/continuous-delivery-summit/" target="_blank" rel="noreferrer noopener">CD Summit</a> in Detroit on October 24-25, 2022. </p> 322<!-- /wp:paragraph --> 323 324<!-- wp:paragraph --> 325<p>Spinnaker Summit has speakers from a wide range of industries, countries, and technical backgrounds. Earlier this week, I had the opportunity to interview one of the Summitâs speakers, Jalander Ramagiri, Senior Software Engineer at Ericsson Software Technology in Ireland. Like me, Jalander started his Continuous Delivery earlier this year and he brings a unique perspective from his previous decade of IT experience. He is currently working with both the CDEvents team and the Spinnaker project. Hereâs what Jalander had to say about his experience working with open source projects and their communities. </p> 326<!-- /wp:paragraph --> 327 328<!-- wp:heading {"level":4} --> 329<h4><strong>How did you get involved in Open Source and the Continuous Delivery space? </strong></h4> 330<!-- /wp:heading --> 331 332<!-- wp:paragraph --> 333<p>Before my time in open source, I worked as a software engineer for ten years. My CI/CD journey began when I started working for Ericsson last year. Over time, I have become more interested in the deployment part of the Software Development Life Cycle. To me, this is the most critical part. Itâs where your user accesses your services and has the ability to use it every time. Developing the code is not the whole story but how we maintain and integrate that code and then how we process it in the CD environment is the most important part. Now, I work in the continuous delivery domain and with open source integration particularly. Through Ericsson, I started working with CDEvents and I am currently working on integrating CDEvents with Spinnaker. </p> 334<!-- /wp:paragraph --> 335 336<!-- wp:heading {"level":4} --> 337<h4><strong>What has been your experience working with the CDF community? </strong></h4> 338<!-- /wp:heading --> 339 340<!-- wp:paragraph --> 341<p>It has been a great experience to network and connect with people from all over the world. I recently attended Open Source Summit Europe and it has been eye-opening to see all the different ways open source is being used all over the world. It is very different from working in a product-based company where you tend to get siloed around a particular product or feature. Open source is the opposite of this. You get to see all the different use cases for the tools you use. Thereâs much I didnât know about before working with open source and I am excited to learn more through going to conferences and just attending the eventâs meetings. </p> 342<!-- /wp:paragraph --> 343 344<!-- wp:heading {"level":4} --> 345<h4><strong>Do you have any advice for people just getting started working with Open Source?</strong></h4> 346<!-- /wp:heading --> 347 348<!-- wp:paragraph --> 349<p>You need to have a clear picture of what you are going to work on. In open source the opportunities are endless. But, you need to focus on what you are capable of doing so that you can be visible in the community. Pick the right things so that you can deliver as early as possible and you will have some things you can commit and showcase publicly to start building your reputation in the community. </p> 350<!-- /wp:paragraph --> 351 352<!-- wp:heading {"level":4} --> 353<h4><strong>Could you tell us a little bit about CDEvents and its interaction with Spinnaker? </strong></h4> 354<!-- /wp:heading --> 355 356<!-- wp:image {"align":"left","id":9435,"width":200,"height":200,"sizeSlug":"full","linkDestination":"none"} --> 357<figure class="wp-block-image alignleft size-full is-resized"><img src="https://cd.foundation/wp-content/uploads/sites/35/2022/05/cdevents-400.png" alt="cdevents" class="wp-image-9435" width="200" height="200"/></figure> 358<!-- /wp:image --> 359 360<!-- wp:paragraph --> 361<p>Before working with CDEvents, I never knew how many different CI/CD tools there are to automate your CI/CD pipeline. From building testing, decision making and process and release and monitoring, thereâs just so much out there. These tools need to be able to communicate with each other. An example of this would be Spinnaker and Jenkins. This is a very common use case. Most people will use Jenkins for testing and Spinnaker for production deployment. Spinnaker can do its production deployment work, only after the Jenkins testing part gets done. Jenkins needs to be able to communicate with Spinnaker, so you can send something that's going to deploy some artifact or some application in production. Thatâs where CDEvents comes in. </p> 362<!-- /wp:paragraph --> 363 364<!-- wp:paragraph --> 365<p>The communication is happening, but it requires additional code that you have to write between tools. So you need to write your own code for each tool and product that you use. So it's very difficult to maintain. CDEvents will be in the middle and will help facilitate communication between tools. We have raised an RFC proposal with the Spinnaker community and hope to integrate CDEvents with Spinnaker on a larger scale. </p> 366<!-- /wp:paragraph --> 367 368<!-- wp:heading --> 369<h2>Spinnaker Summit</h2> 370<!-- /wp:heading --> 371 372<!-- wp:paragraph --> 373<p>Come check out Jalanderâs talk on the integration of CDEvents with Spinnaker â<a href="https://sched.
373co/19kph" target="_blank" rel="noreferrer noopener">Events in Action With Spinnaker, Tekton and Keptn</a>â - Jalander Ramagiri & Adam Kenihan, Ericsson Software Technology</p> 374<!-- /wp:paragraph --> 375 376<!-- wp:paragraph --> 377<p><a href="https://events.linuxfoundation.org/spinnaker-summit/register/" target="_blank" rel="noreferrer noopener">Register here</a> to catch up with him and many more CI/CD leaders at Spinnaker Summit this year. </p> 378<!-- /wp:paragraph --> 379 380<!-- wp:image {"align":"center","width":900,"height":471,"linkDestination":"custom"} --> 381<figure class="wp-block-image aligncenter is-resized"><a href="https://sched.co/19kph" target="_blank" rel="noreferrer noopener"><img src="https://lh3.googleusercontent.com/2pKE9RGprepmdoqnLlCqfuIEWMKe04M_icoP-J0fAf0wK4HPH3Avv65m8rpR3KnO1JZty5VcSCF6D2zTpDcTJeNph6t4pdgjIMBprojsDosOt4e5YL8z77tkrb9ytRpDd7D5rIB73vcMXEf8csREgd06I59vWoH59T-fy2f_anb6hY3aFFjr16G8Ng" alt="" width="900" height="471"/></a></figure> 382<!-- /wp:image --> 383</style> 384<style type="text/css" data-type="vc_shortcodes-default-css">.vc_do_custom_heading{margin-bottom:0.625rem;margin-top:0;}.vc_do_custom_heading{margin-bottom:0.625rem;margin-top:0;}.vc_do_custom_heading{margin-bottom:0.625rem;margin-top:0;}</style><noscript><style> .wpb_animate_when_almost_visible { opacity: 1; }</style></noscript><link rel='stylesheet' id='vc_google_fonts_abril_fatfaceregular-css' href='https://fonts.googleapis.com/css?family=Abril%20Fatface:regular&subset=latin&ver=8.7.3' media='all' /> 385<link data-pagespeed-no-defer data-nowprocket data-wpacu-skip data-no-optimize data-noptimize rel='stylesheet' id='main-styles-non-critical-css' href='https://cd.foundation/wp-content/themes/salient/css/build/style-non-critical.css?ver=18.3.0' media='all' /> 386<link data-pagespeed-no-defer data-nowprocket data-wpacu-skip data-no-optimize data-noptimize rel='stylesheet' id='magnific-css' href='https://cd.foundation/wp-content/themes/salient/css/build/plugins/magnific.css?ver=8.6.0' media='all' /> 387<link data-pagespeed-no-defer data-nowprocket data-wpacu-skip data-no-optimize data-noptimize rel='stylesheet' id='nectar-ocm-core-css' href='https://cd.foundation/wp-content/themes/salient/css/build/off-canvas/core.css?ver=18.3.0' media='all' /> 388 389</head><body class="home wp-singular page-template-default page page-id-6489 wp-theme-salient wp-child-theme-salient-child tribe-no-js page-template-salient-child-theme ascend salient-child-theme wpb-js-composer js-comp-ver-8.7.3 vc_responsive" data-footer-reveal="false" data-footer-reveal-shadow="none" data-header-format="default" data-body-border="off" data-boxed-style="" data-header-breakpoint="1170" data-dropdown-style="minimal" data-cae="easeOutCubic" data-cad="650" data-megamenu-width="contained" data-aie="none" data-ls="magnific" data-apte="standard" data-hhun="0" data-fancy-form-rcs="default" data-form-style="default" data-form-submit="default" data-is="minimal" data-button-style="rounded" data-user-account-button="false" data-flex-cols="true" data-col-gap="default" data-header-inherit-rc="false" data-header-search="true" data-animated-anchors="true" data-ajax-transitions="false" data-full-width-header="false" data-slide-out-widget-area="true" data-slide-out-widget-area-style="slide-out-from-right" data-user-set-ocm="off" data-loading-animation="none" data-bg-header="false" data-responsive="1" data-ext-responsive="true" data-ext-padding="90" data-header-resize="1" data-header-color="light" data-cart="false" data-remove-m-parallax="" data-remove-m-video-bgs="" data-m-animate="0" data-force-header-trans-color="light" data-smooth-scrolling="0" data-permanent-transparent="false" > 390 391
391<script type="text/javascript" nonce="14c08f7ff4c14acf3a0285187b266101"> 392 (function(window, document) { 393 394 document.documentElement.classList.remove("no-js"); 395 396 if(navigator.userAgent.match(/(Android|iPod|iPhone|iPad|BlackBerry|IEMobile|Opera Mini)/)) { 397 document.body.className += " using-mobile-browser mobile "; 398 } 399 if(navigator.userAgent.match(/Mac/) && navigator.maxTouchPoints && navigator.maxTouchPoints > 2) { 400 document.body.className += " using-ios-device "; 401 } 402 403 if( !("ontouchstart" in window) ) { 404 405 var body = document.querySelector("body"); 406 var winW = window.innerWidth; 407 var bodyW = body.clientWidth; 408 409 if (winW > bodyW + 4) { 410 411 var vwTestEl = document.createElement("div"); 412 vwTestEl.style.position = "absolute"; 413 vwTestEl.style.top = "-9999px"; 414 vwTestEl.style.width = "100vw"; 415 body.appendChild(vwTestEl); 416 var vwWidth = vwTestEl.offsetWidth; 417 body.removeChild(vwTestEl); 418 419 if (vwWidth > bodyW + 4) { 420 body.setAttribute("style", "--scroll-bar-w: " + (winW - bodyW - 4) + "px"); 421 } else { 422 body.setAttribute("style", "--scroll-bar-w: 0px"); 423 } 424 425 } else { 426 body.setAttribute("style", "--scroll-bar-w: 0px"); 427 } 428 } 429 430 })(window, document); 431 </script>
431<!-- Google Tag Manager (noscript) -->
vendor: 69 bytes, lines 431-432
431 432<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
432GTM-NB6PDMP
vendor: 85 bytes, lines 432-433
432" 433height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
434<!-- End Google Tag Manager (noscript) --><nav aria-label="Skip links" class="nectar-skip-to-content-wrap" data-nosnippet><a href="#ajax-content-wrap" class="nectar-skip-to-content">Skip to main content</a></nav><div class='lfprojects'><div class='container'><a href='https://www.linuxfoundation.org/projects' target='_blank' rel='noopener noreferrer'><img src='/wp-content/uploads/banners/lfprojects_banner_other.svg' alt='THE LINUX FOUNDATION PROJECTS'></a></div></div> 435 <div id="header-space" data-header-mobile-fixed='false'></div> 436 437 <div id="header-outer" data-has-menu="true" data-has-buttons="yes" data-header-button_style="default" data-using-pr-menu="false" data-mobile-fixed="false" data-ptnm="false" data-lhe="default" data-user-set-bg="#ffffff" data-format="default" data-permanent-transparent="false" data-megamenu-rt="0" data-remove-fixed="0" data-header-resize="1" data-cart="false" data-transparency-option="" data-box-shadow="small" data-shrink-num="6" data-using-secondary="0" data-using-logo="1" data-logo-height="75" data-m-logo-height="24" data-padding="10" data-full-width="false" data-condense="false" > 438 439<header id="top" role="banner" aria-label="Main Menu"> 440 <div class="container"> 441 <div class="row"> 442 <div class="col span_3"> 443 <a id="logo" href="https://cd.foundation" data-supplied-ml-starting-dark="false" data-supplied-ml-starting="false" data-supplied-ml="false" > 444 <img class="stnd skip-lazy" width="388.9" height="293.71" alt="CD Foundation" src="https://cd.foundation/wp-content/uploads/sites/35/2019/02/cdf-color.svg" /> </a> 445 </div><!--/span_3--> 446 447 <div class="col span_9 col_last"> 448 <div class="nectar-mobile-only mobile-header"><div class="inner"></div></div> 449 <a class="mobile-search" href="#searchbox"><span class="nectar-icon icon-salient-search" aria-hidden="true"></span><span class="screen-reader-text">search</span></a> 450 <div class="slide-out-widget-area-toggle mobile-icon slide-out-from-right" data-custom-color="false" data-icon-animation="simple-transform"> 451 <div> <a href="#slide-out-widget-area" role="button" aria-label="Navigation Menu" aria-expanded="false" class="closed"> 452 <span class="screen-reader-text">Menu</span><span aria-hidden="true"> <i class="lines-button x2"> <i class="lines"></i> </i> </span> </a></div> 453 </div> 454 455 <nav aria-label="Main Menu"> 456 <ul class="sf-menu"> 457 <li id="menu-item-61" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children nectar-regular-menu-item menu-item-61"><a href="https://cd.foundation/about/" aria-haspopup="true" aria-expanded="false"><span class="menu-title-text">About</span></a> 458<ul class="sub-menu"> 459 <li id="menu-item-17367" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-17367"><a href="https://cd.foundation/about/"><span class="menu-title-text">What is the CDF?</span></a></li> 460 <li id="menu-item-16824" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-16824"><a href="https://cd.foundation/annual-report-2025/"><span class="menu-title-text">Annual Report 2025</span></a></li> 461 <li id="menu-item-5692" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-5692"><a href="https://cd.foundation/join/"><span class="menu-title-text">Become a Member ð·</span></a></li> 462 <li id="menu-item-8725" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-8725"><a href="https://cd.foundation/members/"><span class="menu-title-text">Members</span></a></li> 463 <li id="menu-item-209" class="menu-item menu-item-type-custom menu-item-object-custom nectar-regular-menu-item menu-item-209"><a href="https://github.com/cdfoundation/charter"><span class="menu-title-text">Charter</span></a></li> 464 <li id="menu-item-7932" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-7932"><a href="https://cd.foundation/about/staff/"><span class="menu-title-text">Team</span></a></li> 465 <li id="menu-item-68" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-68"><a href="https://cd.foundation/about/contact/"><span class="menu-title-text">Contact</span></a></li> 466</ul> 467</li> 468<li id="menu-item-6466" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children nectar-regular-menu-item menu-item-6466"><a href="/community/" aria-haspopup="true" aria-expanded="false"><span class="menu-title-text">Community</span></a> 469<ul class="sub-menu"> 470 <li id="menu-item-9258" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-9258"><a href="https://cd.foundation/ambassadors/"><span class="menu-title-text">
470Ambassadors</span></a></li> 471 <li id="menu-item-17622" class="menu-item menu-item-type-post_type menu-item-object-post nectar-regular-menu-item menu-item-17622"><a href="https://cd.foundation/blog/2026/05/20/2026-award-winners/"><span class="menu-title-text">Awards ð</span></a></li> 472 <li id="menu-item-10115" class="menu-item menu-item-type-custom menu-item-object-custom nectar-regular-menu-item menu-item-10115"><a href="https://calendar.google.com/calendar/u/0/embed?src=linuxfoundation.org_mhf0kmgedn67ihni8r129avp24@group.calendar.google.com&ctz=UTC"><span class="menu-title-text">Community Calendar</span></a></li> 473 <li id="menu-item-13418" class="menu-item menu-item-type-custom menu-item-object-custom nectar-regular-menu-item menu-item-13418"><a href="/community/"><span class="menu-title-text">Join our Community</span></a></li> 474 <li id="menu-item-386" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-386"><a href="https://cd.foundation/about/governing-board/"><span class="menu-title-text">Governing Board</span></a></li> 475 <li id="menu-item-9700" class="menu-item menu-item-type-custom menu-item-object-custom nectar-regular-menu-item menu-item-9700"><a href="/community/"><span class="menu-title-text">Special Interest Groups (SIGs)</span></a></li> 476 <li id="menu-item-385" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-385"><a href="https://cd.foundation/about/toc/"><span class="menu-title-text">Technical Oversight Committee (TOC)</span></a></li> 477</ul> 478</li> 479<li id="menu-item-6467" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children nectar-regular-menu-item menu-item-6467"><a href="#" aria-haspopup="true" aria-expanded="false"><span class="menu-title-text">Technology</span></a> 480<ul class="sub-menu"> 481 <li id="menu-item-759" class="menu-item menu-item-type-custom menu-item-object-custom nectar-regular-menu-item menu-item-759"><a href="https://landscape.cd.foundation/"><span class="menu-title-text">CD Landscape</span></a></li> 482 <li id="menu-item-9000" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-9000"><a href="https://cd.foundation/projects/"><span class="menu-title-text">Projects â¨</span></a></li> 483 <li id="menu-item-864" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-864"><a href="https://cd.foundation/project-services/"><span class="menu-title-text">Project Services</span></a></li> 484 <li id="menu-item-861" class="menu-item menu-item-type-custom menu-item-object-custom nectar-regular-menu-item menu-item-861"><a href="https://github.com/cdfoundation/toc/blob/master/PROJECT_LIFECYCLE.md#project-proposal-requirements"><span class="menu-title-text">Propose a Project</span></a></li> 485</ul> 486</li> 487<li id="menu-item-6469" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children nectar-regular-menu-item menu-item-6469"><a href="#" aria-haspopup="true" aria-expanded="false"><span class="menu-title-text">Resources</span></a> 488<ul class="sub-menu"> 489 <li id="menu-item-9537" class="menu-item menu-item-type-custom menu-item-object-custom nectar-regular-menu-item menu-item-9537"><a href="https://bestpractices.cd.foundation/"><span class="menu-title-text">Best Practices</span></a></li> 490 <li id="menu-item-16663" class="menu-item menu-item-type-custom menu-item-object-custom nectar-regular-menu-item menu-item-16663"><a href="https://cybersecurity.cd.foundation/cicd-security-guide/"><span class="menu-title-text">Cybersecurity Guide</span></a></li> 491 <li id="menu-item-12479" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-12479"><a href="https://cd.foundation/publications/"><span class="menu-title-text">Publications</span></a></li> 492 <li id="menu-item-8004" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-8004"><a href="https://cd.foundation/reports/"><span class="menu-title-text">Reports</span></a></li> 493 <li id="menu-item-13738" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-13738"><a href="https://cd.foundation/state-of-cicd-2024/"><span class="menu-title-text">
493State of CI/CD Report</span></a></li> 494 <li id="menu-item-18003" class="menu-item menu-item-type-custom menu-item-object-custom nectar-regular-menu-item menu-item-18003"><a href="https://techstrong.tv/videos/cd-pipeline"><span class="menu-title-text">Techstrong: CD Pipeline</span></a></li> 495 <li id="menu-item-1362" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-1362"><a href="https://cd.foundation/training/"><span class="menu-title-text">Training</span></a></li> 496</ul> 497</li> 498<li id="menu-item-154" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children nectar-regular-menu-item menu-item-154"><a href="https://cd.foundation/news/" aria-haspopup="true" aria-expanded="false"><span class="menu-title-text">Blog & Events</span></a> 499<ul class="sub-menu"> 500 <li id="menu-item-198" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-198"><a href="https://cd.foundation/news/announcements/"><span class="menu-title-text">Announcements</span></a></li> 501 <li id="menu-item-196" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-196"><a href="https://cd.foundation/news/blog/"><span class="menu-title-text">Blog</span></a></li> 502 <li id="menu-item-16858" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-16858"><a href="https://cd.foundation/cdcon-2026/"><span class="menu-title-text">cdCon 2026</span></a></li> 503 <li id="menu-item-552" class="menu-item menu-item-type-custom menu-item-object-custom nectar-regular-menu-item menu-item-552"><a href="/events/list/"><span class="menu-title-text">Events</span></a></li> 504 <li id="menu-item-362" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-362"><a href="https://cd.foundation/news/in-the-news/"><span class="menu-title-text">News</span></a></li> 505 <li id="menu-item-760" class="menu-item menu-item-type-custom menu-item-object-custom nectar-regular-menu-item menu-item-760"><a href="https://www.meetup.com/pro/cicd-cdf"><span class="menu-title-text">Meetups</span></a></li> 506</ul> 507</li> 508<li id="menu-item-6515" class="menu-item menu-item-type-post_type menu-item-object-page button_solid_color menu-item-6515"><a href="https://cd.foundation/join/"><span class="menu-title-text">Become a Member</span></a></li> 509<li id="social-in-menu" class="button_social_group"><a target="_blank" rel="noopener" href="https://twitter.com/CDeliveryFdn"><span class="screen-reader-text">twitter</span><i class="fa fa-twitter" aria-hidden="true"></i> </a><a target="_blank" rel="noopener" href="https://www.linkedin.com/company/cdeliveryfdn"><span class="screen-reader-text">linkedin</span><i class="fa fa-linkedin" aria-hidden="true"></i> </a><a target="_blank" rel="noopener" href="https://www.youtube.com/channel/UC7HcWhSetq6nTlpMXPHKz_A?disable_polymer=true"><span class="screen-reader-text">youtube</span><i class="fa fa-youtube-play" aria-hidden="true"></i> </a><a target="_blank" rel="noopener" href="https://github.com/cdfoundation"><span class="screen-reader-text">github</span><i class="fa fa-github-alt" aria-hidden="true"></i> </a><a target="_blank" rel="noopener" href="https://join.slack.com/t/cdeliveryfdn/shared_invite/zt-44c6rpi1z-dFDPNRchD37ehiyB6QcdnQ"><span class="screen-reader-text">slack</span><i class="fa fa-slack" aria-hidden="true"></i> </a></li> </ul> 510 <ul class="buttons sf-menu" data-user-set-ocm="off"><li id="search-btn"><div><a href="#search-box"><span class="icon-salient-search" aria-hidden="true"></span><span class="screen-reader-text">search</span></a></div> </li></ul> 511 512 </nav> 513 514 515 </div><!--/span_9--> 516 517 518 </div><!--/row--> 519 </div><!--/container--> 520 </header> 521 522 </div> 523
523<script type="text/javascript" nonce="14c08f7ff4c14acf3a0285187b266101"> 524 // SIZE #header-space TO THE REAL HEADER HEIGHT IMMEDIATELY, RATHER THAN WAITING FOR THE 525 // window.load EVENT (SALIENT'S headerSpace() DOESN'T RUN UNTIL THEN). THE STATIC 90px 526 // DEFAULT IN style.css DOESN'T ACCOUNT FOR THE NOTIFICATIONS BAR, SO WITHOUT THIS THE 527 // PAGE VISIBLY JUMPS ONCE ALL ASSETS FINISH LOADING AND SALIENT CORRECTS IT LATE. 528 (function () { 529 var headerEl = document.getElementById('header-outer'); 530 var spaceEl = document.getElementById('header-space'); 531 if (headerEl && spaceEl) { 532 spaceEl.style.height = headerEl.clientHeight + 'px'; 533 } 534 })(); 535 </script>
535 536 537<div id="search-outer" class="nectar" data-nosnippet> 538 <div id="search"> 539 <div class="container"> 540 <div id="search-box"> 541 <div class="inner-wrap"> 542 <div class="col span_12"> 543 <form role="search" action="https://cd.foundation/" method="GET"> 544 <input type="text" name="s" value="Start Typing..." aria-label="Search" data-placeholder="Start Typing..." /> 545 546 <span><i>Press enter to begin your search</i></span> 547 <button aria-label="Search" class="search-box__button" type="submit">Search</button> </form> 548 </div><!--/span_12--> 549 </div><!--/inner-wrap--> 550 </div><!--/search-box--> 551 <div id="close"><a href="#" role="button"><span class="screen-reader-text">Close Search</span> 552 <span class="icon-salient-x" aria-hidden="true"></span> </a></div> 553 </div><!--/container--> 554 </div><!--/search--> 555</div><!--/search-outer--> 556 <div id="ajax-content-wrap"> 557<div class="container-wrap"> 558 <div class="container main-content" role="main"> 559 <div class="row"> 560 561 <div id="fws_6ab4e4478d916" data-column-margin="default" data-midnight="light" data-top-percent="2%" data-bottom-percent="2%" class="wpb_row vc_row-fluid vc_row top-level full-width-section vc_row-o-equal-height vc_row-flex vc_row-o-content-middle" style="padding-top: calc(100vw * 0.02); padding-bottom: calc(100vw * 0.02); "><div class="row-bg-wrap" data-bg-animation="none" data-bg-animation-delay="" data-bg-overlay="false"><div class="inner-wrap row-bg-layer using-image" ><div class="row-bg viewport-desktop using-image" style="background-image: url(https://cd.foundation/wp-content/uploads/sites/35/2026/05/cdf-background-1-scaled.jpg); background-position: center center; background-repeat: no-repeat; "></div></div></div><div class="row_col_wrap_12 col span_12 light left"> 562 <div class="vc_col-sm-3 wpb_column column_container vc_column_container col padding-1-percent inherit_tablet inherit_phone flex_gap_desktop_10px " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0" > 563 <div class="vc_column-inner" > 564 <div class="wpb_wrapper"> 565 <div class="img-with-aniamtion-wrap center" data-max-width="100%" data-max-width-mobile="default" data-border-radius="5px" data-shadow="none" data-animation="fade-in" > 566 <div class="inner"> 567 <div class="hover-wrap"> 568 <div class="hover-wrap-inner"> 569 <a href="https://cd.foundation/blog/2026/07/24/2026-cdf-ambassadors/" target="_self" class="center"> 570 <img fetchpriority="high" decoding="async" class="img-with-animation skip-lazy" data-delay="0" height="400" width="400" data-animation="fade-in" src="https://cd.foundation/wp-content/uploads/sites/35/2026/07/Ambassad
570ors-2026-Cohort.png" alt="CD Foundation Ambassadors 2026 Cohort" srcset="https://cd.foundation/wp-content/uploads/sites/35/2026/07/Ambassadors-2026-Cohort.png 400w, https://cd.foundation/wp-content/uploads/sites/35/2026/07/Ambassadors-2026-Cohort-300x300.png 300w, https://cd.foundation/wp-content/uploads/sites/35/2026/07/Ambassadors-2026-Cohort-150x150.png 150w" sizes="(max-width: 400px) 100vw, 400px" /> 571 </a> 572 </div> 573 </div> 574 575 </div> 576 </div> 577 </div> 578 </div> 579 </div> 580 581 <div class="vc_col-sm-9 wpb_column column_container vc_column_container col no-extra-padding inherit_tablet inherit_phone flex_gap_desktop_10px " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0" > 582 <div class="vc_column-inner" > 583 <div class="wpb_wrapper"> 584 <h2 style="text-align: left;font-family:Abril Fatface;font-weight:400;font-style:normal" class="vc_custom_heading vc_do_custom_heading" ></p> 585<h3>Welcome 2026 Ambassadors!</h3> 586<h4>We're so happy to welcome new and returning ambassadors as well as the new Ambassador Chair, Yair Etziony!</h4> 587<p></h2><div class="divider-wrap" data-alignment="default"><div style="height: 15px;" class="divider"></div></div><a class="nectar-button large regular extra-color-2 regular-button" role="button" style="margin-right: 4px; color: #f7941d; " target="_blank" href="https://cd.foundation/blog/2026/07/24/2026-cdf-ambassadors/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>View Ambassadors</span></a> 588 </div> 589 </div> 590 </div> 591</div></div> 592 <div id="fws_6ab4e4478edbd" data-column-margin="default" data-midnight="dark" data-top-percent="2%" data-bottom-percent="1%" class="wpb_row vc_row-fluid vc_row full-width-section" style="padding-top: calc(100vw * 0.02); padding-bottom: calc(100vw * 0.01); "><div class="row-bg-wrap" data-bg-animation="none" data-bg-animation-delay="" data-bg-overlay="false"><div class="inner-wrap row-bg-layer" ><div class="row-bg viewport-desktop" style=""></div></div></div><div class="row_col_wrap_12 col span_12 dark left"> 593 <div class="vc_col-sm-12 wpb_column column_container vc_column_container col centered-text no-extra-padding inherit_tablet inherit_phone flex_gap_desktop_10px " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0" > 594 <div class="vc_column-inner" > 595 <div class="wpb_wrapper"> 596 <h4 style="text-align: center" class="vc_custom_heading vc_do_custom_heading" ><b>A vendor-neutral home for open source projects that power the modern software factory</b></h4><p style="text-align: center" class="vc_custom_heading vc_do_custom_heading" >Bringing together builders, end-users, and vendors to govern and advance the software delivery control plane, where automation, security, and intelligence converge to build and operate both traditional and AI-enabled applications with speed and resilience</p><div id="fws_6ab4e44795519" data-midnight="" data-column-margin="default" class="wpb_row vc_row-fluid vc_row inner_row" style=""><div class="row-bg-wrap"> <div class="row-bg" ></div> </div><div class="row_col_wrap_12_inner col span_12 left"> 597 <div class="vc_col-sm-3 wpb_column column_container vc_column_container col child_column no-extra-padding inherit_tablet inherit_phone flex_gap_desktop_10px " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0" > 598 <div class="vc_column-inner" > 599 <div class="wpb_wrapper"> 600 <a class="nectar-button large regular accent-color regular-button fixed-size" role="button" style="margin-right: 25px; margin-left: 25px;" target="_blank" href="https://bestpractices.cd.foundation/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>Adopt CI/CD Best Practices</span></a> 601 </div> 602 </div> 603 </div> 604 605 <div class="vc_col-sm-3 wpb_column column_container vc_column_container col child_column no-extra-padding inherit_tablet inherit_phone flex_gap_desktop_10px " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0" > 606 <div class="vc_column-inner" > 607 <div class="wpb_wrapper"> 608 <a class="nectar-button large regular accent-color regular-button fixed-size" role="button" style="margin-right: 25px; margin-left: 25px;" target="_blank" href="https://cybersecurity.cd.foundation/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>CI/CD Cybersecurity Guide</span></a> 609 </div> 610 </div> 611 </div> 612 613 <div class="vc_col-sm-3 wpb_column column_container vc_column_container col child_column no-extra-padding inherit_tablet inherit_phone flex_gap_desktop_10px " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0" > 614 <div class="vc_column-inner" > 615 <div class="wpb_wrapper"> 616 <a class="nectar-button large regular accent-color regular-button fixed-size" role="button" style="margin-right: 25px; margin-left: 25px;" target="_blank" href="https://join.slack.com/t/cdeliveryfdn/shared_invite/zt-3ehvxp6wl-e8MKrqohaeKfU6nYanFRTQ" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>Join Slack Channel</span></a> 617 </div> 618 </div> 619 </div> 620 621 <div class="vc_col-sm-3 wpb_column column_container vc_column_container col child_column no-extra-padding inherit_tablet inherit_phone flex_gap_desktop_10px " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0" > 622 <div class="vc_column-inner" > 623 <div class="wpb_wrapper"> 624 <a class="nectar-button large regular accent-color regular-button fixed-size" role="button" style="margin-right: 25px; margin-left: 25px;" href="/community/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>Projects & Community</span></a> 625 </div> 626 </div> 627 </div> 628</div></div> 629 </div> 630 </div> 631 </div> 632</div></div> 633 <div id="fws_6ab4e44796204" data-column-margin="default" data-midnight="dark" class="wpb_row vc_row-fluid vc_row" style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-animation-delay="" data-bg-overlay="false"><div class="inner-wrap row-bg-layer" ><div class="row-bg viewport-desktop" style=""></div></div></div><div class="row_col_wrap_12 col span_12 dark left"> 634 <div class="vc_col-sm-12 wpb_column column_container vc_column_container col padding-2-percent inherit_tablet inherit_phone flex_gap_desktop_10px " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0" > 635 <div class="vc_column-inner" > 636 <div class="wpb_wrapper"> 637 <h3 style="text-align: left" class="vc_custom_heading vc_do_custom_heading" >
637<a href="https://cd.foundation/news/blog/">Latest Blog Posts</a></h3><div class="grid-design outer"><div class="vc_col-sm-3 grid-design recent-posts"><div class="grid-design inner"><a href="https://cd.foundation/blog/2026/09/23/fix-cd-hallucinating-world/"><img decoding="async" width="800" height="800" src="https://cd.foundation/wp-content/uploads/sites/35/2026/09/Fix-CD-in-a-Hallucinating-World-800-x-800-px-1.png" class="attachment-large size-large wp-post-image" alt="" srcset="https://cd.foundation/wp-content/uploads/sites/35/2026/09/Fix-CD-in-a-Hallucinating-World-800-x-800-px-1.png 800w, https://cd.foundation/wp-content/uploads/sites/35/2026/09/Fix-CD-in-a-Hallucinating-World-800-x-800-px-1-300x300.png 300w, https://cd.foundation/wp-content/uploads/sites/35/2026/09/Fix-CD-in-a-Hallucinating-World-800-x-800-px-1-150x150.png 150w" sizes="(max-width: 800px) 100vw, 800px" /></a><div class='category-time-wrapper'><div class="grid-design date"><span class="byline-date-wrap"><span class="byline">CD Foundation</span> | <span class="publish-date">Sep 23, 2026</span></span></div></div><a class="grid-design title" href="https://cd.foundation/blog/2026/09/23/fix-cd-hallucinating-world/">Fixing CD in a Hallucinating World</a></div></div><div class="vc_col-sm-3 grid-design recent-posts"><div class="grid-design inner"><a href="https://cd.foundation/blog/2026/08/21/mcp-cdevents/"><img decoding="async" width="800" height="800" src="https://cd.foundation/wp-content/uploads/sites/35/2026/08/MCP-and-CDEvents.png" class="attachment-large size-large wp-post-image" alt="MCP and CDEvents" srcset="https://cd.foundation/wp-content/uploads/sites/35/2026/08/MCP-and-CDEvents.png 800w, https://cd.foundation/wp-content/uploads/sites/35/2026/08/MCP-and-CDEvents-300x300.png 300w, https://cd.foundation/wp-content/uploads/sites/35/2026/08/MCP-and-CDEvents-150x150.png 150w" sizes="(max-width: 800px) 100vw, 800px" /></a><div class='category-time-wrapper'><div class="grid-design date"><span class="byline-date-wrap"><span class="byline">CD Foundation</span> | <span class="publish-date">Aug 21, 2026</span></span></div></div><a class="grid-design title" href="https://cd.foundation/blog/2026/08/21/mcp-cdevents/">MCP Connects Tools, CDEvents Provides Meaning: Why Syntactic Message Passing Is Not Interoperability</a></div></div><div class="vc_col-sm-3 grid-design recent-posts"><div class="grid-design inner"><a href="https://cd.foundation/blog/2026/08/18/spinnaker-roadmap/"><img decoding="async" width="800" height="800" src="https://cd.foundation/wp-content/uploads/sites/35/2026/08/Spinnaker-Workshop-v1.png" class="attachment-large size-large wp-post-image" alt="Spinnaker Roadmap 2026" srcset="https://cd.foundation/wp-content/uploads/sites/35/2026/08/Spinnaker-Workshop-v1.png 800w, https://cd.foundation/wp-content/uploads/sites/35/2026/08/Spinnaker-Workshop-v1-300x300.png 300w, https://cd.foundation/wp-content/uploads/sites/35/2026/08/Spinnaker-Workshop-v1-150x150.png 150w" sizes="(max-width: 800px) 100vw, 800px" /></a><div class='category-time-wrapper'><div class="grid-design date"><span class="byline-date-wrap"><span class="byline">CD Foundation</span> | <span class="publish-date">Aug 18, 2026</span></span></div></div><a class="grid-design title" href="https://cd.foundation/blog/2026/08/18/spinnaker-roadmap/">Spinnaker: Full Roadmap & Upcoming Release</a></div></div><div class="vc_col-sm-3 grid-design recent-posts"><div class="grid-design inner"><a href="https://cd.foundation/blog/2026/08/14/continuous-spotlight-pawel-piwosz/"><img decoding="async" width="800" height="800" src="https://cd.foundation/wp-content/uploads/sites/35/2026/08/Continuous-Spotlight-Pawel-Piwosz-sq.png" class="attachment-large size-large wp-post-image" alt="Continuous Spotlight - Pawel Piwosz" srcset="https://cd.foundation/wp-content/uploads/sites/35/2026/08/Continuous-Spotlight-Pawel-Piwosz-sq.png 800w, https://cd.foundation/wp-content/uploads/sites/35/2026/08/Continuous-Spotlight-Pawel-Piwosz-sq-300x300.png 300w, https://cd.foundation/wp-content/uploads/sites/35/2026/08/Continuous-Spotlight-Pawel-Piwosz-sq-150x150.png 150w" sizes="(max-width: 800px) 100v
637w, 800px" /></a><div class='category-time-wrapper'><div class="grid-design date"><span class="byline-date-wrap"><span class="byline">CD Foundation</span> | <span class="publish-date">Aug 14, 2026</span></span></div><div class="grid-tags-wrapper"><a class="grid-tag" href="https://cd.foundation/tag/continuous-spotlight/"><span style="background-color:#f7941d; border-radius:15px; padding:5px 10px; color:#ffffff; display:block; white-space: normal;">Continuous Spotlight</span></a><span class="grid-tags-comma"> </span><a class="grid-tag" href="https://cd.foundation/tag/devops/"><span style="background-color:#f7941d; border-radius:15px; padding:5px 10px; color:#ffffff; display:block; white-space: normal;">DevOps</span></a></div></div><a class="grid-design title" href="https://cd.foundation/blog/2026/08/14/continuous-spotlight-pawel-piwosz/">Continuous Spotlight | PaweÅ Piwosz</a></div></div></div> 638 </div> 639 </div> 640 </div> 641</div></div> 642 <div id="fws_6ab4e44798c66" data-column-margin="default" data-midnight="dark" data-bottom-percent="2%" class="wpb_row vc_row-fluid vc_row full-width-section has-row-bg-color" style="padding-top: 0px; padding-bottom: calc(100vw * 0.02); --row-bg-color: #F5F5F5;"><div class="row-bg-wrap" data-bg-animation="none" data-bg-animation-delay="" data-bg-overlay="false"><div class="inner-wrap row-bg-layer" ><div class="row-bg viewport-desktop using-bg-color" style="background-color: #F5F5F5; "></div></div></div><div class="nectar-shape-divider-wrap no-color " style=" height:2%;" data-using-percent-val="true" data-height="2%" data-front="" data-style="straight_section" data-position="top" ><svg class="nectar-shape-divider" aria-hidden="true" fill="" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 10" preserveAspectRatio="none"> <polygon points="104 10, 104 0, 0 0, 0 10"></polygon> </svg></div><div class="row_col_wrap_12 col span_12 dark left"> 643 <div class="vc_col-sm-6 wpb_column column_container vc_column_container col padding-2-percent inherit_tablet inherit_phone flex_gap_desktop_10px " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0" > 644 <div class="vc_column-inner" > 645 <div class="wpb_wrapper"> 646 <h3 style="text-align: left" class="vc_custom_heading vc_do_custom_heading" >Recent Publications</h3><p style="text-align: left" class="vc_custom_heading vc_do_custom_heading" >Read the latest publications including a CDF User Story by SAS and the fourth State of CI/CD Report</p><div id="fws_6ab4e447990f2" data-midnight="" data-column-margin="default" class="wpb_row vc_row-fluid vc_row inner_row" style=""><div class="row-bg-wrap"> <div class="row-bg" ></div> </div><div class="row_col_wrap_12_inner col span_12 left"> 647 <div class="vc_col-sm-6 wpb_column column_container vc_column_container col child_column no-extra-padding inherit_tablet inherit_phone flex_gap_desktop_10px " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0" > 648 <div class="vc_column-inner" > 649 <div class="wpb_wrapper"> 650 <div class="img-with-aniamtion-wrap center" data-max-width="100%" data-max-width-mobile="default" data-shadow="none" data-animation="none" > 651 <div class="inner"> 652 <div class="hover-wrap"> 653 <div class="hover-wrap-inner"> 654 <a href="https://cd.foundation/wp-content/uploads/sites/35/2025/04/SAS_CDF_User_Story_2025.pdf" target="_self" class="center"> 655 <img decoding="async" class="img-with-animation skip-lazy" data-delay="0" height="800" width="800" data-animation="none" src="https://cd.foundation/wp-content/uploads/sites/35/2025/04/SAS-User-Story-Graphic-Blue-800-x-800-px.png" alt="SAS User Story Graphic" srcset="https://cd.foundation/wp-content/uploads/sites/35/2025/04/SAS-User-Story-Graphic-Blue-800-x-800-px.png 800w, https://cd.foundation/wp-content/uploads/sites/35/2025/04/SAS-User-Story-Graphic-Blue-800-x-800-px-300x300.png 300w, https://cd.foundation/wp-content/uploads/sites/35/2025/04/SAS-User-Story-Graphic-Blue-800-x-800-px-150x150.png 150w" sizes="(max-width: 800px) 100v
655w, 800px" /> 656 </a> 657 </div> 658 </div> 659 660 </div> 661 </div> 662 </div> 663 </div> 664 </div> 665 666 <div class="vc_col-sm-6 wpb_column column_container vc_column_container col child_column no-extra-padding inherit_tablet inherit_phone flex_gap_desktop_10px " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0" > 667 <div class="vc_column-inner" > 668 <div class="wpb_wrapper"> 669 <div class="img-with-aniamtion-wrap center" data-max-width="100%" data-max-width-mobile="default" data-shadow="none" data-animation="none" > 670 <div class="inner"> 671 <div class="hover-wrap"> 672 <div class="hover-wrap-inner"> 673 <a href="https://cd.foundation/state-of-cicd-2024/" target="_self" class="center"> 674 <img decoding="async" class="img-with-animation skip-lazy" data-delay="0" height="1600" width="1600" data-animation="none" src="https://cd.foundation/wp-content/uploads/sites/35/2024/04/State-of-CICD-Report-sq-shorthand.jpg" alt="State of CI/CD Report 2024" srcset="https://cd.foundation/wp-content/uploads/sites/35/2024/04/State-of-CICD-Report-sq-shorthand.jpg 1600w, https://cd.foundation/wp-content/uploads/sites/35/2024/04/State-of-CICD-Report-sq-shorthand-300x300.jpg 300w, https://cd.foundation/wp-content/uploads/sites/35/2024/04/State-of-CICD-Report-sq-shorthand-1024x1024.jpg 1024w, https://cd.foundation/wp-content/uploads/sites/35/2024/04/State-of-CICD-Report-sq-shorthand-150x150.jpg 150w" sizes="(max-width: 1600px) 100vw, 1600px" /> 675 </a> 676 </div> 677 </div> 678 679 </div> 680 </div> 681 </div> 682 </div> 683 </div> 684</div></div> 685 </div> 686 </div> 687 </div> 688 689 <div class="vc_col-sm-6 wpb_column column_container vc_column_container col padding-2-percent inherit_tablet inherit_phone flex_gap_desktop_10px " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0" > 690 <div class="vc_column-inner" > 691 <div class="wpb_wrapper"> 692 <h3 style="text-align: left" class="vc_custom_heading vc_do_custom_heading" >The CD Pipeline Episodes</h3><p style="text-align: left" class="vc_custom_heading vc_do_custom_heading" ><a href="https://youtu.be/M7h6nBhRKpk">Why Be a Member of an Open Source Foundation?</a></p> 693 <div class="wpb_video_widget wpb_content_element vc_clearfix vc_video-aspect-ratio-169 vc_video-el-width-100 vc_video-align-left" > 694 <div class="wpb_wrapper"> 695 696 <div class="wpb_video_wrapper"><iframe title="Why Be a Member of an Open Source Foundation?" width="500" height="281" src="https://www.youtube.com/embed/M7h6nBhRKpk?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></div> 697 </div> 698 </div> 699 700 </div> 701 </div> 702 </div> 703</div></div> 704 </div> 705 </div> 706 </div> 707 708<div id="footer-outer" data-midnight="light" data-cols="2" data-custom-color="false" data-disable-copyright="false" data-matching-section-color="true" data-copyright-line="true" data-using-bg-img="false" data-bg-img-overlay="0.8" data-full-width="false" data-using-widget-area="true" data-link-hover="default"role="contentinfo"> 709 710 711<div id="call-to-action"> 712 <div class="container"> 713 <div class="triangle"></div> 714 <span> </span> 715 <a class="nectar-button 716 see-through" data-color-override="false" href="https://cd.foundation/stay-connected/"> 717 Sign up for CDF newsletter and updates </a> 718 </div> 719</div> 720 721 722 <div id="footer-widgets" data-has-widgets="false" data-cols="2"> 723 724 <div class="container"> 725 726 727 <div class="row"> 728 729 730 <div class="col span_6"> 731 <div class="widget"> 732 </div> 733 </div> 734 735 736 <div class="col span_6"> 737 <div class="widget"> 738 </div> 739 740 </div> 741 742 743 744 745 746 </div> 747 </div><!--/container--> 748 </div><!--/footer-widgets--> 749 750 751 <div class="row" id="copyright" data-layout="default"> 752 753 <div class="container"> 754 755 <div class="col span_5"> 756 757 <p>Copyright © 2025 CD Foundation The Linux Foundation® . All rights reserved. The Linux Foundation has registered trademarks and uses trademarks. For a list of trademarks of The Linux Foundation, please see our <a href="https://www.linuxfoundation.org/trademark-usage">Trademark Usage</a> page. Linux is a registered trademark of Linus Torvalds. <a href="http://www.linuxfoundation.org/privacy">Privacy Policy</a> and <a href="http://www.linuxfoundation.org/terms">Terms of Use</a>.</p> 758 </div><!--/span_5--> 759 760 <div class="col span_7 col_last"> 761 <ul class="social"> 762 <li><a target="_blank" rel="noopener" href="https://twitter.com/CDeliveryFdn"><span class="screen-reader-text">twitter</span><i class="fa fa-twitter" aria-hidden="true"></i></a></li><li><a target="_blank" rel="noopener" href="https://www.linkedin.com/company/cdeliveryfdn"><span class="screen-reader-text">linkedin</span><i class="fa fa-linkedin" aria-hidden="true"></i></a></li><li><a target="_blank" rel="noopener" href="https://www.youtube.com/channel/UC7HcWhSetq6nTlpMXPHKz_A?disable_polymer=true"><span class="screen-reader-text">youtube</span><i class="fa fa-youtube-play" aria-hidden="true"></i></a></li><li><a target="_blank" rel="noopener" href="https://github.com/cdfoundation"><span class="screen-reader-text">github</span><i class="fa fa-github-alt" aria-hidden="true"></i></a></li><li><a target="_blank" rel="noopener" href="https://join.slack.com/t/cdeliveryfdn/shared_invite/zt-44c6rpi1z-dFDPNRchD37ehiyB6QcdnQ"><span class="screen-reader-text">slack</span><i class="fa fa-slack" aria-hidden="true"></i></a></li> </ul> 763 </div><!--/span_7--> 764 765 766 </div><!--/container--> 767 </div><!--/row--> 768 769</div><!--/footer-outer--> 770 771 772 <div id="slide-out-widget-area-bg" class="slide-out-from-right dark">
773 </div> 774 775 <div id="slide-out-widget-area" role="dialog" aria-modal="true" aria-label="Off Canvas Menu" class="slide-out-from-right" data-dropdown-func="separate-dropdown-parent-link" data-back-txt="Back"> 776 777 <div class="inner-wrap"> 778 <div class="inner" data-prepend-menu-mobile="false"> 779 780 <a class="slide_out_area_close" href="#"><span class="screen-reader-text">Close Menu</span> 781 <span class="icon-salient-x icon-default-style"></span> </a> 782 783 784 <div class="off-canvas-menu-container mobile-only" role="navigation"> 785 786 787 <ul class="menu"> 788 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-61"><a href="https://cd.foundation/about/" aria-haspopup="true" aria-expanded="false">About</a> 789<ul class="sub-menu"> 790 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-17367"><a href="https://cd.foundation/about/">What is the CDF?</a></li> 791 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-16824"><a href="https://cd.foundation/annual-report-2025/">Annual Report 2025</a></li> 792 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-5692"><a href="https://cd.foundation/join/">Become a Member ð·</a></li> 793 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-8725"><a href="https://cd.foundation/members/">Members</a></li> 794 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-209"><a href="https://github.com/cdfoundation/charter">Charter</a></li> 795 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-7932"><a href="https://cd.foundation/about/staff/">Team</a></li> 796 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-68"><a href="https://cd.foundation/about/contact/">Contact</a></li> 797</ul> 798</li> 799<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-6466"><a href="/community/" aria-haspopup="true" aria-expanded="false">Community</a> 800<ul class="sub-menu"> 801 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-9258"><a href="https://cd.foundation/ambassadors/">Ambassadors</a></li> 802 <li class="menu-item menu-item-type-post_type menu-item-object-post menu-item-17622"><a href="https://cd.foundation/blog/2026/05/20/2026-award-winners/">Awards ð</a></li> 803 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10115"><a href="https://calendar.google.com/calendar/u/0/embed?src=linuxfoundation.org_mhf0kmgedn67ihni8r129avp24@group.calendar.google.com&ctz=UTC">Community Calendar</a></li> 804 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-13418"><a href="/community/">Join our Community</a></li> 805 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-386"><a href="https://cd.foundation/about/governing-board/">Governing Board</a></li> 806 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-9700"><a href="/community/">Special Interest Groups (SIGs)</a></li> 807 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-385"><a href="https://cd.foundation/about/toc/">Technical Oversight Committee (TOC)</a></li> 808</ul> 809</li> 810<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-6467"><a href="#" aria-haspopup="true" aria-expanded="false">Technology</a> 811<ul class="sub-menu"> 812 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-759"><a href="https://landscape.cd.foundation/">CD Landscape</a></li> 813 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-9000"><a href="https://cd.foundation/projects/">Projects â¨</a></li> 814 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-864"><a href="https://cd.foundation/project-services/">Project Services</a></li> 815 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-861"><a href="https://github.com/cdfoundation/toc/blob/master/PROJECT_LIFECYCLE.md#project-proposal-requirements">Propose a Project</a></li> 816</ul> 817</li> 818<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-6469"><a href="#" aria-haspopup="true" aria-expanded="false">Resources</a> 819<ul class="sub-menu"> 820 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-9537"><a href="https://bestpractices.cd.foundation/">Best Practices</a></li> 821 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-16663"><a href="https://cybersecurity.cd.foundation/cicd-security-guide/">
821Cybersecurity Guide</a></li> 822 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-12479"><a href="https://cd.foundation/publications/">Publications</a></li> 823 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-8004"><a href="https://cd.foundation/reports/">Reports</a></li> 824 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13738"><a href="https://cd.foundation/state-of-cicd-2024/">State of CI/CD Report</a></li> 825 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-18003"><a href="https://techstrong.tv/videos/cd-pipeline">Techstrong: CD Pipeline</a></li> 826 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1362"><a href="https://cd.foundation/training/">Training</a></li> 827</ul> 828</li> 829<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-154"><a href="https://cd.foundation/news/" aria-haspopup="true" aria-expanded="false">Blog & Events</a> 830<ul class="sub-menu"> 831 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-198"><a href="https://cd.foundation/news/announcements/">Announcements</a></li> 832 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-196"><a href="https://cd.foundation/news/blog/">Blog</a></li> 833 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-16858"><a href="https://cd.foundation/cdcon-2026/">cdCon 2026</a></li> 834 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-552"><a href="/events/list/">Events</a></li> 835 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-362"><a href="https://cd.foundation/news/in-the-news/">News</a></li> 836 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-760"><a href="https://www.meetup.com/pro/cicd-cdf">Meetups</a></li> 837</ul> 838</li> 839<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-6515"><a href="https://cd.foundation/join/">Become a Member</a></li> 840 841 </ul> 842 843 <ul class="menu secondary-header-items"> 844 </ul> 845 </div> 846 847 </div> 848 849 <div class="bottom-meta-wrap"><ul class="off-canvas-social-links mobile-only"><li><a target="_blank" rel="noopener" href="https://twitter.com/CDeliveryFdn"><span class="screen-reader-text">twitter</span><i class="fa fa-twitter" aria-hidden="true"></i> </a></li><li><a target="_blank" rel="noopener" href="https://www.linkedin.com/company/cdeliveryfdn"><span class="screen-reader-text">linkedin</span><i class="fa fa-linkedin" aria-hidden="true"></i> </a></li><li><a target="_blank" rel="noopener" href="https://www.youtube.com/channel/UC7HcWhSetq6nTlpMXPHKz_A?disable_polymer=true"><span class="screen-reader-text">youtube</span><i class="fa fa-youtube-play" aria-hidden="true"></i> </a></li><li><a target="_blank" rel="noopener" href="https://github.com/cdfoundation"><span class="screen-reader-text">github</span><i class="fa fa-github-alt" aria-hidden="true"></i> </a></li><li><a target="_blank" rel="noopener" href="https://join.slack.com/t/cdeliveryfdn/shared_invite/zt-44c6rpi1z-dFDPNRchD37ehiyB6QcdnQ"><span class="screen-reader-text">slack</span><i class="fa fa-slack" aria-hidden="true"></i> </a></li></ul></div><!--/bottom-meta-wrap--></div> <!--/inner-wrap--> 850 </div> 851 852</div> <!--/ajax-content-wrap--> 853 854 <a id="to-top" aria-label="Back to top" role="button" href="#" class="mobile-disabled"><i role="presentation" class="fa fa-angle-up"></i></a> 855
855<script type="speculationrules"> 856{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/sites/35/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/salient-child/*","/wp-content/themes/salient/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 857</script>
857 858<a href="#" class="cookie-settings-link" aria-label="Cookie Settings"><?xml version="1.0" encoding="UTF-8"?> 859<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 400 400"> 860 <!-- Generator: Adobe Illustrator 30.8.0, SVG Export Plug-In . SVG Version: 2.1.4 Build 114) --> 861 <defs> 862 <style> 863 .st0 { 864 fill: #fff; 865 stroke: #d5d5d5; 866 stroke-miterlimit: 10; 867 } 868 </style> 869 </defs> 870 <circle class="st0" cx="200" cy="200" r="196.5"/> 871 <path d="M354.5,169.9c-1.9.5-3.8.7-5.8.7-12.8,0-23.2-10.4-23.2-23.2s.3-4,.8-5.9c-5.6,3.7-12.2,5.9-19.5,5.9-19.3,0-34.9-15.6-34.9-34.9h0c-.9,0-1.8,0-2.8,0-24.3,0-43.9-19.7-43.9-43.9s1.8-14.2,4.9-20.2c-8.6-1.5-17.5-2.3-26.6-2.3-85.1,0-154,68.9-154,154s68.9,154,154,154,154-68.9,154-154-1-20.4-3-30.2ZM126.1,286.5c-11.2,0-20.3-9.1-20.3-20.3s9.1-20.3,20.3-20.3,20.3,9.1,20.3,20.3-9.1,20.3-20.3,20.3ZM129.9,193.1c-12.2,0-22.1-9.9-22.1-22.1s9.9-22.1,22.1-22.1,22.1,9.9,22.1,22.1-9.9,22.1-22.1,22.1ZM152.8,105.5c-7.8,0-14.1-6.3-14.1-14.1s6.3-14.1,14.1-14.1,14.1,6.3,14.1,14.1-6.3,14.1-14.1,14.1ZM191.3,135.1c0-9.1,7.4-16.5,16.5-16.5s16.5,7.4,16.5,16.5-7.4,16.5-16.5,16.5-16.5-7.4-16.5-16.5ZM225.1,308.8c-7.8,0-14.1-6.3-14.1-14.1s6.3-14.1,14.1-14.1,14.1,6.3,14.1,14.1-6.3,14.1-14.1,14.1ZM225.1,240.8c-10.5,0-19-8.5-19-19s8.5-19,19-19,19,8.5,19,19-8.5,19-19,19ZM295.6,259.3c-9.8,0-17.8-8-17.8-17.8s8-17.8,17.8-17.8,17.8,8,17.8,17.8-8,17.8-17.8,17.8Z"/> 872</svg></a>
872<script type="text/javascript" nonce="14c08f7ff4c14acf3a0285187b266101"> /* <![CDATA[ */var tribe_l10n_datatables = {"aria":{"sort_ascending":": activate to sort column ascending","sort_descending":": activate to sort column descending"},"length_menu":"Show _MENU_ entries","empty_table":"No data available in table","info":"Showing _START_ to _END_ of _TOTAL_ entries","info_empty":"Showing 0 to 0 of 0 entries","info_filtered":"(filtered from _MAX_ total entries)","zero_records":"No matching records found","search":"Search:","all_selected_text":"All items on this page were selected. ","select_all_link":"Select all pages","clear_selection":"Clear Selection.","pagination":{"all":"All","next":"Next","previous":"Previous"},"select":{"rows":{"0":"","_":": Selected %d rows","1":": Selected 1 row"}},"datepicker":{"dayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"dayNamesShort":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"dayNamesMin":["S","M","T","W","T","F","S"],"monthNames":["January","February","March","April","May","June","July","August","September","October","November","December"],"monthNamesShort":["January","February","March","April","May","June","July","August","September","October","November","December"],"monthNamesMin":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"nextText":"Next","prevText":"Prev","currentText":"Today","closeText":"Done","today":"Today","clear":"Clear"}};/* ]]> */ </script>
872<script id="wpb-modifications"> window.wpbCustomElement = 1; </script>
872<script id="tec-user-agent-js" src="https://cd.foundation/wp-content/plugins/the-events-calendar/common/build/js/user-agent.js?ver=da75d0bdea6dde3898df"></script>
vendor: 1 bytes, line 872
872
873<script id="salient-child-featherlight-script-js" src="https://cd.foundation/wp-content/themes/salient-child/vc-addons/js/featherlight.js?ver=3.6.1"></script>
vendor: 1 bytes, line 873
873
874<script id="youtube-playlist-js" src="https://cd.foundation/wp-content/themes/salient-child/vc-addons/js/youtube-playlist.js?ver=1.0.0"></script>
vendor: 1 bytes, line 874
874
875<script id="cookie-settings-script-js" src="https://cd.foundation/wp-content/themes/salient-child/includes/cookie-settings/cookie-settings.js?ver=18.3.0"></script>
vendor: 1 bytes, line 875
875
876<script id="salient-child-javascript-js" src="https://cd.foundation/wp-content/themes/salient-child/javascript.js?ver=3.6.1"></script>
vendor: 1 bytes, line 876
876
877<script id="jquery-easing-js" src="https://cd.foundation/wp-content/themes/salient/js/build/third-party/jquery.easing.min.js?ver=1.3"></script>
vendor: 1 bytes, line 877
877
878<script id="nectar_priority-js" src="https://cd.foundation/wp-content/themes/salient/js/build/priority.js?ver=18.3.0"></script>
vendor: 1 bytes, line 878
878
879<script id="nectar-transit-js" src="https://cd.foundation/wp-content/themes/salient/js/build/third-party/transit.min.js?ver=0.9.9"></script>
vendor: 1 bytes, line 879
879
880<script id="nectar-waypoints-js" src="https://cd.foundation/wp-content/themes/salient/js/build/third-party/waypoints.js?ver=4.0.2"></script>
vendor: 1 bytes, line 880
880
881<script id="imagesLoaded-js" src="https://cd.foundation/wp-content/themes/salient/js/build/third-party/imagesLoaded.min.js?ver=4.1.4"></script>
vendor: 1 bytes, line 881
881
882<script id="hoverintent-js" src="https://cd.foundation/wp-content/themes/salient/js/build/third-party/hoverintent.min.js?ver=1.9"></script>
vendor: 1 bytes, line 882
882
883<script id="magnific-js" src="https://cd.foundation/wp-content/themes/salient/js/build/third-party/magnific.js?ver=7.0.1"></script>
vendor: 1 bytes, line 883
883
884<script id="anime-js" src="https://cd.foundation/wp-content/themes/salient/js/build/third-party/anime.min.js?ver=4.5.1"></script>
vendor: 1 bytes, line 884
884
885<script id="superfish-js" src="https://cd.foundation/wp-content/themes/salient/js/build/third-party/superfish.js?ver=1.5.8"></script>
vendor: 1 bytes, line 885
885
886<script id="nectar-frontend-js-extra"> 887var nectarLove = {"ajaxurl":"https://cd.foundation/wp-admin/admin-ajax.php","postID":"6489","rooturl":"https://cd.foundation","disqusComments":"false","loveNonce":"45db8a68eb","mapApiKey":""}; 888var nectarOptions = {"delay_js":"false","smooth_scroll":"false","smooth_scroll_strength":"50","quick_search":"false","react_compat":"disabled","header_entrance":"false","body_border_func":"default","disable_box_roll_mobile":"off","body_border_mobile":"0","dropdown_hover_intent":"default","simplify_ocm_mobile":"0","mobile_header_format":"default","ocm_btn_position":"default","left_header_dropdown_func":"default","ajax_add_to_cart":"0","ocm_remove_ext_menu_items":"remove_images","woo_product_filter_toggle":"0","woo_sidebar_toggles":"true","woo_sticky_sidebar":"0","woo_minimal_product_hover":"default","woo_minimal_product_effect":"default","woo_related_upsell_carousel":"false","woo_product_variable_select":"default","woo_using_cart_addons":"false","view_transitions_effect":""}; 889var nectar_front_i18n = {"menu":"Menu","next":"Next","previous":"Previous","close":"Close","slide_of":"Slide %1$s of %2$s","slide":"slide"}; 890//# sourceURL=nectar-frontend-js-extra 891</script>
vendor: 1 bytes, line 891
891
892<script id="nectar-frontend-js" src="https://cd.foundation/wp-content/themes/salient/js/build/init.js?ver=18.3.0"></script>
vendor: 1 bytes, line 892
892
893<script id="touchswipe-js" src="https://cd.foundation/wp-content/plugins/salient-core/js/third-party/touchswipe.min.js?ver=3.1.6"></script>
vendor: 1 bytes, line 893
893
894<script id="wpb_composer_front_js-js" src="https://cd.foundation/wp-content/plugins/js_composer_salient/assets/js/dist/js_composer_front.min.js?ver=8.7.3"></script>
vendor: 1 bytes, line 894
894
895<script id="wp-emoji-settings" type="application/json"> 896{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://cd.foundation/wp-includes/js/wp-emoji-release.min.js?ver=7.1.2"}} 897</script>
vendor: 1 bytes, line 897
897
898<script type="module"> 899/*! This file is auto-generated */ 900var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))}); 901//# sourceURL=https://cd.foundation/wp-includes/js/wp-emoji-loader.min.js 902</script>
vendor: 1 bytes, line 902
902
903<script type="text/javascript" nonce="14c08f7ff4c14acf3a0285187b266101"></script>
903<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRJS-31a57c2b1fe38cc7620","applicationID":"540799145","transactionName":"YAcHNhMDD0NSUU0PC1lNJAEVCw5eHEJYAQE=","queueTime":0,"applicationTime":795,"atts":"TEAEQFsZHE0=","errorBeacon":"bam.nr-data.net","agent":""}</script>
903</body> 904</html> 905<!-- plugin=object-cache-pro client=phpredis metric#hits=12796 metric#misses=38 metric#hit-ratio=99.7 metric#bytes=3754729 metric#prefetches=717 metric#store-reads=45 metric#store-writes=10 metric#store-hits=743 metric#store-misses=17 metric#sql-queries=14 metric#ms-total=792.02 metric#ms-cache=42.62 metric#ms-cache-avg=0.7893 metric#ms-cache-ratio=5.4 -->
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.