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{return void(b=window.parent.document)}catch(c){document.domain=a}try{return void(b=window.parent.document)}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;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,BOOMR.version||(BOOMR.version="1.246.1441122062",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");return b=b||{cancelable:!1,bubbles:!1},c.initCustomEvent(a,b.bubbles,b.cancelable,b.detail),c})}catch(b){}!f&&d.createEventObject&&(f=function(a,b){var c=d.createEventObject();return c.type=c.propertyName=a,c.detail=b.detail,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())},"undefined"!=typeof document.hidden?(h="visibilityState",i="visibilitychange"):"undefined"!=typeof document.mozHidden?(h="mozVisibilityState",i="mozvisibilitychange"):"undefined"!=typeof document.msHidden?(h="msVisibilityState",i="msvisibilitychange"):"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:{},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;if(a=a.toLowerCase(),this.events.hasOwnProperty(a))for(this.public_events.hasOwnProperty(a)&&g(this.public_events[a],b),e=this.events[a],c=0;c")}}},c={t_start:BOOMR_start,url:e,config_url:null,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;if(void 0===b&&(b="\n "),c||(c=0),"[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;return c=" "+d.cookie+";",(b=c.indexOf(a))>=0?(b+=a.length,c=c.substring(b,c.indexOf(";",b)).replace(/^"/,"").replace(/"$/,"")):void 0},setCookie:function(a,b,c){var e,f,g,h,i;if(!a||!BOOMR.session.domain)return BOOMR.debug("No cookie name or site domain: "+a+"/"+BOOMR.session.domain),null;if(e=this.objectToString(b,"&"),f=a+'="'+e+'"',h=[f,"path=/","domain="+BOOMR.session.domain],c&&(i=new Date,i.setTime(i.getTime()+1e3*c),i=i.toGMTString(),h.push("expires="+i)),f.length<500){if(d.cookie=h.join("; "),g=this.getCookie(a),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)return BOOMR.debug("TypeError: cookie is not a string: "+typeof a),null;for(b=a.split("&"),c=0,d=b.length;d>c;c++)e=b[c].split("="),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){return a&&"[object Array]"!==Object.prototype.toString.call(a)?b.strip_query_string?a.replace(/\?.*/,"?qs-redacted"):a:""},hashQueryString:function(a,b){return a?a.match?(a.match(/^\/\//)&&(a=location.protocol+a),a.match(/^(https?|file):/)?(b&&(a=a.replace(/#.*/,"")),BOOMR.utils.MD5?a.replace(/\?([^#]*)/,function(a,b){return"?"+(b.length>10?BOOMR.utils.MD5(b):b)}):a):(BOOMR.error("Passed in URL is invalid: "+a),"")):(BOOMR.addError("TypeError: Not a string","hashQueryString",typeof a),""):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};return window.MutationObserver&&d&&a?(h.observer=new MutationObserver(g),c&&(h.timer=setTimeout(g,h.timeout)),h.observer.observe(a,b),h):null},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;e')}catch(g){b=document.createElement("iframe")}a.action=f.shift(),b.name=b.id=c,b.style.display=a.style.display="none",b.src="javascript:false",d(b.id),d(a.id),document.body.appendChild(b),b.appendChild(a);try{a.submit()}catch(g){}f.length&&BOOMR.setImmediate(e),setTimeout(function(){d(b.id)},1e4)}var f=(document.createElement("input"),[b.beacon_url]);a.method=c,a.id="beacon_form",a.enctype="application/x-www-form-urlencoded",b.secondary_beacons&&b.secondary_beacons.length&&f.push.apply(f,b.secondary_beacons),e()}},init:function(c){var e,f,g=["beacon_url","beacon_type","user_ip","strip_query_string","secondary_beacons","autorun"];if(BOOMR_check_doc_domain(),c||(c={}),c.primary&&b.handlers_attached)return this;void 0!==c.site_domain&&(this.session.domain=c.site_domain),void 0!==c.log&&(this.log=c.log),this.log||(this.log=function(){});for(f in this.plugins)if(this.plugins.hasOwnProperty(f)){if(c[f]&&c[f].hasOwnProperty("enabled")&&c[f].enabled===!1){b.disabled_plugins[f]=1,"function"==typeof this.plugins[f].disable&&this.plugins[f].disable();continue}if(b.disabled_plugins[f]){if(!c[f]||!c[f].hasOwnProperty("enabled")||c[f].enabled!==!0)continue;"function"==typeof this.plugins[f].enable&&this.plugins[f].enable(),delete b.disabled_plugins[f]}if("function"==typeof this.plugins[f].init)try{this.plugins[f].init(c)}catch(h){BOOMR.addError(h,f+".init")}}for(e=0;e1?" (*"+b.errors[c]+")":""));if(j.length>0&&(b.vars.errors=j.join("\n")),b.errors={},b.fireEvent("before_beacon",b.vars),BOOMR.debug("Ready to send beacon: "+BOOMR.utils.objectToString(b.vars)),!b.beacon_url)return BOOMR.debug("No beacon URL, so skipping."),!0;if(BOOMR.hasVar("restiming"))e=document.createElement("form"),i=BOOMR.utils.pushVars(e,b.vars);else{h=[];for(c in b.vars)b.vars.hasOwnProperty(c)&&(k++,h.push(encodeURIComponent(c)+"="+(void 0===b.vars[c]||null===b.vars[c]?"":encodeURIComponent(b.vars[c]))));f=b.beacon_url+(b.beacon_url.indexOf("?")>-1?"&":"?")+h.join("&")}if(BOOMR.removeVar("qt"),b.fireEvent("onbeacon",b.vars),0===i&&0===k)return this;if(BOOMR.session.rate_limited)return BOOMR.debug("Skipping because we're rate limited"),this;if(k){if(g=new Image,g.src=f,b.secondary_beacons)for(c=0;c2e3?"POST":"GET":"POST");return!0}},delete BOOMR_start,"number"==typeof BOOMR_lstart?(c.t_lstart=BOOMR_lstart,delete BOOMR_lstart):"number"==typeof BOOMR.window.BOOMR_lstart&&(c.t_lstart=BOOMR.window.BOOMR_lstart),"number"==typeof BOOMR.window.BOOMR_onload&&(c.t_onload=BOOMR.window.BOOMR_onload),function(){var a;"object"==typeof console&&void 0!==console.log&&(c.log=function(a,b,c){console.log(c+": ["+b+"] "+a)}),a=function(a){return function(b,c){return this.log(b,a,"boomerang"+(c?"."+c:"")),this}},c.debug=a("debug"),c.info=a("info"),c.warn=a("warn"),c.error=a("error")}(),function(){var a;for(a in c)c.hasOwnProperty(a)&&(BOOMR[a]=c[a]);BOOMR.xhr_excludes||(BOOMR.xhr_excludes={})}(),g("onBoomerangLoaded",{BOOMR:BOOMR},!0))}(window),function(){if(!BOOMR.plugins.ConfigOverride){var a={safeConfigOverride:function(b,c,d){for(var e in c)b.hasOwnProperty(e)&&c.hasOwnProperty(e)&&("object"!=typeof c[e]||"object"==typeof b[e])&&("object"==typeof b[e]&&"object"==typeof c[e]?(d[e]=d[e]||{},a.safeConfigOverride(b[e],c[e],d[e])):(d[e]=b[e],BOOMR.addVar("c.o","")))},allowedConfigOverrides:{Angular:{enabled:!0},Ember:{enabled:!0},Backbone:{enabled:!0},PageParams:{pageGroups:!0,customMetrics:!0,customDimensions:!0,customTimers:!0,abTests:!0},instrument_xhr:!0,RT:{session_exp:!0},BW:{base_url:!0,enabled:!0,test_https:!0},ResourceTiming:{enabled:!0},secondaryBeacons:!0,autorun:!0}};BOOMR.plugins.ConfigOverride={init:function(b){return BOOMR.window&&BOOMR.window.BOOMR_config&&(BOOMR.debug("Found BOOMR_config on global scope: "+BOOMR.utils.objectToString(BOOMR.window.BOOMR_config),"ConfigOverride"),a.safeConfigOverride(BOOMR.window.BOOMR_config,a.allowedConfigOverrides,b)),this},is_complete:function(){return!0}}}}(),function(){var a,b,c,d,e,f;BOOMR=window.BOOMR||{},BOOMR.plugins.PageParams||(f=function(a){return this.varname=a.varname,this.method=a.method||BOOMR.addVar,this.ctx=a.ctx||BOOMR,this.preProcessor=a.preProcessor,this.sanitizeRE=a.sanitizeRE||/[^\w \-]/g,this.cleanUpRE=a.cleanUpRE,this},f.prototype={apply:function(a){return this.preProcessor&&(a=this.preProcessor(a)),a||0===a?(this.method.call(this.ctx,this.varname,a),!0):!1},handle:function(a){var b=this;return this.isValid(a)?(a.label&&(b=new f(this),b.varname=a.label),b[a.type](a)):!1},isValid:function(a){return a&&"object"==typeof a&&a.hasOwnProperty("type")&&"function"==typeof this[a.type]&&(this.varname||a.label)},cleanUp:function(a){var b;return a?this.cleanUpRE?(b=a.match(this.cleanUpRE),b&&b.length>1?b[1]:""):a.replace(this.sanitizeRE,""):a},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;if(b.match&&"numeric"!==b.match){if("boolean"===b.match)a=1;else if(b.match.match(/^regex:/)){if(c=b.match.match(/^regex:(.*)/),!c||c.length<2)return!1;try{d=new RegExp(c[1],"i"),d.test(a.textContent||a.innerText)&&(a=1)}catch(e){return BOOMR.debug("Bad pattern: "+b.match,"PageVars"),BOOMR.debug(e,"PageVars"),BOOMR.addError(e,"PageVars.URLPatternType",b.match),!1}}}else a=this.cleanUp(a.textContent||a.innerText);return a},handleRegEx:function(a,b,c){var d,e;if(!(a instanceof RegExp))try{a=new RegExp(a,"i")}catch(f){return BOOMR.debug("Error generating regex: "+f,"PageVars"),BOOMR.addError(f,"PageVars.handleRegEx",a),!1}return"undefined"==typeof c?!1:(e=a.exec(c),e&&e.length?(d=b.replace(/\$([1-9])/g,function(a,b){return decodeURIComponent(e[parseInt(b,10)])}),d=this.cleanUp(d),this.apply(d)):!1)},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){return BOOMR.debug("Bad pattern: "+d,"PageVars"),BOOMR.debug(e,"PageVars"),BOOMR.addError(e,"PageVars.checkURLPattern",a),!1}return c||(c=b.href),d.exec(c)?!0:(BOOMR.debug("No match "+d+" on "+c,"PageVars"),!1)},nodeWalk:function(a,b){var c,d,e,f;if(!b)return a;if(c=b.match(/^(\w+)(?:\[(\d+)\])?\/?(.*)/),!c||!c.length)return null;if(d=a.getElementsByTagName(c[1]),c[2]){if(e=parseInt(c[2],10),isNaN(e))return null;if(e--,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 if(g=parseFloat(f[a.start],10),!isNaN(g)&&0===g)return BOOMR.debug("Start was 0 (not supported on this resource)","PageVars"),!1;return h=parseFloat(f[a.end],10),isNaN(g)||isNaN(h)?(BOOMR.debug("Start and end were not numeric: "+g+", "+h,"PageVars"),!1):0===h?(BOOMR.debug("End was 0 (not supported on this resource)","PageVars"),!1):(BOOMR.debug("Final values: "+g+", "+h,"PageVars"),BOOMR.addVar(this.varname+"_st",Math.round(g)),this.apply(h-g))},findResource:function(b,c){var d,e,f;c||(c=a);try{if(!("performance"in c&&c.performance&&c.performance.getEntriesByName&&c.performance.getEntriesByType))return null;f=c.performance.getEntriesByName(b)}catch(g){if(BOOMR.isCrossOriginError(g))return null;try{if("TypeError"===g.name&&"Invalid calling object"===g.message&&c.document.location.pathname.match(/\.pdf$/))return null}catch(h){}return BOOMR.addError(g,"PageVars.findResource"),null}if(f&&f.length>0)return f[0];if(f=c.performance.getEntriesByType("resource"),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(),!0},Handler:f})}(),function(){function a(a){if(!a)return null;a.href=a.href;var b=a.pathname;return"/"!==b.charAt(0)&&(b="/"+b),b}function b(b){return 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(!j){var a={timing:{},initiator:"click"};BOOMR.orig_XMLHttpRequest&&BOOMR.orig_XMLHttpRequest!==BOOMR.window.XMLHttpRequest&&(a.timing.requestStart=BOOMR.now(),h.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)return BOOMR.window.XMLHttpRequest=BOOMR.proxy_XMLHttpRequest,void c.start();BOOMR.orig_XMLHttpRequest=BOOMR.window.XMLHttpRequest,c.start(),d(),BOOMR.proxy_XMLHttpRequest=function(){var a,c,d,e={timing:{},initiator:"xhr"};return a=new BOOMR.orig_XMLHttpRequest,c=a.open,d=a.send,a.open=function(d,f,g){function m(){e.timing.loadEventEnd||(e.timing.loadEventEnd=BOOMR.now(),e.index>-1?h.load_finished(e.index):(!j||k)&&h.addEvent(e))}function r(b,c){a.addEventListener(b,function(){"readystatechange"===b?(e.timing[l[a.readyState]]=BOOMR.now(),4===a.readyState&&m()):(e.status=void 0===c?a.status:c,m())},!1)}if(i.href=f,b(i))return c.apply(a,arguments);void 0===g&&(g=!0),j&&h.watch&&h.add_event_resource(e),g&&r("readystatechange"),r("load"),r("timeout",n),r("error",p),r("abort",o),e.url=i.href,e.method=d,delete e.status,g||(e.synchronous=!0);try{return c.apply(a,arguments)}catch(s){e.status=q,m()}},a.send=function(){return e.timing.requestStart=BOOMR.now(),"undefined"==typeof e.status||e.status!==q?d.apply(a,arguments):void 0},a.resource=e,a},BOOMR.window.XMLHttpRequest=BOOMR.proxy_XMLHttpRequest}}function f(){BOOMR.orig_XMLHttpRequest&&BOOMR.orig_XMLHttpRequest!==BOOMR.window.XMLHttpRequest&&(BOOMR.window.XMLHttpRequest=BOOMR.orig_XMLHttpRequest)}var g,h,i,j=!1,k=!1,l=["uninitialized","open","responseStart","domInteractive","responseEnd"],m=1e3,n=-1001,o=-999,p=-998,q=-997;window.XMLHttpRequest&&(new XMLHttpRequest).addEventListener&&(BOOMR.plugins.AutoXHR||(c.stop=function(){c.observer&&c.observer.observer&&(c.observer.observer.disconnect(), c.observer=null)},c.start=function(){c.observer=BOOMR.utils.addObserver(g,{childList:!0,attributes:!0,subtree:!0,attributeFilter:["src","href"]},null,h.mutation_cb,null,h),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)return this.pending_events[b]=void 0,null}else if("xhr"===d.type){if("click"===e.type)return null}else if("spa"===d.type&&"xhr"===e.type)return null;return this.watch++,this.pending_events.push(e),c.observer?("spa"!==e.type?this.setTimeout(50,f):this.setTimeout(m,f),f):(a.url&&a.timing.loadEventEnd&&this.sendEvent(f),null)},c.prototype.sendEvent=function(a){var b=this.pending_events[a],c=this;if(b&&!b.complete)if(b.complete=!0,this.watch--,this.clearTimeout(),BOOMR.hasVar("h.cr")){if(b.resource.resources=b.resources,BOOMR.plugins.ResourceTiming&&BOOMR.plugins.ResourceTiming.is_supported()&&b.resource.timing&&b.resource.timing.requestStart){var d=BOOMR.plugins.ResourceTiming.getResourceTiming(b.resource.timing.requestStart);BOOMR.addVar("restiming",JSON.stringify(d))}b.resource.onComplete&&b.resource.onComplete();var e=b.resource.timing?b.resource.timing.requestStart:void 0;BOOMR.responseEnd(b.resource,e,b.resource),this.pending_events[a]=void 0}else setTimeout(function(){c.sendEvent(a)},5e3)},c.prototype.setTimeout=function(a,b){var c=this;a&&(this.clearTimeout(),this.timer=setTimeout(function(){c.timedout(b)},a))},c.prototype.timedout=function(a){this.clearTimeout(),!this.pending_events[a]||"xhr"!==this.pending_events[a].type&&"spa"!==this.pending_events[a].type?(this.watch>0&&this.watch--,this.pending_events[a]=void 0):"xhr"===this.pending_events[a].type?this.sendEvent(a):"spa"===this.pending_events[a].type&&0===this.pending_events[a].nodes_to_wait&&this.sendEvent(a)},c.prototype.clearTimeout=function(){this.timer&&(clearTimeout(this.timer),this.timer=null)},c.prototype.load_cb=function(a){var b,c;b=a.target||a.srcElement,b&&b._bmr&&(b._bmr.end||(b._bmr.end=BOOMR.now(),b._bmr.state=a.type,c=b._bmr.res,this.load_finished(c)))},c.prototype.load_finished=function(a){var b=this.pending_events[a];b&&(b.nodes_to_wait--,0===b.nodes_to_wait&&(b.resource.timing.loadEventEnd=BOOMR.now(),"spa"===b.type?this.setTimeout(m,a):this.sendEvent(a)))},c.prototype.wait_for_node=function(a,c){var d,e,f,g,h,k=this,l=!1,m=!1;if(a.nodeName.match(/^(IMG|SCRIPT|IFRAME)$/)||"LINK"===a.nodeName&&a.rel&&a.rel.match(/\/i)){if(a._bmr&&a._bmr.end&&(m=!0),a._bmr={start:BOOMR.now(),res:c},h=a.src||a.href,"IMG"===a.nodeName){if(a.naturalWidth&&!m)return!1;if(""===a.getAttribute("src"))return!1}if(!h||h.match(/^(about:|javascript:)/i))return!1;if(d=this.pending_events[c],!d)return!1;if(d.urls||(d.urls={}),d.urls[h])return!1;if("SCRIPT"===a.nodeName&&j)return!1;if(!d.resource.url&&("SCRIPT"===a.nodeName||"IMG"===a.nodeName)){if(i.href=h,b(i))return!1;d.resource.url=i.href}a.addEventListener("load",function(a){k.load_cb(a)}),a.addEventListener("error",function(a){k.load_cb(a)}),d.nodes_to_wait++,d.resources.push(a),d.urls[h]=1,l=!0}else if(a.nodeType===Node.ELEMENT_NODE&&(e=a.getElementsByTagName("IMG"),e&&e.length))for(f=0,g=e.length;g>f;f++)l|=this.wait_for_node(e[f],c);return l},c.prototype.add_event_resource=function(a){var b,c=this.pending_events.length-1;return 0>c?-1:(b=this.pending_events[c])&&a?(b.nodes_to_wait++,a.index=c,c):-1},c.prototype.mutation_cb=function(a){var b,c,d;return this.watch?(this.clearTimeout(),b=this,c=!1,d=this.pending_events.length-1,0>d||!this.pending_events[d]?!0:(a&&a.length&&(this.pending_events[d].resource.timing.domComplete=BOOMR.now(),a.forEach(function(a){var e,f;if("attributes"===a.type)c|=b.wait_for_node(a.target,d);else if("childList"===a.type)for(f=a.addedNodes.length,e=0;f>e;e++)c|=b.wait_for_node(a.addedNodes[e],d)})),c||this.setTimeout(m,d),!0)):!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},h=new c,BOOMR.plugins.AutoXHR={is_complete:function(){return!0},init:function(a){if(g=BOOMR.window.document,i=BOOMR.window.document.createElement("A"),BOOMR.instrumentXHR=e,BOOMR.uninstrumentXHR=f,k=a.instrument_xhr,BOOMR.plugins.SPA&&BOOMR.plugins.SPA.supported_frameworks)for(var b=BOOMR.plugins.SPA.supported_frameworks(),c=0;c50&&(BOOMR.utils.removeCookie(this.cookie),BOOMR.error("took more than 50ms to set cookie... aborting: "+f+" -> "+e,"rt")),!0):(BOOMR.error("cannot set start cookie","rt"),!1)},refreshSession:function(a){a||(a=BOOMR.utils.getSubCookies(BOOMR.utils.getCookie(this.cookie))),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;(!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)),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"),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))):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);return c=0===c?0:c-d,c?c:""}var b,d,e,f,g;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),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]){if(b=window.performance.getEntriesByName(d[e]),!b||0===b.length)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(){return"prerender"!==BOOMR.visibilityState()?!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"),!0)},initFromNavTiming:function(){var b,c,d;this.navigationStart||(c=a.performance||a.msPerformance||a.webkitPerformance||a.mozPerformance,c&&c.navigation&&(this.navigationType=c.navigation.type),c&&c.timing?b=c.timing:a.chrome&&a.chrome.csi&&a.chrome.csi().startE?(b={navigationStart:a.chrome.csi().startE},d="csi"):a.gtbExternal&&a.gtbExternal.startE()&&(b={navigationStart:a.gtbExternal.startE()},d="gtb"),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)):BOOMR.warn("This browser doesn't support the WebTiming API","rt"))},validateLoadTimestamp:function(b,c,d){if(c&&c.timing&&c.timing.loadEventEnd)return c.timing.loadEventEnd;if(!("xhr"!==d||c&&"spa"===c.initiator))return b;if(BOOMR.loadedLate){if(!a.performance||!a.performance.timing)return BOOMR.t_onload||BOOMR.t_lstart||BOOMR.t_start||b;if(a.performance.timing.loadEventStart&&a.performance.timing.loadEventStart0&&(BOOMR.removeVar(c.addedVars),c.addedVars=[])}},BOOMR.plugins.RT={init:function(d){return 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&&d.beacon_url&&((!c.beacon_url||d.force_beacon_url)&&(c.beacon_url=d.beacon_url),c.next_beacon_url=d.beacon_url),c.r=c.r2=BOOMR.utils.hashQueryString(b.referrer,!0),c.initFromCookie(),c.getBoomerangTimings(),c.initialized?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.getBeaconURL=function(){return c.beacon_url},c.initialized=!0,this)},startTimer:function(a,b){return a&&("t_page"===a&&this.endTimer("t_resp",b),c.timers[a]={start:"number"==typeof b?b:BOOMR.now()}),this},endTimer:function(a,b){return a&&(c.timers[a]=c.timers[a]||{},void 0===c.timers[a].end&&(c.timers[a].end="number"==typeof b?b:BOOMR.now())),this},setTimer:function(a,b){return a&&(c.timers[a]={delta:b}),this},addTimersToBeacon:function(a,b){var d,e,f=[];for(d in c.timers)if(c.timers.hasOwnProperty(d)){if(e=c.timers[d],"number"!=typeof e.delta&&("number"!=typeof e.start&&(e.start=c.cached_t_start),e.delta=e.end-e.start),isNaN(e.delta))continue;c.basic_timers.hasOwnProperty(d)?(BOOMR.addVar(d,e.delta),c.addedVars.push(d)):f.push(d+"|"+e.delta)}f.length&&(BOOMR.addVar("t_other",f.join(",")),c.addedVars.push("t_other")),"beacon"===b&&(c.timers={},c.complete=!1)},done:function(a,b){try{BOOMR.debug("Called done with "+BOOMR.utils.objectToString(a,void 0,1)+", "+b,"rt")}catch(d){BOOMR.debug("Called done with "+d+", "+b,"rt")}var e,f,g=BOOMR.now(),h=!1;return c.complete=!1,f=c.validateLoadTimestamp(g,a,b),"load"!==b&&"visible"!==b&&"xhr"!==b||c.setPageLoadTimers(b,f,a)?(e=c.determineTStart(b,a),c.refreshSession(),c.maybeResetSession(f,e),this.endTimer("t_done",f),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(e),this.addTimersToBeacon(),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),"xhr"===b&&a&&(h=a.subresource,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")),h&&"passive"!==h&&(BOOMR.addVar("rt.subres",1),c.addedVars.push("rt.subres")),("load"===b||"visible"===b||"xhr"===b&&!h||!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(),"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),this):this},is_complete:function(){return c.complete},navigationStart:function(){return c.navigationStart||c.initFromNavTiming(),c.navigationStart}})}(window),function(){var a,b;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=[];if(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),0===d)return a;for(f++,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;for(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"),a=0;b>a;a++)h+=g[a],i+=g[a]*g[a];return 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),{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--)null!==d[c].t&&(p++,m++,n=1e3*b[c].size/d[c].t,q.push(n),d[c].t>this.latency.mean?(o=1e3*b[c].size/(d[c].t-this.latency.mean),r.push(o)):w.push(c+"_"+d[c].t));for(BOOMR.debug("got "+p+" readings","bw"),BOOMR.debug("bandwidths: "+q,"bw"),BOOMR.debug("corrected: "+r,"bw"),q.length>3?(q=this.iqr(q.sort(this.ncmp)),r=this.iqr(r.sort(this.ncmp))):(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),a=0;p>a;a++)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)):this.load_img(a+1,d,this.img_loaded)}},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(){this.aborted||(this.runs_left?this.latency_runs?this.load_img("l",this.latency_runs--,this.lat_loaded):(this.results.push({r:[]}),this.load_img(b.start,this.runs_left--,this.img_loaded)):this.finish())},setVarsFromCookie:function(){var b,c,d,e,f,g,h,i,j;return b=BOOMR.utils.getSubCookies(BOOMR.utils.getCookie(a.cookie)),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),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}),!0):!1}},BOOMR.plugins.BW={init:function(c){return a.initialized?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),a.base_url?(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,this):this)},run:function(){var b;return a.running||a.complete?this:(b=BOOMR.window.document.createElement("a"),b.href=a.base_url,a.test_https||"https:"!==b.protocol?(a.base_url=b.href,a.running=!0,setTimeout(this.abort,a.timeout),a.iterate(),this):(BOOMR.info("HTTPS detected, skipping bandwidth test","bw"),a.complete=!0,a.block_beacon===!0&&BOOMR.sendBeacon(),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,xhr_done:function(b){var c,d,e=BOOMR.window,f={};if(b){if(b.data&&(b=b.data),b.url&&e.performance&&e.performance.getEntriesByName&&(c=e.performance.getEntriesByName(b.url),c&&c.length>0)){c=c[0],f={nt_red_st:c.redirectStart,nt_red_end:c.redirectEnd,nt_fet_st:c.fetchStart,nt_dns_st:c.domainLookupStart,nt_dns_end:c.domainLookupEnd,nt_con_st:c.connectStart,nt_con_end:c.connectEnd,nt_req_st:c.requestStart,nt_res_st:c.responseStart,nt_res_end:c.responseEnd},c.secureConnectionStart&&(f.nt_ssl_st=c.secureConnectionStart);for(d in f)f.hasOwnProperty(d)&&f[d]&&(f[d]+=e.performance.timing.navigationStart)}b.timing&&(c=b.timing,f.nt_req_st||(f.nt_req_st=c.requestStart),f.nt_res_st||(f.nt_res_st=c.responseStart),f.nt_res_end||(f.nt_res_end=c.responseEnd),f.nt_domint=c.domInteractive,f.nt_domcomp=c.domComplete,f.nt_load_st=c.loadEventEnd,f.nt_load_end=c.loadEventEnd);for(d in f)f.hasOwnProperty(d)&&!f[d]&&delete f[d];BOOMR.addVar(f);try{a.addedVars.push.apply(a.addedVars,Object.keys(f))}catch(g){}this.complete=!0,BOOMR.sendBeacon()}},done:function(){var b,c,d,e,f=BOOMR.window;if(this.complete)return this;if(a.addedVars=[],b=f.performance||f.msPerformance||f.webkitPerformance||f.mozPerformance,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())){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){}}this.complete=!0,BOOMR.sendBeacon()},clear:function(){a.addedVars&&a.addedVars.length>0&&(BOOMR.removeVar(a.addedVars),a.addedVars=[]),this.complete=!1}};BOOMR.plugins.NavigationTiming={init:function(){return 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),this},is_complete:function(){return!0}}}}(),function(){function a(a){var b,c,d,e,f,g,i,j,l={};for(b in a){for(c=b,d=0;d10)return n;if(i=d(a),a.frames)for(g=0;gi&&(k=c+(j-i)),n=n.concat(e(a.frames[g],!1,k,f+1));try{if(!("performance"in a&&a.performance&&"function"==typeof a.performance.getEntriesByType))return n;b&&(h=a.performance.getEntriesByType("navigation"),h&&1===h.length?(l=h[0],n.push({name:a.location.href,startTime:0,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})):a.performance.timing&&(m=a.performance.timing,n.push({name:a.location.href,startTime:0,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 o=a.performance.getEntriesByType("resource"),p=[];for(g=0;o&&g-1||j.name.indexOf(BOOMR.config_url)>-1||g&&p+j.startTime1?g[b[1]]=e.length:f+="/"+e.length)}catch(h){BOOMR.addError(h,"Memory.nodeList."+a+".filter")}return g||f}catch(h){return BOOMR.addError(h,"Memory.nodeList."+a),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={};BOOMR.plugins.Memory||(i={done:function(){c&&(BOOMR.removeVar("dom.res"),b(!0,function(){var a,b,c={};j&&"function"==typeof j.getEntriesByType&&(a=j.getEntriesByType("resource"),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.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)},"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=c.performance,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")}return e=j&&j.memory?j.memory:a&&a.memory?a.memory:null,i.initialized?this:(i.initialized=!0,BOOMR.subscribe("before_beacon",i.done,null,i),this)},is_complete:function(){return!0}})}(),function(){if(!BOOMR.plugins.CACHE_RELOAD){var a={url:""};BOOMR.plugins.CACHE_RELOAD={init:function(b){if(BOOMR.utils.pluginConfig(a,b,"CACHE_RELOAD",["url"]),!a.url)return this;var c=document.createElement("iframe");return c.style.display="none",c.src=a.url,document.body.appendChild(c),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=[];for(c[(a.length>>2)-1]=void 0,b=0;b>5]|=(255&a.charCodeAt(b/8))<16&&(e=h(e,8*a.length)),c=0;16>c;c+=1)f[c]=909522486^e[c],g[c]=1549556828^e[c];return d=h(f.concat(j(b)),512+8*b.length),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)}BOOMR.utils&&BOOMR.utils.md5||(BOOMR.utils=BOOMR.utils||{},BOOMR.utils.MD5=s)}(),function(a){var b,c,d,e,f,g=document,h="script",i=a.location.hostname,j=!0,k=33e4;if(!(BOOMR.plugins.LOGN||!i||"localhost"===i||i.match(/\.\d+$/)||i.match(/^mhtml/)||i.match(/^file:\//))){c=b=!1,f=function(){b||(b=!0,c=!1,j&&BOOMR.sendBeacon())};var l=function(a){a.parentNode.removeChild(a)};e=function(){var c,f,j,m=g.getElementsByTagName(h)[0],n=g.createElement("A"),o=BOOMR.getBeaconURL?BOOMR.getBeaconURL():"",p=[];for(f in BOOMR.plugins)BOOMR.plugins.hasOwnProperty(f)&&p.push(encodeURIComponent(f));d=BOOMR.now();var q=!1;if(j=q?"//c.go-mpulse.net%config_json_path%":"//c.go-mpulse.net/boomerang/config.js",j+="?key=3ELNE-XNZJH-GJW9A-GMCCC-HF5K6&d="+encodeURIComponent(i)+"&t="+Math.round(d/3e5)+"&v="+BOOMR.version+(a===window?"":"&if=")+"&sl="+(BOOMR.session.length>0?1:0)+"&si="+BOOMR.session.ID+"-"+Math.round(BOOMR.session.start/1e3).toString(36)+(b?"&r=":"")+(o?"&bcn="+encodeURIComponent(o):"")+(b?"":"&plugins="+p.join(",")),q&&(j+="&acao="),n.href=j,BOOMR.config_url=n.href,q){var r=new XMLHttpRequest;r.open("GET",j,!0),r.onreadystatechange=function(){function a(a,b){for(var c={},d=0;d