function BOOMR_check_doc_domain(a){var b;if(!a){if(window.parent===window||!document.getElementById("boomr-if-as"))return;if(window.BOOMR&&BOOMR.boomerang_frame&&BOOMR.window)try{BOOMR.boomerang_frame.document.domain!==BOOMR.window.document.domain&&(BOOMR.boomerang_frame.document.domain=BOOMR.window.document.domain)}catch(c){BOOMR.isCrossOriginError(c)||BOOMR.addError(c,"BOOMR_check_doc_domain.domainFix")}a=document.domain}if(-1!==a.indexOf(".")){try{b=window.parent.document;return}catch(c){document.domain=a}try{b=window.parent.document;return}catch(c){a=a.replace(/^[\w\-]+\./,"")}BOOMR_check_doc_domain(a)}}BOOMR_start=(new Date).getTime();BOOMR_check_doc_domain();!function(a){var b,c,d,e,f,g,h,i,j=a;if(a.parent!==a&&document.getElementById("boomr-if-as")&&"script"===document.getElementById("boomr-if-as").nodeName.toLowerCase()){a=a.parent;e=document.getElementById("boomr-if-as").src}d=a.document;a.BOOMR||(a.BOOMR={});BOOMR=a.BOOMR;if(!BOOMR.version){BOOMR.version="1.376.1462309808";BOOMR.window=a;BOOMR.boomerang_frame=j;BOOMR.plugins||(BOOMR.plugins={});!function(){try{void 0!==new a.CustomEvent("CustomEvent")&&(f=function(b,c){return new a.CustomEvent(b,c)})}catch(b){}try{!f&&d.createEvent&&d.createEvent("CustomEvent")&&(f=function(a,b){var c=d.createEvent("CustomEvent");b=b||{cancelable:!1,bubbles:!1};c.initCustomEvent(a,b.bubbles,b.cancelable,b.detail);return c})}catch(b){}!f&&d.createEventObject&&(f=function(a,b){var c=d.createEventObject();c.type=c.propertyName=a;c.detail=b.detail;return c});f||(f=function(){return void 0})}();g=function(a,b,c){function e(){d.dispatchEvent?d.dispatchEvent(g):d.fireEvent&&d.fireEvent("onpropertychange",g)}var g=f(a,{detail:b});g&&(c?BOOMR.setImmediate(e):e())};if("undefined"!=typeof document.hidden){h="visibilityState";i="visibilitychange"}else if("undefined"!=typeof document.mozHidden){h="mozVisibilityState";i="mozvisibilitychange"}else if("undefined"!=typeof document.msHidden){h="msVisibilityState";i="msvisibilitychange"}else if("undefined"!=typeof document.webkitHidden){h="webkitVisibilityState";i="webkitvisibilitychange"}b={beacon_url:location.protocol+"//c.go-mpulse.net/",beacon_type:"AUTO",user_ip:"",autorun:!0,events:{page_ready:[],page_unload:[],before_unload:[],dom_loaded:[],visibility_changed:[],before_beacon:[],onbeacon:[],xhr_load:[],click:[],form_submit:[]},public_events:{before_beacon:"onBeforeBoomerangBeacon",onbeacon:"onBoomerangBeacon",onboomerangloaded:"onBoomerangLoaded"},vars:{},varPriority:{"-1":{},1:{}},errors:{},disabled_plugins:{},xb_handler:function(c){return function(d){var e;d||(d=a.event);d.target?e=d.target:d.srcElement&&(e=d.srcElement);3===e.nodeType&&(e=e.parentNode);e&&"OBJECT"===e.nodeName.toUpperCase()&&"application/x-shockwave-flash"===e.type||b.fireEvent(c,e)}},fireEvent:function(a,b){var c,d,e;a=a.toLowerCase();if(this.events.hasOwnProperty(a)){this.public_events.hasOwnProperty(a)&&g(this.public_events[a],b);e=this.events[a];"before_beacon"!==a&&"onbeacon"!==a&&BOOMR.real_sendBeacon();for(c=0;c")}}}};c={t_start:BOOMR_start,url:e,config_url:null,constants:{BEACON_TYPE_SPAS:["spa","spa_hard"],MAX_GET_LENGTH:2e3},session:{domain:null,ID:Math.random().toString(36).replace(/^0\./,""),start:void 0,length:0},utils:{objectToString:function(a,b,c){var d,e=[];if(!a||"object"!=typeof a)return a;void 0===b&&(b="\n ");c||(c=0);if("[object Array]"===Object.prototype.toString.call(a)){for(d=0;d0&&null!==a[d]&&"object"==typeof a[d]?e.push(this.objectToString(a[d],b+("\n "===b?" ":""),c-1)):"&"===b?e.push(encodeURIComponent(a[d])):e.push(a[d]);b=","}else for(d in a)Object.prototype.hasOwnProperty.call(a,d)&&(c>0&&null!==a[d]&&"object"==typeof a[d]?e.push(encodeURIComponent(d)+"="+this.objectToString(a[d],b+("\n "===b?" ":""),c-1)):"&"===b?e.push(encodeURIComponent(d)+"="+encodeURIComponent(a[d])):e.push(d+"="+a[d]));return e.join(b)},getCookie:function(a){if(!a)return null;a=" "+a+"=";var b,c;c=" "+d.cookie+";";if((b=c.indexOf(a))>=0){b+=a.length;c=c.substring(b,c.indexOf(";",b)).replace(/^"/,"").replace(/"$/,"");return c}},setCookie:function(a,b,c){var e,f,g,h,i;if(!a||!BOOMR.session.domain){BOOMR.debug("No cookie name or site domain: "+a+"/"+BOOMR.session.domain);return null}e=this.objectToString(b,"&");f=a+'="'+e+'"';h=[f,"path=/","domain="+BOOMR.session.domain];if(c){i=new Date;i.setTime(i.getTime()+1e3*c);i=i.toGMTString();h.push("expires="+i)}if(f.length<500){d.cookie=h.join("; ");g=this.getCookie(a);if(e===g)return!0;BOOMR.warn("Saved cookie value doesn't match what we tried to set:\n"+e+"\n"+g)}else BOOMR.warn("Cookie too long: "+f.length+" "+f);return!1},getSubCookies:function(a){var b,c,d,e,f=!1,g={};if(!a)return null;if("string"!=typeof a){BOOMR.debug("TypeError: cookie is not a string: "+typeof a);return null}b=a.split("&");for(c=0,d=b.length;d>c;c++){e=b[c].split("=");if(e[0]){e.push("");g[decodeURIComponent(e[0])]=decodeURIComponent(e[1]);f=!0}}return f?g:null},removeCookie:function(a){return this.setCookie(a,{},-86400)},cleanupURL:function(a,c){if(!a||"[object Array]"===Object.prototype.toString.call(a))return"";b.strip_query_string&&(a=a.replace(/\?.*/,"?qs-redacted"));if("undefined"!=typeof c&&a&&a.length>c){var d=a.indexOf("?");a=-1!==d&&c>d?a.substr(0,d)+"?...":a.substr(0,c-3)+"..."}return a},hashQueryString:function(a,b){if(!a)return a;if(!a.match){BOOMR.addError("TypeError: Not a string","hashQueryString",typeof a);return""}a.match(/^\/\//)&&(a=location.protocol+a);if(!a.match(/^(https?|file):/)){BOOMR.error("Passed in URL is invalid: "+a);return""}b&&(a=a.replace(/#.*/,""));return BOOMR.utils.MD5?a.replace(/\?([^#]*)/,function(a,b){return"?"+(b.length>10?BOOMR.utils.MD5(b):b)}):a},pluginConfig:function(a,b,c,d){var e,f=0;if(!b||!b[c])return!1;for(e=0;e0},arrayFilter:function(a,b){var c=[];if("function"==typeof a.filter)c=a.filter(b);else for(var d,e=-1,f=a.length;++e0&&(h.timer=setTimeout(g,b))}var h={observer:null,timer:null};if(!window.MutationObserver||!d||!a)return null;h.observer=new MutationObserver(g);c&&(h.timer=setTimeout(g,h.timeout));h.observer.observe(a,b);return h},addListener:function(a,b,c){a.addEventListener?a.addEventListener(b,c,!1):a.attachEvent&&a.attachEvent("on"+b,c)},removeListener:function(a,b,c){a.removeEventListener?a.removeEventListener(b,c,!1):a.detachEvent&&a.detachEvent("on"+b,c)},pushVars:function(a,b,c){var d,e,f,g=0;for(d in b)if(b.hasOwnProperty(d))if("[object Array]"===Object.prototype.toString.call(b[d]))for(e=0;e1?" (*"+b.errors[c]+")":""));i.length>0&&(b.vars.errors=i.join("\n"));b.errors={};b.fireEvent("before_beacon",b.vars);b.beacon_url=b.beacon_url_override||b.beacon_url;BOOMR.debug("Ready to send beacon: "+BOOMR.utils.objectToString(b.vars));if(!b.beacon_url){BOOMR.debug("No beacon URL, so skipping.");return!0}for(c in b.vars)if(b.vars.hasOwnProperty(c)){l[c]=b.vars[c];m[c]=b.vars[c]}n=this.getVarsOfPriority(m,-1);o=this.getVarsOfPriority(m,1);j=n.concat(this.getVarsOfPriority(m,0),o);g=j.join("&");e=b.beacon_url+(b.beacon_url.indexOf("?")>-1?"&":"?")+g;e.length>BOOMR.constants.MAX_GET_LENGTH&&(k=!1);BOOMR.removeVar("qt");b.fireEvent("onbeacon",l);if(0===j.length)return this;if(BOOMR.session.rate_limited){BOOMR.debug("Skipping because we're rate limited");return this}BOOMR.orig_XMLHttpRequest||BOOMR.window&&BOOMR.window.XMLHttpRequest||(k=!0);if(k){f=new Image;f.src=e;if(b.secondary_beacons)for(c=0;c1){a=c[1];l=k[f];if("undefined"==typeof l){l=new RegExp("\\"+f,"g");k[f]=l}a=a.replace(l,"");d!==g&&(a=a.replace(d,g));return a}return""}return a.replace(this.sanitizeRE,"")},isValidObjectMember:function(a,b){return null===a?!1:"object"==typeof a?!0:"function"==typeof a&&a.hasOwnProperty(b)?!0:"string"==typeof a&&a.hasOwnProperty(b)?!0:!1},extractFromDOMElement:function(a,b){var c,d,e="";"INPUT"===a.nodeName.toUpperCase()||"SELECT"===a.nodeName.toUpperCase()?("checkbox"!==a.type.toLowerCase()&&"radio"!==a.type.toLowerCase()||a.checked)&&(e=a.value):e=a.textContent||a.innerText;if(b.match&&"numeric"!==b.match){if("boolean"===b.match)e=1;else if(b.match.match(/^regex:/)){c=b.match.match(/^regex:(.*)/);if(!c||c.length<2)return!1;try{d=new RegExp(c[1],"i");d.test(e)&&(e=1)}catch(f){BOOMR.debug("Bad pattern: "+b.match,"PageVars");BOOMR.debug(f,"PageVars");BOOMR.addError(f,"PageVars.URLPatternType",b.match);return!1}}}else e=this.cleanUp(e,b);return e},handleRegEx:function(a,b,c){var d,e;if(!(a instanceof RegExp))try{a=new RegExp(a,"i")}catch(f){BOOMR.debug("Error generating regex: "+f,"PageVars");BOOMR.addError(f,"PageVars.handleRegEx",a);return!1}if("undefined"==typeof c)return!1;e=a.exec(c);if(!e||!e.length)return!1;d=b.replace(/\$([1-9])/g,function(a,b){return decodeURIComponent(e[parseInt(b,10)])});d=this.cleanUp(d);return this.apply(d)},checkURLPattern:function(a,c){var d;if(!a)return!0;d=a.replace(/([.+?\^=!:${}()|\[\]\/\\])/g,"\\$1").replace(/\*/g,".*?");try{d=new RegExp("^"+d+"$","i")}catch(e){BOOMR.debug("Bad pattern: "+d,"PageVars");BOOMR.debug(e,"PageVars");BOOMR.addError(e,"PageVars.checkURLPattern",a);return!1}c||(c=b.href);if(!d.exec(c)){BOOMR.debug("No match "+d+" on "+c,"PageVars");return!1}return!0},nodeWalk:function(a,b){var c,d,e,f;if(!b)return a;c=b.match(/^(\w+)(?:\[(\d+)\])?\/?(.*)/);if(!c||!c.length)return null;d=a.getElementsByTagName(c[1]);if(c[2]){e=parseInt(c[2],10);if(isNaN(e))return null;e--;if(d.length<=e)return null;d=[d[e]]}for(e=0;e0&&BOOMR.addVar(this.varname+"."+i.replace(/^(...).*(St|En).*$/,"$1$2"),Math.round(f[i]));return this.apply(f.duration)}if(a.relative_to_nt||"navigationStart"===a.start)g=0;else{g=parseFloat(f[a.start],10);if(!isNaN(g)&&0===g){BOOMR.debug("Start was 0 (not supported on this resource)","PageVars");return!1}}h=parseFloat(f[a.end],10);if(isNaN(g)||isNaN(h)){BOOMR.debug("Start and end were not numeric: "+g+", "+h,"PageVars");return!1}if(0===h){BOOMR.debug("End was 0 (not supported on this resource)","PageVars");return!1}BOOMR.debug("Final values: "+g+", "+h,"PageVars");BOOMR.addVar(this.varname+"_st",Math.round(g));return this.apply(h-g)},findResource:function(b,c){var d,e,f,g;c||(c=a);try{g=c.location&&c.location.href;if(!("performance"in c&&c.performance&&c.performance.getEntriesByName&&c.performance.getEntriesByType))return null;f=c.performance.getEntriesByName(b)}catch(h){if(BOOMR.isCrossOriginError(h))return null;try{if("TypeError"===h.name&&"Invalid calling object"===h.message&&c.document.location.pathname.match(/\.pdf$/))return null}catch(i){}BOOMR.addError(h,"PageVars.findResource");return null}if(f&&f.length>0)return f[0];f=c.performance.getEntriesByType("resource");if(f&&f.length>0)for(d=0;de.duration)&&(e=f[d]);else if(f[d].name&&this.checkURLPattern(b,f[d].name)){e=f[d];b=e.name;break}if(e)return e;if(c.frames)for(d=0;d0&&e.retry();return e.configReceived||e.unloadFired}}}}();!function(){function a(a){if(!a)return null;a.href=a.href;var b=a.pathname;"/"!==b.charAt(0)&&(b="/"+b);return b}function b(b){return b.href&&b.href.match(/^(about:|javascript:|data:)/i)?!0:BOOMR.xhr_excludes.hasOwnProperty(b.href)||BOOMR.xhr_excludes.hasOwnProperty(b.hostname)||BOOMR.xhr_excludes.hasOwnProperty(a(b))}function c(){this.watch=0;this.timer=null;this.pending_events=[]}function d(){BOOMR.subscribe("click",function(){if(!l){var a={timing:{},initiator:"click"};if(BOOMR.orig_XMLHttpRequest&&BOOMR.orig_XMLHttpRequest!==BOOMR.window.XMLHttpRequest){a.timing.requestStart=BOOMR.now();i.addEvent(a)}}})}function e(){if(!BOOMR.proxy_XMLHttpRequest||BOOMR.proxy_XMLHttpRequest!==BOOMR.window.XMLHttpRequest)if(BOOMR.proxy_XMLHttpRequest&&BOOMR.orig_XMLHttpRequest&&BOOMR.orig_XMLHttpRequest===BOOMR.window.XMLHttpRequest){BOOMR.window.XMLHttpRequest=BOOMR.proxy_XMLHttpRequest;c.start()}else{BOOMR.orig_XMLHttpRequest=BOOMR.window.XMLHttpRequest;c.start();d();BOOMR.proxy_XMLHttpRequest=function(){var a,c,d,e={timing:{},initiator:"xhr"};a=new BOOMR.orig_XMLHttpRequest;c=a.open;d=a.send;a.open=function(d,f,g){function loadFinished(){var a,b;if(!e.timing.loadEventEnd){e.status&&BOOMR.fireEvent("onxhrerror",e);e.timing.loadEventEnd=BOOMR.now();a=BOOMR.getResourceTiming(e.url);if(a){b=BOOMR.getPerformance().timing.navigationStart;0!==a.responseEnd&&(e.timing.responseEnd=Math.round(b+a.responseEnd));0!==a.responseStart&&(e.timing.responseStart=Math.round(b+a.responseStart));0!==a.startTime&&(e.timing.requestStart=Math.round(b+a.startTime))}e.index>-1?i.load_finished(e.index,e.timing.responseEnd):n?i.sendResource(e):(!l||m)&&i.addEvent(e)}}function h(b,c){a.addEventListener(b,function(){if("readystatechange"===b){e.timing[o[a.readyState]]=BOOMR.now();if(4===a.readyState&&0!==a.status){(a.status<200||a.status>=400)&&(e.status=a.status);loadFinished()}}else{e.status=void 0===c?a.status:c;loadFinished()}},!1)}j.href=f;if(b(j))return c.apply(a,arguments);void 0===g&&(g=!0);l&&i.watch&&!n&&i.add_event_resource(e);g&&h("readystatechange");h("load");h("timeout",q);h("error",s);h("abort",r);e.url=j.href;e.method=d;delete e.status;g||(e.synchronous=!0);try{return c.apply(a,arguments)}catch(k){e.status=t;loadFinished()}};a.send=function(){e.timing.requestStart=BOOMR.now();return"undefined"==typeof e.status||e.status!==t?d.apply(a,arguments):void 0};a.resource=e;return a};BOOMR.proxy_XMLHttpRequest.prototype=BOOMR.orig_XMLHttpRequest.prototype;BOOMR.window.XMLHttpRequest=BOOMR.proxy_XMLHttpRequest}}function f(){BOOMR.orig_XMLHttpRequest&&BOOMR.orig_XMLHttpRequest!==BOOMR.window.XMLHttpRequest&&(BOOMR.window.XMLHttpRequest=BOOMR.orig_XMLHttpRequest)}function g(a){a.initiator="xhr";BOOMR.responseEnd(a)}var h,i,j,k,l=!1,m=!1,n=!1,o=["uninitialized","open","responseStart","domInteractive","responseEnd"],p=1e3,q=-1001,r=-999,s=-998,t=-997,u=["xmlhttprequest","script"];if(window.XMLHttpRequest&&(new XMLHttpRequest).addEventListener){BOOMR=window.BOOMR||{};if(!BOOMR.plugins.AutoXHR){c.stop=function(){if(c.observer&&c.observer.observer){c.observer.observer.disconnect();c.observer=null}};c.start=function(){c.observer=BOOMR.utils.addObserver(h,{childList:!0,attributes:!0,subtree:!0,attributeFilter:["src","href"]},null,i.mutation_cb,null,i);BOOMR.subscribe("page_unload",c.stop,null,c)};c.prototype.addEvent=function(a){var b,d,e={type:a.initiator,resource:a,nodes_to_wait:0,resources:[],complete:!1},f=this.pending_events.length;for(b=f-1;b>=0;b--)if(this.pending_events[b]&&!this.pending_events[b].complete){d=this.pending_events[b];break}if(d)if("click"===d.type){if(0===d.nodes_to_wait||!d.resource.url){this.pending_events[b]=void 0;return null}}else if("xhr"===d.type){if("click"===e.type)return null}else if(BOOMR.utils.inArray(d.type,BOOMR.constants.BEACON_TYPE_SPAS)&&"xhr"===e.type)return null;this.watch++;this.pending_events.push(e);if(c.observer){BOOMR.utils.inArray(e.type,BOOMR.constants.BEACON_TYPE_SPAS)?this.setTimeout(p,f):this.setTimeout(50,f);return f}if(BOOMR.utils.inArray(e.type,BOOMR.constants.BEACON_TYPE_SPAS)){c.start();this.setTimeout(p,f);return f}a.url&&a.timing.loadEventEnd&&this.sendEvent(f);return null};c.prototype.sendEvent=function(a){var b=this.pending_events[a],c=this;if(b&&!b.complete){b.complete=!0;this.watch--;this.clearTimeout();if(BOOMR.hasVar("h.cr")){b.resource.resources=b.resources;"spa"===b.type&&0===b.resources.length&&(b.resource.timing.loadEventEnd=BOOMR.now()-p);this.sendResource(b.resource,a)}else setTimeout(function(){c.sendEvent(a)},5e3)}};c.prototype.sendResource=function(a,b){var c=this,d=a.timing?a.timing.requestStart:void 0,e=function(e){e&&(a.timing.loadEventEnd=BOOMR.now());if(BOOMR.plugins.ResourceTiming&&BOOMR.plugins.ResourceTiming.is_supported()&&a.timing&&a.timing.requestStart){var f=BOOMR.plugins.ResourceTiming.getCompressedResourceTiming(a.timing.requestStart,a.timing.loadEventEnd);BOOMR.addVar("restiming",JSON.stringify(f))}a.onComplete&&a.onComplete();BOOMR.utils.inArray(a.initiator,BOOMR.constants.BEACON_TYPE_SPAS)&&c.calculateSpaTimings(a);BOOMR.responseEnd(a,d,a);b&&(c.pending_events[b]=void 0)};if(a.wait)a.waitComplete=function(){e(!0)};else{if(BOOMR.utils.inArray(a.initiator,BOOMR.constants.BEACON_TYPE_SPAS)&&h&&h.readyState&&"complete"!==h.readyState){BOOMR.window.addEventListener("load",function(){e(!0)});return}e(!1)}};c.prototype.calculateSpaTimings=function(a){var b=BOOMR.getPerformance();if(b&&b.timing)if("spa_hard"===a.initiator){a.timing.responseEnd=b.timing.responseStart;a.timing.fetchStart=b.timing.fetchStart}else{if(!BOOMR.plugins.ResourceTiming)return;var c=BOOMR.plugins.ResourceTiming.getFilteredResourceTiming(a.timing.requestStart,a.timing.loadEventEnd,k.spaBackEndResources),d=Math.round(a.timing.loadEventEnd-a.timing.requestStart);if(!c||!c.length){BOOMR.plugins.ResourceTiming.is_supported()&&(a.timers={t_resp:0,t_page:d,t_done:d});return}var e=Math.round(BOOMR.plugins.ResourceTiming.calculateResourceTimingUnion(c)),f=d-e;if(0>e||0>d)return;a.timers={t_resp:e,t_page:f,t_done:d}}};c.prototype.setTimeout=function(a,b){var c=this;if(a){this.clearTimeout();this.timer=setTimeout(function(){c.timedout(b)},a)}};c.prototype.timedout=function(a){this.clearTimeout();var b=this.pending_events[a];if(b&&BOOMR.utils.inArray(b.type,BOOMR.constants.BEACON_TYPE_SPAS.concat("xhr")))"xhr"===b.type?this.sendEvent(a):BOOMR.utils.inArray(b.type,BOOMR.constants.BEACON_TYPE_SPAS)&&0===b.nodes_to_wait&&this.sendEvent(a);else{this.watch>0&&this.watch--;this.pending_events[a]=void 0}};c.prototype.clearTimeout=function(){if(this.timer){clearTimeout(this.timer);this.timer=null}};c.prototype.load_cb=function(a,b){var c,d,e=BOOMR.now();c=a.target||a.srcElement;if(c&&c._bmr){d=c._bmr.idx;b="undefined"!=typeof b?b:c._bmr.res||0;if(!c._bmr.end[b]){c._bmr.end[b]=e;this.load_finished(d,e)}}};c.prototype.load_finished=function(a,b){var c=this.pending_events[a];if(c){c.nodes_to_wait--;if(0===c.nodes_to_wait){c.resource.timing.loadEventEnd=b||BOOMR.now();BOOMR.utils.inArray(c.type,BOOMR.constants.BEACON_TYPE_SPAS)?this.setTimeout(p,a):this.sendEvent(a)}}};c.prototype.wait_for_node=function(a,c){var d,e,f,g,h,i,k=this,m=!1,n=!1;if(a.nodeName.match(/^(IMG|SCRIPT|IFRAME)$/)||"LINK"===a.nodeName&&a.rel&&a.rel.match(/\/i)){a._bmr&&a._bmr.res&&a._bmr.end[a._bmr.res]&&(n=!0);h=a.src||a.href;if("IMG"===a.nodeName){if(a.naturalWidth&&!n)return!1;if(""===a.getAttribute("src"))return!1}if(!h||h.match(/^(about:|javascript:|data:)/i))return!1;d=this.pending_events[c];if(!d)return!1;i=d.resources.length;a._bmr||(a._bmr={end:{}});d.urls||(d.urls={});if(d.urls[h])return!1;if("SCRIPT"===a.nodeName&&l)return!1;if(!d.resource.url&&("SCRIPT"===a.nodeName||"IMG"===a.nodeName)){j.href=h;if(b(j))return!1;d.resource.url=j.href}a._bmr.res=i;a._bmr.idx=c;a.addEventListener("load",function(a){k.load_cb(a,i)});a.addEventListener("error",function(a){k.load_cb(a,i)});d.nodes_to_wait++;d.resources.push(a);d.urls[h]=1;m=!0}else if(a.nodeType===Node.ELEMENT_NODE){e=a.getElementsByTagName("IMG");if(e&&e.length)for(f=0,g=e.length;g>f;f++)m|=this.wait_for_node(e[f],c)}return m};c.prototype.add_event_resource=function(a){var b,c=this.pending_events.length-1;if(0>c)return-1;b=this.pending_events[c];if(!b)return-1;if(!a)return-1;b.nodes_to_wait++;a.index=c;return c};c.prototype.mutation_cb=function(a){var b,c,d;if(!this.watch)return!0;b=this;c=this.pending_events.length-1;if(0>c||!this.pending_events[c])return!0;d=this.pending_events[c];"undefined"==typeof d.interesting&&(d.interesting=!1);if(a&&a.length){d.resource.timing.domComplete=BOOMR.now();a.forEach(function(a){var e,f,g;if("attributes"===a.type)d.interesting|=b.wait_for_node(a.target,c);else if("childList"===a.type){f=a.addedNodes.length;for(e=0;f>e;e++)d.interesting|=b.wait_for_node(a.addedNodes[e],c);f=a.removedNodes.length;for(e=0;f>e;e++){g=a.removedNodes[e];"IFRAME"===g.nodeName&&g._bmr&&b.load_cb({target:g,type:"removed"})}}})}d.interesting||this.setTimeout(p,c);return!0};c.prototype.queue_is_empty=function(){if(0===this.pending_events.length)return!0;var a=this.pending_events.length-1;return this.pending_events[a]?0===this.pending_events[a].nodes_to_wait?!0:!1:!0};i=new c;k={spaBackEndResources:u};BOOMR.plugins.AutoXHR={is_complete:function(){return!0},init:function(a){var b;h=BOOMR.window.document;j=BOOMR.window.document.createElement("A");BOOMR.utils.pluginConfig(k,a,"AutoXHR",["spaBackEndResources"]);BOOMR.instrumentXHR=e;BOOMR.uninstrumentXHR=f;m=a.instrument_xhr;if(BOOMR.plugins.SPA&&BOOMR.plugins.SPA.supported_frameworks){var c=BOOMR.plugins.SPA.supported_frameworks();for(b=0;b50){BOOMR.utils.removeCookie(this.cookie);BOOMR.error("took more than 50ms to set cookie... aborting: "+f+" -> "+e,"rt")}return!0},refreshSession:function(a){a||(a=BOOMR.utils.getSubCookies(BOOMR.utils.getCookie(this.cookie)));if(a){a.ss?BOOMR.session.start=parseInt(a.ss,10):BOOMR.session.start=BOOMR.t_lstart||BOOMR.t_start;a.si&&a.si.match(/-/)&&(BOOMR.session.ID=a.si);a.sl&&(BOOMR.session.length=parseInt(a.sl,10));a.tt&&a.tt.match(/\d/)&&(this.loadTime=parseInt(a.tt,10));a.obo&&(this.oboError=parseInt(a.obo,10)||0);a.dm&&!BOOMR.session.domain&&(BOOMR.session.domain=a.dm);a.se&&(c.session_exp=parseInt(a.se,10)||d);a.sh&&(c.sessionHistory=a.sh.split(","));a.bcn&&(this.beacon_url=a.bcn);a.rl&&"1"===a.rl&&(BOOMR.session.rate_limited=!0)}},maybeResetSession:function(a,b){BOOMR.debug("Current session meta:\n"+BOOMR.utils.objectToString(BOOMR.session),"rt");BOOMR.debug("Timers: t_start="+b+", sessionLoad="+c.loadTime+", sessionError="+c.oboError+", lastAction="+c.lastActionTime,"rt");BOOMR.removeVar("rt.srst");var d=0;BOOMR.session.start&&BOOMR.session.length&&(d=(BOOMR.now()-BOOMR.session.start)/BOOMR.session.length);var e=1e3*c.session_exp;if(!BOOMR.session.start||b&&BOOMR.session.start>b||a-(c.lastActionTime||BOOMR.t_start)>e||d>e){BOOMR.addVar("rt.srst",BOOMR.session.ID+"-"+BOOMR.session.start+":"+BOOMR.session.length+":"+c.oboError+":"+c.loadTime+":"+b+":"+c.lastActionTime+":"+a+":"+c.sessionHistory.join(","));c.addedVars.push("rt.srst");BOOMR.session.start=b||BOOMR.t_lstart||BOOMR.t_start;BOOMR.session.length=0;BOOMR.session.rate_limited=!1;c.loadTime=0;c.oboError=0;c.beacon_url=c.next_beacon_url;c.lastActionTime=a;c.sessionHistory=[];c.updateCookie({rl:void 0,sl:BOOMR.session.length,ss:BOOMR.session.start,tt:c.loadTime,obo:c.oboError,bcn:c.beacon_url,sh:c.sessionHistory.join(",")})}BOOMR.debug("New session meta:\n"+BOOMR.utils.objectToString(BOOMR.session),"rt");BOOMR.debug("Timers: t_start="+b+", sessionLoad="+c.loadTime+", sessionError="+c.oboError,"rt")},initFromCookie:function(){var a,c;c=BOOMR.utils.getSubCookies(BOOMR.utils.getCookie(this.cookie));if(c){c.s=Math.max(+c.ld||0,Math.max(+c.ul||0,+c.cl||0));BOOMR.debug("Read from cookie "+BOOMR.utils.objectToString(c),"rt");if(c.s&&(c.r||c.nu)){this.r=c.r;a=BOOMR.utils.hashQueryString(b.URL,!0);BOOMR.debug(this.r+" =?= "+this.r2,"rt");BOOMR.debug(c.s+" c.s&&(this.t_fb_approx=parseInt(c.hd,10))}else this.t_start=this.t_fb_approx=void 0}c.s&&(this.lastActionTime=c.s);this.refreshSession(c);this.updateCookie({s:void 0,r:void 0,nu:void 0,ul:void 0,cl:void 0,hd:void 0,ld:void 0,rl:void 0});this.maybeResetSession(BOOMR.now())}},incrementSessionDetails:function(){BOOMR.session.length++;isNaN(c.timers.t_done.delta)?c.oboError++:c.loadTime+=c.timers.t_done.delta;c.sessionHistory.unshift(BOOMR.now()+"="+BOOMR.session.length+":"+c.oboError+":"+c.loadTime);c.sessionHistory.length>5&&(c.sessionHistory.length=5)},getBoomerangTimings:function(){function a(a,b){var c=Math.round(a?a:0),d=Math.round(b?b:0);c=0===c?0:c-d;return c?c:""}var b,d,e,f,g;if(BOOMR.t_start){BOOMR.plugins.RT.startTimer("boomerang",BOOMR.t_start);BOOMR.plugins.RT.endTimer("boomerang",BOOMR.t_end);BOOMR.plugins.RT.endTimer("boomr_fb",BOOMR.t_start);if(BOOMR.t_lstart){BOOMR.plugins.RT.endTimer("boomr_ld",BOOMR.t_lstart);BOOMR.plugins.RT.setTimer("boomr_lat",BOOMR.t_start-BOOMR.t_lstart)}}try{if(window.performance&&window.performance.getEntriesByName){d={"rt.bmr":BOOMR.url,"rt.cnf":BOOMR.config_url};for(e in d)if(d.hasOwnProperty(e)&&d[e]){b=window.performance.getEntriesByName(d[e]);if(!b||0===b.length||!b[0])continue;b=b[0];f=a(b.startTime,0);g=[f,a(b.responseEnd,f),a(b.responseStart,f),a(b.requestStart,f),a(b.connectEnd,f),a(b.secureConnectionStart,f),a(b.connectStart,f),a(b.domainLookupEnd,f),a(b.domainLookupStart,f),a(b.redirectEnd,f),a(b.redirectStart,f)].join(",").replace(/,+$/,"");BOOMR.addVar(e,g);c.addedVars.push(e)}}}catch(h){BOOMR.addError(h,"rt.getBoomerangTimings")}},checkPreRender:function(){if("prerender"!==BOOMR.visibilityState())return!1;BOOMR.plugins.RT.startTimer("t_load",this.navigationStart);BOOMR.plugins.RT.endTimer("t_load");BOOMR.plugins.RT.startTimer("t_prerender",this.navigationStart);BOOMR.plugins.RT.startTimer("t_postrender");return!0},initFromNavTiming:function(){var b,c,d;if(!this.navigationStart){c=BOOMR.getPerformance();c&&c.navigation&&(this.navigationType=c.navigation.type);if(c&&c.timing)b=c.timing;else if(a.chrome&&a.chrome.csi&&a.chrome.csi().startE){b={navigationStart:a.chrome.csi().startE};d="csi"}else if(a.gtbExternal&&a.gtbExternal.startE()){b={navigationStart:a.gtbExternal.startE()};d="gtb"}if(b){BOOMR.addVar("rt.start",d||"navigation");this.navigationStart=b.navigationStart||b.fetchStart||void 0;this.responseStart=b.responseStart||void 0;navigator.userAgent.match(/Firefox\/[78]\./)&&(this.navigationStart=b.unloadEventStart||b.fetchStart||void 0)}else BOOMR.warn("This browser doesn't support the WebTiming API","rt")}},validateLoadTimestamp:function(a,b,c){var d;if(b&&b.timing&&b.timing.loadEventEnd)return b.timing.loadEventEnd;if(!("xhr"!==c||b&&BOOMR.utils.inArray(b.initiator,BOOMR.constants.BEACON_TYPE_SPAS)))return a;if(BOOMR.loadedLate){d=BOOMR.getPerformance();if(!d||!d.timing)return BOOMR.t_onload||BOOMR.t_lstart||BOOMR.t_start||a;if(d.timing.loadEventStart&&d.timing.loadEventStartb?BOOMR.addVar("t_page.inv",1):BOOMR.plugins.RT.setTimer("t_page",b-e)}if(c.timers.hasOwnProperty("t_postrender")){BOOMR.plugins.RT.endTimer("t_postrender");BOOMR.plugins.RT.endTimer("t_prerender")}return!0},setSupportingTimestamps:function(a){a&&BOOMR.addVar("rt.tstart",a);"number"==typeof c.t_start&&c.t_start!==a&&BOOMR.addVar("rt.cstart",c.t_start);BOOMR.addVar("rt.bstart",BOOMR.t_start);BOOMR.t_lstart&&BOOMR.addVar("rt.blstart",BOOMR.t_lstart);BOOMR.addVar("rt.end",c.timers.t_done.end)},determineTStart:function(a,b){var d;if("xhr"===a){b&&b.name&&c.timers[b.name]?d=c.timers[b.name].start:b&&b.timing&&b.timing.requestStart&&(d=b.timing.requestStart);"undefined"==typeof d&&b&&BOOMR.utils.inArray(b.initiator,BOOMR.constants.BEACON_TYPE_SPAS)?BOOMR.addVar("rt.start","none"):BOOMR.addVar("rt.start","manual");c.cached_xhr_start=d}else{if(c.navigationStart)d=c.navigationStart;else if(c.t_start&&2!==c.navigationType){d=c.t_start;BOOMR.addVar("rt.start","cookie")}else if(c.cached_t_start)d=c.cached_t_start;else{BOOMR.addVar("rt.start","none");d=void 0}c.cached_t_start=d}BOOMR.debug("Got start time: "+d,"rt");return d},page_ready:function(){this.onloadfired=!0},check_visibility:function(){var a=BOOMR.visibilityState();"visible"===a&&(c.visiblefired=!0);if("prerender"===c.visibilityState&&"prerender"!==a&&c.onloadfired&&c.autorun){BOOMR.addVar("vis.pre","1");BOOMR.plugins.RT.done(null,"visible")}c.visibilityState=a},page_unload:function(a){BOOMR.debug("Unload called when unloadfired = "+this.unloadfired,"rt");this.unloadfired||BOOMR.plugins.RT.done(a,"unload");this.updateCookie({r:b.URL},"beforeunload"===a.type?"ul":"hd");this.unloadfired=!0},_iterable_click:function(a,b,d,e){var f;if(d){BOOMR.debug(a+" called with "+d.nodeName,"rt");for(;d&&d.nodeName.toUpperCase()!==b;)d=d.parentNode;if(d&&d.nodeName.toUpperCase()===b){BOOMR.debug("passing through","rt");this.refreshSession();this.maybeResetSession(BOOMR.now());f=e(d);this.updateCookie({nu:f},"cl");BOOMR.addVar("nu",BOOMR.utils.cleanupURL(f));c.addedVars.push("nu")}}},onclick:function(a){c._iterable_click("Click","A",a,function(a){return a.href})},onerror:function(){this.onloadfired&&(c.complete=!0)},onsubmit:function(a){c._iterable_click("Submit","FORM",a,function(a){var c=a.getAttribute("action")||b.URL||"";return c.match(/\?/)?c:c+"?"})},domloaded:function(){BOOMR.plugins.RT.endTimer("t_domloaded")},clear:function(){BOOMR.removeVar("rt.start");if(c.addedVars&&c.addedVars.length>0){BOOMR.removeVar(c.addedVars);c.addedVars=[]}}};BOOMR.plugins.RT={init:function(d){BOOMR.debug("init RT","rt");a!==BOOMR.window&&(a=BOOMR.window);b=a.document;BOOMR.utils.pluginConfig(c,d,"RT",["cookie","cookie_exp","session_exp","strict_referrer"]);d&&"undefined"!=typeof d.autorun&&(c.autorun=d.autorun);if(d&&d.beacon_url){(!c.beacon_url||d.force_beacon_url)&&(c.beacon_url=d.beacon_url);c.next_beacon_url=d.beacon_url}"undefined"!=typeof b&&(c.r=c.r2=BOOMR.utils.hashQueryString(b.referrer,!0));c.initFromCookie();if(c.initialized)return this;c.complete=!1;c.timers={};c.check_visibility();BOOMR.subscribe("page_ready",c.page_ready,null,c);BOOMR.subscribe("visibility_changed",c.check_visibility,null,c);BOOMR.subscribe("page_ready",this.done,"load",this);BOOMR.subscribe("xhr_load",this.done,"xhr",this);BOOMR.subscribe("dom_loaded",c.domloaded,null,c);BOOMR.subscribe("page_unload",c.page_unload,null,c);BOOMR.subscribe("click",c.onclick,null,c);BOOMR.subscribe("form_submit",c.onsubmit,null,c);BOOMR.subscribe("before_beacon",this.addTimersToBeacon,"beacon",this);BOOMR.subscribe("onbeacon",c.clear,null,c);BOOMR.subscribe("onerror",c.onerror,null,c);BOOMR.getBeaconURL=function(){return c.beacon_url};c.initialized=!0;return this},startTimer:function(a,b){if(a){"t_page"===a&&this.endTimer("t_resp",b);c.timers[a]={start:"number"==typeof b?b:BOOMR.now()}}return this},endTimer:function(a,b){if(a){c.timers[a]=c.timers[a]||{};void 0===c.timers[a].end&&(c.timers[a].end="number"==typeof b?b:BOOMR.now())}return this},setTimer:function(a,b,d){a&&("undefined"!=typeof d?c.timers[a]={start:b,end:d,delta:d-b}:c.timers[a]={delta:b});return this},addTimersToBeacon:function(a,b){var d,e,f=[];for(d in c.timers)if(c.timers.hasOwnProperty(d)){e=c.timers[d];if("number"!=typeof e.delta){"number"!=typeof e.start&&(e.start="xhr"===b?c.cached_xhr_start:c.cached_t_start);e.delta=e.end-e.start}if(isNaN(e.delta))continue;if(c.basic_timers.hasOwnProperty(d)){BOOMR.addVar(d,e.delta);c.addedVars.push(d)}else f.push(d+"|"+e.delta)}if(f.length){BOOMR.addVar("t_other",f.join(","));c.addedVars.push("t_other")}if("beacon"===b){c.timers={};c.complete=!1}},done:function(a,b){BOOMR.debug("Called done: "+b,"rt");var d,e,f=BOOMR.now(),g=!1;c.complete=!1;e=c.validateLoadTimestamp(f,a,b);if(("load"===b||"visible"===b||"xhr"===b)&&!c.setPageLoadTimers(b,e,a))return this;("load"===b||"visible"===b||"xhr"===b&&a&&BOOMR.utils.inArray(a.initiator,BOOMR.constants.BEACON_TYPE_SPAS))&&c.getBoomerangTimings();d=c.determineTStart(b,a);c.refreshSession();c.maybeResetSession(e,d);this.endTimer("t_done",e);a&&"xhr"===a.initiator&&this.setTimer("t_done",a.timing.requestStart,a.timing.loadEventEnd);BOOMR.removeVar("t_done","t_page","t_resp","t_postrender","t_prerender","t_load","t_other","r","r2","rt.tstart","rt.cstart","rt.bstart","rt.end","rt.subres","rt.abld","http.errno","http.method","xhr.sync","rt.ss","rt.sl","rt.tt","rt.lt");c.setSupportingTimestamps(d);this.addTimersToBeacon(null,b);BOOMR.addVar("r",BOOMR.utils.cleanupURL(c.r));c.r2!==c.r&&BOOMR.addVar("r2",BOOMR.utils.cleanupURL(c.r2));"xhr"===b&&a&&a&&a.data&&(a=a.data);if("xhr"===b&&a){g=a.subresource;if(a.url){BOOMR.addVar("u",BOOMR.utils.cleanupURL(a.url.replace(/#.*/,"")));c.addedVars.push("u")}a.status&&(a.status<-1||a.status>=400)&&BOOMR.addVar("http.errno",a.status);a.method&&"GET"!==a.method&&BOOMR.addVar("http.method",a.method);a.headers&&BOOMR.addVar("http.hdr",a.headers);a.synchronous&&BOOMR.addVar("xhr.sync",1);a.initiator&&BOOMR.addVar("http.initiator",a.initiator);c.addedVars.push("http.errno","http.method","http.hdr","xhr.sync","http.initiator")}if(g&&"passive"!==g){BOOMR.addVar("rt.subres",1);c.addedVars.push("rt.subres")}if("load"===b||"visible"===b||"xhr"===b&&!g||!c.onloadfired){ c.incrementSessionDetails();c.updateCookie(null,"ld")}BOOMR.addVar({"rt.tt":c.loadTime,"rt.obo":c.oboError,"rt.sh":c.sessionHistory.join(",")});c.addedVars.push("rt.tt","rt.obo","rt.sh");c.updateCookie();if("unload"===b){BOOMR.addVar("rt.quit","");c.onloadfired||BOOMR.addVar("rt.abld","");c.visiblefired||BOOMR.addVar("rt.ntvu","")}c.complete=!0;BOOMR.sendBeacon(c.beacon_url);return this},is_complete:function(){return c.complete},navigationStart:function(){c.navigationStart||c.initFromNavTiming();return c.navigationStart}}}}(window);!function(){var a,b;if(!BOOMR.plugins.BW){b=[{name:"image-0.png",size:11483,timeout:1400},{name:"image-1.png",size:40658,timeout:1200},{name:"image-2.png",size:164897,timeout:1300},{name:"image-3.png",size:381756,timeout:1500},{name:"image-4.png",size:1234664,timeout:1200},{name:"image-5.png",size:4509613,timeout:1200},{name:"image-6.png",size:9084559,timeout:1200}];b.end=b.length;b.start=0;b.l={name:"image-l.gif",size:35,timeout:1e3};a={base_url:"",timeout:15e3,nruns:5,latency_runs:10,user_ip:"",block_beacon:!1,test_https:!1,cookie_exp:604800,cookie:"BA",results:[],latencies:[],latency:null,runs_left:0,aborted:!1,complete:!0,running:!1,initialized:!1,ncmp:function(a,b){return a-b},iqr:function(a){var b,c,d,e,f=a.length-1,g=[];b=(a[Math.floor(.25*f)]+a[Math.ceil(.25*f)])/2;c=(a[Math.floor(.75*f)]+a[Math.ceil(.75*f)])/2;d=1.5*(c-b);if(0===d)return a;f++;for(e=0;f>e&&a[e]b-d&&g.push(a[e]);return g},calc_latency:function(){var a,b,c,d,e,f,g,h=0,i=0;this.latencies.shift();g=this.iqr(this.latencies.sort(this.ncmp));b=g.length;BOOMR.debug("latencies: "+this.latencies,"bw");BOOMR.debug("lat_filtered: "+g,"bw");for(a=0;b>a;a++){h+=g[a];i+=g[a]*g[a]}c=Math.round(h/b);e=Math.sqrt(i/b-h*h/(b*b));f=(1.96*e/Math.sqrt(b)).toFixed(2);e=e.toFixed(2);d=Math.round((g[Math.floor(b/2)]+g[Math.ceil(b/2)])/2);return{mean:c,median:d,stddev:e,stderr:f}},calc_bw:function(){var a,c,d,e,f,g,h,i,j,k,l,m,n,o,p=0,q=[],r=[],s=0,t=0,u=0,v=0,w=[];for(a=0;a=0&&3>m&&d[c];c--)if(null!==d[c].t){p++;m++;n=1e3*b[c].size/d[c].t;q.push(n);if(d[c].t>this.latency.mean){o=1e3*b[c].size/(d[c].t-this.latency.mean);r.push(o)}else w.push(c+"_"+d[c].t)}}BOOMR.debug("got "+p+" readings","bw");BOOMR.debug("bandwidths: "+q,"bw");BOOMR.debug("corrected: "+r,"bw");if(q.length>3){q=this.iqr(q.sort(this.ncmp));r=this.iqr(r.sort(this.ncmp))}else{q=q.sort(this.ncmp);r=r.sort(this.ncmp)}BOOMR.debug("after iqr: "+q,"bw");BOOMR.debug("corrected: "+r,"bw");p=Math.max(q.length,r.length);for(a=0;p>a;a++){if(a=b.end-1||void 0!==this.results[this.nruns-d].r[a+1]){BOOMR.debug(BOOMR.utils.objectToString(this.results[this.nruns-d],void 0,2),"bw");d===this.nruns&&(b.start=a);BOOMR.setImmediate(this.iterate,null,null,this)}else this.load_img(a+1,d,this.img_loaded)}else this.results[this.nruns-d].r[a+1]={t:null,state:null,run:d}},finish:function(){this.latency||(this.latency=this.calc_latency());var a=this.calc_bw(),b={bw:a.median_corrected,bw_err:parseFloat(a.stderr_corrected,10),lat:this.latency.mean,lat_err:parseFloat(this.latency.stderr,10),bw_time:Math.round(BOOMR.now()/1e3)};BOOMR.addVar(b);a.debug_info.length>0&&BOOMR.addVar("bw_debug",a.debug_info.join(","));!isNaN(b.bw)&&b.bw>0&&BOOMR.utils.setCookie(this.cookie,{ba:Math.round(b.bw),be:b.bw_err,l:b.lat,le:b.lat_err,ip:this.user_ip,t:b.bw_time},this.user_ip?this.cookie_exp:0);this.complete=!0;this.block_beacon===!0&&BOOMR.sendBeacon();this.running=!1},iterate:function(){if(!this.aborted)if(this.runs_left)if(this.latency_runs)this.load_img("l",this.latency_runs--,this.lat_loaded);else{this.results.push({r:[]});this.load_img(b.start,this.runs_left--,this.img_loaded)}else this.finish()},setVarsFromCookie:function(){var b,c,d,e,f,g,h,i,j;b=BOOMR.utils.getSubCookies(BOOMR.utils.getCookie(a.cookie));if(b&&b.ba){c=parseInt(b.ba,10);d=parseFloat(b.be,10);e=parseInt(b.l,10)||0;f=parseFloat(b.le,10)||0;g=b.ip.replace(/\.\d+$/,"0");h=parseInt(b.t,10);i=this.user_ip.replace(/\.\d+$/,"0");j=Math.round(BOOMR.now()/1e3);if(g===i&&h>=j-this.cookie_exp&&c>0){this.complete=!0;BOOMR.addVar({bw:c,lat:e,bw_err:d,lat_err:f,bw_time:h});return!0}}return!1}};BOOMR.plugins.BW={init:function(c){if(a.initialized)return this;BOOMR.utils.pluginConfig(a,c,"BW",["base_url","timeout","nruns","cookie","cookie_exp","test_https","block_beacon"]);c&&c.user_ip&&(a.user_ip=c.user_ip);if(!a.base_url)return this;b.start=0;a.runs_left=a.nruns;a.latency_runs=10;a.results=[];a.latencies=[];a.latency=null;a.complete=a.aborted=!1;BOOMR.removeVar("ba","ba_err","lat","lat_err");a.setVarsFromCookie()||BOOMR.subscribe("page_ready",this.run,null,this);a.initialized=!0;return this},run:function(){var b;if(a.running||a.complete)return this;b=BOOMR.window.document.createElement("a");b.href=a.base_url;if(!a.test_https&&"https:"===b.protocol){BOOMR.info("HTTPS detected, skipping bandwidth test","bw");a.complete=!0;a.block_beacon===!0&&BOOMR.sendBeacon();return this}a.base_url=b.href;a.running=!0;setTimeout(this.abort,a.timeout);a.iterate();return this},abort:function(){a.aborted=!0;a.running&&a.finish()},is_complete:function(){return a.block_beacon===!0?a.complete:!0}}}}();!function(){if(!BOOMR.plugins.NavigationTiming){var a={complete:!1,sendBeacon:function(){this.complete=!0;BOOMR.sendBeacon()},xhr_done:function(b){var c;if(b&&"spa_hard"===b.initiator)a.done(b);else if(b&&"spa"===b.initiator)a.sendBeacon();else{var d,e,f=(BOOMR.window,{});if(b){b.data&&(b=b.data);c=BOOMR.getPerformance();if(b.url&&c&&c.getEntriesByName){d=c.getEntriesByName(b.url);if(d&&d.length>0){d=d[0];f={nt_red_st:d.redirectStart,nt_red_end:d.redirectEnd,nt_fet_st:d.fetchStart,nt_dns_st:d.domainLookupStart,nt_dns_end:d.domainLookupEnd,nt_con_st:d.connectStart,nt_con_end:d.connectEnd,nt_req_st:d.requestStart,nt_res_st:d.responseStart,nt_res_end:d.responseEnd};d.secureConnectionStart&&(f.nt_ssl_st=d.secureConnectionStart);for(e in f)if(f.hasOwnProperty(e)&&f[e]){f[e]+=c.timing.navigationStart;f[e]=Math.round(f[e])}}}if(b.timing){d=b.timing;f.nt_req_st||(f.nt_req_st=d.requestStart);f.nt_res_st||(f.nt_res_st=d.responseStart);f.nt_res_end||(f.nt_res_end=d.responseEnd);f.nt_domint=d.domInteractive;f.nt_domcomp=d.domComplete;f.nt_load_st=d.loadEventEnd;f.nt_load_end=d.loadEventEnd}for(e in f)f.hasOwnProperty(e)&&!f[e]&&delete f[e];BOOMR.addVar(f);try{a.addedVars.push.apply(a.addedVars,Object.keys(f))}catch(g){}a.sendBeacon()}}},done:function(){var b,c,d,e,f=BOOMR.window;if(this.complete)return this;a.addedVars=[];b=BOOMR.getPerformance();if(b&&b.timing&&b.navigation){BOOMR.info("This user agent supports NavigationTiming.","nt");c=b.navigation;d=b.timing;e={nt_red_cnt:c.redirectCount,nt_nav_type:c.type,nt_nav_st:d.navigationStart,nt_red_st:d.redirectStart,nt_red_end:d.redirectEnd,nt_fet_st:d.fetchStart,nt_dns_st:d.domainLookupStart,nt_dns_end:d.domainLookupEnd,nt_con_st:d.connectStart,nt_con_end:d.connectEnd,nt_req_st:d.requestStart,nt_res_st:d.responseStart,nt_res_end:d.responseEnd,nt_domloading:d.domLoading,nt_domint:d.domInteractive,nt_domcontloaded_st:d.domContentLoadedEventStart,nt_domcontloaded_end:d.domContentLoadedEventEnd,nt_domcomp:d.domComplete,nt_load_st:d.loadEventStart,nt_load_end:d.loadEventEnd,nt_unload_st:d.unloadEventStart,nt_unload_end:d.unloadEventEnd};d.secureConnectionStart&&(e.nt_ssl_st=d.secureConnectionStart);d.msFirstPaint&&(e.nt_first_paint=d.msFirstPaint);BOOMR.addVar(e);try{a.addedVars.push.apply(a.addedVars,Object.keys(e))}catch(g){}}if(f.chrome&&f.chrome.loadTimes){d=f.chrome.loadTimes();if(d){e={nt_spdy:d.wasFetchedViaSpdy?1:0,nt_cinf:d.connectionInfo,nt_first_paint:d.firstPaintTime};BOOMR.addVar(e);try{a.addedVars.push.apply(a.addedVars,Object.keys(e))}catch(g){}}}a.sendBeacon()},clear:function(){if(a.addedVars&&a.addedVars.length>0){BOOMR.removeVar(a.addedVars);a.addedVars=[]}this.complete=!1}};BOOMR.plugins.NavigationTiming={init:function(){if(!a.initialized){BOOMR.subscribe("page_ready",a.done,null,a);BOOMR.subscribe("xhr_load",a.xhr_done,null,a);BOOMR.subscribe("before_unload",a.done,null,a);BOOMR.subscribe("onbeacon",a.clear,null,a);a.initialized=!0}return this},is_complete:function(){return!0}}}}();!function(){function a(a){var b,c,d,e,f,g,h,i,j={};for(b in a){c=b;for(d=0;d10)return o;try{i=d(a);if(a.frames)for(g=0;gi&&(k=c+(j-i));o=o.concat(e(a.frames[g],!1,k,f+1))}try{n=a.location&&a.location.href;if(!("performance"in a&&a.performance&&"function"==typeof a.performance.getEntriesByType))return o}catch(p){return o}if(b){h=a.performance.getEntriesByType("navigation");if(h&&1===h.length){l=h[0];o.push({name:a.location.href,startTime:0,initiatorType:"html",redirectStart:l.redirectStart,redirectEnd:l.redirectEnd,fetchStart:l.fetchStart,domainLookupStart:l.domainLookupStart,domainLookupEnd:l.domainLookupEnd,connectStart:l.connectStart,secureConnectionStart:l.secureConnectionStart,connectEnd:l.connectEnd,requestStart:l.requestStart,responseStart:l.responseStart,responseEnd:l.responseEnd})}else if(a.performance.timing){m=a.performance.timing;o.push({name:a.location.href,startTime:0,initiatorType:"html",redirectStart:m.redirectStart?m.redirectStart-m.navigationStart:0,redirectEnd:m.redirectEnd?m.redirectEnd-m.navigationStart:0,fetchStart:m.fetchStart?m.fetchStart-m.navigationStart:0,domainLookupStart:m.domainLookupStart?m.domainLookupStart-m.navigationStart:0,domainLookupEnd:m.domainLookupEnd?m.domainLookupEnd-m.navigationStart:0,connectStart:m.connectStart?m.connectStart-m.navigationStart:0,secureConnectionStart:m.secureConnectionStart?m.secureConnectionStart-m.navigationStart:0,connectEnd:m.connectEnd?m.connectEnd-m.navigationStart:0,requestStart:m.requestStart?m.requestStart-m.navigationStart:0,responseStart:m.responseStart?m.responseStart-m.navigationStart:0,responseEnd:m.responseEnd?m.responseEnd-m.navigationStart:0})}}var q=a.performance.getEntriesByType("resource"),r=[];for(g=0;q&&g-1||g.name.indexOf(BOOMR.config_url)>-1||a&&i+g.startTimeb)break;("undefined"==typeof c||"*"===c||!c.length||g.initiatorType&&BOOMR.utils.inArray(g.initiatorType,c))&&j.push(g)}}return j}function i(a){var b,c,d,e;if(a.encodedBodySize||a.decodedBodySize||a.transferSize){b=a.transferSize;c=a.encodedBodySize;d=a.decodedBodySize;e=[c,b?b-c:"_",d?d-c:0];return e.map(f).join(",").replace(/,+$/,"")}return""}function j(d,e){var j,k,l,o,p,q=h(d,e),u={},v={};if(!q||!q.length)return{};v=g(BOOMR.window);for(j=0;j1?g[b[1]]=e.length:f+="/"+e.length)}catch(h){BOOMR.addError(h,"Memory.nodeList."+a+".filter")}}return g||f}catch(h){BOOMR.addError(h,"Memory.nodeList."+a);return 0}}function b(a,b,c){if(a)try{b()}catch(d){BOOMR.addError(d,"Memory.done."+c)}}var c,d,e,f,g,h,i,j={};if(!BOOMR.plugins.Memory){i={done:function(){if(c){BOOMR.removeVar("dom.res");b(!0,function(){var a,b,c={};if(j&&"function"==typeof j.getEntriesByType){a=j.getEntriesByType("resource");if(a&&a.length){BOOMR.addVar("dom.res",a.length);b=BOOMR.window.document.createElement("a");[].forEach.call(a,function(a){b.href=a.name;c[b.hostname]=!0});BOOMR.addVar("dom.doms",Object.keys(c).length)}}},"resources");e&&BOOMR.addVar({"mem.total":e.totalJSHeapSize,"mem.limit":e.jsHeapSizeLimit,"mem.used":e.usedJSHeapSize});b(f,function(){BOOMR.addVar({"scr.xy":f.width+"x"+f.height,"scr.bpp":f.colorDepth+"/"+(f.pixelDepth||"")});f.orientation&&BOOMR.addVar("scr.orn",f.orientation.angle+"/"+f.orientation.type);c.devicePixelRatio>1&&BOOMR.addVar("scr.dpx",c.devicePixelRatio);(0!==c.scrollX||0!==c.scrollY)&&BOOMR.addVar("scr.sxy",c.scrollX+"x"+c.scrollY)},"screen");b(g,function(){g.hardwareConcurrency&&BOOMR.addVar("cpu.cnc",g.hardwareConcurrency);g.maxTouchPoints&&BOOMR.addVar("scr.mtp",g.maxTouchPoints)},"navigator");b(h,function(){BOOMR.addVar("bat.lvl",h.level)},"battery");b(!0,function(){BOOMR.addVar({"dom.ln":a("*"),"dom.sz":d.documentElement.innerHTML.length});BOOMR.addVar(a("img",["dom.img","dom.img.ext"],function(a){return a.src&&!a.src.match(/^(?:about:|javascript:|data:|#)/)}));BOOMR.addVar(a("script",["dom.script","dom.script.ext"],function(a){return a.src&&!a.src.match(/^(?:about:|javascript:|#)/)}))},"dom")}}};BOOMR.plugins.Memory={init:function(){var a;try{c=BOOMR.window;d=c.document;j=BOOMR.getPerformance();a=c.console;f=c.screen;g=c.navigator;g&&g.battery?h=g.battery:g&&g.getBattery&&g.getBattery().then(function(a){h=a})}catch(b){BOOMR.addError(b,"Memory.init")}e=j&&j.memory?j.memory:a&&a.memory?a.memory:null;if(i.initialized)return this;i.initialized=!0;BOOMR.subscribe("before_beacon",i.done,null,i);return this},is_complete:function(){return!0}}}}();!function(){if(!BOOMR.plugins.CACHE_RELOAD){var a={url:""};BOOMR.plugins.CACHE_RELOAD={init:function(b){BOOMR.utils.pluginConfig(a,b,"CACHE_RELOAD",["url"]);if(!a.url)return this;var c=document.createElement("iframe");c.style.display="none";c.src=a.url;document.body.appendChild(c);return this},is_complete:function(){return!0}}}}();!function(){"use strict";function a(a,b){var c=(65535&a)+(65535&b),d=(a>>16)+(b>>16)+(c>>16);return d<<16|65535&c}function b(a,b){return a<>>32-b}function c(c,d,e,f,g,h){return a(b(a(a(d,c),a(f,h)),g),e)}function d(a,b,d,e,f,g,h){return c(b&d|~b&e,a,b,f,g,h)}function e(a,b,d,e,f,g,h){return c(b&e|d&~e,a,b,f,g,h)}function f(a,b,d,e,f,g,h){return c(b^d^e,a,b,f,g,h)}function g(a,b,d,e,f,g,h){return c(d^(b|~e),a,b,f,g,h)}function h(b,c){b[c>>5]|=128<>>9<<4)+14]=c;var h,i,j,k,l,m=1732584193,n=-271733879,o=-1732584194,p=271733878;for(h=0;h>5]>>>b%32&255);return c}function j(a){var b,c=[];c[(a.length>>2)-1]=void 0;for(b=0;b>5]|=(255&a.charCodeAt(b/8))<16&&(e=h(e,8*a.length));for(c=0;16>c;c+=1){f[c]=909522486^e[c];g[c]=1549556828^e[c]}d=h(f.concat(j(b)),512+8*b.length);return i(h(g.concat(d),640))}function m(a){var b,c,d="0123456789abcdef",e="";for(c=0;c>>4&15)+d.charAt(15&b)}return e}function n(a){return unescape(encodeURIComponent(a))}function o(a){return k(n(a))}function p(a){return m(o(a))}function q(a,b){return l(n(a),n(b))}function r(a,b){return m(q(a,b))}function s(a,b,c){return b?c?q(b,a):r(b,a):c?o(a):p(a)}if(!BOOMR.utils||!BOOMR.utils.md5){BOOMR.utils=BOOMR.utils||{};BOOMR.utils.MD5=s}}();!function(){if(!BOOMR.utils||!BOOMR.utils.Compression){var a=BOOMR.utils.Compression={};a.jsUrl=function(b){function c(a){if(!/[^\w-.]/.test(a))return a;a=a.replace(/[^\w-.]/g,function(a){if("$"===a)return"!";a=a.charCodeAt(0);return 256>a?"*"+("00"+a.toString(16)).slice(-2):"**"+("0000"+a.toString(16)).slice(-4)});return a}var d=[];switch(typeof b){case"number":return isFinite(b)?"~"+b:"~null";case"string":return"~'"+c(b);case"boolean":return"~"+b;case"object":if(!b)return"~null";if(Array.isArray(b)){for(var e=0;e-1&&(a=a.replace(/eval code/g,"eval").replace(/(\(eval at [^\()]*)|(\)\,.*$)/g,""));var b=a.replace(/^\s+/,"").replace(/\(eval code/g,"(").split(/\s+/).slice(1),c=this.extractLocation(b.pop()),d=b.join(" ")||void 0,e="eval"===c[0]?void 0:c[0];return{functionName:d,fileName:e,lineNumber:c[1],columnNumber:c[2],source:a}},this)},parseFFOrSafari:function(c){var d=b(c.stack.split("\n"),function(a){return!a.match(e)},this);return a(d,function(a){a.indexOf(" > eval")>-1&&(a=a.replace(/ line (\d+)(?: > eval line \d+)* > eval\:\d+\:\d+/g,":$1"));if(-1===a.indexOf("@")&&-1===a.indexOf(":"))return{functionName:a};var b=a.split("@"),c=this.extractLocation(b.pop()),d=b.join("@")||void 0;return{functionName:d,fileName:c[0],lineNumber:c[1],columnNumber:c[2],source:a}},this)},parseOpera:function(a){return!a.stacktrace||a.message.indexOf("\n")>-1&&a.message.split("\n").length>a.stacktrace.split("\n").length?this.parseOpera9(a):a.stack?this.parseOpera11(a):this.parseOpera10(a)},parseOpera9:function(a){for(var b=/Line (\d+).*script (?:in )?(\S+)/i,c=a.message.split("\n"),d=[],e=2,f=c.length;f>e;e+=2){var g=b.exec(c[e]);g&&d.push({fileName:g[2],lineNumber:g[1],source:c[e]})}return d},parseOpera10:function(a){for(var b=/Line (\d+).*script (?:in )?(\S+)(?:: In function (\S+))?$/i,c=a.stacktrace.split("\n"),d=[],e=0,f=c.length;f>e;e+=2){var g=b.exec(c[e]);g&&d.push({functionName:g[3]||void 0,fileName:g[2],lineNumber:g[1],source:c[e]})}return d},parseOpera11:function(d){var e=b(d.stack.split("\n"),function(a){return!!a.match(c)&&!a.match(/^Error created at/)},this);return a(e,function(a){var b,c=a.split("@"),d=this.extractLocation(c.pop()),e=c.shift()||"",f=e.replace(//,"$2").replace(/\([^\)]*\)/g,"")||void 0;e.match(/\(([^\)]*)\)/)&&(b=e.replace(/^[^\(]+\(([^\)]*)\)$/,"$1"));var g=void 0===b||"[arguments not available]"===b?void 0:b.split(",");return{functionName:f,args:g,fileName:d[0],lineNumber:d[1],columnNumber:d[2],source:a}},this)}}});!function(){function a(a){a=a||{};"number"==typeof a.count||"string"==typeof a.count?this.count=parseInt(a.count,10):this.count=1;"number"==typeof a.timestamp?this.timestamp=a.timestamp:this.timestamp=BOOMR.now();("number"==typeof a.code||"string"==typeof a.code)&&(this.code=parseInt(a.code,10));"string"==typeof a.message&&(this.message=a.message);"string"==typeof a.functionName&&(this.functionName=a.functionName);"string"==typeof a.fileName&&(this.fileName=a.fileName);("number"==typeof a.lineNumber||"string"==typeof a.lineNumber)&&(this.lineNumber=parseInt(a.lineNumber,10));("number"==typeof a.columnNumber||"string"==typeof a.columnNumber)&&(this.columnNumber=parseInt(a.columnNumber,10));"string"==typeof a.stack&&(this.stack=a.stack);"string"==typeof a.type&&(this.type=a.type);"undefined"!=typeof a.extra&&(this.extra=a.extra);this.source="number"==typeof a.source||"string"==typeof a.source?parseInt(a.source,10):BOOMR.plugins.Errors.SOURCE_APP;("number"==typeof a.via||"string"==typeof a.via)&&(this.via=parseInt(a.via,10));Array.isArray(a.frames)?this.frames=a.frames:this.frames=[];Array.isArray(a.events)?this.events=a.events:this.events=[]}var b;if(!BOOMR.plugins.Errors){var c=["BOOMR_addError","BOOMR_plugins_errors_wrap"];a.prototype.equals=function(a){return"object"!=typeof a?!1:this.code!==a.code?!1:this.message!==a.message?!1:this.functionName!==a.functionName?!1:this.fileName!==a.fileName?!1:this.lineNumber!==a.lineNumber?!1:this.columnNumber!==a.columnNumber?!1:this.stack!==a.stack?!1:this.type!==a.type?!1:this.source!==a.source?!1:!0};a.fromError=function(b,d,e){var f,g,h,i,j=!1,k=BOOMR.now();if(!b)return null;if(b.stack){g=ErrorStackParser.parse(b);if(g&&g.length){if(b.generatedStack){if(g.length>=4&&g[1].functionName&&-1!==g[1].functionName.indexOf("createStackForSend")){g=g.slice(3);j=!0}if(g.length>=3&&g[0].functionName&&-1!==g[0].functionName.indexOf("createStackForSend")){g=g.slice(2);j=!0}if(g.length>=1&&g[0].functionName&&-1!==g[0].functionName.indexOf("BOOMR_plugins_errors")){g=g.slice(1);j=!0}}for(h=0;h=b.maxErrors)){g=a.fromError(c,d,e);h=b.mergeDuplicateErrors(b.errors,g,!1);BOOMR.fireEvent("onerror",h||g);b.mergeDuplicateErrors(b.q,g,!0);if(!b.isDuringLoad&&-1===b.sendIntervalId){if(h)return;b.sendIntervalId=setTimeout(function(){b.sendIntervalId=-1;BOOMR.addVar("http.initiator","error");BOOMR.addVar("api",1);b.addErrorsToBeacon();BOOMR.sendBeacon()},b.sendInterval)}}}},findDuplicateError:function(a,b){if(!Array.isArray(a)||"undefined"==typeof b)return void 0;for(var c=0;c1?arguments[1]:BOOMR.window;var d=Array.prototype.slice.call(arguments,2);return b.wrap(a,c).apply(c,d)},compressErrors:function(a){var b,c,d,e,f,g,h,i,j,k=0;i=BOOMR.window.location.origin;for(b=0;b0?1:0)+"&si="+BOOMR.session.ID+"-"+Math.round(BOOMR.session.start/1e3).toString(36)+(i?"&r=":"")+(o?"&bcn="+encodeURIComponent(o):"")+(i?"":"&plugins="+p.join(","));n.href=k;BOOMR.config_url=n.href;b=f.createElement(g);b.src=k;l.parentNode.insertBefore(b,l);l=null;i&&setTimeout(function(){d();if(b){c(b);b=null}},m)}var e,f=document,g="script",h=a.location.hostname,i=!1,j=!1,k=!0,l="undefined"!=typeof a.BOOMR_LOGN_always,m=a.BOOMR_CONFIG_RELOAD_TIMEOUT||33e4,n=!1;(l||!(BOOMR.plugins.LOGN||!h||"localhost"===h||h.match(/\.\d+$/)||h.match(/^mhtml/)||h.match(/^file:\//)))&&(BOOMR.plugins.LOGN={init:function(c){if(i||BOOMR.session.rate_limited)return this;if(c&&c.rate_limited){BOOMR.session.rate_limited=!0;return this}c&&"undefined"!=typeof c.autorun&&(k=c.autorun);if(j){BOOMR.fireEvent("onconfig",c);n=!0;BOOMR.setImmediate(b);setTimeout(d,m);BOOMR.addVar("t_configjs",BOOMR.now()-e);if("number"==typeof BOOMR_configt){BOOMR.addVar("t_configfb",BOOMR_configt-e);delete BOOMR_configt}return this}BOOMR.registerEvent("onconfig");BOOMR.setVarPriority("h.d",-1);BOOMR.setVarPriority("h.key",-1);BOOMR.setVarPriority("h.t",-1);BOOMR.setVarPriority("h.cr",1);j=!0;a===window?BOOMR.subscribe("page_ready",d,null,null):d();return this},is_complete:function(){return n}})}(BOOMR.window);BOOMR.addVar({"h.key":"5VS23-BHL36-JUED4-78U6Z-ZT97H"}).init({primary:!0,log:null,wait:!0,site_domain:null,ResourceTiming:{enabled:!1},Angular:{enabled:!1},Ember:{enabled:!1},Backbone:{enabled:!1},History:{enabled:!1},Errors:{enabled:!1}});BOOMR.t_end=(new Date).getTime();