// source --> https://www.controlsystems.net/wp-content/plugins/burst-statistics/assets/js/timeme/timeme.min.js?ver=1780678289 
(()=>{var e,t;e=this,t=()=>{let e={startStopTimes:{},idleTimeoutMs:3e4,currentIdleTimeMs:0,checkIdleStateRateMs:250,isUserCurrentlyOnPage:!0,isUserCurrentlyIdle:!1,currentPageName:"default-page-name",timeElapsedCallbacks:[],userLeftCallbacks:[],userReturnCallbacks:[],trackTimeOnElement:t=>{let s=document.getElementById(t);s&&(s.addEventListener("mouseover",(()=>{e.startTimer(t)})),s.addEventListener("mousemove",(()=>{e.startTimer(t)})),s.addEventListener("mouseleave",(()=>{e.stopTimer(t)})),s.addEventListener("keypress",(()=>{e.startTimer(t)})),s.addEventListener("focus",(()=>{e.startTimer(t)})))},getTimeOnElementInSeconds:t=>{let s=e.getTimeOnPageInSeconds(t);return s||0},startTimer:(t,s)=>{if(t||(t=e.currentPageName),void 0===e.startStopTimes[t])e.startStopTimes[t]=[];else{let s=e.startStopTimes[t],n=s[s.length-1];if(void 0!==n&&void 0===n.stopTime)return}e.startStopTimes[t].push({startTime:s||new Date,stopTime:void 0})},stopAllTimers:()=>{let t=Object.keys(e.startStopTimes);for(let s=0;s<t.length;s++)e.stopTimer(t[s])},stopTimer:(t,s)=>{t||(t=e.currentPageName);let n=e.startStopTimes[t];void 0!==n&&0!==n.length&&void 0===n[n.length-1].stopTime&&(n[n.length-1].stopTime=s||new Date)},getTimeOnCurrentPageInSeconds:()=>e.getTimeOnPageInSeconds(e.currentPageName),getTimeOnPageInSeconds:t=>{let s=e.getTimeOnPageInMilliseconds(t);return void 0===s?void 0:s/1e3},getTimeOnCurrentPageInMilliseconds:()=>e.getTimeOnPageInMilliseconds(e.currentPageName),getTimeOnPageInMilliseconds:t=>{let s=0,n=e.startStopTimes[t];if(void 0===n)return;let i=0;for(let e=0;e<n.length;e++){let t=n[e].startTime,s=n[e].stopTime;void 0===s&&(s=new Date),i+=s-t}return s=Number(i),s},getTimeOnAllPagesInSeconds:()=>{let t=[],s=Object.keys(e.startStopTimes);for(let n=0;n<s.length;n++){let i=s[n],r=e.getTimeOnPageInSeconds(i);t.push({pageName:i,timeOnPage:r})}return t},setIdleDurationInSeconds:t=>{let s=parseFloat(t);if(!1!==isNaN(s))throw{name:"InvalidDurationException",message:"An invalid duration time ("+t+") was provided."};e.idleTimeoutMs=1e3*t},setCurrentPageName:t=>{e.currentPageName=t},resetRecordedPageTime:t=>{delete e.startStopTimes[t]},resetAllRecordedPageTimes:()=>{let t=Object.keys(e.startStopTimes);for(let s=0;s<t.length;s++)e.resetRecordedPageTime(t[s])},userActivityDetected:()=>{e.isUserCurrentlyIdle&&e.triggerUserHasReturned(),e.resetIdleCountdown()},resetIdleCountdown:()=>{e.isUserCurrentlyIdle=!1,e.currentIdleTimeMs=0},callWhenUserLeaves:(t,s)=>{e.userLeftCallbacks.push({callback:t,numberOfTimesToInvoke:s})},callWhenUserReturns:(t,s)=>{e.userReturnCallbacks.push({callback:t,numberOfTimesToInvoke:s})},triggerUserHasReturned:()=>{if(!e.isUserCurrentlyOnPage){e.isUserCurrentlyOnPage=!0,e.resetIdleCountdown();for(let t=0;t<e.userReturnCallbacks.length;t++){let s=e.userReturnCallbacks[t],n=s.numberOfTimesToInvoke;(isNaN(n)||void 0===n||n>0)&&(s.numberOfTimesToInvoke-=1,s.callback())}}e.startTimer()},triggerUserHasLeftPageOrGoneIdle:()=>{if(e.isUserCurrentlyOnPage){e.isUserCurrentlyOnPage=!1;for(let t=0;t<e.userLeftCallbacks.length;t++){let s=e.userLeftCallbacks[t],n=s.numberOfTimesToInvoke;(isNaN(n)||void 0===n||n>0)&&(s.numberOfTimesToInvoke-=1,s.callback())}}e.stopAllTimers()},callAfterTimeElapsedInSeconds:(t,s)=>{e.timeElapsedCallbacks.push({timeInSeconds:t,callback:s,pending:!0})},checkIdleState:()=>{for(let t=0;t<e.timeElapsedCallbacks.length;t++)e.timeElapsedCallbacks[t].pending&&e.getTimeOnCurrentPageInSeconds()>e.timeElapsedCallbacks[t].timeInSeconds&&(e.timeElapsedCallbacks[t].callback(),e.timeElapsedCallbacks[t].pending=!1);!1===e.isUserCurrentlyIdle&&e.currentIdleTimeMs>e.idleTimeoutMs?(e.isUserCurrentlyIdle=!0,e.triggerUserHasLeftPageOrGoneIdle()):e.currentIdleTimeMs+=e.checkIdleStateRateMs},visibilityChangeEventName:void 0,hiddenPropName:void 0,listenForVisibilityEvents:(t,s)=>{t&&e.listenForUserLeavesOrReturnsEvents(),s&&e.listForIdleEvents()},listenForUserLeavesOrReturnsEvents:()=>{void 0!==document.hidden?(e.hiddenPropName="hidden",e.visibilityChangeEventName="visibilitychange"):void 0!==document.mozHidden?(e.hiddenPropName="mozHidden",e.visibilityChangeEventName="mozvisibilitychange"):void 0!==document.msHidden?(e.hiddenPropName="msHidden",e.visibilityChangeEventName="msvisibilitychange"):void 0!==document.webkitHidden&&(e.hiddenPropName="webkitHidden",e.visibilityChangeEventName="webkitvisibilitychange"),document.addEventListener(e.visibilityChangeEventName,(()=>{document[e.hiddenPropName]?e.triggerUserHasLeftPageOrGoneIdle():e.triggerUserHasReturned()}),!1),window.addEventListener("blur",(()=>{e.triggerUserHasLeftPageOrGoneIdle()})),window.addEventListener("focus",(()=>{e.triggerUserHasReturned()}))},listForIdleEvents:()=>{document.addEventListener("mousemove",(()=>{e.userActivityDetected()})),document.addEventListener("keyup",(()=>{e.userActivityDetected()})),document.addEventListener("touchstart",(()=>{e.userActivityDetected()})),window.addEventListener("scroll",(()=>{e.userActivityDetected()})),setInterval((()=>{!0!==e.isUserCurrentlyIdle&&e.checkIdleState()}),e.checkIdleStateRateMs)},websocket:void 0,websocketHost:void 0,setUpWebsocket:t=>{if(window.WebSocket&&t){let s=t.websocketHost;try{e.websocket=new WebSocket(s),window.onbeforeunload=()=>{e.sendCurrentTime(t.appId)},e.websocket.onopen=()=>{e.sendInitWsRequest(t.appId)},e.websocket.onerror=e=>{console&&console.log("Error occurred in websocket connection: "+e)},e.websocket.onmessage=e=>{console&&console.log(e.data)}}catch(e){console&&console.error("Failed to connect to websocket host.  Error:"+e)}}},websocketSend:t=>{e.websocket.send(JSON.stringify(t))},sendCurrentTime:t=>{let s={type:"INSERT_TIME",appId:t,timeOnPageMs:e.getTimeOnCurrentPageInMilliseconds(),pageName:e.currentPageName};e.websocketSend(s)},sendInitWsRequest:t=>{let s={type:"INIT",appId:t};e.websocketSend(s)},initialize:t=>{let s,n,i=e.idleTimeoutMs||30,r=e.currentPageName||"default-page-name",a=!0,o=!0;t&&(i=t.idleTimeoutInSeconds||i,r=t.currentPageName||r,s=t.websocketOptions,n=t.initialStartTime,!1===t.trackWhenUserLeavesPage&&(a=!1),!1===t.trackWhenUserGoesIdle&&(o=!1)),e.setIdleDurationInSeconds(i),e.setCurrentPageName(r),e.setUpWebsocket(s),e.listenForVisibilityEvents(a,o),e.startTimer(void 0,n)}};return e},"undefined"!=typeof module&&module.exports?module.exports=t():"function"==typeof define&&define.amd?define([],(()=>e.TimeMe=t())):e.TimeMe=t()}).call(this),TimeMe.initialize({idleTimeoutInSeconds:30});
// source --> https://www.controlsystems.net/wp-content/uploads/burst/js/burst.min.js?ver=1781556659 
let burst = {"tracking":{"isInitialHit":true,"lastUpdateTimestamp":0,"beacon_url":"https:\/\/www.controlsystems.net\/wp-content\/plugins\/burst-statistics\/endpoint.php","ajaxUrl":"https:\/\/www.controlsystems.net\/wp-admin\/admin-ajax.php"},"options":{"cookieless":0,"pageUrl":false,"beacon_enabled":1,"do_not_track":0,"enable_turbo_mode":0,"track_url_change":0,"track_external_links":1,"cookie_retention_days":30,"debug":0},"goals":{"completed":[],"scriptUrl":"https:\/\/www.controlsystems.net\/wp-content\/plugins\/burst-statistics\/assets\/js\/build\/burst-goals.js?v=1780678289","active":[]},"cache":{"uid":null,"fingerprint":null,"isUserAgent":null,"isDoNotTrack":null,"useCookies":null}};burst.tracking=burst.tracking||{isInitialHit:!0,lastUpdateTimestamp:0,ajaxUrl:""},burst.should_load_ecommerce=burst.should_load_ecommerce||!1,burst.cache=burst.cache||{uid:null,fingerprint:null,isUserAgent:null,isDoNotTrack:null,useCookies:null},burst.goals?.active&&(burst.goals.active=burst.goals.active.map(t=>({...t,ID:parseInt(t.ID,10)}))),burst.goals?.completed&&(burst.goals.completed=burst.goals.completed.map(t=>parseInt(t,10)));let pageIsRendered=new Promise(t=>{document.prerendering?document.addEventListener("prerenderingchange",t,{once:!0}):t()});if(burst.goals?.active?.some(t=>!t.page_url||""===t.page_url||t.page_url===burst.options.pageUrl)){let t=document.createElement("script");t.async=!0,t.src=burst.goals.scriptUrl,document.head.appendChild(t)}let burst_get_cookie=t=>{var e,r=t+"=";for(e of document.cookie.split(";"))if(0===(e=e.trim()).indexOf(r))return Promise.resolve(e.substring(r.length));return Promise.reject(!1)},burst_set_cookie=(t,e)=>{let r="";var a="https:"===location.protocol?";secure":"",s=new Date,s=(s.setTime(s.getTime()+864e5*burst.options.cookie_retention_days),";expires="+s.toGMTString());r=r&&";domain="+r,document.cookie=""+t+`=${e};SameSite=Strict${a}${s}${r};path=/`},burst_use_cookies=()=>{var t;return null!==burst.cache.useCookies?burst.cache.useCookies:(t=navigator.cookieEnabled&&!burst.options.cookieless,burst.cache.useCookies=t)};function burst_enable_cookies(){burst.options.cookieless=!1,burst_use_cookies()&&burst_uid().then(t=>burst_set_cookie("burst_uid",t))}let burst_uid=()=>null!==burst.cache.uid?Promise.resolve(burst.cache.uid):burst_get_cookie("burst_uid").then(t=>burst.cache.uid=t).catch(()=>{var t=burst_generate_uid();return burst_set_cookie("burst_uid",t),burst.cache.uid=t}),burst_generate_uid=()=>Array.from({length:32},()=>Math.floor(16*Math.random()).toString(16)).join(""),burst_fingerprint=()=>null!==burst.cache.fingerprint?Promise.resolve(burst.cache.fingerprint):new ThumbmarkJS.Thumbmark({exclude:[],permissions_to_check:["geolocation","notifications","camera","microphone","gyroscope","accelerometer","magnetometer","ambient-light-sensor","background-sync","persistent-storage"]}).get().then(t=>{var t=t.thumbmark,e=t+"|"+[screen.availWidth+"x"+screen.availHeight,screen.width+"x"+screen.height,screen.colorDepth,window.devicePixelRatio||1,navigator.hardwareConcurrency||0,navigator.deviceMemory||0,navigator.maxTouchPoints||0,(new Date).getTimezoneOffset(),navigator.cookieEnabled?"1":"0","undefined"!=typeof Storage?"1":"0","undefined"!=typeof indexedDB?"1":"0",navigator.onLine?"1":"0",navigator.languages?navigator.languages.slice(0,3).join(","):navigator.language,navigator.platform,navigator.oscpu||"",navigator.connection&&navigator.connection.effectiveType||"","ontouchstart"in window?"1":"0",void 0!==window.orientation?"1":"0",window.screen.orientation&&window.screen.orientation.type||""].filter(t=>""!==t).join("|");let r=0;for(let t=0;t<e.length;t++){var a=e.charCodeAt(t);r=(r<<5)-r+a,r&=r}t=Math.abs(r).toString(16).padStart(8,"0")+t.substring(8);return burst.cache.fingerprint=t}).catch(t=>(console.error(t),null)),burst_get_time_on_page=()=>{var t;return"undefined"==typeof TimeMe?Promise.resolve(0):(t=TimeMe.getTimeOnCurrentPageInMilliseconds(),TimeMe.resetAllRecordedPageTimes(),TimeMe.initialize({idleTimeoutInSeconds:30}),Promise.resolve(t))},burst_is_user_agent=()=>{var t;return null!==burst.cache.isUserAgent?burst.cache.isUserAgent:(t=/bot|spider|crawl|slurp|mediapartners|applebot|bing|duckduckgo|yandex|baidu|facebook|twitter/i.test(navigator.userAgent),burst.cache.isUserAgent=t)},burst_is_do_not_track=()=>{var t;return null!==burst.cache.isDoNotTrack?burst.cache.isDoNotTrack:burst.options.do_not_track?(t="1"===navigator.doNotTrack||"yes"===navigator.doNotTrack||"1"===navigator.msDoNotTrack||"1"===window.doNotTrack||1===navigator.globalPrivacyControl,burst.cache.isDoNotTrack=t):burst.cache.isDoNotTrack=!1},burst_log_tracking_error=({status:t=0,error:e="",data:r={}})=>{burst.options.debug&&burst.tracking.ajaxUrl&&fetch(burst.tracking.ajaxUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({action:"burst_tracking_error",status:t,error:e,data:r})})},burst_beacon_request=e=>{var t=new Blob([e],{type:"application/json"});burst.options.debug?fetch(burst.tracking.beacon_url,{method:"POST",body:t,keepalive:!0,headers:{"Content-Type":"application/json"}}).then(t=>{t.ok||burst_log_tracking_error({status:0,error:"sendBeacon failed",data:e})}).catch(t=>{burst_log_tracking_error({status:0,error:t?.message||"sendBeacon failed",data:e})}):navigator.sendBeacon(burst.tracking.beacon_url,t)},burst_api_request=t=>{let a=JSON.stringify(t.data||{});return new Promise(r=>{var t;burst.options.beacon_enabled?(burst_beacon_request(a),r({status:200,data:"ok"})):(t=Math.random().toString(36).substring(2,9),wp.apiFetch({path:"/burst/v1/track/?token="+t,keepalive:!0,method:"POST",data:a}).then(t=>{var e=t.status||200;r({status:e,data:t.data||t}),200!==e&&burst_log_tracking_error({status:e,error:"Non-200 status",data:a})}).catch(t=>{r({status:200,data:"ok"}),burst_log_tracking_error({status:0,error:t?.message||"Burst tracking request failed",data:a})}))})};async function burst_update_hit(t=!1,e=!1,r={}){var a;await pageIsRendered,burst_is_user_agent()||burst_is_do_not_track()||(burst.tracking.isInitialHit?burst_track_hit(r):!e&&Date.now()-burst.tracking.lastUpdateTimestamp<300||(document.dispatchEvent(new CustomEvent("burst_before_update_hit",{detail:burst})),[e,a]=await Promise.all([burst_get_time_on_page(),t?Promise.all([burst_uid(),burst_fingerprint()]):(burst_use_cookies()?burst_uid:burst_fingerprint)()]),t={fingerprint:t?a[1]:!burst_use_cookies()&&a,uid:t?a[0]:!!burst_use_cookies()&&a,url:location.href,time_on_page:e,completed_goals:burst.goals.completed,should_load_ecommerce:burst.should_load_ecommerce,...r},(0<e||!1!==t.uid)&&(await burst_api_request({data:t}),burst.tracking.lastUpdateTimestamp=Date.now())))}async function burst_track_hit(e={}){var r=burst.tracking.isInitialHit;if(burst.tracking.isInitialHit=!1,await pageIsRendered,r){if(!(burst_is_user_agent()||burst_is_do_not_track()||Date.now()-burst.tracking.lastUpdateTimestamp<300)){document.dispatchEvent(new CustomEvent("burst_before_track_hit",{detail:burst}));var[r,a]=await Promise.all([burst_get_time_on_page(),(burst_use_cookies()?burst_uid:burst_fingerprint)()]);let t=0;for(;!document.body&&t++<200;)await new Promise(t=>setTimeout(t,2));document.body||console.warn("Burst: missing page_id attribute, not able to resolve body element.");a={uid:!!burst_use_cookies()&&a,fingerprint:!burst_use_cookies()&&a,url:location.href,referrer_url:document.referrer,user_agent:navigator.userAgent||"unknown",device_resolution:window.screen.width*window.devicePixelRatio+"x"+window.screen.height*window.devicePixelRatio,time_on_page:r,completed_goals:burst.goals.completed,page_id:document.body?.dataset?.burst_id??document.body?.dataset?.b_id??0,page_type:document.body?.dataset?.burst_type??document.body?.dataset?.b_type??"",should_load_ecommerce:burst.should_load_ecommerce,...e};document.dispatchEvent(new CustomEvent("burst_track_hit",{detail:a})),await burst_api_request({method:"POST",data:a}),burst.tracking.lastUpdateTimestamp=Date.now()}}else burst_update_hit(!1,!1,e)}function burst_init_events(){let t=()=>{burst.options.track_url_change&&(burst.tracking.isInitialHit=!0,burst_track_hit())};!burst.options.enable_turbo_mode||"loading"!==document.readyState?burst_track_hit():document.addEventListener("load",burst_track_hit),document.addEventListener("visibilitychange",()=>{"hidden"!==document.visibilityState&&"unloaded"!==document.visibilityState||burst_update_hit()}),document.addEventListener("pagehide",()=>burst_update_hit()),document.addEventListener("click",e=>{let r=e.target.closest("a[href]");if(r&&burst.options.track_external_links){var a=(t=>{var e=t?.getAttribute?.("href");if(!e||e.startsWith("#"))return!1;let r;try{r=new URL(t.href,window.location.href)}catch(t){return!1}return!!["http:","https:"].includes(r.protocol)&&r.origin!==window.location.origin&&r.href})(r);if(a){a={external_link_url:a};if(burst.options.beacon_enabled||(i=r,(s=e).defaultPrevented)||0!==s.button||(s.metaKey||s.ctrlKey||s.shiftKey||s.altKey||i.hasAttribute("download")||(s=(i.getAttribute("target")||"").toLowerCase())&&"_self"!==s))burst_update_hit(!1,!0,a);else{var s;e.preventDefault();let t=!1;var i=()=>{t||(t=!0,window.location.assign(r.href))};setTimeout(i,250),burst_update_hit(!1,!0,a).finally(i)}}}},!0),document.addEventListener("burst_fire_hit",()=>burst_track_hit()),document.addEventListener("burst_enable_cookies",()=>{burst_enable_cookies(),burst_update_hit(!0)});let e=history.pushState,r=(history.pushState=function(){e.apply(this,arguments),t()},history.replaceState);history.replaceState=function(){r.apply(this,arguments),t()},window.addEventListener("popstate",t)}document.addEventListener("wp_listen_for_consent_change",t=>{"allow"===t.detail.statistics&&burst_init_events()}),"function"==typeof wp_has_consent&&!wp_has_consent("statistics")||burst_init_events(),window.burst_uid=burst_uid,window.burst_use_cookies=burst_use_cookies,window.burst_fingerprint=burst_fingerprint,window.burst_update_hit=burst_update_hit;