(function(){"undefined"===typeof window.GraniteClientLibraryManager&&(window.GraniteClientLibraryManager={debug:!1,scripts:{},initialInclude:!0,windowLoaded:!1,contextPath:null,hook:null,channelCB:function(){return""},setChannelCB:function(a){this.channelCB=a},isDebug:function(a){var b=document.location.href;return"undefined"!==typeof console&&(a||this.debug)&&-1!==b.indexOf("debugConsole\x3dtrue")},write:function(a,b){b=this.isDebug(b);var c=this.channelCB();c||(c="default");b&&console.log("LibraryManager: detected channel: "+
c);for(var d=0;d<a.length;d++){var e=a[d];this.scripts[e.p]||(this.scripts[e.p]=e,b&&console.log("LibraryManager: processing script",e.p,e),this.isIncluded(c,e.c,b)&&this.includeScript(e.p,b))}},isIncluded:function(a,b,c){if(0===b.length)return c&&console.log("LibraryManager: ...accepted. no channels defined"),!0;for(var d="!"+a,e=!1,f=0,g=0;g<b.length;g++){var h=b[g];if("!"===h.charAt(0)){if(h===d)return c&&console.log("LibraryManager: ...rejected. channel excluded: ",h),!1}else h===a&&(c&&console.log("LibraryManager: ...accepted. channel included: ",
h),e=!0),f++}0===f&&(c&&console.log("LibraryManager: ...accepted. no more channels after exclusion "),e=!0);!e&&c&&console.log("LibraryManager: ...rejected.");return e},includeScript:function(a,b){var c=a,d=c.indexOf("?");0<d&&(c=c.substring(0,d));c=c.substring(c.lastIndexOf(".")+1);if(this.initialInclude){this.initialInclude=!1;"undefined"!==typeof G_XHR_HOOK&&"[object Function]"===Object.prototype.toString.call(G_XHR_HOOK)&&(this.hook=G_XHR_HOOK);this.contextPath=this.detectContextPath();var e=
this;window.addEventListener?window.addEventListener("load",function(){e.windowLoaded=!0},!1):window.attachEvent&&window.attachEvent("onload",function(){e.windowLoaded=!0})}if(this.hook){d={url:a,method:"GET"};try{var f=this.hook(d);f&&(a=f.url)}catch(h){b&&console.log("LibraryManager: error during CQ_XHR_HOOK call: ",h.message)}}this.contextPath&&0===a.indexOf("/")&&0!==a.indexOf(this.contextPath+"/")&&(a=this.contextPath+a);if("js"===c)if(b&&console.log("LibraryManager: --\x3e writing js include: ",
a),this.windowLoaded)try{var g=document.all?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest;g.open("GET",a,!1);g.send(null);window.execScript?window.execScript(g.responseText):eval.call(null,g.responseText)}catch(h){b&&console.log("LibraryManager: --\x3e evaluating js include failed: ",a)}else document.writeln('\x3cscript src\x3d"'+a+'" type\x3d"text/javascript"\x3e\x3c/script\x3e');else"css"===c?(c=document.getElementsByTagName("head")||document.getElementsByTagName("*"),c=c[0],f=document.createElement("link"),
f.type="text/css",f.rel="stylesheet",f.href=a,c.appendChild(f),b&&console.log("LibraryManager: --\x3e writing css include: ",a)):b&&console.log("LibraryManager: --\x3e unsupported extension: ",a)},detectContextPath:function(){for(var a=document.getElementsByTagName("script"),b=/\/etc\/clientlibs\/foundation\/librarymanager\/*\.js$/,c=0;c<a.length;c++){var d=a[c].src;0<=d.indexOf("?")&&(d=d.substring(0,d.indexOf("?")));if(d.match(b)){d=d.replace(/.*:[/][/]/,"");d=d.substring(d.indexOf("/"));this.contextPath=
d=d.replace(b,"");break}}}},window.CQClientLibraryManager=window.GraniteClientLibraryManager)})();
(function(a,b){b.setChannelCB(function(){var c=[{channel:"ie6",match:/MSIE ([0-6]\.[.0-9]{0,})/i},{channel:"touch",match:/android.+mobile|android.+chrome|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|pad|pod|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i},{channel:"extjs",match:/(windows|linux|os\s+[x9]|solaris|bsd)/i}];var d="forceChannel".replace(/[[]/,
"\\[").replace(/[\]]/,"\\]");d=(new RegExp("[\\?\x26]"+d+"\x3d([^\x26#]*)")).exec(a.location.search);d=null===d?"":decodeURIComponent(d[1].replace(/\+/g," "));if(d)return d;d=navigator.userAgent;for(var e=0;e<c.length;e++){var f=c[e];if(f.match.test(d))return f.channel}return""})})(window,GraniteClientLibraryManager);
window.GraniteTiming=function(){return{stamps:null,pageRenderStart:null,lastTimes:{},init:function(){this.pageRenderStart=new Date;this.lastTimes["default"]=new Date;this.stamps="";var a=window.onload;window.onload="function"!==typeof window.onload?window.GraniteTiming.stampOnLoad:function(){a&&a();window.GraniteTiming.stampOnLoad()};var b=window.document.onkeydown;window.document.onkeydown="function"!==typeof window.document.onkeydown?window.GraniteTiming.showDiv:function(c){b&&b(c);window.GraniteTiming.showDiv(c)}},
stamp:function(a,b,c){b||(b="default");var d=this.lastTimes[b],e=new Date;c||void 0===d?c="\x26nbsp;---":(c=e-d,c=(1E3>c?100>c?10>c?"\x26nbsp;\x26nbsp;\x26nbsp;":"\x26nbsp;\x26nbsp;":"\x26nbsp;":"")+c);a=c+" / "+(e-this.pageRenderStart)+" ms \x26ndash; "+a;this.lastTimes[b]=e;this.stamps+=this.stamps?","+a:a},stampOnLoad:function(){window.GraniteTiming.stamp("Complete document loaded");window.onload=null},writeDiv:function(){var a=window.document.createElement("div"),b=a.style;a.id="cqTiming";b.margin=
"0 auto 0 auto";b.borderBottom="1px solid #000000";b.marginBottom="5px";b.fontSize="small";b.fontFamily="monospace";b.backgroundColor="#000000";b.color="#ffffff";b.position="absolute";b.top="0px";b.left="0px";a.innerHTML='\x3cp style\x3d"margin: 2px 0 1px 0"\x3e Page load staticstics:\x3cbr\x3e'+this.stamps.replace(/,/g,"\x3cbr\x3e")+'\x3c/p\x3e\x3cp style\x3d"margin: 2px 0 1px 0; text-align: right"\x3e\x3ca href\x3d"javascript:{GraniteTiming.hideDiv();}"\x3eClose\x3c/a\x3e\x3c/p\x3e';window.document.body.appendChild(a)},
hideDiv:function(){window.document.getElementById("cqTiming").style.display="none"},showDiv:function(a){if(document.all){var b=window.event.keyCode;a=window.event}else b="undefined"!==typeof a.which?a.which:0;a&&a.ctrlKey&&a.shiftKey&&85===b&&window.GraniteTiming.writeDiv()}}}();window.GraniteTiming.init();