It looks like this is a web page, not a feed. I looked for a feed associated with this page, but couldn't find one. Please enter the address of your feed to validate.

Source: https://www.informationweek.com/profile.asp?piddl_userid=514800

  1. <!DOCTYPE html><html lang="en" class="brand-informationweek "><head><meta charSet="utf-8" /><meta name="viewport" content="width=device-width,initial-scale=1" /><title>404 – Page Not Found</title><meta name="robots" content="noindex, max-image-preview:large" /><meta property="og:site_name" content="InformationWeek" /><link rel="preconnect" href="https://fonts.googleapis.com" /><link rel="stylesheet" href="/build/_assets/styles.generated-EQE5VKIA.css" /><link rel="stylesheet" href="/build/_assets/brand.generated-UKWCJF6K.css" /><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&amp;display=swap" /><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&amp;display=swap" /><link rel="icon" type="image/x-icon" href="/build/_assets/informationweek-PQYOD7JA.ico" /><noscript><style type="text/css">.gptHideContent { opacity: 1!important; }</style></noscript><script type="text/javascript" src="https://cdn.cookielaw.org/consent/db797727-a266-409f-983d-f30f1926b3fb/OtAutoBlock.js"></script><script type="text/javascript" src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js" data-domain-script="db797727-a266-409f-983d-f30f1926b3fb"></script><script type="text/javascript">
  2.          var isTargetingCookieSetPrev = false;
  3.          var isInitialLoading = true;
  4.          function OptanonWrapper() {
  5.            var isTargetingCookieSet = /,C0004,/.test(OnetrustActiveGroups)
  6.            if (isTargetingCookieSetPrev === isTargetingCookieSet) {
  7.              isInitialLoading = false;
  8.              return
  9.            }
  10.            isTargetingCookieSetPrev = isTargetingCookieSet
  11.            if (isInitialLoading) {
  12.              isInitialLoading = false;
  13.              return
  14.            }
  15.            googletag.cmd.push(function(){
  16.              googletag.pubads().setRequestNonPersonalizedAds(isTargetingCookieSet ? 0 : 1)
  17.              googletag.pubads().refresh()
  18.            })
  19.          }</script><link rel="preconnect" href="https://dev.visualwebsiteoptimizer.com" /><script type="text/javascript" id="vwoCode">window._vwo_code = window._vwo_code || (function () {
  20.  var account_id = 775579, version = 1.5, settings_tolerance = 2000, library_tolerance = 2500,
  21.    use_existing_jquery = false, is_spa = 1, hide_element = 'body',
  22.    hide_element_style = 'opacity:0 !important;filter:alpha(opacity=0) !important;background:none !important',/* DO NOT EDIT BELOW THIS LINE */
  23.    f = false, d = document, vwoCodeEl = d.querySelector('#vwoCode'), code = {
  24.      use_existing_jquery: function () {
  25.        return use_existing_jquery
  26.      }, library_tolerance: function () {
  27.        return library_tolerance
  28.      }, hide_element_style: function () {
  29.        return '{' + hide_element_style + '}'
  30.      }, finish: function () {
  31.        if (!f) {
  32.          f = true;
  33.          var e = d.getElementById('_vis_opt_path_hides');
  34.          if (e) e.parentNode.removeChild(e)
  35.        }
  36.      }, finished: function () {
  37.        return f
  38.      }, load: function (e) {
  39.        var t = d.createElement('script');
  40.        t.fetchPriority = 'high';
  41.        t.src = e;
  42.        t.type = 'text/javascript';
  43.        t.onerror = function () {
  44.          _vwo_code.finish()
  45.        };
  46.        d.getElementsByTagName('head')[0].appendChild(t)
  47.      }, getVersion: function () {
  48.        return version
  49.      }, getMatchedCookies: function (e) {
  50.        var t = [];
  51.        if (document.cookie) {
  52.          t = document.cookie.match(e) || []
  53.        }
  54.        return t
  55.      }, getCombinationCookie: function () {
  56.        var e = code.getMatchedCookies(/(?:^|;)\s?(_vis_opt_exp_\d+_combi=[^;$]*)/gi);
  57.        e = e.map(function (e) {
  58.          try {
  59.            var t = decodeURIComponent(e);
  60.            if (!/_vis_opt_exp_\d+_combi=(?:\d+,?)+\s*$/.test(t)) {
  61.              return ''
  62.            }
  63.            return t
  64.          } catch (e) {
  65.            return ''
  66.          }
  67.        });
  68.        var i = [];
  69.        e.forEach(function (e) {
  70.          var t = e.match(/([\d,]+)/g);
  71.          t && i.push(t.join('-'))
  72.        });
  73.        return i.join('|')
  74.      }, init: function () {
  75.        if (d.URL.indexOf('__vwo_disable__') > -1) return;
  76.        window.settings_timer = setTimeout(function () {
  77.          _vwo_code.finish()
  78.        }, settings_tolerance);
  79.        var e = d.createElement('style'), t = hide_element ? hide_element + '{' + hide_element_style + '}' : '',
  80.          i = d.getElementsByTagName('head')[0];
  81.        e.setAttribute('id', '_vis_opt_path_hides');
  82.        vwoCodeEl && e.setAttribute('nonce', vwoCodeEl.nonce);
  83.        e.setAttribute('type', 'text/css');
  84.        if (e.styleSheet) e.styleSheet.cssText = t; else e.appendChild(d.createTextNode(t));
  85.        i.appendChild(e);
  86.        var n = this.getCombinationCookie();
  87.        this.load('https://dev.visualwebsiteoptimizer.com/j.php?a=' + account_id + '&u=' + encodeURIComponent(d.URL) + '&f=' + +is_spa + '&vn=' + version + (n ? '&c=' + n : ''));
  88.        return settings_timer
  89.      }
  90.    };
  91.  window._vwo_settings_timer = code.init();
  92.  return code;
  93. }());
  94. </script><script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" type="text/javascript"></script><script type="text/javascript">window.NREUM||(NREUM={});NREUM.info = {"agent":"","beacon":"bam.eu01.nr-data.net","errorBeacon":"bam.eu01.nr-data.net","licenseKey":"NRJS-26ae6a3b09493bbcc87","applicationID":"514059305","agentToken":null,"applicationTime":111.155132,"transactionName":"MhBSZQoZWEEDU0ZaXgtafl4KFVdeC0pXV2QXHB8b","queueTime":0,"ttGuid":"be1f6f20f460a225"}; (window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.eu01.nr-data.net"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"538480682",accountID:"3936348",trustKey:"3288925",xpid:"Vw8EV1VXABAFVVVSAggEVlE=",licenseKey:"NRJS-26ae6a3b09493bbcc87",applicationID:"514059305"};;/*! For license information please see nr-loader-spa-1.260.0.min.js.LICENSE.txt */
  95. (()=>{var e,t,r={234:(e,t,r)=>{"use strict";r.d(t,{P_:()=>m,Mt:()=>b,C5:()=>s,DL:()=>w,OP:()=>O,lF:()=>D,Yu:()=>_,Dg:()=>v,CX:()=>c,GE:()=>E,sU:()=>I});var n=r(8632),i=r(9567);const o={beacon:n.ce.beacon,errorBeacon:n.ce.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},a={};function s(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function c(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.D)(t,o);const r=(0,n.ek)(e);r&&(r.info=a[e])}const u=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var d=r(7056),l=r(50);const f="[data-nr-mask]",h=()=>{const e={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{feature_flags:[],proxy:{assets:void 0,beacon:void 0},privacy:{cookies_enabled:!0},ajax:{deny_list:void 0,block_internal:!0,enabled:!0,harvestTimeSeconds:10,autoStart:!0},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},session:{expiresMs:d.oD,inactiveMs:d.Hb},ssl:void 0,obfuscate:void 0,jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},metrics:{enabled:!0,autoStart:!0},page_action:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,long_task:!1,autoStart:!0},session_trace:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},harvest:{tooManyRequestsDelay:60},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,inline_stylesheet:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){u(t)?e.mask_selector="".concat(t,",").concat(f):""===t||null===t?e.mask_selector=f:(0,l.Z)("An invalid session_replay.mask_selector was provided. '*' will be used.",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){u(t)?e.block_selector+=",".concat(t):""!==t&&(0,l.Z)("An invalid session_replay.block_selector was provided and will not be used",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.Z)("An invalid session_replay.mask_input_option was provided and will not be used",t)}},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},soft_navigations:{enabled:!0,harvestTimeSeconds:10,autoStart:!0}}},p={},g="All configuration objects require an agent identifier!";function m(e){if(!e)throw new Error(g);if(!p[e])throw new Error("Configuration for ".concat(e," was never set"));return p[e]}function v(e,t){if(!e)throw new Error(g);p[e]=(0,i.D)(t,h());const r=(0,n.ek)(e);r&&(r.init=p[e])}function b(e,t){if(!e)throw new Error(g);var r=m(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}const y={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},A={};function w(e){if(!e)throw new Error("All loader-config objects require an agent identifier!");if(!A[e])throw new Error("LoaderConfig for ".concat(e," was never set"));return A[e]}function E(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");A[e]=(0,i.D)(t,y);const r=(0,n.ek)(e);r&&(r.loader_config=A[e])}const _=(0,n.mF)().o;var x=r(385),R=r(6818);const S={buildEnv:R.Re,distMethod:R.gF,version:R.q4,originTime:x.sK},T={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,origin:""+x._A.location,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,harvestCount:0,timeKeeper:void 0},N={};function O(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!N[e])throw new Error("Runtime for ".concat(e," was never set"));return N[e]}function I(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");N[e]={...(0,i.D)(t,T),...S};const r=(0,n.ek)(e);r&&(r.runtime=N[e])}function D(e){return function(e){try{const t=s(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}(e)}},9567:(e,t,r)=>{"use strict";r.d(t,{D:()=>i});var n=r(50);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.Z)("Setting a Configurable requires an object as input");if(!t||"object"!=typeof t)return(0,n.Z)("Setting a Configurable requires a model to set its initial properties");const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)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]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.Z)("An error occurred while setting a property of a Configurable",e)}return r}catch(e){(0,n.Z)("An error occured while setting a Configurable",e)}}},6818:(e,t,r)=>{"use strict";r.d(t,{Re:()=>i,gF:()=>o,lF:()=>a,q4:()=>n});const n="1.260.0",i="PROD",o="CDN",a="2.0.0-alpha.12"},385:(e,t,r)=>{"use strict";r.d(t,{FN:()=>c,IF:()=>l,LW:()=>a,Nk:()=>h,Tt:()=>u,_A:()=>o,iS:()=>s,il:()=>n,sK:()=>p,ux:()=>d,v6:()=>i,w1:()=>f});const n="undefined"!=typeof window&&!!window.document,i="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),o=n?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),a="complete"===o?.document?.readyState,s=Boolean("hidden"===o?.document?.visibilityState),c=""+o?.location,u=/iPad|iPhone|iPod/.test(o.navigator?.userAgent),d=u&&"undefined"==typeof SharedWorker,l=(()=>{const e=o.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),f=Boolean(n&&window.document.documentMode),h=!!o.navigator?.sendBeacon,p=Math.floor(Date.now()-performance.now())},1117:(e,t,r)=>{"use strict";r.d(t,{w:()=>o});var n=r(50);const i={agentIdentifier:"",ee:void 0};class o{constructor(e){try{if("object"!=typeof e)return(0,n.Z)("shared context requires an object as input");this.sharedContext={},Object.assign(this.sharedContext,i),Object.entries(e).forEach((e=>{let[t,r]=e;Object.keys(i).includes(t)&&(this.sharedContext[t]=r)}))}catch(e){(0,n.Z)("An error occurred while setting SharedContext",e)}}}},1199:(e,t,r)=>{"use strict";r.d(t,{R2:()=>a,zR:()=>i,zh:()=>o});var n=[];function i(e){if(o(e))return!1;if(0===n.length)return!0;for(var t=0;t<n.length;t++){var r=n[t];if("*"===r.hostname)return!1;if(s(r.hostname,e.hostname)&&c(r.pathname,e.pathname))return!1}return!0}function o(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;0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let o,a;i>0?(o=r.substring(0,i),a=r.substring(i)):(o=r,a="");let[s]=o.split(":");n.push({hostname:s,pathname:a})}}function s(e,t){return!(e.length>t.length)&&t.indexOf(e)===t.length-e.length}function c(e,t){return 0===e.indexOf("/")&&(e=e.substring(1)),0===t.indexOf("/")&&(t=t.substring(1)),""===e||e===t}},8e3:(e,t,r)=>{"use strict";r.d(t,{LP:()=>l,RP:()=>c,o5:()=>u});var n=r(8325),i=r(1284),o=r(4322),a=r(3325);const s={};function c(e,t){const r={staged:!1,priority:a.p[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){d(e),s[e].get(t)&&s[e].delete(t),s[e].size&&f(e)}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"feature",r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(d(e),!e||!s[e].get(t)||r)return h(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((e=>{let[t,r]=e;return r.staged}))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((t=>{let[r]=t;s[e].delete(r),h(e,r)})))}function h(e,t){const r=e?n.ee.get(e):n.ee,a=o.X.handlers;if(r.backlog&&a){var s=r.backlog[t],c=a[t];if(c){for(var u=0;s&&u<s.length;++u)p(s[u],c);(0,i.D)(c,(function(e,t){(0,i.D)(t,(function(t,r){r[0].on(e,r[1])}))}))}r.isolatedBacklog||delete a[t],r.backlog[t]=null,r.emit("drain-"+t,[])}}function p(e,t){var r=e[1];(0,i.D)(t[r],(function(t,r){var n=e[0];if(r[0]===n){var i=r[1],o=e[3],a=e[2];i.apply(o,a)}}))}},8325:(e,t,r)=>{"use strict";r.d(t,{A:()=>c,ee:()=>u});var n=r(8632),i=r(2210),o=r(234);class a{constructor(e){this.contextId=e}}var s=r(3117);const c="nr@context:".concat(s.a),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.OP)(r).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,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=h(n),c=g(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=v()[s[e]];p&&p.push([f,e,r,a]);return a},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=>{let[n,i]=e;s[i]=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()[s[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 a?e:e?(0,i.X)(e,c,(()=>new a(c))):new a(c)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.fP)();d.ee||(d.ee=u)},5546:(e,t,r)=>{"use strict";r.d(t,{E:()=>n,p:()=>i});var n=r(8325).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},4322:(e,t,r)=>{"use strict";r.d(t,{X:()=>o});var n=r(5546);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.E,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.E);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3239:(e,t,r)=>{"use strict";r.d(t,{bP:()=>s,iz:()=>c,m$:()=>a});var n=r(385);let i=!1,o=!1;try{const e={get passive(){return i=!0,!1},get signal(){return o=!0,!1}};n._A.addEventListener("test",null,e),n._A.removeEventListener("test",null,e)}catch(e){}function a(e,t){return i||o?{capture:!!e,passive:i,signal:t}:!!e}function s(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=arguments.length>3?arguments[3]:void 0;window.addEventListener(e,t,a(r,n))}function c(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=arguments.length>3?arguments[3]:void 0;document.addEventListener(e,t,a(r,n))}},3117:(e,t,r)=>{"use strict";r.d(t,{a:()=>n});const n=(0,r(4402).Rl)()},4402:(e,t,r)=>{"use strict";r.d(t,{Ht:()=>u,M:()=>c,Rl:()=>a,ky:()=>s});var n=r(385);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n._A?.crypto||n._A?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n._A?.crypto||n._A?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}function c(){return s(16)}function u(){return s(32)}},7056:(e,t,r)=>{"use strict";r.d(t,{Bq:()=>n,Hb:()=>a,IK:()=>u,K4:()=>i,oD:()=>o,uT:()=>c,wO:()=>s});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},7894:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{z:()=>n})},7243:(e,t,r)=>{"use strict";r.d(t,{e:()=>i});var n=r(385);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._A?.location?.protocol&&t.host===n._A?.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{}}}},50:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.warn&&(console.warn("New Relic: ".concat(e)),t&&console.warn(t))}r.d(t,{Z:()=>n})},2825:(e,t,r)=>{"use strict";r.d(t,{N:()=>c,T:()=>s});var n=r(8325),i=r(385);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};try{i._A.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},2210:(e,t,r)=>{"use strict";r.d(t,{X:()=>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}},7872:(e,t,r)=>{"use strict";function n(e){var t=this;let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:500,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=n?.leading||!1;let o;return function(){for(var n=arguments.length,a=new Array(n),s=0;s<n;s++)a[s]=arguments[s];i&&void 0===o&&(e.apply(t,a),o=setTimeout((()=>{o=clearTimeout(o)}),r)),i||(clearTimeout(o),o=setTimeout((()=>{e.apply(t,a)}),r))}}function i(e){var t=this;let r=!1;return function(){if(!r){r=!0;for(var n=arguments.length,i=new Array(n),o=0;o<n;o++)i[o]=arguments[o];e.apply(t,i)}}}r.d(t,{D:()=>n,Z:()=>i})},1284:(e,t,r)=>{"use strict";r.d(t,{D:()=>n});const n=(e,t)=>Object.entries(e||{}).map((e=>{let[r,n]=e;return t(r,n)}))},4351:(e,t,r)=>{"use strict";r.d(t,{P:()=>o});var n=r(8325);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}}}},3960:(e,t,r)=>{"use strict";r.d(t,{KB:()=>a,b2:()=>o});var n=r(3239);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.bP)("load",e,t)}function a(e){if(i())return e();(0,n.iz)("DOMContentLoaded",e)}},8632:(e,t,r)=>{"use strict";r.d(t,{EZ:()=>d,ce:()=>o,ek:()=>u,fP:()=>a,gG:()=>l,h5:()=>c,mF:()=>s});var n=r(385),i=r(7894);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n._A.NREUM||(n._A.NREUM={}),void 0===n._A.newrelic&&(n._A.newrelic=n._A.NREUM),n._A.NREUM}function s(){let e=a();return e.o||(e.o={ST:n._A.setTimeout,SI:n._A.setImmediate,CT:n._A.clearTimeout,XHR:n._A.XMLHttpRequest,REQ:n._A.Request,EV:n._A.Event,PR:n._A.Promise,MO:n._A.MutationObserver,FETCH:n._A.fetch}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.z)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},7956:(e,t,r)=>{"use strict";r.d(t,{N:()=>i});var n=r(3239);function i(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0;(0,n.iz)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},7806:(e,t,r)=>{"use strict";r.d(t,{em:()=>b,u5:()=>T,QU:()=>I,_L:()=>j,Gm:()=>L,Lg:()=>M,BV:()=>V,Kf:()=>Y});var n=r(8325),i=r(3117);const o="nr@original:".concat(i.a);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=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)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}var l=r(2210),f=r(385);const h={},p=f._A.XMLHttpRequest,g="addEventListener",m="removeEventListener",v="nr@wrapped:".concat(n.A);function b(e){var t=function(e){return(e||n.ee).get("events")}(e);if(h[t.debugId]++)return t;h[t.debugId]=1;var r=c(t,!0);function i(e){r.inPlace(e,[g,m],"-",o)}function o(e,t){return e[1]}return"getPrototypeOf"in Object&&(f.il&&y(document,i),y(f._A,i),y(p.prototype,i)),t.on(g+"-start",(function(e,t){var n=e[1];if(null!==n&&("function"==typeof n||"object"==typeof n)){var i=(0,l.X)(n,v,(function(){var e={object:function(){if("function"!=typeof n.handleEvent)return;return n.handleEvent.apply(n,arguments)},function:n}[typeof n];return e?r(e,"fn-",null,e.name||"anonymous"):n}));this.wrapped=e[1]=i}})),t.on(m+"-start",(function(e){e[1]=this.wrapped||e[1]})),t}function y(e,t){let r=e;for(;"object"==typeof r&&!Object.prototype.hasOwnProperty.call(r,g);)r=Object.getPrototypeOf(r);for(var n=arguments.length,i=new Array(n>2?n-2:0),o=2;o<n;o++)i[o-2]=arguments[o];r&&t(r,...i)}var A="fetch-",w=A+"body-",E=["arrayBuffer","blob","json","text","formData"],_=f._A.Request,x=f._A.Response,R="prototype";const S={};function T(e){const t=function(e){return(e||n.ee).get("fetch")}(e);if(!(_&&x&&f._A.fetch))return t;if(S[t.debugId]++)return t;function r(e,r,i){var o=e[r];"function"==typeof o&&(e[r]=function(){var e,r=[...arguments],a={};t.emit(i+"before-start",[r],a),a[n.A]&&a[n.A].dt&&(e=a[n.A].dt);var s=o.apply(this,r);return t.emit(i+"start",[r,e],s),s.then((function(e){return t.emit(i+"end",[null,e],s),e}),(function(e){throw t.emit(i+"end",[e],s),e}))})}return S[t.debugId]=1,E.forEach((e=>{r(_[R],e,w),r(x[R],e,w)})),r(f._A,"fetch",A),t.on(A+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(A+"done",[null,r],n)}else t.emit(A+"done",[e],n)})),t}const N={},O=["pushState","replaceState"];function I(e){const t=function(e){return(e||n.ee).get("history")}(e);return!f.il||N[t.debugId]++||(N[t.debugId]=1,c(t).inPlace(window.history,O,"-")),t}var D=r(3239);const P={},C=["appendChild","insertBefore","replaceChild"];function j(e){const t=function(e){return(e||n.ee).get("jsonp")}(e);if(!f.il||P[t.debugId])return t;P[t.debugId]=!0;var r=c(t),i=/[?&](?:callback|cb)=([^&#]+)/,o=/(.*)\.([^.]+)/,a=/^(\w+)(\.|$)(.*)$/;function s(e,t){if(!e)return t;const r=e.match(a),n=r[1];return s(r[3],t[n])}return r.inPlace(Node.prototype,C,"dom-"),t.on("dom-start",(function(e){!function(e){if(!e||"string"!=typeof e.nodeName||"script"!==e.nodeName.toLowerCase())return;if("function"!=typeof e.addEventListener)return;var n=(a=e.src,c=a.match(i),c?c[1]:null);var a,c;if(!n)return;var u=function(e){var t=e.match(o);if(t&&t.length>=3)return{key:t[2],parent:s(t[1],window)};return{key:e,parent:window}}(n);if("function"!=typeof u.parent[u.key])return;var d={};function l(){t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,D.m$)(!1)),e.removeEventListener("error",f,(0,D.m$)(!1))}function f(){t.emit("jsonp-error",[],d),t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,D.m$)(!1)),e.removeEventListener("error",f,(0,D.m$)(!1))}r.inPlace(u.parent,[u.key],"cb-",d),e.addEventListener("load",l,(0,D.m$)(!1)),e.addEventListener("error",f,(0,D.m$)(!1)),t.emit("new-jsonp",[e.src],d)}(e[0])})),t}const k={};function L(e){const t=function(e){return(e||n.ee).get("mutation")}(e);if(!f.il||k[t.debugId])return t;k[t.debugId]=!0;var r=c(t),i=f._A.MutationObserver;return i&&(window.MutationObserver=function(e){return this instanceof i?new i(r(e,"fn-")):i.apply(this,arguments)},MutationObserver.prototype=i.prototype),t}const H={};function M(e){const t=function(e){return(e||n.ee).get("promise")}(e);if(H[t.debugId])return t;H[t.debugId]=!0;var r=t.context,i=c(t),a=f._A.Promise;return a&&function(){function e(r){var n=t.context(),o=i(r,"executor-",n,null,!1);const s=Reflect.construct(a,[o],e);return t.context(s).getCtx=function(){return n},s}f._A.Promise=e,Object.defineProperty(e,"name",{value:"Promise"}),e.toString=function(){return a.toString()},Object.setPrototypeOf(e,a),["all","race"].forEach((function(r){const n=a[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=>{this.resolve(e).then(a("all"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit("propagate",[null,!i],o,!1,!1),i=i||!e}}}})),["resolve","reject"].forEach((function(r){const n=a[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r&&t.emit("propagate",[e,!0],r,!1,!1),r}})),e.prototype=a.prototype;const n=a.prototype.then;a.prototype.then=function(){var e=this,o=r(e);o.promise=e;for(var a=arguments.length,s=new Array(a),c=0;c<a;c++)s[c]=arguments[c];s[0]=i(s[0],"cb-",o,null,!1),s[1]=i(s[1],"cb-",o,null,!1);const u=n.apply(this,s);return o.nextPromise=u,t.emit("propagate",[e,!0],u,!1,!1),u},a.prototype.then[o]=n,t.on("executor-start",(function(e){e[0]=i(e[0],"resolve-",this,null,!1),e[1]=i(e[1],"resolve-",this,null,!1)})),t.on("executor-err",(function(e,t,r){e[1](r)})),t.on("cb-end",(function(e,r,n){t.emit("propagate",[n,!0],this.nextPromise,!1,!1)})),t.on("propagate",(function(e,r,n){this.getCtx&&!r||(this.getCtx=function(){if(e instanceof Promise)var r=t.context(e);return r&&r.getCtx?r.getCtx():this})}))}(),t}const U={},z="setTimeout",F="setInterval",B="clearTimeout",G="-start",q="-",K=[z,"setImmediate",F,B,"clearImmediate"];function V(e){const t=function(e){return(e||n.ee).get("timer")}(e);if(U[t.debugId]++)return t;U[t.debugId]=1;var r=c(t);return r.inPlace(f._A,K.slice(0,2),z+q),r.inPlace(f._A,K.slice(2,3),F+q),r.inPlace(f._A,K.slice(3),B+q),t.on(F+G,(function(e,t,n){e[0]=r(e[0],"fn-",null,n)})),t.on(z+G,(function(e,t,n){this.method=n,this.timerDuration=isNaN(e[1])?0:+e[1],e[0]=r(e[0],"fn-",this,n)})),t}var Z=r(50);const W={},X=["open","send"];function Y(e){var t=e||n.ee;const r=function(e){return(e||n.ee).get("xhr")}(t);if(W[r.debugId]++)return r;W[r.debugId]=1,b(t);var i=c(r),o=f._A.XMLHttpRequest,a=f._A.MutationObserver,s=f._A.Promise,u=f._A.setInterval,d="readystatechange",l=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],h=[],p=f._A.XMLHttpRequest=function(e){const t=new o(e),n=r.context(t);try{r.emit("new-xhr",[t],n),t.addEventListener(d,(a=n,function(){var e=this;e.readyState>3&&!a.resolved&&(a.resolved=!0,r.emit("xhr-resolved",[],e)),i.inPlace(e,l,"fn-",w)}),(0,D.m$)(!1))}catch(e){(0,Z.Z)("An error occurred while intercepting XHR",e);try{r.emit("internal-error",[e])}catch(e){}}var a;return t};function g(e,t){i.inPlace(t,["onreadystatechange"],"fn-",w)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,p),p.prototype=o.prototype,i.inPlace(p.prototype,X,"-xhr-",w),r.on("send-xhr-start",(function(e,t){g(e,t),function(e){h.push(e),a&&(m?m.then(A):u?u(A):(v=-v,y.data=v))}(t)})),r.on("open-xhr-start",g),a){var m=s&&s.resolve();if(!u&&!s){var v=1,y=document.createTextNode(v);new a(A).observe(y,{characterData:!0})}}else t.on("fn-end",(function(e){e[0]&&e[0].type===d||A()}));function A(){for(var e=0;e<h.length;e++)g(0,h[e]);h.length&&(h=[])}function w(e,t){return t}return r}},7825:(e,t,r)=>{"use strict";r.d(t,{t:()=>n});const n=r(3325).D.ajax},6660:(e,t,r)=>{"use strict";r.d(t,{t:()=>n});const n=r(3325).D.jserrors},3081:(e,t,r)=>{"use strict";r.d(t,{gF:()=>o,mY:()=>i,t9:()=>n,vz:()=>s,xS:()=>a});const n=r(3325).D.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},4649:(e,t,r)=>{"use strict";r.d(t,{t:()=>n});const n=r(3325).D.pageAction},7633:(e,t,r)=>{"use strict";r.d(t,{t:()=>n});const n=r(3325).D.pageViewEvent},9251:(e,t,r)=>{"use strict";r.d(t,{t:()=>n});const n=r(3325).D.pageViewTiming},7144:(e,t,r)=>{"use strict";r.d(t,{Ef:()=>o,J0:()=>f,Mi:()=>l,Vb:()=>a,Ye:()=>c,fm:()=>u,i9:()=>s,pB:()=>h,t9:()=>i,u0:()=>d});var n=r(7056);const i=r(3325).D.sessionReplay,o={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"},a=.12,s={DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},c=1e6,u=64e3,d={[n.IK.ERROR]:15e3,[n.IK.FULL]:3e5,[n.IK.OFF]:0},l={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"}},f=5e3,h={API:"api"}},3112:(e,t,r)=>{"use strict";r.d(t,{HM:()=>c,Rc:()=>a,rU:()=>s,wi:()=>u});var n=r(234),i=r(8488),o=r(385);function a(e){return!!n.Yu.MO&&(0,i.H)(e)&&!0===(0,n.Mt)(e,"session_trace.enabled")}function s(e){return!0===(0,n.Mt)(e,"session_replay.preload")&&a(e)}function c(e,t){return!!a(e)&&(!!t?.isNew||!!t?.state.sessionReplayMode)}function u(e,t){const r=t.correctAbsoluteTimestamp(e);return{originalTimestamp:e,correctedTimestamp:r,timestampDiff:e-r,originTime:o.sK,correctedOriginTime:t.correctedOriginTime,originTimeDiff:Math.floor(o.sK-t.correctedOriginTime)}}},3614:(e,t,r)=>{"use strict";r.d(t,{BST_RESOURCE:()=>i,END:()=>s,FEATURE_NAME:()=>n,FN_END:()=>u,FN_START:()=>c,PUSH_STATE:()=>d,RESOURCE:()=>o,START:()=>a,c:()=>l});const n=r(3325).D.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState",l=1e3},6216:(e,t,r)=>{"use strict";r.d(t,{K8:()=>s,QZ:()=>c,cS:()=>o,sE:()=>i,t9:()=>a,vh:()=>u});var n=r(3325);const i=["click","keydown","submit"],o="api",a=n.D.softNav,s={INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},c={INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},u={IP:"in progress",FIN:"finished",CAN:"cancelled"}},7836:(e,t,r)=>{"use strict";r.d(t,{BODY:()=>E,CB_END:()=>_,CB_START:()=>u,END:()=>w,FEATURE_NAME:()=>i,FETCH:()=>R,FETCH_BODY:()=>v,FETCH_DONE:()=>m,FETCH_START:()=>g,FN_END:()=>c,FN_START:()=>s,INTERACTION:()=>f,INTERACTION_API:()=>d,INTERACTION_EVENTS:()=>o,JSONP_END:()=>b,JSONP_NODE:()=>p,JS_TIME:()=>x,MAX_TIMER_BUDGET:()=>a,REMAINING:()=>l,SPA_NODE:()=>h,START:()=>A,originalSetTimeout:()=>y});var n=r(234);const i=r(3325).D.spa,o=["click","submit","keypress","keydown","keyup","change"],a=999,s="fn-start",c="fn-end",u="cb-start",d="api-ixn-",l="remaining",f="interaction",h="spaNode",p="jsonpNode",g="fetch-start",m="fetch-done",v="fetch-body-",b="jsonp-end",y=n.Yu.ST,A="-start",w="-end",E="-body",_="cb"+w,x="jsTime",R="fetch"},5938:(e,t,r)=>{"use strict";r.d(t,{W:()=>i});var n=r(8325);class i{constructor(e,t,r){this.agentIdentifier=e,this.aggregator=t,this.ee=n.ee.get(e),this.featureName=r,this.blocked=!1}}},8488:(e,t,r)=>{"use strict";r.d(t,{H:()=>o});var n=r(234),i=r(385);const o=e=>i.il&&!0===(0,n.Mt)(e,"privacy.cookies_enabled")},2758:(e,t,r)=>{"use strict";r.d(t,{j:()=>_});var n=r(3325),i=r(234),o=r(5546),a=r(8325),s=r(8e3),c=r(3960),u=r(385),d=r(50),l=r(3081),f=r(8632),h=r(7144);const p=["setErrorHandler","finished","addToTrace","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",h.Ef.RECORD,h.Ef.PAUSE],g=["setErrorHandler","finished","addToTrace","addRelease"];var m=r(7894),v=r(7056);function b(){const e=(0,f.gG)();p.forEach((t=>{e[t]=function(){for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];return function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];let o=[];return Object.values(e.initializedAgents).forEach((e=>{e.exposed&&e.api[t]&&o.push(e.api[t](...n))})),o.length>1?o:o[0]}(t,...n)}}))}const y={};var A=r(2825);const w=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let E=!1;function _(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},p=arguments.length>2?arguments[2]:void 0,_=arguments.length>3?arguments[3]:void 0,{init:x,info:R,loader_config:S,runtime:T={loaderType:p},exposed:N=!0}=t;const O=(0,f.gG)();R||(x=O.init,R=O.info,S=O.loader_config),(0,i.Dg)(e.agentIdentifier,x||{}),(0,i.GE)(e.agentIdentifier,S||{}),R.jsAttributes??={},u.v6&&(R.jsAttributes.isWorker=!0),(0,i.CX)(e.agentIdentifier,R);const I=(0,i.P_)(e.agentIdentifier),D=[R.beacon,R.errorBeacon];E||(I.proxy.assets&&(w(I.proxy.assets),D.push(I.proxy.assets)),I.proxy.beacon&&D.push(I.proxy.beacon),b(),(0,f.EZ)("activatedFeatures",A.T),e.runSoftNavOverSpa&&=!0===I.soft_navigations.enabled&&I.feature_flags.includes("soft_nav")),T.denyList=[...I.ajax.deny_list||[],...I.ajax.block_internal?D:[]],T.ptid=e.agentIdentifier,(0,i.sU)(e.agentIdentifier,T),void 0===e.api&&(e.api=function(e,t){let f=arguments.length>2&&void 0!==arguments[2]&&arguments[2];t||(0,s.RP)(e,"api");const p={};var b=a.ee.get(e),A=b.get("tracer");y[e]=v.IK.OFF,b.on(h.Ef.REPLAY_RUNNING,(t=>{y[e]=t}));var w="api-",E=w+"ixn-";function _(t,r,n,o){const a=(0,i.C5)(e);return null===r?delete a.jsAttributes[t]:(0,i.CX)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),S(w,n,!0,o||null===r?"session":void 0)(t,r)}function x(){}g.forEach((e=>{p[e]=S(w,e,!0,"api")})),p.addPageAction=S(w,"addPageAction",!0,n.D.pageAction),p.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,i.OP)(e).customTransaction=(r||"http://custom.transaction")+t,S(w,"setPageViewName",!0)()},p.setCustomAttribute=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return _(e,t,"setCustomAttribute",r);(0,d.Z)("Failed to execute setCustomAttribute.\nNon-null value must be a string, number or boolean type, but a type of <".concat(typeof t,"> was provided."))}else(0,d.Z)("Failed to execute setCustomAttribute.\nName must be a string type, but a type of <".concat(typeof e,"> was provided."))},p.setUserId=function(e){if("string"==typeof e||null===e)return _("enduser.id",e,"setUserId",!0);(0,d.Z)("Failed to execute setUserId.\nNon-null value must be a string type, but a type of <".concat(typeof e,"> was provided."))},p.setApplicationVersion=function(e){if("string"==typeof e||null===e)return _("application.version",e,"setApplicationVersion",!1);(0,d.Z)("Failed to execute setApplicationVersion. Expected <String | null>, but got <".concat(typeof e,">."))},p.start=()=>{try{(0,o.p)(l.xS,["API/start/called"],void 0,n.D.metrics,b),b.emit("manual-start-all")}catch(e){(0,d.Z)("An unexpected issue occurred",e)}},p[h.Ef.RECORD]=function(){(0,o.p)(l.xS,["API/recordReplay/called"],void 0,n.D.metrics,b),(0,o.p)(h.Ef.RECORD,[],void 0,n.D.sessionReplay,b)},p[h.Ef.PAUSE]=function(){(0,o.p)(l.xS,["API/pauseReplay/called"],void 0,n.D.metrics,b),(0,o.p)(h.Ef.PAUSE,[],void 0,n.D.sessionReplay,b)},p.interaction=function(e){return(new x).get("object"==typeof e?e:{})};const R=x.prototype={createTracer:function(e,t){var r={},i=this,a="function"==typeof t;return(0,o.p)(l.xS,["API/createTracer/called"],void 0,n.D.metrics,b),f||(0,o.p)(E+"tracer",[(0,m.z)(),e,r],i,n.D.spa,b),function(){if(A.emit((a?"":"no-")+"fn-start",[(0,m.z)(),i,a],r),a)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw A.emit("fn-err",[arguments,this,t],r),t}finally{A.emit("fn-end",[(0,m.z)()],r)}}}};function S(e,t,r,i){return function(){return(0,o.p)(l.xS,["API/"+t+"/called"],void 0,n.D.metrics,b),i&&(0,o.p)(e+t,[(0,m.z)(),...arguments],r?null:this,i,b),r?void 0:this}}function T(){r.e(111).then(r.bind(r,7438)).then((t=>{let{setAPI:r}=t;r(e),(0,s.LP)(e,"api")})).catch((e=>{(0,d.Z)("Downloading runtime APIs failed...",e),b.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{R[e]=S(E,e,void 0,f?n.D.softNav:n.D.spa)})),p.setCurrentRouteName=f?S(E,"routeName",void 0,n.D.softNav):S(w,"routeName",!0,n.D.spa),p.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,o.p)(l.xS,["API/noticeError/called"],void 0,n.D.metrics,b),(0,o.p)("err",[t,(0,m.z)(),!1,r,!!y[e]],void 0,n.D.jserrors,b)},u.il?(0,c.b2)((()=>T()),!0):T(),p}(e.agentIdentifier,_,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=N),E=!0}},8993:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},3325:(e,t,r)=>{"use strict";r.d(t,{D:()=>n,p:()=>i});const n={ajax:"ajax",jserrors:"jserrors",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.ajax]:5,[n.sessionTrace]:6,[n.pageAction]:7,[n.spa]:8,[n.softNav]:9,[n.sessionReplay]:10}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>({111:"nr-spa",164:"nr-spa-compressor",433:"nr-spa-recorder"}[e]+"-1.260.0.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.260.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={111:"sha512-yg/3G4Xi/nUUSGUZ5sZ5laGfxYiBl4A4z1KiCDtOZnnyZ1yRz/gldBGvnLQkCt9iHEG+xaLgGYJXknmRQ1RRBg==",433:"sha512-+r3Wkk8iuDgwHGMXW/4TexrEk4BUtJDwoydKiVtCg/OhRaVQjDykRQ5pq++NLNYgn6VmvYTyFNtJOzAGjbQYxQ==",164:"sha512-B0foyUJVqgCiRQ77L/MyMwRicWPhe+NqE2lxw/3pl055wE8eTQpuvUp+2B2d8y2J7zEgKz6qDFwcVFoxG46BKw=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var h=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={801:0,92:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.260.0.PROD"]=self["webpackChunk:NRBA-1.260.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8993);var e=i(50),t=i(7144),r=i(4402),n=i(8325);class o{agentIdentifier;constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(0,r.ky)(16);this.agentIdentifier=e,this.ee=n.ee.get(e)}#e(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];if("function"==typeof this.api?.[t])return this.api[t](...n);(0,e.Z)("Call to agent api ".concat(t," failed. The API is not currently initialized."))}addPageAction(e,t){return this.#e("addPageAction",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}finished(e){return this.#e("finished",e)}addRelease(e,t){return this.#e("addRelease",e,t)}start(e){return this.#e("start",e)}recordReplay(){return this.#e(t.Ef.RECORD)}pauseReplay(){return this.#e(t.Ef.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}}var a=i(3325),s=i(234);const c=Object.values(a.D);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.Mt)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(2758);var l=i(8e3),f=i(5938),h=i(3960),p=i(385),g=i(3112),m=i(8488),v=i(7872);class b extends f.W{constructor(e,t,r){let n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];super(e,t,r),this.auto=n,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===(0,s.Mt)(this.agentIdentifier,"".concat(this.featureName,".autoStart"))&&(this.auto=!1),this.auto?(0,l.RP)(e,r):this.ee.on("manual-start-all",(0,v.Z)((()=>{(0,l.RP)(this.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator()})))}importAggregator(){let t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(this.featAggregate||!this.auto)return;this.onAggregateImported=new Promise((e=>{t=e}));const n=async()=>{let n;try{if((0,m.H)(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(111).then(i.bind(i,9446));n=e(this.agentIdentifier)}}catch(t){(0,e.Z)("A problem occurred when starting up session manager. This page will not start or extend any session.",t),this.featureName===a.D.sessionReplay&&this.abortHandler?.()}try{if(!this.#t(this.featureName,n))return(0,l.LP)(this.agentIdentifier,this.featureName),void t(!1);const{lazyFeatureLoader:e}=await i.e(111).then(i.bind(i,8582)),{Aggregate:o}=await e(this.featureName,"aggregate");this.featAggregate=new o(this.agentIdentifier,this.aggregator,r),t(!0)}catch(r){(0,e.Z)("Downloading and initializing ".concat(this.featureName," failed..."),r),this.abortHandler?.(),(0,l.LP)(this.agentIdentifier,this.featureName,!0),t(!1),this.ee&&this.ee.abort()}};p.il?(0,h.b2)((()=>n()),!0):n()}#t(e,t){return e!==a.D.sessionReplay||(0,g.HM)(this.agentIdentifier,t)}}var y=i(7633);class A extends b{static featureName=y.t;constructor(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,t,y.t,r),this.importAggregator()}}var w=i(1117),E=i(1284);class _ extends w.w{constructor(e){super(e),this.aggregatedData={}}store(e,t,r,n,i){var o=this.getBucket(e,t,r,i);return o.metrics=function(e,t){t||(t={count:0});return t.count+=1,(0,E.D)(e,(function(e,r){t[e]=x(r,t[e])})),t}(n,o.metrics),o}merge(e,t,r,n,i){var o=this.getBucket(e,t,n,i);if(o.metrics){var a=o.metrics;a.count+=r.count,(0,E.D)(r,(function(e,t){if("count"!==e){var n=a[e],i=r[e];i&&!i.c?a[e]=x(i.t,n):a[e]=function(e,t){if(!t)return e;t.c||(t=R(t.t));return t.min=Math.min(e.min,t.min),t.max=Math.max(e.max,t.max),t.t+=e.t,t.sos+=e.sos,t.c+=e.c,t}(i,a[e])}}))}else o.metrics=r}storeMetric(e,t,r,n){var i=this.getBucket(e,t,r);return i.stats=x(n,i.stats),i}getBucket(e,t,r,n){this.aggregatedData[e]||(this.aggregatedData[e]={});var i=this.aggregatedData[e][t];return i||(i=this.aggregatedData[e][t]={params:r||{}},n&&(i.custom=n)),i}get(e,t){return t?this.aggregatedData[e]&&this.aggregatedData[e][t]:this.aggregatedData[e]}take(e){for(var t={},r="",n=!1,i=0;i<e.length;i++)t[r=e[i]]=Object.values(this.aggregatedData[r]||{}),t[r].length&&(n=!0),delete this.aggregatedData[r];return n?t:null}}function x(e,t){return null==e?function(e){e?e.c++:e={c:1};return e}(t):t?(t.c||(t=R(t.t)),t.c+=1,t.t+=e,t.sos+=e*e,e>t.max&&(t.max=e),e<t.min&&(t.min=e),t):{t:e}}function R(e){return{t:e,min:e,max:e,sos:e*e,c:1}}var S=i(8632),T=i(4351);var N=i(5546),O=i(7956),I=i(3239),D=i(9251),P=i(7894);class C extends b{static featureName=D.t;constructor(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,t,D.t,r),p.il&&((0,O.N)((()=>(0,N.p)("docHidden",[(0,P.z)()],void 0,D.t,this.ee)),!0),(0,I.bP)("pagehide",(()=>(0,N.p)("winPagehide",[(0,P.z)()],void 0,D.t,this.ee))),this.importAggregator())}}var j=i(3081);class k extends b{static featureName=j.t9;constructor(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,t,j.t9,r),this.importAggregator()}}var L=i(6660);class H{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,T.P)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function M(e){return F(e)?e:new H(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic)}function U(e){let t="Unhandled Promise Rejection";if(F(e?.reason))try{return e.reason.message=t+": "+e.reason.message,M(e.reason)}catch(t){return M(e.reason)}if(void 0===e.reason)return M(t);const r=M(e.reason);return r.message=t+": "+r?.message,r}function z(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new H(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic);return t.name=SyntaxError.name,t}return F(e.error)?e.error:M(e)}function F(e){return e instanceof Error&&!!e.stack}class B extends b{static featureName=L.t;#r=!1;constructor(e,r){let n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,r,L.t,n);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(e=>{this.abortHandler&&(0,N.p)("ierr",[M(e),(0,P.z)(),!0,{},this.#r],void 0,this.featureName,this.ee)})),this.ee.on(t.Ef.REPLAY_RUNNING,(e=>{this.#r=e})),p._A.addEventListener("unhandledrejection",(e=>{this.abortHandler&&(0,N.p)("err",[U(e),(0,P.z)(),!1,{unhandledPromiseRejection:1},this.#r],void 0,this.featureName,this.ee)}),(0,I.m$)(!1,this.removeOnAbort?.signal)),p._A.addEventListener("error",(e=>{this.abortHandler&&(0,N.p)("err",[z(e),(0,P.z)(),!1,{},this.#r],void 0,this.featureName,this.ee)}),(0,I.m$)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator()}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var G=i(2210);let q=1;const K="nr@id";function V(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===p._A?0:(0,G.X)(e,K,(function(){return q++}))}function Z(e){if("string"==typeof e&&e.length)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,T.P)(e).length}catch(e){return}}}var W=i(7806),X=i(7243);class Y{constructor(e){this.agentIdentifier=e}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var t=(0,s.DL)(this.agentIdentifier);if(!t)return null;var n=(t.accountID||"").toString()||null,i=(t.agentID||"").toString()||null,o=(t.trustKey||"").toString()||null;if(!n||!i)return null;var a=(0,r.M)(),c=(0,r.Ht)(),u=Date.now(),d={spanId:a,traceId:c,timestamp:u};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(d.traceContextParentHeader=this.generateTraceContextParentHeader(a,c),d.traceContextStateHeader=this.generateTraceContextStateHeader(a,u,n,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(d.newrelicHeader=this.generateTraceHeader(a,c,u,n,i,o)),d}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,o){if(!("function"==typeof p._A?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,T.P)(a))}shouldGenerateTrace(e){return this.isDtEnabled()&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1,r={};if((0,s.Mt)(this.agentIdentifier,"distributed_tracing")&&(r=(0,s.P_)(this.agentIdentifier).distributed_tracing),e.sameOrigin)t=!0;else if(r.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,X.e)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}isDtEnabled(){var e=(0,s.Mt)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.enabled}excludeNewrelicHeader(){var e=(0,s.Mt)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=(0,s.Mt)(this.agentIdentifier,"distributed_tracing");return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=(0,s.Mt)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.cors_use_tracecontext_headers}}var J=i(7825),Q=i(1199),ee=["load","error","abort","timeout"],te=ee.length,re=s.Yu.REQ,ne=s.Yu.XHR;class ie extends b{static featureName=J.t;constructor(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,t,J.t,r),this.dt=new Y(e),this.handler=(e,t,r,n)=>(0,N.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};p._A?.performance?.getEntriesByType("resource").forEach((t=>{if(t.initiatorType in e&&0!==t.responseStatus){const r={status:t.responseStatus},n={rxSize:t.transferSize,duration:Math.floor(t.duration),cbTime:0};oe(r,t.name),this.handler("xhr",[r,n,t.startTime,t.responseEnd,e[t.initiatorType]],void 0,a.D.ajax)}}))}catch(e){}(0,W.u5)(this.ee),(0,W.Kf)(this.ee),function(e,t,r,n){function i(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=E,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){_(t,e)}),(0,I.m$)(!1)),p.IF||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,I.m$)(!1))}function o(e){this.params={method:e[0]},oe(this,e[1]),this.metrics={}}function c(t,r){var i=(0,s.DL)(e);i.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",i.xpid);var o=n.generateTracePayload(this.parsedOrigin);if(o){var a=!1;o.newrelicHeader&&(r.setRequestHeader("newrelic",o.newrelicHeader),a=!0),o.traceContextParentHeader&&(r.setRequestHeader("traceparent",o.traceContextParentHeader),o.traceContextStateHeader&&r.setRequestHeader("tracestate",o.traceContextStateHeader),a=!0),a&&(this.dt=o)}}function u(e,r){var n=this.metrics,i=e[0],o=this;if(n&&i){var a=Z(i);a&&(n.txSize=a)}this.startTime=(0,P.z)(),this.body=i,this.listener=function(e){try{"abort"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==e.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof r.onload)&&"function"==typeof o.end)&&o.end(r)}catch(e){try{t.emit("internal-error",[e])}catch(e){}}};for(var s=0;s<te;s++)r.addEventListener(ee[s],this.listener,(0,I.m$)(!1))}function d(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 l(e,t){var r=""+V(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function f(e,t){var r=""+V(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function h(){this.endTime=(0,P.z)()}function g(e,r){r instanceof ne&&"load"===e[0]&&t.emit("xhr-load-added",[e[1],e[2]],r)}function m(e,r){r instanceof ne&&"load"===e[0]&&t.emit("xhr-load-removed",[e[1],e[2]],r)}function v(e,t,r){t instanceof ne&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,P.z)()))}function b(e,r){this.xhrCbStart&&t.emit("xhr-cb-time",[(0,P.z)()-this.xhrCbStart,this.onload,r],r)}function y(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&p.il&&(t=""+p._A.location.href):e[0]&&e[0].url?t=e[0].url:p._A?.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,X.e)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var i=n.generateTracePayload(this.parsedOrigin);if(i&&(i.newrelicHeader||i.traceContextParentHeader))if(e[0]&&e[0].headers)s(e[0].headers,i)&&(this.dt=i);else{var o={};for(var a in r)o[a]=r[a];o.headers=new Headers(r.headers||{}),s(o.headers,i)&&(this.dt=i),e.length>1?e[1]=o:e.push(o)}}function s(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 A(e,t){this.params={},this.metrics={},this.startTime=(0,P.z)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r,n=this.opts||{},i=this.target;"string"==typeof i?r=i:"object"==typeof i&&i instanceof re?r=i.url:p._A?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),oe(this,r);var o=(""+(i&&i instanceof re&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.body=n.body,this.txSize=Z(n.body)||0}function w(e,t){if(this.endTime=(0,P.z)(),this.params||(this.params={}),(0,Q.zh)(this.params))return;let n;this.params.status=t?t.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);const i={txSize:this.txSize,rxSize:n,duration:(0,P.z)()-this.startTime};r("xhr",[this.params,i,this.startTime,this.endTime,"fetch"],this,a.D.ajax)}function E(e){const t=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(let t=0;t<te;t++)e.removeEventListener(ee[t],this.listener,!1);t.aborted||(0,Q.zh)(t)||(n.duration=(0,P.z)()-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):_(this,e),n.cbTime=this.cbTime,r("xhr",[t,n,this.startTime,this.endTime,"xhr"],this,a.D.ajax))}}function _(e,r){e.params.status=r.status;var n=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?Z(e.response):"text"===r||""===r||void 0===r?Z(e.responseText):void 0}(r,e.lastSize);if(n&&(e.metrics.rxSize=n),e.sameOrigin){var i=r.getResponseHeader("X-NewRelic-App-Data");i&&((0,N.p)(j.mY,["Ajax/CrossApplicationTracing/Header/Seen"],void 0,a.D.metrics,t),e.params.cat=i.split(", ").pop())}e.loadCaptureCalled=!0}t.on("new-xhr",i),t.on("open-xhr-start",o),t.on("open-xhr-end",c),t.on("send-xhr-start",u),t.on("xhr-cb-time",d),t.on("xhr-load-added",l),t.on("xhr-load-removed",f),t.on("xhr-resolved",h),t.on("addEventListener-end",g),t.on("removeEventListener-end",m),t.on("fn-end",b),t.on("fetch-before-start",y),t.on("fetch-start",A),t.on("fn-start",v),t.on("fetch-done",w)}(e,this.ee,this.handler,this.dt),this.importAggregator()}}function oe(e,t){var r=(0,X.e)(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 ae=i(3614);const{BST_RESOURCE:se,RESOURCE:ce,START:ue,END:de,FEATURE_NAME:le,FN_END:fe,FN_START:he,PUSH_STATE:pe}=ae;var ge=i(7056);class me extends b{static featureName=t.t9;#i;constructor(e,r){let n,i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,r,t.t9,i),this.replayRunning=!1;try{n=JSON.parse(localStorage.getItem("".concat(ge.Bq,"_").concat(ge.K4)))}catch(e){}(0,g.Rc)(e)&&this.ee.on("recordReplay",(()=>this.#o())),this.#a(n)?(this.#i=n?.sessionReplayMode,this.#s()):this.importAggregator(),this.ee.on("err",(e=>{this.replayRunning&&(this.errorNoticed=!0,(0,N.p)(t.Ef.ERROR_DURING_REPLAY,[e],void 0,this.featureName,this.ee))})),this.ee.on(t.Ef.REPLAY_RUNNING,(e=>{this.replayRunning=e}))}#a(e){return e&&(e.sessionReplayMode===ge.IK.FULL||e.sessionReplayMode===ge.IK.ERROR)||(0,g.rU)(this.agentIdentifier)}#c=!1;async#s(e){if(!this.#c){this.#c=!0;try{const{Recorder:t}=await Promise.all([i.e(111),i.e(433)]).then(i.bind(i,4345));this.recorder??=new t({mode:this.#i,agentIdentifier:this.agentIdentifier,trigger:e,ee:this.ee}),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording}catch(e){}this.importAggregator({recorder:this.recorder,errorNoticed:this.errorNoticed})}}#o(){this.featAggregate?this.featAggregate.mode!==ge.IK.FULL&&this.featAggregate.initializeRecording(ge.IK.FULL,!0):(this.#i=ge.IK.FULL,this.#s(t.pB.API),this.recorder&&this.recorder.parent.mode!==ge.IK.FULL&&(this.recorder.parent.mode=ge.IK.FULL,this.recorder.stopRecording(),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording))}}var ve=i(6216);class be extends b{static featureName=ve.t9;constructor(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(super(e,t,ve.t9,r),!p.il||!s.Yu.MO)return;const n=(0,W.QU)(this.ee),i=(0,W.em)(this.ee),o=()=>(0,N.p)("newURL",[(0,P.z)(),""+window.location],void 0,this.featureName,this.ee);n.on("pushState-end",o),n.on("replaceState-end",o);try{this.removeOnAbort=new AbortController}catch(e){}(0,I.bP)("popstate",(e=>(0,N.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)),!0,this.removeOnAbort?.signal);let a=!1;const c=new s.Yu.MO(((e,t)=>{a||(a=!0,requestAnimationFrame((()=>{(0,N.p)("newDom",[(0,P.z)()],void 0,this.featureName,this.ee),a=!1})))})),u=(0,v.D)((e=>{(0,N.p)("newUIEvent",[e],void 0,this.featureName,this.ee),c.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0})}),100,{leading:!0});i.on("fn-start",(e=>{let[t]=e;ve.sE.includes(t?.type)&&u(t)}));for(let e of ve.sE)document.addEventListener(e,(()=>{}));this.abortHandler=function(){this.removeOnAbort?.abort(),c.disconnect(),this.abortHandler=void 0},this.importAggregator({domObserver:c})}}var ye=i(7836);const{FEATURE_NAME:Ae,START:we,END:Ee,BODY:_e,CB_END:xe,JS_TIME:Re,FETCH:Se,FN_START:Te,CB_START:Ne,FN_END:Oe}=ye;var Ie=i(4649);class De extends b{static featureName=Ie.t;constructor(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,t,Ie.t,r),this.importAggregator()}}new class extends o{constructor(t,r){super(r),p._A?(this.sharedAggregator=new _({agentIdentifier:this.agentIdentifier}),this.features={},(0,S.h5)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(A),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.D.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.Z)("Failed to initialize the agent. Could not determine the runtime environment.")}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.p[e.featureName]-a.p[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.D.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.D.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.D.softNav)return;const n=function(e){switch(e){case a.D.ajax:return[a.D.jserrors];case a.D.sessionTrace:return[a.D.ajax,a.D.pageViewEvent];case a.D.sessionReplay:return[a.D.sessionTrace];case a.D.pageViewTiming:return[a.D.pageViewEvent];default:return[]}}(r.featureName);n.every((e=>e in this.features))||(0,e.Z)("".concat(r.featureName," is enabled but one or more dependent features has not been initialized (").concat((0,T.P)(n),"). This may cause unintended consequences or missing data...")),this.features[r.featureName]=new r(this.agentIdentifier,this.sharedAggregator)}))}catch(t){(0,e.Z)("Failed to initialize all enabled instrument classes (agent aborted) -",t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,S.fP)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[ie,A,C,class extends b{static featureName=le;constructor(e,t){super(e,t,le,!(arguments.length>2&&void 0!==arguments[2])||arguments[2]);if(!(0,m.H)(this.agentIdentifier))return void(0,l.o5)(this.agentIdentifier,this.featureName);const r=this.ee;let n;(0,W.QU)(r),this.eventsEE=(0,W.em)(r),this.eventsEE.on(he,(function(e,t){this.bstStart=(0,P.z)()})),this.eventsEE.on(fe,(function(e,t){(0,N.p)("bst",[e[0],t,this.bstStart,(0,P.z)()],void 0,a.D.sessionTrace,r)})),r.on(pe+ue,(function(e){this.time=(0,P.z)(),this.startPath=location.pathname+location.hash})),r.on(pe+de,(function(e){(0,N.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,a.D.sessionTrace,r)}));try{n=new PerformanceObserver((e=>{const t=e.getEntries();(0,N.p)(se,[t],void 0,a.D.sessionTrace,r)})),n.observe({type:ce,buffered:!0})}catch(e){}this.importAggregator({resourceObserver:n})}},me,k,De,B,be,class extends b{static featureName=Ae;constructor(e,t){var r;if(super(e,t,Ae,!(arguments.length>2&&void 0!==arguments[2])||arguments[2]),r=this,!p.il)return;try{this.removeOnAbort=new AbortController}catch(e){}let n,i=0;const o=this.ee.get("tracer"),a=(0,W._L)(this.ee),s=(0,W.Lg)(this.ee),c=(0,W.BV)(this.ee),u=(0,W.Kf)(this.ee),d=this.ee.get("events"),l=(0,W.u5)(this.ee),f=(0,W.QU)(this.ee),h=(0,W.Gm)(this.ee);function g(e,t){f.emit("newURL",[""+window.location,t])}function m(){i++,n=window.location.hash,this[Te]=(0,P.z)()}function v(){i--,window.location.hash!==n&&g(0,!0);var e=(0,P.z)();this[Re]=~~this[Re]+e-this[Te],this[Oe]=e}function b(e,t){e.on(t,(function(){this[t]=(0,P.z)()}))}this.ee.on(Te,m),s.on(Ne,m),a.on(Ne,m),this.ee.on(Oe,v),s.on(xe,v),a.on(xe,v),this.ee.on("fn-err",(function(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];n[2]?.__newrelic?.[e]||(0,N.p)("function-err",[...n],void 0,r.featureName,r.ee)})),this.ee.buffer([Te,Oe,"xhr-resolved"],this.featureName),d.buffer([Te],this.featureName),c.buffer(["setTimeout"+Ee,"clearTimeout"+we,Te],this.featureName),u.buffer([Te,"new-xhr","send-xhr"+we],this.featureName),l.buffer([Se+we,Se+"-done",Se+_e+we,Se+_e+Ee],this.featureName),f.buffer(["newURL"],this.featureName),h.buffer([Te],this.featureName),s.buffer(["propagate",Ne,xe,"executor-err","resolve"+we],this.featureName),o.buffer([Te,"no-"+Te],this.featureName),a.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),b(l,Se+we),b(l,Se+"-done"),b(a,"new-jsonp"),b(a,"jsonp-end"),b(a,"cb-start"),f.on("pushState-end",g),f.on("replaceState-end",g),window.addEventListener("hashchange",g,(0,I.m$)(!0,this.removeOnAbort?.signal)),window.addEventListener("load",g,(0,I.m$)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",(function(){g(0,i>1)}),(0,I.m$)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator()}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}],loaderType:"spa"})})()})();</script><script>
  96.          (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
  97.            new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  98.            j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;
  99.            j.setAttributeNode(d.createAttribute('data-ot-ignore'));
  100.            j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.append(j);
  101.            })(window,document,'script','dataLayer',"GTM-5523ZCM");
  102.          </script><script>
  103.          (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
  104.            new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  105.            j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;
  106.            j.setAttributeNode(d.createAttribute('data-ot-ignore'));
  107.            j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.append(j);
  108.            })(window,document,'script','dataLayer',"GTM-MTN2X7K");
  109.          </script></head><body><div id="bigsky_v"></div><noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5523ZCM"
  110.        height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript><noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-MTN2X7K"
  111.        height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript><main data-theme="theme1" class="Provider"><div class="ads ad adsbox doubleclick ad-placement carbon-ads" style="height:1px;width:1px;position:absolute;left:-999em;top:-999em"></div><div><div data-template="layout" class="Layout"><nav data-module="navigation" aria-label="navigation" class="Navigation"><div data-testid="header" class="Navigation-HeaderWrapper"><div class="FullScreenBackground Navigation-HeaderBackground"></div><div class="Navigation-Header"><div class="InformaBar" data-component="informa-bar"><div class="InformaBar-ContentSection InformaBar-ContentSection_hidden" data-testid="informa-bar-content-section"><div class="InformaBar-LeftSection" data-testid="informa-bar-left-section"><div>InformationWeek is part of the Informa Tech Division of Informa PLC</div><div><a class="InformaBar-SubMenuItem" data-testid="informa-bar-sub-menu-item" href="https://www.informa.com/" title="Informa PLC" target="_blank" rel="noreferrer">Informa PLC</a><span class="InformaBar-Delimiter">|</span><a class="InformaBar-SubMenuItem" data-testid="informa-bar-sub-menu-item" href="https://www.informa.com/about-us/" title="ABOUT US" target="_blank" rel="noreferrer">ABOUT US</a><span class="InformaBar-Delimiter">|</span><a class="InformaBar-SubMenuItem" data-testid="informa-bar-sub-menu-item" href="https://www.informa.com/investors/" title="INVESTOR RELATIONS" target="_blank" rel="noreferrer">INVESTOR RELATIONS</a><span class="InformaBar-Delimiter">|</span><a class="InformaBar-SubMenuItem" data-testid="informa-bar-sub-menu-item" href="https://www.informa.com/talent/" title="TALENT" target="_blank" rel="noreferrer">TALENT</a></div></div><div class="InformaBar-RightSection" data-testid="informa-bar-right-section">This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC&#x27;s registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.</div></div><div class="InformaBar-LogoSection" data-testid="informa-bar-logo-section" role="button" tabindex="0" aria-label="Open Informa bar"><div class="InformaBar-LogoWrapper"><img class="InformaBar-Logo" src="/build/_assets/informaLogoWhite-RZAE7EJI.png" alt="Logo Informa" /></div><span class="InformaBar-IconWrapper InformaBar-IconWrapper_closed"><svg viewBox="0 0 320 512" aria-hidden="true" focusable="false" role="img" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="currentColor" height="100%"><path fill="#ffffff" d="M288.662 352H31.338c-17.818 0-26.741-21.543-14.142-34.142l128.662-128.662c7.81-7.81 20.474-7.81 28.284 0l128.662 128.662c12.6 12.599 3.676 34.142-14.142 34.142z"></path></svg></span></div></div></div></div><div class="Navigation-SecondaryMenuWrapper"><div class="FullScreenBackground Navigation-SecondaryMenuBackground"></div><div class="Navigation-SecondaryMenu"><nav data-testid="SecondaryMenu" class="SecondaryMenu"><a class="SecondaryMenu-Link" href="/resources?page=1&amp;types=Research+Report">Reports</a><a class="SecondaryMenu-Link" href="/resources?page=1&amp;types=Virtual+Event&amp;types=Webinar">Online Events</a><a class="SecondaryMenu-Link" href="/advertise">Advertise</a><a class="SecondaryMenu-Link" href="/about-us">About</a></nav></div></div><div style="padding-top:0px"></div><div id="navigation-header" class="Navigation-NavBase"><div data-testid="navBase" class="NavBase"><div class="NavBase-Content"><div class="FullScreenBackground NavBase-SecondaryMenuBackground"></div><div class="NavBase-HeaderWrapper"><div class="NavBase-IconsWrapper"><button data-testid="navBase-megaMenuButton" class="NavBase-MegaMenuButton" aria-label="Open Mega menu"><span data-component="icon" data-name="Bars" class="NavBase-MegaMenuIcon NavBase-MegaMenuIcon_iconVariant_small NavBase-MegaMenuIcon_iconType_bars" style="mask-image:url(/build/_assets/Bars-F4G2A5NO.svg);-webkit-mask-image:url(/build/_assets/Bars-F4G2A5NO.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></button><button data-testid="SearchButtonDesktop" class="NavBase-SearchButtonDesktop" aria-label="Open Search"><span data-component="icon" data-name="Search" class="NavBase-SearchIcon NavBase-SearchIcon_iconVariant_large NavBase-SearchIcon_iconType_search" style="mask-image:url(/build/_assets/Search-T2ANYVG5.svg);-webkit-mask-image:url(/build/_assets/Search-T2ANYVG5.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></button><button data-testid="SearchButtonTablet" class="NavBase-SearchButtonTablet" aria-label="Open Search in MegaMenu"><span data-component="icon" data-name="Search" class="NavBase-SearchIcon NavBase-SearchIcon_iconVariant_small NavBase-SearchIcon_iconType_search" style="mask-image:url(/build/_assets/Search-T2ANYVG5.svg);-webkit-mask-image:url(/build/_assets/Search-T2ANYVG5.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></button></div><div class="NavBase-LogoWrapper"><button data-testid="navBase-LogoMegaMenuButton" class="NavBase-LogoMegaMenuButton" aria-label="Open Mega menu"><span data-component="icon" data-name="Bars" class="NavBase-LogoMegaMenuIcon NavBase-LogoMegaMenuIcon_iconVariant_small NavBase-LogoMegaMenuIcon_iconType_bars" style="mask-image:url(/build/_assets/Bars-F4G2A5NO.svg);-webkit-mask-image:url(/build/_assets/Bars-F4G2A5NO.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></button><a class="NavBase-Logo" href="/"><img data-testid="logo-image" data-component="image" class="NavBase-LogoImage" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt610f1382a6ead9c3/64b854bd7f10ca354fa97a15/178206_IWK22_Logo_RGB.svg?width=476&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt610f1382a6ead9c3/64b854bd7f10ca354fa97a15/178206_IWK22_Logo_RGB.svg?width=476&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt="InformationWeek" title="InformationWeek" /></a></div><div class="NavBase-RegisterWrapper"><div data-module="newsletter-signup-promo"><div class="NewsletterSignupPromo-Button NewsletterSignupPromo-Button_small NewsletterSignupButton"><a data-component="button" data-testid="headerSmallNewsletterButton" class="Button Button_size_small Button_variant_primaryFilled" href="https://iw-resources.informationweek.com/c/pubRD.mpl?secure=1&amp;sr=pp&amp;_t=pp:&amp;qf=w_ingg126&amp;ch=iwsite" target="_blank" rel="nofollow" data-name="subscribe-nav" data-action-type="sign-up"><span data-component="icon" data-name="Email" class="Button-Icon Button-Icon_position_left" style="mask-image:url(/build/_assets/Email-47H7P533.svg);-webkit-mask-image:url(/build/_assets/Email-47H7P533.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span><span class="Button-ContentWrapper">Newsletter Sign-Up</span></a></div><div class="NewsletterSignupPromo-Button NewsletterSignupPromo-Button_medium NewsletterSignupButton"><div data-component="social-share" class="SocialShare SocialShare_variant_layout Layout-SocialShare"><a target="_blank" rel="noreferrer" aria-label="Linkedin" class="Layout-SocialLink" href="https://www.linkedin.com/company/informationweek/"><span class="SocialShare-IconWrapper SocialShare-IconWrapper_variant_layout"><span data-component="icon" data-name="Linkedin" class="SocialShare-Icon SocialShare-Icon_variant_layout SocialShare-Icon_type_linkedin" style="mask-image:url(/build/_assets/Linkedin-VQUF3EEQ.svg);-webkit-mask-image:url(/build/_assets/Linkedin-VQUF3EEQ.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></a><a target="_blank" rel="noreferrer" aria-label="Twitter" class="Layout-SocialLink" href="https://twitter.com/InformationWeek"><span class="SocialShare-IconWrapper SocialShare-IconWrapper_variant_layout"><span data-component="icon" data-name="Twitter" class="SocialShare-Icon SocialShare-Icon_variant_layout SocialShare-Icon_type_twitter" style="mask-image:url(/build/_assets/Twitter-WD5AOEQ7.svg);-webkit-mask-image:url(/build/_assets/Twitter-WD5AOEQ7.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></a><a target="_blank" rel="noreferrer" aria-label="Facebook" class="Layout-SocialLink" href="https://www.facebook.com/informationweek"><span class="SocialShare-IconWrapper SocialShare-IconWrapper_variant_layout"><span data-component="icon" data-name="Facebook" class="SocialShare-Icon SocialShare-Icon_variant_layout SocialShare-Icon_type_facebook" style="mask-image:url(/build/_assets/Facebook-CJB5G2HY.svg);-webkit-mask-image:url(/build/_assets/Facebook-CJB5G2HY.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></a><a target="_blank" rel="noreferrer" aria-label="RSS" class="Layout-SocialLink" href="https://informationweek.com/rss.xml"><span class="SocialShare-IconWrapper SocialShare-IconWrapper_variant_layout"><span data-component="icon" data-name="RSS" class="SocialShare-Icon SocialShare-Icon_variant_layout SocialShare-Icon_type_rss" style="mask-image:url(/build/_assets/RSS-3XFHIVCK.svg);-webkit-mask-image:url(/build/_assets/RSS-3XFHIVCK.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></a></div><a data-component="button" data-testid="headerMediumNewsletterButton" class="Button Button_size_medium Button_variant_primaryFilled" href="https://iw-resources.informationweek.com/c/pubRD.mpl?secure=1&amp;sr=pp&amp;_t=pp:&amp;qf=w_ingg126&amp;ch=iwsite" target="_blank" rel="nofollow" data-name="subscribe-nav" data-action-type="sign-up"><span data-component="icon" data-name="Email" class="Button-Icon Button-Icon_position_left" style="mask-image:url(/build/_assets/Email-47H7P533.svg);-webkit-mask-image:url(/build/_assets/Email-47H7P533.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span><span class="Button-ContentWrapper">Newsletter Sign-Up</span></a></div></div><button data-testid="RegisterSearchButton" class="NavBase-RegisterSearchButton" aria-label="Open Search in MegaMenu"><span data-component="icon" data-name="Search" class="NavBase-SearchIcon NavBase-SearchIcon_iconVariant_large NavBase-SearchIcon_iconType_search" style="mask-image:url(/build/_assets/Search-T2ANYVG5.svg);-webkit-mask-image:url(/build/_assets/Search-T2ANYVG5.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></button></div></div><div class="NavBase-SearchWrapper"><div class="FullScreenBackground NavBase-SearchBackground"></div><button data-testid="SearchCloseButton" class="NavBase-SearchCloseButton" aria-label="Close Search"><span data-component="icon" data-name="Close" class="NavBase-SearchIcon NavBase-SearchIcon_iconVariant_medium NavBase-SearchIcon_iconType_close" style="mask-image:url(/build/_assets/Close-KKOYAUD6.svg);-webkit-mask-image:url(/build/_assets/Close-KKOYAUD6.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></button></div></div></div><div class="Navigation-MainMenu"><div data-testid="mainMenu"><div class="FullScreenBackground MainMenu-BackgroundSubmenu"></div><div class="FullScreenBackground MainMenu-BackgroundMenuItem"></div><div class="MainMenu-Content"><div class="MainMenu-MegaMenuButtonWrapper"><button data-testid="mainMenu-MegaMenuButton" aria-label="Open MegaMenu" class="MainMenu-MegaMenuButton"><span data-component="icon" data-name="Bars" class="MainMenu-MegaMenuIcon" style="mask-image:url(/build/_assets/Bars-F4G2A5NO.svg);-webkit-mask-image:url(/build/_assets/Bars-F4G2A5NO.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></button></div><div class="MainMenu-ItemsWrapper" role="menu"><div class="MainMenu-MenuItemWrapper"><div class="MainMenu-MenuItem" role="menuitem" tabindex="0" data-testid="openSubMenu" aria-label="Open Sub menu of Leadership"><span class="MainMenu-MainTitle">Leadership<span data-component="icon" data-name="ChevronDown" class="MainMenu-SubMenuIcon" style="mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);-webkit-mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></div><div class="MainMenu-SubMenuWrapper"><div class="MainMenu-SubMenuContent"><div data-module="sub-menu" class="SubMenu MainMenu-SubMenu" role="presentation"><div class="SubMenu-Container"><div class="SubMenu-RelatedTopicsWrapper"><h4 class="SubMenu-RelatedTopics">Related Topics</h4><div class="SubMenu-CasualLinkWrapper" data-testid="related"><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/it-leadership/digital-transformation">Digital Transformation</a></li><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/it-leadership/it-staffing-careers">IT Staffing &amp; Careers</a></li></ul><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/it-leadership/it-management">IT Management</a></li><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/it-leadership/it-strategy">IT Strategy</a></li></ul></div></div><div class="SubMenu-RecentContentWrapper" data-testid="recent"><div class="SubMenu-RecentContentHeading"><h4 data-testid="recent-title" class="SubMenu-RecentText">Recent in <a class="SubMenu-RecentTopicTerm" href="/it-leadership">Leadership</a></h4><div data-testid="see-more" class="SubMenu-SeeMore"><a class="SubMenu-MoreContent" href="/it-leadership"><span class="SubMenu-SeeMoreText">See All</span><span data-component="icon" data-name="ChevronRight" class="SubMenu-SeeMoreIcon" style="mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);-webkit-mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></a></div></div><div class="SubMenu-ContentWrapper"><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/it-leadership/why-cios-are-under-pressure-to-innovate"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">Business person draws a creative business project</span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte6d46edb4d2d33c8/66329d8b3798a34f59a9904a/innovation-Federico_Caputo_-alamy.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte6d46edb4d2d33c8/66329d8b3798a34f59a9904a/innovation-Federico_Caputo_-alamy.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_itLeadership ContentPreview-Category" href="/it-leadership">IT Leadership</a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/it-leadership/why-cios-are-under-pressure-to-innovate">Why CIOs Are Under Pressure to Innovate</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/it-leadership/why-cios-are-under-pressure-to-innovate">Why CIOs Are Under Pressure to Innovate</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/lisa-morgan">Lisa Morgan</a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 15, 2024</span><div data-module="card-time" class="CardTime"><div data-component="article-read-time" class="ArticleReadTime ArticleReadTime_size_small CardTime-ReadTime"><span>8 Min<!-- --> <!-- -->Read</span></div></div></div></div></div></div><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/it-infrastructure/aws-ceo-selipsky-bows-out-as-cloud-giant-names-successor"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">In this photo illustration, the Amazon Web Services (AWS) logo is displayed on a smartphone screen.</span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltd2dd6531b2bcff3d/6643d10cae08942ff3d9014c/2X4HKHB.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltd2dd6531b2bcff3d/6643d10cae08942ff3d9014c/2X4HKHB.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_itInfrastructure ContentPreview-Category" href="/it-infrastructure">IT Infrastructure</a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/it-infrastructure/aws-ceo-selipsky-bows-out-as-cloud-giant-names-successor">AWS CEO Selipsky Bows Out as Cloud Giant Names Successor</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/it-infrastructure/aws-ceo-selipsky-bows-out-as-cloud-giant-names-successor">AWS CEO Selipsky Bows Out as Cloud Giant Names Successor</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/shane-snider">Shane Snider </a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 14, 2024</span><div data-module="card-time" class="CardTime"><div data-component="article-read-time" class="ArticleReadTime ArticleReadTime_size_small CardTime-ReadTime"><span>3 Min<!-- --> <!-- -->Read</span></div></div></div></div></div></div></div></div></div></div></div></div></div><div class="MainMenu-MenuItemWrapper"><div class="MainMenu-MenuItem" role="menuitem" tabindex="0" data-testid="openSubMenu" aria-label="Open Sub menu of Resilience"><span class="MainMenu-MainTitle">Resilience<span data-component="icon" data-name="ChevronDown" class="MainMenu-SubMenuIcon" style="mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);-webkit-mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></div><div class="MainMenu-SubMenuWrapper"><div class="MainMenu-SubMenuContent"><div data-module="sub-menu" class="SubMenu MainMenu-SubMenu" role="presentation"><div class="SubMenu-Container"><div class="SubMenu-RelatedTopicsWrapper"><h4 class="SubMenu-RelatedTopics">Related Topics</h4><div class="SubMenu-CasualLinkWrapper" data-testid="related"><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/cyber-resilience/cybersecurity">Cybersecurity</a></li><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/cyber-resilience/risk-management">Risk Management</a></li></ul><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/cyber-resilience/incident-response">Incident Response</a></li></ul></div></div><div class="SubMenu-RecentContentWrapper" data-testid="recent"><div class="SubMenu-RecentContentHeading"><h4 data-testid="recent-title" class="SubMenu-RecentText">Recent in <a class="SubMenu-RecentTopicTerm" href="/cyber-resilience">Resilience</a></h4><div data-testid="see-more" class="SubMenu-SeeMore"><a class="SubMenu-MoreContent" href="/cyber-resilience"><span class="SubMenu-SeeMoreText">See All</span><span data-component="icon" data-name="ChevronRight" class="SubMenu-SeeMoreIcon" style="mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);-webkit-mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></a></div></div><div class="SubMenu-ContentWrapper"><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/cyber-resilience/there-is-no-cyber-labor-shortage"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">eye glasses focused on the words now hiring</span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltf97c4b0381fe0b09/64bf64acb7197839dc2d26d8/NowHiring-Bryan_Sikora-BK6YMX-alamyCP.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltf97c4b0381fe0b09/64bf64acb7197839dc2d26d8/NowHiring-Bryan_Sikora-BK6YMX-alamyCP.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_cyberResilience ContentPreview-Category" href="/cyber-resilience">Cyber Resilience</a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/cyber-resilience/there-is-no-cyber-labor-shortage">There Is No Cyber Labor Shortage</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/cyber-resilience/there-is-no-cyber-labor-shortage">There Is No Cyber Labor Shortage</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/dark-reading">Dark Reading</a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 15, 2024</span><div data-module="card-time" class="CardTime"><div data-component="article-read-time" class="ArticleReadTime ArticleReadTime_size_small CardTime-ReadTime"><span>1 Min<!-- --> <!-- -->Read</span></div></div></div></div></div></div><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/cyber-resilience/rsa-conference-takeaways-fighting-new-threats-and-disinfo"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">Exposition floor at the RSA Conference 2024 in San Francisco.</span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt07828175a9e91688/663e89e6765dca7e1aba0dbf/RSAConference2024_cropped-JPRUTH.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt07828175a9e91688/663e89e6765dca7e1aba0dbf/RSAConference2024_cropped-JPRUTH.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_cyberResilience ContentPreview-Category" href="/cyber-resilience">Cyber Resilience</a><a class="ContentPreview-IconWrapper" title="Link to all podcast" data-testid="content-preview-icon-link" href="/podcasts"><span data-component="icon" data-name="Microphone" class="ContentPreview-Icon" style="mask-image:url(/build/_assets/Microphone-W4D26BPI.svg);-webkit-mask-image:url(/build/_assets/Microphone-W4D26BPI.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/cyber-resilience/rsa-conference-takeaways-fighting-new-threats-and-disinfo">RSA Conference Takeaways: Fighting New Threats and Disinfo</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/cyber-resilience/rsa-conference-takeaways-fighting-new-threats-and-disinfo">RSA Conference Takeaways: Fighting New Threats and Disinfo</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/joao-pierre-s-ruth">Joao-Pierre S. Ruth</a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 13, 2024</span></div></div></div></div></div></div></div></div></div></div></div><div class="MainMenu-MenuItemWrapper"><div class="MainMenu-MenuItem" role="menuitem" tabindex="0" data-testid="openSubMenu" aria-label="Open Sub menu of ML &amp; AI"><span class="MainMenu-MainTitle">ML &amp; AI<span data-component="icon" data-name="ChevronDown" class="MainMenu-SubMenuIcon" style="mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);-webkit-mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></div><div class="MainMenu-SubMenuWrapper"><div class="MainMenu-SubMenuContent"><div data-module="sub-menu" class="SubMenu MainMenu-SubMenu" role="presentation"><div class="SubMenu-Container"><div class="SubMenu-RelatedTopicsWrapper"><h4 class="SubMenu-RelatedTopics">Related Topics</h4><div class="SubMenu-CasualLinkWrapper" data-testid="related"><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/machine-learning-ai/responsible-ai">Responsible AI</a></li><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/machine-learning-ai/it-automation">IT Automation</a></li></ul><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/machine-learning-ai/ai-innovations">AI Innovations</a></li></ul></div></div><div class="SubMenu-RecentContentWrapper" data-testid="recent"><div class="SubMenu-RecentContentHeading"><h4 data-testid="recent-title" class="SubMenu-RecentText">Recent in <a class="SubMenu-RecentTopicTerm" href="/machine-learning-ai">ML &amp; AI</a></h4><div data-testid="see-more" class="SubMenu-SeeMore"><a class="SubMenu-MoreContent" href="/machine-learning-ai"><span class="SubMenu-SeeMoreText">See All</span><span data-component="icon" data-name="ChevronRight" class="SubMenu-SeeMoreIcon" style="mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);-webkit-mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></a></div></div><div class="SubMenu-ContentWrapper"><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/machine-learning-ai/why-enterprises-must-prioritize-llm-data-control"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">Large Language Models - LLM - Artificial Intelligence Systems Capable of Understanding and Generating Human-like Language Based on Input Data</span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt4716694d0ab6ef84/663a4cfa1e6083697c99c98d/large_language_models-ArtemisDiana_-alamy.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt4716694d0ab6ef84/663a4cfa1e6083697c99c98d/large_language_models-ArtemisDiana_-alamy.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_machineLearningAi ContentPreview-Category" href="/machine-learning-ai">Machine Learning &amp; AI</a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/machine-learning-ai/why-enterprises-must-prioritize-llm-data-control">Why Enterprises Must Prioritize LLM Data Control</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/machine-learning-ai/why-enterprises-must-prioritize-llm-data-control">Why Enterprises Must Prioritize LLM Data Control</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/shomron-jacob">Shomron Jacob</a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 14, 2024</span><div data-module="card-time" class="CardTime"><div data-component="article-read-time" class="ArticleReadTime ArticleReadTime_size_small CardTime-ReadTime"><span>4 Min<!-- --> <!-- -->Read</span></div></div></div></div></div></div><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/machine-learning-ai/openai-s-chatgpt-launches-gpt-4o-desktop-app"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">The logo and name of the technology company OpenAI which developed ChatGPT.</span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltbb8216fe984fffbc/66425c49b76b4c3ad43df366/2PM9G2A.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltbb8216fe984fffbc/66425c49b76b4c3ad43df366/2PM9G2A.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_machineLearningAi ContentPreview-Category" href="/machine-learning-ai">Machine Learning &amp; AI</a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/machine-learning-ai/openai-s-chatgpt-launches-gpt-4o-desktop-app">OpenAI’s ChatGPT Launches ‘GPT-4o,’ Desktop App</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/machine-learning-ai/openai-s-chatgpt-launches-gpt-4o-desktop-app">OpenAI’s ChatGPT Launches ‘GPT-4o,’ Desktop App</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/shane-snider">Shane Snider </a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 13, 2024</span><div data-module="card-time" class="CardTime"><div data-component="article-read-time" class="ArticleReadTime ArticleReadTime_size_small CardTime-ReadTime"><span>3 Min<!-- --> <!-- -->Read</span></div></div></div></div></div></div></div></div></div></div></div></div></div><div class="MainMenu-MenuItemWrapper"><div class="MainMenu-MenuItem" role="menuitem" tabindex="0" data-testid="openSubMenu" aria-label="Open Sub menu of Data"><span class="MainMenu-MainTitle">Data<span data-component="icon" data-name="ChevronDown" class="MainMenu-SubMenuIcon" style="mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);-webkit-mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></div><div class="MainMenu-SubMenuWrapper"><div class="MainMenu-SubMenuContent"><div data-module="sub-menu" class="SubMenu MainMenu-SubMenu" role="presentation"><div class="SubMenu-Container"><div class="SubMenu-RelatedTopicsWrapper"><h4 class="SubMenu-RelatedTopics">Related Topics</h4><div class="SubMenu-CasualLinkWrapper" data-testid="related"><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/data-management/data-privacy">Data Privacy</a></li></ul><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/data-management/data-governance">Data Governance</a></li></ul></div></div><div class="SubMenu-RecentContentWrapper" data-testid="recent"><div class="SubMenu-RecentContentHeading"><h4 data-testid="recent-title" class="SubMenu-RecentText">Recent in <a class="SubMenu-RecentTopicTerm" href="/data-management">Data</a></h4><div data-testid="see-more" class="SubMenu-SeeMore"><a class="SubMenu-MoreContent" href="/data-management"><span class="SubMenu-SeeMoreText">See All</span><span data-component="icon" data-name="ChevronRight" class="SubMenu-SeeMoreIcon" style="mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);-webkit-mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></a></div></div><div class="SubMenu-ContentWrapper"><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/machine-learning-ai/what-you-need-to-know-about-ai-as-a-service"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">thumbnail</span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte6378d59fbe53180/662a91379f121c0ca8805017/AI_services_hirunlaowisit-AlamyStockPhoto.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte6378d59fbe53180/662a91379f121c0ca8805017/AI_services_hirunlaowisit-AlamyStockPhoto.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_machineLearningAi ContentPreview-Category" href="/machine-learning-ai">Machine Learning &amp; AI</a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/machine-learning-ai/what-you-need-to-know-about-ai-as-a-service">What You Need to Know about AI as a Service</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/machine-learning-ai/what-you-need-to-know-about-ai-as-a-service">What You Need to Know about AI as a Service</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/john-edwards">John Edwards</a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 13, 2024</span><div data-module="card-time" class="CardTime"><div data-component="article-read-time" class="ArticleReadTime ArticleReadTime_size_small CardTime-ReadTime"><span>5 Min<!-- --> <!-- -->Read</span></div></div></div></div></div></div><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/data-management/dna-is-an-ancient-form-of-data-storage-is-it-also-a-radical-new-alternative-"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">DNA (deoxyribonucleic acid) strand, illustration. </span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blteee17ba2a4c415ac/6632439de2b5a82a690f03d0/DNA-Science_Photo_Library-alamy.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blteee17ba2a4c415ac/6632439de2b5a82a690f03d0/DNA-Science_Photo_Library-alamy.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_dataManagement ContentPreview-Category" href="/data-management">Data Management</a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/data-management/dna-is-an-ancient-form-of-data-storage-is-it-also-a-radical-new-alternative-">DNA is an Ancient Form of Data Storage. Is it Also a Radical New Alternative?</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/data-management/dna-is-an-ancient-form-of-data-storage-is-it-also-a-radical-new-alternative-">DNA is an Ancient Form of Data Storage. Is it Also a Radical New Alternative?</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/richard-pallardy">Richard Pallardy</a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 7, 2024</span><div data-module="card-time" class="CardTime"><div data-component="article-read-time" class="ArticleReadTime ArticleReadTime_size_small CardTime-ReadTime"><span>15 Min<!-- --> <!-- -->Read</span></div></div></div></div></div></div></div></div></div></div></div></div></div><div class="MainMenu-MenuItemWrapper"><div class="MainMenu-MenuItem" role="menuitem" tabindex="0" data-testid="openSubMenu" aria-label="Open Sub menu of Sustainability"><span class="MainMenu-MainTitle">Sustainability<span data-component="icon" data-name="ChevronDown" class="MainMenu-SubMenuIcon" style="mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);-webkit-mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></div><div class="MainMenu-SubMenuWrapper"><div class="MainMenu-SubMenuContent"><div data-module="sub-menu" class="SubMenu MainMenu-SubMenu" role="presentation"><div class="SubMenu-Container"><div class="SubMenu-RelatedTopicsWrapper"><h4 class="SubMenu-RelatedTopics">Related Topics</h4><div class="SubMenu-CasualLinkWrapper" data-testid="related"><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/sustainability/green-it">Green IT</a></li></ul><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/sustainability/esg">ESG</a></li></ul></div></div><div class="SubMenu-RecentContentWrapper" data-testid="recent"><div class="SubMenu-RecentContentHeading"><h4 data-testid="recent-title" class="SubMenu-RecentText">Recent in <a class="SubMenu-RecentTopicTerm" href="/sustainability">Sustainability</a></h4><div data-testid="see-more" class="SubMenu-SeeMore"><a class="SubMenu-MoreContent" href="/sustainability"><span class="SubMenu-SeeMoreText">See All</span><span data-component="icon" data-name="ChevronRight" class="SubMenu-SeeMoreIcon" style="mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);-webkit-mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></a></div></div><div class="SubMenu-ContentWrapper"><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/sustainability/ai-data-centers-and-energy-use-the-path-to-sustainability"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">green earth with a plug attached</span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt4aff524f0f77fb1c/64bf444dc581675c639dd714/greenearthplug3-SABIDA-akamy.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt4aff524f0f77fb1c/64bf444dc581675c639dd714/greenearthplug3-SABIDA-akamy.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_sustainability ContentPreview-Category" href="/sustainability">Sustainability</a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/sustainability/ai-data-centers-and-energy-use-the-path-to-sustainability">AI, Data Centers, and Energy Use: The Path to Sustainability</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/sustainability/ai-data-centers-and-energy-use-the-path-to-sustainability">AI, Data Centers, and Energy Use: The Path to Sustainability</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName Contributors-ContributorName_showComma" data-testid="contributor-name" href="/author/mark-gibson">Mark Gibson<!-- -->, </a><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/angie-gildea">Angie Gildea</a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 15, 2024</span><div data-module="card-time" class="CardTime"><div data-component="article-read-time" class="ArticleReadTime ArticleReadTime_size_small CardTime-ReadTime"><span>4 Min<!-- --> <!-- -->Read</span></div></div></div></div></div></div><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/sustainability/sustaining-future-workers-and-consumers-moves-up-in-esg-efforts"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">Happy and sad life balance, sunny happy emoticon and sad emoji on under a cloud on balance, mental health, wellness concept </span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt036a3a243c8d00c4/6632a61b2a3ce077543691ff/Happy_Sad_-_OreoConcept_-alamy.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt036a3a243c8d00c4/6632a61b2a3ce077543691ff/Happy_Sad_-_OreoConcept_-alamy.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_sustainability ContentPreview-Category" href="/sustainability">Sustainability</a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/sustainability/sustaining-future-workers-and-consumers-moves-up-in-esg-efforts">Sustaining Future Workers and Consumers Moves Up in ESG Efforts</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/sustainability/sustaining-future-workers-and-consumers-moves-up-in-esg-efforts">Sustaining Future Workers and Consumers Moves Up in ESG Efforts</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/pam-baker">Pam Baker</a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 14, 2024</span><div data-module="card-time" class="CardTime"><div data-component="article-read-time" class="ArticleReadTime ArticleReadTime_size_small CardTime-ReadTime"><span>5 Min<!-- --> <!-- -->Read</span></div></div></div></div></div></div></div></div></div></div></div></div></div><div class="MainMenu-MenuItemWrapper"><div class="MainMenu-MenuItem" role="menuitem" tabindex="0" data-testid="openSubMenu" aria-label="Open Sub menu of Infrastructure"><span class="MainMenu-MainTitle">Infrastructure<span data-component="icon" data-name="ChevronDown" class="MainMenu-SubMenuIcon" style="mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);-webkit-mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></div><div class="MainMenu-SubMenuWrapper"><div class="MainMenu-SubMenuContent"><div data-module="sub-menu" class="SubMenu MainMenu-SubMenu" role="presentation"><div class="SubMenu-Container"><div class="SubMenu-RelatedTopicsWrapper"><h4 class="SubMenu-RelatedTopics">Related Topics</h4><div class="SubMenu-CasualLinkWrapper" data-testid="related"><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/it-infrastructure/data-centers">Data Centers</a></li></ul><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/it-infrastructure/cloud-computing">Cloud Computing</a></li></ul></div></div><div class="SubMenu-RecentContentWrapper" data-testid="recent"><div class="SubMenu-RecentContentHeading"><h4 data-testid="recent-title" class="SubMenu-RecentText">Recent in <a class="SubMenu-RecentTopicTerm" href="/it-infrastructure">Infrastructure</a></h4><div data-testid="see-more" class="SubMenu-SeeMore"><a class="SubMenu-MoreContent" href="/it-infrastructure"><span class="SubMenu-SeeMoreText">See All</span><span data-component="icon" data-name="ChevronRight" class="SubMenu-SeeMoreIcon" style="mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);-webkit-mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></a></div></div><div class="SubMenu-ContentWrapper"><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/it-infrastructure/aws-ceo-selipsky-bows-out-as-cloud-giant-names-successor"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">In this photo illustration, the Amazon Web Services (AWS) logo is displayed on a smartphone screen.</span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltd2dd6531b2bcff3d/6643d10cae08942ff3d9014c/2X4HKHB.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltd2dd6531b2bcff3d/6643d10cae08942ff3d9014c/2X4HKHB.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_itInfrastructure ContentPreview-Category" href="/it-infrastructure">IT Infrastructure</a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/it-infrastructure/aws-ceo-selipsky-bows-out-as-cloud-giant-names-successor">AWS CEO Selipsky Bows Out as Cloud Giant Names Successor</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/it-infrastructure/aws-ceo-selipsky-bows-out-as-cloud-giant-names-successor">AWS CEO Selipsky Bows Out as Cloud Giant Names Successor</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/shane-snider">Shane Snider </a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 14, 2024</span><div data-module="card-time" class="CardTime"><div data-component="article-read-time" class="ArticleReadTime ArticleReadTime_size_small CardTime-ReadTime"><span>3 Min<!-- --> <!-- -->Read</span></div></div></div></div></div></div><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/cyber-resilience/rsa-conference-takeaways-fighting-new-threats-and-disinfo"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">Exposition floor at the RSA Conference 2024 in San Francisco.</span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt07828175a9e91688/663e89e6765dca7e1aba0dbf/RSAConference2024_cropped-JPRUTH.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt07828175a9e91688/663e89e6765dca7e1aba0dbf/RSAConference2024_cropped-JPRUTH.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_cyberResilience ContentPreview-Category" href="/cyber-resilience">Cyber Resilience</a><a class="ContentPreview-IconWrapper" title="Link to all podcast" data-testid="content-preview-icon-link" href="/podcasts"><span data-component="icon" data-name="Microphone" class="ContentPreview-Icon" style="mask-image:url(/build/_assets/Microphone-W4D26BPI.svg);-webkit-mask-image:url(/build/_assets/Microphone-W4D26BPI.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/cyber-resilience/rsa-conference-takeaways-fighting-new-threats-and-disinfo">RSA Conference Takeaways: Fighting New Threats and Disinfo</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/cyber-resilience/rsa-conference-takeaways-fighting-new-threats-and-disinfo">RSA Conference Takeaways: Fighting New Threats and Disinfo</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/joao-pierre-s-ruth">Joao-Pierre S. Ruth</a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 13, 2024</span></div></div></div></div></div></div></div></div></div></div></div><div class="MainMenu-MenuItemWrapper"><div class="MainMenu-MenuItem" role="menuitem" tabindex="0" data-testid="openSubMenu" aria-label="Open Sub menu of Software"><span class="MainMenu-MainTitle">Software<span data-component="icon" data-name="ChevronDown" class="MainMenu-SubMenuIcon" style="mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);-webkit-mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></div><div class="MainMenu-SubMenuWrapper"><div class="MainMenu-SubMenuContent"><div data-module="sub-menu" class="SubMenu MainMenu-SubMenu" role="presentation"><div class="SubMenu-Container"><div class="SubMenu-RelatedTopicsWrapper"><h4 class="SubMenu-RelatedTopics">Related Topics</h4><div class="SubMenu-CasualLinkWrapper" data-testid="related"><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/software-services/devops">DevOps</a></li><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/software-services/software-platforms">Software Platforms</a></li></ul><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/software-services/operating-systems">Operating Systems</a></li></ul></div></div><div class="SubMenu-RecentContentWrapper" data-testid="recent"><div class="SubMenu-RecentContentHeading"><h4 data-testid="recent-title" class="SubMenu-RecentText">Recent in <a class="SubMenu-RecentTopicTerm" href="/software-services">Software</a></h4><div data-testid="see-more" class="SubMenu-SeeMore"><a class="SubMenu-MoreContent" href="/software-services"><span class="SubMenu-SeeMoreText">See All</span><span data-component="icon" data-name="ChevronRight" class="SubMenu-SeeMoreIcon" style="mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);-webkit-mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></a></div></div><div class="SubMenu-ContentWrapper"><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/machine-learning-ai/what-you-need-to-know-about-ai-as-a-service"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">thumbnail</span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte6378d59fbe53180/662a91379f121c0ca8805017/AI_services_hirunlaowisit-AlamyStockPhoto.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte6378d59fbe53180/662a91379f121c0ca8805017/AI_services_hirunlaowisit-AlamyStockPhoto.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_machineLearningAi ContentPreview-Category" href="/machine-learning-ai">Machine Learning &amp; AI</a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/machine-learning-ai/what-you-need-to-know-about-ai-as-a-service">What You Need to Know about AI as a Service</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/machine-learning-ai/what-you-need-to-know-about-ai-as-a-service">What You Need to Know about AI as a Service</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/john-edwards">John Edwards</a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 13, 2024</span><div data-module="card-time" class="CardTime"><div data-component="article-read-time" class="ArticleReadTime ArticleReadTime_size_small CardTime-ReadTime"><span>5 Min<!-- --> <!-- -->Read</span></div></div></div></div></div></div><div class="ContentPreview" data-module="content-preview" data-variant="card-vertical"><div class="ContentPreview-Wrapper ContentPreview-Wrapper_variant_cardVertical"><a data-testid="thumbnail" href="/software-services/introducing-maintenance-for-agile-applications"><div class="ContentPreview-ImageContainer"><span data-testid="content-preview-screen-reader-text" class="ContentPreview-ImageScreenReaderText">business people at a table with word Agile in the center</span><img data-testid="content-preview-image" data-component="image" class="ContentPreview-Image" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt4335e4c09ec408ae/64cb1c0a4f38401d2d222dd8/Agile-rawpixel-stock.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt4335e4c09ec408ae/64cb1c0a4f38401d2d222dd8/Agile-rawpixel-stock.jpg?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt title /></div></a><a data-component="keyword" class="Keyword Keyword_variant_standard Keyword_title_softwareServices ContentPreview-Category" href="/software-services">Software &amp; Services</a><div class="VerticalCard"><div class="VerticalCard-Body"><a class="VerticalCard-Title VerticalCard-Title_displayOption_default" data-testid="preview-default-title" href="/software-services/introducing-maintenance-for-agile-applications">Introducing Maintenance for Agile Applications</a><a class="VerticalCard-Title VerticalCard-Title_displayOption_mobile" data-testid="preview-mobile-title" href="/software-services/introducing-maintenance-for-agile-applications">Introducing Maintenance for Agile Applications</a><div class="Contributors Contributors_variant_slimline VerticalCard-ContributorsWrapper" data-component="contributors"><div class="Contributors-InfoWrapper"><span class="Contributors-ByText" data-testid="by-text">by</span><a class="Contributors-ContributorName" data-testid="contributor-name" href="/author/mary-e-shacklett">Mary E. Shacklett</a></div></div></div><div class="VerticalCard-Footer"><span class="VerticalCard-Date" data-testid="vertical-card-date">May 3, 2024</span><div data-module="card-time" class="CardTime"><div data-component="article-read-time" class="ArticleReadTime ArticleReadTime_size_small CardTime-ReadTime"><span>5 Min<!-- --> <!-- -->Read</span></div></div></div></div></div></div></div></div></div></div></div></div></div><div class="MainMenu-MenuItemWrapper"><div class="MainMenu-MenuItem" role="menuitem" tabindex="0" data-testid="openSubMenu" aria-label="Open Sub menu of More"><span class="MainMenu-MainTitle">More<span data-component="icon" data-name="ChevronDown" class="MainMenu-SubMenuIcon" style="mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);-webkit-mask-image:url(/build/_assets/ChevronDown-PF4EH6J6.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></div><div class="MainMenu-SubMenuWrapper"><div class="MainMenu-SubMenuContent"><div data-module="sub-menu" class="SubMenu MainMenu-SubMenu" role="presentation"><div class="SubMenu-Container"><div class="SubMenu-RelatedTopicsWrapper"><h4 class="SubMenu-RelatedTopics">Related Topics</h4><div class="SubMenu-CasualLinkWrapper" data-testid="related"><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" rel="nofollow" target="_blank" href="https://iw-resources.informationweek.com/free/w_ingg126/prgm.cgi?a=1">Newsletters</a></li><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/resources?page=1&amp;types=Research+Report">Reports/Research</a></li><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/resources?page=1&amp;types=Virtual+Event&amp;types=Webinar">Online Events</a></li><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/events">Live Events</a></li><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/podcasts">Podcasts</a></li></ul><ul class="SubMenu-CasualLinkList"><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/resources?page=1&amp;types=White+Paper">White Papers</a></li><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/advertise">Advertise With Us</a></li><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/about-us">About Us</a></li><li class="SubMenu-CasualLinkItem"><a class="SubMenu-ItemLink" data-testid="sub-menu-item-link" href="/it-sectors">IT Sectors</a></li></ul></div></div><div class="SubMenu-RecentContentWrapper" data-testid="recent"><div data-testid="see-more" class="SubMenu-SeeMore"><a class="SubMenu-MoreContent SubMenu-MoreContent_noRecent" href="/resources"><span class="SubMenu-SeeMoreText">InformationWeek Resource Library</span><span data-component="icon" data-name="ChevronRight" class="SubMenu-SeeMoreIcon" style="mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);-webkit-mask-image:url(/build/_assets/ChevronRight-W5LPP5NG.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></a></div></div></div></div></div></div></div></div><div class="MainMenu-SearchButtonWrapper"><button data-testid="mainMenu-SearchButton" aria-label="Open Search" class="MainMenu-SearchButton"><span data-component="icon" data-name="Search" class="MainMenu-SearchButtonIcon" style="mask-image:url(/build/_assets/Search-T2ANYVG5.svg);-webkit-mask-image:url(/build/_assets/Search-T2ANYVG5.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></button></div></div><div class="MainMenu-SearchWrapper"><div class="FullScreenBackground MainMenu-SearchBackground MainMenu-SearchBackground_withSearchBar"></div><button data-testid="mainMenu-SearchCloseButton" class="MainMenu-SearchCloseButton" aria-label="Close Search"><span data-component="icon" data-name="Close" class="MainMenu-SearchCloseIcon" style="mask-image:url(/build/_assets/Close-KKOYAUD6.svg);-webkit-mask-image:url(/build/_assets/Close-KKOYAUD6.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></button></div></div></div></div></nav><section class="Layout-Section"><div class="ErrorBoundary"><div data-module="content" class="ContentModule-Wrapper"><h1 class="ContentText ContentText_variant_h1 ContentText_align_center" data-testid="content-text" id="404 Error" style="scroll-margin-top:10rem;scroll-snap-margin-top:10rem">404 Error</h1><p class="ContentParagraph ContentParagraph_align_center" data-testid="content-paragraph"><span class="ContentText ContentText_variant_bodyNormal" data-testid="content-text"><span class="ContentText-BodyTextChunk ContentText-BodyTextChunk_bold">Going the wrong way?</span></span></p><p class="ContentParagraph ContentParagraph_align_center" data-testid="content-paragraph"><span class="ContentText ContentText_variant_bodyNormal" data-testid="content-text">Sorry. The page you requested cannot be found. </span><span class="ContentText ContentText_variant_bodyNormal" data-testid="content-text"><a class="ContentText-BodyTextChunk ContentText-BodyTextChunk_link" href="/">Back to home page</a></span></p></div></div></section><footer data-module="footer" class="Footer"><div class="Footer-Background"></div><div data-testid="logo" class="Footer-LogoContainer Footer-LogoContainer_length_2"><a href="/"><img title="Information Week Logo" data-component="image" class="Footer-LogoImage Footer-LogoImage_length_2" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte28ded54d12e0ac0/644913f2d2002548587a2a5e/InformationWeek-Logo.png?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte28ded54d12e0ac0/644913f2d2002548587a2a5e/InformationWeek-Logo.png?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt="Information Week Logo" /></a></div><div data-testid="LinkSection" class="LinkSection LinkSection_length_2"><h5 class="LinkSection-Title" data-testid="link-section-title">Discover More</h5><div class="LinkSection-LinksWrapper"><a class="LinkSection-Link" target="_blank" rel="noreferrer" href="https://omdia.tech.informa.com/">Omdia</a><a class="LinkSection-Link" target="_blank" rel="noreferrer" href="https://www.networkcomputing.com/">Network Computing</a><a class="LinkSection-Link" target="_blank" rel="noreferrer" href="https://www.itprotoday.com/">ITPro Today</a><a class="LinkSection-Link" target="_blank" rel="noreferrer" href="https://www.datacenterknowledge.com/">Data Center Knowledge</a><a class="LinkSection-Link" target="_blank" rel="noreferrer" href="https://datacenterworld.com/">Data Center World </a></div></div><div data-testid="LinkSection" class="LinkSection LinkSection_length_2"><h5 class="LinkSection-Title" data-testid="link-section-title">Working With Us</h5><div class="LinkSection-LinksWrapper"><a class="LinkSection-Link" rel="noreferrer" href="/about-us" target="_blank">About Us</a><a class="LinkSection-Link" target="_blank" rel="noreferrer" href="https://info.wrightsmedia.com/informa-licensing-reprints-request">Reprints</a><a class="LinkSection-Link" rel="noreferrer" href="/advertise" target="_blank">Advertise</a><a class="LinkSection-Link" rel="noreferrer" href="/contact-us" target="_blank">Contact Us</a></div></div><div data-testid="registration" class="Footer-RegistrationWrapper"><div class="RegistrationSection RegistrationSection_linkSectionLength_2"><h5 class="RegistrationSection-Title">Join Us</h5><div class="Layout-Register Layout-Register_variant_footer"></div><div class="Layout-NewsLetter Layout-NewsLetter_variant_footer"><div data-module="newsletter-signup-promo"><a data-component="button" data-testid="footerNewsletterButton" class="Button Button_size_medium Button_variant_primaryFilled" href="https://iw-resources.informationweek.com/c/pubRD.mpl?secure=1&amp;sr=pp&amp;_t=pp:&amp;qf=w_ingg126&amp;ch=iwsite" target="_blank" rel="nofollow" data-name="subscribe-footer" data-action-type="sign-up"><span class="Button-ContentWrapper">Newsletter Sign-Up</span></a></div></div></div></div><div data-testid="social" class="SocialSection SocialSection_linkSectionLength_2"><h5 class="SocialSection-Title">Follow Us</h5><div data-component="social-share" class="SocialShare SocialShare_variant_layout"><a target="_blank" rel="noreferrer" aria-label="Linkedin" href="https://www.linkedin.com/company/informationweek/"><span class="SocialShare-IconWrapper SocialShare-IconWrapper_variant_layout"><span data-component="icon" data-name="Linkedin" class="SocialShare-Icon SocialShare-Icon_variant_layout SocialShare-Icon_type_linkedin" style="mask-image:url(/build/_assets/Linkedin-VQUF3EEQ.svg);-webkit-mask-image:url(/build/_assets/Linkedin-VQUF3EEQ.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></a><a target="_blank" rel="noreferrer" aria-label="Twitter" href="https://twitter.com/InformationWeek"><span class="SocialShare-IconWrapper SocialShare-IconWrapper_variant_layout"><span data-component="icon" data-name="Twitter" class="SocialShare-Icon SocialShare-Icon_variant_layout SocialShare-Icon_type_twitter" style="mask-image:url(/build/_assets/Twitter-WD5AOEQ7.svg);-webkit-mask-image:url(/build/_assets/Twitter-WD5AOEQ7.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></a><a target="_blank" rel="noreferrer" aria-label="Facebook" href="https://www.facebook.com/informationweek"><span class="SocialShare-IconWrapper SocialShare-IconWrapper_variant_layout"><span data-component="icon" data-name="Facebook" class="SocialShare-Icon SocialShare-Icon_variant_layout SocialShare-Icon_type_facebook" style="mask-image:url(/build/_assets/Facebook-CJB5G2HY.svg);-webkit-mask-image:url(/build/_assets/Facebook-CJB5G2HY.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></a><a target="_blank" rel="noreferrer" aria-label="RSS" href="https://informationweek.com/rss.xml"><span class="SocialShare-IconWrapper SocialShare-IconWrapper_variant_layout"><span data-component="icon" data-name="RSS" class="SocialShare-Icon SocialShare-Icon_variant_layout SocialShare-Icon_type_rss" style="mask-image:url(/build/_assets/RSS-3XFHIVCK.svg);-webkit-mask-image:url(/build/_assets/RSS-3XFHIVCK.svg);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain"></span></span></a></div></div><div class="CopyrightsSection"><div class="CopyrightsSection-Background"></div><div data-testid="copyrights" class="CopyrightsSection-Wrapper"><a data-testid="businessUnit" class="CopyrightsSection-BusinessLink" target="_blank" href="https://www.informatech.com"><img title="Informa Tech" data-component="image" class="CopyrightsSection-BusinessImage" data-src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltb60310a8e8e4737f/643d330afd160d1fb09a967a/InformaTechBTYB_240x60.webp?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" src="https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltb60310a8e8e4737f/643d330afd160d1fb09a967a/InformaTechBTYB_240x60.webp?width=700&amp;auto=webp&amp;quality=80&amp;disable=upscale" loading="lazy" alt="Informa Tech" /></a><div class="CopyrightsSection-TextWrapper"><p data-testid="copyrightText" class="CopyrightsSection-Text"><span class="CopyrightsSection-TextBlock"></span>Copyright © 2024. All rights reserved. Informa Tech, a trading division of Informa PLC.</p><div data-testid="copyrightLinks" class="CopyrightsSection-LinksWrapper CopyrightsSection-LinksWrapper_hasLinks"><a class="CopyrightsSection-Link" rel target="_blank" href="https://www.informatech.com/">Home<span class="CopyrightsSection-LinkSeparator">|</span></a><a class="CopyrightsSection-Link" rel="noreferrer" target="_blank" href="https://www.informationweek.com/cookie-policy">Cookie Policy<span class="CopyrightsSection-LinkSeparator">|</span></a><a class="CopyrightsSection-Link" rel="noreferrer" target="_blank" href="https://www.informa.com/privacy-policy/">Privacy<span class="CopyrightsSection-LinkSeparator">|</span></a><a class="CopyrightsSection-Link" rel="noreferrer" target="_blank" href="https://www.informatech.com/terms-and-conditions/">Terms of Use</a></div></div></div></div></footer></div></div></main><script>((STORAGE_KEY, restoreKey) => {
  112.    if (!window.history.state || !window.history.state.key) {
  113.      let key = Math.random().toString(32).slice(2);
  114.      window.history.replaceState({
  115.        key
  116.      }, "");
  117.    }
  118.    try {
  119.      let positions = JSON.parse(sessionStorage.getItem(STORAGE_KEY) || "{}");
  120.      let storedY = positions[restoreKey || window.history.state.key];
  121.      if (typeof storedY === "number") {
  122.        window.scrollTo(0, storedY);
  123.      }
  124.    } catch (error) {
  125.      console.error(error);
  126.      sessionStorage.removeItem(STORAGE_KEY);
  127.    }
  128.  })("positions", null)</script><div id="fb-root"></div><link rel="modulepreload" href="/build/manifest-89CFC8E0.js" /><link rel="modulepreload" href="/build/entry.client-TNNNLYQQ.js" /><link rel="modulepreload" href="/build/_shared/chunk-OFPLUFE7.js" /><link rel="modulepreload" href="/build/_shared/chunk-7M7PPMB6.js" /><link rel="modulepreload" href="/build/_shared/chunk-DK4RZWAG.js" /><link rel="modulepreload" href="/build/_shared/chunk-ADMCF34Z.js" /><link rel="modulepreload" href="/build/_shared/chunk-Z3ELN72N.js" /><link rel="modulepreload" href="/build/_shared/chunk-SSMM4TSE.js" /><link rel="modulepreload" href="/build/_shared/chunk-RZRUW7QG.js" /><link rel="modulepreload" href="/build/_shared/chunk-IX72CQSC.js" /><link rel="modulepreload" href="/build/_shared/chunk-OJCNYFCY.js" /><link rel="modulepreload" href="/build/_shared/chunk-R6EIBCBL.js" /><link rel="modulepreload" href="/build/_shared/chunk-CZQQJKCG.js" /><link rel="modulepreload" href="/build/_shared/chunk-B7M2L5OV.js" /><link rel="modulepreload" href="/build/_shared/chunk-VZQVWFLO.js" /><link rel="modulepreload" href="/build/_shared/chunk-6VFVBJDX.js" /><link rel="modulepreload" href="/build/_shared/chunk-ETED3FNV.js" /><link rel="modulepreload" href="/build/_shared/chunk-3HXYK7Q2.js" /><link rel="modulepreload" href="/build/_shared/chunk-DA6QKOVK.js" /><link rel="modulepreload" href="/build/_shared/chunk-CUD375W6.js" /><link rel="modulepreload" href="/build/_shared/chunk-7LFL7F5X.js" /><link rel="modulepreload" href="/build/_shared/chunk-6YDKXU74.js" /><link rel="modulepreload" href="/build/_shared/chunk-SDR4T2CD.js" /><link rel="modulepreload" href="/build/_shared/chunk-QVUW3IXO.js" /><link rel="modulepreload" href="/build/_shared/chunk-IGHJRJPV.js" /><link rel="modulepreload" href="/build/_shared/chunk-NRGG27WM.js" /><link rel="modulepreload" href="/build/_shared/chunk-IW54JVOH.js" /><link rel="modulepreload" href="/build/root-Z34QSTAM.js" /><link rel="modulepreload" href="/build/_shared/chunk-O5OSGOEN.js" /><link rel="modulepreload" href="/build/routes/$redirect[.asp]-NNRKVNOT.js" /><script>window.__remixContext = {"url":"/profile.asp","state":{"loaderData":{"root":{"brand":"informationweek","domain":"http://www.informationweek.com","siteName":"InformationWeek","ads":{"networkId":3834,"parentAdUnit":"informationweek.home","enabledAds":"all","checkClientIP":false,"welcAdOff":true,"disableSponsorBar":true},"vwo":{"enabled":true,"accountId":"775579"},"isDctsTurnOn":false,"unbounce":{"url":"https://iw-resources.informationweek.com/c/pubRD.mpl?secure=1\u0026sr=pp\u0026_t=pp:\u0026qf=w_ingg126\u0026ch=iwsite"},"oneTrust":{"siteId":"db797727-a266-409f-983d-f30f1926b3fb"},"brightcoveAccountId":"1568176135","gtmIds":{"primary":"GTM-5523ZCM","secondary":"GTM-MTN2X7K"},"ui":{"brand":"informationweek","theme":"theme1","font":{"primary":{"name":"Montserrat","url":"https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700\u0026display=swap"},"secondary":{"name":"Montserrat","url":"https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700\u0026display=swap"}}},"environment":"prod","featureToggles":{"elnNewsletter":false,"elnWithoutNewsletter":false,"iirisAuthentication":true,"subBrand":false,"useSettingsRedirectAPIVersion1":true,"gatingEnabled":false,"iirisRecommendationDisabled":false,"iasPetEnabled":false,"bridgedMediaEnabled":true,"ecommerceEnabled":false},"layout":{"socialLinks":[{"type":"Linkedin","url":"https://www.linkedin.com/company/informationweek/"},{"type":"Twitter","url":"https://twitter.com/InformationWeek"},{"type":"Facebook","url":"https://www.facebook.com/informationweek"},{"type":"RSS","url":"https://informationweek.com/rss.xml"}],"informaBar":{"enabled":true,"leftSection":{"description":"InformationWeek is part of the Informa Tech Division of Informa PLC","subMenu":[{"title":"Informa PLC","url":"https://www.informa.com/"},{"title":"ABOUT US","url":"https://www.informa.com/about-us/"},{"title":"INVESTOR RELATIONS","url":"https://www.informa.com/investors/"},{"title":"TALENT","url":"https://www.informa.com/talent/"}]},"rightSection":{"description":"This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726."}},"nav":{"mainMenuItems":[{"title":"Leadership","url":"/it-leadership","seeAllLink":"See All","seeAllLinkUrl":"/it-leadership","hasSubMenu":true,"subMenu":[{"title":"Digital Transformation","url":"/it-leadership/digital-transformation"},{"title":"IT Staffing \u0026 Careers","url":"/it-leadership/it-staffing-careers"},{"title":"IT Management","url":"/it-leadership/it-management"},{"title":"IT Strategy","url":"/it-leadership/it-strategy"}],"recentContents":[{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte6d46edb4d2d33c8/66329d8b3798a34f59a9904a/innovation-Federico_Caputo_-alamy.jpg","alt":"Business person draws a creative business project"},"articleName":"Why CIOs Are Under Pressure to Innovate","mobileHeadline":"Why CIOs Are Under Pressure to Innovate","articleSummary":"The chief information officer role isn’t only about technology anymore. What CIOs do must demonstrably benefit the business. ","articleUrl":"/it-leadership/why-cios-are-under-pressure-to-innovate","listPageUrl":"","date":"May 15, 2024","webinarStartTime":"","categoryName":"IT Leadership","categoryUrl":"/it-leadership","contentType":"Article","contributors":[{"name":"Lisa Morgan","link":"/author/lisa-morgan","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt686d2001bce16e40/64bc083668ba47e0c4f329da/lisamorgan.jpg"}],"timeRead":8,"variant":"card-vertical","layoutVariant":"vertical"},{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltd2dd6531b2bcff3d/6643d10cae08942ff3d9014c/2X4HKHB.jpg","alt":"In this photo illustration, the Amazon Web Services (AWS) logo is displayed on a smartphone screen."},"articleName":"AWS CEO Selipsky Bows Out as Cloud Giant Names Successor","mobileHeadline":"AWS CEO Selipsky Bows Out as Cloud Giant Names Successor","articleSummary":"The surprise announcement from cloud frontrunner comes as the company wrestles with demand for GenAI investment amid an overall economic slowdown.","articleUrl":"/it-infrastructure/aws-ceo-selipsky-bows-out-as-cloud-giant-names-successor","listPageUrl":"","date":"May 14, 2024","webinarStartTime":"","categoryName":"IT Infrastructure","categoryUrl":"/it-infrastructure","contentType":"Article","contributors":[{"name":"Shane Snider ","link":"/author/shane-snider","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltf4de7e5784b276a0/650d8d5ffac8e1d4a1f21f76/Shane_Snider_Profile.jpg"}],"timeRead":3,"variant":"card-vertical","layoutVariant":"vertical"}]},{"title":"Resilience","url":"/cyber-resilience","seeAllLink":"See All","seeAllLinkUrl":"/cyber-resilience","hasSubMenu":true,"subMenu":[{"title":"Cybersecurity","url":"/cyber-resilience/cybersecurity"},{"title":"Risk Management","url":"/cyber-resilience/risk-management"},{"title":"Incident Response","url":"/cyber-resilience/incident-response"}],"recentContents":[{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltf97c4b0381fe0b09/64bf64acb7197839dc2d26d8/NowHiring-Bryan_Sikora-BK6YMX-alamyCP.jpg","alt":"eye glasses focused on the words now hiring"},"articleName":"There Is No Cyber Labor Shortage","mobileHeadline":"There Is No Cyber Labor Shortage","articleSummary":"There are plenty of valuable candidates on the market. Hiring managers are simply looking in the wrong places.","articleUrl":"/cyber-resilience/there-is-no-cyber-labor-shortage","listPageUrl":"","date":"May 15, 2024","webinarStartTime":"","categoryName":"Cyber Resilience","categoryUrl":"/cyber-resilience","contentType":"Article","contributors":[{"name":"Dark Reading","link":"/author/dark-reading","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt9b8ea0e8a04b43eb/650c9551fe6e6b248b4df476/285801_DR23_Graphics_Website_Author_Logo_0.jpg"}],"timeRead":1,"variant":"card-vertical","layoutVariant":"vertical"},{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt07828175a9e91688/663e89e6765dca7e1aba0dbf/RSAConference2024_cropped-JPRUTH.jpg","alt":"Exposition floor at the RSA Conference 2024 in San Francisco."},"articleName":"RSA Conference Takeaways: Fighting New Threats and Disinfo","mobileHeadline":"RSA Conference Takeaways: Fighting New Threats and Disinfo","articleSummary":"AI, disinformation, and government’s role in cybersecurity loomed large in many aspects of this year’s cybersecurity event in San Francisco.","articleUrl":"/cyber-resilience/rsa-conference-takeaways-fighting-new-threats-and-disinfo","listPageUrl":"/podcasts","date":"May 13, 2024","webinarStartTime":"","categoryName":"Cyber Resilience","categoryUrl":"/cyber-resilience","contentType":"Podcast","contributors":[{"name":"Joao-Pierre S. Ruth","link":"/author/joao-pierre-s-ruth","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt7f004b6f174043df/64bfdc879bc48c25c32d4ad9/Joao-Pierre-S-Ruth.png"}],"timeRead":0,"variant":"card-vertical","layoutVariant":"vertical"}]},{"title":"ML \u0026 AI","url":"/machine-learning-ai","seeAllLink":"See All","seeAllLinkUrl":"/machine-learning-ai","hasSubMenu":true,"subMenu":[{"title":"Responsible AI","url":"/machine-learning-ai/responsible-ai"},{"title":"IT Automation","url":"/machine-learning-ai/it-automation"},{"title":"AI Innovations","url":"/machine-learning-ai/ai-innovations"}],"recentContents":[{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt4716694d0ab6ef84/663a4cfa1e6083697c99c98d/large_language_models-ArtemisDiana_-alamy.jpg","alt":"Large Language Models - LLM - Artificial Intelligence Systems Capable of Understanding and Generating Human-like Language Based on Input Data"},"articleName":"Why Enterprises Must Prioritize LLM Data Control","mobileHeadline":"Why Enterprises Must Prioritize LLM Data Control","articleSummary":"Prioritizing data security is crucial when working with large-language models. Enterprises need to better understand the data control differences between public and private LLMs. ","articleUrl":"/machine-learning-ai/why-enterprises-must-prioritize-llm-data-control","listPageUrl":"","date":"May 14, 2024","webinarStartTime":"","categoryName":"Machine Learning \u0026 AI","categoryUrl":"/machine-learning-ai","contentType":"Article","contributors":[{"name":"Shomron Jacob","link":"/author/shomron-jacob","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltda1b4d0ccd744f79/663a4a59a2dce372e57619aa/Shomron_Jacob.jpg"}],"timeRead":4,"variant":"card-vertical","layoutVariant":"vertical"},{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltbb8216fe984fffbc/66425c49b76b4c3ad43df366/2PM9G2A.jpg","alt":"The logo and name of the technology company OpenAI which developed ChatGPT."},"articleName":"OpenAI’s ChatGPT Launches ‘GPT-4o,’ Desktop App","mobileHeadline":"OpenAI’s ChatGPT Launches ‘GPT-4o,’ Desktop App","articleSummary":"The GenAI juggernaut’s spring update announcements included its new GenAI model and improvements for both enterprise and free users.","articleUrl":"/machine-learning-ai/openai-s-chatgpt-launches-gpt-4o-desktop-app","listPageUrl":"","date":"May 13, 2024","webinarStartTime":"","categoryName":"Machine Learning \u0026 AI","categoryUrl":"/machine-learning-ai","contentType":"Article","contributors":[{"name":"Shane Snider ","link":"/author/shane-snider","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltf4de7e5784b276a0/650d8d5ffac8e1d4a1f21f76/Shane_Snider_Profile.jpg"}],"timeRead":3,"variant":"card-vertical","layoutVariant":"vertical"}]},{"title":"Data","url":"/data-management","seeAllLink":"See All","seeAllLinkUrl":"/data-management","hasSubMenu":true,"subMenu":[{"title":"Data Privacy","url":"/data-management/data-privacy"},{"title":"Data Governance","url":"/data-management/data-governance"}],"recentContents":[{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte6378d59fbe53180/662a91379f121c0ca8805017/AI_services_hirunlaowisit-AlamyStockPhoto.jpg","alt":""},"articleName":"What You Need to Know about AI as a Service","mobileHeadline":"What You Need to Know about AI as a Service","articleSummary":"Are you hesitant to plunge your organization into a costly, full-scale AI initiative? Your answer may be found in the cloud.","articleUrl":"/machine-learning-ai/what-you-need-to-know-about-ai-as-a-service","listPageUrl":"","date":"May 13, 2024","webinarStartTime":"","categoryName":"Machine Learning \u0026 AI","categoryUrl":"/machine-learning-ai","contentType":"Article","contributors":[{"name":"John Edwards","link":"/author/john-edwards","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte185e89eb327a1c3/64bbfbd29a2908fafb14d71d/John-Edwards-125x125.jpg"}],"timeRead":5,"variant":"card-vertical","layoutVariant":"vertical"},{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blteee17ba2a4c415ac/6632439de2b5a82a690f03d0/DNA-Science_Photo_Library-alamy.jpg","alt":"DNA (deoxyribonucleic acid) strand, illustration. "},"articleName":"DNA is an Ancient Form of Data Storage. Is it Also a Radical New Alternative?","mobileHeadline":"DNA is an Ancient Form of Data Storage. Is it Also a Radical New Alternative?","articleSummary":"Life on Earth emerged as early as 4 billion years ago. It is the product of the codes stored in DNA. Now, we are repurposing DNA to store other forms of information.  ","articleUrl":"/data-management/dna-is-an-ancient-form-of-data-storage-is-it-also-a-radical-new-alternative-","listPageUrl":"","date":"May 7, 2024","webinarStartTime":"","categoryName":"Data Management","categoryUrl":"/data-management","contentType":"Article","contributors":[{"name":"Richard Pallardy","link":"/author/richard-pallardy","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt939e58e1b4994e53/64bf3d9950417eabaf1216c6/Richard-Pallardy-freelancer.jpg"}],"timeRead":15,"variant":"card-vertical","layoutVariant":"vertical"}]},{"title":"Sustainability","url":"/sustainability","seeAllLink":"See All","seeAllLinkUrl":"/sustainability","hasSubMenu":true,"subMenu":[{"title":"Green IT","url":"/sustainability/green-it"},{"title":"ESG","url":"/sustainability/esg"}],"recentContents":[{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt4aff524f0f77fb1c/64bf444dc581675c639dd714/greenearthplug3-SABIDA-akamy.jpg","alt":"green earth with a plug attached"},"articleName":"AI, Data Centers, and Energy Use: The Path to Sustainability","mobileHeadline":"AI, Data Centers, and Energy Use: The Path to Sustainability","articleSummary":"The increasing use of AI and data centers is leading to a surge in energy consumption, posing risks for energy, tech, and data companies. It also presents an opportunity for these companies to decarbonize, build trust, and reduce long-term costs.  ","articleUrl":"/sustainability/ai-data-centers-and-energy-use-the-path-to-sustainability","listPageUrl":"","date":"May 15, 2024","webinarStartTime":"","categoryName":"Sustainability","categoryUrl":"/sustainability","contentType":"Article","contributors":[{"name":"Mark Gibson","link":"/author/mark-gibson","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt6a507fe0b79b0529/663cdda8c3e7bb551c02785c/Mark_gibson_kpgm.jpg"},{"name":"Angie Gildea","link":"/author/angie-gildea","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blta73ec27ec1a896f8/663cde9faa5de0ffb13ffae5/angie_gildea_kpmg.jpg"}],"timeRead":4,"variant":"card-vertical","layoutVariant":"vertical"},{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt036a3a243c8d00c4/6632a61b2a3ce077543691ff/Happy_Sad_-_OreoConcept_-alamy.jpg","alt":"Happy and sad life balance, sunny happy emoticon and sad emoji on under a cloud on balance, mental health, wellness concept "},"articleName":"Sustaining Future Workers and Consumers Moves Up in ESG Efforts","mobileHeadline":"Sustaining Future Workers and Consumers Moves Up in ESG Efforts","articleSummary":"Growing fears of future consumer and workforce erosion from soaring automation, AI, and economic challenges drives change. ","articleUrl":"/sustainability/sustaining-future-workers-and-consumers-moves-up-in-esg-efforts","listPageUrl":"","date":"May 14, 2024","webinarStartTime":"","categoryName":"Sustainability","categoryUrl":"/sustainability","contentType":"Article","contributors":[{"name":"Pam Baker","link":"/author/pam-baker","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blta2c974464f9d8086/64bc0833691b1233dc5fefd2/Pam-Baker.png"}],"timeRead":5,"variant":"card-vertical","layoutVariant":"vertical"}]},{"title":"Infrastructure","url":"/it-infrastructure","seeAllLink":"See All","seeAllLinkUrl":"/it-infrastructure","hasSubMenu":true,"subMenu":[{"title":"Data Centers","url":"/it-infrastructure/data-centers"},{"title":"Cloud Computing","url":"/it-infrastructure/cloud-computing"}],"recentContents":[{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltd2dd6531b2bcff3d/6643d10cae08942ff3d9014c/2X4HKHB.jpg","alt":"In this photo illustration, the Amazon Web Services (AWS) logo is displayed on a smartphone screen."},"articleName":"AWS CEO Selipsky Bows Out as Cloud Giant Names Successor","mobileHeadline":"AWS CEO Selipsky Bows Out as Cloud Giant Names Successor","articleSummary":"The surprise announcement from cloud frontrunner comes as the company wrestles with demand for GenAI investment amid an overall economic slowdown.","articleUrl":"/it-infrastructure/aws-ceo-selipsky-bows-out-as-cloud-giant-names-successor","listPageUrl":"","date":"May 14, 2024","webinarStartTime":"","categoryName":"IT Infrastructure","categoryUrl":"/it-infrastructure","contentType":"Article","contributors":[{"name":"Shane Snider ","link":"/author/shane-snider","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltf4de7e5784b276a0/650d8d5ffac8e1d4a1f21f76/Shane_Snider_Profile.jpg"}],"timeRead":3,"variant":"card-vertical","layoutVariant":"vertical"},{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt07828175a9e91688/663e89e6765dca7e1aba0dbf/RSAConference2024_cropped-JPRUTH.jpg","alt":"Exposition floor at the RSA Conference 2024 in San Francisco."},"articleName":"RSA Conference Takeaways: Fighting New Threats and Disinfo","mobileHeadline":"RSA Conference Takeaways: Fighting New Threats and Disinfo","articleSummary":"AI, disinformation, and government’s role in cybersecurity loomed large in many aspects of this year’s cybersecurity event in San Francisco.","articleUrl":"/cyber-resilience/rsa-conference-takeaways-fighting-new-threats-and-disinfo","listPageUrl":"/podcasts","date":"May 13, 2024","webinarStartTime":"","categoryName":"Cyber Resilience","categoryUrl":"/cyber-resilience","contentType":"Podcast","contributors":[{"name":"Joao-Pierre S. Ruth","link":"/author/joao-pierre-s-ruth","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt7f004b6f174043df/64bfdc879bc48c25c32d4ad9/Joao-Pierre-S-Ruth.png"}],"timeRead":0,"variant":"card-vertical","layoutVariant":"vertical"}]},{"title":"Software","url":"/software-services","seeAllLink":"See All","seeAllLinkUrl":"/software-services","hasSubMenu":true,"subMenu":[{"title":"DevOps","url":"/software-services/devops"},{"title":"Software Platforms","url":"/software-services/software-platforms"},{"title":"Operating Systems","url":"/software-services/operating-systems"}],"recentContents":[{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte6378d59fbe53180/662a91379f121c0ca8805017/AI_services_hirunlaowisit-AlamyStockPhoto.jpg","alt":""},"articleName":"What You Need to Know about AI as a Service","mobileHeadline":"What You Need to Know about AI as a Service","articleSummary":"Are you hesitant to plunge your organization into a costly, full-scale AI initiative? Your answer may be found in the cloud.","articleUrl":"/machine-learning-ai/what-you-need-to-know-about-ai-as-a-service","listPageUrl":"","date":"May 13, 2024","webinarStartTime":"","categoryName":"Machine Learning \u0026 AI","categoryUrl":"/machine-learning-ai","contentType":"Article","contributors":[{"name":"John Edwards","link":"/author/john-edwards","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte185e89eb327a1c3/64bbfbd29a2908fafb14d71d/John-Edwards-125x125.jpg"}],"timeRead":5,"variant":"card-vertical","layoutVariant":"vertical"},{"thumbnail":{"src":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt4335e4c09ec408ae/64cb1c0a4f38401d2d222dd8/Agile-rawpixel-stock.jpg","alt":"business people at a table with word Agile in the center"},"articleName":"Introducing Maintenance for Agile Applications","mobileHeadline":"Introducing Maintenance for Agile Applications","articleSummary":"At what point does continuous, iterative development for Agile applications turn into a maintenance exercise? ","articleUrl":"/software-services/introducing-maintenance-for-agile-applications","listPageUrl":"","date":"May 3, 2024","webinarStartTime":"","categoryName":"Software \u0026 Services","categoryUrl":"/software-services","contentType":"Article","contributors":[{"name":"Mary E. Shacklett","link":"/author/mary-e-shacklett","avatar":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltc7d4dbb527ae98d2/64bc07e7b2796e5edd361fed/Mary-Shacklett-125x125.gif"}],"timeRead":5,"variant":"card-vertical","layoutVariant":"vertical"}]},{"title":"More","url":"/resources","seeAllLink":"InformationWeek Resource Library","seeAllLinkUrl":"/resources","hasSubMenu":true,"subMenu":[{"title":"Newsletters","url":"https://iw-resources.informationweek.com/free/w_ingg126/prgm.cgi?a=1"},{"title":"Reports/Research","url":"/resources?page=1\u0026types=Research+Report"},{"title":"Online Events","url":"/resources?page=1\u0026types=Virtual+Event\u0026types=Webinar"},{"title":"Live Events","url":"/events"},{"title":"Podcasts","url":"/podcasts"},{"title":"White Papers","url":"/resources?page=1\u0026types=White+Paper"},{"title":"Advertise With Us","url":"/advertise"},{"title":"About Us","url":"/about-us"},{"title":"IT Sectors","url":"/it-sectors"}],"recentContents":[]}],"secondaryMenu":[{"title":"Reports","url":"/resources?page=1\u0026types=Research+Report"},{"title":"Online Events","url":"/resources?page=1\u0026types=Virtual+Event\u0026types=Webinar"},{"title":"Advertise","url":"/advertise"},{"title":"About","url":"/about-us"}]},"megaMenu":{"largeMenu":[{"title":"Leadership","url":"/it-leadership","subMenu":[{"title":"Digital Transformation","url":"/it-leadership/digital-transformation"},{"title":"IT Staffing \u0026 Careers","url":"/it-leadership/it-staffing-careers"},{"title":"IT Management","url":"/it-leadership/it-management"},{"title":"IT Strategy","url":"/it-leadership/it-strategy"}],"seeAllLink":"See All","seeAllLinkUrl":"/it-leadership"},{"title":"Resilience","url":"/cyber-resilience","subMenu":[{"title":"Cybersecurity","url":"/cyber-resilience/cybersecurity"},{"title":"Risk Management","url":"/cyber-resilience/risk-management"},{"title":"Incident Response","url":"/cyber-resilience/incident-response"}],"seeAllLink":"See All","seeAllLinkUrl":"/cyber-resilience"},{"title":"ML \u0026 AI","url":"/machine-learning-ai","subMenu":[{"title":"Responsible AI","url":"/machine-learning-ai/responsible-ai"},{"title":"IT Automation","url":"/machine-learning-ai/it-automation"},{"title":"AI Innovations","url":"/machine-learning-ai/ai-innovations"}],"seeAllLink":"See All","seeAllLinkUrl":"/machine-learning-ai"},{"title":"Data","url":"/data-management","subMenu":[{"title":"Data Privacy","url":"/data-management/data-privacy"},{"title":"Data Governance","url":"/data-management/data-governance"}],"seeAllLink":"See All","seeAllLinkUrl":"/data-management"},{"title":"Sustainability","url":"/sustainability","subMenu":[{"title":"Green IT","url":"/sustainability/green-it"},{"title":"ESG","url":"/sustainability/esg"}],"seeAllLink":"See All","seeAllLinkUrl":"/sustainability"},{"title":"Infrastructure","url":"/it-infrastructure","subMenu":[{"title":"Data Centers","url":"/it-infrastructure/data-centers"},{"title":"Cloud Computing","url":"/it-infrastructure/cloud-computing"}],"seeAllLink":"See All","seeAllLinkUrl":"/it-infrastructure"},{"title":"Software","url":"/software-services","subMenu":[{"title":"DevOps","url":"/software-services/devops"},{"title":"Software Platforms","url":"/software-services/software-platforms"},{"title":"Operating Systems","url":"/software-services/operating-systems"}],"seeAllLink":"See All","seeAllLinkUrl":"/software-services"},{"title":"More","url":"/resources","subMenu":[{"title":"Newsletters","url":"https://iw-resources.informationweek.com/free/w_ingg126/prgm.cgi?a=1"},{"title":"Reports/Research","url":"/resources?page=1\u0026types=Research+Report"},{"title":"Online Events","url":"/resources?page=1\u0026types=Virtual+Event\u0026types=Webinar"},{"title":"Live Events","url":"/events"},{"title":"Podcasts","url":"/podcasts"},{"title":"White Papers","url":"/resources?page=1\u0026types=White+Paper"},{"title":"Advertise With Us","url":"/advertise"},{"title":"About Us","url":"/about-us"},{"title":"IT Sectors","url":"/it-sectors"}],"seeAllLink":"InformationWeek Resource Library","seeAllLinkUrl":"/resources"}],"smallMenu":[{"title":"Browse","url":"","subMenu":[{"title":"InformationWeek Resource Library","url":"/resources"},{"title":"Reports/Research","url":"/resources?page=1\u0026types=Research+Report"},{"title":"Online Events","url":"/resources?page=1\u0026types=Virtual+Event\u0026types=Webinar"},{"title":"White Papers","url":"/resources?page=1\u0026types=White+Paper"},{"title":"Podcasts","url":"/podcasts"},{"title":"Upcoming Events","url":"/events"}]},{"title":"Advertise","url":"","subMenu":[{"title":"Explore Marketing Solutions","url":"/advertise"}]},{"title":"IT Sectors","url":"","subMenu":[{"title":"Agriculture","url":"/it-sectors/agriculture"},{"title":"Education","url":"/it-sectors/education"},{"title":"Energy","url":"/it-sectors/energy"},{"title":"Fintech","url":"/it-sectors/fintech"},{"title":"Government","url":"/it-sectors/government"},{"title":"Healthcare","url":"/it-sectors/healthcare"},{"title":"Manufacturing","url":"/it-sectors/manufacturing"},{"title":"Sports/Entertainment","url":"/it-sectors/sports-entertainment"}]}],"sideNavSections":[{"title":"Communicate","url":"","subMenu":[{"title":"About Us","url":"/about-us"},{"title":"Contact Us","url":"/contact-us"}],"seeAllLink":"","seeAllLinkUrl":""}]},"navBase":{"logo":{"url":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt610f1382a6ead9c3/64b854bd7f10ca354fa97a15/178206_IWK22_Logo_RGB.svg","altText":"InformationWeek"}},"footer":{"logo":{"url":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte28ded54d12e0ac0/644913f2d2002548587a2a5e/InformationWeek-Logo.png","altText":"Information Week Logo"},"linkSections":[{"links":[{"image":{"altText":"","url":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt6ac71116800a46bf/64babac96bef06569b0668ee/OMDIA_LOGO_BLACK_2_with_extra_height.png"},"openInNewTab":true,"title":"Omdia","url":"https://omdia.tech.informa.com/"},{"image":{"altText":"Network Computing Logo","url":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt40fbedd2eb2df482/643d354fbf535e7c079bb364/Network_Computing_logo.png"},"openInNewTab":true,"title":"Network Computing","url":"https://www.networkcomputing.com/"},{"image":{"altText":"IT Pro Today Logo","url":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltf8425441a9bb7395/643d3589d465e31028d41abe/IT_Pro_Today_Logo.png"},"openInNewTab":true,"title":"ITPro Today","url":"https://www.itprotoday.com/"},{"image":{"altText":"Data Center Knowledge Logo","url":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blt4b847636ba215910/643d35d937023c7ed8e9d6a6/Data_Center_Knowledge_Logo.png"},"openInNewTab":true,"title":"Data Center Knowledge","url":"https://www.datacenterknowledge.com/"},{"image":{"altText":"Data Center World Logo","url":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte6d1f0c534c109a8/643d36703381c910e4384762/Data_Center_World_Logo.png"},"openInNewTab":true,"title":"Data Center World ","url":"https://datacenterworld.com/"}],"title":"Discover More","type":"1"},{"links":[{"image":{"altText":"InformationWeek Logo","url":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte28ded54d12e0ac0/644913f2d2002548587a2a5e/InformationWeek-Logo.png"},"openInNewTab":true,"title":"About Us","url":"/about-us"},{"image":{"altText":"InformationWeek Logo","url":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte28ded54d12e0ac0/644913f2d2002548587a2a5e/InformationWeek-Logo.png"},"openInNewTab":true,"title":"Reprints","url":"https://info.wrightsmedia.com/informa-licensing-reprints-request"},{"image":{"altText":"InformationWeek Logo","url":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte28ded54d12e0ac0/644913f2d2002548587a2a5e/InformationWeek-Logo.png"},"openInNewTab":true,"title":"Advertise","url":"/advertise"},{"image":{"altText":"InformationWeek Logo","url":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/blte28ded54d12e0ac0/644913f2d2002548587a2a5e/InformationWeek-Logo.png"},"openInNewTab":true,"title":"Contact Us","url":"/contact-us"}],"title":"Working With Us","type":"1"}],"brandLinks":[],"copyright":{"businessUnit":{"url":"https://www.informatech.com","name":"Informa Tech","logoUrl":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltb60310a8e8e4737f/643d330afd160d1fb09a967a/InformaTechBTYB_240x60.webp"},"links":[{"image":{"altText":"Home","url":"https://www.informatech.com/"},"openInNewTab":false,"title":"Home","url":"https://www.informatech.com/"},{"image":{"altText":"Cookie Policy","url":"https://www.informationweek.com/cookie-policy"},"openInNewTab":true,"title":"Cookie Policy","url":"https://www.informationweek.com/cookie-policy"},{"image":{"altText":"Privacy","url":"https://www.informa.com/privacy-policy/"},"openInNewTab":true,"title":"Privacy","url":"https://www.informa.com/privacy-policy/"},{"image":{"altText":"Terms of Use","url":"https://www.informatech.com/terms-and-conditions/"},"openInNewTab":true,"title":"Terms of Use","url":"https://www.informatech.com/terms-and-conditions/"}],"title":". All rights reserved. Informa Tech, a trading division of Informa PLC."}},"isAuthenticated":false,"isSponsorBarEnabled":true,"isPaidContent":false},"newRelicJs":"window.NREUM||(NREUM={});NREUM.info = {\"agent\":\"\",\"beacon\":\"bam.eu01.nr-data.net\",\"errorBeacon\":\"bam.eu01.nr-data.net\",\"licenseKey\":\"NRJS-26ae6a3b09493bbcc87\",\"applicationID\":\"514059305\",\"agentToken\":null,\"applicationTime\":111.155132,\"transactionName\":\"MhBSZQoZWEEDU0ZaXgtafl4KFVdeC0pXV2QXHB8b\",\"queueTime\":0,\"ttGuid\":\"be1f6f20f460a225\"}; (window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:[\"bam.eu01.nr-data.net\"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:\"538480682\",accountID:\"3936348\",trustKey:\"3288925\",xpid:\"Vw8EV1VXABAFVVVSAggEVlE=\",licenseKey:\"NRJS-26ae6a3b09493bbcc87\",applicationID:\"514059305\"};;/*! For license information please see nr-loader-spa-1.260.0.min.js.LICENSE.txt */\n(()=\u003e{var e,t,r={234:(e,t,r)=\u003e{\"use strict\";r.d(t,{P_:()=\u003em,Mt:()=\u003eb,C5:()=\u003es,DL:()=\u003ew,OP:()=\u003eO,lF:()=\u003eD,Yu:()=\u003e_,Dg:()=\u003ev,CX:()=\u003ec,GE:()=\u003eE,sU:()=\u003eI});var n=r(8632),i=r(9567);const o={beacon:n.ce.beacon,errorBeacon:n.ce.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},a={};function s(e){if(!e)throw new Error(\"All info objects require an agent identifier!\");if(!a[e])throw new Error(\"Info for \".concat(e,\" was never set\"));return a[e]}function c(e,t){if(!e)throw new Error(\"All info objects require an agent identifier!\");a[e]=(0,i.D)(t,o);const r=(0,n.ek)(e);r\u0026\u0026(r.info=a[e])}const u=e=\u003e{if(!e||\"string\"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var d=r(7056),l=r(50);const f=\"[data-nr-mask]\",h=()=\u003e{const e={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{feature_flags:[],proxy:{assets:void 0,beacon:void 0},privacy:{cookies_enabled:!0},ajax:{deny_list:void 0,block_internal:!0,enabled:!0,harvestTimeSeconds:10,autoStart:!0},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},session:{expiresMs:d.oD,inactiveMs:d.Hb},ssl:void 0,obfuscate:void 0,jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},metrics:{enabled:!0,autoStart:!0},page_action:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,long_task:!1,autoStart:!0},session_trace:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},harvest:{tooManyRequestsDelay:60},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,inline_stylesheet:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){u(t)?e.mask_selector=\"\".concat(t,\",\").concat(f):\"\"===t||null===t?e.mask_selector=f:(0,l.Z)(\"An invalid session_replay.mask_selector was provided. '*' will be used.\",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){u(t)?e.block_selector+=\",\".concat(t):\"\"!==t\u0026\u0026(0,l.Z)(\"An invalid session_replay.block_selector was provided and will not be used\",t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t\u0026\u0026\"object\"==typeof t?e.mask_input_options={...t,password:!0}:(0,l.Z)(\"An invalid session_replay.mask_input_option was provided and will not be used\",t)}},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},soft_navigations:{enabled:!0,harvestTimeSeconds:10,autoStart:!0}}},p={},g=\"All configuration objects require an agent identifier!\";function m(e){if(!e)throw new Error(g);if(!p[e])throw new Error(\"Configuration for \".concat(e,\" was never set\"));return p[e]}function v(e,t){if(!e)throw new Error(g);p[e]=(0,i.D)(t,h());const r=(0,n.ek)(e);r\u0026\u0026(r.init=p[e])}function b(e,t){if(!e)throw new Error(g);var r=m(e);if(r){for(var n=t.split(\".\"),i=0;i\u003cn.length-1;i++)if(\"object\"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}const y={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},A={};function w(e){if(!e)throw new Error(\"All loader-config objects require an agent identifier!\");if(!A[e])throw new Error(\"LoaderConfig for \".concat(e,\" was never set\"));return A[e]}function E(e,t){if(!e)throw new Error(\"All loader-config objects require an agent identifier!\");A[e]=(0,i.D)(t,y);const r=(0,n.ek)(e);r\u0026\u0026(r.loader_config=A[e])}const _=(0,n.mF)().o;var x=r(385),R=r(6818);const S={buildEnv:R.Re,distMethod:R.gF,version:R.q4,originTime:x.sK},T={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,origin:\"\"+x._A.location,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,harvestCount:0,timeKeeper:void 0},N={};function O(e){if(!e)throw new Error(\"All runtime objects require an agent identifier!\");if(!N[e])throw new Error(\"Runtime for \".concat(e,\" was never set\"));return N[e]}function I(e,t){if(!e)throw new Error(\"All runtime objects require an agent identifier!\");N[e]={...(0,i.D)(t,T),...S};const r=(0,n.ek)(e);r\u0026\u0026(r.runtime=N[e])}function D(e){return function(e){try{const t=s(e);return!!t.licenseKey\u0026\u0026!!t.errorBeacon\u0026\u0026!!t.applicationID}catch(e){return!1}}(e)}},9567:(e,t,r)=\u003e{\"use strict\";r.d(t,{D:()=\u003ei});var n=r(50);function i(e,t){try{if(!e||\"object\"!=typeof e)return(0,n.Z)(\"Setting a Configurable requires an object as input\");if(!t||\"object\"!=typeof t)return(0,n.Z)(\"Setting a Configurable requires a model to set its initial properties\");const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])\u0026\u0026Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):\"object\"==typeof e[a]\u0026\u0026\"object\"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.Z)(\"An error occurred while setting a property of a Configurable\",e)}return r}catch(e){(0,n.Z)(\"An error occured while setting a Configurable\",e)}}},6818:(e,t,r)=\u003e{\"use strict\";r.d(t,{Re:()=\u003ei,gF:()=\u003eo,lF:()=\u003ea,q4:()=\u003en});const n=\"1.260.0\",i=\"PROD\",o=\"CDN\",a=\"2.0.0-alpha.12\"},385:(e,t,r)=\u003e{\"use strict\";r.d(t,{FN:()=\u003ec,IF:()=\u003el,LW:()=\u003ea,Nk:()=\u003eh,Tt:()=\u003eu,_A:()=\u003eo,iS:()=\u003es,il:()=\u003en,sK:()=\u003ep,ux:()=\u003ed,v6:()=\u003ei,w1:()=\u003ef});const n=\"undefined\"!=typeof window\u0026\u0026!!window.document,i=\"undefined\"!=typeof WorkerGlobalScope\u0026\u0026(\"undefined\"!=typeof self\u0026\u0026self instanceof WorkerGlobalScope\u0026\u0026self.navigator instanceof WorkerNavigator||\"undefined\"!=typeof globalThis\u0026\u0026globalThis instanceof WorkerGlobalScope\u0026\u0026globalThis.navigator instanceof WorkerNavigator),o=n?window:\"undefined\"!=typeof WorkerGlobalScope\u0026\u0026(\"undefined\"!=typeof self\u0026\u0026self instanceof WorkerGlobalScope\u0026\u0026self||\"undefined\"!=typeof globalThis\u0026\u0026globalThis instanceof WorkerGlobalScope\u0026\u0026globalThis),a=\"complete\"===o?.document?.readyState,s=Boolean(\"hidden\"===o?.document?.visibilityState),c=\"\"+o?.location,u=/iPad|iPhone|iPod/.test(o.navigator?.userAgent),d=u\u0026\u0026\"undefined\"==typeof SharedWorker,l=(()=\u003e{const e=o.navigator?.userAgent?.match(/Firefox[/\\s](\\d+\\.\\d+)/);return Array.isArray(e)\u0026\u0026e.length\u003e=2?+e[1]:0})(),f=Boolean(n\u0026\u0026window.document.documentMode),h=!!o.navigator?.sendBeacon,p=Math.floor(Date.now()-performance.now())},1117:(e,t,r)=\u003e{\"use strict\";r.d(t,{w:()=\u003eo});var n=r(50);const i={agentIdentifier:\"\",ee:void 0};class o{constructor(e){try{if(\"object\"!=typeof e)return(0,n.Z)(\"shared context requires an object as input\");this.sharedContext={},Object.assign(this.sharedContext,i),Object.entries(e).forEach((e=\u003e{let[t,r]=e;Object.keys(i).includes(t)\u0026\u0026(this.sharedContext[t]=r)}))}catch(e){(0,n.Z)(\"An error occurred while setting SharedContext\",e)}}}},1199:(e,t,r)=\u003e{\"use strict\";r.d(t,{R2:()=\u003ea,zR:()=\u003ei,zh:()=\u003eo});var n=[];function i(e){if(o(e))return!1;if(0===n.length)return!0;for(var t=0;t\u003cn.length;t++){var r=n[t];if(\"*\"===r.hostname)return!1;if(s(r.hostname,e.hostname)\u0026\u0026c(r.pathname,e.pathname))return!1}return!0}function o(e){return void 0===e.hostname}function a(e){if(n=[],e\u0026\u0026e.length)for(var t=0;t\u003ce.length;t++){let r=e[t];if(!r)continue;0===r.indexOf(\"http://\")?r=r.substring(7):0===r.indexOf(\"https://\")\u0026\u0026(r=r.substring(8));const i=r.indexOf(\"/\");let o,a;i\u003e0?(o=r.substring(0,i),a=r.substring(i)):(o=r,a=\"\");let[s]=o.split(\":\");n.push({hostname:s,pathname:a})}}function s(e,t){return!(e.length\u003et.length)\u0026\u0026t.indexOf(e)===t.length-e.length}function c(e,t){return 0===e.indexOf(\"/\")\u0026\u0026(e=e.substring(1)),0===t.indexOf(\"/\")\u0026\u0026(t=t.substring(1)),\"\"===e||e===t}},8e3:(e,t,r)=\u003e{\"use strict\";r.d(t,{LP:()=\u003el,RP:()=\u003ec,o5:()=\u003eu});var n=r(8325),i=r(1284),o=r(4322),a=r(3325);const s={};function c(e,t){const r={staged:!1,priority:a.p[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){d(e),s[e].get(t)\u0026\u0026s[e].delete(t),s[e].size\u0026\u0026f(e)}function d(e){if(!e)throw new Error(\"agentIdentifier required\");s[e]||(s[e]=new Map)}function l(){let e=arguments.length\u003e0\u0026\u0026void 0!==arguments[0]?arguments[0]:\"\",t=arguments.length\u003e1\u0026\u0026void 0!==arguments[1]?arguments[1]:\"feature\",r=arguments.length\u003e2\u0026\u0026void 0!==arguments[2]\u0026\u0026arguments[2];if(d(e),!e||!s[e].get(t)||r)return h(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((e=\u003e{let[t,r]=e;return r.staged}))\u0026\u0026(t.sort(((e,t)=\u003ee[1].priority-t[1].priority)),t.forEach((t=\u003e{let[r]=t;s[e].delete(r),h(e,r)})))}function h(e,t){const r=e?n.ee.get(e):n.ee,a=o.X.handlers;if(r.backlog\u0026\u0026a){var s=r.backlog[t],c=a[t];if(c){for(var u=0;s\u0026\u0026u\u003cs.length;++u)p(s[u],c);(0,i.D)(c,(function(e,t){(0,i.D)(t,(function(t,r){r[0].on(e,r[1])}))}))}r.isolatedBacklog||delete a[t],r.backlog[t]=null,r.emit(\"drain-\"+t,[])}}function p(e,t){var r=e[1];(0,i.D)(t[r],(function(t,r){var n=e[0];if(r[0]===n){var i=r[1],o=e[3],a=e[2];i.apply(o,a)}}))}},8325:(e,t,r)=\u003e{\"use strict\";r.d(t,{A:()=\u003ec,ee:()=\u003eu});var n=r(8632),i=r(2210),o=r(234);class a{constructor(e){this.contextId=e}}var s=r(3117);const c=\"nr@context:\".concat(s.a),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length\u0026\u0026(0,o.OP)(r).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\u003cr.length;i++)r[i]===t\u0026\u0026r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o\u0026\u0026(o=!0);if(u.aborted\u0026\u0026!i)return;t\u0026\u0026o\u0026\u0026t.emit(e,r,n);for(var a=h(n),c=g(e),d=c.length,l=0;l\u003cd;l++)c[l].apply(a,r);var p=v()[s[e]];p\u0026\u0026p.push([f,e,r,a]);return a},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=\u003e{let[n,i]=e;s[i]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=\u003e{delete f.backlog[e]}))},isBuffering:function(e){return!!v()[s[e]]},debugId:r,backlog:l?{}:t\u0026\u0026\"object\"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,\"aborted\",{get:()=\u003e{let e=f._aborted||!1;return e||(t\u0026\u0026(e=t.aborted),e)}}),f;function h(e){return e\u0026\u0026e instanceof a?e:e?(0,i.X)(e,c,(()=\u003enew a(c))):new a(c)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,\"globalEE\"),d=(0,n.fP)();d.ee||(d.ee=u)},5546:(e,t,r)=\u003e{\"use strict\";r.d(t,{E:()=\u003en,p:()=\u003ei});var n=r(8325).ee.get(\"handle\");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},4322:(e,t,r)=\u003e{\"use strict\";r.d(t,{X:()=\u003eo});var n=r(5546);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.E,i,e,t,r)}function a(e,t,r,i,o){o||(o=\"feature\"),e||(e=n.E);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3239:(e,t,r)=\u003e{\"use strict\";r.d(t,{bP:()=\u003es,iz:()=\u003ec,m$:()=\u003ea});var n=r(385);let i=!1,o=!1;try{const e={get passive(){return i=!0,!1},get signal(){return o=!0,!1}};n._A.addEventListener(\"test\",null,e),n._A.removeEventListener(\"test\",null,e)}catch(e){}function a(e,t){return i||o?{capture:!!e,passive:i,signal:t}:!!e}function s(e,t){let r=arguments.length\u003e2\u0026\u0026void 0!==arguments[2]\u0026\u0026arguments[2],n=arguments.length\u003e3?arguments[3]:void 0;window.addEventListener(e,t,a(r,n))}function c(e,t){let r=arguments.length\u003e2\u0026\u0026void 0!==arguments[2]\u0026\u0026arguments[2],n=arguments.length\u003e3?arguments[3]:void 0;document.addEventListener(e,t,a(r,n))}},3117:(e,t,r)=\u003e{\"use strict\";r.d(t,{a:()=\u003en});const n=(0,r(4402).Rl)()},4402:(e,t,r)=\u003e{\"use strict\";r.d(t,{Ht:()=\u003eu,M:()=\u003ec,Rl:()=\u003ea,ky:()=\u003es});var n=r(385);const i=\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\";function o(e,t){return e?15\u0026e[t]:16*Math.random()|0}function a(){const e=n._A?.crypto||n._A?.msCrypto;let t,r=0;return e\u0026\u0026e.getRandomValues\u0026\u0026(t=e.getRandomValues(new Uint8Array(30))),i.split(\"\").map((e=\u003e\"x\"===e?o(t,r++).toString(16):\"y\"===e?(3\u0026o()|8).toString(16):e)).join(\"\")}function s(e){const t=n._A?.crypto||n._A?.msCrypto;let r,i=0;t\u0026\u0026t.getRandomValues\u0026\u0026(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s\u003ce;s++)a.push(o(r,i++).toString(16));return a.join(\"\")}function c(){return s(16)}function u(){return s(32)}},7056:(e,t,r)=\u003e{\"use strict\";r.d(t,{Bq:()=\u003en,Hb:()=\u003ea,IK:()=\u003eu,K4:()=\u003ei,oD:()=\u003eo,uT:()=\u003ec,wO:()=\u003es});const n=\"NRBA\",i=\"SESSION\",o=144e5,a=18e5,s={STARTED:\"session-started\",PAUSE:\"session-pause\",RESET:\"session-reset\",RESUME:\"session-resume\",UPDATE:\"session-update\"},c={SAME_TAB:\"same-tab\",CROSS_TAB:\"cross-tab\"},u={OFF:0,FULL:1,ERROR:2}},7894:(e,t,r)=\u003e{\"use strict\";function n(){return Math.floor(performance.now())}r.d(t,{z:()=\u003en})},7243:(e,t,r)=\u003e{\"use strict\";r.d(t,{e:()=\u003ei});var n=r(385);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._A?.location?.protocol\u0026\u0026t.host===n._A?.location?.host};return r.port\u0026\u0026\"\"!==r.port||(\"http:\"===t.protocol\u0026\u0026(r.port=\"80\"),\"https:\"===t.protocol\u0026\u0026(r.port=\"443\")),r.pathname\u0026\u0026\"\"!==r.pathname?r.pathname.startsWith(\"/\")||(r.pathname=\"/\".concat(r.pathname)):r.pathname=\"/\",r}catch(e){return{}}}},50:(e,t,r)=\u003e{\"use strict\";function n(e,t){\"function\"==typeof console.warn\u0026\u0026(console.warn(\"New Relic: \".concat(e)),t\u0026\u0026console.warn(t))}r.d(t,{Z:()=\u003en})},2825:(e,t,r)=\u003e{\"use strict\";r.d(t,{N:()=\u003ec,T:()=\u003es});var n=r(8325),i=r(385);const o=\"newrelic\";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e\u0026\u0026\"object\"==typeof e\u0026\u0026(a.has(t)||(r.emit(\"rumresp\",[e]),s[t]=e,a.add(t),function(){let e=arguments.length\u003e0\u0026\u0026void 0!==arguments[0]?arguments[0]:{};try{i._A.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},2210:(e,t,r)=\u003e{\"use strict\";r.d(t,{X:()=\u003ei});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty\u0026\u0026Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},7872:(e,t,r)=\u003e{\"use strict\";function n(e){var t=this;let r=arguments.length\u003e1\u0026\u0026void 0!==arguments[1]?arguments[1]:500,n=arguments.length\u003e2\u0026\u0026void 0!==arguments[2]?arguments[2]:{};const i=n?.leading||!1;let o;return function(){for(var n=arguments.length,a=new Array(n),s=0;s\u003cn;s++)a[s]=arguments[s];i\u0026\u0026void 0===o\u0026\u0026(e.apply(t,a),o=setTimeout((()=\u003e{o=clearTimeout(o)}),r)),i||(clearTimeout(o),o=setTimeout((()=\u003e{e.apply(t,a)}),r))}}function i(e){var t=this;let r=!1;return function(){if(!r){r=!0;for(var n=arguments.length,i=new Array(n),o=0;o\u003cn;o++)i[o]=arguments[o];e.apply(t,i)}}}r.d(t,{D:()=\u003en,Z:()=\u003ei})},1284:(e,t,r)=\u003e{\"use strict\";r.d(t,{D:()=\u003en});const n=(e,t)=\u003eObject.entries(e||{}).map((e=\u003e{let[r,n]=e;return t(r,n)}))},4351:(e,t,r)=\u003e{\"use strict\";r.d(t,{P:()=\u003eo});var n=r(8325);const i=()=\u003e{const e=new WeakSet;return(t,r)=\u003e{if(\"object\"==typeof r\u0026\u0026null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())}catch(e){try{n.ee.emit(\"internal-error\",[e])}catch(e){}}}},3960:(e,t,r)=\u003e{\"use strict\";r.d(t,{KB:()=\u003ea,b2:()=\u003eo});var n=r(3239);function i(){return\"undefined\"==typeof document||\"complete\"===document.readyState}function o(e,t){if(i())return e();(0,n.bP)(\"load\",e,t)}function a(e){if(i())return e();(0,n.iz)(\"DOMContentLoaded\",e)}},8632:(e,t,r)=\u003e{\"use strict\";r.d(t,{EZ:()=\u003ed,ce:()=\u003eo,ek:()=\u003eu,fP:()=\u003ea,gG:()=\u003el,h5:()=\u003ec,mF:()=\u003es});var n=r(385),i=r(7894);const o={beacon:\"bam.nr-data.net\",errorBeacon:\"bam.nr-data.net\"};function a(){return n._A.NREUM||(n._A.NREUM={}),void 0===n._A.newrelic\u0026\u0026(n._A.newrelic=n._A.NREUM),n._A.NREUM}function s(){let e=a();return e.o||(e.o={ST:n._A.setTimeout,SI:n._A.setImmediate,CT:n._A.clearTimeout,XHR:n._A.XMLHttpRequest,REQ:n._A.Request,EV:n._A.Event,PR:n._A.Promise,MO:n._A.MutationObserver,FETCH:n._A.fetch}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.z)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},7956:(e,t,r)=\u003e{\"use strict\";r.d(t,{N:()=\u003ei});var n=r(3239);function i(e){let t=arguments.length\u003e1\u0026\u0026void 0!==arguments[1]\u0026\u0026arguments[1],r=arguments.length\u003e2?arguments[2]:void 0,i=arguments.length\u003e3?arguments[3]:void 0;(0,n.iz)(\"visibilitychange\",(function(){if(t)return void(\"hidden\"===document.visibilityState\u0026\u0026e());e(document.visibilityState)}),r,i)}},7806:(e,t,r)=\u003e{\"use strict\";r.d(t,{em:()=\u003eb,u5:()=\u003eT,QU:()=\u003eI,_L:()=\u003ej,Gm:()=\u003eL,Lg:()=\u003eM,BV:()=\u003eV,Kf:()=\u003eY});var n=r(8325),i=r(3117);const o=\"nr@original:\".concat(i.a);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n=\"\");const a=\"-\"===n.charAt(0);for(let s=0;s\u003ct.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=\"\"),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty\u0026\u0026Object.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)a.call(e,n)\u0026\u0026(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d=\"function\"==typeof n?n(o,a):n||{}}catch(t){u([t,\"\",[o,a,s],d],e)}i(r+\"start\",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+\"err\",[o,a,e],d,c),e}finally{i(r+\"end\",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit(\"internal-error\",e)}catch(e){}}function d(e){return!(e\u0026\u0026\"function\"==typeof e\u0026\u0026e.apply\u0026\u0026!e[o])}var l=r(2210),f=r(385);const h={},p=f._A.XMLHttpRequest,g=\"addEventListener\",m=\"removeEventListener\",v=\"nr@wrapped:\".concat(n.A);function b(e){var t=function(e){return(e||n.ee).get(\"events\")}(e);if(h[t.debugId]++)return t;h[t.debugId]=1;var r=c(t,!0);function i(e){r.inPlace(e,[g,m],\"-\",o)}function o(e,t){return e[1]}return\"getPrototypeOf\"in Object\u0026\u0026(f.il\u0026\u0026y(document,i),y(f._A,i),y(p.prototype,i)),t.on(g+\"-start\",(function(e,t){var n=e[1];if(null!==n\u0026\u0026(\"function\"==typeof n||\"object\"==typeof n)){var i=(0,l.X)(n,v,(function(){var e={object:function(){if(\"function\"!=typeof n.handleEvent)return;return n.handleEvent.apply(n,arguments)},function:n}[typeof n];return e?r(e,\"fn-\",null,e.name||\"anonymous\"):n}));this.wrapped=e[1]=i}})),t.on(m+\"-start\",(function(e){e[1]=this.wrapped||e[1]})),t}function y(e,t){let r=e;for(;\"object\"==typeof r\u0026\u0026!Object.prototype.hasOwnProperty.call(r,g);)r=Object.getPrototypeOf(r);for(var n=arguments.length,i=new Array(n\u003e2?n-2:0),o=2;o\u003cn;o++)i[o-2]=arguments[o];r\u0026\u0026t(r,...i)}var A=\"fetch-\",w=A+\"body-\",E=[\"arrayBuffer\",\"blob\",\"json\",\"text\",\"formData\"],_=f._A.Request,x=f._A.Response,R=\"prototype\";const S={};function T(e){const t=function(e){return(e||n.ee).get(\"fetch\")}(e);if(!(_\u0026\u0026x\u0026\u0026f._A.fetch))return t;if(S[t.debugId]++)return t;function r(e,r,i){var o=e[r];\"function\"==typeof o\u0026\u0026(e[r]=function(){var e,r=[...arguments],a={};t.emit(i+\"before-start\",[r],a),a[n.A]\u0026\u0026a[n.A].dt\u0026\u0026(e=a[n.A].dt);var s=o.apply(this,r);return t.emit(i+\"start\",[r,e],s),s.then((function(e){return t.emit(i+\"end\",[null,e],s),e}),(function(e){throw t.emit(i+\"end\",[e],s),e}))})}return S[t.debugId]=1,E.forEach((e=\u003e{r(_[R],e,w),r(x[R],e,w)})),r(f._A,\"fetch\",A),t.on(A+\"end\",(function(e,r){var n=this;if(r){var i=r.headers.get(\"content-length\");null!==i\u0026\u0026(n.rxSize=i),t.emit(A+\"done\",[null,r],n)}else t.emit(A+\"done\",[e],n)})),t}const N={},O=[\"pushState\",\"replaceState\"];function I(e){const t=function(e){return(e||n.ee).get(\"history\")}(e);return!f.il||N[t.debugId]++||(N[t.debugId]=1,c(t).inPlace(window.history,O,\"-\")),t}var D=r(3239);const P={},C=[\"appendChild\",\"insertBefore\",\"replaceChild\"];function j(e){const t=function(e){return(e||n.ee).get(\"jsonp\")}(e);if(!f.il||P[t.debugId])return t;P[t.debugId]=!0;var r=c(t),i=/[?\u0026](?:callback|cb)=([^\u0026#]+)/,o=/(.*)\\.([^.]+)/,a=/^(\\w+)(\\.|$)(.*)$/;function s(e,t){if(!e)return t;const r=e.match(a),n=r[1];return s(r[3],t[n])}return r.inPlace(Node.prototype,C,\"dom-\"),t.on(\"dom-start\",(function(e){!function(e){if(!e||\"string\"!=typeof e.nodeName||\"script\"!==e.nodeName.toLowerCase())return;if(\"function\"!=typeof e.addEventListener)return;var n=(a=e.src,c=a.match(i),c?c[1]:null);var a,c;if(!n)return;var u=function(e){var t=e.match(o);if(t\u0026\u0026t.length\u003e=3)return{key:t[2],parent:s(t[1],window)};return{key:e,parent:window}}(n);if(\"function\"!=typeof u.parent[u.key])return;var d={};function l(){t.emit(\"jsonp-end\",[],d),e.removeEventListener(\"load\",l,(0,D.m$)(!1)),e.removeEventListener(\"error\",f,(0,D.m$)(!1))}function f(){t.emit(\"jsonp-error\",[],d),t.emit(\"jsonp-end\",[],d),e.removeEventListener(\"load\",l,(0,D.m$)(!1)),e.removeEventListener(\"error\",f,(0,D.m$)(!1))}r.inPlace(u.parent,[u.key],\"cb-\",d),e.addEventListener(\"load\",l,(0,D.m$)(!1)),e.addEventListener(\"error\",f,(0,D.m$)(!1)),t.emit(\"new-jsonp\",[e.src],d)}(e[0])})),t}const k={};function L(e){const t=function(e){return(e||n.ee).get(\"mutation\")}(e);if(!f.il||k[t.debugId])return t;k[t.debugId]=!0;var r=c(t),i=f._A.MutationObserver;return i\u0026\u0026(window.MutationObserver=function(e){return this instanceof i?new i(r(e,\"fn-\")):i.apply(this,arguments)},MutationObserver.prototype=i.prototype),t}const H={};function M(e){const t=function(e){return(e||n.ee).get(\"promise\")}(e);if(H[t.debugId])return t;H[t.debugId]=!0;var r=t.context,i=c(t),a=f._A.Promise;return a\u0026\u0026function(){function e(r){var n=t.context(),o=i(r,\"executor-\",n,null,!1);const s=Reflect.construct(a,[o],e);return t.context(s).getCtx=function(){return n},s}f._A.Promise=e,Object.defineProperty(e,\"name\",{value:\"Promise\"}),e.toString=function(){return a.toString()},Object.setPrototypeOf(e,a),[\"all\",\"race\"].forEach((function(r){const n=a[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=\u003e{this.resolve(e).then(a(\"all\"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit(\"propagate\",[null,!i],o,!1,!1),i=i||!e}}}})),[\"resolve\",\"reject\"].forEach((function(r){const n=a[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r\u0026\u0026t.emit(\"propagate\",[e,!0],r,!1,!1),r}})),e.prototype=a.prototype;const n=a.prototype.then;a.prototype.then=function(){var e=this,o=r(e);o.promise=e;for(var a=arguments.length,s=new Array(a),c=0;c\u003ca;c++)s[c]=arguments[c];s[0]=i(s[0],\"cb-\",o,null,!1),s[1]=i(s[1],\"cb-\",o,null,!1);const u=n.apply(this,s);return o.nextPromise=u,t.emit(\"propagate\",[e,!0],u,!1,!1),u},a.prototype.then[o]=n,t.on(\"executor-start\",(function(e){e[0]=i(e[0],\"resolve-\",this,null,!1),e[1]=i(e[1],\"resolve-\",this,null,!1)})),t.on(\"executor-err\",(function(e,t,r){e[1](r)})),t.on(\"cb-end\",(function(e,r,n){t.emit(\"propagate\",[n,!0],this.nextPromise,!1,!1)})),t.on(\"propagate\",(function(e,r,n){this.getCtx\u0026\u0026!r||(this.getCtx=function(){if(e instanceof Promise)var r=t.context(e);return r\u0026\u0026r.getCtx?r.getCtx():this})}))}(),t}const U={},z=\"setTimeout\",F=\"setInterval\",B=\"clearTimeout\",G=\"-start\",q=\"-\",K=[z,\"setImmediate\",F,B,\"clearImmediate\"];function V(e){const t=function(e){return(e||n.ee).get(\"timer\")}(e);if(U[t.debugId]++)return t;U[t.debugId]=1;var r=c(t);return r.inPlace(f._A,K.slice(0,2),z+q),r.inPlace(f._A,K.slice(2,3),F+q),r.inPlace(f._A,K.slice(3),B+q),t.on(F+G,(function(e,t,n){e[0]=r(e[0],\"fn-\",null,n)})),t.on(z+G,(function(e,t,n){this.method=n,this.timerDuration=isNaN(e[1])?0:+e[1],e[0]=r(e[0],\"fn-\",this,n)})),t}var Z=r(50);const W={},X=[\"open\",\"send\"];function Y(e){var t=e||n.ee;const r=function(e){return(e||n.ee).get(\"xhr\")}(t);if(W[r.debugId]++)return r;W[r.debugId]=1,b(t);var i=c(r),o=f._A.XMLHttpRequest,a=f._A.MutationObserver,s=f._A.Promise,u=f._A.setInterval,d=\"readystatechange\",l=[\"onload\",\"onerror\",\"onabort\",\"onloadstart\",\"onloadend\",\"onprogress\",\"ontimeout\"],h=[],p=f._A.XMLHttpRequest=function(e){const t=new o(e),n=r.context(t);try{r.emit(\"new-xhr\",[t],n),t.addEventListener(d,(a=n,function(){var e=this;e.readyState\u003e3\u0026\u0026!a.resolved\u0026\u0026(a.resolved=!0,r.emit(\"xhr-resolved\",[],e)),i.inPlace(e,l,\"fn-\",w)}),(0,D.m$)(!1))}catch(e){(0,Z.Z)(\"An error occurred while intercepting XHR\",e);try{r.emit(\"internal-error\",[e])}catch(e){}}var a;return t};function g(e,t){i.inPlace(t,[\"onreadystatechange\"],\"fn-\",w)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,p),p.prototype=o.prototype,i.inPlace(p.prototype,X,\"-xhr-\",w),r.on(\"send-xhr-start\",(function(e,t){g(e,t),function(e){h.push(e),a\u0026\u0026(m?m.then(A):u?u(A):(v=-v,y.data=v))}(t)})),r.on(\"open-xhr-start\",g),a){var m=s\u0026\u0026s.resolve();if(!u\u0026\u0026!s){var v=1,y=document.createTextNode(v);new a(A).observe(y,{characterData:!0})}}else t.on(\"fn-end\",(function(e){e[0]\u0026\u0026e[0].type===d||A()}));function A(){for(var e=0;e\u003ch.length;e++)g(0,h[e]);h.length\u0026\u0026(h=[])}function w(e,t){return t}return r}},7825:(e,t,r)=\u003e{\"use strict\";r.d(t,{t:()=\u003en});const n=r(3325).D.ajax},6660:(e,t,r)=\u003e{\"use strict\";r.d(t,{t:()=\u003en});const n=r(3325).D.jserrors},3081:(e,t,r)=\u003e{\"use strict\";r.d(t,{gF:()=\u003eo,mY:()=\u003ei,t9:()=\u003en,vz:()=\u003es,xS:()=\u003ea});const n=r(3325).D.metrics,i=\"sm\",o=\"cm\",a=\"storeSupportabilityMetrics\",s=\"storeEventMetrics\"},4649:(e,t,r)=\u003e{\"use strict\";r.d(t,{t:()=\u003en});const n=r(3325).D.pageAction},7633:(e,t,r)=\u003e{\"use strict\";r.d(t,{t:()=\u003en});const n=r(3325).D.pageViewEvent},9251:(e,t,r)=\u003e{\"use strict\";r.d(t,{t:()=\u003en});const n=r(3325).D.pageViewTiming},7144:(e,t,r)=\u003e{\"use strict\";r.d(t,{Ef:()=\u003eo,J0:()=\u003ef,Mi:()=\u003el,Vb:()=\u003ea,Ye:()=\u003ec,fm:()=\u003eu,i9:()=\u003es,pB:()=\u003eh,t9:()=\u003ei,u0:()=\u003ed});var n=r(7056);const i=r(3325).D.sessionReplay,o={RECORD:\"recordReplay\",PAUSE:\"pauseReplay\",REPLAY_RUNNING:\"replayRunning\",ERROR_DURING_REPLAY:\"errorDuringReplay\"},a=.12,s={DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},c=1e6,u=64e3,d={[n.IK.ERROR]:15e3,[n.IK.FULL]:3e5,[n.IK.OFF]:0},l={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\"}},f=5e3,h={API:\"api\"}},3112:(e,t,r)=\u003e{\"use strict\";r.d(t,{HM:()=\u003ec,Rc:()=\u003ea,rU:()=\u003es,wi:()=\u003eu});var n=r(234),i=r(8488),o=r(385);function a(e){return!!n.Yu.MO\u0026\u0026(0,i.H)(e)\u0026\u0026!0===(0,n.Mt)(e,\"session_trace.enabled\")}function s(e){return!0===(0,n.Mt)(e,\"session_replay.preload\")\u0026\u0026a(e)}function c(e,t){return!!a(e)\u0026\u0026(!!t?.isNew||!!t?.state.sessionReplayMode)}function u(e,t){const r=t.correctAbsoluteTimestamp(e);return{originalTimestamp:e,correctedTimestamp:r,timestampDiff:e-r,originTime:o.sK,correctedOriginTime:t.correctedOriginTime,originTimeDiff:Math.floor(o.sK-t.correctedOriginTime)}}},3614:(e,t,r)=\u003e{\"use strict\";r.d(t,{BST_RESOURCE:()=\u003ei,END:()=\u003es,FEATURE_NAME:()=\u003en,FN_END:()=\u003eu,FN_START:()=\u003ec,PUSH_STATE:()=\u003ed,RESOURCE:()=\u003eo,START:()=\u003ea,c:()=\u003el});const n=r(3325).D.sessionTrace,i=\"bstResource\",o=\"resource\",a=\"-start\",s=\"-end\",c=\"fn\"+a,u=\"fn\"+s,d=\"pushState\",l=1e3},6216:(e,t,r)=\u003e{\"use strict\";r.d(t,{K8:()=\u003es,QZ:()=\u003ec,cS:()=\u003eo,sE:()=\u003ei,t9:()=\u003ea,vh:()=\u003eu});var n=r(3325);const i=[\"click\",\"keydown\",\"submit\"],o=\"api\",a=n.D.softNav,s={INITIAL_PAGE_LOAD:\"\",ROUTE_CHANGE:1,UNSPECIFIED:2},c={INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},u={IP:\"in progress\",FIN:\"finished\",CAN:\"cancelled\"}},7836:(e,t,r)=\u003e{\"use strict\";r.d(t,{BODY:()=\u003eE,CB_END:()=\u003e_,CB_START:()=\u003eu,END:()=\u003ew,FEATURE_NAME:()=\u003ei,FETCH:()=\u003eR,FETCH_BODY:()=\u003ev,FETCH_DONE:()=\u003em,FETCH_START:()=\u003eg,FN_END:()=\u003ec,FN_START:()=\u003es,INTERACTION:()=\u003ef,INTERACTION_API:()=\u003ed,INTERACTION_EVENTS:()=\u003eo,JSONP_END:()=\u003eb,JSONP_NODE:()=\u003ep,JS_TIME:()=\u003ex,MAX_TIMER_BUDGET:()=\u003ea,REMAINING:()=\u003el,SPA_NODE:()=\u003eh,START:()=\u003eA,originalSetTimeout:()=\u003ey});var n=r(234);const i=r(3325).D.spa,o=[\"click\",\"submit\",\"keypress\",\"keydown\",\"keyup\",\"change\"],a=999,s=\"fn-start\",c=\"fn-end\",u=\"cb-start\",d=\"api-ixn-\",l=\"remaining\",f=\"interaction\",h=\"spaNode\",p=\"jsonpNode\",g=\"fetch-start\",m=\"fetch-done\",v=\"fetch-body-\",b=\"jsonp-end\",y=n.Yu.ST,A=\"-start\",w=\"-end\",E=\"-body\",_=\"cb\"+w,x=\"jsTime\",R=\"fetch\"},5938:(e,t,r)=\u003e{\"use strict\";r.d(t,{W:()=\u003ei});var n=r(8325);class i{constructor(e,t,r){this.agentIdentifier=e,this.aggregator=t,this.ee=n.ee.get(e),this.featureName=r,this.blocked=!1}}},8488:(e,t,r)=\u003e{\"use strict\";r.d(t,{H:()=\u003eo});var n=r(234),i=r(385);const o=e=\u003ei.il\u0026\u0026!0===(0,n.Mt)(e,\"privacy.cookies_enabled\")},2758:(e,t,r)=\u003e{\"use strict\";r.d(t,{j:()=\u003e_});var n=r(3325),i=r(234),o=r(5546),a=r(8325),s=r(8e3),c=r(3960),u=r(385),d=r(50),l=r(3081),f=r(8632),h=r(7144);const p=[\"setErrorHandler\",\"finished\",\"addToTrace\",\"addRelease\",\"addPageAction\",\"setCurrentRouteName\",\"setPageViewName\",\"setCustomAttribute\",\"interaction\",\"noticeError\",\"setUserId\",\"setApplicationVersion\",\"start\",h.Ef.RECORD,h.Ef.PAUSE],g=[\"setErrorHandler\",\"finished\",\"addToTrace\",\"addRelease\"];var m=r(7894),v=r(7056);function b(){const e=(0,f.gG)();p.forEach((t=\u003e{e[t]=function(){for(var r=arguments.length,n=new Array(r),i=0;i\u003cr;i++)n[i]=arguments[i];return function(t){for(var r=arguments.length,n=new Array(r\u003e1?r-1:0),i=1;i\u003cr;i++)n[i-1]=arguments[i];let o=[];return Object.values(e.initializedAgents).forEach((e=\u003e{e.exposed\u0026\u0026e.api[t]\u0026\u0026o.push(e.api[t](...n))})),o.length\u003e1?o:o[0]}(t,...n)}}))}const y={};var A=r(2825);const w=e=\u003e{const t=e.startsWith(\"http\");e+=\"/\",r.p=t?e:\"https://\"+e};let E=!1;function _(e){let t=arguments.length\u003e1\u0026\u0026void 0!==arguments[1]?arguments[1]:{},p=arguments.length\u003e2?arguments[2]:void 0,_=arguments.length\u003e3?arguments[3]:void 0,{init:x,info:R,loader_config:S,runtime:T={loaderType:p},exposed:N=!0}=t;const O=(0,f.gG)();R||(x=O.init,R=O.info,S=O.loader_config),(0,i.Dg)(e.agentIdentifier,x||{}),(0,i.GE)(e.agentIdentifier,S||{}),R.jsAttributes??={},u.v6\u0026\u0026(R.jsAttributes.isWorker=!0),(0,i.CX)(e.agentIdentifier,R);const I=(0,i.P_)(e.agentIdentifier),D=[R.beacon,R.errorBeacon];E||(I.proxy.assets\u0026\u0026(w(I.proxy.assets),D.push(I.proxy.assets)),I.proxy.beacon\u0026\u0026D.push(I.proxy.beacon),b(),(0,f.EZ)(\"activatedFeatures\",A.T),e.runSoftNavOverSpa\u0026\u0026=!0===I.soft_navigations.enabled\u0026\u0026I.feature_flags.includes(\"soft_nav\")),T.denyList=[...I.ajax.deny_list||[],...I.ajax.block_internal?D:[]],T.ptid=e.agentIdentifier,(0,i.sU)(e.agentIdentifier,T),void 0===e.api\u0026\u0026(e.api=function(e,t){let f=arguments.length\u003e2\u0026\u0026void 0!==arguments[2]\u0026\u0026arguments[2];t||(0,s.RP)(e,\"api\");const p={};var b=a.ee.get(e),A=b.get(\"tracer\");y[e]=v.IK.OFF,b.on(h.Ef.REPLAY_RUNNING,(t=\u003e{y[e]=t}));var w=\"api-\",E=w+\"ixn-\";function _(t,r,n,o){const a=(0,i.C5)(e);return null===r?delete a.jsAttributes[t]:(0,i.CX)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),S(w,n,!0,o||null===r?\"session\":void 0)(t,r)}function x(){}g.forEach((e=\u003e{p[e]=S(w,e,!0,\"api\")})),p.addPageAction=S(w,\"addPageAction\",!0,n.D.pageAction),p.setPageViewName=function(t,r){if(\"string\"==typeof t)return\"/\"!==t.charAt(0)\u0026\u0026(t=\"/\"+t),(0,i.OP)(e).customTransaction=(r||\"http://custom.transaction\")+t,S(w,\"setPageViewName\",!0)()},p.setCustomAttribute=function(e,t){let r=arguments.length\u003e2\u0026\u0026void 0!==arguments[2]\u0026\u0026arguments[2];if(\"string\"==typeof e){if([\"string\",\"number\",\"boolean\"].includes(typeof t)||null===t)return _(e,t,\"setCustomAttribute\",r);(0,d.Z)(\"Failed to execute setCustomAttribute.\\nNon-null value must be a string, number or boolean type, but a type of \u003c\".concat(typeof t,\"\u003e was provided.\"))}else(0,d.Z)(\"Failed to execute setCustomAttribute.\\nName must be a string type, but a type of \u003c\".concat(typeof e,\"\u003e was provided.\"))},p.setUserId=function(e){if(\"string\"==typeof e||null===e)return _(\"enduser.id\",e,\"setUserId\",!0);(0,d.Z)(\"Failed to execute setUserId.\\nNon-null value must be a string type, but a type of \u003c\".concat(typeof e,\"\u003e was provided.\"))},p.setApplicationVersion=function(e){if(\"string\"==typeof e||null===e)return _(\"application.version\",e,\"setApplicationVersion\",!1);(0,d.Z)(\"Failed to execute setApplicationVersion. Expected \u003cString | null\u003e, but got \u003c\".concat(typeof e,\"\u003e.\"))},p.start=()=\u003e{try{(0,o.p)(l.xS,[\"API/start/called\"],void 0,n.D.metrics,b),b.emit(\"manual-start-all\")}catch(e){(0,d.Z)(\"An unexpected issue occurred\",e)}},p[h.Ef.RECORD]=function(){(0,o.p)(l.xS,[\"API/recordReplay/called\"],void 0,n.D.metrics,b),(0,o.p)(h.Ef.RECORD,[],void 0,n.D.sessionReplay,b)},p[h.Ef.PAUSE]=function(){(0,o.p)(l.xS,[\"API/pauseReplay/called\"],void 0,n.D.metrics,b),(0,o.p)(h.Ef.PAUSE,[],void 0,n.D.sessionReplay,b)},p.interaction=function(e){return(new x).get(\"object\"==typeof e?e:{})};const R=x.prototype={createTracer:function(e,t){var r={},i=this,a=\"function\"==typeof t;return(0,o.p)(l.xS,[\"API/createTracer/called\"],void 0,n.D.metrics,b),f||(0,o.p)(E+\"tracer\",[(0,m.z)(),e,r],i,n.D.spa,b),function(){if(A.emit((a?\"\":\"no-\")+\"fn-start\",[(0,m.z)(),i,a],r),a)try{return t.apply(this,arguments)}catch(e){const t=\"string\"==typeof e?new Error(e):e;throw A.emit(\"fn-err\",[arguments,this,t],r),t}finally{A.emit(\"fn-end\",[(0,m.z)()],r)}}}};function S(e,t,r,i){return function(){return(0,o.p)(l.xS,[\"API/\"+t+\"/called\"],void 0,n.D.metrics,b),i\u0026\u0026(0,o.p)(e+t,[(0,m.z)(),...arguments],r?null:this,i,b),r?void 0:this}}function T(){r.e(111).then(r.bind(r,7438)).then((t=\u003e{let{setAPI:r}=t;r(e),(0,s.LP)(e,\"api\")})).catch((e=\u003e{(0,d.Z)(\"Downloading runtime APIs failed...\",e),b.abort()}))}return[\"actionText\",\"setName\",\"setAttribute\",\"save\",\"ignore\",\"onEnd\",\"getContext\",\"end\",\"get\"].forEach((e=\u003e{R[e]=S(E,e,void 0,f?n.D.softNav:n.D.spa)})),p.setCurrentRouteName=f?S(E,\"routeName\",void 0,n.D.softNav):S(w,\"routeName\",!0,n.D.spa),p.noticeError=function(t,r){\"string\"==typeof t\u0026\u0026(t=new Error(t)),(0,o.p)(l.xS,[\"API/noticeError/called\"],void 0,n.D.metrics,b),(0,o.p)(\"err\",[t,(0,m.z)(),!1,r,!!y[e]],void 0,n.D.jserrors,b)},u.il?(0,c.b2)((()=\u003eT()),!0):T(),p}(e.agentIdentifier,_,e.runSoftNavOverSpa)),void 0===e.exposed\u0026\u0026(e.exposed=N),E=!0}},8993:(e,t,r)=\u003e{r.nc=(()=\u003e{try{return document?.currentScript?.nonce}catch(e){}return\"\"})()},3325:(e,t,r)=\u003e{\"use strict\";r.d(t,{D:()=\u003en,p:()=\u003ei});const n={ajax:\"ajax\",jserrors:\"jserrors\",metrics:\"metrics\",pageAction:\"page_action\",pageViewEvent:\"page_view_event\",pageViewTiming:\"page_view_timing\",sessionReplay:\"session_replay\",sessionTrace:\"session_trace\",softNav:\"soft_navigations\",spa:\"spa\"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.ajax]:5,[n.sessionTrace]:6,[n.pageAction]:7,[n.spa]:8,[n.softNav]:9,[n.sessionReplay]:10}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=\u003e{for(var r in t)i.o(t,r)\u0026\u0026!i.o(e,r)\u0026\u0026Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=\u003ePromise.all(Object.keys(i.f).reduce(((t,r)=\u003e(i.f[r](e,t),t)),[])),i.u=e=\u003e({111:\"nr-spa\",164:\"nr-spa-compressor\",433:\"nr-spa-recorder\"}[e]+\"-1.260.0.min.js\"),i.o=(e,t)=\u003eObject.prototype.hasOwnProperty.call(e,t),e={},t=\"NRBA-1.260.0.PROD:\",i.l=(r,n,o,a)=\u003e{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName(\"script\"),d=0;d\u003cu.length;d++){var l=u[d];if(l.getAttribute(\"src\")==r||l.getAttribute(\"data-webpack\")==t+o){s=l;break}}if(!s){c=!0;var f={111:\"sha512-yg/3G4Xi/nUUSGUZ5sZ5laGfxYiBl4A4z1KiCDtOZnnyZ1yRz/gldBGvnLQkCt9iHEG+xaLgGYJXknmRQ1RRBg==\",433:\"sha512-+r3Wkk8iuDgwHGMXW/4TexrEk4BUtJDwoydKiVtCg/OhRaVQjDykRQ5pq++NLNYgn6VmvYTyFNtJOzAGjbQYxQ==\",164:\"sha512-B0foyUJVqgCiRQ77L/MyMwRicWPhe+NqE2lxw/3pl055wE8eTQpuvUp+2B2d8y2J7zEgKz6qDFwcVFoxG46BKw==\"};(s=document.createElement(\"script\")).charset=\"utf-8\",s.timeout=120,i.nc\u0026\u0026s.setAttribute(\"nonce\",i.nc),s.setAttribute(\"data-webpack\",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+\"/\")\u0026\u0026(s.crossOrigin=\"anonymous\"),f[a]\u0026\u0026(s.integrity=f[a])}e[r]=[n];var h=(t,n)=\u003e{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode\u0026\u0026s.parentNode.removeChild(s),i\u0026\u0026i.forEach((e=\u003ee(n))),t)return t(n)},p=setTimeout(h.bind(null,void 0,{type:\"timeout\",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),c\u0026\u0026document.head.appendChild(s)}},i.r=e=\u003e{\"undefined\"!=typeof Symbol\u0026\u0026Symbol.toStringTag\u0026\u0026Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},i.p=\"https://js-agent.newrelic.com/\",(()=\u003e{var e={801:0,92:0};i.f.j=(t,r)=\u003e{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=\u003en=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=\u003e{if(i.o(e,t)\u0026\u0026(0!==(n=e[t])\u0026\u0026(e[t]=void 0),n)){var o=r\u0026\u0026(\"load\"===r.type?\"missing\":r.type),a=r\u0026\u0026r.target\u0026\u0026r.target.src;s.message=\"Loading chunk \"+t+\" failed.\\n(\"+o+\": \"+a+\")\",s.name=\"ChunkLoadError\",s.type=o,s.request=a,n[1](s)}}),\"chunk-\"+t,t)}};var t=(t,r)=\u003e{var n,o,[a,s,c]=r,u=0;if(a.some((t=\u003e0!==e[t]))){for(n in s)i.o(s,n)\u0026\u0026(i.m[n]=s[n]);if(c)c(i)}for(t\u0026\u0026t(r);u\u003ca.length;u++)o=a[u],i.o(e,o)\u0026\u0026e[o]\u0026\u0026e[o][0](),e[o]=0},r=self[\"webpackChunk:NRBA-1.260.0.PROD\"]=self[\"webpackChunk:NRBA-1.260.0.PROD\"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=\u003e{\"use strict\";i(8993);var e=i(50),t=i(7144),r=i(4402),n=i(8325);class o{agentIdentifier;constructor(){let e=arguments.length\u003e0\u0026\u0026void 0!==arguments[0]?arguments[0]:(0,r.ky)(16);this.agentIdentifier=e,this.ee=n.ee.get(e)}#e(t){for(var r=arguments.length,n=new Array(r\u003e1?r-1:0),i=1;i\u003cr;i++)n[i-1]=arguments[i];if(\"function\"==typeof this.api?.[t])return this.api[t](...n);(0,e.Z)(\"Call to agent api \".concat(t,\" failed. The API is not currently initialized.\"))}addPageAction(e,t){return this.#e(\"addPageAction\",e,t)}setPageViewName(e,t){return this.#e(\"setPageViewName\",e,t)}setCustomAttribute(e,t,r){return this.#e(\"setCustomAttribute\",e,t,r)}noticeError(e,t){return this.#e(\"noticeError\",e,t)}setUserId(e){return this.#e(\"setUserId\",e)}setApplicationVersion(e){return this.#e(\"setApplicationVersion\",e)}setErrorHandler(e){return this.#e(\"setErrorHandler\",e)}finished(e){return this.#e(\"finished\",e)}addRelease(e,t){return this.#e(\"addRelease\",e,t)}start(e){return this.#e(\"start\",e)}recordReplay(){return this.#e(t.Ef.RECORD)}pauseReplay(){return this.#e(t.Ef.PAUSE)}addToTrace(e){return this.#e(\"addToTrace\",e)}setCurrentRouteName(e){return this.#e(\"setCurrentRouteName\",e)}interaction(){return this.#e(\"interaction\")}}var a=i(3325),s=i(234);const c=Object.values(a.D);function u(e){const t={};return c.forEach((r=\u003e{t[r]=function(e,t){return!0===(0,s.Mt)(t,\"\".concat(e,\".enabled\"))}(r,e)})),t}var d=i(2758);var l=i(8e3),f=i(5938),h=i(3960),p=i(385),g=i(3112),m=i(8488),v=i(7872);class b extends f.W{constructor(e,t,r){let n=!(arguments.length\u003e3\u0026\u0026void 0!==arguments[3])||arguments[3];super(e,t,r),this.auto=n,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===(0,s.Mt)(this.agentIdentifier,\"\".concat(this.featureName,\".autoStart\"))\u0026\u0026(this.auto=!1),this.auto?(0,l.RP)(e,r):this.ee.on(\"manual-start-all\",(0,v.Z)((()=\u003e{(0,l.RP)(this.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator()})))}importAggregator(){let t,r=arguments.length\u003e0\u0026\u0026void 0!==arguments[0]?arguments[0]:{};if(this.featAggregate||!this.auto)return;this.onAggregateImported=new Promise((e=\u003e{t=e}));const n=async()=\u003e{let n;try{if((0,m.H)(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(111).then(i.bind(i,9446));n=e(this.agentIdentifier)}}catch(t){(0,e.Z)(\"A problem occurred when starting up session manager. This page will not start or extend any session.\",t),this.featureName===a.D.sessionReplay\u0026\u0026this.abortHandler?.()}try{if(!this.#t(this.featureName,n))return(0,l.LP)(this.agentIdentifier,this.featureName),void t(!1);const{lazyFeatureLoader:e}=await i.e(111).then(i.bind(i,8582)),{Aggregate:o}=await e(this.featureName,\"aggregate\");this.featAggregate=new o(this.agentIdentifier,this.aggregator,r),t(!0)}catch(r){(0,e.Z)(\"Downloading and initializing \".concat(this.featureName,\" failed...\"),r),this.abortHandler?.(),(0,l.LP)(this.agentIdentifier,this.featureName,!0),t(!1),this.ee\u0026\u0026this.ee.abort()}};p.il?(0,h.b2)((()=\u003en()),!0):n()}#t(e,t){return e!==a.D.sessionReplay||(0,g.HM)(this.agentIdentifier,t)}}var y=i(7633);class A extends b{static featureName=y.t;constructor(e,t){let r=!(arguments.length\u003e2\u0026\u0026void 0!==arguments[2])||arguments[2];super(e,t,y.t,r),this.importAggregator()}}var w=i(1117),E=i(1284);class _ extends w.w{constructor(e){super(e),this.aggregatedData={}}store(e,t,r,n,i){var o=this.getBucket(e,t,r,i);return o.metrics=function(e,t){t||(t={count:0});return t.count+=1,(0,E.D)(e,(function(e,r){t[e]=x(r,t[e])})),t}(n,o.metrics),o}merge(e,t,r,n,i){var o=this.getBucket(e,t,n,i);if(o.metrics){var a=o.metrics;a.count+=r.count,(0,E.D)(r,(function(e,t){if(\"count\"!==e){var n=a[e],i=r[e];i\u0026\u0026!i.c?a[e]=x(i.t,n):a[e]=function(e,t){if(!t)return e;t.c||(t=R(t.t));return t.min=Math.min(e.min,t.min),t.max=Math.max(e.max,t.max),t.t+=e.t,t.sos+=e.sos,t.c+=e.c,t}(i,a[e])}}))}else o.metrics=r}storeMetric(e,t,r,n){var i=this.getBucket(e,t,r);return i.stats=x(n,i.stats),i}getBucket(e,t,r,n){this.aggregatedData[e]||(this.aggregatedData[e]={});var i=this.aggregatedData[e][t];return i||(i=this.aggregatedData[e][t]={params:r||{}},n\u0026\u0026(i.custom=n)),i}get(e,t){return t?this.aggregatedData[e]\u0026\u0026this.aggregatedData[e][t]:this.aggregatedData[e]}take(e){for(var t={},r=\"\",n=!1,i=0;i\u003ce.length;i++)t[r=e[i]]=Object.values(this.aggregatedData[r]||{}),t[r].length\u0026\u0026(n=!0),delete this.aggregatedData[r];return n?t:null}}function x(e,t){return null==e?function(e){e?e.c++:e={c:1};return e}(t):t?(t.c||(t=R(t.t)),t.c+=1,t.t+=e,t.sos+=e*e,e\u003et.max\u0026\u0026(t.max=e),e\u003ct.min\u0026\u0026(t.min=e),t):{t:e}}function R(e){return{t:e,min:e,max:e,sos:e*e,c:1}}var S=i(8632),T=i(4351);var N=i(5546),O=i(7956),I=i(3239),D=i(9251),P=i(7894);class C extends b{static featureName=D.t;constructor(e,t){let r=!(arguments.length\u003e2\u0026\u0026void 0!==arguments[2])||arguments[2];super(e,t,D.t,r),p.il\u0026\u0026((0,O.N)((()=\u003e(0,N.p)(\"docHidden\",[(0,P.z)()],void 0,D.t,this.ee)),!0),(0,I.bP)(\"pagehide\",(()=\u003e(0,N.p)(\"winPagehide\",[(0,P.z)()],void 0,D.t,this.ee))),this.importAggregator())}}var j=i(3081);class k extends b{static featureName=j.t9;constructor(e,t){let r=!(arguments.length\u003e2\u0026\u0026void 0!==arguments[2])||arguments[2];super(e,t,j.t9,r),this.importAggregator()}}var L=i(6660);class H{constructor(e,t,r,n,i){this.name=\"UncaughtError\",this.message=\"string\"==typeof e?e:(0,T.P)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function M(e){return F(e)?e:new H(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic)}function U(e){let t=\"Unhandled Promise Rejection\";if(F(e?.reason))try{return e.reason.message=t+\": \"+e.reason.message,M(e.reason)}catch(t){return M(e.reason)}if(void 0===e.reason)return M(t);const r=M(e.reason);return r.message=t+\": \"+r?.message,r}function z(e){if(e.error instanceof SyntaxError\u0026\u0026!/:\\d+$/.test(e.error.stack?.trim())){const t=new H(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic);return t.name=SyntaxError.name,t}return F(e.error)?e.error:M(e)}function F(e){return e instanceof Error\u0026\u0026!!e.stack}class B extends b{static featureName=L.t;#r=!1;constructor(e,r){let n=!(arguments.length\u003e2\u0026\u0026void 0!==arguments[2])||arguments[2];super(e,r,L.t,n);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on(\"internal-error\",(e=\u003e{this.abortHandler\u0026\u0026(0,N.p)(\"ierr\",[M(e),(0,P.z)(),!0,{},this.#r],void 0,this.featureName,this.ee)})),this.ee.on(t.Ef.REPLAY_RUNNING,(e=\u003e{this.#r=e})),p._A.addEventListener(\"unhandledrejection\",(e=\u003e{this.abortHandler\u0026\u0026(0,N.p)(\"err\",[U(e),(0,P.z)(),!1,{unhandledPromiseRejection:1},this.#r],void 0,this.featureName,this.ee)}),(0,I.m$)(!1,this.removeOnAbort?.signal)),p._A.addEventListener(\"error\",(e=\u003e{this.abortHandler\u0026\u0026(0,N.p)(\"err\",[z(e),(0,P.z)(),!1,{},this.#r],void 0,this.featureName,this.ee)}),(0,I.m$)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator()}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var G=i(2210);let q=1;const K=\"nr@id\";function V(e){const t=typeof e;return!e||\"object\"!==t\u0026\u0026\"function\"!==t?-1:e===p._A?0:(0,G.X)(e,K,(function(){return q++}))}function Z(e){if(\"string\"==typeof e\u0026\u0026e.length)return e.length;if(\"object\"==typeof e){if(\"undefined\"!=typeof ArrayBuffer\u0026\u0026e instanceof ArrayBuffer\u0026\u0026e.byteLength)return e.byteLength;if(\"undefined\"!=typeof Blob\u0026\u0026e instanceof Blob\u0026\u0026e.size)return e.size;if(!(\"undefined\"!=typeof FormData\u0026\u0026e instanceof FormData))try{return(0,T.P)(e).length}catch(e){return}}}var W=i(7806),X=i(7243);class Y{constructor(e){this.agentIdentifier=e}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var t=(0,s.DL)(this.agentIdentifier);if(!t)return null;var n=(t.accountID||\"\").toString()||null,i=(t.agentID||\"\").toString()||null,o=(t.trustKey||\"\").toString()||null;if(!n||!i)return null;var a=(0,r.M)(),c=(0,r.Ht)(),u=Date.now(),d={spanId:a,traceId:c,timestamp:u};return(e.sameOrigin||this.isAllowedOrigin(e)\u0026\u0026this.useTraceContextHeadersForCors())\u0026\u0026(d.traceContextParentHeader=this.generateTraceContextParentHeader(a,c),d.traceContextStateHeader=this.generateTraceContextStateHeader(a,u,n,i,o)),(e.sameOrigin\u0026\u0026!this.excludeNewrelicHeader()||!e.sameOrigin\u0026\u0026this.isAllowedOrigin(e)\u0026\u0026this.useNewrelicHeaderForCors())\u0026\u0026(d.newrelicHeader=this.generateTraceHeader(a,c,u,n,i,o)),d}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,o){if(!(\"function\"==typeof p._A?.btoa))return null;var a={v:[0,1],d:{ty:\"Browser\",ac:n,ap:i,id:e,tr:t,ti:r}};return o\u0026\u0026n!==o\u0026\u0026(a.d.tk=o),btoa((0,T.P)(a))}shouldGenerateTrace(e){return this.isDtEnabled()\u0026\u0026this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1,r={};if((0,s.Mt)(this.agentIdentifier,\"distributed_tracing\")\u0026\u0026(r=(0,s.P_)(this.agentIdentifier).distributed_tracing),e.sameOrigin)t=!0;else if(r.allowed_origins instanceof Array)for(var n=0;n\u003cr.allowed_origins.length;n++){var i=(0,X.e)(r.allowed_origins[n]);if(e.hostname===i.hostname\u0026\u0026e.protocol===i.protocol\u0026\u0026e.port===i.port){t=!0;break}}return t}isDtEnabled(){var e=(0,s.Mt)(this.agentIdentifier,\"distributed_tracing\");return!!e\u0026\u0026!!e.enabled}excludeNewrelicHeader(){var e=(0,s.Mt)(this.agentIdentifier,\"distributed_tracing\");return!!e\u0026\u0026!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=(0,s.Mt)(this.agentIdentifier,\"distributed_tracing\");return!!e\u0026\u0026!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=(0,s.Mt)(this.agentIdentifier,\"distributed_tracing\");return!!e\u0026\u0026!!e.cors_use_tracecontext_headers}}var J=i(7825),Q=i(1199),ee=[\"load\",\"error\",\"abort\",\"timeout\"],te=ee.length,re=s.Yu.REQ,ne=s.Yu.XHR;class ie extends b{static featureName=J.t;constructor(e,t){let r=!(arguments.length\u003e2\u0026\u0026void 0!==arguments[2])||arguments[2];super(e,t,J.t,r),this.dt=new Y(e),this.handler=(e,t,r,n)=\u003e(0,N.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:\"xhr\",fetch:\"fetch\",beacon:\"beacon\"};p._A?.performance?.getEntriesByType(\"resource\").forEach((t=\u003e{if(t.initiatorType in e\u0026\u00260!==t.responseStatus){const r={status:t.responseStatus},n={rxSize:t.transferSize,duration:Math.floor(t.duration),cbTime:0};oe(r,t.name),this.handler(\"xhr\",[r,n,t.startTime,t.responseEnd,e[t.initiatorType]],void 0,a.D.ajax)}}))}catch(e){}(0,W.u5)(this.ee),(0,W.Kf)(this.ee),function(e,t,r,n){function i(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=E,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener(\"load\",(function(r){_(t,e)}),(0,I.m$)(!1)),p.IF||e.addEventListener(\"progress\",(function(e){t.lastSize=e.loaded}),(0,I.m$)(!1))}function o(e){this.params={method:e[0]},oe(this,e[1]),this.metrics={}}function c(t,r){var i=(0,s.DL)(e);i.xpid\u0026\u0026this.sameOrigin\u0026\u0026r.setRequestHeader(\"X-NewRelic-ID\",i.xpid);var o=n.generateTracePayload(this.parsedOrigin);if(o){var a=!1;o.newrelicHeader\u0026\u0026(r.setRequestHeader(\"newrelic\",o.newrelicHeader),a=!0),o.traceContextParentHeader\u0026\u0026(r.setRequestHeader(\"traceparent\",o.traceContextParentHeader),o.traceContextStateHeader\u0026\u0026r.setRequestHeader(\"tracestate\",o.traceContextStateHeader),a=!0),a\u0026\u0026(this.dt=o)}}function u(e,r){var n=this.metrics,i=e[0],o=this;if(n\u0026\u0026i){var a=Z(i);a\u0026\u0026(n.txSize=a)}this.startTime=(0,P.z)(),this.body=i,this.listener=function(e){try{\"abort\"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),(\"load\"!==e.type||o.called===o.totalCbs\u0026\u0026(o.onloadCalled||\"function\"!=typeof r.onload)\u0026\u0026\"function\"==typeof o.end)\u0026\u0026o.end(r)}catch(e){try{t.emit(\"internal-error\",[e])}catch(e){}}};for(var s=0;s\u003cte;s++)r.addEventListener(ee[s],this.listener,(0,I.m$)(!1))}function d(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled\u0026\u0026\"function\"==typeof r.onload||\"function\"!=typeof this.end||this.end(r)}function l(e,t){var r=\"\"+V(e)+!!t;this.xhrGuids\u0026\u0026!this.xhrGuids[r]\u0026\u0026(this.xhrGuids[r]=!0,this.totalCbs+=1)}function f(e,t){var r=\"\"+V(e)+!!t;this.xhrGuids\u0026\u0026this.xhrGuids[r]\u0026\u0026(delete this.xhrGuids[r],this.totalCbs-=1)}function h(){this.endTime=(0,P.z)()}function g(e,r){r instanceof ne\u0026\u0026\"load\"===e[0]\u0026\u0026t.emit(\"xhr-load-added\",[e[1],e[2]],r)}function m(e,r){r instanceof ne\u0026\u0026\"load\"===e[0]\u0026\u0026t.emit(\"xhr-load-removed\",[e[1],e[2]],r)}function v(e,t,r){t instanceof ne\u0026\u0026(\"onload\"===r\u0026\u0026(this.onload=!0),(\"load\"===(e[0]\u0026\u0026e[0].type)||this.onload)\u0026\u0026(this.xhrCbStart=(0,P.z)()))}function b(e,r){this.xhrCbStart\u0026\u0026t.emit(\"xhr-cb-time\",[(0,P.z)()-this.xhrCbStart,this.onload,r],r)}function y(e){var t,r=e[1]||{};if(\"string\"==typeof e[0]?0===(t=e[0]).length\u0026\u0026p.il\u0026\u0026(t=\"\"+p._A.location.href):e[0]\u0026\u0026e[0].url?t=e[0].url:p._A?.URL\u0026\u0026e[0]\u0026\u0026e[0]instanceof URL?t=e[0].href:\"function\"==typeof e[0].toString\u0026\u0026(t=e[0].toString()),\"string\"==typeof t\u0026\u00260!==t.length){t\u0026\u0026(this.parsedOrigin=(0,X.e)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var i=n.generateTracePayload(this.parsedOrigin);if(i\u0026\u0026(i.newrelicHeader||i.traceContextParentHeader))if(e[0]\u0026\u0026e[0].headers)s(e[0].headers,i)\u0026\u0026(this.dt=i);else{var o={};for(var a in r)o[a]=r[a];o.headers=new Headers(r.headers||{}),s(o.headers,i)\u0026\u0026(this.dt=i),e.length\u003e1?e[1]=o:e.push(o)}}function s(e,t){var r=!1;return t.newrelicHeader\u0026\u0026(e.set(\"newrelic\",t.newrelicHeader),r=!0),t.traceContextParentHeader\u0026\u0026(e.set(\"traceparent\",t.traceContextParentHeader),t.traceContextStateHeader\u0026\u0026e.set(\"tracestate\",t.traceContextStateHeader),r=!0),r}}function A(e,t){this.params={},this.metrics={},this.startTime=(0,P.z)(),this.dt=t,e.length\u003e=1\u0026\u0026(this.target=e[0]),e.length\u003e=2\u0026\u0026(this.opts=e[1]);var r,n=this.opts||{},i=this.target;\"string\"==typeof i?r=i:\"object\"==typeof i\u0026\u0026i instanceof re?r=i.url:p._A?.URL\u0026\u0026\"object\"==typeof i\u0026\u0026i instanceof URL\u0026\u0026(r=i.href),oe(this,r);var o=(\"\"+(i\u0026\u0026i instanceof re\u0026\u0026i.method||n.method||\"GET\")).toUpperCase();this.params.method=o,this.body=n.body,this.txSize=Z(n.body)||0}function w(e,t){if(this.endTime=(0,P.z)(),this.params||(this.params={}),(0,Q.zh)(this.params))return;let n;this.params.status=t?t.status:0,\"string\"==typeof this.rxSize\u0026\u0026this.rxSize.length\u003e0\u0026\u0026(n=+this.rxSize);const i={txSize:this.txSize,rxSize:n,duration:(0,P.z)()-this.startTime};r(\"xhr\",[this.params,i,this.startTime,this.endTime,\"fetch\"],this,a.D.ajax)}function E(e){const t=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(let t=0;t\u003cte;t++)e.removeEventListener(ee[t],this.listener,!1);t.aborted||(0,Q.zh)(t)||(n.duration=(0,P.z)()-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status\u0026\u0026(t.status=0):_(this,e),n.cbTime=this.cbTime,r(\"xhr\",[t,n,this.startTime,this.endTime,\"xhr\"],this,a.D.ajax))}}function _(e,r){e.params.status=r.status;var n=function(e,t){var r=e.responseType;return\"json\"===r\u0026\u0026null!==t?t:\"arraybuffer\"===r||\"blob\"===r||\"json\"===r?Z(e.response):\"text\"===r||\"\"===r||void 0===r?Z(e.responseText):void 0}(r,e.lastSize);if(n\u0026\u0026(e.metrics.rxSize=n),e.sameOrigin){var i=r.getResponseHeader(\"X-NewRelic-App-Data\");i\u0026\u0026((0,N.p)(j.mY,[\"Ajax/CrossApplicationTracing/Header/Seen\"],void 0,a.D.metrics,t),e.params.cat=i.split(\", \").pop())}e.loadCaptureCalled=!0}t.on(\"new-xhr\",i),t.on(\"open-xhr-start\",o),t.on(\"open-xhr-end\",c),t.on(\"send-xhr-start\",u),t.on(\"xhr-cb-time\",d),t.on(\"xhr-load-added\",l),t.on(\"xhr-load-removed\",f),t.on(\"xhr-resolved\",h),t.on(\"addEventListener-end\",g),t.on(\"removeEventListener-end\",m),t.on(\"fn-end\",b),t.on(\"fetch-before-start\",y),t.on(\"fetch-start\",A),t.on(\"fn-start\",v),t.on(\"fetch-done\",w)}(e,this.ee,this.handler,this.dt),this.importAggregator()}}function oe(e,t){var r=(0,X.e)(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 ae=i(3614);const{BST_RESOURCE:se,RESOURCE:ce,START:ue,END:de,FEATURE_NAME:le,FN_END:fe,FN_START:he,PUSH_STATE:pe}=ae;var ge=i(7056);class me extends b{static featureName=t.t9;#i;constructor(e,r){let n,i=!(arguments.length\u003e2\u0026\u0026void 0!==arguments[2])||arguments[2];super(e,r,t.t9,i),this.replayRunning=!1;try{n=JSON.parse(localStorage.getItem(\"\".concat(ge.Bq,\"_\").concat(ge.K4)))}catch(e){}(0,g.Rc)(e)\u0026\u0026this.ee.on(\"recordReplay\",(()=\u003ethis.#o())),this.#a(n)?(this.#i=n?.sessionReplayMode,this.#s()):this.importAggregator(),this.ee.on(\"err\",(e=\u003e{this.replayRunning\u0026\u0026(this.errorNoticed=!0,(0,N.p)(t.Ef.ERROR_DURING_REPLAY,[e],void 0,this.featureName,this.ee))})),this.ee.on(t.Ef.REPLAY_RUNNING,(e=\u003e{this.replayRunning=e}))}#a(e){return e\u0026\u0026(e.sessionReplayMode===ge.IK.FULL||e.sessionReplayMode===ge.IK.ERROR)||(0,g.rU)(this.agentIdentifier)}#c=!1;async#s(e){if(!this.#c){this.#c=!0;try{const{Recorder:t}=await Promise.all([i.e(111),i.e(433)]).then(i.bind(i,4345));this.recorder??=new t({mode:this.#i,agentIdentifier:this.agentIdentifier,trigger:e,ee:this.ee}),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording}catch(e){}this.importAggregator({recorder:this.recorder,errorNoticed:this.errorNoticed})}}#o(){this.featAggregate?this.featAggregate.mode!==ge.IK.FULL\u0026\u0026this.featAggregate.initializeRecording(ge.IK.FULL,!0):(this.#i=ge.IK.FULL,this.#s(t.pB.API),this.recorder\u0026\u0026this.recorder.parent.mode!==ge.IK.FULL\u0026\u0026(this.recorder.parent.mode=ge.IK.FULL,this.recorder.stopRecording(),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording))}}var ve=i(6216);class be extends b{static featureName=ve.t9;constructor(e,t){let r=!(arguments.length\u003e2\u0026\u0026void 0!==arguments[2])||arguments[2];if(super(e,t,ve.t9,r),!p.il||!s.Yu.MO)return;const n=(0,W.QU)(this.ee),i=(0,W.em)(this.ee),o=()=\u003e(0,N.p)(\"newURL\",[(0,P.z)(),\"\"+window.location],void 0,this.featureName,this.ee);n.on(\"pushState-end\",o),n.on(\"replaceState-end\",o);try{this.removeOnAbort=new AbortController}catch(e){}(0,I.bP)(\"popstate\",(e=\u003e(0,N.p)(\"newURL\",[e.timeStamp,\"\"+window.location],void 0,this.featureName,this.ee)),!0,this.removeOnAbort?.signal);let a=!1;const c=new s.Yu.MO(((e,t)=\u003e{a||(a=!0,requestAnimationFrame((()=\u003e{(0,N.p)(\"newDom\",[(0,P.z)()],void 0,this.featureName,this.ee),a=!1})))})),u=(0,v.D)((e=\u003e{(0,N.p)(\"newUIEvent\",[e],void 0,this.featureName,this.ee),c.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0})}),100,{leading:!0});i.on(\"fn-start\",(e=\u003e{let[t]=e;ve.sE.includes(t?.type)\u0026\u0026u(t)}));for(let e of ve.sE)document.addEventListener(e,(()=\u003e{}));this.abortHandler=function(){this.removeOnAbort?.abort(),c.disconnect(),this.abortHandler=void 0},this.importAggregator({domObserver:c})}}var ye=i(7836);const{FEATURE_NAME:Ae,START:we,END:Ee,BODY:_e,CB_END:xe,JS_TIME:Re,FETCH:Se,FN_START:Te,CB_START:Ne,FN_END:Oe}=ye;var Ie=i(4649);class De extends b{static featureName=Ie.t;constructor(e,t){let r=!(arguments.length\u003e2\u0026\u0026void 0!==arguments[2])||arguments[2];super(e,t,Ie.t,r),this.importAggregator()}}new class extends o{constructor(t,r){super(r),p._A?(this.sharedAggregator=new _({agentIdentifier:this.agentIdentifier}),this.features={},(0,S.h5)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(A),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=\u003ee.featureName===a.D.softNav)),(0,d.j)(this,t,t.loaderType||\"agent\"),this.run()):(0,e.Z)(\"Failed to initialize the agent. Could not determine the runtime environment.\")}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=\u003ea.p[e.featureName]-a.p[t.featureName])),r.forEach((r=\u003e{if(!t[r.featureName]\u0026\u0026r.featureName!==a.D.pageViewEvent)return;if(this.runSoftNavOverSpa\u0026\u0026r.featureName===a.D.spa)return;if(!this.runSoftNavOverSpa\u0026\u0026r.featureName===a.D.softNav)return;const n=function(e){switch(e){case a.D.ajax:return[a.D.jserrors];case a.D.sessionTrace:return[a.D.ajax,a.D.pageViewEvent];case a.D.sessionReplay:return[a.D.sessionTrace];case a.D.pageViewTiming:return[a.D.pageViewEvent];default:return[]}}(r.featureName);n.every((e=\u003ee in this.features))||(0,e.Z)(\"\".concat(r.featureName,\" is enabled but one or more dependent features has not been initialized (\").concat((0,T.P)(n),\"). This may cause unintended consequences or missing data...\")),this.features[r.featureName]=new r(this.agentIdentifier,this.sharedAggregator)}))}catch(t){(0,e.Z)(\"Failed to initialize all enabled instrument classes (agent aborted) -\",t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,S.fP)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[ie,A,C,class extends b{static featureName=le;constructor(e,t){super(e,t,le,!(arguments.length\u003e2\u0026\u0026void 0!==arguments[2])||arguments[2]);if(!(0,m.H)(this.agentIdentifier))return void(0,l.o5)(this.agentIdentifier,this.featureName);const r=this.ee;let n;(0,W.QU)(r),this.eventsEE=(0,W.em)(r),this.eventsEE.on(he,(function(e,t){this.bstStart=(0,P.z)()})),this.eventsEE.on(fe,(function(e,t){(0,N.p)(\"bst\",[e[0],t,this.bstStart,(0,P.z)()],void 0,a.D.sessionTrace,r)})),r.on(pe+ue,(function(e){this.time=(0,P.z)(),this.startPath=location.pathname+location.hash})),r.on(pe+de,(function(e){(0,N.p)(\"bstHist\",[location.pathname+location.hash,this.startPath,this.time],void 0,a.D.sessionTrace,r)}));try{n=new PerformanceObserver((e=\u003e{const t=e.getEntries();(0,N.p)(se,[t],void 0,a.D.sessionTrace,r)})),n.observe({type:ce,buffered:!0})}catch(e){}this.importAggregator({resourceObserver:n})}},me,k,De,B,be,class extends b{static featureName=Ae;constructor(e,t){var r;if(super(e,t,Ae,!(arguments.length\u003e2\u0026\u0026void 0!==arguments[2])||arguments[2]),r=this,!p.il)return;try{this.removeOnAbort=new AbortController}catch(e){}let n,i=0;const o=this.ee.get(\"tracer\"),a=(0,W._L)(this.ee),s=(0,W.Lg)(this.ee),c=(0,W.BV)(this.ee),u=(0,W.Kf)(this.ee),d=this.ee.get(\"events\"),l=(0,W.u5)(this.ee),f=(0,W.QU)(this.ee),h=(0,W.Gm)(this.ee);function g(e,t){f.emit(\"newURL\",[\"\"+window.location,t])}function m(){i++,n=window.location.hash,this[Te]=(0,P.z)()}function v(){i--,window.location.hash!==n\u0026\u0026g(0,!0);var e=(0,P.z)();this[Re]=~~this[Re]+e-this[Te],this[Oe]=e}function b(e,t){e.on(t,(function(){this[t]=(0,P.z)()}))}this.ee.on(Te,m),s.on(Ne,m),a.on(Ne,m),this.ee.on(Oe,v),s.on(xe,v),a.on(xe,v),this.ee.on(\"fn-err\",(function(){for(var t=arguments.length,n=new Array(t),i=0;i\u003ct;i++)n[i]=arguments[i];n[2]?.__newrelic?.[e]||(0,N.p)(\"function-err\",[...n],void 0,r.featureName,r.ee)})),this.ee.buffer([Te,Oe,\"xhr-resolved\"],this.featureName),d.buffer([Te],this.featureName),c.buffer([\"setTimeout\"+Ee,\"clearTimeout\"+we,Te],this.featureName),u.buffer([Te,\"new-xhr\",\"send-xhr\"+we],this.featureName),l.buffer([Se+we,Se+\"-done\",Se+_e+we,Se+_e+Ee],this.featureName),f.buffer([\"newURL\"],this.featureName),h.buffer([Te],this.featureName),s.buffer([\"propagate\",Ne,xe,\"executor-err\",\"resolve\"+we],this.featureName),o.buffer([Te,\"no-\"+Te],this.featureName),a.buffer([\"new-jsonp\",\"cb-start\",\"jsonp-error\",\"jsonp-end\"],this.featureName),b(l,Se+we),b(l,Se+\"-done\"),b(a,\"new-jsonp\"),b(a,\"jsonp-end\"),b(a,\"cb-start\"),f.on(\"pushState-end\",g),f.on(\"replaceState-end\",g),window.addEventListener(\"hashchange\",g,(0,I.m$)(!0,this.removeOnAbort?.signal)),window.addEventListener(\"load\",g,(0,I.m$)(!0,this.removeOnAbort?.signal)),window.addEventListener(\"popstate\",(function(){g(0,i\u003e1)}),(0,I.m$)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator()}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}],loaderType:\"spa\"})})()})();","siteSetting":{"placeholderImages":{"brand":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltc0182b2356ae8eed/64b83949410a1b4c0bd7459b/IW_generic_image.png","contributor":"https://eu-images.contentstack.com/v3/assets/blt69509c9116440be8/bltd227769938aa3739/64b55d4d33298f5b051a72d5/Contributor_Avatar.png"},"defaultGatingTitle":"","defaultGatingDescriptionMessage":""},"isAuthenticated":false,"testAutomationFlags":{"disableAds":false,"disableIirisAuth":false,"disableWelcomeAd":false,"disableBigskyAd":false,"disableIirisRecommend":false,"disableDcts":false,"disableWeatherWidget":false,"disableCashGrainWidget":false,"disableCommoditiesWidget":false,"disableCaptcha":false,"overrideBrandStyling":"","overrideThemeStyling":""}}},"actionData":null,"errors":{"routes/$redirect[.asp]":{"status":404,"statusText":"","internal":false,"data":"Not Found","__type":"RouteErrorResponse"}}},"future":{"v3_fetcherPersist":false,"v3_relativeSplatPath":false,"v3_throwAbortReason":false}};</script><script type="module" async>import "/build/manifest-89CFC8E0.js";
  129. import * as route0 from "/build/root-Z34QSTAM.js";
  130. import * as route1 from "/build/routes/$redirect[.asp]-NNRKVNOT.js";
  131. window.__remixRouteModules = {"root":route0,"routes/$redirect[.asp]":route1};
  132.  
  133. import("/build/entry.client-TNNNLYQQ.js");</script><script async defer src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&amp;version=v3.2"></script></body></html>
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda