blob: 2b85bc0bf2c00e6dd75b04eb651d8b79d2e3a5b6 [file] [log] [blame]
(function(){var aa=aa||{},k=this;function ba(){}
function l(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null";
else if("function"==b&&"undefined"==typeof a.call)return"object";return b}function ca(a){var b=l(a);return"array"==b||"object"==b&&"number"==typeof a.length}function m(a){return"string"==typeof a}function p(a){return"function"==l(a)}var da="closure_uid_"+(1E9*Math.random()>>>0),ea=0;function fa(a,b,c){return a.call.apply(a.bind,arguments)}
function ga(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}}function q(a,b,c){q=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?fa:ga;return q.apply(null,arguments)}var ha=Date.now||function(){return+new Date};
function r(a,b){function c(){}c.prototype=b.prototype;a.Z=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.$=function(a,c,f){for(var g=Array(arguments.length-2),h=2;h<arguments.length;h++)g[h-2]=arguments[h];return b.prototype[c].apply(a,g)}};function t(a){if(Error.captureStackTrace)Error.captureStackTrace(this,t);else{var b=Error().stack;b&&(this.stack=b)}a&&(this.message=String(a))}r(t,Error);t.prototype.name="CustomError";function ia(a,b,c,d,e){this.reset(a,b,c,d,e)}ia.prototype.a=null;var ja=0;ia.prototype.reset=function(a,b,c,d,e){"number"==typeof e||ja++;d||ha();this.b=b;delete this.a};function ka(){0!=la&&(this[da]||(this[da]=++ea));this.A=this.A;this.T=this.T}var la=0;ka.prototype.A=!1;function u(a,b){this.type=a;this.a=this.target=b}u.prototype.b=function(){};var w="closure_listenable_"+(1E6*Math.random()|0),ma=0;function na(a,b,c,d,e){this.listener=a;this.a=null;this.src=b;this.type=c;this.C=!!d;this.F=e;++ma;this.v=this.B=!1}function x(a){a.v=!0;a.listener=null;a.a=null;a.src=null;a.F=null};function oa(){}oa.prototype.a=null;function pa(a){var b;(b=a.a)||(b={},qa(a)&&(b[0]=!0,b[1]=!0),b=a.a=b);return b};function ra(a){var b=[],c=0,d;for(d in a)b[c++]=a[d];return b}function sa(a){var b=[],c=0,d;for(d in a)b[c++]=d;return b}var ta="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function ua(a,b){for(var c,d,e=1;e<arguments.length;e++){d=arguments[e];for(c in d)a[c]=d[c];for(var f=0;f<ta.length;f++)c=ta[f],Object.prototype.hasOwnProperty.call(d,c)&&(a[c]=d[c])}};function va(a){va[" "](a);return a}va[" "]=ba;function wa(a,b){for(var c=a.split("%s"),d="",e=Array.prototype.slice.call(arguments,1);e.length&&1<c.length;)d+=c.shift()+e.shift();return d+c.join("%s")}var xa=String.prototype.trim?function(a){return a.trim()}:function(a){return a.replace(/^[\s\xa0]+|[\s\xa0]+$/g,"")};function ya(a,b){return a<b?-1:a>b?1:0};function za(a,b){b.unshift(a);t.call(this,wa.apply(null,b));b.shift()}r(za,t);za.prototype.name="AssertionError";function Aa(a,b){throw new za("Failure"+(a?": "+a:""),Array.prototype.slice.call(arguments,1));};var y=Array.prototype,Ba=y.indexOf?function(a,b,c){return y.indexOf.call(a,b,c)}:function(a,b,c){c=null==c?0:0>c?Math.max(0,a.length+c):c;if(m(a))return m(b)&&1==b.length?a.indexOf(b,c):-1;for(;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1},Ca=y.forEach?function(a,b,c){y.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=m(a)?a.split(""):a,f=0;f<d;f++)f in e&&b.call(c,e[f],f,a)};
function Da(a){var b;a:{b=Ea;for(var c=a.length,d=m(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a)){b=e;break a}b=-1}return 0>b?null:m(a)?a.charAt(b):a[b]}function Fa(a){var b=a.length;if(0<b){for(var c=Array(b),d=0;d<b;d++)c[d]=a[d];return c}return[]};function z(a){this.src=a;this.a={};this.b=0}function Ga(a,b,c,d,e){var f=b.toString();b=a.a[f];b||(b=a.a[f]=[],a.b++);var g=Ha(b,c,d,e);-1<g?(a=b[g],a.B=!1):(a=new na(c,a.src,f,!!d,e),a.B=!1,b.push(a));return a}function Ia(a,b){var c=b.type;if(c in a.a){var d=a.a[c],e=Ba(d,b),f;(f=0<=e)&&y.splice.call(d,e,1);f&&(x(b),0==a.a[c].length&&(delete a.a[c],a.b--))}}
z.prototype.removeAll=function(a){a=a&&a.toString();var b=0,c;for(c in this.a)if(!a||c==a){for(var d=this.a[c],e=0;e<d.length;e++)++b,x(d[e]);delete this.a[c];this.b--}return b};function Ha(a,b,c,d){for(var e=0;e<a.length;++e){var f=a[e];if(!f.v&&f.listener==b&&f.C==!!c&&f.F==d)return e}return-1};var B;a:{var Ja=k.navigator;if(Ja){var Ka=Ja.userAgent;if(Ka){B=Ka;break a}}B=""};var La;function Ma(){}r(Ma,oa);function Na(a){return(a=qa(a))?new ActiveXObject(a):new XMLHttpRequest}function qa(a){if(!a.b&&"undefined"==typeof XMLHttpRequest&&"undefined"!=typeof ActiveXObject){for(var b=["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"],c=0;c<b.length;c++){var d=b[c];try{return new ActiveXObject(d),a.b=d}catch(e){}}throw Error("Could not create ActiveXObject. ActiveX might be disabled, or MSXML might not be installed");}return a.b}La=new Ma;function C(a,b){this.b={};this.a=[];this.g=this.f=0;var c=arguments.length;if(1<c){if(c%2)throw Error("Uneven number of arguments");for(var d=0;d<c;d+=2)D(this,arguments[d],arguments[d+1])}else if(a){a instanceof C?(c=a.w(),d=a.D()):(c=sa(a),d=ra(a));for(var e=0;e<c.length;e++)D(this,c[e],d[e])}}C.prototype.D=function(){Oa(this);for(var a=[],b=0;b<this.a.length;b++)a.push(this.b[this.a[b]]);return a};C.prototype.w=function(){Oa(this);return this.a.concat()};
C.prototype.clear=function(){this.b={};this.g=this.f=this.a.length=0};function Oa(a){if(a.f!=a.a.length){for(var b=0,c=0;b<a.a.length;){var d=a.a[b];Object.prototype.hasOwnProperty.call(a.b,d)&&(a.a[c++]=d);b++}a.a.length=c}if(a.f!=a.a.length){for(var e={},c=b=0;b<a.a.length;)d=a.a[b],Object.prototype.hasOwnProperty.call(e,d)||(a.a[c++]=d,e[d]=1),b++;a.a.length=c}}function D(a,b,c){Object.prototype.hasOwnProperty.call(a.b,b)||(a.f++,a.a.push(b),a.g++);a.b[b]=c}
C.prototype.forEach=function(a,b){for(var c=this.w(),d=0;d<c.length;d++){var e=c[d];a.call(b,Object.prototype.hasOwnProperty.call(this.b,e)?this.b[e]:void 0,e,this)}};C.prototype.clone=function(){return new C(this)};function Pa(a){if("function"==typeof a.D)return a.D();if(m(a))return a.split("");if(ca(a)){for(var b=[],c=a.length,d=0;d<c;d++)b.push(a[d]);return b}return ra(a)}
function Qa(a,b){if("function"==typeof a.forEach)a.forEach(b,void 0);else if(ca(a)||m(a))Ca(a,b,void 0);else{var c;if("function"==typeof a.w)c=a.w();else if("function"!=typeof a.D)if(ca(a)||m(a)){c=[];for(var d=a.length,e=0;e<d;e++)c.push(e)}else c=sa(a);else c=void 0;for(var d=Pa(a),e=d.length,f=0;f<e;f++)b.call(void 0,d[f],c&&c[f],a)}};var Ra=-1!=B.indexOf("Opera")||-1!=B.indexOf("OPR"),E=-1!=B.indexOf("Trident")||-1!=B.indexOf("MSIE"),F=-1!=B.indexOf("Gecko")&&-1==B.toLowerCase().indexOf("webkit")&&!(-1!=B.indexOf("Trident")||-1!=B.indexOf("MSIE")),G=-1!=B.toLowerCase().indexOf("webkit");function Sa(){var a=k.document;return a?a.documentMode:void 0}
var Ta=function(){var a="",b;if(Ra&&k.opera)return a=k.opera.version,p(a)?a():a;F?b=/rv\:([^\);]+)(\)|;)/:E?b=/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/:G&&(b=/WebKit\/(\S+)/);b&&(a=(a=b.exec(B))?a[1]:"");return E&&(b=Sa(),b>parseFloat(a))?String(b):a}(),Ua={};
function H(a){var b;if(!(b=Ua[a])){b=0;for(var c=xa(String(Ta)).split("."),d=xa(String(a)).split("."),e=Math.max(c.length,d.length),f=0;0==b&&f<e;f++){var g=c[f]||"",h=d[f]||"",n=RegExp("(\\d*)(\\D*)","g"),A=RegExp("(\\d*)(\\D*)","g");do{var v=n.exec(g)||["","",""],L=A.exec(h)||["","",""];if(0==v[0].length&&0==L[0].length)break;b=ya(0==v[1].length?0:parseInt(v[1],10),0==L[1].length?0:parseInt(L[1],10))||ya(0==v[2].length,0==L[2].length)||ya(v[2],L[2])}while(0==b)}b=Ua[a]=0<=b}return b}
var Va=k.document,Wa=Va&&E?Sa()||("CSS1Compat"==Va.compatMode?parseInt(Ta,10):5):void 0;function Xa(a){this.g=a;this.b=this.f=this.a=null}function I(a,b){this.name=a;this.value=b}I.prototype.toString=function(){return this.name};var Ya=new I("SEVERE",1E3),Za=new I("CONFIG",700),$a=new I("FINE",500);function ab(a){if(a.f)return a.f;if(a.a)return ab(a.a);Aa("Root logger has no level set.");return null}
Xa.prototype.log=function(a,b,c){if(a.value>=ab(this).value)for(p(b)&&(b=b()),a=new ia(a,String(b),this.g),c&&(a.a=c),c="log:"+a.b,k.console&&(k.console.timeStamp?k.console.timeStamp(c):k.console.markTimeline&&k.console.markTimeline(c)),k.msWriteProfilerMark&&k.msWriteProfilerMark(c),c=this;c;)c=c.a};var bb={},cb=null;
function db(a){cb||(cb=new Xa(""),bb[""]=cb,cb.f=Za);var b;if(!(b=bb[a])){b=new Xa(a);var c=a.lastIndexOf("."),d=a.substr(c+1),c=db(a.substr(0,c));c.b||(c.b={});c.b[d]=b;b.a=c;bb[a]=b}return b};var eb;(eb=!E)||(eb=E&&9<=Wa);var fb=eb,gb=E&&!H("9");!G||H("528");F&&H("1.9b")||E&&H("8")||Ra&&H("9.5")||G&&H("528");F&&!H("8")||E&&H("9");function J(a,b){u.call(this,a?a.type:"");this.f=this.a=this.target=null;if(a){this.type=a.type;this.target=a.target||a.srcElement;this.a=b;var c=a.relatedTarget;if(c&&F)try{va(c.nodeName)}catch(d){}this.f=a;a.defaultPrevented&&this.b()}}r(J,u);J.prototype.b=function(){J.Z.b.call(this);var a=this.f;if(a.preventDefault)a.preventDefault();else if(a.returnValue=!1,gb)try{if(a.ctrlKey||112<=a.keyCode&&123>=a.keyCode)a.keyCode=-1}catch(b){}};var hb="closure_lm_"+(1E6*Math.random()|0),ib={},jb=0;function K(a,b,c,d,e){if("array"==l(b))for(var f=0;f<b.length;f++)K(a,b[f],c,d,e);else if(c=kb(c),a&&a[w])Ga(a.m,String(b),c,d,e);else{if(!b)throw Error("Invalid event type");var f=!!d,g=lb(a);g||(a[hb]=g=new z(a));c=Ga(g,b,c,d,e);c.a||(d=mb(),c.a=d,d.src=a,d.listener=c,a.addEventListener?a.addEventListener(b.toString(),d,f):a.attachEvent(nb(b.toString()),d),jb++)}}
function mb(){var a=ob,b=fb?function(c){return a.call(b.src,b.listener,c)}:function(c){c=a.call(b.src,b.listener,c);if(!c)return c};return b}function pb(a,b,c,d,e){if("array"==l(b))for(var f=0;f<b.length;f++)pb(a,b[f],c,d,e);else(c=kb(c),a&&a[w])?(a=a.m,b=String(b).toString(),b in a.a&&(f=a.a[b],c=Ha(f,c,d,e),-1<c&&(x(f[c]),y.splice.call(f,c,1),0==f.length&&(delete a.a[b],a.b--)))):a&&(a=lb(a))&&(b=a.a[b.toString()],a=-1,b&&(a=Ha(b,c,!!d,e)),(c=-1<a?b[a]:null)&&qb(c))}
function qb(a){if("number"!=typeof a&&a&&!a.v){var b=a.src;if(b&&b[w])Ia(b.m,a);else{var c=a.type,d=a.a;b.removeEventListener?b.removeEventListener(c,d,a.C):b.detachEvent&&b.detachEvent(nb(c),d);jb--;(c=lb(b))?(Ia(c,a),0==c.b&&(c.src=null,b[hb]=null)):x(a)}}}function nb(a){return a in ib?ib[a]:ib[a]="on"+a}function rb(a,b,c,d){var e=!0;if(a=lb(a))if(b=a.a[b.toString()])for(b=b.concat(),a=0;a<b.length;a++){var f=b[a];f&&f.C==c&&!f.v&&(f=sb(f,d),e=e&&!1!==f)}return e}
function sb(a,b){var c=a.listener,d=a.F||a.src;a.B&&qb(a);return c.call(d,b)}
function ob(a,b){if(a.v)return!0;if(!fb){var c;if(!(c=b))a:{c=["window","event"];for(var d=k,e;e=c.shift();)if(null!=d[e])d=d[e];else{c=null;break a}c=d}e=c;c=new J(e,this);d=!0;if(!(0>e.keyCode||void 0!=e.returnValue)){a:{var f=!1;if(0==e.keyCode)try{e.keyCode=-1;break a}catch(n){f=!0}if(f||void 0==e.returnValue)e.returnValue=!0}e=[];for(f=c.a;f;f=f.parentNode)e.push(f);for(var f=a.type,g=e.length-1;0<=g;g--){c.a=e[g];var h=rb(e[g],f,!0,c),d=d&&h}for(g=0;g<e.length;g++)c.a=e[g],h=rb(e[g],f,!1,c),
d=d&&h}return d}return sb(a,new J(b,this))}function lb(a){a=a[hb];return a instanceof z?a:null}var tb="__closure_events_fn_"+(1E9*Math.random()>>>0);function kb(a){if(p(a))return a;a[tb]||(a[tb]=function(b){return a.handleEvent(b)});return a[tb]};function M(){ka.call(this);this.m=new z(this);this.O=this}r(M,ka);M.prototype[w]=!0;M.prototype.addEventListener=function(a,b,c,d){K(this,a,b,c,d)};M.prototype.removeEventListener=function(a,b,c,d){pb(this,a,b,c,d)};function N(a,b){var c=a.O,d=b,e=d.type||d;if(m(d))d=new u(d,c);else if(d instanceof u)d.target=d.target||c;else{var f=d,d=new u(e,c);ua(d,f)}c=d.a=c;ub(c,e,!0,d);ub(c,e,!1,d)}M.prototype.removeAllListeners=function(a){return this.m?this.m.removeAll(a):0};
function ub(a,b,c,d){if(b=a.m.a[String(b)]){b=b.concat();for(var e=!0,f=0;f<b.length;++f){var g=b[f];if(g&&!g.v&&g.C==c){var h=g.listener,n=g.F||g.src;g.B&&Ia(a.m,g);e=!1!==h.call(n,d)&&e}}}};function O(a,b){a&&a.log($a,b,void 0)};function vb(a,b,c){if(p(a))c&&(a=q(a,c));else if(a&&"function"==typeof a.handleEvent)a=q(a.handleEvent,a);else throw Error("Invalid listener argument");return 2147483647<b?-1:k.setTimeout(a,b||0)};var wb=/^(?:([^:/?#.]+):)?(?:\/\/(?:([^/?#]*)@)?([^/#?]*?)(?::([0-9]+))?(?=[/#?]|$))?([^?#]+)?(?:\?([^#]*))?(?:#(.*))?$/;function xb(a){if(yb){yb=!1;var b=k.location;if(b){var c=b.href;if(c&&(c=(c=xb(c)[3]||null)?decodeURI(c):c)&&c!=b.hostname)throw yb=!0,Error();}}return a.match(wb)}var yb=G;function P(a){M.call(this);this.S=new C;this.u=a||null;this.b=!1;this.s=this.c=null;this.a=this.M=this.j="";this.f=this.I=this.i=this.H=!1;this.g=0;this.l=null;this.J=zb;this.o=this.V=!1}r(P,M);var zb="",Ab=P.prototype,Bb=db("goog.net.XhrIo");Ab.h=Bb;var Cb=/^https?$/i,Db=["POST","PUT"];
P.prototype.send=function(a,b,c,d){if(this.c)throw Error("[goog.net.XhrIo] Object is active with another request="+this.j+"; newUri="+a);b=b?b.toUpperCase():"GET";this.j=a;this.a="";this.M=b;this.H=!1;this.b=!0;this.c=this.u?Na(this.u):Na(La);this.s=this.u?pa(this.u):pa(La);this.c.onreadystatechange=q(this.N,this);try{O(this.h,Q(this,"Opening Xhr")),this.I=!0,this.c.open(b,String(a),!0),this.I=!1}catch(f){O(this.h,Q(this,"Error opening Xhr: "+f.message));Eb(this,f);return}a=c||"";var e=this.S.clone();
d&&Qa(d,function(a,b){D(e,b,a)});d=Da(e.w());c=k.FormData&&a instanceof k.FormData;!(0<=Ba(Db,b))||d||c||D(e,"Content-Type","application/x-www-form-urlencoded;charset=utf-8");e.forEach(function(a,b){this.c.setRequestHeader(b,a)},this);this.J&&(this.c.responseType=this.J);"withCredentials"in this.c&&(this.c.withCredentials=this.V);try{Fb(this),0<this.g&&(this.o=Gb(this.c),O(this.h,Q(this,"Will abort after "+this.g+"ms if incomplete, xhr2 "+this.o)),this.o?(this.c.timeout=this.g,this.c.ontimeout=q(this.K,
this)):this.l=vb(this.K,this.g,this)),O(this.h,Q(this,"Sending request")),this.i=!0,this.c.send(a),this.i=!1}catch(f){O(this.h,Q(this,"Send error: "+f.message)),Eb(this,f)}};function Gb(a){return E&&H(9)&&"number"==typeof a.timeout&&void 0!==a.ontimeout}function Ea(a){return"content-type"==a.toLowerCase()}
P.prototype.K=function(){"undefined"!=typeof aa&&this.c&&(this.a="Timed out after "+this.g+"ms, aborting",O(this.h,Q(this,this.a)),N(this,"timeout"),this.c&&this.b&&(O(this.h,Q(this,"Aborting")),this.b=!1,this.f=!0,this.c.abort(),this.f=!1,N(this,"complete"),N(this,"abort"),Hb(this)))};function Eb(a,b){a.b=!1;a.c&&(a.f=!0,a.c.abort(),a.f=!1);a.a=b;Ib(a);Hb(a)}function Ib(a){a.H||(a.H=!0,N(a,"complete"),N(a,"error"))}P.prototype.N=function(){this.A||(this.I||this.i||this.f?Jb(this):this.U())};
P.prototype.U=function(){Jb(this)};function Jb(a){if(a.b&&"undefined"!=typeof aa)if(a.s[1]&&4==R(a)&&2==Kb(a))O(a.h,Q(a,"Local request error detected and ignored"));else if(a.i&&4==R(a))vb(a.N,0,a);else if(N(a,"readystatechange"),4==R(a)){O(a.h,Q(a,"Request complete"));a.b=!1;try{if(Lb(a))N(a,"complete"),N(a,"success");else{var b;try{b=2<R(a)?a.c.statusText:""}catch(c){O(a.h,"Can not get status: "+c.message),b=""}a.a=b+" ["+Kb(a)+"]";Ib(a)}}finally{Hb(a)}}}
function Hb(a){if(a.c){Fb(a);var b=a.c,c=a.s[0]?ba:null;a.c=null;a.s=null;N(a,"ready");try{b.onreadystatechange=c}catch(d){(a=a.h)&&a.log(Ya,"Problem encountered resetting onreadystatechange: "+d.message,void 0)}}}function Fb(a){a.c&&a.o&&(a.c.ontimeout=null);"number"==typeof a.l&&(k.clearTimeout(a.l),a.l=null)}
function Lb(a){var b=Kb(a),c;a:switch(b){case 200:case 201:case 202:case 204:case 206:case 304:case 1223:c=!0;break a;default:c=!1}if(!c){if(b=0===b)a=xb(String(a.j))[1]||null,!a&&self.location&&(a=self.location.protocol,a=a.substr(0,a.length-1)),b=!Cb.test(a?a.toLowerCase():"");c=b}return c}function R(a){return a.c?a.c.readyState:0}function Kb(a){try{return 2<R(a)?a.c.status:-1}catch(b){return-1}}function Q(a,b){return b+" ["+a.M+" "+a.j+" "+Kb(a)+"]"};google.load("visualization","1",{packages:["table","corechart","annotatedtimeline"]});
function S(a){this.b=a||new P;this.a=[];this.l=this.o=this.f=!1;this.g={};for(var b in T)document.getElementById(T[b]).className="pagespeed-hidden-offscreen";a=document.createElement("table");a.id="nav-bar";a.className="pagespeed-sub-tabs";a.innerHTML='<tr><td><a id="'+Mb+'" href="javascript:void(0);">Per application cache stats</a> - </td><td><a id="'+Nb+'" href="javascript:void(0);">Per type cache stats</a> - </td><td><a id="'+Ob+'" href="javascript:void(0);">IPRO status</a> - </td><td><a id="'+
Pb+'" href="javascript:void(0);">Image rewriting</a> - </td><td><a id="'+Qb+'" href="javascript:void(0);">Realtime</a></td></tr>';b=document.createElement("div");b.id="ui-div";b.innerHTML='<table id="ui-table" border=1 style="border-collapse: collapse;border-color:silver;"><tr valign="center"><td>Auto refresh (every 5 seconds): <input type="checkbox" id="auto-refresh" '+(this.f?"checked":"")+"></td></tr></table>";document.body.insertBefore(b,document.getElementById(U));document.body.insertBefore(a,
document.getElementById("ui-div"))}S.prototype.i=function(a){for(var b in T){var c=T[b];document.getElementById(c).className=c==a?"":"pagespeed-hidden-offscreen"}c=document.getElementById(a+"_mode");for(b in Rb){var d=document.getElementById(Rb[b]);d.className=d==c?"pagespeed-underline-link":""}location.href=location.href.split("#")[0]+"#"+a};S.prototype.s=function(){var a=location.hash.substr(1);if(""==a)this.i(U);else{var b;a:{b=T;for(var c in b)if(b[c]==a){b=!0;break a}b=!1}b&&this.i(a)}};
var Mb="cache_applied_mode",Nb="cache_type_mode",Ob="ipro_mode",Pb="image_rewriting_mode",Qb="realtime_mode",Rb={P:Mb,R:Nb,W:Ob,Y:Pb,X:Qb},U="cache_applied",T={P:U,R:"cache_type",W:"ipro",Y:"image_rewriting",X:"realtime"};S.prototype.A=function(){this.f=!this.f};
S.prototype.j=function(){if(!this.b.c)if(!this.o){this.o=!0;var a=new Date,b;b="?json&start_time="+(new Date(a-864E5)).getTime();b+="&end_time="+a.getTime();this.b.send(b+"&granularity=5000")}else if(!this.l||this.f)this.l=!0,a=location.pathname,b=a.lastIndexOf("/",a.length-2),this.b.send(0<b?a.substring(0,b)+"/stats_json":a+"/stats_json")};
S.prototype.u=function(){if(Lb(this.b)){var a;var b=this.b;try{a=b.c?b.c.responseText:""}catch(f){O(b.h,"Can not get responseText: "+f.message),a=""}if(this.l){var c=JSON.parse(a).variables;a=[];for(var d in c)a.push({name:d,value:c[d]});this.a.push({G:a,L:new Date});17280<this.a.length&&this.a.shift();V(this,"pcache-cohorts-dom","Property cache dom cohorts",U);V(this,"pcache-cohorts-beacon","Property cache beacon cohorts",U);V(this,"rewrite_cached_output","Rewrite cached output",U);V(this,"url_input",
"URL Input",U);V(this,"cache","Cache","cache_type");V(this,"file_cache","File Cache","cache_type");V(this,"memcached","Memcached","cache_type");V(this,"lru_cache","LRU","cache_type");V(this,"shm_cache","Shared Memory","cache_type");V(this,"ipro","In place resource optimization","ipro");V(this,"image_rewrite","Image rewrite","image_rewriting");V(this,"image_rewrites_dropped","Image rewrites dropped","image_rewriting");W(this,"http","Http");W(this,"file_cache","File Cache RT");W(this,"lru_cache","LRU Cache RT");
W(this,"serf_fetch","Serf stats RT");W(this,"rewrite","Rewrite stats RT")}else{a=JSON.parse(a);d=a.timestamps;a=a.variables;for(b=0;b<d.length;++b){var e=[];for(c in a)e.push({name:c,value:a[c][b]});this.a.push({G:e,L:new Date(d[b])})}window.setTimeout(q(this.j,this),0)}}else c=this.b,console.log(m(c.a)?c.a:String(c.a))};
function Sb(a,b){var c=!0;0!=b.indexOf(a)?c=!1:0<=b.indexOf("cache_flush_timestamp_ms")?c=!1:0<=b.indexOf("cache_flush_count")?c=!1:0<=b.indexOf("cache_time_us")&&(c=!1);return c}
function Tb(a,b,c,d,e){if(a.g[c])d=a.g[c];else{e=document.getElementById(e);"Loading Charts..."==e.textContent&&(e.textContent="");var f=document.createElement("div");"AnnotatedTimeLine"==d&&(f.className="pagespeed-graphs-chart");f.id=b;b=document.createElement("p");b.textContent=c;b.className="pagespeed-graphs-title";e.appendChild(b);e.appendChild(f);d=new google.visualization[d](f);a.g[c]=d}return d}
function V(a,b,c,d){var e="pagespeed-graphs-"+b;b+="_";c=Tb(a,e,c,"BarChart",d);e=document.getElementById(e);d=[];for(var f=new google.visualization.DataTable,g=Fa(a.a[a.a.length-1].G),h=a=0;h<g.length;++h)if(Sb(b,g[h].name)){++a;var n=g[h].name.substring(b.length),n=n.replace(/_/g," ");d.push([n,Number(g[h].value)])}f.addColumn("string","Name");f.addColumn("number","Value");f.addRows(d);b=new google.visualization.DataView(f);b.setColumns([0,1,{calc:function(a,b){for(var c=0,d=0;d<a.getNumberOfRows();++d)c+=
a.getValue(d,1);d=a.getValue(b,1);return d.toString()+" ("+(100*d/(0==c?1:c)).toFixed(2).toString()+"%)"},type:"string",role:"annotation"}]);a=40*a+10;e.style.height=a+20;c.draw(b,{annotations:{alwaysOutside:!0,highContrast:!0,textStyle:{fontSize:12,color:"black"}},hAxis:{direction:1},vAxis:{textPosition:"out"},legend:{position:"none"},width:800,height:a,chartArea:{left:225,top:0,width:"60%",height:"80%"}})}
function W(a,b,c){var d=b+"_";b=Tb(a,"pagespeed-graphs-"+b,c,"AnnotatedTimeLine","realtime");c=[];var e=new google.visualization.DataTable;e.addColumn("datetime","Time");for(var f=!0,g=0;g<a.a.length;++g){var h=Fa(a.a[g].G),n=[];n.push(a.a[g].L);for(var A=0;A<h.length;++A)if(Sb(d,h[A].name)&&(n.push(Number(h[A].value)),f)){var v=h[A].name.substring(d.length),v=v.replace(/_/g," ");e.addColumn("number",v)}f=!1;c.push(n)}e.addRows(c);b.draw(e,Ub)}var Ub={thickness:1,displayExactValues:!0,legendPosition:"newRow"};
function Vb(){K(window,"load",function(){var a=new S;a.s();for(var b in T)K(document.getElementById(Rb[b]),"click",q(a.i,a,T[b]));K(window,"hashchange",q(a.s,a));K(document.getElementById("auto-refresh"),"change",q(a.A,a));K(a.b,"complete",q(a.u,a));setInterval(q(a.j,a),5E3);a.j()})}var X=["pagespeed","Graphs","Start"],Y=k;X[0]in Y||!Y.execScript||Y.execScript("var "+X[0]);for(var Z;X.length&&(Z=X.shift());)X.length||void 0===Vb?Y[Z]?Y=Y[Z]:Y=Y[Z]={}:Y[Z]=Vb;})();