Walking
5K Walk/Run
5 km
Free Registration: 0.00 USD

Walking
5K Walk/Run
5 km
Free Registration: 0.00 USD
Join the St. Jude Walk/Run to End Childhood Cancer and help support groundbreaking research and treatment for kids. Fundraising is encouraged to make the biggest impact.
There will be various stations along the route providing water and snacks.
Pace and support will be available for participants. Expect several volunteers leading groups based on target times during the event.
Monthly averages based on historical data (2000–present).
\?/,"").split("&"),i=0;i<hashQueries.length;i++)""!==hashQueries[i]&&(l[(s=hashQueries[i].split("="))[0]]=s[1]);return{protocol:n.protocol,host:n.host,hostname:n.hostname,port:n.port,pathname:n.pathname,search:n.search,searchObject:a,hashSearchObject:l,hash:n.hash,href:n.href,origin:n.origin}},sj.utils.rebuildURL=function(t){var e=t.protocol+"//"+t.hostname,s=[];return t.port&&(e+=":"+t.port),e+=t.pathname,Object.keys(t.searchObject).length&&(e+="?
(e+=t.hash.replace(/\?.*/,""),e+="?
3:2,e.splice(e.length-s,s).join(".")},sj.utils.deleteCookie=function(t,e){e=e||sj.utils.getRootLevelDomain(),document.cookie=t+"=;domain="+e+";path=/;expires=Thu, 01 Jan 1970 00:00:01 GMT",location.hostname.indexOf("qa.sj.org")>-1&&"qa.sj.org"!==e&&(document.cookie=t+"=;domain=qa.sj.org;path=/;expires=Thu, 01 Jan 1970 00:00:01 GMT"),document.cookie=t+"=;path=/;expires=Thu, 01 Jan 1970 00:00:01 GMT"},sj.utils.typeOf=function(t){return{}.toString.call(t).match(/\s([a-zA-Z]+)/)[1].toLowerCase()},sj.utils.sortObject=function(t){var e={};return"object"!=sj.utils.typeOf(t)?(sj.log("UTILITY::sj.utils.sortObject::Called for a non-object: "+sj.utils.typeOf(t)),t):(Object.keys(t).sort().forEach((function(s){"object"==sj.utils.typeOf(t[s])?e[s]=sj.utils.sortObject(t[s]):e[s]=t[s]})),e)},sj.utils.when=function(t,e,s,i){var n={};var a=Array.prototype.slice.call(arguments,2);return function(t,e,s,i){void 0===s&&(s=100),n.sleep=s,n.maxAttempts=i,n.totalAttempts=0;var a=Array.prototype.slice.call(arguments,2),l=function(){n.totalAttempts++,void 0!==n.maxAttempts&&n.totalAttempts>n.maxAttempts&&clearInterval(n.timer)};n.timer=setInterval((function(){try{t.apply(null,a)?(clearInterval(n.timer),e()):l()}catch(t){l()}}),s)}(t,(function(){e.apply(null,a)}),s,i),n},sj.utils.cleanObject=function(t){return Object.keys(t).forEach((function(e){void 0!==t[e]&&""!=t[e]&&null!=t[e]||delete t[e]})),t},sj.utils.cleanArray=function(t){for(var e=[],s=0;s<t.length;s++)"undefined"!==sj.utils.typeOf(t[s])&&"null"!==sj.utils.typeOf(t[s])&&""!==t[s]&&e.push(t[s]);return e},sj.log=function(t,e,s,i,n){if((s||localStorage.cc_debug)&&(localStorage.cc_debug||s)){n||(n="STJUDE::");try{if(e||(e="log"),"object"!=typeof t||i)"object"==typeof t&&i?console[e](n+"Not pretty printing object ",t):console[e](n+""+t);else if("object"===sj.utils.typeOf(t)||"array"===sj.utils.typeOf(t))try{if(Object.keys(sj.utils.cleanObject(t)).length!==Object.keys(JSON.parse(JSON.stringify(sj.utils.cleanObject(t)))).length)return console[e](n+"Not pretty printing object due to dropping keys ",t),!0;t=sj.utils.sort_object(t);var a=n+""+JSON.stringify(t,void 0,"\t"),l=[];a=a.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g,(function(t){var e="color:#ae81ff";return/^"/.test(t)?e=/:$/.test(t)?
e="color:#4e84ff":/null/.test(t)&&(e="color:#ea4fe5"),l.push(e),l.push(""),"%c"+t+"%c"})),l.unshift(a),console[e].apply(console,l)}catch(s){return console[e](n+"Not pretty printing object ",t),!0}else console[e](n+"Not pretty printing object ",t)}catch(e){window.console&&console.log&&(console.log(n+"ERROR::"+e),console.log(n+""+t))}}},sj.utils.fixedWidth=function(t,e,s){void 0===s&&(s="0");for(var i=""+t;i.length<e;)i=s+i;return i},sj.utils.loader=function(t){var e,s,i,n;if(e=document,"iframe"===t.type)(s=e.createElement("iframe")).setAttribute("height","1"),s.setAttribute("width","1"),s.setAttribute("style","display:none"),s.setAttribute("src",t.src);else{if("img"===t.type)return sj.log("Attach img: "+t.src),void((s=new Image).src=t.src);if((s=e.createElement("script")).language="javascript",s.type="text/javascript",s.async=1,s.charset="utf-8",s.src=t.src,t.src.startsWith("http://")||t.src.startsWith("https://")){sj.utils.parseURL(t.src).origin!==window.location.origin&&(s.crossOrigin="anonymous")}}t.id&&(s.id=t.id),"function"==typeof t.cb&&(s.addEventListener?s.addEventListener("load",(function(){t.cb()}),!1):s.onreadystatechange=function(){"complete"!==this.readyState&&"loaded"!==this.readyState||(this.onreadystatechange=null,t.cb())}),n=t.loc||"head",(i=e.getElementsByTagName(n)[0])&&(sj.log("Attach to "+n+": "+t.src),"script"===n?i.parentNode.insertBefore(s,i):i.appendChild(s))},sj.utils.setData=function(t,e,s){sj.data.stjude_data=sj.data.stjude_data||JSON.parse(localStorage.stjude_data||"{}");var i=new Date,n=i.getTime()+18e5;void 0!==s&&(isNaN(s)?sj.log("expiration_in_days argument not set to a number. Going to set this data to expire in 30 minutes!"):n="null"===sj.utils.typeOf(s)?0:i.getTime()+24*s*60*60*1e3),sj.data.stjude_data[t]={},sj.data.stjude_data[t].data=e,n&&(sj.data.stjude_data[t].expires=n),localStorage.stjude_data=JSON.stringify(sj.data.stjude_data)},sj.utils.getData=function(t){return sj.data.stjude_data=sj.data.stjude_data||JSON.parse(localStorage.stjude_data||"{}"),sj.data.stjude_data[t]?sj.data.stjude_data[t].data:void 0},sj.utils.removeExpiredStoredData=function(){sj.data.stjude_data=sj.data.stjude_data||JSON.parse(localStorage.stjude_data||"{}");var t=(new Date).getTime();return Object.keys(sj.data.stjude_data).forEach((function(e){sj.data.stjude_data[e].expires&&t>sj.data.stjude_data[e].expires&&delete sj.data.stjude_data[e]})),localStorage.stjude_data=JSON.stringify(sj.data.stjude_data),!0},sj.utils.merge=function(...t){return t.reduce(((t,e)=>("object"===sj.utils.typeOf(e)&&Object.keys(e).forEach((s=>{const i=t[s],n=e[s];"array"===sj.utils.typeOf(i)&&"array"===sj.utils.typeOf(n)?t[s]=i.concat(...n):"object"===sj.utils.typeOf(i)&&"object"===sj.utils.typeOf(n)?t[s]=sj.utils.merge(i,n):t[s]=n})),t)),{})},sj.utils.checkIfLocalStorageAvailable=function(){if(void 0!==sj.data.isLocalStorageAvailable)return sj.data.isLocalStorageAvailable;try{var t="test",e="check_for_ls_access";localStorage.setItem(e,t);var s=localStorage.getItem(e);return localStorage.removeItem(e),sj.data.isLocalStorageAvailable=s===t,s===t}catch(t){return sj.data.isLocalStorageAvailable=!1,!1}},sj.utils.checkIfSessionStorageAvailable=function(){if(void 0!==sj.data.isSessionStorageAvailable)return sj.data.isSessionStorageAvailable;try{var t="test",e="check_for_ss_access";sessionStorage.setItem(e,t);var s=sessionStorage.getItem(e);return sessionStorage.removeItem(e),sj.data.isSessionStorageAvailable=s===t,s===t}catch(t){return sj.data.isSessionStorageAvailable=!1,!1}},sj.utils.prepSettings=function(t,e){return"string"===sj.utils.typeOf(t)&&(t={selector:t}),t.context=t.context||document,e&&(t.callback=e),t},sj.utils.onVisible=function(t,e){let s={root:(t=sj.utils.prepSettings(t,e)).root||t.context||null,rootMargin:t.rootMargin||"0px",threshold:t.threshold||1};t.observerOptions=s;let i=new IntersectionObserver((function(e,s){e.forEach((function(e){if(1===e.intersectionRatio){let i=window.getComputedStyle(e.target);"hidden"!==i.visibility&&"none"!==i.display&&(t.callback&&t.callback(e.target,t),s.unobserve(e.target))}}))}),s);if("htmlcollection"===sj.utils.typeOf(t.selector)||"array"===sj.utils.typeOf(t.selector)||"nodelist"===sj.utils.typeOf(t.selector))[...t.selector].forEach((function(t){i.observe(t)}));else if(0===sj.utils.typeOf(t.selector).indexOf("html"))i.observe(t.selector);else if("string"===sj.utils.typeOf(t.selector)){if(""==t.selector)return"";sj.utils.find(t.selector,t.context).forEach((function(t){i.observe(t)}))}},sj.utils.observe=function(t,e){(t=sj.utils.prepSettings(t,e)).observe=t.observe||{childList:!0,subtree:!0};let s=new MutationObserver(t.callback);return s.observe(t.context,t.observe),s},sj.utils.waitForElement=function(t,e){function s(){let e=t.context.querySelector(t.selector);if(e){if(t.callback)if("IFRAME"===e.nodeName){let s=sj.utils.typeOf(e.contentDocument.body),i=e.contentDocument.readyState,n=e.contentDocument.body?e.contentDocument.body.innerHTML:"";"htmlbodyelement"===s&&"complete"===i&&n.length?(_satellite.logger.log("iFrame already loaded and callback called"),t.callback(e,t)):(_satellite.logger.log("iFrame onload handler added"),e.addEventListener("load",(function(){_satellite.logger.log("iFrame loaded and callback called"),t.callback(e,t)})))}else t.callback(e,t);return!0}return!1}if(t=sj.utils.prepSettings(t,e),s())return!0;{let e=sj.utils.observe({context:t.context},(()=>{if(s())return e.disconnect(),!0}));return!1}},sj.utils.addEventListener=function(){var t,e,s,i;if(4===arguments.length)t=arguments[0],e=arguments[1],s=arguments[2],i=arguments[3];else{if(3!==arguments.length)return sj.log("Invalid number of arguments provided for sj.utils.addEventListener"),!1;t=arguments[0],e=arguments[1],i=arguments[2]}if("htmlcollection"===sj.utils.typeOf(t)||"array"===sj.utils.typeOf(t)||"nodelist"===sj.utils.typeOf(t))[...t].forEach((function(t){sj.utils.addEventListener(t,e,s,i)}));else if(0===sj.utils.typeOf(t).indexOf("html")||"window"===sj.utils.typeOf(t)){if(!(e.indexOf(" ")>-1)){let n=e+"_"+t.toString()+(s?
t.dispatchEvent(new CustomEvent(e,{bubbles:!0,detail:s})):"string"==typeof e&&"function"==typeof t[e]?t[e]():t.dispatchEvent("string"==typeof e?new Event(e,{bubbles:!0}):e);else if("string"===sj.utils.typeOf(t)){if(""==t)return"";document.querySelectorAll(t).forEach((function(t){sj.utils.triggerEvent(t,e,s)}))}},sj.utils.attr=function(){var t,e,s;if(3===arguments.length)t=arguments[0],e=arguments[1],s=arguments[2];else{if(2!==arguments.length)return sj.log("Invalid number of arguments provided for sj.utils.attr"),!1;t=arguments[0],e=arguments[1]}if("object"!==sj.utils.typeOf(s)&&"array"!==sj.utils.typeOf(s)||(s=JSON.stringify(s)),"htmlcollection"===sj.utils.typeOf(t)||"array"===sj.utils.typeOf(t)||"nodelist"===sj.utils.typeOf(t)){let i="";return[...t].forEach((function(t){i+=sj.utils.attr(t,e,s)})),i}if(0===sj.utils.typeOf(t).indexOf("html"))return void 0!==s?t.setAttribute(e,s):t.getAttribute(e)||"";if("string"===sj.utils.typeOf(t)){if(""==t)return"";let i="";return document.querySelectorAll(t).forEach((function(t){i+=sj.utils.attr(t,e,s)})),i}},sj.utils.addClass=function(t,e){sj.utils.updateClass(t,"add",e)},sj.utils.removeClass=function(t,e){sj.utils.updateClass(t,"remove",e)},sj.utils.updateClass=function(){var t,e,s;if(3!==arguments.length)return sj.log("Invalid number of arguments provided for sj.utils.updateClass"),!1;if(t=arguments[0],e=arguments[1],s=arguments[2],"htmlcollection"===sj.utils.typeOf(t)||"array"===sj.utils.typeOf(t)||"nodelist"===sj.utils.typeOf(t))[...t].forEach((function(t){sj.utils.updateClass(t,e,s)}));else{if(0===sj.utils.typeOf(t).indexOf("html"))return t.classList[e](s);if("string"===sj.utils.typeOf(t)){if(""==t)return"";document.querySelectorAll(t).forEach((function(t){sj.utils.updateClass(t,e,s)}))}}},sj.utils.show=function(t){sj.utils.updateDisplayStyle(t,"show")},sj.utils.hide=function(t){sj.utils.updateDisplayStyle(t,"hide")},sj.utils.updateDisplayStyle=function(){var t,e;if(2!==arguments.length)return sj.log("Invalid number of arguments provided for sj.utils.updateDisplayStyle"),!1;if(t=arguments[0],e=arguments[1],"htmlcollection"===sj.utils.typeOf(t)||"array"===sj.utils.typeOf(t)||"nodelist"===sj.utils.typeOf(t))[...t].forEach((function(t){sj.utils.updateDisplayStyle(t,e)}));else if(0===sj.utils.typeOf(t).indexOf("html"))"show"===e?t.style.display="":"hide"===e&&(t.style.display="none");else if("string"===sj.utils.typeOf(t)){if(""==t)return"";document.querySelectorAll(t).forEach((function(t){sj.utils.updateDisplayStyle(t,e)}))}},sj.utils.isVisible=function(t){if("htmlcollection"===sj.utils.typeOf(t)||"array"===sj.utils.typeOf(t)||"nodelist"===sj.utils.typeOf(t)){let e=[];return[...t].forEach((function(t){e.push(sj.utils.isVisible(t))})),e}if(0===sj.utils.typeOf(t).indexOf("html")){let e=window.getComputedStyle(t);return"hidden"!==e.visibility&&"none"!==e.display&&!!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)}if("string"===sj.utils.typeOf(t)){if(""==t)return!1;let e=[];return document.querySelectorAll(t).forEach((function(t){e.push(sj.utils.isVisible(t))})),!!e.length&&(1===e.length?e[0]:e)}},sj.utils.getVisibleElements=function(t){if("htmlcollection"===sj.utils.typeOf(t)||"array"===sj.utils.typeOf(t)||"nodelist"===sj.utils.typeOf(t)){let e=[];return[...t].forEach((function(t){sj.utils.isVisible(t)&&e.push(t)})),e}if(0===sj.utils.typeOf(t).indexOf("html"))return!!sj.utils.isVisible(t)&&t;if("string"===sj.utils.typeOf(t)){if(""==t)return"";let e=[];return document.querySelectorAll(t).forEach((function(t){sj.utils.isVisible(t)&&e.push(t)})),e}},sj.utils.append=function(){var t,e=[...arguments];if(!(arguments.length>1))return sj.log("Invalid number of arguments provided for sj.utils.append"),!1;if(t=arguments[0],e.shift(),"htmlcollection"===sj.utils.typeOf(t))[...t].forEach((function(t){sj.utils.append(t,e)}));else if(0===sj.utils.typeOf(t).indexOf("html"))e.forEach((function(e){"htmlcollection"===sj.utils.typeOf(e)||"nodelist"===sj.utils.typeOf(e)?[...e].forEach((function(e){e&&t.append(e)})):"array"===sj.utils.typeOf(e)?[...e].forEach((function(e){e&&sj.utils.append(t,e)})):e&&t.append(e)}));else if("string"===sj.utils.typeOf(t)){if(""==t)return"";document.querySelectorAll(t).forEach((function(t){sj.utils.append(t,e)}))}},sj.utils.remove=function(t){if("htmlcollection"===sj.utils.typeOf(t)||"array"===sj.utils.typeOf(t)||"nodelist"===sj.utils.typeOf(t))[...t].forEach((function(t){sj.utils.remove(t)}));else if(0===sj.utils.typeOf(t).indexOf("html"))t.remove();else if("string"===sj.utils.typeOf(t)){if(""==t)return"";document.querySelectorAll(t).forEach((function(t){sj.utils.remove(t)}))}},sj.utils.generateElements=function(t){const e=document.createElement("template");return e.innerHTML=t.trim(),[...e.content.children]},sj.utils.find=function(t,e){e||(e=document);const s=new Set;return function t(e,i){e.querySelectorAll(i).forEach((t=>s.add(t)));const n=e.querySelectorAll("*");for(const e of n)e.shadowRoot&&t(e.shadowRoot,i)}(e,t),Array.from(s)},sj.utils.appendString=function(t,e){let s=t?sj.utils.cleanArray(t.split(",")):[];return-1==s.indexOf(e)&&s.push(e),s.join()},sj.utils.addEvent=function(t){return!!window.s&&(0!=t.indexOf("event")&&(t="event"+t),s.events=sj.utils.appendString(s.events,t),"None"===s.linkTrackEvents&&(s.linkTrackEvents=""),s.linkTrackEvents=sj.utils.appendString(s.linkTrackEvents,t),s.linkTrackVars=sj.utils.appendString(s.linkTrackVars,"events"),!0)},sj.utils.addLinkTrackVar=function(t){return!!window.s&&("None"===s.linkTrackVars&&(s.linkTrackVars=""),s.linkTrackVars=sj.utils.appendString(s.linkTrackVars,t),!0)},sj.utils.isKnownBot=function(t){t||(t=navigator.userAgent);return/bot|spider|crawler|008|ABACHO|Accoona|AnyApex|Arachmo|Baidu|Become|Beslist|BillyBob|Bimbot|bing|Blitz|boitho|Catch|Cerberian|Charlotte|Convera|cosmos|Covario|Datapark|Diamond|Disco|DotBot|EmeraldShield|envolk|Exabot|FAST|FDSE|FindLinks|Furl|Fyber|Gais|Galaxy|genie|Giga|Girafa|Google|Guruji|HappyFun|Holmes|htdig|iask|ia_archiver|iCCrawler|ichiro|igde|IRLbot|IssueCrawler|Jyxo|Koepa|Larbin|LDSpider|Lexxe|Linguee|LinkWalker|lmspider|mabontland|magpie|masscan|MJ12|Mnogosearch|mogimogi|Mojeek|Moreover|Morning Paper|msn|MSR|mxbot|NetResearchServer|NetSeer|NewsGator|NG-Search|nicebot|noxtrum|Nusearch|Nutch|Nymesis|obot|oegp|omgili|OmniExplorer|Orbiter|PageBites|Peew|poly|Pompos|PostPost|Psbot|PycURL|Radian6|RAMPy|Rufus|SandCrawler|SBIder|ScoutJet|Scrubby|SearchSight|Seekbot|semanticdiscovery|Sensis|SEOChat|Seznam|Shim|ShopWiki|Shoula|silk|Sitebot|Snappy|sogou|Soso|Speedy|Sqworm|StackRambler|suggy|Survey|Synoo|Teoma|Terrawiz|TheSu|TinEye|Turnitin|TweetedTimes|Twenga|updated|Urlfile|Vagabondo|Voila|Vortex|voyager|webcollage|Websquash|wf84|WoFindeIch|Womlpe|Xaldon|yacy|Yahoo|Yandex|Yasakli|Yeti|Yodao|yoogli|Zao|Zeal|zspider|ZyBorg|AhrefsBot|PetalBot|SemrushBot|okHttp|HeadlessChrome|Nessus|Bytespider|facebookexternalhit/i.test(t)},sj.utils.getBeaconData=function(t){if("object"!=typeof t||null===t)return{};const e={},s=["pageName","pageURL","channel","server","pageType","campaign","purchaseID","transactionID","state","zip","referrer","events","products","contextData"];for(let t=1;t<=250;t++)s.push(`eVar${t}`);for(let t=1;t<=75;t++)s.push(`prop${t}`);for(let t=1;t<=5;t++)s.push(`hier${t}`);for(let t=1;t<=3;t++)s.push(`list${t}`);for(const i of s)t.hasOwnProperty(i)&&null!=t[i]&&""!==t[i]&&(e[i]=t[i]);return t.account&&(e.account=t.account),t.contextData&&(e.contextData=t.contextData),e},sj.utils.registerDoPluginCallback=function(t){"function"==typeof t?sj.data.doPluginsCallbacks.push(t):_satellite.logger.error("Registering doPlugin callback failed: The provided callback is not a function.")},sj.utils.removeExpiredStoredData(),sj.utils.when((()=>"object"==typeof window.stjude),(()=>{stjude.utils=sj.utils,stjude.data=sj.data,stjude.log=sj.log})); });_satellite["_runScript2"](function(event, target, Promise) { window.sj = window.sj || {}; sj.data = sj.data || {}; sj.utils = sj.utils || {}; sj.data.webVitals = sj.data.webVita
.activationStart??0},c=(e,n=-1)=>{const i=s();let o="navigate";t>=0?o="back-forward-cache":i&&(document.prerendering||r()>0?o="prerender":document.wasDiscarded?o="restore":i.type&&(o=i.type.replace(/_/g,"-")));return{name:e,value:n,rating:"good",delta:0,entries:[],id:`v5-${Date.now()}-${Math.floor(8999999999999*Math.random())+1e12}`,navigationType:o}},a=new WeakMap;function d(e,t){return a.get(e)||a.set(e,new t),a.get(e)}class h{t;i=0;o=[];h(e){if(e.hadRecentInput)return;const t=this.o[0],n=this.o.at(-1);this.i&&t&&n&&e.startTime-n.startTime<1e3&&e.startTime-t.startTime<5e3?(this.i+=e.value,this.o.push(e)):(this.i=e.value,this.o=[e]),this.t?.(e)}}const f=(e,t,n={})=>{try{if(PerformanceObserver.supportedEntryTypes.includes(e)){const i=new PerformanceObserver((e=>{Promise.resolve().then((()=>{t(e.getEntries())}))}));return i.observe({type:e,buffered:!0,...n}),i}}catch{}},u=e=>{let t=!1;return()=>{t||(e(),t=!0)}};let l=-1;const m=()=>"hidden"!==document.visibilityState||document.prerendering?1/0:0,g=e=>{"hidden"===document.visibilityState&&l>-1&&(l="visibilitychange"===e.type?e.timeStamp:0,p())},v=()=>{addEventListener("visibilitychange",g,!0),addEventListener("prerenderingchange",g,!0)},p=()=>{removeEventListener("visibilitychange",g,!0),removeEventListener("prerenderingchange",g,!0)},y=()=>{if(l<0){const e=r(),t=document.prerendering?void 0:globalThis.performance.getEntriesByType("visibility-state").filter((t=>"hidden"===t.name&&t.startTime>e))[0]?.startTime;l=t??m(),v(),n((()=>{setTimeout((()=>{l=m(),v()}))}))}return{get firstHiddenTime(){return l}}},b=e=>{document.prerendering?addEventListener("prerenderingchange",(()=>e()),!0):e()},P=[1800,3e3],T=(e,t={})=>{b((()=>{const s=y();let a,d=c("FCP");const h=f("paint",(e=>{for(const t of e)"first-contentful-paint"===t.name&&(h.disconnect(),t.startTime<s.firstHiddenTime&&(d.value=Math.max(t.startTime-r(),0),d.entries.push(t),a(!0)))}));h&&(a=i(e,d,P,t.reportAllChanges),n((n=>{d=c("FCP"),a=i(e,d,P,t.reportAllChanges),o((()=>{d.value=performance.now()-n.timeStamp,a(!0)}))})))}))},E=[.1,.25];let _=0,L=1/0,M=0;const w=e=>{for(const t of e)t.interactionId&&(L=Math.min(L,t.interactionId),M=Math.max(M,t.interactionId),_=M?(M-L)/7+1:0)};let C;const I=()=>C?_:performance.interactionCount??0,F=()=>{"interactionCount"in performance||C||(C=f("event",w,{type:"event",buffered:!0,durationThreshold:0}))};let k=0;class A{u=[];l=new Map;m;v;p(){k=I(),this.u.length=0,this.l.clear()}P(){const e=Math.min(this.u.length-1,Math.floor((I()-k)/50));return this.u[e]}h(e){if(this.m?.(e),!e.interactionId&&"first-input"!==e.entryType)return;const t=this.u.at(-1);let n=this.l.get(e.interactionId);if(n||this.u.length<10||e.duration>t.T){if(n?e.duration>n.T?(n.entries=[e],n.T=e.duration):e.duration===n.T&&e.startTime===n.entries[0].startTime&&n.entries.push(e):(n={id:e.interactionId,entries:[e],T:e.duration},this.l.set(n.id,n),this.u.push(n)),this.u.sort(((e,t)=>t.T-e.T)),this.u.length>10){const e=this.u.splice(10);for(const t of e)this.l.delete(t.id)}this.v?.(n)}}}const B=e=>{const t=globalThis.requestIdleCallback||setTimeout;"hidden"===document.visibilityState?e():(t(e=u(e)),document.addEventListener("visibilitychange",e,{once:!0}))},N=[200,500];class S{m;h(e){this.m?.(e)}}const q=[2500,4e3],O=[800,1800],V=e=>{document.prerendering?b((()=>V(e))):"complete"!==document.readyState?addEventListener("load",(()=>V(e)),!0):setTimeout(e)};return e.CLSThresholds=E,e.FCPThresholds=P,e.INPThresholds=N,e.LCPThresholds=q,e.TTFBThresholds=O,e.onCLS=(e,t={})=>{T(u((()=>{let s,r=c("CLS",0);const a=d(t,h),u=e=>{for(const t of e)a.h(t);a.i>r.value&&(r.value=a.i,r.entries=a.o,s())},l=f("layout-shift",u);l&&(s=i(e,r,E,t.reportAllChanges),document.addEventListener("visibilitychange",(()=>{"hidden"===document.visibilityState&&(u(l.takeRecords()),s(!0))})),n((()=>{a.i=0,r=c("CLS",0),s=i(e,r,E,t.reportAllChanges),o((()=>s()))})),setTimeout(s))})))},e.onFCP=T,e.onINP=(e,t={})=>{globalThis.PerformanceEventTiming&&"interactionId"in PerformanceEventTiming.prototype&&b((()=>{F();let o,s=c("INP");const r=d(t,A),a=e=>{B((()=>{for(const t of e)r.h(t);const t=r.P();t&&t.T!==s.value&&(s.value=t.T,s.entries=t.entries,o())}))},h=f("event",a,{durationThreshold:t.durationThreshold??40});o=i(e,s,N,t.reportAllChanges),h&&(h.observe({type:"first-input",buffered:!0}),document.addEventListener("visibilitychange",(()=>{"hidden"===document.visibilityState&&(a(h.takeRecords()),o(!0))})),n((()=>{r.p(),s=c("INP"),o=i(e,s,N,t.reportAllChanges)})))}))},e.onLCP=(e,t={})=>{b((()=>{const s=y();let a,h=c("LCP");const l=d(t,S),m=e=>{t.reportAllChanges||(e=e.slice(-1));for(const t of e)l.h(t),t.startTime<s.firstHiddenTime&&(h.value=Math.max(t.startTime-r(),0),h.entries=[t],a())},g=f("largest-contentful-paint",m);if(g){a=i(e,h,q,t.reportAllChanges);const s=u((()=>{m(g.takeRecords()),g.disconnect(),a(!0)}));for(const e of["keydown","click","visibilitychange"])addEventListener(e,(()=>B(s)),{capture:!0,once:!0});n((n=>{h=c("LCP"),a=i(e,h,q,t.reportAllChanges),o((()=>{h.value=performance.now()-n.timeStamp,a(!0)}))}))}}))},e.onTTFB=(e,t={})=>{let o=c("TTFB"),a=i(e,o,O,t.reportAllChanges);V((()=>{const d=s();d&&(o.value=Math.max(d.responseStart-r(),0),o.entries=[d],a(!0),n((()=>{o=c("TTFB",0),a=i(e,o,O,t.reportAllChanges),a(!0)})))}))},e}({}); sj.utils.webVitals.storeMetric = function storeWebVitalMetric(metric) { if (!metric || !metric.name) { _satellite.logger.log('Web Vitals: Received an invalid CWV metric object.'); return; } _satellite.logger.log('Web Vitals: Metric Received: ' + metric.name + ', Value: ' + metric.value); sj.data.webVitals[metric.name] = { name: metric.name, value: metric.value, id: metric.id, rating: metric.rating, navigationType: metric.navigationType, attribution: (metric.attribution ? { ...metric.attribution } : {}) }; // _satellite.logger.log('sj.data.webVitals.' + metric.name + ' updated: ' + JSON.stringify(sj.data.webVitals[metric.name])); } sj.utils.webVitals.recordTTIMetric = function recordTTIMetric(callSource) { // _satellite.logger.log('Web Vitals: recordTTIMetric CALLED from: ' + callSource); const navigationEntries = performance.getEntriesByType('navigation'); if (navigationEntries.length > 0) { const navEntry = navigationEntries[0]; const dclTime = navEntry.domContentLoadedEventEnd; // _satellite.logger.log('Web Vitals: recordTTIMetric - current domContentLoadedEventEnd: ' + dclTime + ' (from ' + callSource + ')'); if (dclTime > 0) { // DOMContentLoaded has completed // Check if already stored or if the new value is different if (!sj.data.webVitals.TTI || sj.data.webVitals.TTI.value !== dclTime) { sj.data.webVitals.TTI = { name: "TTI", // Using TTI as per your function, derived from DCL value: dclTime }; _satellite.logger.log('Web Vitals: Metric CAPTURED: TTI, Value: ' + dclTime + ' (from ' + callSource + ')'); } else { _satellite.logger.log('Web Vitals: recordTTIMetric - TTI already stored with same value. Current: ' + sj.data.webVitals.TTI.value + ', New: ' + dclTime + ' (from ' + callSource + ')'); } } else { _satellite.logger.log('Web Vitals: recordTTIMetric - domContentLoadedEventEnd is 0. Cannot record TTI yet. (from ' + callSource + ')'); } } else { _satellite.logger.log('Web Vitals: recordTTIMetric - No navigation entries found. (from ' + callSource + ')'); } }; sj.utils.webVitals.captureNavigationAndPageTimings = function captureNavigationAndPageTimings() { try { // Initial attempt for TTFB_Doc and early PageLoadTime, and an early call for TTI setTimeout(function() { // _satellite.logger.log('Web Vitals: captureNavigationAndPageTimings - initial setTimeout(0) block executing.'); const navigationEntries = performance.getEntriesByType('navigation'); if (navigationEntries.length > 0) { const navEntry = navigationEntries[0]; if (navEntry.responseStart > 0 && !sj.data.webVitals.TTFB_Doc) { sj.data.webVitals.TTFB_Doc = { name: "TTFB_Doc", value: navEntry.responseStart }; _satellite.logger.log('Web Vitals: Metric Captured: TTFB_Doc, Value: ' + navEntry.respo
Last updated: Jun 5, 2026, 07:53:41 PM
We'll email you when races match your filters. No spam — only what fits your goals.
On your marks
Loading race details…