/*Copyright (c) 2011 Yahoo! Inc. All rights reserved. Distributed under the BSD License.*/ BOOMR_start=new Date().getTime();function BOOMR_check_doc_domain(b){var c;if(!b){if(window.parent===window||!document.getElementById("boomr-if-as")){return}b=document.domain}if(b.indexOf(".")===-1){return}try{c=window.parent.document;return}catch(a){document.domain=b}try{c=window.parent.document;return}catch(a){b=b.replace(/^[\w\-]+\./,"")}BOOMR_check_doc_domain(b)}BOOMR_check_doc_domain();(function(i){var f,g,e,a,c,j,b,h,k=i;if(i.parent!==i&&document.getElementById("boomr-if-as")&&document.getElementById("boomr-if-as").nodeName.toLowerCase()==="script"){i=i.parent;a=document.getElementById("boomr-if-as").src}e=i.document;if(!i.BOOMR){i.BOOMR={}}BOOMR=i.BOOMR;if(BOOMR.version){return}BOOMR.version="0.9.1422498372";BOOMR.window=i;BOOMR.boomerang_frame=k;if(!BOOMR.plugins){BOOMR.plugins={}}(function(){try{if(new i.CustomEvent("CustomEvent")!==undefined){c=function(l,m){return new i.CustomEvent(l,m)}}}catch(d){}try{if(!c&&e.createEvent&&e.createEvent("CustomEvent")){c=function(m,n){var l=e.createEvent("CustomEvent");n=n||{cancelable:false,bubbles:false};l.initCustomEvent(m,n.bubbles,n.cancelable,n.detail);return l}}}catch(d){}if(!c&&e.createEventObject){c=function(m,n){var l=e.createEventObject();l.type=l.propertyName=m;l.detail=n.detail;return l}}if(!c){c=function(){return undefined}}}());j=function(d,n,m){var o=c(d,{detail:n});if(!o){return}function l(){if(e.dispatchEvent){e.dispatchEvent(o)}else{if(e.fireEvent){e.fireEvent("onpropertychange",o)}}}if(m){BOOMR.setImmediate(l)}else{l()}};if(typeof document.hidden!=="undefined"){b="visibilityState";h="visibilitychange"}else{if(typeof document.mozHidden!=="undefined"){b="mozVisibilityState";h="mozvisibilitychange"}else{if(typeof document.msHidden!=="undefined"){b="msVisibilityState";h="msvisibilitychange"}else{if(typeof document.webkitHidden!=="undefined"){b="webkitVisibilityState";h="webkitvisibilitychange"}}}}f={beacon_url:location.protocol+"//c.go-mpulse.net/",beacon_type:"AUTO",user_ip:"",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(d){return function(l){var m;if(!l){l=i.event}if(l.target){m=l.target}else{if(l.srcElement){m=l.srcElement}}if(m.nodeType===3){m=m.parentNode}if(m&&m.nodeName.toUpperCase()==="OBJECT"&&m.type==="application/x-shockwave-flash"){return}f.fireEvent(d,m)}},fireEvent:function(d,p){var m,n,l;d=d.toLowerCase();if(!this.events.hasOwnProperty(d)){return}if(this.public_events.hasOwnProperty(d)){j(this.public_events[d],p)}l=this.events[d];for(m=0;m")}}return}};g={t_start:BOOMR_start,url:a,config_url:null,session:{domain:null,ID:Math.random().toString(36).replace(/^0\./,""),start:undefined,length:0},utils:{objectToString:function(p,n,l){var m=[],d;if(!p||typeof p!=="object"){return p}if(n===undefined){n="\n\t"}if(!l){l=0}if(Object.prototype.toString.call(p)==="[object Array]"){for(d=0;d0&&p[d]!==null&&typeof p[d]==="object"){m.push(this.objectToString(p[d],n+(n==="\n\t"?"\t":""),l-1))}else{if(n==="&"){m.push(encodeURIComponent(p[d]))}else{m.push(p[d])}}}n=","}else{for(d in p){if(Object.prototype.hasOwnProperty.call(p,d)){if(l>0&&p[d]!==null&&typeof p[d]==="object"){m.push(encodeURIComponent(d)+"="+this.objectToString(p[d],n+(n==="\n\t"?"\t":""),l-1))}else{if(n==="&"){m.push(encodeURIComponent(d)+"="+encodeURIComponent(p[d]))}else{m.push(d+"="+p[d])}}}}}return m.join(n)},getCookie:function(d){if(!d){return null}d=" "+d+"=";var l,m;m=" "+e.cookie+";";if((l=m.indexOf(d))>=0){l+=d.length;m=m.substring(l,m.indexOf(";",l));return m}},setCookie:function(n,o,d){var p,m,l,r,q;if(!n||!BOOMR.session.domain){return null}p=this.objectToString(o,"&");m=n+"="+p;r=[m,"path=/","domain="+BOOMR.session.domain];if(d){q=new Date();q.setTime(q.getTime()+d*1000);q=q.toGMTString();r.push("expires="+q)}if(m.length<500){e.cookie=r.join("; ");l=this.getCookie(n);if(p===l){return true}}return false},getSubCookies:function(p){var o,n,d,r,m=false,q={};if(!p){return null}if(typeof p!=="string"){return null}o=p.split("&");for(n=0,d=o.length;n10?BOOMR.utils.MD5(m):m)})},pluginConfig:function(q,d,n,m){var l,p=0;if(!d||!d[n]){return false}for(l=0;l0)},addObserver:function(n,l,p,s,m,r){var q={observer:null,timer:null};if(!window.MutationObserver||!s||!n){return null}function d(o){var t=false;if(q.timer){clearTimeout(q.timer);q.timer=null}if(s){t=s.call(r,o,m);if(!t){s=null}}if(!t&&q.observer){q.observer.disconnect();q.observer=null}if(typeof t==="number"&&t>0){q.timer=setTimeout(d,t)}}q.observer=new MutationObserver(d);if(p){q.timer=setTimeout(d,q.timeout)}q.observer.observe(n,l);return q},addListener:function(m,l,d){if(m.addEventListener){m.addEventListener(l,d,false)}else{if(m.attachEvent){m.attachEvent("on"+l,d)}}},removeListener:function(m,l,d){if(m.removeEventListener){m.removeEventListener(l,d,false)}else{if(m.detachEvent){m.detachEvent("on"+l,d)}}},pushVars:function(p,r,q){var n,o,d=0,m;for(n in r){if(r.hasOwnProperty(n)){if(Object.prototype.toString.call(r[n])==="[object Array]"){for(o=0;o')}catch(s){r=document.createElement("iframe")}m.action=o.shift();m.target=r.name=r.id=q;r.style.display=m.style.display="none";r.src="javascript:false";d(r.id);d(m.id);document.body.appendChild(r);document.body.appendChild(m);try{m.submit()}catch(s){}if(o.length){BOOMR.setImmediate(n)}setTimeout(function(){d(r.id)},10000)}n()}},init:function(l){var n,d,m=["beacon_url","beacon_type","user_ip","strip_query_string","secondary_beacons"];BOOMR_check_doc_domain();if(!l){l={}}if(l.primary&&f.handlers_attached){return this}for(n=0;n1?" (*"+f.errors[o]+")":""))}}if(r.length>0){f.vars.errors=r.join("\n")}f.errors={};f.fireEvent("before_beacon",f.vars);if(!f.beacon_url){return true}if(!BOOMR.hasVar("restiming")){d=[];for(o in f.vars){if(f.vars.hasOwnProperty(o)){s++;d.push(encodeURIComponent(o)+"="+(f.vars[o]===undefined||f.vars[o]===null?"":encodeURIComponent(f.vars[o])))}}q=f.beacon_url+((f.beacon_url.indexOf("?")>-1)?"&":"?")+d.join("&")}else{l=document.createElement("form");m=BOOMR.utils.pushVars(l,f.vars)}BOOMR.removeVar("qt");f.fireEvent("onbeacon",f.vars);if(m===0&&s===0){return this}if(BOOMR.session.rate_limited){return this}if(s){p=new Image();p.src=q;if(f.secondary_beacons){for(o=0;o2000?"POST":"GET"):"POST")}return true}};delete BOOMR_start;if(typeof BOOMR_lstart==="number"){g.t_lstart=BOOMR_lstart;delete BOOMR_lstart}else{if(typeof BOOMR.window.BOOMR_lstart==="number"){g.t_lstart=BOOMR.window.BOOMR_lstart}}(function(){var d;if(typeof console==="object"&&console.log!==undefined){g.log=function(n,o,p){console.log(p+": ["+o+"] "+n)}}d=function(m){return function(l,n){this.log(l,m,"boomerang"+(n?"."+n:""));return this}};g.debug=d("debug");g.info=d("info");g.warn=d("warn");g.error=d("error")}()); (function(){var d;for(d in g){if(g.hasOwnProperty(d)){BOOMR[d]=g[d]}}if(!BOOMR.xhr_excludes){BOOMR.xhr_excludes={}}}());j("onBoomerangLoaded",{BOOMR:BOOMR},true)}(window)); (function(){var b,a,g,f,c,e;BOOMR=window.BOOMR||{};if(BOOMR.plugins.PageParams){return}e=function(d){this.varname=d.varname;this.method=d.method||BOOMR.addVar;this.ctx=d.ctx||BOOMR;this.preProcessor=d.preProcessor;this.sanitizeRE=d.sanitizeRE||/[^\w \-]/g;this.cleanUpRE=d.cleanUpRE;return this};e.prototype={apply:function(d){if(this.preProcessor){d=this.preProcessor(d)}if(!d&&d!==0){return false}this.method.call(this.ctx,this.varname,d);return true},handle:function(i){var d=this;if(!this.isValid(i)){return false}if(i.label){d=new e(this);d.varname=i.label}return d[i.type](i)},isValid:function(d){return(d&&typeof d==="object"&&d.hasOwnProperty("type")&&typeof this[d.type]==="function"&&(this.varname||d.label))},cleanUp:function(h){var d;if(!h){return h}if(this.cleanUpRE){d=h.match(this.cleanUpRE);if(d&&d.length>1){return d[1]}else{return""}}return h.replace(this.sanitizeRE,"")},handleRegEx:function(i,k,h){var l,d;if(!(i instanceof RegExp)){try{i=new RegExp(i,"i")}catch(j){BOOMR.addError(j,"PageVars.handleRegEx",i);return false}}if(!h){h=a.href}d=i.exec(h);if(!d||!d.length){return false}l=k.replace(/\$([1-9])/g,function(n,m){return decodeURIComponent(d[parseInt(m,10)])});l=this.cleanUp(l);return this.apply(l)},checkURLPattern:function(h,d){var i;if(!h){return true}i=h.replace(/([.+?\^=!:${}()|\[\]\/\\])/g,"\\$1").replace(/\*/g,".*?");try{i=new RegExp("^"+i+"$","i")}catch(j){BOOMR.addError(j,"PageVars.checkURLPattern",h);return false}if(!d){d=a.href}if(!i.exec(d)){return false}return true},nodeWalk:function(h,j){var d,i,k,l;if(!j){return h}d=j.match(/^(\w+)(?:\[(\d+)\])?\/?(.*)/);if(!d||!d.length){return null}i=h.getElementsByTagName(d[1]);if(d[2]){k=parseInt(d[2],10);if(isNaN(k)){return null}k--;if(i.length<=k){return null}i=[i[k]]}for(k=0;k0){BOOMR.addVar(this.varname+"."+d.replace(/^(...).*(St|En).*$/,"$1$2"),Math.round(l[d]))}}return this.apply(l.duration)}if(n.relative_to_nt||n.start==="navigationStart"){i=0}else{i=parseFloat(l[n.start],10);if(!isNaN(i)&&i===0){return false}}h=parseFloat(l[n.end],10);if(isNaN(i)||isNaN(h)){return false}if(h===0){return false}BOOMR.addVar(this.varname+"_st",Math.round(i));return this.apply(h-i)},findResource:function(d,m){var j,h,k;if(!m){m=b}try{if(!("performance" in m)||!m.performance){return null}k=m.performance.getEntriesByName(d)}catch(l){if(l.name==="SecurityError"||(l.name==="TypeError"&&l.message==="Permission denied")||(l.name==="Error"&&l.message&&l.message.match(/^(Permission|Access is) denied/))){return null}try{if(l.name==="TypeError"&&l.message==="Invalid calling object"&&m.document.location.pathname.match(/\.pdf$/)){return null}}catch(n){}BOOMR.addError(l,"PageVars.findResource");return null}if(k&&k.length>0){return k[0]}k=m.performance.getEntriesByType("resource");if(k&&k.length>0){for(j=0;jh.duration){h=k[j]}}else{if(k[j].name&&this.checkURLPattern(d,k[j].name)){h=k[j];d=h.name;break}}}}if(h){return h}if(m.frames){for(j=0;j0){c.retry()}return true}}}()); (function(){var j,f,c,b=["uninitialized","open","responseStart","domInteractive","responseEnd"];if(!window.XMLHttpRequest||!(new XMLHttpRequest()).addEventListener){return}if(BOOMR.plugins.AutoXHR){return}function e(){this.watch=0;this.timer=null;this.pending_events=[]}e.stop=function(){if(e.observer&&e.observer.observer){e.observer.observer.disconnect();e.observer=null}};e.start=function(){e.observer=BOOMR.utils.addObserver(j,{childList:true,attributes:true,subtree:true,attributeFilter:["src","href"]},null,f.mutation_cb,null,f);BOOMR.subscribe("page_unload",e.stop,null,e)};e.prototype.addEvent=function(m){var l={type:m.initiator,resource:m,nodes_to_wait:0,resources:[],complete:false},k,a,d=this.pending_events.length;for(k=d-1;k>=0;k--){if(this.pending_events[k]&&!this.pending_events[k].complete){a=this.pending_events[k];break}}if(a){if(a.type==="click"){if(a.nodes_to_wait===0||!a.resource.url){this.pending_events[k]=undefined;return null}}else{if(a.type==="xhr"){if(l.type==="click"){return null}}}}this.watch++;this.pending_events.push(l);if(!e.observer){if(m.url&&m.timing.loadEventEnd){this.sendEvent(d)}return null}else{this.setTimeout(50,d);return d}};e.prototype.sendEvent=function(d){var k=this.pending_events[d],a=this;k.complete=true;this.watch--;this.clearTimeout();if(BOOMR.hasVar("h.cr")){k.resource.resources=k.resources;BOOMR.responseEnd(k.resource);this.pending_events[d]=undefined}else{setTimeout(function(){a.sendEvent(d)},5000)}};e.prototype.setTimeout=function(k,d){var a=this;if(!k){return}this.clearTimeout();this.timer=setTimeout(function(){a.timedout(d)},k)};e.prototype.timedout=function(a){this.clearTimeout();if(this.pending_events[a]&&this.pending_events[a].type==="xhr"){this.sendEvent(a)}else{if(this.watch>0){this.watch--}this.pending_events[a]=undefined}};e.prototype.clearTimeout=function(){if(this.timer){clearTimeout(this.timer);this.timer=null}};e.prototype.load_cb=function(k){var l,d,a;l=k.target||k.srcElement;if(!l||!l._bmr){return}l._bmr.end=BOOMR.now();l._bmr.state=k.type;d=l._bmr.res;a=this.pending_events[d];if(!a){return}a.nodes_to_wait--;if(a.nodes_to_wait===0){a.resource.timing.loadEventEnd=BOOMR.now();this.sendEvent(d)}};e.prototype.wait_for_node=function(d,p){var r=this,q,n,k=false,o,m,a;if(d.nodeName.match(/^(IMG|SCRIPT|IFRAME)$/)||(d.nodeName==="LINK"&&d.rel&&d.rel.match(/\/i))){d._bmr={start:BOOMR.now(),res:p};a=d.src||d.href;if(d.nodeName==="IMG"){if(d.naturalWidth){return false}}if(!a||a.match(/^(about:|javascript:)/i)){return false}q=this.pending_events[p];if(!q){return false}if(!q.resource.url&&d.nodeName==="SCRIPT"){c.href=a;if(BOOMR.xhr_excludes.hasOwnProperty(c.href)||BOOMR.xhr_excludes.hasOwnProperty(c.hostname)||BOOMR.xhr_excludes.hasOwnProperty(c.pathname)){return false}q.resource.url=c.href}d.addEventListener("load",function(l){r.load_cb(l)});d.addEventListener("error",function(l){r.load_cb(l)});q.nodes_to_wait++;q.resources.push(d);k=true}else{if(d.nodeType===Node.ELEMENT_NODE){n=d.getElementsByTagName("IMG");if(n&&n.length){for(o=0,m=n.length;o50){BOOMR.utils.removeCookie(this.cookie);BOOMR.error("took more than 50ms to set cookie... aborting: "+g+" -> "+i,"rt")}return true},refreshSession:function(d){if(!d){d=BOOMR.utils.getSubCookies(BOOMR.utils.getCookie(this.cookie))}if(!d){return}if(d.ss){BOOMR.session.start=parseInt(d.ss,10)}else{BOOMR.session.start=BOOMR.t_lstart||BOOMR.t_start}if(d.si&&d.si.match(/-/)){BOOMR.session.ID=d.si}if(d.sl){BOOMR.session.length=parseInt(d.sl,10)}if(d.tt&&d.tt.match(/\d/)){this.loadTime=parseInt(d.tt,10)}if(d.obo){this.oboError=parseInt(d.obo,10)||0}if(d.dm&&!BOOMR.session.domain){BOOMR.session.domain=d.dm}if(d.se){c.session_exp=parseInt(d.se,10)||a}if(d.sh){c.sessionHistory=d.sh.split(",")}if(d.bcn){this.beacon_url=d.bcn}if(d.rl&&d.rl==="1"){BOOMR.session.rate_limited=true}},maybeResetSession:function(g,d){BOOMR.removeVar("rt.srst");if(!BOOMR.session.start||(d&&BOOMR.session.start>d)||g-(c.lastActionTime||BOOMR.t_start)>c.session_exp*1000){BOOMR.addVar("rt.srst",BOOMR.session.ID+"-"+BOOMR.session.start+":"+BOOMR.session.length+":"+c.oboError+":"+c.loadTime+":"+d+":"+c.lastActionTime+":"+g+":"+c.sessionHistory.join(","));c.addedVars.push("rt.srst");BOOMR.session.start=d||BOOMR.t_lstart||BOOMR.t_start;BOOMR.session.length=0;BOOMR.session.rate_limited=false;c.loadTime=0;c.oboError=0;c.beacon_url=c.next_beacon_url;c.lastActionTime=g;c.sessionHistory=[];c.updateCookie({rl:undefined,sl:BOOMR.session.length,ss:BOOMR.session.start,tt:c.loadTime,obo:c.oboError,bcn:c.beacon_url,sh:c.sessionHistory.join(",")})}},initFromCookie:function(){var d,g;g=BOOMR.utils.getSubCookies(BOOMR.utils.getCookie(this.cookie));if(!g){return}g.s=Math.max(+g.ul||0,+g.cl||0);if(g.s&&(g.r||g.nu)){this.r=g.r;d=BOOMR.utils.hashQueryString(f.URL,true);if(!this.strict_referrer||(g.nu&&g.nu===d&&g.s<+g.cl+15)||(g.s===+g.ul&&this.r===this.r2)){this.t_start=g.s;if(+g.hd>g.s){this.t_fb_approx=parseInt(g.hd,10)}}else{this.t_start=this.t_fb_approx=undefined}}if(g.s){this.lastActionTime=g.s}this.refreshSession(g);this.updateCookie({s:undefined,r:undefined,nu:undefined,ul:undefined,cl:undefined,hd:undefined,rl:undefined});this.maybeResetSession(BOOMR.now())},incrementSessionDetails:function(){BOOMR.session.length++;if(isNaN(c.timers.t_done.delta)){c.oboError++}else{c.loadTime+=c.timers.t_done.delta}c.sessionHistory.unshift(BOOMR.now()+"="+BOOMR.session.length+":"+c.oboError+":"+c.loadTime);if(c.sessionHistory.length>5){c.sessionHistory.length=5}},getBoomerangTimings:function(){var h,l,g,i,j;function d(o,n){var p=Math.round(o?o:0),m=Math.round(n?n:0);p=(p===0?0:(p-m));return p?p:""}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){l={"rt.bmr":BOOMR.url,"rt.cnf":BOOMR.config_url};for(g in l){if(l.hasOwnProperty(g)&&l[g]){h=window.performance.getEntriesByName(l[g]);if(!h||h.length===0){continue}h=h[0];i=d(h.startTime,0);j=[i,d(h.responseEnd,i),d(h.responseStart,i),d(h.requestStart,i),d(h.connectEnd,i),d(h.secureConnectionStart,i),d(h.connectStart,i),d(h.domainLookupEnd,i),d(h.domainLookupStart,i),d(h.redirectEnd,i),d(h.redirectStart,i)].join(",").replace(/,+$/,"");BOOMR.addVar(g,j);c.addedVars.push(g)}}}}catch(k){BOOMR.addError(k,"rt.getBoomerangTimings")}},checkPreRender:function(){if(BOOMR.visibilityState()!=="prerender"){return false}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 true},initFromNavTiming:function(){var d,h,g;if(this.navigationStart){return}h=b.performance||b.msPerformance||b.webkitPerformance||b.mozPerformance;if(h&&h.navigation){this.navigationType=h.navigation.type}if(h&&h.timing){d=h.timing}else{if(b.chrome&&b.chrome.csi&&b.chrome.csi().startE){d={navigationStart:b.chrome.csi().startE};g="csi"}else{if(b.gtbExternal&&b.gtbExternal.startE()){d={navigationStart:b.gtbExternal.startE()};g="gtb"}}}if(d){BOOMR.addVar("rt.start",g||"navigation");this.navigationStart=d.navigationStart||d.fetchStart||undefined;this.responseStart=d.responseStart||undefined;if(navigator.userAgent.match(/Firefox\/[78]\./)){this.navigationStart=d.unloadEventStart||d.fetchStart||undefined}}return},validateLoadTimestamp:function(h,g){var d=h;if(g&&g.timing&&g.timing.loadEventEnd){d=g.timing.loadEventEnd}else{if(BOOMR.loadedLate){if(b.performance&&b.performance.timing){if(b.performance.timing.loadEventStart&&b.performance.timing.loadEventStart0){BOOMR.removeVar(c.addedVars);c.addedVars=[]}}};BOOMR.plugins.RT={init:function(d){if(b!==BOOMR.window){b=BOOMR.window}f=b.document;BOOMR.utils.pluginConfig(c,d,"RT",["cookie","cookie_exp","session_exp","strict_referrer"]);if(d&&d.beacon_url){if(!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(f.referrer,true);c.initFromCookie();c.getBoomerangTimings();if(c.initialized){return this}c.complete=false;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=true;return this},startTimer:function(d,g){if(d){if(d==="t_page"){this.endTimer("t_resp",g)}c.timers[d]={start:(typeof g==="number"?g:BOOMR.now())}}return this},endTimer:function(d,g){if(d){c.timers[d]=c.timers[d]||{};if(c.timers[d].end===undefined){c.timers[d].end=(typeof g==="number"?g:BOOMR.now())}}return this},setTimer:function(d,g){if(d){c.timers[d]={delta:g}}return this},addTimersToBeacon:function(i,g){var h,j,d=[];for(h in c.timers){if(c.timers.hasOwnProperty(h)){j=c.timers[h];if(typeof j.delta!=="number"){if(typeof j.start!=="number"){j.start=c.cached_t_start}j.delta=j.end-j.start}if(isNaN(j.delta)){continue}if(c.basic_timers.hasOwnProperty(h)){BOOMR.addVar(h,j.delta);c.addedVars.push(h)}else{d.push(h+"|"+j.delta)}}}if(d.length){BOOMR.addVar("t_other",d.join(","));c.addedVars.push("t_other")}if(g==="beacon"){c.timers={};c.complete=false}},done:function(l,h){try{}catch(j){}var g,i,k=BOOMR.now(),d=false;c.complete=false;i=c.validateLoadTimestamp(k,l);if(h==="load"||h==="visible"||h==="xhr"){if(!c.setPageLoadTimers(h,i,l)){return this}}g=c.determineTStart(h,l);c.refreshSession();c.maybeResetSession(i,g);this.endTimer("t_done",i);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(g);this.addTimersToBeacon();BOOMR.addVar("r",BOOMR.utils.cleanupURL(c.r));if(c.r2!==c.r){BOOMR.addVar("r2",BOOMR.utils.cleanupURL(c.r2))}if(h==="xhr"&&l){if(l&&l.data){l=l.data}}if(h==="xhr"&&l){d=l.subresource;if(l.url){BOOMR.addVar("u",BOOMR.utils.cleanupURL(l.url.replace(/#.*/,"")));c.addedVars.push("u")}if(l.status&&(l.status<-1||l.status>=400)){BOOMR.addVar("http.errno",l.status)}if(l.method&&l.method!=="GET"){BOOMR.addVar("http.method",l.method)}if(l.headers){BOOMR.addVar("http.hdr",l.headers)}if(l.synchronous){BOOMR.addVar("xhr.sync",1)}if(l.initiator){BOOMR.addVar("http.initiator",l.initiator)}c.addedVars.push("http.errno","http.method","http.hdr","xhr.sync","http.initiator")}if(d&&d!=="passive"){BOOMR.addVar("rt.subres",1);c.addedVars.push("rt.subres")}if(h==="load"||h==="visible"||(h==="xhr"&&!d)||!c.onloadfired){c.incrementSessionDetails()}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(h==="unload"){BOOMR.addVar("rt.quit","");if(!c.onloadfired){BOOMR.addVar("rt.abld","")}if(!c.visiblefired){BOOMR.addVar("rt.ntvu","")}}c.complete=true;BOOMR.sendBeacon(c.beacon_url);return this},is_complete:function(){return c.complete}}}(window)); (function(){var b,a;if(BOOMR.plugins.BW){return}a=[{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}];a.end=a.length;a.start=0;a.l={name:"image-l.gif",size:35,timeout:1000};b={base_url:"",timeout:15000,nruns:5,latency_runs:10,user_ip:"",test_https:false,cookie_exp:7*86400,cookie:"BA",results:[],latencies:[],latency:null,runs_left:0,aborted:false,complete:true,running:false,initialized:false,ncmp:function(d,c){return(d-c)},iqr:function(f){var e=f.length-1,d,j,h,c=[],g;d=(f[Math.floor(e*0.25)]+f[Math.ceil(e*0.25)])/2;j=(f[Math.floor(e*0.75)]+f[Math.ceil(e*0.75)])/2;h=(j-d)*1.5;if(h===0){return f}e++;for(g=0;gd-h){c.push(f[g])}}return c},calc_latency:function(){var f,d,g=0,e=0,h,k,c,l,j;this.latencies.shift();j=this.iqr(this.latencies.sort(this.ncmp));d=j.length;for(f=0;f=0&&k<3;w--){if(!o[w]){break}if(o[w].t===null){continue}s++;k++;y=a[w].size*1000/o[w].t;e.push(y);if(o[w].t>this.latency.mean){q=a[w].size*1000/(o[w].t-this.latency.mean);u.push(q)}else{h.push(w+"_"+o[w].t)}}}if(e.length>3){e=this.iqr(e.sort(this.ncmp));u=this.iqr(u.sort(this.ncmp))}else{e=e.sort(this.ncmp);u=u.sort(this.ncmp)}s=Math.max(e.length,u.length);for(x=0;x=a.end-1||this.results[this.nruns-f].r[d+1]!==undefined){if(f===this.nruns){a.start=d}BOOMR.setImmediate(this.iterate,null,null,this)}else{this.load_img(d+1,f,this.img_loaded)}},finish:function(){if(!this.latency){this.latency=this.calc_latency()}var d=this.calc_bw(),c={bw:d.median_corrected,bw_err:parseFloat(d.stderr_corrected,10),lat:this.latency.mean,lat_err:parseFloat(this.latency.stderr,10),bw_time:Math.round(BOOMR.now()/1000)};BOOMR.addVar(c);if(d.debug_info.length>0){BOOMR.addVar("bw_debug",d.debug_info.join(","))}if(!isNaN(c.bw)&&c.bw>0){BOOMR.utils.setCookie(this.cookie,{ba:Math.round(c.bw),be:c.bw_err,l:c.lat,le:c.lat_err,ip:this.user_ip,t:c.bw_time},(this.user_ip?this.cookie_exp:0))}this.complete=true;this.running=false},iterate:function(){if(!this.aborted){if(!this.runs_left){this.finish()}else{if(this.latency_runs){this.load_img("l",this.latency_runs--,this.lat_loaded)}else{this.results.push({r:[]});this.load_img(a.start,this.runs_left--,this.img_loaded)}}}},setVarsFromCookie:function(){var j,g,i,h,d,c,k,f,e;j=BOOMR.utils.getSubCookies(BOOMR.utils.getCookie(b.cookie));if(j&&j.ba){g=parseInt(j.ba,10);i=parseFloat(j.be,10);h=parseInt(j.l,10)||0;d=parseFloat(j.le,10)||0;c=j.ip.replace(/\.\d+$/,"0");k=parseInt(j.t,10);f=this.user_ip.replace(/\.\d+$/,"0");e=Math.round(BOOMR.now()/1000);if(c===f&&k>=e-this.cookie_exp&&g>0){this.complete=true;BOOMR.addVar({bw:g,lat:h,bw_err:i,lat_err:d,bw_time:k});return true}}return false}};BOOMR.plugins.BW={init:function(c){if(b.initialized){return this}BOOMR.utils.pluginConfig(b,c,"BW",["base_url","timeout","nruns","cookie","cookie_exp","test_https"]);if(c&&c.user_ip){b.user_ip=c.user_ip}if(!b.base_url){return this}a.start=0;b.runs_left=b.nruns;b.latency_runs=10;b.results=[];b.latencies=[];b.latency=null;b.complete=b.aborted=false;BOOMR.removeVar("ba","ba_err","lat","lat_err");if(!b.setVarsFromCookie()){BOOMR.subscribe("page_ready",this.run,null,this)}b.initialized=true;return this},run:function(){var c;if(b.running||b.complete){return this}c=document.createElement("a");c.href=b.base_url;if(!b.test_https&&c.protocol==="https:"){b.complete=true;return this}b.base_url=c.href;b.running=true;setTimeout(this.abort,b.timeout);b.iterate();return this},abort:function(){b.aborted=true;if(b.running){b.finish()}},is_complete:function(){return true}}}()); /*Copyright (c) 2011-2014 SOASTA, Inc. All rights reserved. Distributed under the BSD License.*/ (function(){if(BOOMR.plugins.NavigationTiming){return}var a={complete:false,xhr_done:function(f){var b=BOOMR.window,d,e={},c;if(!f){return}if(f.data){f=f.data}if(f.url&&b.performance&&b.performance.getEntriesByName){d=b.performance.getEntriesByName(f.url);if(d&&d.length>0){d=d[0];e={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};if(d.secureConnectionStart){e.nt_ssl_st=d.secureConnectionStart}for(c in e){if(e.hasOwnProperty(c)&&e[c]){e[c]+=b.performance.timing.navigationStart}}}}if(f.timing){d=f.timing;if(!e.nt_req_st){e.nt_req_st=d.requestStart}if(!e.nt_res_st){e.nt_res_st=d.responseStart}if(!e.nt_res_end){e.nt_res_end=d.responseEnd}e.nt_domint=d.domInteractive;e.nt_domcomp=d.domComplete;e.nt_load_st=d.loadEventEnd;e.nt_load_end=d.loadEventEnd}for(c in e){if(e.hasOwnProperty(c)&&!e[c]){delete e[c]}}BOOMR.addVar(e);try{a.addedVars.push.apply(a.addedVars,Object.keys(e))}catch(g){}this.complete=true;BOOMR.sendBeacon()},done:function(){var b=BOOMR.window,f,c,e,d;if(this.complete){return this}a.addedVars=[];f=b.performance||b.msPerformance||b.webkitPerformance||b.mozPerformance;if(f&&f.timing&&f.navigation){c=f.navigation;e=f.timing;d={nt_red_cnt:c.redirectCount,nt_nav_type:c.type,nt_nav_st:e.navigationStart,nt_red_st:e.redirectStart,nt_red_end:e.redirectEnd,nt_fet_st:e.fetchStart,nt_dns_st:e.domainLookupStart,nt_dns_end:e.domainLookupEnd,nt_con_st:e.connectStart,nt_con_end:e.connectEnd,nt_req_st:e.requestStart,nt_res_st:e.responseStart,nt_res_end:e.responseEnd,nt_domloading:e.domLoading,nt_domint:e.domInteractive,nt_domcontloaded_st:e.domContentLoadedEventStart,nt_domcontloaded_end:e.domContentLoadedEventEnd,nt_domcomp:e.domComplete,nt_load_st:e.loadEventStart,nt_load_end:e.loadEventEnd,nt_unload_st:e.unloadEventStart,nt_unload_end:e.unloadEventEnd};if(e.secureConnectionStart){d.nt_ssl_st=e.secureConnectionStart}if(e.msFirstPaint){d.nt_first_paint=e.msFirstPaint}BOOMR.addVar(d);try{a.addedVars.push.apply(a.addedVars,Object.keys(d))}catch(g){}}if(b.chrome&&b.chrome.loadTimes){e=b.chrome.loadTimes();if(e){d={nt_spdy:(e.wasFetchedViaSpdy?1:0),nt_first_paint:e.firstPaintTime};BOOMR.addVar(d);try{a.addedVars.push.apply(a.addedVars,Object.keys(d))}catch(g){}}}this.complete=true;BOOMR.sendBeacon()},clear:function(){if(a.addedVars&&a.addedVars.length>0){BOOMR.removeVar(a.addedVars);a.addedVars=[]}this.complete=false}};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=true}return this},is_complete:function(){return a.complete}}}()); (function(){if(BOOMR.plugins.ResourceTiming){return}var f={other:0,img:1,link:2,script:3,css:4,xmlhttprequest:5};function g(n){var o={},j,m,q,p,k,r,l;for(j in n){if(!n.hasOwnProperty(j)){continue}q=n[j];p=j.split("");r=o;for(m=0;m10){return p}x=b(k);if(k.frames){for(n=0;nx){v=l+(w-x)}p=p.concat(d(k.frames[n],false,v,m+1))}}try{if(!("performance" in k)||!k.performance||!k.performance.getEntriesByType){return p}if(u){j=k.performance.getEntriesByType("navigation");if(j&&j.length===1){q=j[0];p.push({name:k.location.href,startTime:0,redirectStart:q.redirectStart,redirectEnd:q.redirectEnd,fetchStart:q.fetchStart,domainLookupStart:q.domainLookupStart,domainLookupEnd:q.domainLookupEnd,connectStart:q.connectStart,secureConnectionStart:q.secureConnectionStart,connectEnd:q.connectEnd,requestStart:q.requestStart,responseStart:q.responseStart,responseEnd:q.responseEnd})}else{if(k.performance.timing){y=k.performance.timing;p.push({name:k.location.href,startTime:0,redirectStart:y.redirectStart?(y.redirectStart-y.navigationStart):0,redirectEnd:y.redirectEnd?(y.redirectEnd-y.navigationStart):0,fetchStart:y.fetchStart?(y.fetchStart-y.navigationStart):0,domainLookupStart:y.domainLookupStart?(y.domainLookupStart-y.navigationStart):0,domainLookupEnd:y.domainLookupEnd?(y.domainLookupEnd-y.navigationStart):0,connectStart:y.connectStart?(y.connectStart-y.navigationStart):0,secureConnectionStart:y.secureConnectionStart?(y.secureConnectionStart-y.navigationStart):0,connectEnd:y.connectEnd?(y.connectEnd-y.navigationStart):0,requestStart:y.requestStart?(y.requestStart-y.navigationStart):0,responseStart:y.responseStart?(y.responseStart-y.navigationStart):0,responseEnd:y.responseEnd?(y.responseEnd-y.navigationStart):0})}}}var o=k.performance.getEntriesByType("resource"),s=[];for(n=0;o&&n0)?j.toString(36):""}function i(){var j=d(BOOMR.window,true,0,0),n,p,m={},k,l,o;if(!j||!j.length){return{}}for(n=0;n-1||p.name.indexOf(BOOMR.config_url)>-1){continue}k=f[p.initiatorType];if(typeof k==="undefined"){k=0}o=k+[c(p.startTime,0),c(p.responseEnd,p.startTime),c(p.responseStart,p.startTime),c(p.requestStart,p.startTime),c(p.connectEnd,p.startTime),c(p.secureConnectionStart,p.startTime),c(p.connectStart,p.startTime),c(p.domainLookupEnd,p.startTime),c(p.domainLookupStart,p.startTime),c(p.redirectEnd,p.startTime),c(p.redirectStart,p.startTime)].map(h).join(",").replace(/,+$/,"");l=BOOMR.utils.cleanupURL(p.name);if(m[l]!==undefined){m[l]+="|"+o}else{m[l]=o}}return a(g(m),true)}var e={complete:false,initialized:false,supported:false,done:function(){var j;if(this.complete){return}BOOMR.removeVar("restiming");j=i();if(j){BOOMR.addVar({restiming:JSON.stringify(j)})}this.complete=true;BOOMR.sendBeacon()},clearMetrics:function(j){if(j.hasOwnProperty("restiming")){BOOMR.removeVar("restiming")}}};BOOMR.plugins.ResourceTiming={init:function(){var j=BOOMR.window.performance;if(e.initialized){return this}if(j&&typeof j.getEntriesByType==="function"){BOOMR.subscribe("page_ready",e.done,null,e);BOOMR.subscribe("onbeacon",e.clearMetrics,null,e);BOOMR.subscribe("before_unload",e.done,null,e);e.supported=true}else{e.complete=true}e.initialized=true;return this},is_complete:function(){return e.complete},is_supported:function(){return e.supported},trimTiming:c,convertToTrie:g,optimizeTrie:a,findPerformanceEntriesForFrame:d,getResourceTiming:i,toBase36:h}}()); (function(){var a;if(typeof navigator==="object"){a=navigator.connection||navigator.mozConnection||navigator.webkitConnection||navigator.msConnection}if(!a){return}BOOMR.addVar("mob.ct",a.type);BOOMR.addVar("mob.bw",a.bandwidth);BOOMR.addVar("mob.mt",a.metered)}()); (function(){var k,a={},g,e,l,c,i,h;if(BOOMR.plugins.Memory){return}function f(b){try{return g.getElementsByTagName(b).length}catch(d){BOOMR.addError(d,"Memory.nodeList."+b);return 0}}function j(n,m,b){if(n){try{m()}catch(d){BOOMR.addError(d,"Memory.done."+b)}}}h={done:function(){if(!k){return}BOOMR.removeVar("dom.res");j(true,function(){var d,m={},b;if(!a||!a.getEntriesByType){return}d=a.getEntriesByType("resource");if(!d||!d.length){return}BOOMR.addVar("dom.res",d.length);b=document.createElement("a");[].forEach.call(d,function(n){b.href=n.name;m[b.hostname]=true});BOOMR.addVar("dom.doms",Object.keys(m).length)},"resources");if(e){BOOMR.addVar({"mem.total":e.totalJSHeapSize,"mem.used":e.usedJSHeapSize})}j(l,function(){BOOMR.addVar({"scr.xy":l.width+"x"+l.height,"scr.bpp":l.colorDepth+"/"+(l.pixelDepth||"")});if(l.orientation){BOOMR.addVar("scr.orn",l.orientation.angle+"/"+l.orientation.type)}if(k.devicePixelRatio>1){BOOMR.addVar("scr.dpx",k.devicePixelRatio)}},"screen");j(c,function(){if(c.hardwareConcurrency){BOOMR.addVar("cpu.cnc",c.hardwareConcurrency)}if(c.maxTouchPoints){BOOMR.addVar("scr.mtp",c.maxTouchPoints)}},"navigator");j(i,function(){BOOMR.addVar("bat.lvl",i.level)},"battery");j(true,function(){BOOMR.addVar({"dom.ln":f("*"),"dom.img":f("img"),"dom.script":f("script")});BOOMR.addVar("dom.sz",g.documentElement.innerHTML.length)},"dom")}};BOOMR.plugins.Memory={init:function(){var d;try{k=BOOMR.window;g=k.document;a=k.performance;d=k.console;l=k.screen;c=k.navigator;if(c&&c.battery){i=c.battery}else{if(c&&c.getBattery){c.getBattery().then(function(m){i=m})}}}catch(b){BOOMR.addError(b,"Memory.init")}e=(a&&a.memory?a.memory:(d&&d.memory?d.memory:null));if(h.initialized){return this}h.initialized=true;BOOMR.subscribe("before_beacon",h.done,null,h);return this},is_complete:function(){return true}}}()); (function(){if(BOOMR.plugins.CACHE_RELOAD){return}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 true}}}()); /*MD5 plugin is derived from JavaScript-MD5, Copyright 2011, Sebastian Tschan. https://blueimp.net. Distributed under the MIT license: http://www.opensource.org/licenses/MIT*/ (function(){if(BOOMR.utils&&BOOMR.utils.md5){return}BOOMR.utils=BOOMR.utils||{};function n(t,w){var v=(t&65535)+(w&65535),u=(t>>16)+(w>>16)+(v>>16);return(u<<16)|(v&65535)}function r(t,u){return(t<>>(32-u))}function c(A,w,v,u,z,y){return n(r(n(n(w,A),n(u,y)),z),v)}function b(w,v,B,A,u,z,y){return c((v&B)|((~v)&A),w,v,u,z,y)}function h(w,v,B,A,u,z,y){return c((v&A)|(B&(~A)),w,v,u,z,y)}function m(w,v,B,A,u,z,y){return c(v^B^A,w,v,u,z,y)}function a(w,v,B,A,u,z,y){return c(B^(v|(~A)),w,v,u,z,y)}function d(E,z){E[z>>5]|=128<<(z%32);E[(((z+64)>>>9)<<4)+14]=z;var v,y,w,u,t,D=1732584193,C=-271733879,B=-1732584194,A=271733878;for(v=0;v>5]>>>(v%32))&255)}return t}function i(u){var v,t=[];t[(u.length>>2)-1]=undefined;for(v=0;v>5]|=(u.charCodeAt(v/8)&255)<<(v%32)}return t}function j(t){return o(d(i(t),t.length*8))}function e(v,y){var u,x=i(v),t=[],w=[],z;t[15]=w[15]=undefined;if(x.length>16){x=d(x,v.length*8)}for(u=0;u<16;u+=1){t[u]=x[u]^909522486;w[u]=x[u]^1549556828}z=d(t.concat(i(y)),512+y.length*8);return o(d(w.concat(z),512+128))}function s(v){var y="0123456789abcdef",u="",t,w;for(w=0;w>>4)&15)+y.charAt(t&15)}return u}function l(t){return unescape(encodeURIComponent(t))}function p(t){return j(l(t))}function k(t){return s(p(t))}function g(t,u){return e(l(t),l(u))}function q(t,u){return s(g(t,u))}function f(u,v,t){if(!v){if(!t){return k(u)}return p(u)}if(!t){return q(v,u)}return g(v,u)}BOOMR.utils.MD5=f}()); (function(f){var h=document,i="script",c=f.location.hostname,a,e,b,g,d;if(BOOMR.plugins.LOGN||!c||c==="localhost"||c.match(/\.\d+$/)||c.match(/^mhtml/)||c.match(/^file:\//)){return}e=a=false;d=function(){if(a){return}a=true;e=false;BOOMR.sendBeacon()};g=function(){var m=h.getElementsByTagName(i)[0],l=h.createElement(i),k=BOOMR.getBeaconURL?BOOMR.getBeaconURL():"",j=[],n;for(n in BOOMR.plugins){if(BOOMR.plugins.hasOwnProperty(n)){j.push(encodeURIComponent(n))}}b=BOOMR.now();l.src="//c.go-mpulse.net/boomerang/config.js?key=5VS23-BHL36-JUED4-78U6Z-ZT97H&d="+encodeURIComponent(c)+"&t="+Math.round(b/(5*60*1000))+"&v="+BOOMR.version+(f===window?"":"&if=")+"&sl="+(BOOMR.session.length>0?1:0)+"&si="+BOOMR.session.ID+"-"+Math.round(BOOMR.session.start/1000).toString(36)+(a?"&r=":"")+(k?"&bcn="+encodeURIComponent(k):"")+(a?"":"&plugins="+j.join(","));BOOMR.config_url=l.src;m.parentNode.insertBefore(l,m);m=l=null;if(a){setTimeout(g,5.5*60*1000)}};BOOMR.plugins.LOGN={init:function(j){if(a||BOOMR.session.rate_limited){return this}if(j&&j.rate_limited){BOOMR.session.rate_limited=true;return this}if(e){BOOMR.setImmediate(d);setTimeout(g,5.5*60*1000);BOOMR.addVar("t_configjs",BOOMR.now()-b);if(typeof BOOMR_configt==="number"){BOOMR.addVar("t_configfb",BOOMR_configt-b);delete BOOMR_configt}return this}e=true;if(f===window){BOOMR.subscribe("page_ready",g,null,null)}else{g()}return this},is_complete:function(){return a}}}(BOOMR.window));BOOMR.addVar({"h.key":"5VS23-BHL36-JUED4-78U6Z-ZT97H"}).init({primary:true,log:null,wait:true,site_domain:null,ResourceTiming:{enabled:false}});BOOMR.t_end=new Date().getTime();