<!DOCTYPE html>
<html class="fuelux" lang="en">
<script>
window.botRequest = false;
window.generatingPDF = false;
window.enableDelayedScripts = true;
</script>
<script type="text/javascript" src="https://cdn.cookielaw.org/consent/c32e227a-adb8-45a6-851b-a3f4f0bf52a9/OtAutoBlock.js" ></script>
<script src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js" data-document-language="true" type="text/javascript" charset="UTF-8" data-domain-script="c32e227a-adb8-45a6-851b-a3f4f0bf52a9" ></script>
<script type="text/javascript">
function OptanonWrapper() { }
</script>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Enterprise IT Software Reviews | Gartner Peer Insights</title>
<meta name="description" content="Enterprise IT Software Reviews | Gartner Peer Insights">
<meta name="author" content="Gartner, Inc.">
<link rel="canonical" href="https://www.gartner.com/reviews/delay">
<link rel="preconnect" href="https://reviews.static.gartner.com" crossorigin>
<link rel="preconnect" href="https://reviews.static.gartner.com">
<!--/* Load all CSS files */-->
<!-- load minified version of libraries and scripts in PVS/Stage/Production -->
<link href="https://reviews.static.gartner.com/css_min/bootstrap-3.3.7.min.1764665558152.css" rel="stylesheet" type="text/css" />
<link href="https://reviews.static.gartner.com/css_min/inline.min.1764665558152.css" rel="stylesheet" type="text/css" />
<link href="https://reviews.static.gartner.com/css_min/reactTemplate.min.1764665558152.css" rel="stylesheet" type="text/css" />
<link href="https://reviews.static.gartner.com/css_min/UXDMasterStyleSheet.min.1764665558152.css" rel="stylesheet" type="text/css" />
<link href="https://plus.google.com/+gartner" rel="publisher">
<link rel="icon" type="image/ico" href="/imagesrv/apps/peerinsights/images/favicon.ico?v=1">
<link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="https://reviews.static.gartner.com/fonts/glyphicons-halflings-regular.woff2">
<!--/* Load all JS files */-->
<meta property="og:title" content="Enterprise IT Software Reviews | Gartner Peer Insights" />
<meta property="og:description" content="Enterprise IT Software Reviews | Gartner Peer Insights" />
<meta property="og:url" content="https://www.gartner.com/reviews/delay" />
<meta content="https://www.gartner.com/imagesrv/apps/peerinsights/images/gpi-twitter-img-fa.png" property="og:image" />
<meta content="website" property="og:type" />
<meta content="en_us" property="og:locale" />
<meta content="Gartner" property="og:site_name" />
<meta name="twitter:description" content="Enterprise IT Software Reviews | Gartner Peer Insights" />
<meta content="https://www.gartner.com/imagesrv/apps/peerinsights/images/gpi-twitter-img-fa.png" name="twitter:image" />
<meta content="summary_large_image" name="twitter:card" />
<meta content="@Gartner_Inc" name="twitter:creator" />
<meta content="@Gartner_Inc" name="twitter:site" />
<script type="text/javascript">/*
Copyright and licenses see https://www.dynatrace.com/company/trust-center/customers/reports/ */
(function(){function $a(){var sa;(sa=void 0===db.dialogArguments&&navigator.cookieEnabled)||(document.cookie="__dTCookie=1;SameSite=Lax",sa=document.cookie.includes("__dTCookie"),sa=(document.cookie="__dTCookie=1; expires=Thu, 01-Jan-1970 00:00:01 GMT",sa));return sa}function Fa(){if($a()){var sa=db.dT_,Ga=null==sa?void 0:sa.platformPrefix,fb;if(fb=!sa||Ga){var Xa;fb=(null===(Xa=document.currentScript)||void 0===Xa?void 0:Xa.getAttribute("data-dtconfig"))||"domain=gartner.com|reportUrl=https://bf28149orj.bf.dynatrace.com/bf|app=c9f1951eb65229e3|dsss=1|cors=1|owasp=1|featureHash=A7NVfhqrux|rdnt=1|uxrgce=1|cuc=4vwhu0vt|mel=100000|expw=1|dpvc=1|md=mdcc1=cWCW_Authentication,mdcc2=cwcw_authentication,mdcc3=buserSotCode,mdcc4=bwindow.isLoggedIn,mdcc5=bwindow.nextJS|lastModification=1765959494754|tp=500,50,0|srbbv=2|agentUri=/reviews/ruxitagentjs_A7NVfhqrux_10317250630095842.js|auto=1|domain=gartner.com|rid=RID_748757274|rpid=-1189519723";
fb=(Xa=null==sa?void 0:sa.minAgentVersion)&&"10317250630095842"<`${Xa}`?(console.log("[CookiePrefix/initConfig] Min agent version detected, and javascript agent is older - the javascript agent will not be initialized!"),!1):Ga&&!fb.includes(`cuc=${Ga}`)?(console.log(`[CookiePrefix/initConfig] value of platformPrefix [${Ga}] does not match the "cuc" value in the current config - initConfig will not initialize!`),!1):!0}fb&&(sa={cfg:"domain=gartner.com|reportUrl=https://bf28149orj.bf.dynatrace.com/bf|app=c9f1951eb65229e3|dsss=1|cors=1|owasp=1|featureHash=A7NVfhqrux|rdnt=1|uxrgce=1|cuc=4vwhu0vt|mel=100000|expw=1|dpvc=1|md=mdcc1=cWCW_Authentication,mdcc2=cwcw_authentication,mdcc3=buserSotCode,mdcc4=bwindow.isLoggedIn,mdcc5=bwindow.nextJS|lastModification=1765959494754|tp=500,50,0|srbbv=2|agentUri=/reviews/ruxitagentjs_A7NVfhqrux_10317250630095842.js|auto=1|domain=gartner.com|rid=RID_748757274|rpid=-1189519723",
iCE:$a,platformCookieOffset:null==sa?void 0:sa.platformCookieOffset},Ga&&(sa.platformPrefix=Ga),db.dT_=sa)}}function Ya(sa){return"function"==typeof sa}function gb(){let sa=window.performance;return sa&&Ca&&Wa&&!!sa.timeOrigin&&Ya(sa.now)&&Ya(sa.getEntriesByType)&&Ya(sa.getEntriesByName)&&Ya(sa.setResourceTimingBufferSize)&&Ya(sa.clearResourceTimings)}this.dT_&&dT_.prm&&dT_.prm();var db="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0,Wa="function"==typeof PerformanceResourceTiming||
"object"==typeof PerformanceResourceTiming,Ca="function"==typeof PerformanceNavigationTiming||"object"==typeof PerformanceNavigationTiming;if((!("documentMode"in document)||Number.isNaN(document.documentMode))&&gb()){let sa=db.dT_;!sa||!sa.cfg&&sa.platformPrefix?Fa():sa.gCP||(db.console.log("Duplicate agent injection detected, turning off redundant initConfig."),sa.di=1)}})();
(function(){function $a(){let g=0;try{g=Math.round(Ma.performance.timeOrigin)}catch(q){}if(0>=g||Number.isNaN(g)||!Number.isFinite(g))ee.push({severity:"Warning",type:"ptoi",text:`performance.timeOrigin is invalid, with a value of [${g}]. Falling back to performance.timing.navigationStart`}),g=Se;return ad=g,od=Fa,ad}function Fa(){return ad}function Ya(){return od()}function gb(){let g=0;try{g=Math.round(Ma.performance.now())}catch(q){}return 0>=g||Number.isNaN(g)||!Number.isFinite(g)?Date.now()-
od():g}function db(g,q){if(!q)return"";var z=g+"=";g=q.indexOf(z);if(0>g)return"";for(;0<=g;){if(0===g||" "===q.charAt(g-1)||";"===q.charAt(g-1))return z=g+z.length,g=q.indexOf(";",g),0<=g?q.substring(z,g):q.substring(z);g=q.indexOf(z,g+z.length)}return""}function Wa(g){return db(g,document.cookie)}function Ca(){}function sa(g,q=[]){var z;if(!g||"object"!=typeof g&&"function"!=typeof g)return!1;let P="number"!=typeof q?q:[],T=null,xa=[];switch("number"==typeof q?q:5){case 0:T="Array";break;case 1:T=
"Boolean";break;case 2:T="Number";break;case 3:T="String";break;case 4:T="Function";break;case 5:T="Object";break;case 6:T="Date";xa.push("getTime");break;case 7:T="Error";xa.push("name","message");break;case 8:T="Element";break;case 9:T="HTMLElement";break;case 10:T="HTMLImageElement";xa.push("complete");break;case 11:T="PerformanceEntry";break;case 13:T="PerformanceResourceTiming";break;case 14:T="PerformanceNavigationTiming";break;case 15:T="CSSRule";xa.push("cssText","parentStyleSheet");break;
case 16:T="CSSStyleSheet";xa.push("cssRules","insertRule");break;case 17:T="Request";xa.push("url");break;case 18:T="Response";xa.push("ok","status","statusText");break;case 19:T="Set";xa.push("add","entries","forEach");break;case 20:T="Map";xa.push("set","entries","forEach");break;case 21:T="Worker";xa.push("addEventListener","postMessage","terminate");break;case 22:T="XMLHttpRequest";xa.push("open","send","setRequestHeader");break;case 23:T="SVGScriptElement";xa.push("ownerSVGElement","type");break;
case 24:T="HTMLMetaElement";xa.push("httpEquiv","content","name");break;case 25:T="HTMLHeadElement";break;case 26:T="ArrayBuffer";break;case 27:T="ShadowRoot",xa.push("host","mode")}let {Oe:bb,$e:Qb}={Oe:T,$e:xa};if(!bb)return!1;q=Qb.length?Qb:P;if(!P.length)try{if(Ma[bb]&&g instanceof Ma[bb]||Object.prototype.toString.call(g)==="[object "+bb+"]")return!0;if(g&&g.nodeType&&1===g.nodeType){let Wb=null===(z=g.ownerDocument.defaultView)||void 0===z?void 0:z[bb];if("function"==typeof Wb&&g instanceof
Wb)return!0}}catch(Wb){}for(let Wb of q)if("string"!=typeof Wb&&"number"!=typeof Wb&&"symbol"!=typeof Wb||!(Wb in g))return!1;return!!q.length}function Ga(g,q,z,P){"undefined"==typeof P&&(P=Xa(q,!0));"boolean"==typeof P&&(P=Xa(q,P));g===Ma?te&&te(q,z,P):Rf&&sa(g,21)?Te.call(g,q,z,P):g.addEventListener&&(g===Ma.document||g===Ma.document.documentElement?ch.call(g,q,z,P):te.call(g,q,z,P));P=!1;for(let T=bd.length;0<=--T;){let xa=bd[T];if(xa.object===g&&xa.event===q&&xa.Y===z){P=!0;break}}P||bd.push({object:g,
event:q,Y:z})}function fb(g,q,z,P){for(let T=bd.length;0<=--T;){let xa=bd[T];if(xa.object===g&&xa.event===q&&xa.Y===z){bd.splice(T,1);break}}"undefined"==typeof P&&(P=Xa(q,!0));"boolean"==typeof P&&(P=Xa(q,P));g===Ma?zf&&zf(q,z,P):g.removeEventListener&&(g===Ma.document||g===Ma.document.documentElement?Gg.call(g,q,z,P):zf.call(g,q,z,P))}function Xa(g,q){let z=!1;try{if(te&&mg.includes(g)){let P=Object.defineProperty({},"passive",{get(){z=!0}});te("test",Ca,P)}}catch(P){}return z?{passive:!0,capture:q}:
q}function Da(){let g=bd;for(let q=g.length;0<=--q;){let z=g[q];fb(z.object,z.event,z.Y)}bd=[]}function fa(g){return"function"==typeof g}function ya(g){if(g&&void 0!==g[Af])return g[Af];let q=fa(g)&&/{\s+\[native code]/.test(Function.prototype.toString.call(g));return g&&(g[Af]=q),q}function Ua(g,q,...z){return void 0!==Function.prototype.bind&&ya(Function.prototype.bind)?Function.prototype.bind.call(g,q,...z):function(...P){return g.apply(q,(z||[]).concat(Array.prototype.slice.call(arguments)||[]))}}
function Q(){if(ng){let g=new ng;if(He)for(let q of Hg)void 0!==He[q]&&(g[q]=Ua(He[q],g));return g}return new Ma.XMLHttpRequest}function X(){return Dc()}function va(g,q,...z){function P(){delete ue[T];g.apply(this,arguments)}let T,xa=Vd;return"apply"in xa?(z.unshift(P,q),T=xa.apply(Ma,z)):T=xa(P,q),ue[T]=!0,T}function R(g){delete ue[g];let q=hf;"apply"in q?q.call(Ma,g):q(g)}function V(g){fe.push(g)}function na(g){let q=fe.length;for(;q--;)if(fe[q]===g){fe.splice(q,1);break}}function ua(){return fe}
function Y(g,q){return ve(g,q)}function ba(g){Ue(g)}function za(g,q){if(!Ve||!og)return"";g=new Ve([g],{type:q});return og(g)}function C(g,q){return jf?new jf(g,q):void 0}function I(g){"function"==typeof g&&pg.push(g)}function U(){return pg}function ja(){return Se}function N(g){function q(...z){if("number"!=typeof z[0]||!ue[z[0]])try{return g.apply(this,z)}catch(P){return g(z[0])}}return q[vi]=g,q}function ma(){return ee}function la(){od=$a;Dc=()=>Math.round(od()+gb());(Number.isNaN(Dc())||0>=Dc()||
!Number.isFinite(Dc()))&&(Dc=()=>Date.now())}function Aa(){Wd&&(Ma.clearTimeout=hf,Ma.clearInterval=Ue,Wd=!1)}function Rb(g){g=encodeURIComponent(g);let q=[];if(g)for(let z=0;z<g.length;z++){let P=g.charAt(z);q.push(Ig[P]||P)}return q.join("")}function cb(g){return g.includes("^")&&(g=g.split("^^").join("^"),g=g.split("^dq").join('"'),g=g.split("^rb").join(">"),g=g.split("^lb").join("<"),g=g.split("^p").join("|"),g=g.split("^e").join("="),g=g.split("^s").join(";"),g=g.split("^c").join(","),g=g.split("^bs").join("\\")),
g}function Eb(){return Kd}function Jb(g){Kd=g}function gc(g){let q=wa("rid"),z=wa("rpid");q&&(g.rid=q);z&&(g.rpid=z)}function hc(g){if(g=g.xb){g=cb(g);try{Kd=new RegExp(g,"i")}catch(q){}}else Kd=void 0}function Zb(g){return"n"===g||"s"===g||"l"===g?`;SameSite=${we[g]}`:""}function ea(g,q,z){let P=1,T=0;do document.cookie=g+'=""'+(q?";domain="+q:"")+";path="+z.substring(0,P)+"; expires=Thu, 01 Jan 1970 00:00:01 GMT;",P=z.indexOf("/",P),T++;while(-1!==P&&5>T)}function Ba(g,q=document.cookie){return db(g,
q)}function Tb(g){var q;return function(){if(q)return q;var z,P,T,xa,bb=-1!==xe?xe:(null===(P=null===(z=Ma.dT_)||void 0===z?void 0:z.scv)||void 0===P?void 0:P.call(z,"postfix"))||(null===(xa=null===(T=Ma.dT_)||void 0===T?void 0:T.gCP)||void 0===xa?void 0:xa.call(T));z=(z=(xe=bb,bb))?"".concat(g).concat(z):g;return q=z,z}}function Fb(){let g=(document.domain||location.hostname||"").split(".");return 1>=g.length?[]:g}function mc(g,q){q=`dTValidationCookieValue;path=/;domain=${g}${Zb(q)}`;return document.cookie=
`${kf()}=${q}`,Ba(kf())?(ea(kf(),g,"/"),!0):!1}function rc(){var g=qg.dT_.scv("agentUri");if(!g)return"ruxitagentjs";g=g.substring(g.lastIndexOf("/")+1);return g.includes("_")?g.substring(0,g.indexOf("_")):g}function kb(){return Ma.dT_}function $b(g){D("eao")?Ie=g:Ma.console.log(`${lf} App override configuration is not enabled! The provided app config callback method will not be invoked!`)}function ic(){return navigator.userAgent.includes("Googlebot")||navigator.userAgent.includes("AdsBot-Google")}
function L(g){let q=g,z=Math.pow(2,32);return function(){return q=(1664525*q+1013904223)%z,q/z}}function Z(g,q){return Number.isNaN(g)||Number.isNaN(q)?Math.floor(33*Id()):Math.floor(Id()*(q-g+1))+g}function Ja(g){if(Number.isNaN(g)||0>g)return"";var q=Ma.crypto;if(q&&!ic())q=q.getRandomValues(new Uint8Array(g));else{q=[];for(var z=0;z<g;z++)q.push(Z(0,32))}g=Array(g);for(z=0;z<q.length;z++){let P=Math.abs(q[z]%32);g.push(String.fromCharCode(P+(9>=P?48:55)))}return g.join("")}function ca(g=!0){ge=
g}function ab(){return Xd}function ib(){let g=Ma.dT_;try{let T=Ma.parent;for(;T&&T!==Ma;){let xa=T.dT_;var q;if(q=!!(xa&&"ea"in xa)&&"10317250630095842"===xa.version){var z=g,P=xa;let bb=!z.bcv("ac")||z.scv("app")===P.scv("app"),Qb=z.scv("postfix"),Wb=P.scv("postfix");q=bb&&Qb===Wb}if(q)return xa.tdto();T=T!==T.parent?T.parent:void 0}}catch(T){}return g}function Sa(g,q="",z){var P=g.indexOf("h"),T=g.indexOf("v"),xa=g.indexOf("e");let bb=g.substring(g.indexOf("$")+1,P);P=-1!==T?g.substring(P+1,T):
g.substring(P+1);!q&&-1!==T&&(-1!==xa?q=g.substring(T+1,xa):q=g.substring(T+1));g=null;z||(T=Number.parseInt(bb.split("_")[0]),xa=Dc()%Je,z=(xa<T&&(xa+=Je),T+9E5>xa));return z&&(g={frameId:bb,actionId:"-"===P?"-":Number.parseInt(P),visitId:""}),{visitId:q,Bd:g}}function cc(g,q,z){var P=ka("pcl");P=g.length-P;0<P&&g.splice(0,P);P=qd(Ba(Ld(),z));let T=[],xa=P?`${P}$`:"";for(bb of g)"-"!==bb.actionId&&T.push(`${xa}${bb.frameId}h${bb.actionId}`);g=T.join("p");var bb=(g||(ge&&(Cc(!0,"a",z),ca(!1)),g+=
`${P}$${Xd}h-`),g+=`v${q||O(z)}`,g+="e0",g);sc(We(),bb,void 0,D("ssc"))}function Hb(g,q=document.cookie){var z=Ba(We(),q);q=[];if(z&&"-"!==z){var P=z.split("p");z="";for(let T of P)P=Sa(T,z,g),z=P.visitId,P.Bd&&q.push(P.Bd);for(let T of q)T.visitId=z}return q}function ac(g,q){let z=document.cookie;q=Hb(q,z);let P=!1;for(let T of q)T.frameId===Xd&&(T.actionId=g,P=!0);P||q.push({frameId:Xd,actionId:g,visitId:""});cc(q,void 0,z)}function zc(){return ne}function ec(g,q){try{Ma.localStorage.setItem(g,
q)}catch(z){}}function Va(g){try{Ma.localStorage.removeItem(g)}catch(q){}}function x(g){try{return Ma.localStorage.getItem(g)}catch(q){}return null}function w(g,q=document.cookie||""){return q.split(g+"=").length-1}function r(g,q){var z=w(g,q);if(1<z){q=wa("domain")||Ma.location.hostname;let P=Ma.location.hostname,T=Ma.location.pathname,xa=0,bb=0;zd.add(g);do{let Qb=P.substring(xa);if(Qb!==q||"/"!==T){ea(g,Qb===q?"":Qb,T);let Wb=w(g);Wb<z&&(zd.add(Qb),z=Wb)}xa=P.indexOf(".",xa)+1;bb++}while(0!==xa&&
10>bb&&1<z);wa("domain")&&1<z&&ea(g,"",T)}}function E(){var g=document.cookie;r(We(),g);r(Ld(),g);r(wd(),g);g=zd.size;0<g&&g!==mf&&(mf=g,ee.push({severity:"Error",type:"dcn",text:`Duplicate cookie name${1!==g?"s":""} detected: ${Array.from(zd).join(",")}`}))}function S(){zd=new Set;E();V(function(g,q,z,P){0===zd.size||q||(g.av(P,"dCN",Array.from(zd).join(",")),zd.clear(),mf=0)})}function O(g){return ia(g)||Cc(!0,"c",g)}function ia(g){if(Gc(g)<=Dc())return Cc(!0,"t",g);let q=lb(g);if(q){let z=Jg.exec(q);
g=z&&3===z.length&&32===z[1].length&&!Number.isNaN(Number.parseInt(z[2]))?(Pb(pd(),q),q):Cc(!0,"i",g)}else g=Cc(!0,"c",g);return g}function oa(g,q){var z=Dc();q=Wc(q).jc;g&&(q=z);cd(z+Bf+"|"+q);id()}function Oa(g){let q="t"+(Dc()-Gc(g));Cc(!0,q,g)}function lb(g){var q,z;return null!==(z=null===(q=Hb(!0,g)[0])||void 0===q?void 0:q.visitId)&&void 0!==z?z:Sb(pd())}function vc(){let g=Ja(Nd);try{g=g.replace(/\d/g,function(q){q=.1*Number.parseInt(q);return String.fromCharCode(Math.floor(25*q+65))})}catch(q){throw sa(q,
7),q;}return g+="-0",g}function wc(g,q){let z=Hb(!1,q);cc(z,g,q);Pb(pd(),g);oa(!0)}function Ec(g,q,z){return Cc(g,q,z)}function Cc(g,q,z){g&&(Ed=!0);g=lb(z);z=vc();wc(z);if(lb(document.cookie))for(let P of ye)P(z,Ed,q,g);return z}function xc(g){ye.push(g)}function Ac(g){g=ye.indexOf(g);-1!==g&&ye.splice(g)}function id(g){Ke&&R(Ke);Ke=va(jd,Gc(g)-Dc())}function jd(){let g=document.cookie;return Gc(g)<=Dc()?(Na(Oa,[g]),!0):(t(id),!1)}function cd(g){let q=Ua(sc,null,wd(),g,void 0,D("ssc"));q();let z=
Ba(wd());""!==z&&g!==z&&(E(),q(),g===Ba(wd())||Cf||(ee.push({severity:"Error",type:"dcn",text:"Could not sanitize cookies"}),Cf=!0));Pb(wd(),g)}function Pc(g,q){q=Ba(g,q);return q||(q=Sb(g)||""),q}function kd(){var g=ia()||"";Pb(pd(),g);g=Pc(wd());cd(g);Va(pd());Va(wd())}function Wc(g){let q={Yc:0,jc:0};if(g=Pc(wd(),g))try{let z=g.split("|");2===z.length&&(q.Yc=Number.parseInt(z[0]),q.jc=Number.parseInt(z[1]))}catch(z){}return q}function Gc(g){g=Wc(g);return Math.min(g.Yc,g.jc+Sf)}function J(g){Bf=
g}function W(){let g=Ed;return Ed=!1,g}function F(){jd()||oa(!1)}function pa(){if(D("nsfnv")){var g=Ba(Ld());if(!g.includes(`${ze}-`)){let q=Ta(g).serverId;g=g.replace(`${ze}${q}`,`${ze}${`${-1*Z(2,Xe)}`.replace("-","-2D")}`);Ic(g)}}}function La(){t(function(){if(!Fd()){let g=-1*Z(2,Xe),q=Ja(Nd);Ic(`v_4${ze}${`${g}`.replace("-","-2D")}_sn_${q}`)}},!0);xc(pa)}function Ta(g){var q;let z={},P={sessionId:"",serverId:"",overloadState:0,appState:z};var T=g.split(Tf);if(2<T.length&&0===T.length%2){g=+T[1];
if(Number.isNaN(g)||3>g)return P;g={};for(var xa=2;xa<T.length;xa++){let bb=T[xa];bb.startsWith(rg)?z[bb.substring(6).toLowerCase()]=+T[xa+1]:g[bb]=T[xa+1];xa++}g.sn?(T=g.sn,P.sessionId=T.length===Nd||12>=T.length?T:""):P.sessionId="hybrid";if(g.srv){a:{T=g.srv.replace("-2D","-");if(!Number.isNaN(+T)&&(xa=Number.parseInt(T),xa>=-Xe&&xa<=Xe))break a;T=""}P.serverId=T}T=+g.ol;1===T&&Ia(Qc());0<=T&&2>=T&&(P.overloadState=T);g=+g.prv;Number.isNaN(g)||(P.privacyState=1>g||4<g?1:g);g=null===(q=wa("app"))||
void 0===q?void 0:q.toLowerCase();q=z[g];!Number.isNaN(q)&&0===q&&Ia(Qc())}return P}function Ia(g){let q=kb();g||(q.disabled=!0,q.overloadPrevention=!0)}function sb(){if(Ma.MobileAgent||Ma.dynatraceMobile){let g=Wa("dtAdkSettings");return Ta(g).privacyState||null}return null}function Na(g,q){return!jb()||kb().overloadPrevention&&!Qc()?null:g.apply(this,q)}function jb(){let g=sb();return 2===g||1===g?!1:!D("coo")||D("cooO")||Qc()}function Db(g,q){try{Ma.sessionStorage.setItem(g,q)}catch(z){}}function Pb(g,
q){Na(Db,[g,q])}function Sb(g){try{return Ma.sessionStorage.getItem(g)}catch(q){}return null}function Nb(g){try{Ma.sessionStorage.removeItem(g)}catch(q){}}function qc(g){document.cookie=g+'="";path=/'+(wa("domain")?";domain="+wa("domain"):"")+"; expires=Thu, 01 Jan 1970 00:00:01 GMT;"}function Ad(g,q,z,P){q||0===q?(q=(q+"").replace(/[\n\r;]/g,"_"),g=g+"="+q+";path=/"+(wa("domain")?";domain="+wa("domain"):""),z&&(g+=";expires="+z.toUTCString()),g+=Zb(wa("cssm")),P&&"https:"===location.protocol&&(g+=
";Secure"),document.cookie=g):qc(g)}function sc(g,q,z,P){Na(Ad,[g,q,z,P])}function Bc(g){return!!g.includes("v_4")}function ld(g){g=Ba(Ld(),g);g||(g=(g=Sb(Ld()))&&Bc(g)?(Ic(g),g):"");return Bc(g)?g:""}function Ic(g){sc(Ld(),g,void 0,D("ssc"))}function rd(g){return(g=g||ld())?Ta(g):{sessionId:"",serverId:"",overloadState:0,appState:{}}}function qd(g){return rd(g).serverId}function Fd(g){return rd(g).sessionId}function Qc(){return navigator.userAgent.includes(nf)}function dd(g){let q={};g=g.split("|");
for(let z of g)g=z.split("="),2===g.length&&(q[g[0]]=decodeURIComponent(g[1].replace(/\+/g," ")));return q}function Rc(){let g=rc();return(g.indexOf("dbg")===g.length-3?g.substring(0,g.length-3):g)+"_"+wa("app")+"_Store"}function B(g,q={},z){g=g.split("|");for(var P of g){g=P;let T=P.indexOf("="),xa;-1===T?(xa=g,q[xa]="1"):(g=P.substring(0,T),xa=g,q[xa]=P.substring(T+1,P.length))}!z&&(z=q.spc)&&(P=document.createElement("textarea"),P.innerHTML=z,q.spc=P.value);return q}function A(g){var q;return null!==
(q=jc[g])&&void 0!==q?q:oe[g]}function D(g){g=A(g);return"false"===g||"0"===g?!1:!!g}function ka(g){var q=A(g);q=Number.parseInt(q);return Number.isNaN(q)&&(q=oe[g]),q}function wa(g){if("app"===g){a:{try{if(Ie){var q=Ie();if(q&&"string"==typeof q&&Kg.test(q)){var z=q;break a}Ma.console.log(`${lf} Registered app config callback method did not return a string in the correct app id format ${Kg} The default app ID will be used instead! Got value: ${q}`)}}catch(P){Ma.console.log(`${lf} Failed to execute the registered app config callback method! The default app ID will be used instead!`,
P)}z=void 0}if(z)return z}return(A(g)||"")+""}function eb(g,q){jc[g]=q+""}function ob(g){return jc=g,jc}function yb(g){let q=jc[g];q&&(jc[g]=q.includes("#"+g.toUpperCase())?"":q)}function zb(g){var q=g.agentUri;null!=q&&q.includes("_")&&(q=/([A-Za-z]*)\d{0,4}_(\w*)_\d+/g.exec(q))&&q.length&&2<q.length&&(g.featureHash=q[2])}function Mb(g){var q=kb().platformCookieOffset;if("number"==typeof q){a:{var z=wa("cssm");var P=Fb();if(P.length)for(q=P.slice(q);q.length;){if(mc(q.join("."),z)){z=q.join(".");
break a}q.shift()}z=""}z&&(g.domain=z)}else if(z=g.domain||"",q=(q=location.hostname)&&z?q===z||q.includes("."+z,q.length-("."+z).length):!0,!z||!q){g.domainOverride||(g.domainOriginal=g.domain||"",g.domainOverride=`${location.hostname},${z}`,delete g.domain);a:{P=wa("cssm");let xa=Fb().reverse();if(xa.length){var T=xa[0];for(let bb=1;bb<=xa.length;bb++){if(mc(T,P)){P=T;break a}let Qb=xa[bb];Qb&&(T=`${Qb}.${T}`)}}P=""}P&&(g.domain=P);q||ee.push({type:"dpi",severity:"Warning",text:`Configured domain "${z}" is invalid for current location "${location.hostname}". Agent will use "${g.domain}" instead.`})}}
function Xb(g,q){Mb(g);let z=jc.pVO;(z&&(g.pVO=z),q)||(g.bp=(g.bp||oe.bp)+"")}function Ub(g,q){if(null==g||!g.attributes)return q;let z=q;var P=g.attributes.getNamedItem("data-dtconfig");if(!P)return z;g=g.src;P=P.value;let T={};jc.legacy="1";var xa=/([A-Za-z]*)_(\w*)_(\d+)/g;let bb=null;xa=(g&&(bb=xa.exec(g),null!=bb&&bb.length&&(T.agentUri=g,T.featureHash=bb[2],T.agentLocation=g.substring(0,g.indexOf(bb[1])-1),T.buildNumber=bb[3])),P&&B(P,T,!0),Mb(T),T);if(!q)z=xa;else if(!xa.syntheticConfig)return xa;
return z}function m(){return jc}function u(g){return oe[g]===A(g)}function t(g,q=!1){jb()?g():q?Uf.push(g):Df.push(g)}function G(){if(!D("coo")||jb())return!1;for(let g of Df)va(g,0);Df=[];eb("cooO",!0);for(let g of Uf)g();return Uf.length=0,!0}function M(){if(!D("coo")||!jb())return!1;eb("cooO",!1);qc(Ld());qc(We());qc(sg());qc("dtAdk");qc(Yc());qc(wd());try{Nb(pd()),Nb(wd()),Va(pd()),Va(wd()),Nb(Yc()),Nb(Ld()),Va(Rc()),Va("dtAdk")}catch(g){}return!0}function ha(){var g=Ba(Yc());if(!g||45!==(null==
g?void 0:g.length))if(g=x(Yc())||Sb(Yc()),45!==(null==g?void 0:g.length)){dh=!0;let q=Dc()+"";g=(q+=Ja(45-q.length),q)}return qa(g),g}function qa(g){let q;if(D("dpvc")||D("pVO"))Pb(Yc(),g);else{q=new Date;var z=q.getMonth()+Math.min(24,Math.max(1,ka("rvcl")));q.setMonth(z);z=Yc();Na(ec,[z,g])}sc(Yc(),g,q,D("ssc"))}function Qa(){return dh}function Pa(g){let q=Ba(Yc());qc(Yc());Nb(Yc());Va(Yc());eb("pVO",!0);qa(q);g&&Na(ec,["dt-pVO","1"]);kd()}function pb(){Va("dt-pVO");D("pVO")&&(eb("pVO",!1),ha());
Nb(Yc());kd()}function qb(g,q,z,P,T,xa){let bb=document.createElement("script");bb.setAttribute("src",g);q&&bb.setAttribute("defer","defer");z&&(bb.onload=z);P&&(bb.onerror=P);T&&bb.setAttribute("id",T);if(g=xa){var Qb;g=null!=(null===(Qb=document.currentScript)||void 0===Qb?void 0:Qb.attributes.getNamedItem("integrity"))}g&&bb.setAttribute("integrity",xa);bb.setAttribute("crossorigin","anonymous");xa=document.getElementsByTagName("script")[0];xa.parentElement.insertBefore(bb,xa)}function ub(g){return Vf+
"/"+Yd+"_"+g+"_"+(ka("buildNumber")||kb().version)+".js"}function bc(){}function Lc(g,q){return function(){g.apply(q,arguments)}}function Ab(g){if(!(this instanceof Ab))throw new TypeError("Promises must be constructed via new");if("function"!=typeof g)throw new TypeError("not a function");this.oa=0;this.Ob=!1;this.qa=void 0;this.Ca=[];eh(g,this)}function ed(g,q){for(;3===g.oa;)g=g.qa;0===g.oa?g.Ca.push(q):(g.Ob=!0,Ab.qb(function(){var z=1===g.oa?q.Gb:q.Hb;if(null===z)(1===g.oa?Fc:Zc)(q.promise,g.qa);
else{try{var P=z(g.qa)}catch(T){Zc(q.promise,T);return}Fc(q.promise,P)}}))}function Fc(g,q){try{if(q===g)throw new TypeError("A promise cannot be resolved with itself.");if(q&&("object"==typeof q||"function"==typeof q)){var z=q.then;if(q instanceof Ab){g.oa=3;g.qa=q;of(g);return}if("function"==typeof z){eh(Lc(z,q),g);return}}g.oa=1;g.qa=q;of(g)}catch(P){Zc(g,P)}}function Zc(g,q){g.oa=2;g.qa=q;of(g)}function of(g){2===g.oa&&0===g.Ca.length&&Ab.qb(function(){g.Ob||Ab.Ub(g.qa)});for(var q=0,z=g.Ca.length;q<
z;q++)ed(g,g.Ca[q]);g.Ca=null}function fh(g,q,z){this.Gb="function"==typeof g?g:null;this.Hb="function"==typeof q?q:null;this.promise=z}function eh(g,q){var z=!1;try{g(function(P){z||(z=!0,Fc(q,P))},function(P){z||(z=!0,Zc(q,P))})}catch(P){z||(z=!0,Zc(q,P))}}function Wf(){return Xf.qb=function(g){if("string"==typeof g)throw Error("Promise polyfill called _immediateFn with string");g()},Xf.Ub=()=>{},Xf}function Yf(){var g;(g=void 0===Ma.dialogArguments&&navigator.cookieEnabled)||(document.cookie="__dTCookie=1;SameSite=Lax",
g=document.cookie.includes("__dTCookie"),g=(document.cookie="__dTCookie=1; expires=Thu, 01-Jan-1970 00:00:01 GMT",g));return g}function gh(){var g,q;try{null===(q=null===(g=Ma.MobileAgent)||void 0===g?void 0:g.incrementActionCount)||void 0===q||q.call(g)}catch(z){}}function wi(){let g=Ma.dT_;Ma.dT_={di:0,version:"10317250630095842",cfg:g?g.cfg:"",iCE:g?Yf:function(){return navigator.cookieEnabled},ica:1,disabled:!1,disabledReason:"",overloadPrevention:!1,gAST:ja,ww:C,stu:za,nw:X,st:va,si:Y,aBPSL:V,
rBPSL:na,gBPSL:ua,aBPSCC:I,gBPSCC:U,buildType:"dynatrace",gSSV:Sb,sSSV:Pb,rSSV:Nb,rvl:Va,iVSC:Bc,p3SC:Ta,dC:qc,sC:sc,esc:Rb,gSId:qd,gDtc:Fd,gSC:ld,sSC:Ic,gC:Wa,cRN:Z,cRS:Ja,cfgO:m,pCfg:dd,pCSAA:B,cFHFAU:zb,sCD:Xb,bcv:D,ncv:ka,scv:wa,stcv:eb,rplC:ob,cLSCK:Rc,gFId:ab,gBAU:ub,iS:qb,eWE:t,oEIEWA:Na,eA:G,dA:M,iNV:Qa,gVID:ha,dPV:Pa,ePV:pb,sVIdUP:ca,sVTT:J,sVID:wc,rVID:ia,gVI:O,gNVIdN:Ec,gARnVF:W,cAUV:F,uVT:oa,aNVL:xc,rNVL:Ac,gPC:Hb,cPC:ac,sPC:cc,clB:Aa,ct:R,aRI:gc,iXB:hc,gXBR:Eb,sXBR:Jb,de:cb,iEC:gh,rnw:gb,
gto:Ya,ael:Ga,rel:fb,sup:Xa,cuel:Da,iAEPOO:jb,iSM:Qc,gxwp:Q,iIO:sa,prm:Wf,cI:ba,gidi:ma,iDCV:u,gCF:Ba,gPSMB:sb,lvl:x,gCP:null!=g&&g.platformPrefix?function(){return g.platformPrefix||""}:void 0,platformCookieOffset:null==g?void 0:g.platformCookieOffset,tdto:ib,gFLAI:zc,rACC:$b,gAN:rc}}function Qh(){var g;Wf();var q;ng=Ma.XMLHttpRequest;var z=null===(q=Ma.XMLHttpRequest)||void 0===q?void 0:q.prototype;if(z){He={};for(let P of Hg)void 0!==z[P]&&(He[P]=z[P])}te=Ma.addEventListener;zf=Ma.removeEventListener;
ch=Ma.document.addEventListener;Gg=Ma.document.removeEventListener;Vd=Ma.setTimeout;ve=Ma.setInterval;Wd||(hf=Ma.clearTimeout,Ue=Ma.clearInterval);q=Yf?Yf():navigator.cookieEnabled;z=1===Ta(Ba("dtAdkSettings")||(null===(g=Ef)||void 0===g?void 0:g.getItem("dtAdkSettings"))||"").overloadState;if(q){if(z)return!1}else return!1;return!0}function pf(...g){Ma.console.log.apply(Ma.console,g)}this.dT_&&dT_.prm&&dT_.prm();var qg="undefined"!=typeof window?window:self,Ma="undefined"!=typeof globalThis?globalThis:
"undefined"!=typeof window?window:void 0,hf,Ue,Vd,ve,ad,od,vi=Symbol.for("dt_2");Symbol.for("dt_3");var te,zf,ch,Gg,Rf=Ma.Worker,Te=Rf&&Rf.prototype.addEventListener,bd=[],mg=["touchstart","touchend","scroll"],Af=Symbol.for("dt2-isNativeFunction"),ng,Hg="abort getAllResponseHeaders getResponseHeader open overrideMimeType send setRequestHeader".split(" "),He,jf=Ma.Worker,Ve=Ma.Blob,og=Ma.URL&&Ma.URL.createObjectURL,Wd=!1,fe,pg=[],ee=[],Se,Ef,ue={},Dc,Ig={"!":"%21","~":"%7E","*":"%2A","(":"%28",")":"%29",
"'":"%27",hg:"%24",";":"%3B",",":"%2C"},Kd,we={l:"Lax",s:"Strict",n:"None"},xe=-1,We=Tb("dtPC"),Ld=Tb("dtCookie"),wd=Tb("rxvt"),Yc=Tb("rxVisitor"),kf=Tb("dTValidationCookie"),sg=Tb("dtSa"),oe,lf="[Dynatrace RUM JavaScript]",Kg=/^[\da-f]{12,16}$/,Ie,Id,Zd,ge=!1,Xd,Je=6E8,ne,Nd=32,pd=Tb("rxvisitid"),zd,mf=0,Jg=/([A-Z]+)-(\d+)/,ye=[],Bf,Sf,Ed=!1,Ke,Cf=!1,Tf="_",Xe=32768,ze=`${Tf}srv${Tf}`,rg="app-3A",nf="RuxitSynthetic",Zf=/c(\w+)=([^ ]+(?: (?!c?\w+=)[^ ()c]+)*)/g,jc={},Df=[],Uf=[],dh=!1,Ff,Vf,Yd,tg=
setTimeout;Ab.prototype.catch=function(g){return this.then(null,g)};Ab.prototype.then=function(g,q){var z=new this.constructor(bc);return ed(this,new fh(g,q,z)),z};Ab.prototype.finally=function(g){var q=this.constructor;return this.then(function(z){return q.resolve(g()).then(function(){return z})},function(z){return q.resolve(g()).then(function(){return q.reject(z)})})};Ab.all=function(g){return new Ab(function(q,z){function P(Qb,Wb){try{if(Wb&&("object"==typeof Wb||"function"==typeof Wb)){var md=
Wb.then;if("function"==typeof md){md.call(Wb,function(Od){P(Qb,Od)},z);return}}T[Qb]=Wb;0===--xa&&q(T)}catch(Od){z(Od)}}if(!g||"undefined"==typeof g.length)return z(new TypeError("Promise.all accepts an array"));var T=Array.prototype.slice.call(g);if(0===T.length)return q([]);for(var xa=T.length,bb=0;bb<T.length;bb++)P(bb,T[bb])})};Ab.allSettled=function(g){return new this(function(q,z){function P(bb,Qb){if(Qb&&("object"==typeof Qb||"function"==typeof Qb)){var Wb=Qb.then;if("function"==typeof Wb){Wb.call(Qb,
function(md){P(bb,md)},function(md){T[bb]={status:"rejected",reason:md};0===--xa&&q(T)});return}}T[bb]={status:"fulfilled",value:Qb};0===--xa&&q(T)}if(!g||"undefined"==typeof g.length)return z(new TypeError(typeof g+" "+g+" is not iterable(cannot read property Symbol(Symbol.iterator))"));var T=Array.prototype.slice.call(g);if(0===T.length)return q([]);var xa=T.length;for(z=0;z<T.length;z++)P(z,T[z])})};Ab.resolve=function(g){return g&&"object"==typeof g&&g.constructor===Ab?g:new Ab(function(q){q(g)})};
Ab.reject=function(g){return new Ab(function(q,z){z(g)})};Ab.race=function(g){return new Ab(function(q,z){if(!g||"undefined"==typeof g.length)return z(new TypeError("Promise.race accepts an array"));for(var P=0,T=g.length;P<T;P++)Ab.resolve(g[P]).then(q,z)})};Ab.qb="function"==typeof setImmediate&&function(g){setImmediate(g)}||function(g){tg(g,0)};Ab.Ub=function(g){"undefined"!=typeof console&&console&&console.warn("Possible Unhandled Promise Rejection:",g)};var Xf=Ab,xi="function"==typeof PerformanceResourceTiming||
"object"==typeof PerformanceResourceTiming,hh="function"==typeof PerformanceNavigationTiming||"object"==typeof PerformanceNavigationTiming;(function(){var g,q,z,P;if(P=!("documentMode"in document&&!Number.isNaN(document.documentMode)))P=(P=window.performance)&&hh&&xi&&!!P.timeOrigin&&fa(P.now)&&fa(P.getEntriesByType)&&fa(P.getEntriesByName)&&fa(P.setResourceTimingBufferSize)&&fa(P.clearResourceTimings);if(P)if(P=!(null!==(g=navigator.userAgent)&&void 0!==g&&g.includes("RuxitSynthetic")),!Ma.dT_||
!Ma.dT_.cfg||"string"!=typeof Ma.dT_.cfg||"initialized"in Ma.dT_&&Ma.dT_.initialized)null!==(q=Ma.dT_)&&void 0!==q&&q.gCP?pf("[CookiePrefix/initCode] initCode with cookie prefix already initialized, not initializing initCode!"):pf("InitConfig not found or agent already initialized! This is an injection issue."),Ma.dT_&&(Ma.dT_.di=3);else if(P)try{wi();oe={ade:"",aew:!0,apn:"",agentLocation:"",agentUri:"",app:"",ac:!0,async:!1,ase:!1,auto:!1,bp:3,bs:!1,buildNumber:0,csprv:!0,cepl:16E3,cls:!0,ccNcss:!1,
coo:!1,cooO:!1,cssm:"0",cwtDomains:"",cwtUrl:"w2dax4xgw3",cwt:"",cors:!1,cuc:"",cce:!1,cux:!1,postfix:"",dataDtConfig:"",debugName:"",dvl:500,dASXH:!1,disableCookieManager:!1,dKAH:!1,disableLogging:!1,dmo:!1,doel:!1,dpch:!1,dpvc:!1,disableXhrFailures:!1,domain:"",domainOverride:"",domainOriginal:"",doNotDetect:"",ds:!0,dsndb:!1,dsa:!1,dsss:!1,dssv:!0,earxa:!0,eao:!1,exp:!1,eni:!0,etc:!0,expw:!1,instr:"",evl:"",fa:!1,fvdi:!1,featureHash:"",hvt:216E5,imm:!1,ign:"",iub:"",iqvn:!1,initializedModules:"",
lastModification:0,lupr:!0,lab:!1,legacy:!1,lt:!0,mb:"",md:"",mdp:"",mdl:"",mcepsl:100,mdn:5E3,mhl:4E3,mpl:1024,mmds:2E4,msl:3E4,bismepl:2E3,mel:200,mepp:10,moa:30,mrt:3,ntd:!1,nsfnv:!1,ncw:!1,oat:180,ote:!1,owasp:!1,pcl:20,pt:!0,perfbv:1,prfSmpl:0,pVO:!1,peti:!1,raxeh:!0,rdnt:0,nosr:!0,reportUrl:"dynaTraceMonitor",rid:"",ridPath:"",rpid:"",rcdec:12096E5,rtl:0,rtp:2,rtt:1E3,rtu:200,rvcl:24,sl:100,ssc:!1,svNB:!1,srad:!0,srbbv:1,srbw:!0,srcst:!1,srdinitrec:!0,srmr:100,srms:"1,1,,,",srsr:1E5,srtbv:3,
srtd:1,srtr:500,srvr:"",srvi:0,srwo:!1,srre:"",srxcss:!0,srxicss:!0,srficros:!0,srmrc:!1,srsdom:!0,srfirrbv:!0,srcss:!0,srmcrl:1,srmcrv:10,st:3E3,spc:"",syntheticConfig:!1,tal:0,tt:100,tvc:3E3,uxdce:!1,uxdcw:1500,uxrgce:!0,uxrgcm:"100,25,300,3;100,25,300,3",uam:!1,uana:"data-dtname,data-dtName",uanpi:0,pui:!1,usrvd:!0,vrt:!1,vcfi:!0,vcsb:!1,vcit:1E3,vct:50,vcx:50,vscl:0,vncm:1,vrei:"",xb:"",chw:"",xt:0,xhb:""};if(!Qh())throw Error("Error during initCode initialization");try{Ef=Ma.localStorage}catch(xd){}ee=
[];la();Se=Dc();fe=[];ue={};Wd||(Ma.clearTimeout=N(hf),Ma.clearInterval=N(Ue),Wd=!0);let Bd=Math.random(),fd=Math.random();Zd=0!==Bd&&0!==fd&&Bd!==fd;if(ic()){var T=performance.getEntriesByType("navigation")[0];if(T){g=0;for(var xa in T){let xd=+T[xa];!Number.isNaN(xd)&&Number.isFinite(xd)&&(g+=Math.abs(xd))}var bb=Math.floor(1E4*g)}else bb=Dc();Id=L(bb)}else Zd?Id=Math.random:Id=L(Dc());Xd=Se%Je+"_"+Number.parseInt(Z(0,1E3)+"");a:{let xd=kb().cfg;jc={reportUrl:"dynaTraceMonitor",initializedModules:"",
dataDtConfig:"string"==typeof xd?xd:""};kb().cfg=jc;let nd=jc.dataDtConfig;nd&&!nd.includes("#CONFIGSTRING")&&(B(nd,jc),yb("domain"),yb("auto"),yb("app"),zb(jc));let Cd=(jc.dataDtConfig||"").includes("#CONFIGSTRING")?null:jc;if(Cd=Ub(document.currentScript,Cd),Cd)for(let Dd in Cd)if(Object.prototype.hasOwnProperty.call(Cd,Dd)){T=Dd;bb=jc;xa=T;var Qb=Cd[T];"undefined"!=typeof Qb&&(bb[xa]=Qb)}let Qd=Rc();try{let Dd=(Qb=Ef)&&Qb.getItem(Qd);if(Dd){let Ye=dd(Dd),Rd=B(Ye.config||""),Gf=jc.lastModification||
"0",yi=Number.parseInt((Rd.lastModification||Ye.lastModification||"0").substring(0,13)),he="string"==typeof Gf?Number.parseInt(Gf.substring(0,13)):Gf;if(!(Gf&&yi<he)&&(Rd.agentUri=Rd.agentUri||wa("agentUri"),Rd.featureHash=Ye.featureHash||wa("featureHash"),Rd.agentUri&&zb(Rd),Xb(Rd,!0),hc(Rd),gc(Rd),yi>(+jc.lastModification||0))){let fj=D("auto"),Oj=D("legacy");jc=ob(Rd);jc.auto=fj?"1":"0";jc.legacy=Oj?"1":"0"}}}catch(Dd){}Xb(jc);try{let Dd=jc.ign;if(Dd&&(new RegExp(Dd)).test(Ma.location.href)){var Wb=
(delete Ma.dT_,!1);break a}}catch(Dd){}if(Qc()){{var md=navigator.userAgent;let Ye=md.lastIndexOf(nf);if(-1===Ye)var Od={};else{var Ae=md.substring(Ye).matchAll(Zf);if(Ae){md={};for(var pe of Ae){let [,Rd,Gf]=pe;md[Rd]=Gf}Od=md}else Od={}}}pe=Od;let Dd;for(Dd in pe)if(Object.prototype.hasOwnProperty.call(pe,Dd)&&pe[Dd]){Od=jc;Ae=Dd;var $d=pe[Dd];"undefined"!=typeof $d&&(Od[Ae]=$d)}ob(jc)}var qf=wa("cuc"),ae,Sd;let Be=null===(Sd=null===(ae=Ma.dT_)||void 0===ae?void 0:ae.gCP)||void 0===Sd?void 0:Sd.call(ae);
if(qf&&Be&&qf!==Be)throw Error("platformPrefix and cuc do not match!");Wb=!0}if(!Wb)throw Error("Error during config initialization");S();Ff=kb().disabled;var Xc;if(!(Xc=wa("agentLocation")))a:{let xd=wa("agentUri");if(xd||document.currentScript){let Cd=xd||document.currentScript.src;if(Cd){let Qd=Cd.includes("_complete")?2:1,Be=Cd.lastIndexOf("/");for(Wb=0;Wb<Qd&&-1!==Be;Wb++)Cd=Cd.substring(0,Be),Be=Cd.lastIndexOf("/");Xc=Cd;break a}}let nd=location.pathname;Xc=nd.substring(0,nd.lastIndexOf("/"))}Vf=
Xc;if(Yd=rc(),"true"===Ba("dtUseDebugAgent")&&!Yd.includes("dbg")&&(Yd=wa("debugName")||Yd+"dbg"),!D("auto")&&!D("legacy")&&!Ff){let xd=wa("agentUri")||ub(wa("featureHash"));D("async")||"complete"===document.readyState?qb(xd,D("async"),void 0,void 0,"dtjsagent"):(document.write(`<script id="${"dtjsagentdw"}" type="text/javascript" src="${xd}" crossorigin="anonymous"><\/script>`),document.getElementById("dtjsagentdw")||qb(xd,D("async"),void 0,void 0,"dtjsagent"))}Ba(Ld())&&eb("cooO",!0);La();eb("pVO",
!!x("dt-pVO"));t(ha);Bf=18E5;Sf=ka("hvt")||216E5;let Ze=ib();ne=void 0;Ze&&"ea"in Ze&&(ne=Ze.gITAID());Na(ac,[ne||1])}catch(Bd){"platformPrefix and cuc do not match!"===Bd.message?(Xc=Ma.dT_,Ma.dT_={minAgentVersion:Xc.minAgentVersion,platformPrefix:(null===(z=Xc.gCP)||void 0===z?void 0:z.call(Xc))||Xc.platformPrefix,platformCookieOffset:Xc.platformCookieOffset},pf("[CookiePrefix/initCode] cuc and platformPrefix do not match, disabling agent!")):(delete Ma.dT_,pf("JsAgent initCode initialization failed!",
Bd))}})()})();
</script><script type="text/javascript" src="/reviews/ruxitagentjs_A7NVfhqrux_10317250630095842.js" defer="defer"></script></head>
<script src="https://www.recaptcha.net/recaptcha/api.js?render=6Lc8z9YUAAAAAPs8cWSmTBHNs7N2n8ruye0fJiL4"></script>
<script type="text/javascript">
window.recaptchaV3SiteKey = '6Lc8z9YUAAAAAPs8cWSmTBHNs7N2n8ruye0fJiL4';
</script>
<script type="text/javascript">
window.BASE_URL = '/reviews/api-proxy';
window.ACCESS_TOKEN_DOMAIN = '/reviews/auth-proxy';
window.REVIEWS_API_HOST = '/reviews/api2-proxy';
window.CDN_URL = 'https://reviews.static.gartner.com';
// send the refval up for any page. Do this as soon as possible so that other end points will see this latest value.
if ('') {
var url = '/reviews/api-proxy/reviews/identify/reference?refval=';
window.sessionStorage.setItem("client-side-refval", '');
var campaignExpiryKey = "campaign-expiry-date";
if ('') {
// If there is a new date, set it to session or replace existing date.
window.sessionStorage.setItem(campaignExpiryKey, '');
} else {
// If there is no new date, remove existing date.
window.sessionStorage.removeItem(campaignExpiryKey);
}
if('') {
url = url + '&refuser=';
window.sessionStorage.setItem("client-side-refuser", '');
}
if('') {
url = url + '&channel=';
window.sessionStorage.setItem("client-side-channel", '');
}
var xhr = new XMLHttpRequest();
xhr.open('POST', url);
xhr.withCredentials = true;
xhr.send();
}
if (typeof initTime === 'undefined') {
var initTime = Date.now();
}
</script>
<body id="root" class="page-specific-css unification-wrapper">
<!--
IMPORTANT NOTE: this html is cached on the gartner cdn, if you need to change in anyway you will need a ticket to clear it from the cdn.
-->
<div id="hcaptcha-container"></div>
<div id="app" class="delay-page"></div>
<!-- <script src="https://reviews.static.gartner.com/js/lib/jquery.min.js"></script> -->
<script type="text/javascript" src="https://reviews.static.gartner.com/js/lib/jquery.0bdc04968d2fe6799360150868a8b8b6.js"></script>
<script src="https://reviews.static.gartner.com/react/assets/hash/libraries.aa66c9ecbd7bf196215ec53688b93283.js" type="text/javascript" ></script>
<script type="text/javascript" src="https://reviews.static.gartner.com/react/assets/hash/delayPage.ce911fba0c9de8442a1347d4ccce2ad7.js"></script>
<!-- Hotjar Tracking Code for www.gartner.com/reviews -->
<!-- We have a very similar piece of code in Next JS as the component LoadHotJar. So you may have to implement your change into two places -->
<script>
if (window.botRequest === false) {
if (window.enableDelayedScripts === true) {
window.addEventListener('load', function () {
console.log("HotJar Scripts started on Window Load ...");
executeHotJar();
});
console.log("Enabled Delayed Scripts for HotJar...");
}
else {
console.log("Disabled Delayed Scripts for HotJar...");
executeHotJar();
}
} else {
console.log("This is a bot request, skipping hotjar script setup...");
}
function executeHotJar() {
(function (h, o, t, j, a, r) {
h.hj = h.hj || function () { (h.hj.q = h.hj.q || []).push(arguments) };
h._hjSettings = { hjid: 400897, hjsv: 6 };
a = o.getElementsByTagName('head')[0];
r = o.createElement('script'); r.defer = 1;
r.src = t + h._hjSettings.hjid + j + h._hjSettings.hjsv;
a.appendChild(r);
})(window, document, 'https://static.hotjar.com/c/hotjar-', '.js?sv=');
}
</script>
<script type="text/javascript">
</script>
<script>(function(){function c(){var b=a.contentDocument||a.contentWindow.document;if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'9ba51bd99f8111f1',t:'MTc2NzgwNjI0OC4wMDAwMDA='};var a=document.createElement('script');a.nonce='';a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script></body>
</html>