Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/js
diff options
context:
space:
mode:
authorStefan Giehl <stefan@matomo.org>2020-04-17 16:00:51 +0300
committerGitHub <noreply@github.com>2020-04-17 16:00:51 +0300
commit6936b93cba5150e0eaa879aebf3662b3e279d045 (patch)
treec63c93f92bc31479aa70d463939ef144eeb83e66 /js
parent3c50481031e8b8ad647d8a74802e9558cebe41ce (diff)
New page performance reports (#15736)
* Adds various new performance metrics and dimensions * Adds tracking for new performance values * track performance metrics only for page views * Archive new performance metrics * move everything into a new plugin * fix archiving of overall metrics * Adds new overview reports * show performance metric on some more reports * adds new page performance icon * Adds new row action to view page performance evolution for pages * Adds new stacked bar visualization for page performance evolutions * show total value in stacked bar chart tooltips * [TEMP] use php tracker package branch * Adds some simple System tests * Adds some UI tests * remove performance metrics from action reports that don't support it * move calculation to api * mark as tracker plugin * improve calculation of maximum value in bar evolution chart * enrich existing tests with performance metrics * updates expected test files * send performance metrics with the next request after they are available this might not be the pageview it self but any request after it, like a ping, goal, ... * Adds request processor to process performance metrics not sent directly with the page view * rebuilt js * Add metric decriptions to evolution chart documentation * fix convertion of microseconds part * Ensure average page load time is displayed in evolution graph in scheduled reports * fix some more tests * move page performance overview to visitors overview * Adds new table with performance metrics visualization * Adds some additional information to page performance evolution overlay * update omnifixture * updates expected UI files * Use mediumints for new dimensions * Adds additional permission check * Encode label in page performance overlay title * Improve updating performance metrics in later requests * Adds some integration tests * improves metric documentations * Send already available performance data with page view request * update tests * updates expected UI test screenshots * updates expected test files * improves archiving * show page generation time in performance metrics table if matomo was installed before 4.0 * Hide page generation time in ui reports if Matomo was installed after 4.0 * Fix removal of unavailable columns from being displayed that was done too early in the process causing to be overwritten again by the reports configureView * do not track automatically calculated generation time any more * split latency into network and server time * [TEMP] update php tracker * rebuilt piwik.js * Ensure to count zero values as hits * updates Omnifixture * updates expected test files * remove possibility to set generation time * rebuilt piwik.js * adjust tests * update php tracker * update test logs * submodule * update Omnifixture * show page load time in action tooltip and visitor summary instead of generation time * updates expected ui files * mark page generation time metric as deprecated * fix tests * [TEMP] use submodule branches * ensure lower metric values are shown as better * use 4.x-dev branch of php-tracker * update submodules
Diffstat (limited to 'js')
-rw-r--r--js/piwik.js82
-rw-r--r--js/piwik.min.js75
2 files changed, 98 insertions, 59 deletions
diff --git a/js/piwik.js b/js/piwik.js
index 6f734b933b..9b01fc5350 100644
--- a/js/piwik.js
+++ b/js/piwik.js
@@ -39,8 +39,9 @@
addEventListener, attachEvent, removeEventListener, detachEvent, disableCookies,
cookie, domain, readyState, documentElement, doScroll, title, text, contentWindow, postMessage,
location, top, onerror, document, referrer, parent, links, href, protocol, name, GearsFactory,
- performance, mozPerformance, msPerformance, webkitPerformance, timing, requestStart,
- responseEnd, event, which, button, srcElement, type, target, data,
+ performance, mozPerformance, msPerformance, webkitPerformance, timing, connectEnd, requestStart, responseStart,
+ responseEnd, fetchStart, domInteractive, domLoading, domComplete, loadEventStart, loadEventEnd,
+ event, which, button, srcElement, type, target, data,
parentNode, tagName, hostname, className,
userAgent, cookieEnabled, sendBeacon, platform, mimeTypes, enabledPlugin, javaEnabled,
XMLHttpRequest, ActiveXObject, open, setRequestHeader, onreadystatechange, send, readyState, status,
@@ -69,7 +70,7 @@
setCookieNamePrefix, setCookieDomain, setCookiePath, setSecureCookie, setVisitorIdCookie, getCookieDomain, hasCookies, setSessionCookie,
setVisitorCookieTimeout, setSessionCookieTimeout, setReferralCookieTimeout, getCookie, getCookiePath, getSessionCookieTimeout,
setConversionAttributionFirstReferrer, tracker, request,
- disablePerformanceTracking, setGenerationTimeMs, maq_confirm_opted_in,
+ disablePerformanceTracking, maq_confirm_opted_in,
doNotTrack, setDoNotTrack, msDoNotTrack, getValuesFromVisitorIdCookie,
enableCrossDomainLinking, disableCrossDomainLinking, isCrossDomainLinkingEnabled, setCrossDomainLinkingTimeout, getCrossDomainLinkingUrlParameter,
addListener, enableLinkTracking, enableJSErrorTracking, setLinkTrackingTimer, getLinkTrackingTimer,
@@ -2250,8 +2251,11 @@ if (typeof window.Piwik !== 'object') {
// Is performance tracking enabled
configPerformanceTrackingEnabled = true,
- // Generation time set from the server
- configPerformanceGenerationTime = 0,
+ // will be set to true automatically once the onload event has finished
+ performanceAvailable = false,
+
+ // indicates if performance metrics for the page view have been sent with a request
+ performanceTracked = false,
// Whether Custom Variables scope "visit" should be stored in a cookie during the time of the visit
configStoreCustomVariablesInCookie = false,
@@ -3486,6 +3490,40 @@ if (typeof window.Piwik !== 'object') {
return id;
}
+ function appendAvailablePerformanceMetrics(request) {
+ if (performanceAlias && performanceAlias.timing && performanceAlias
+ && performanceAlias.timing.connectEnd && performanceAlias.timing.fetchStart) {
+ request += '&pf_net=' + (performanceAlias.timing.connectEnd - performanceAlias.timing.fetchStart);
+ }
+
+ if (performanceAlias && performanceAlias.timing && performanceAlias
+ && performanceAlias.timing.responseStart && performanceAlias.timing.requestStart) {
+ request += '&pf_srv=' + (performanceAlias.timing.responseStart - performanceAlias.timing.requestStart);
+ }
+
+ if (performanceAlias && performanceAlias.timing && performanceAlias
+ && performanceAlias.timing.responseStart && performanceAlias.timing.responseEnd) {
+ request += '&pf_tfr=' + (performanceAlias.timing.responseEnd - performanceAlias.timing.responseStart);
+ }
+
+ if (performanceAlias && performanceAlias.timing && performanceAlias
+ && performanceAlias.timing.domInteractive && performanceAlias.timing.domLoading) {
+ request += '&pf_dm1=' + (performanceAlias.timing.domInteractive - performanceAlias.timing.domLoading);
+ }
+
+ if (performanceAlias && performanceAlias.timing && performanceAlias
+ && performanceAlias.timing.domComplete && performanceAlias.timing.domInteractive) {
+ request += '&pf_dm2=' + (performanceAlias.timing.domComplete - performanceAlias.timing.domInteractive);
+ }
+
+ if (performanceAlias && performanceAlias.timing && performanceAlias
+ && performanceAlias.timing.loadEventEnd && performanceAlias.timing.loadEventStart) {
+ request += '&pf_onl=' + (performanceAlias.timing.loadEventEnd - performanceAlias.timing.loadEventStart);
+ }
+
+ return request;
+ }
+
/**
* Returns the URL to call piwik.php,
* with the standard parameters (plugins, resolution, url, referrer, etc.).
@@ -3702,13 +3740,9 @@ if (typeof window.Piwik !== 'object') {
}
// performance tracking
- if (configPerformanceTrackingEnabled) {
- if (configPerformanceGenerationTime) {
- request += '&gt_ms=' + configPerformanceGenerationTime;
- } else if (performanceAlias && performanceAlias.timing
- && performanceAlias.timing.requestStart && performanceAlias.timing.responseEnd) {
- request += '&gt_ms=' + (performanceAlias.timing.responseEnd - performanceAlias.timing.requestStart);
- }
+ if (configPerformanceTrackingEnabled && performanceAvailable && !performanceTracked) {
+ request = appendAvailablePerformanceMetrics(request);
+ performanceTracked = true;
}
if (configIdPageView) {
@@ -3851,6 +3885,11 @@ if (typeof window.Piwik !== 'object') {
var request = getRequest('action_name=' + encodeWrapper(titleFixup(customTitle || configTitle)), customData, 'log');
+ // append already available performance metrics if they were not already tracked (or appended)
+ if (!performanceTracked) {
+ request = appendAvailablePerformanceMetrics(request);
+ }
+
sendRequest(request, configTrackerPause, callback);
}
@@ -5861,16 +5900,6 @@ if (typeof window.Piwik !== 'object') {
};
/**
- * Set the server generation time.
- * If set, the browser's performance.timing API in not used anymore to determine the time.
- *
- * @param int generationTime
- */
- this.setGenerationTimeMs = function (generationTime) {
- configPerformanceGenerationTime = parseInt(generationTime, 10);
- };
-
- /**
* Set visit standard length (in seconds). This should ideally match the visit_standard_length setting
* in Matomo in case you customised it. This setting only has an effect if heart beat timer is active
* currently.
@@ -6623,6 +6652,15 @@ if (typeof window.Piwik !== 'object') {
*/
this.forgetUserOptOut = this.rememberConsentGiven;
+ /**
+ * Mark performance metrics as available, once onload event has finished
+ */
+ trackCallbackOnLoad(function(){
+ setTimeout(function(){
+ performanceAvailable = true;
+ }, 0);
+ });
+
Piwik.trigger('TrackerSetup', [this]);
}
diff --git a/js/piwik.min.js b/js/piwik.min.js
index 745da994ef..74eafa4f96 100644
--- a/js/piwik.min.js
+++ b/js/piwik.min.js
@@ -28,42 +28,43 @@ if(-1!==M(aq,ao)&&ae.findFirstNodeHavingAttributeWithValue(at,"src")){var ar=ae.
if(T.innerHeight&&ao>T.innerHeight){ao=T.innerHeight}return((at.bottom>0||aq)&&at.right>0&&at.left<ap&&((at.top<ao)||aq))},isNodeVisible:function(ap){var ao=j(ap);var aq=this.isOrWasNodeInViewport(ap);return ao&&aq},buildInteractionRequestParams:function(ao,ap,aq,ar){var at="";if(ao){at+="c_i="+t(ao)}if(ap){if(at){at+="&"}at+="c_n="+t(ap)}if(aq){if(at){at+="&"}at+="c_p="+t(aq)}if(ar){if(at){at+="&"}at+="c_t="+t(ar)}return at},buildImpressionRequestParams:function(ao,ap,aq){var ar="c_n="+t(ao)+"&c_p="+t(ap);if(aq){ar+="&c_t="+t(aq)}return ar},buildContentBlock:function(aq){if(!aq){return}var ao=this.findContentName(aq);var ap=this.findContentPiece(aq);var ar=this.findContentTarget(aq);ao=this.trim(ao);ap=this.trim(ap);ar=this.trim(ar);return{name:ao||"Unknown",piece:ap||"Unknown",target:ar||""}},collectContent:function(ar){if(!ar||!ar.length){return[]}var aq=[];var ao,ap;for(ao=0;ao<ar.length;ao++){ap=this.buildContentBlock(ar[ao]);if(J(ap)){aq.push(ap)}}return aq},setLocation:function(ao){this.location=ao
},getLocation:function(){var ao=this.location||T.location;if(!ao.origin){ao.origin=ao.protocol+"//"+ao.hostname+(ao.port?":"+ao.port:"")}return ao},toAbsoluteUrl:function(ap){if((!ap||String(ap)!==ap)&&ap!==""){return ap}if(""===ap){return this.getLocation().href}if(ap.search(/^\/\//)!==-1){return this.getLocation().protocol+ap}if(ap.search(/:\/\//)!==-1){return ap}if(0===ap.indexOf("#")){return this.getLocation().origin+this.getLocation().pathname+ap}if(0===ap.indexOf("?")){return this.getLocation().origin+this.getLocation().pathname+ap}if(0===ap.search("^[a-zA-Z]{2,11}:")){return ap}if(ap.search(/^\//)!==-1){return this.getLocation().origin+ap}var ao="(.*/)";var aq=this.getLocation().origin+this.getLocation().pathname.match(new RegExp(ao))[0];return aq+ap},isUrlToCurrentDomain:function(ap){var aq=this.toAbsoluteUrl(ap);if(!aq){return false}var ao=this.getLocation().origin;if(ao===aq){return true}if(0===String(aq).indexOf(ao)){if(":"===String(aq).substr(ao.length,1)){return false}return true
}return false},setHrefAttribute:function(ap,ao){if(!ap||!ao){return}ae.setAnyAttribute(ap,"href",ao)},shouldIgnoreInteraction:function(aq){var ap=ae.hasNodeAttribute(aq,this.CONTENT_IGNOREINTERACTION_ATTR);var ao=ae.hasNodeCssClass(aq,this.CONTENT_IGNOREINTERACTION_CLASS);return ap||ao}};function O(ap,at){if(at){return at}ap=v.toAbsoluteUrl(ap);if(z(ap,"?")){var ar=ap.indexOf("?");ap=ap.slice(0,ar)}if(R(ap,"matomo.php")){ap=g(ap,"matomo.php".length)}else{if(R(ap,"piwik.php")){ap=g(ap,"piwik.php".length)}else{if(R(ap,".php")){var ao=ap.lastIndexOf("/");var aq=1;ap=ap.slice(0,ao+aq)}}}if(R(ap,"/js/")){ap=g(ap,"js/".length)}return ap}function N(av){var ax="Piwik_Overlay";var ap=new RegExp("index\\.php\\?module=Overlay&action=startOverlaySession&idSite=([0-9]+)&period=([^&]+)&date=([^&]+)(&segment=.*)?$");var aq=ap.exec(G.referrer);if(aq){var at=aq[1];if(at!==String(av)){return false}var au=aq[2],ao=aq[3],ar=aq[4];if(!ar){ar=""}else{if(ar.indexOf("&segment=")===0){ar=ar.substr("&segment=".length)
-}}T.name=ax+"###"+au+"###"+ao+"###"+ar}var aw=T.name.split("###");return aw.length===4&&aw[0]===ax}function Z(ap,aw,ar){var av=T.name.split("###"),au=av[1],ao=av[2],at=av[3],aq=O(ap,aw);o(aq+"plugins/Overlay/client/client.js?v=1",function(){Piwik_Overlay_Client.initialize(aq,ar,au,ao,at)})}function u(){var aq;try{aq=T.frameElement}catch(ap){return true}if(J(aq)){return(aq&&String(aq.nodeName).toLowerCase()==="iframe")?true:false}try{return T.self!==T.top}catch(ao){return true}}function Q(cb,b6){var bF=this,bc="mtm_consent",cJ="mtm_consent_removed",b1=aa(G.domain,T.location.href,K()),cR=L(b1[0]),bK=p(b1[1]),bl=p(b1[2]),cP=false,cf="GET",c7=cf,aH="application/x-www-form-urlencoded; charset=UTF-8",cu=aH,aD=cb||"",bE="",cW="",b3=b6||"",bw="",bL="",a3,bh="",c3=["7z","aac","apk","arc","arj","asf","asx","avi","azw3","bin","csv","deb","dmg","doc","docx","epub","exe","flv","gif","gz","gzip","hqx","ibooks","jar","jpg","jpeg","js","mobi","mp2","mp3","mp4","mpg","mpeg","mov","movie","msi","msp","odb","odf","odg","ods","odt","ogg","ogv","pdf","phps","png","ppt","pptx","qt","qtm","ra","ram","rar","rpm","sea","sit","tar","tbz","tbz2","bz","bz2","tgz","torrent","txt","wav","wma","wmv","wpd","xls","xlsx","xml","z","zip"],ax=[cR],bx=[],bI=[],a7=[],bG=500,cT=true,cG,a4,bO,c4=1800,bM,ao,co=["pk_campaign","piwik_campaign","utm_campaign","utm_source","utm_medium"],bD=["pk_kwd","piwik_kwd","utm_term"],bi="_pk_",av="pk_vid",aY=180,cU,bn,bP=false,bj=false,cN,bd,bt,cH=33955200000,cm=1800000,c2=15768000000,a1=true,ck=0,bN=false,aP=false,b8,bT={},cj={},bk={},br=200,cX={},c5={},b7=[],cc=false,cz=false,ap=false,c6=false,cK=false,aM=false,bb=u(),cv=null,cV=null,b9,aQ,by,b4=am,bm,aK,cp=0,bs=["id","ses","cvar","ref"],cy=false,bz=null,cI=[],aw=U++;
-try{bh=G.title}catch(cw){bh=""}function db(dm,dk,dj,dl,di,dh){if(bj){return}var dg;if(dj){dg=new Date();dg.setTime(dg.getTime()+dj)}G.cookie=dm+"="+t(dk)+(dj?";expires="+dg.toGMTString():"")+";path="+(dl||"/")+(di?";domain="+di:"")+(dh?";secure":"")+";SameSite=Lax"}function aC(di){if(bj){return 0}var dg=new RegExp("(^|;)[ ]*"+di+"=([^;]*)"),dh=dg.exec(G.cookie);return dh?S(dh[2]):0}bz=!aC(cJ);function bZ(dg){var dh;dg=k(dg,av);if(bM){dh=new RegExp("#.*");return dg.replace(dh,"")}return dg}function bS(di,dg){var dj=s(dg),dh;if(dj){return dg}if(dg.slice(0,1)==="/"){return s(di)+"://"+d(di)+dg}di=bZ(di);dh=di.indexOf("?");if(dh>=0){di=di.slice(0,dh)}dh=di.lastIndexOf("/");if(dh!==di.length-1){di=di.slice(0,dh+1)}return di+dg}function cE(di,dg){var dh;di=String(di).toLowerCase();dg=String(dg).toLowerCase();if(di===dg){return true}if(dg.slice(0,1)==="."){if(di===dg.slice(1)){return true}dh=di.length-dg.length;if((dh>0)&&(di.slice(dh)===dg)){return true}}return false}function ci(dg){var dh=document.createElement("a");
-if(dg.indexOf("//")!==0&&dg.indexOf("http")!==0){if(dg.indexOf("*")===0){dg=dg.substr(1)}if(dg.indexOf(".")===0){dg=dg.substr(1)}dg="http://"+dg}dh.href=v.toAbsoluteUrl(dg);if(dh.pathname){return dh.pathname}return""}function a2(dh,dg){if(!aj(dg,"/")){dg="/"+dg}if(!aj(dh,"/")){dh="/"+dh}var di=(dg==="/"||dg==="/*");if(di){return true}if(dh===dg){return true}dg=String(dg).toLowerCase();dh=String(dh).toLowerCase();if(R(dg,"*")){dg=dg.slice(0,-1);di=(!dg||dg==="/");if(di){return true}if(dh===dg){return true}return dh.indexOf(dg)===0}if(!R(dh,"/")){dh+="/"}if(!R(dg,"/")){dg+="/"}return dh.indexOf(dg)===0}function ar(dk,dm){var dh,dg,di,dj,dl;for(dh=0;dh<ax.length;dh++){dj=L(ax[dh]);dl=ci(ax[dh]);if(cE(dk,dj)&&a2(dm,dl)){return true}}return false}function aU(dj){var dh,dg,di;for(dh=0;dh<ax.length;dh++){dg=L(ax[dh].toLowerCase());if(dj===dg){return true}if(dg.slice(0,1)==="."){if(dj===dg.slice(1)){return true}di=dj.length-dg.length;if((di>0)&&(dj.slice(di)===dg)){return true}}}return false}function cn(dg,di){dg=dg.replace("send_image=0","send_image=1");
-var dh=new Image(1,1);dh.onload=function(){E=0;if(typeof di==="function"){di({request:dg,trackerUrl:aD,success:true})}};dh.onerror=function(){if(typeof di==="function"){di({request:dg,trackerUrl:aD,success:false})}};dh.src=aD+(aD.indexOf("?")<0?"?":"&")+dg}function cB(dg){if(c7==="POST"){return true}return dg&&(dg.length>2000||dg.indexOf('{"requests"')===0)}function aJ(){return"object"===typeof h&&"function"===typeof h.sendBeacon&&"function"===typeof Blob}function a5(dk,dn,dm){var di=aJ();if(!di){return false}var dj={type:"application/x-www-form-urlencoded; charset=UTF-8"};var dp=false;var dh=aD;try{var dg=new Blob([dk],dj);if(dm&&!cB(dk)){dg=new Blob([],dj);dh=dh+(dh.indexOf("?")<0?"?":"&")+dk}dp=h.sendBeacon(dh,dg)}catch(dl){return false}if(dp&&typeof dn==="function"){dn({request:dk,trackerUrl:aD,success:true,isSendBeacon:true})}return dp}function c1(dh,di,dg){if(!J(dg)||null===dg){dg=true}if(m&&a5(dh,di,dg)){return}setTimeout(function(){if(m&&a5(dh,di,dg)){return}var dl;try{var dk=T.XMLHttpRequest?new T.XMLHttpRequest():T.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):null;
-dk.open("POST",aD,true);dk.onreadystatechange=function(){if(this.readyState===4&&!(this.status>=200&&this.status<300)){var dm=m&&a5(dh,di,dg);if(!dm&&dg){cn(dh,di)}else{if(typeof di==="function"){di({request:dh,trackerUrl:aD,success:false,xhr:this})}}}else{if(this.readyState===4&&(typeof di==="function")){di({request:dh,trackerUrl:aD,success:true,xhr:this})}}};dk.setRequestHeader("Content-Type",cu);dk.withCredentials=true;dk.send(dh)}catch(dj){dl=m&&a5(dh,di,dg);if(!dl&&dg){cn(dh,di)}else{if(typeof di==="function"){di({request:dh,trackerUrl:aD,success:false})}}}},50)}function cd(dh){var dg=new Date();var di=dg.getTime()+dh;if(!r||di>r){r=di}}function cl(dg){if(b9||!a4||!bz){return}b9=setTimeout(function dh(){b9=null;if(!bb){bb=(!G.hasFocus||G.hasFocus())}if(!bb){cl(a4);return}if(bO()){return}var di=new Date(),dj=a4-(di.getTime()-cV);dj=Math.min(a4,dj);cl(dj)},dg||a4)}function bH(){if(!b9){return}clearTimeout(b9);b9=null}function a9(){bb=true;cv=new Date().getTime()}function da(){var dg=new Date().getTime();
-return !cv||(dg-cv)>a4}function ay(){if(da()){bO()}bH()}function dd(){if(aM||!a4){return}aM=true;an(T,"focus",a9);an(T,"blur",ay);ab++;e.addPlugin("HeartBeat"+ab,{unload:function(){if(aM&&da()){bO()}}})}function cA(dk){var dh=new Date();var dg=dh.getTime();cV=dg;if(cz&&dg<cz){var di=cz-dg;setTimeout(dk,di);cd(di+50);cz+=50;return}if(cz===false){var dj=800;cz=dg+dj}dk()}function aN(){if(aC(cJ)){bz=false}else{if(aC(bc)){bz=true}}}function bC(dh,dg,di){aN();if(!bz){cI.push(dh);return}if(!cN&&dh){if(cy&&bz){dh+="&consent=1"}cA(function(){if(cT&&a5(dh,di,true)){cd(100);return}if(cB(dh)){c1(dh,di)}else{cn(dh,di)}cd(dg)})}if(!aM){dd()}}function ch(dg){if(cN){return false}return(dg&&dg.length)}function c0(dg,dk){if(!dk||dk>=dg.length){return[dg]}var dh=0;var di=dg.length;var dj=[];for(dh;dh<di;dh+=dk){dj.push(dg.slice(dh,dh+dk))}return dj}function dc(dh,dg){if(!ch(dh)){return}if(!bz){cI.push(dh);return}cA(function(){var dk=c0(dh,50);var di=0,dj;for(di;di<dk.length;di++){dj='{"requests":["?'+dk[di].join('","?')+'"]}';
-if(cT&&a5(dj,null,false)){cd(100)}else{c1(dj,null,false)}}cd(dg)})}function aS(dg){return bi+dg+"."+b3+"."+bm}function bV(di,dh,dg){db(di,"",-86400,dh,dg)}function b2(){if(bj){return"0"}if(!J(T.showModalDialog)&&J(h.cookieEnabled)){return h.cookieEnabled?"1":"0"}var dg=bi+"testcookie";db(dg,"1",undefined,bn,cU,bP);var dh=aC(dg)==="1"?"1":"0";bV(dg);return dh}function bg(){bm=b4((cU||cR)+(bn||"/")).slice(0,4)}function cF(){if(J(c5.res)){return c5}var dh,dj,dk={pdf:"application/pdf",qt:"video/quicktime",realp:"audio/x-pn-realaudio-plugin",wma:"application/x-mplayer2",dir:"application/x-director",fla:"application/x-shockwave-flash",java:"application/x-java-vm",gears:"application/x-googlegears",ag:"application/x-silverlight"};if(!((new RegExp("MSIE")).test(h.userAgent))){if(h.mimeTypes&&h.mimeTypes.length){for(dh in dk){if(Object.prototype.hasOwnProperty.call(dk,dh)){dj=h.mimeTypes[dk[dh]];c5[dh]=(dj&&dj.enabledPlugin)?"1":"0"}}}if(!((new RegExp("Edge[ /](\\d+[\\.\\d]+)")).test(h.userAgent))&&typeof navigator.javaEnabled!=="unknown"&&J(h.javaEnabled)&&h.javaEnabled()){c5.java="1"
-}if(A(T.GearsFactory)){c5.gears="1"}c5.cookie=b2()}var di=parseInt(X.width,10);var dg=parseInt(X.height,10);c5.res=parseInt(di,10)+"x"+parseInt(dg,10);return c5}function bU(){var dh=aS("cvar"),dg=aC(dh);if(dg&&dg.length){dg=T.JSON.parse(dg);if(W(dg)){return dg}}return{}}function cC(){if(aP===false){aP=bU()}}function cO(){var dg=cF();return b4((h.userAgent||"")+(h.platform||"")+T.JSON.stringify(dg)+(new Date()).getTime()+Math.random()).slice(0,16)}function az(){var dg=cF();return b4((h.userAgent||"")+(h.platform||"")+T.JSON.stringify(dg)).slice(0,6)}function be(){return Math.floor((new Date()).getTime()/1000)}function aI(){var dh=be();var di=az();var dg=String(dh)+di;return dg}function cZ(di){di=String(di);var dl=az();var dj=dl.length;var dk=di.substr(-1*dj,dj);var dh=parseInt(di.substr(0,di.length-dj),10);if(dh&&dk&&dk===dl){var dg=be();if(aY<=0){return true}if(dg>=dh&&dg<=(dh+aY)){return true}}return false}function de(dg){if(!cK){return""}var dk=f(dg,av);if(!dk){return""}dk=String(dk);
-var di=new RegExp("^[a-zA-Z0-9]+$");if(dk.length===32&&di.test(dk)){var dh=dk.substr(16,32);if(cZ(dh)){var dj=dk.substr(0,16);return dj}}return""}function cL(){if(!bL){bL=de(bK)}var di=new Date(),dg=Math.round(di.getTime()/1000),dh=aS("id"),dl=aC(dh),dk,dj;if(dl){dk=dl.split(".");dk.unshift("0");if(bL.length){dk[1]=bL}return dk}if(bL.length){dj=bL}else{if("0"===b2()){dj=""}else{dj=cO()}}dk=["1",dj,dg,0,dg,"",""];return dk}function aX(){var dn=cL(),dj=dn[0],dk=dn[1],dh=dn[2],dg=dn[3],dl=dn[4],di=dn[5];if(!J(dn[6])){dn[6]=""}var dm=dn[6];return{newVisitor:dj,uuid:dk,createTs:dh,visitCount:dg,currentVisitTs:dl,lastVisitTs:di,lastEcommerceOrderTs:dm}}function aG(){var dj=new Date(),dh=dj.getTime(),dk=aX().createTs;var dg=parseInt(dk,10);var di=(dg*1000)+cH-dh;return di}function aL(dg){if(!b3){return}var di=new Date(),dh=Math.round(di.getTime()/1000);if(!J(dg)){dg=aX()}var dj=dg.uuid+"."+dg.createTs+"."+dg.visitCount+"."+dh+"."+dg.lastVisitTs+"."+dg.lastEcommerceOrderTs;db(aS("id"),dj,aG(),bn,cU,bP)
-}function bJ(){var dg=aC(aS("ref"));if(dg.length){try{dg=T.JSON.parse(dg);if(W(dg)){return dg}}catch(dh){}}return["","",0,""]}function bu(dh){var dg="testvalue";db("test",dg,10000,null,dh);if(aC("test")===dg){bV("test",null,dh);return true}return false}function aE(){var dh=bj;bj=false;var dg,di;for(dg=0;dg<bs.length;dg++){di=aS(bs[dg]);if(di!==cJ&&di!==bc&&0!==aC(di)){bV(di,bn,cU)}}bj=dh}function b0(dg){b3=dg;aL()}function df(dk){if(!dk||!W(dk)){return}var dj=[];var di;for(di in dk){if(Object.prototype.hasOwnProperty.call(dk,di)){dj.push(di)}}var dl={};dj.sort();var dg=dj.length;var dh;for(dh=0;dh<dg;dh++){dl[dj[dh]]=dk[dj[dh]]}return dl}function ca(){db(aS("ses"),"1",cm,bn,cU,bP)}function bf(){var dj="";var dh="abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";var di=dh.length;var dg;for(dg=0;dg<6;dg++){dj+=dh.charAt(Math.floor(Math.random()*di))}return dj}function cq(di,dE,dF,dj){var dD,dh=new Date(),dr=Math.round(dh.getTime()/1000),dn,dC,dk=1024,dL,ds,dA=aP,dl=aS("ses"),dy=aS("ref"),dv=aS("cvar"),dw=aC(dl),dB=bJ(),dH=a3||bK,dp,dg;
-if(bj){aE()}if(cN){return""}var dx=aX();if(!J(dj)){dj=""}var du=G.characterSet||G.charset;if(!du||du.toLowerCase()==="utf-8"){du=null}dp=dB[0];dg=dB[1];dn=dB[2];dC=dB[3];if(!dw){var dG=cm/1000;if(!dx.lastVisitTs||(dr-dx.lastVisitTs)>dG){dx.visitCount++;dx.lastVisitTs=dx.currentVisitTs}if(!bt||!dp.length){for(dD in co){if(Object.prototype.hasOwnProperty.call(co,dD)){dp=f(dH,co[dD]);if(dp.length){break}}}for(dD in bD){if(Object.prototype.hasOwnProperty.call(bD,dD)){dg=f(dH,bD[dD]);if(dg.length){break}}}}dL=d(bl);ds=dC.length?d(dC):"";if(dL.length&&!aU(dL)&&(!bt||!ds.length||aU(ds))){dC=bl}if(dC.length||dp.length){dn=dr;dB=[dp,dg,dn,bZ(dC.slice(0,dk))];db(dy,T.JSON.stringify(dB),c2,bn,cU,bP)}}di+="&idsite="+b3+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+dh.getHours()+"&m="+dh.getMinutes()+"&s="+dh.getSeconds()+"&url="+t(bZ(dH))+(bl.length?"&urlref="+t(bZ(bl)):"")+((bw&&bw.length)?"&uid="+t(bw):"")+"&_id="+dx.uuid+"&_idts="+dx.createTs+"&_idvc="+dx.visitCount+"&_idn="+dx.newVisitor+(dp.length?"&_rcn="+t(dp):"")+(dg.length?"&_rck="+t(dg):"")+"&_refts="+dn+"&_viewts="+dx.lastVisitTs+(String(dx.lastEcommerceOrderTs).length?"&_ects="+dx.lastEcommerceOrderTs:"")+(String(dC).length?"&_ref="+t(bZ(dC.slice(0,dk))):"")+(du?"&cs="+t(du):"")+"&send_image=0";
-var dK=cF();for(dD in dK){if(Object.prototype.hasOwnProperty.call(dK,dD)){di+="&"+dD+"="+dK[dD]}}var dJ=[];if(dE){for(dD in dE){if(Object.prototype.hasOwnProperty.call(dE,dD)&&/^dimension\d+$/.test(dD)){var dm=dD.replace("dimension","");dJ.push(parseInt(dm,10));dJ.push(String(dm));di+="&"+dD+"="+t(dE[dD]);delete dE[dD]}}}if(dE&&B(dE)){dE=null}for(dD in bk){if(Object.prototype.hasOwnProperty.call(bk,dD)){var dt=(-1===M(dJ,dD));if(dt){di+="&dimension"+dD+"="+t(bk[dD])}}}if(dE){di+="&data="+t(T.JSON.stringify(dE))}else{if(ao){di+="&data="+t(T.JSON.stringify(ao))}}function dq(dM,dN){var dO=T.JSON.stringify(dM);if(dO.length>2){return"&"+dN+"="+t(dO)}return""}var dI=df(bT);var dz=df(cj);di+=dq(dI,"cvar");di+=dq(dz,"e_cvar");if(aP){di+=dq(aP,"_cvar");for(dD in dA){if(Object.prototype.hasOwnProperty.call(dA,dD)){if(aP[dD][0]===""||aP[dD][1]===""){delete aP[dD]}}}if(bN){db(dv,T.JSON.stringify(aP),cm,bn,cU,bP)}}if(a1){if(ck){di+="&gt_ms="+ck}else{if(i&&i.timing&&i.timing.requestStart&&i.timing.responseEnd){di+="&gt_ms="+(i.timing.responseEnd-i.timing.requestStart)
-}}}if(aK){di+="&pv_id="+aK}dx.lastEcommerceOrderTs=J(dj)&&String(dj).length?dj:dx.lastEcommerceOrderTs;aL(dx);ca();di+=ac(dF,{tracker:bF,request:di});if(cW.length){di+="&"+cW}if(A(b8)){di=b8(di)}return di}bO=function a6(){var dg=new Date();dg=dg.getTime();if(!cV){return false}if((cV+(1000*c4))<=dg){return false}if(cV+a4<=dg){bF.ping();return true}return false};function bo(dj,di,dp,dk,dg,ds){var dm="idgoal=0",dn,dh=new Date(),dq=[],dr,dl=String(dj).length;if(dl){dm+="&ec_id="+t(dj);dn=Math.round(dh.getTime()/1000)}dm+="&revenue="+di;if(String(dp).length){dm+="&ec_st="+dp}if(String(dk).length){dm+="&ec_tx="+dk}if(String(dg).length){dm+="&ec_sh="+dg}if(String(ds).length){dm+="&ec_dt="+ds}if(cX){for(dr in cX){if(Object.prototype.hasOwnProperty.call(cX,dr)){if(!J(cX[dr][1])){cX[dr][1]=""}if(!J(cX[dr][2])){cX[dr][2]=""}if(!J(cX[dr][3])||String(cX[dr][3]).length===0){cX[dr][3]=0}if(!J(cX[dr][4])||String(cX[dr][4]).length===0){cX[dr][4]=1}dq.push(cX[dr])}}dm+="&ec_items="+t(T.JSON.stringify(dq))
-}dm=cq(dm,ao,"ecommerce",dn);bC(dm,bG);if(dl){cX={}}}function bW(dg,dk,dj,di,dh,dl){if(String(dg).length&&J(dk)){bo(dg,dk,dj,di,dh,dl)}}function bq(dg){if(J(dg)){bo("",dg,"","","","")}}function bX(dh,dj,di){aK=bf();var dg=cq("action_name="+t(al(dh||bh)),dj,"log");bC(dg,bG,di)}function aZ(di,dh){var dj,dg="(^| )(piwik[_-]"+dh;if(di){for(dj=0;dj<di.length;dj++){dg+="|"+di[dj]}}dg+=")( |$)";return new RegExp(dg)}function aT(dg){return(aD&&dg&&0===String(dg).indexOf(aD))}function cs(dk,dg,dl,dh){if(aT(dg)){return 0}var dj=aZ(bI,"download"),di=aZ(a7,"link"),dm=new RegExp("\\.("+c3.join("|")+")([?&#]|$)","i");if(di.test(dk)){return"link"}if(dh||dj.test(dk)||dm.test(dg)){return"download"}if(dl){return 0}return"link"}function au(dh){var dg;dg=dh.parentNode;while(dg!==null&&J(dg)){if(ae.isLinkElement(dh)){break}dh=dg;dg=dh.parentNode}return dh}function c9(dl){dl=au(dl);if(!ae.hasNodeAttribute(dl,"href")){return}if(!J(dl.href)){return}var dk=ae.getAttributeValueFromNode(dl,"href");var dh=dl.pathname||ci(dl.href);
-var dm=dl.hostname||d(dl.href);var dn=dm.toLowerCase();var di=dl.href.replace(dm,dn);var dj=new RegExp("^(javascript|vbscript|jscript|mocha|livescript|ecmascript|mailto|tel):","i");if(!dj.test(di)){var dg=cs(dl.className,di,ar(dn,dh),ae.hasNodeAttribute(dl,"download"));if(dg){return{type:dg,href:di}}}}function aO(dg,dh,di,dj){var dk=v.buildInteractionRequestParams(dg,dh,di,dj);if(!dk){return}return cq(dk,null,"contentInteraction")}function ba(dg,dh){if(!dg||!dh){return false}var di=v.findTargetNode(dg);if(v.shouldIgnoreInteraction(di)){return false}di=v.findTargetNodeNoDefault(dg);if(di&&!V(di,dh)){return false}return true}function cr(di,dh,dk){if(!di){return}var dg=v.findParentContentNode(di);if(!dg){return}if(!ba(dg,di)){return}var dj=v.buildContentBlock(dg);if(!dj){return}if(!dj.target&&dk){dj.target=dk}return v.buildInteractionRequestParams(dh,dj.name,dj.piece,dj.target)}function aV(dh){if(!b7||!b7.length){return false}var dg,di;for(dg=0;dg<b7.length;dg++){di=b7[dg];if(di&&di.name===dh.name&&di.piece===dh.piece&&di.target===dh.target){return true
-}}return false}function aW(dg){return function(dk){if(!dg){return}var di=v.findParentContentNode(dg);var dh;if(dk){dh=dk.target||dk.srcElement}if(!dh){dh=dg}if(!ba(di,dh)){return}if(!di){return false}var dl=v.findTargetNode(di);if(!dl||v.shouldIgnoreInteraction(dl)){return false}var dj=c9(dl);if(c6&&dj&&dj.type){return dj.type}return bF.trackContentInteractionNode(dh,"click")}}function bY(di){if(!di||!di.length){return}var dg,dh;for(dg=0;dg<di.length;dg++){dh=v.findTargetNode(di[dg]);if(dh&&!dh.contentInteractionTrackingSetupDone){dh.contentInteractionTrackingSetupDone=true;an(dh,"click",aW(dh))}}}function bv(di,dj){if(!di||!di.length){return[]}var dg,dh;for(dg=0;dg<di.length;dg++){if(aV(di[dg])){di.splice(dg,1);dg--}else{b7.push(di[dg])}}if(!di||!di.length){return[]}bY(dj);var dk=[];for(dg=0;dg<di.length;dg++){dh=cq(v.buildImpressionRequestParams(di[dg].name,di[dg].piece,di[dg].target),undefined,"contentImpressions");if(dh){dk.push(dh)}}return dk}function cx(dh){var dg=v.collectContent(dh);
-return bv(dg,dh)}function a8(dh){if(!dh||!dh.length){return[]}var dg;for(dg=0;dg<dh.length;dg++){if(!v.isNodeVisible(dh[dg])){dh.splice(dg,1);dg--}}if(!dh||!dh.length){return[]}return cx(dh)}function aF(di,dg,dh){var dj=v.buildImpressionRequestParams(di,dg,dh);return cq(dj,null,"contentImpression")}function c8(dj,dh){if(!dj){return}var dg=v.findParentContentNode(dj);var di=v.buildContentBlock(dg);if(!di){return}if(!dh){dh="Unknown"}return aO(dh,di.name,di.piece,di.target)}function cM(dh,dj,dg,di){return"e_c="+t(dh)+"&e_a="+t(dj)+(J(dg)?"&e_n="+t(dg):"")+(J(di)?"&e_v="+t(di):"")}function at(di,dk,dg,dj,dm,dl){if(a(String(di)).length===0||a(String(dk)).length===0){ak("Error while logging event: Parameters `category` and `action` must not be empty or filled with whitespaces");return false}var dh=cq(cM(di,dk,dg,dj),dm,"event");bC(dh,bG,dl)}function b5(dg,dj,dh,dk){var di=cq("search="+t(dg)+(dj?"&search_cat="+t(dj):"")+(J(dh)?"&search_count="+dh:""),dk,"sitesearch");bC(di,bG)}function cQ(dg,dk,dj,di){var dh=cq("idgoal="+dg+(dk?"&revenue="+dk:""),dj,"goal");
-bC(dh,bG,di)}function cY(dj,dg,dn,dm,di){var dl=dg+"="+t(bZ(dj));var dh=cr(di,"click",dj);if(dh){dl+="&"+dh}var dk=cq(dl,dn,"link");bC(dk,bG,dm)}function bR(dh,dg){if(dh!==""){return dh+dg.charAt(0).toUpperCase()+dg.slice(1)}return dg}function ce(dl){var dk,dg,dj=["","webkit","ms","moz"],di;if(!bd){for(dg=0;dg<dj.length;dg++){di=dj[dg];if(Object.prototype.hasOwnProperty.call(G,bR(di,"hidden"))){if(G[bR(di,"visibilityState")]==="prerender"){dk=true}break}}}if(dk){an(G,di+"visibilitychange",function dh(){G.removeEventListener(di+"visibilitychange",dh,false);dl()});return}dl()}function bp(){var dh=aX().uuid;var dg=aI();return dh+dg}function cg(dg){if(!dg){return}if(!ae.hasNodeAttribute(dg,"href")){return}var dh=ae.getAttributeValueFromNode(dg,"href");if(!dh||aT(dh)){return}dh=k(dh,av);var di=bp();dh=F(dh,av,di);ae.setAnyAttribute(dg,"href",dh)}function aA(dj){var dk=ae.getAttributeValueFromNode(dj,"href");if(!dk){return false}dk=String(dk);var dh=dk.indexOf("//")===0||dk.indexOf("http://")===0||dk.indexOf("https://")===0;
-if(!dh){return false}var dg=dj.pathname||ci(dj.href);var di=(dj.hostname||d(dj.href)).toLowerCase();if(ar(di,dg)){if(!cE(cR,L(di))){return true}return false}return false}function cD(dg){var dh=c9(dg);if(dh&&dh.type){dh.href=p(dh.href);cY(dh.href,dh.type,undefined,null,dg);return}if(cK){dg=au(dg);if(aA(dg)){cg(dg)}}}function ct(){return G.all&&!G.addEventListener}function cS(dg){var di=dg.which;var dh=(typeof dg.button);if(!di&&dh!=="undefined"){if(ct()){if(dg.button&1){di=1}else{if(dg.button&2){di=3}else{if(dg.button&4){di=2}}}}else{if(dg.button===0||dg.button==="0"){di=1}else{if(dg.button&1){di=2}else{if(dg.button&2){di=3}}}}}return di}function bQ(dg){switch(cS(dg)){case 1:return"left";case 2:return"middle";case 3:return"right"}}function a0(dg){return dg.target||dg.srcElement}function aB(dg){return function(dj){dj=dj||T.event;var di=bQ(dj);var dk=a0(dj);if(dj.type==="click"){var dh=false;if(dg&&di==="middle"){dh=true}if(dk&&!dh){cD(dk)}}else{if(dj.type==="mousedown"){if(di==="middle"&&dk){aQ=di;
-by=dk}else{aQ=by=null}}else{if(dj.type==="mouseup"){if(di===aQ&&dk===by){cD(dk)}aQ=by=null}else{if(dj.type==="contextmenu"){cD(dk)}}}}}}function aq(di,dh){var dg=typeof dh;if(dg==="undefined"){dh=true}an(di,"click",aB(dh),false);if(dh){an(di,"mouseup",aB(dh),false);an(di,"mousedown",aB(dh),false);an(di,"contextmenu",aB(dh),false)}}function bB(di,dk){ap=true;var dj,dh=aZ(bx,"ignore"),dl=G.links,dg=null,dm=null;if(dl){for(dj=0;dj<dl.length;dj++){dg=dl[dj];if(!dh.test(dg.className)){dm=typeof dg.piwikTrackers;if("undefined"===dm){dg.piwikTrackers=[]}if(-1===M(dg.piwikTrackers,dk)){dg.piwikTrackers.push(dk);aq(dg,di)}}}}}function aR(dh,dk,dl){if(cc){return true}cc=true;var dm=false;var dj,di;function dg(){dm=true}n(function(){function dn(dq){setTimeout(function(){if(!cc){return}dm=false;dl.trackVisibleContentImpressions();dn(dq)},dq)}function dp(dq){setTimeout(function(){if(!cc){return}if(dm){dm=false;dl.trackVisibleContentImpressions()}dp(dq)},dq)}if(dh){dj=["scroll","resize"];for(di=0;di<dj.length;
-di++){if(G.addEventListener){G.addEventListener(dj[di],dg,false)}else{T.attachEvent("on"+dj[di],dg)}}dp(100)}if(dk&&dk>0){dk=parseInt(dk,10);dn(dk)}})}var bA={enabled:true,requests:[],timeout:null,interval:2500,sendRequests:function(){var dg=this.requests;this.requests=[];if(dg.length===1){bC(dg[0],bG)}else{dc(dg,bG)}},push:function(dg){if(!dg){return}if(m||!this.enabled){bC(dg,bG);return}bA.requests.push(dg);if(this.timeout){clearTimeout(this.timeout);this.timeout=null}this.timeout=setTimeout(function(){bA.timeout=null;bA.sendRequests()},bA.interval);var dh="RequestQueue"+aw;if(!Object.prototype.hasOwnProperty.call(b,dh)){b[dh]={unload:function(){if(bA.timeout){clearTimeout(bA.timeout)}bA.sendRequests()}}}}};bg();aL();this.hasConsent=function(){return bz};this.getVisitorId=function(){return aX().uuid};this.getVisitorInfo=function(){return cL()};this.getAttributionInfo=function(){return bJ()};this.getAttributionCampaignName=function(){return bJ()[0]};this.getAttributionCampaignKeyword=function(){return bJ()[1]
-};this.getAttributionReferrerTimestamp=function(){return bJ()[2]};this.getAttributionReferrerUrl=function(){return bJ()[3]};this.setTrackerUrl=function(dg){aD=dg};this.getTrackerUrl=function(){return aD};this.getPiwikUrl=function(){return O(this.getTrackerUrl(),bE)};this.addTracker=function(dg,di){if(!J(dg)||null===dg){dg=this.getTrackerUrl()}var dh=new Q(dg,di);I.push(dh);e.trigger("TrackerAdded",[this]);return dh};this.getSiteId=function(){return b3};this.setSiteId=function(dg){b0(dg)};this.resetUserId=function(){bw=""};this.setUserId=function(dg){if(Y(dg)){bw=dg}};this.getUserId=function(){return bw};this.setCustomData=function(dg,dh){if(W(dg)){ao=dg}else{if(!ao){ao={}}ao[dg]=dh}};this.getCustomData=function(){return ao};this.setCustomRequestProcessing=function(dg){b8=dg};this.appendToTrackingUrl=function(dg){cW=dg};this.getRequest=function(dg){return cq(dg)};this.addPlugin=function(dg,dh){b[dg]=dh};this.setCustomDimension=function(dg,dh){dg=parseInt(dg,10);if(dg>0){if(!J(dh)){dh=""}if(!w(dh)){dh=String(dh)
-}bk[dg]=dh}};this.getCustomDimension=function(dg){dg=parseInt(dg,10);if(dg>0&&Object.prototype.hasOwnProperty.call(bk,dg)){return bk[dg]}};this.deleteCustomDimension=function(dg){dg=parseInt(dg,10);if(dg>0){delete bk[dg]}};this.setCustomVariable=function(dh,dg,dk,di){var dj;if(!J(di)){di="visit"}if(!J(dg)){return}if(!J(dk)){dk=""}if(dh>0){dg=!w(dg)?String(dg):dg;dk=!w(dk)?String(dk):dk;dj=[dg.slice(0,br),dk.slice(0,br)];if(di==="visit"||di===2){cC();aP[dh]=dj}else{if(di==="page"||di===3){bT[dh]=dj}else{if(di==="event"){cj[dh]=dj}}}}};this.getCustomVariable=function(dh,di){var dg;if(!J(di)){di="visit"}if(di==="page"||di===3){dg=bT[dh]}else{if(di==="event"){dg=cj[dh]}else{if(di==="visit"||di===2){cC();dg=aP[dh]}}}if(!J(dg)||(dg&&dg[0]==="")){return false}return dg};this.deleteCustomVariable=function(dg,dh){if(this.getCustomVariable(dg,dh)){this.setCustomVariable(dg,"","",dh)}};this.deleteCustomVariables=function(dg){if(dg==="page"||dg===3){bT={}}else{if(dg==="event"){cj={}}else{if(dg==="visit"||dg===2){aP={}
-}}}};this.storeCustomVariablesInCookie=function(){bN=true};this.setLinkTrackingTimer=function(dg){bG=dg};this.getLinkTrackingTimer=function(){return bG};this.setDownloadExtensions=function(dg){if(w(dg)){dg=dg.split("|")}c3=dg};this.addDownloadExtensions=function(dh){var dg;if(w(dh)){dh=dh.split("|")}for(dg=0;dg<dh.length;dg++){c3.push(dh[dg])}};this.removeDownloadExtensions=function(di){var dh,dg=[];if(w(di)){di=di.split("|")}for(dh=0;dh<c3.length;dh++){if(M(di,c3[dh])===-1){dg.push(c3[dh])}}c3=dg};this.setDomains=function(dg){ax=w(dg)?[dg]:dg;var dk=false,di=0,dh;for(di;di<ax.length;di++){dh=String(ax[di]);if(cE(cR,L(dh))){dk=true;break}var dj=ci(dh);if(dj&&dj!=="/"&&dj!=="/*"){dk=true;break}}if(!dk){ax.push(cR)}};this.enableCrossDomainLinking=function(){cK=true};this.disableCrossDomainLinking=function(){cK=false};this.isCrossDomainLinkingEnabled=function(){return cK};this.setCrossDomainLinkingTimeout=function(dg){aY=dg};this.getCrossDomainLinkingUrlParameter=function(){return t(av)+"="+t(bp())
-};this.setIgnoreClasses=function(dg){bx=w(dg)?[dg]:dg};this.setRequestMethod=function(dg){c7=dg||cf};this.setRequestContentType=function(dg){cu=dg||aH};this.setReferrerUrl=function(dg){bl=dg};this.setCustomUrl=function(dg){a3=bS(bK,dg)};this.getCurrentUrl=function(){return a3||bK};this.setDocumentTitle=function(dg){bh=dg};this.setAPIUrl=function(dg){bE=dg};this.setDownloadClasses=function(dg){bI=w(dg)?[dg]:dg};this.setLinkClasses=function(dg){a7=w(dg)?[dg]:dg};this.setCampaignNameKey=function(dg){co=w(dg)?[dg]:dg};this.setCampaignKeywordKey=function(dg){bD=w(dg)?[dg]:dg};this.discardHashTag=function(dg){bM=dg};this.setCookieNamePrefix=function(dg){bi=dg;if(aP){aP=bU()}};this.setCookieDomain=function(dg){var dh=L(dg);if(bu(dh)){cU=dh;bg()}};this.getCookieDomain=function(){return cU};this.hasCookies=function(){return"1"===b2()};this.setSessionCookie=function(di,dh,dg){if(!di){throw new Error("Missing cookie name")}if(!J(dg)){dg=cm}bs.push(di);db(aS(di),dh,dg,bn,cU)};this.getCookie=function(dh){var dg=aC(aS(dh));
-if(dg===0){return null}return dg};this.setCookiePath=function(dg){bn=dg;bg()};this.getCookiePath=function(dg){return bn};this.setVisitorCookieTimeout=function(dg){cH=dg*1000};this.setSessionCookieTimeout=function(dg){cm=dg*1000};this.getSessionCookieTimeout=function(){return cm};this.setReferralCookieTimeout=function(dg){c2=dg*1000};this.setConversionAttributionFirstReferrer=function(dg){bt=dg};this.setSecureCookie=function(dg){bP=dg};this.disableCookies=function(){bj=true;c5.cookie="0";if(b3){aE()}};this.deleteCookies=function(){aE()};this.setDoNotTrack=function(dh){var dg=h.doNotTrack||h.msDoNotTrack;cN=dh&&(dg==="yes"||dg==="1");if(cN){this.disableCookies()}};this.alwaysUseSendBeacon=function(){cT=true};this.disableAlwaysUseSendBeacon=function(){cT=false};this.addListener=function(dh,dg){aq(dh,dg)};this.enableLinkTracking=function(dh){c6=true;var dg=this;ce(function(){q(function(){bB(dh,dg)})})};this.enableJSErrorTracking=function(){if(cP){return}cP=true;var dg=T.onerror;T.onerror=function(dl,dj,di,dk,dh){ce(function(){var dm="JavaScript Errors";
-var dn=dj+":"+di;if(dk){dn+=":"+dk}at(dm,dn,dl)});if(dg){return dg(dl,dj,di,dk,dh)}return false}};this.disablePerformanceTracking=function(){a1=false};this.setGenerationTimeMs=function(dg){ck=parseInt(dg,10)};this.setVisitStandardLength=function(dg){dg=Math.max(dg,5);c4=dg};this.enableHeartBeatTimer=function(dg){dg=Math.max(dg,5);a4=(dg||15)*1000;if(cV!==null){dd()}};this.disableHeartBeatTimer=function(){bH();if(a4||aM){if(T.removeEventListener){T.removeEventListener("focus",a9);T.removeEventListener("blur",ay)}else{if(T.detachEvent){T.detachEvent("onfocus",a9);T.detachEvent("onblur",ay)}}}a4=null;aM=false};this.killFrame=function(){if(T.location!==T.top.location){T.top.location=T.location}};this.redirectFile=function(dg){if(T.location.protocol==="file:"){T.location=dg}};this.setCountPreRendered=function(dg){bd=dg};this.trackGoal=function(dg,dj,di,dh){ce(function(){cQ(dg,dj,di,dh)})};this.trackLink=function(dh,dg,dj,di){ce(function(){cY(dh,dg,dj,di)})};this.getNumTrackedPageViews=function(){return cp
-};this.trackPageView=function(dg,di,dh){b7=[];cI=[];if(N(b3)){ce(function(){Z(aD,bE,b3)})}else{ce(function(){cp++;bX(dg,di,dh)})}};this.trackAllContentImpressions=function(){if(N(b3)){return}ce(function(){q(function(){var dg=v.findContentNodes();var dh=cx(dg);dc(dh,bG)})})};this.trackVisibleContentImpressions=function(dg,dh){if(N(b3)){return}if(!J(dg)){dg=true}if(!J(dh)){dh=750}aR(dg,dh,this);ce(function(){n(function(){var di=v.findContentNodes();var dj=a8(di);dc(dj,bG)})})};this.trackContentImpression=function(di,dg,dh){if(N(b3)){return}di=a(di);dg=a(dg);dh=a(dh);if(!di){return}dg=dg||"Unknown";ce(function(){var dj=aF(di,dg,dh);bC(dj,bG)})};this.trackContentImpressionsWithinNode=function(dg){if(N(b3)||!dg){return}ce(function(){if(cc){n(function(){var dh=v.findContentNodesWithinNode(dg);var di=a8(dh);dc(di,bG)})}else{q(function(){var dh=v.findContentNodesWithinNode(dg);var di=cx(dh);dc(di,bG)})}})};this.trackContentInteraction=function(di,dj,dg,dh){if(N(b3)){return}di=a(di);dj=a(dj);dg=a(dg);
-dh=a(dh);if(!di||!dj){return}dg=dg||"Unknown";ce(function(){var dk=aO(di,dj,dg,dh);if(dk){bC(dk,bG)}})};this.trackContentInteractionNode=function(di,dh){if(N(b3)||!di){return}var dg=null;ce(function(){dg=c8(di,dh);if(dg){bC(dg,bG)}});return dg};this.logAllContentBlocksOnPage=function(){var di=v.findContentNodes();var dg=v.collectContent(di);var dh=typeof console;if(dh!=="undefined"&&console&&console.log){console.log(dg)}};this.trackEvent=function(dh,dj,dg,di,dl,dk){ce(function(){at(dh,dj,dg,di,dl,dk)})};this.trackSiteSearch=function(dg,di,dh,dj){b7=[];ce(function(){b5(dg,di,dh,dj)})};this.setEcommerceView=function(dj,dg,di,dh){if(Y(di)){di=String(di)}if(!J(di)||di===null||di===false||!di.length){di=""}else{if(di instanceof Array){di=T.JSON.stringify(di)}}bT[5]=["_pkc",di];if(J(dh)&&dh!==null&&dh!==false&&String(dh).length){bT[2]=["_pkp",dh]}if(!Y(dj)&&!Y(dg)){return}if(Y(dj)){bT[3]=["_pks",dj]}if(!Y(dg)){dg=""}bT[4]=["_pkn",dg]};this.getEcommerceItems=function(){return JSON.parse(JSON.stringify(cX))
-};this.addEcommerceItem=function(dk,dg,di,dh,dj){if(Y(dk)){cX[dk]=[String(dk),dg,di,dh,dj]}};this.removeEcommerceItem=function(dg){if(Y(dg)){dg=String(dg);delete cX[dg]}};this.clearEcommerceCart=function(){cX={}};this.trackEcommerceOrder=function(dg,dk,dj,di,dh,dl){bW(dg,dk,dj,di,dh,dl)};this.trackEcommerceCartUpdate=function(dg){bq(dg)};this.trackRequest=function(dh,dj,di,dg){ce(function(){var dk=cq(dh,dj,dg);bC(dk,bG,di)})};this.ping=function(){this.trackRequest("ping=1",null,null,"ping")};this.disableQueueRequest=function(){bA.enabled=false};this.setRequestQueueInterval=function(dg){if(dg<1000){throw new Error("Request queue interval needs to be at least 1000ms")}bA.interval=dg};this.queueRequest=function(dg){ce(function(){var dh=cq(dg);bA.push(dh)})};this.isConsentRequired=function(){return cy};this.getRememberedConsent=function(){var dg=aC(bc);if(aC(cJ)){if(dg){bV(bc,bn,cU)}return null}if(!dg||dg===0){return null}return dg};this.hasRememberedConsent=function(){return !!this.getRememberedConsent()
-};this.requireConsent=function(){cy=true;bz=this.hasRememberedConsent();x++;b["CoreConsent"+x]={unload:function(){if(!bz){aE()}}}};this.setConsentGiven=function(){bz=true;bV(cJ,bn,cU);var dh,dg;for(dh=0;dh<cI.length;dh++){dg=typeof cI[dh];if(dg==="string"){bC(cI[dh],bG)}else{if(dg==="object"){dc(cI[dh],bG)}}}cI=[]};this.rememberConsentGiven=function(dh){if(dh){dh=dh*60*60*1000}else{dh=30*365*24*60*60*1000}this.setConsentGiven();var dg=new Date().getTime();db(bc,dg,dh,bn,cU,bP)};this.forgetConsentGiven=function(){var dg=30*365*24*60*60*1000;bV(bc,bn,cU);db(cJ,new Date().getTime(),dg,bn,cU,bP);this.requireConsent()};this.isUserOptedOut=function(){return !bz};this.optUserOut=this.forgetConsentGiven;this.forgetUserOptOut=this.rememberConsentGiven;e.trigger("TrackerSetup",[this])}function H(){return{push:af}}function c(au,at){var av={};var aq,ar;for(aq=0;aq<at.length;aq++){var ao=at[aq];av[ao]=1;for(ar=0;ar<au.length;ar++){if(au[ar]&&au[ar][0]){var ap=au[ar][0];if(ao===ap){af(au[ar]);delete au[ar];
-if(av[ap]>1&&ap!=="addTracker"){ak("The method "+ap+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Piwik trackers documentation: https://developer.piwik.org/guides/tracking-javascript-guide#multiple-piwik-trackers')}av[ap]++}}}}return au}var C=["addTracker","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setSiteId","alwaysUseSendBeacon","enableLinkTracking","requireConsent","setConsentGiven"];function ad(ao,aq){var ap=new Q(ao,aq);I.push(ap);_paq=c(_paq,C);for(E=0;E<_paq.length;E++){if(_paq[E]){af(_paq[E])}}_paq=new H();e.trigger("TrackerAdded",[ap]);return ap}an(T,"beforeunload",ai,false);an(T,"message",function(au){if(!au||!au.origin){return}var aw,ar,ap;var ax=d(au.origin);var at=e.getAsyncTrackers();for(ar=0;
-ar<at.length;ar++){ap=d(at[ar].getPiwikUrl());if(ap===ax){aw=at[ar];break}}if(!aw){return}var aq=null;try{aq=JSON.parse(au.data)}catch(av){return}if(!aq){return}function ao(aA){var aC=G.getElementsByTagName("iframe");for(ar=0;ar<aC.length;ar++){var aB=aC[ar];var ay=d(aB.src);if(aB.contentWindow&&J(aB.contentWindow.postMessage)&&ay===ax){var az=JSON.stringify(aA);aB.contentWindow.postMessage(az,"*")}}}if(J(aq.maq_initial_value)){ao({maq_opted_in:aq.maq_initial_value&&aw.hasConsent(),maq_url:aw.getPiwikUrl(),maq_optout_by_default:aw.isConsentRequired()})}else{if(J(aq.maq_opted_in)){at=e.getAsyncTrackers();for(ar=0;ar<at.length;ar++){aw=at[ar];if(aq.maq_opted_in){aw.rememberConsentGiven()}else{aw.forgetConsentGiven()}}ao({maq_confirm_opted_in:aw.hasConsent(),maq_url:aw.getPiwikUrl(),maq_optout_by_default:aw.isConsentRequired()})}}},false);Date.prototype.getTimeAlias=Date.prototype.getTime;e={initialized:false,JSON:T.JSON,DOM:{addEventListener:function(ar,aq,ap,ao){var at=typeof ao;if(at==="undefined"){ao=false
-}an(ar,aq,ap,ao)},onLoad:n,onReady:q,isNodeVisible:j,isOrWasNodeVisible:v.isNodeVisible},on:function(ap,ao){if(!y[ap]){y[ap]=[]}y[ap].push(ao)},off:function(aq,ap){if(!y[aq]){return}var ao=0;for(ao;ao<y[aq].length;ao++){if(y[aq][ao]===ap){y[aq].splice(ao,1)}}},trigger:function(aq,ar,ap){if(!y[aq]){return}var ao=0;for(ao;ao<y[aq].length;ao++){y[aq][ao].apply(ap||T,ar)}},addPlugin:function(ao,ap){b[ao]=ap},getTracker:function(ao,ap){if(!J(ap)){ap=this.getAsyncTracker().getSiteId()}if(!J(ao)){ao=this.getAsyncTracker().getTrackerUrl()}return new Q(ao,ap)},getAsyncTrackers:function(){return I},addTracker:function(ao,aq){var ap;if(!I.length){ap=ad(ao,aq)}else{ap=I[0].addTracker(ao,aq)}return ap},getAsyncTracker:function(ap,at){var ar;if(I&&I.length&&I[0]){ar=I[0]}else{return ad(ap,at)}if(!at&&!ap){return ar}if((!J(at)||null===at)&&ar){at=ar.getSiteId()}if((!J(ap)||null===ap)&&ar){ap=ar.getTrackerUrl()}var aq,ao=0;for(ao;ao<I.length;ao++){aq=I[ao];if(aq&&String(aq.getSiteId())===String(at)&&aq.getTrackerUrl()===ap){return aq
-}}},retryMissedPluginCalls:function(){var ap=ah;ah=[];var ao=0;for(ao;ao<ap.length;ao++){af(ap[ao])}}};if(typeof define==="function"&&define.amd){define("piwik",[],function(){return e});define("matomo",[],function(){return e})}return e}())}
+}}T.name=ax+"###"+au+"###"+ao+"###"+ar}var aw=T.name.split("###");return aw.length===4&&aw[0]===ax}function Z(ap,aw,ar){var av=T.name.split("###"),au=av[1],ao=av[2],at=av[3],aq=O(ap,aw);o(aq+"plugins/Overlay/client/client.js?v=1",function(){Piwik_Overlay_Client.initialize(aq,ar,au,ao,at)})}function u(){var aq;try{aq=T.frameElement}catch(ap){return true}if(J(aq)){return(aq&&String(aq.nodeName).toLowerCase()==="iframe")?true:false}try{return T.self!==T.top}catch(ao){return true}}function Q(ce,b9){var bI=this,bd="mtm_consent",cL="mtm_consent_removed",b4=aa(G.domain,T.location.href,K()),cT=L(b4[0]),bN=p(b4[1]),bn=p(b4[2]),cR=false,ci="GET",c9=ci,aI="application/x-www-form-urlencoded; charset=UTF-8",cw=aI,aE=ce||"",bH="",cY="",b6=b9||"",by="",bO="",a4,bj="",c5=["7z","aac","apk","arc","arj","asf","asx","avi","azw3","bin","csv","deb","dmg","doc","docx","epub","exe","flv","gif","gz","gzip","hqx","ibooks","jar","jpg","jpeg","js","mobi","mp2","mp3","mp4","mpg","mpeg","mov","movie","msi","msp","odb","odf","odg","ods","odt","ogg","ogv","pdf","phps","png","ppt","pptx","qt","qtm","ra","ram","rar","rpm","sea","sit","tar","tbz","tbz2","bz","bz2","tgz","torrent","txt","wav","wma","wmv","wpd","xls","xlsx","xml","z","zip"],ax=[cT],bz=[],bL=[],a8=[],bJ=500,cV=true,cI,a5,bR,c6=1800,bP,ao,cq=["pk_campaign","piwik_campaign","utm_campaign","utm_source","utm_medium"],bG=["pk_kwd","piwik_kwd","utm_term"],bk="_pk_",av="pk_vid",aZ=180,cW,bp,bS=false,bl=false,cP,be,bv,cJ=33955200000,co=1800000,c4=15768000000,a2=true,bE=false,bh=false,bQ=false,aQ=false,cb,bW={},cm={},bm={},bt=200,cZ={},c7={},ca=[],cf=false,cB=false,ap=false,c8=false,cM=false,aN=false,bc=u(),cx=null,cX=null,cc,aR,bA,b7=am,bo,aL,cr=0,bu=["id","ses","cvar","ref"],cA=false,bB=null,cK=[],aw=U++;
+try{bj=G.title}catch(cy){bj=""}function dd(dp,dm,dl,dn,dk,dj){if(bl){return}var di;if(dl){di=new Date();di.setTime(di.getTime()+dl)}G.cookie=dp+"="+t(dm)+(dl?";expires="+di.toGMTString():"")+";path="+(dn||"/")+(dk?";domain="+dk:"")+(dj?";secure":"")+";SameSite=Lax"}function aD(dk){if(bl){return 0}var di=new RegExp("(^|;)[ ]*"+dk+"=([^;]*)"),dj=di.exec(G.cookie);return dj?S(dj[2]):0}bB=!aD(cL);function b2(di){var dj;di=k(di,av);if(bP){dj=new RegExp("#.*");return di.replace(dj,"")}return di}function bV(dk,di){var dl=s(di),dj;if(dl){return di}if(di.slice(0,1)==="/"){return s(dk)+"://"+d(dk)+di}dk=b2(dk);dj=dk.indexOf("?");if(dj>=0){dk=dk.slice(0,dj)}dj=dk.lastIndexOf("/");if(dj!==dk.length-1){dk=dk.slice(0,dj+1)}return dk+di}function cG(dk,di){var dj;dk=String(dk).toLowerCase();di=String(di).toLowerCase();if(dk===di){return true}if(di.slice(0,1)==="."){if(dk===di.slice(1)){return true}dj=dk.length-di.length;if((dj>0)&&(dk.slice(dj)===di)){return true}}return false}function cl(di){var dj=document.createElement("a");
+if(di.indexOf("//")!==0&&di.indexOf("http")!==0){if(di.indexOf("*")===0){di=di.substr(1)}if(di.indexOf(".")===0){di=di.substr(1)}di="http://"+di}dj.href=v.toAbsoluteUrl(di);if(dj.pathname){return dj.pathname}return""}function a3(dj,di){if(!aj(di,"/")){di="/"+di}if(!aj(dj,"/")){dj="/"+dj}var dk=(di==="/"||di==="/*");if(dk){return true}if(dj===di){return true}di=String(di).toLowerCase();dj=String(dj).toLowerCase();if(R(di,"*")){di=di.slice(0,-1);dk=(!di||di==="/");if(dk){return true}if(dj===di){return true}return dj.indexOf(di)===0}if(!R(dj,"/")){dj+="/"}if(!R(di,"/")){di+="/"}return dj.indexOf(di)===0}function ar(dm,dp){var dj,di,dk,dl,dn;for(dj=0;dj<ax.length;dj++){dl=L(ax[dj]);dn=cl(ax[dj]);if(cG(dm,dl)&&a3(dp,dn)){return true}}return false}function aV(dl){var dj,di,dk;for(dj=0;dj<ax.length;dj++){di=L(ax[dj].toLowerCase());if(dl===di){return true}if(di.slice(0,1)==="."){if(dl===di.slice(1)){return true}dk=dl.length-di.length;if((dk>0)&&(dl.slice(dk)===di)){return true}}}return false}function cp(di,dk){di=di.replace("send_image=0","send_image=1");
+var dj=new Image(1,1);dj.onload=function(){E=0;if(typeof dk==="function"){dk({request:di,trackerUrl:aE,success:true})}};dj.onerror=function(){if(typeof dk==="function"){dk({request:di,trackerUrl:aE,success:false})}};dj.src=aE+(aE.indexOf("?")<0?"?":"&")+di}function cD(di){if(c9==="POST"){return true}return di&&(di.length>2000||di.indexOf('{"requests"')===0)}function aK(){return"object"===typeof h&&"function"===typeof h.sendBeacon&&"function"===typeof Blob}function a6(dm,dq,dp){var dk=aK();if(!dk){return false}var dl={type:"application/x-www-form-urlencoded; charset=UTF-8"};var dr=false;var dj=aE;try{var di=new Blob([dm],dl);if(dp&&!cD(dm)){di=new Blob([],dl);dj=dj+(dj.indexOf("?")<0?"?":"&")+dm}dr=h.sendBeacon(dj,di)}catch(dn){return false}if(dr&&typeof dq==="function"){dq({request:dm,trackerUrl:aE,success:true,isSendBeacon:true})}return dr}function c3(dj,dk,di){if(!J(di)||null===di){di=true}if(m&&a6(dj,dk,di)){return}setTimeout(function(){if(m&&a6(dj,dk,di)){return}var dn;try{var dm=T.XMLHttpRequest?new T.XMLHttpRequest():T.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):null;
+dm.open("POST",aE,true);dm.onreadystatechange=function(){if(this.readyState===4&&!(this.status>=200&&this.status<300)){var dp=m&&a6(dj,dk,di);if(!dp&&di){cp(dj,dk)}else{if(typeof dk==="function"){dk({request:dj,trackerUrl:aE,success:false,xhr:this})}}}else{if(this.readyState===4&&(typeof dk==="function")){dk({request:dj,trackerUrl:aE,success:true,xhr:this})}}};dm.setRequestHeader("Content-Type",cw);dm.withCredentials=true;dm.send(dj)}catch(dl){dn=m&&a6(dj,dk,di);if(!dn&&di){cp(dj,dk)}else{if(typeof dk==="function"){dk({request:dj,trackerUrl:aE,success:false})}}}},50)}function cg(dj){var di=new Date();var dk=di.getTime()+dj;if(!r||dk>r){r=dk}}function cn(di){if(cc||!a5||!bB){return}cc=setTimeout(function dj(){cc=null;if(!bc){bc=(!G.hasFocus||G.hasFocus())}if(!bc){cn(a5);return}if(bR()){return}var dk=new Date(),dl=a5-(dk.getTime()-cX);dl=Math.min(a5,dl);cn(dl)},di||a5)}function bK(){if(!cc){return}clearTimeout(cc);cc=null}function ba(){bc=true;cx=new Date().getTime()}function dc(){var di=new Date().getTime();
+return !cx||(di-cx)>a5}function ay(){if(dc()){bR()}bK()}function df(){if(aN||!a5){return}aN=true;an(T,"focus",ba);an(T,"blur",ay);ab++;e.addPlugin("HeartBeat"+ab,{unload:function(){if(aN&&dc()){bR()}}})}function cC(dm){var dj=new Date();var di=dj.getTime();cX=di;if(cB&&di<cB){var dk=cB-di;setTimeout(dm,dk);cg(dk+50);cB+=50;return}if(cB===false){var dl=800;cB=di+dl}dm()}function aO(){if(aD(cL)){bB=false}else{if(aD(bd)){bB=true}}}function bF(dj,di,dk){aO();if(!bB){cK.push(dj);return}if(!cP&&dj){if(cA&&bB){dj+="&consent=1"}cC(function(){if(cV&&a6(dj,dk,true)){cg(100);return}if(cD(dj)){c3(dj,dk)}else{cp(dj,dk)}cg(di)})}if(!aN){df()}}function ck(di){if(cP){return false}return(di&&di.length)}function c2(di,dm){if(!dm||dm>=di.length){return[di]}var dj=0;var dk=di.length;var dl=[];for(dj;dj<dk;dj+=dm){dl.push(di.slice(dj,dj+dm))}return dl}function de(dj,di){if(!ck(dj)){return}if(!bB){cK.push(dj);return}cC(function(){var dm=c2(dj,50);var dk=0,dl;for(dk;dk<dm.length;dk++){dl='{"requests":["?'+dm[dk].join('","?')+'"]}';
+if(cV&&a6(dl,null,false)){cg(100)}else{c3(dl,null,false)}}cg(di)})}function aT(di){return bk+di+"."+b6+"."+bo}function bY(dk,dj,di){dd(dk,"",-86400,dj,di)}function b5(){if(bl){return"0"}if(!J(T.showModalDialog)&&J(h.cookieEnabled)){return h.cookieEnabled?"1":"0"}var di=bk+"testcookie";dd(di,"1",undefined,bp,cW,bS);var dj=aD(di)==="1"?"1":"0";bY(di);return dj}function bi(){bo=b7((cW||cT)+(bp||"/")).slice(0,4)}function cH(){if(J(c7.res)){return c7}var dj,dl,dm={pdf:"application/pdf",qt:"video/quicktime",realp:"audio/x-pn-realaudio-plugin",wma:"application/x-mplayer2",dir:"application/x-director",fla:"application/x-shockwave-flash",java:"application/x-java-vm",gears:"application/x-googlegears",ag:"application/x-silverlight"};if(!((new RegExp("MSIE")).test(h.userAgent))){if(h.mimeTypes&&h.mimeTypes.length){for(dj in dm){if(Object.prototype.hasOwnProperty.call(dm,dj)){dl=h.mimeTypes[dm[dj]];c7[dj]=(dl&&dl.enabledPlugin)?"1":"0"}}}if(!((new RegExp("Edge[ /](\\d+[\\.\\d]+)")).test(h.userAgent))&&typeof navigator.javaEnabled!=="unknown"&&J(h.javaEnabled)&&h.javaEnabled()){c7.java="1"
+}if(A(T.GearsFactory)){c7.gears="1"}c7.cookie=b5()}var dk=parseInt(X.width,10);var di=parseInt(X.height,10);c7.res=parseInt(dk,10)+"x"+parseInt(di,10);return c7}function bX(){var dj=aT("cvar"),di=aD(dj);if(di&&di.length){di=T.JSON.parse(di);if(W(di)){return di}}return{}}function cE(){if(aQ===false){aQ=bX()}}function cQ(){var di=cH();return b7((h.userAgent||"")+(h.platform||"")+T.JSON.stringify(di)+(new Date()).getTime()+Math.random()).slice(0,16)}function aA(){var di=cH();return b7((h.userAgent||"")+(h.platform||"")+T.JSON.stringify(di)).slice(0,6)}function bf(){return Math.floor((new Date()).getTime()/1000)}function aJ(){var dj=bf();var dk=aA();var di=String(dj)+dk;return di}function c1(dk){dk=String(dk);var dn=aA();var dl=dn.length;var dm=dk.substr(-1*dl,dl);var dj=parseInt(dk.substr(0,dk.length-dl),10);if(dj&&dm&&dm===dn){var di=bf();if(aZ<=0){return true}if(di>=dj&&di<=(dj+aZ)){return true}}return false}function dg(di){if(!cM){return""}var dm=f(di,av);if(!dm){return""}dm=String(dm);
+var dk=new RegExp("^[a-zA-Z0-9]+$");if(dm.length===32&&dk.test(dm)){var dj=dm.substr(16,32);if(c1(dj)){var dl=dm.substr(0,16);return dl}}return""}function cN(){if(!bO){bO=dg(bN)}var dk=new Date(),di=Math.round(dk.getTime()/1000),dj=aT("id"),dn=aD(dj),dm,dl;if(dn){dm=dn.split(".");dm.unshift("0");if(bO.length){dm[1]=bO}return dm}if(bO.length){dl=bO}else{if("0"===b5()){dl=""}else{dl=cQ()}}dm=["1",dl,di,0,di,"",""];return dm}function aY(){var dq=cN(),dl=dq[0],dm=dq[1],dj=dq[2],di=dq[3],dn=dq[4],dk=dq[5];if(!J(dq[6])){dq[6]=""}var dp=dq[6];return{newVisitor:dl,uuid:dm,createTs:dj,visitCount:di,currentVisitTs:dn,lastVisitTs:dk,lastEcommerceOrderTs:dp}}function aH(){var dl=new Date(),dj=dl.getTime(),dm=aY().createTs;var di=parseInt(dm,10);var dk=(di*1000)+cJ-dj;return dk}function aM(di){if(!b6){return}var dk=new Date(),dj=Math.round(dk.getTime()/1000);if(!J(di)){di=aY()}var dl=di.uuid+"."+di.createTs+"."+di.visitCount+"."+dj+"."+di.lastVisitTs+"."+di.lastEcommerceOrderTs;dd(aT("id"),dl,aH(),bp,cW,bS)
+}function bM(){var di=aD(aT("ref"));if(di.length){try{di=T.JSON.parse(di);if(W(di)){return di}}catch(dj){}}return["","",0,""]}function bw(dj){var di="testvalue";dd("test",di,10000,null,dj);if(aD("test")===di){bY("test",null,dj);return true}return false}function aF(){var dj=bl;bl=false;var di,dk;for(di=0;di<bu.length;di++){dk=aT(bu[di]);if(dk!==cL&&dk!==bd&&0!==aD(dk)){bY(dk,bp,cW)}}bl=dj}function b3(di){b6=di;aM()}function dh(dm){if(!dm||!W(dm)){return}var dl=[];var dk;for(dk in dm){if(Object.prototype.hasOwnProperty.call(dm,dk)){dl.push(dk)}}var dn={};dl.sort();var di=dl.length;var dj;for(dj=0;dj<di;dj++){dn[dl[dj]]=dm[dl[dj]]}return dn}function cd(){dd(aT("ses"),"1",co,bp,cW,bS)}function bg(){var dl="";var dj="abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";var dk=dj.length;var di;for(di=0;di<6;di++){dl+=dj.charAt(Math.floor(Math.random()*dk))}return dl}function az(di){if(i&&i.timing&&i&&i.timing.connectEnd&&i.timing.fetchStart){di+="&pf_net="+(i.timing.connectEnd-i.timing.fetchStart)
+}if(i&&i.timing&&i&&i.timing.responseStart&&i.timing.requestStart){di+="&pf_srv="+(i.timing.responseStart-i.timing.requestStart)}if(i&&i.timing&&i&&i.timing.responseStart&&i.timing.responseEnd){di+="&pf_tfr="+(i.timing.responseEnd-i.timing.responseStart)}if(i&&i.timing&&i&&i.timing.domInteractive&&i.timing.domLoading){di+="&pf_dm1="+(i.timing.domInteractive-i.timing.domLoading)}if(i&&i.timing&&i&&i.timing.domComplete&&i.timing.domInteractive){di+="&pf_dm2="+(i.timing.domComplete-i.timing.domInteractive)}if(i&&i.timing&&i&&i.timing.loadEventEnd&&i.timing.loadEventStart){di+="&pf_onl="+(i.timing.loadEventEnd-i.timing.loadEventStart)}return di}function cs(dk,dG,dH,dl){var dF,dj=new Date(),dt=Math.round(dj.getTime()/1000),dq,dE,dm=1024,dN,du,dC=aQ,dn=aT("ses"),dA=aT("ref"),dx=aT("cvar"),dy=aD(dn),dD=bM(),dJ=a4||bN,dr,di;if(bl){aF()}if(cP){return""}var dz=aY();if(!J(dl)){dl=""}var dw=G.characterSet||G.charset;if(!dw||dw.toLowerCase()==="utf-8"){dw=null}dr=dD[0];di=dD[1];dq=dD[2];dE=dD[3];if(!dy){var dI=co/1000;
+if(!dz.lastVisitTs||(dt-dz.lastVisitTs)>dI){dz.visitCount++;dz.lastVisitTs=dz.currentVisitTs}if(!bv||!dr.length){for(dF in cq){if(Object.prototype.hasOwnProperty.call(cq,dF)){dr=f(dJ,cq[dF]);if(dr.length){break}}}for(dF in bG){if(Object.prototype.hasOwnProperty.call(bG,dF)){di=f(dJ,bG[dF]);if(di.length){break}}}}dN=d(bn);du=dE.length?d(dE):"";if(dN.length&&!aV(dN)&&(!bv||!du.length||aV(du))){dE=bn}if(dE.length||dr.length){dq=dt;dD=[dr,di,dq,b2(dE.slice(0,dm))];dd(dA,T.JSON.stringify(dD),c4,bp,cW,bS)}}dk+="&idsite="+b6+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+dj.getHours()+"&m="+dj.getMinutes()+"&s="+dj.getSeconds()+"&url="+t(b2(dJ))+(bn.length?"&urlref="+t(b2(bn)):"")+((by&&by.length)?"&uid="+t(by):"")+"&_id="+dz.uuid+"&_idts="+dz.createTs+"&_idvc="+dz.visitCount+"&_idn="+dz.newVisitor+(dr.length?"&_rcn="+t(dr):"")+(di.length?"&_rck="+t(di):"")+"&_refts="+dq+"&_viewts="+dz.lastVisitTs+(String(dz.lastEcommerceOrderTs).length?"&_ects="+dz.lastEcommerceOrderTs:"")+(String(dE).length?"&_ref="+t(b2(dE.slice(0,dm))):"")+(dw?"&cs="+t(dw):"")+"&send_image=0";
+var dM=cH();for(dF in dM){if(Object.prototype.hasOwnProperty.call(dM,dF)){dk+="&"+dF+"="+dM[dF]}}var dL=[];if(dG){for(dF in dG){if(Object.prototype.hasOwnProperty.call(dG,dF)&&/^dimension\d+$/.test(dF)){var dp=dF.replace("dimension","");dL.push(parseInt(dp,10));dL.push(String(dp));dk+="&"+dF+"="+t(dG[dF]);delete dG[dF]}}}if(dG&&B(dG)){dG=null}for(dF in bm){if(Object.prototype.hasOwnProperty.call(bm,dF)){var dv=(-1===M(dL,dF));if(dv){dk+="&dimension"+dF+"="+t(bm[dF])}}}if(dG){dk+="&data="+t(T.JSON.stringify(dG))}else{if(ao){dk+="&data="+t(T.JSON.stringify(ao))}}function ds(dO,dP){var dQ=T.JSON.stringify(dO);if(dQ.length>2){return"&"+dP+"="+t(dQ)}return""}var dK=dh(bW);var dB=dh(cm);dk+=ds(dK,"cvar");dk+=ds(dB,"e_cvar");if(aQ){dk+=ds(aQ,"_cvar");for(dF in dC){if(Object.prototype.hasOwnProperty.call(dC,dF)){if(aQ[dF][0]===""||aQ[dF][1]===""){delete aQ[dF]}}}if(bQ){dd(dx,T.JSON.stringify(aQ),co,bp,cW,bS)}}if(a2&&bE&&!bh){dk=az(dk);bh=true}if(aL){dk+="&pv_id="+aL}dz.lastEcommerceOrderTs=J(dl)&&String(dl).length?dl:dz.lastEcommerceOrderTs;
+aM(dz);cd();dk+=ac(dH,{tracker:bI,request:dk});if(cY.length){dk+="&"+cY}if(A(cb)){dk=cb(dk)}return dk}bR=function a7(){var di=new Date();di=di.getTime();if(!cX){return false}if((cX+(1000*c6))<=di){return false}if(cX+a5<=di){bI.ping();return true}return false};function bq(dl,dk,dr,dm,di,du){var dp="idgoal=0",dq,dj=new Date(),ds=[],dt,dn=String(dl).length;if(dn){dp+="&ec_id="+t(dl);dq=Math.round(dj.getTime()/1000)}dp+="&revenue="+dk;if(String(dr).length){dp+="&ec_st="+dr}if(String(dm).length){dp+="&ec_tx="+dm}if(String(di).length){dp+="&ec_sh="+di}if(String(du).length){dp+="&ec_dt="+du}if(cZ){for(dt in cZ){if(Object.prototype.hasOwnProperty.call(cZ,dt)){if(!J(cZ[dt][1])){cZ[dt][1]=""}if(!J(cZ[dt][2])){cZ[dt][2]=""}if(!J(cZ[dt][3])||String(cZ[dt][3]).length===0){cZ[dt][3]=0}if(!J(cZ[dt][4])||String(cZ[dt][4]).length===0){cZ[dt][4]=1}ds.push(cZ[dt])}}dp+="&ec_items="+t(T.JSON.stringify(ds))}dp=cs(dp,ao,"ecommerce",dq);bF(dp,bJ);if(dn){cZ={}}}function bZ(di,dm,dl,dk,dj,dn){if(String(di).length&&J(dm)){bq(di,dm,dl,dk,dj,dn)
+}}function bs(di){if(J(di)){bq("",di,"","","","")}}function b0(dj,dl,dk){aL=bg();var di=cs("action_name="+t(al(dj||bj)),dl,"log");if(!bh){di=az(di)}bF(di,bJ,dk)}function a0(dk,dj){var dl,di="(^| )(piwik[_-]"+dj;if(dk){for(dl=0;dl<dk.length;dl++){di+="|"+dk[dl]}}di+=")( |$)";return new RegExp(di)}function aU(di){return(aE&&di&&0===String(di).indexOf(aE))}function cu(dm,di,dn,dj){if(aU(di)){return 0}var dl=a0(bL,"download"),dk=a0(a8,"link"),dp=new RegExp("\\.("+c5.join("|")+")([?&#]|$)","i");if(dk.test(dm)){return"link"}if(dj||dl.test(dm)||dp.test(di)){return"download"}if(dn){return 0}return"link"}function au(dj){var di;di=dj.parentNode;while(di!==null&&J(di)){if(ae.isLinkElement(dj)){break}dj=di;di=dj.parentNode}return dj}function db(dn){dn=au(dn);if(!ae.hasNodeAttribute(dn,"href")){return}if(!J(dn.href)){return}var dm=ae.getAttributeValueFromNode(dn,"href");var dj=dn.pathname||cl(dn.href);var dp=dn.hostname||d(dn.href);var dq=dp.toLowerCase();var dk=dn.href.replace(dp,dq);var dl=new RegExp("^(javascript|vbscript|jscript|mocha|livescript|ecmascript|mailto|tel):","i");
+if(!dl.test(dk)){var di=cu(dn.className,dk,ar(dq,dj),ae.hasNodeAttribute(dn,"download"));if(di){return{type:di,href:dk}}}}function aP(di,dj,dk,dl){var dm=v.buildInteractionRequestParams(di,dj,dk,dl);if(!dm){return}return cs(dm,null,"contentInteraction")}function bb(di,dj){if(!di||!dj){return false}var dk=v.findTargetNode(di);if(v.shouldIgnoreInteraction(dk)){return false}dk=v.findTargetNodeNoDefault(di);if(dk&&!V(dk,dj)){return false}return true}function ct(dk,dj,dm){if(!dk){return}var di=v.findParentContentNode(dk);if(!di){return}if(!bb(di,dk)){return}var dl=v.buildContentBlock(di);if(!dl){return}if(!dl.target&&dm){dl.target=dm}return v.buildInteractionRequestParams(dj,dl.name,dl.piece,dl.target)}function aW(dj){if(!ca||!ca.length){return false}var di,dk;for(di=0;di<ca.length;di++){dk=ca[di];if(dk&&dk.name===dj.name&&dk.piece===dj.piece&&dk.target===dj.target){return true}}return false}function aX(di){return function(dm){if(!di){return}var dk=v.findParentContentNode(di);var dj;if(dm){dj=dm.target||dm.srcElement
+}if(!dj){dj=di}if(!bb(dk,dj)){return}if(!dk){return false}var dn=v.findTargetNode(dk);if(!dn||v.shouldIgnoreInteraction(dn)){return false}var dl=db(dn);if(c8&&dl&&dl.type){return dl.type}return bI.trackContentInteractionNode(dj,"click")}}function b1(dk){if(!dk||!dk.length){return}var di,dj;for(di=0;di<dk.length;di++){dj=v.findTargetNode(dk[di]);if(dj&&!dj.contentInteractionTrackingSetupDone){dj.contentInteractionTrackingSetupDone=true;an(dj,"click",aX(dj))}}}function bx(dk,dl){if(!dk||!dk.length){return[]}var di,dj;for(di=0;di<dk.length;di++){if(aW(dk[di])){dk.splice(di,1);di--}else{ca.push(dk[di])}}if(!dk||!dk.length){return[]}b1(dl);var dm=[];for(di=0;di<dk.length;di++){dj=cs(v.buildImpressionRequestParams(dk[di].name,dk[di].piece,dk[di].target),undefined,"contentImpressions");if(dj){dm.push(dj)}}return dm}function cz(dj){var di=v.collectContent(dj);return bx(di,dj)}function a9(dj){if(!dj||!dj.length){return[]}var di;for(di=0;di<dj.length;di++){if(!v.isNodeVisible(dj[di])){dj.splice(di,1);
+di--}}if(!dj||!dj.length){return[]}return cz(dj)}function aG(dk,di,dj){var dl=v.buildImpressionRequestParams(dk,di,dj);return cs(dl,null,"contentImpression")}function da(dl,dj){if(!dl){return}var di=v.findParentContentNode(dl);var dk=v.buildContentBlock(di);if(!dk){return}if(!dj){dj="Unknown"}return aP(dj,dk.name,dk.piece,dk.target)}function cO(dj,dl,di,dk){return"e_c="+t(dj)+"&e_a="+t(dl)+(J(di)?"&e_n="+t(di):"")+(J(dk)?"&e_v="+t(dk):"")}function at(dk,dm,di,dl,dp,dn){if(a(String(dk)).length===0||a(String(dm)).length===0){ak("Error while logging event: Parameters `category` and `action` must not be empty or filled with whitespaces");return false}var dj=cs(cO(dk,dm,di,dl),dp,"event");bF(dj,bJ,dn)}function b8(di,dl,dj,dm){var dk=cs("search="+t(di)+(dl?"&search_cat="+t(dl):"")+(J(dj)?"&search_count="+dj:""),dm,"sitesearch");bF(dk,bJ)}function cS(di,dm,dl,dk){var dj=cs("idgoal="+di+(dm?"&revenue="+dm:""),dl,"goal");bF(dj,bJ,dk)}function c0(dl,di,dq,dp,dk){var dn=di+"="+t(b2(dl));var dj=ct(dk,"click",dl);
+if(dj){dn+="&"+dj}var dm=cs(dn,dq,"link");bF(dm,bJ,dp)}function bU(dj,di){if(dj!==""){return dj+di.charAt(0).toUpperCase()+di.slice(1)}return di}function ch(dn){var dm,di,dl=["","webkit","ms","moz"],dk;if(!be){for(di=0;di<dl.length;di++){dk=dl[di];if(Object.prototype.hasOwnProperty.call(G,bU(dk,"hidden"))){if(G[bU(dk,"visibilityState")]==="prerender"){dm=true}break}}}if(dm){an(G,dk+"visibilitychange",function dj(){G.removeEventListener(dk+"visibilitychange",dj,false);dn()});return}dn()}function br(){var dj=aY().uuid;var di=aJ();return dj+di}function cj(di){if(!di){return}if(!ae.hasNodeAttribute(di,"href")){return}var dj=ae.getAttributeValueFromNode(di,"href");if(!dj||aU(dj)){return}dj=k(dj,av);var dk=br();dj=F(dj,av,dk);ae.setAnyAttribute(di,"href",dj)}function aB(dl){var dm=ae.getAttributeValueFromNode(dl,"href");if(!dm){return false}dm=String(dm);var dj=dm.indexOf("//")===0||dm.indexOf("http://")===0||dm.indexOf("https://")===0;if(!dj){return false}var di=dl.pathname||cl(dl.href);var dk=(dl.hostname||d(dl.href)).toLowerCase();
+if(ar(dk,di)){if(!cG(cT,L(dk))){return true}return false}return false}function cF(di){var dj=db(di);if(dj&&dj.type){dj.href=p(dj.href);c0(dj.href,dj.type,undefined,null,di);return}if(cM){di=au(di);if(aB(di)){cj(di)}}}function cv(){return G.all&&!G.addEventListener}function cU(di){var dk=di.which;var dj=(typeof di.button);if(!dk&&dj!=="undefined"){if(cv()){if(di.button&1){dk=1}else{if(di.button&2){dk=3}else{if(di.button&4){dk=2}}}}else{if(di.button===0||di.button==="0"){dk=1}else{if(di.button&1){dk=2}else{if(di.button&2){dk=3}}}}}return dk}function bT(di){switch(cU(di)){case 1:return"left";case 2:return"middle";case 3:return"right"}}function a1(di){return di.target||di.srcElement}function aC(di){return function(dl){dl=dl||T.event;var dk=bT(dl);var dm=a1(dl);if(dl.type==="click"){var dj=false;if(di&&dk==="middle"){dj=true}if(dm&&!dj){cF(dm)}}else{if(dl.type==="mousedown"){if(dk==="middle"&&dm){aR=dk;bA=dm}else{aR=bA=null}}else{if(dl.type==="mouseup"){if(dk===aR&&dm===bA){cF(dm)}aR=bA=null
+}else{if(dl.type==="contextmenu"){cF(dm)}}}}}}function aq(dk,dj){var di=typeof dj;if(di==="undefined"){dj=true}an(dk,"click",aC(dj),false);if(dj){an(dk,"mouseup",aC(dj),false);an(dk,"mousedown",aC(dj),false);an(dk,"contextmenu",aC(dj),false)}}function bD(dk,dm){ap=true;var dl,dj=a0(bz,"ignore"),dn=G.links,di=null,dp=null;if(dn){for(dl=0;dl<dn.length;dl++){di=dn[dl];if(!dj.test(di.className)){dp=typeof di.piwikTrackers;if("undefined"===dp){di.piwikTrackers=[]}if(-1===M(di.piwikTrackers,dm)){di.piwikTrackers.push(dm);aq(di,dk)}}}}}function aS(dj,dm,dn){if(cf){return true}cf=true;var dp=false;var dl,dk;function di(){dp=true}n(function(){function dq(ds){setTimeout(function(){if(!cf){return}dp=false;dn.trackVisibleContentImpressions();dq(ds)},ds)}function dr(ds){setTimeout(function(){if(!cf){return}if(dp){dp=false;dn.trackVisibleContentImpressions()}dr(ds)},ds)}if(dj){dl=["scroll","resize"];for(dk=0;dk<dl.length;dk++){if(G.addEventListener){G.addEventListener(dl[dk],di,false)}else{T.attachEvent("on"+dl[dk],di)
+}}dr(100)}if(dm&&dm>0){dm=parseInt(dm,10);dq(dm)}})}var bC={enabled:true,requests:[],timeout:null,interval:2500,sendRequests:function(){var di=this.requests;this.requests=[];if(di.length===1){bF(di[0],bJ)}else{de(di,bJ)}},push:function(di){if(!di){return}if(m||!this.enabled){bF(di,bJ);return}bC.requests.push(di);if(this.timeout){clearTimeout(this.timeout);this.timeout=null}this.timeout=setTimeout(function(){bC.timeout=null;bC.sendRequests()},bC.interval);var dj="RequestQueue"+aw;if(!Object.prototype.hasOwnProperty.call(b,dj)){b[dj]={unload:function(){if(bC.timeout){clearTimeout(bC.timeout)}bC.sendRequests()}}}}};bi();aM();this.hasConsent=function(){return bB};this.getVisitorId=function(){return aY().uuid};this.getVisitorInfo=function(){return cN()};this.getAttributionInfo=function(){return bM()};this.getAttributionCampaignName=function(){return bM()[0]};this.getAttributionCampaignKeyword=function(){return bM()[1]};this.getAttributionReferrerTimestamp=function(){return bM()[2]};this.getAttributionReferrerUrl=function(){return bM()[3]
+};this.setTrackerUrl=function(di){aE=di};this.getTrackerUrl=function(){return aE};this.getPiwikUrl=function(){return O(this.getTrackerUrl(),bH)};this.addTracker=function(di,dk){if(!J(di)||null===di){di=this.getTrackerUrl()}var dj=new Q(di,dk);I.push(dj);e.trigger("TrackerAdded",[this]);return dj};this.getSiteId=function(){return b6};this.setSiteId=function(di){b3(di)};this.resetUserId=function(){by=""};this.setUserId=function(di){if(Y(di)){by=di}};this.getUserId=function(){return by};this.setCustomData=function(di,dj){if(W(di)){ao=di}else{if(!ao){ao={}}ao[di]=dj}};this.getCustomData=function(){return ao};this.setCustomRequestProcessing=function(di){cb=di};this.appendToTrackingUrl=function(di){cY=di};this.getRequest=function(di){return cs(di)};this.addPlugin=function(di,dj){b[di]=dj};this.setCustomDimension=function(di,dj){di=parseInt(di,10);if(di>0){if(!J(dj)){dj=""}if(!w(dj)){dj=String(dj)}bm[di]=dj}};this.getCustomDimension=function(di){di=parseInt(di,10);if(di>0&&Object.prototype.hasOwnProperty.call(bm,di)){return bm[di]
+}};this.deleteCustomDimension=function(di){di=parseInt(di,10);if(di>0){delete bm[di]}};this.setCustomVariable=function(dj,di,dm,dk){var dl;if(!J(dk)){dk="visit"}if(!J(di)){return}if(!J(dm)){dm=""}if(dj>0){di=!w(di)?String(di):di;dm=!w(dm)?String(dm):dm;dl=[di.slice(0,bt),dm.slice(0,bt)];if(dk==="visit"||dk===2){cE();aQ[dj]=dl}else{if(dk==="page"||dk===3){bW[dj]=dl}else{if(dk==="event"){cm[dj]=dl}}}}};this.getCustomVariable=function(dj,dk){var di;if(!J(dk)){dk="visit"}if(dk==="page"||dk===3){di=bW[dj]}else{if(dk==="event"){di=cm[dj]}else{if(dk==="visit"||dk===2){cE();di=aQ[dj]}}}if(!J(di)||(di&&di[0]==="")){return false}return di};this.deleteCustomVariable=function(di,dj){if(this.getCustomVariable(di,dj)){this.setCustomVariable(di,"","",dj)}};this.deleteCustomVariables=function(di){if(di==="page"||di===3){bW={}}else{if(di==="event"){cm={}}else{if(di==="visit"||di===2){aQ={}}}}};this.storeCustomVariablesInCookie=function(){bQ=true};this.setLinkTrackingTimer=function(di){bJ=di};this.getLinkTrackingTimer=function(){return bJ
+};this.setDownloadExtensions=function(di){if(w(di)){di=di.split("|")}c5=di};this.addDownloadExtensions=function(dj){var di;if(w(dj)){dj=dj.split("|")}for(di=0;di<dj.length;di++){c5.push(dj[di])}};this.removeDownloadExtensions=function(dk){var dj,di=[];if(w(dk)){dk=dk.split("|")}for(dj=0;dj<c5.length;dj++){if(M(dk,c5[dj])===-1){di.push(c5[dj])}}c5=di};this.setDomains=function(di){ax=w(di)?[di]:di;var dm=false,dk=0,dj;for(dk;dk<ax.length;dk++){dj=String(ax[dk]);if(cG(cT,L(dj))){dm=true;break}var dl=cl(dj);if(dl&&dl!=="/"&&dl!=="/*"){dm=true;break}}if(!dm){ax.push(cT)}};this.enableCrossDomainLinking=function(){cM=true};this.disableCrossDomainLinking=function(){cM=false};this.isCrossDomainLinkingEnabled=function(){return cM};this.setCrossDomainLinkingTimeout=function(di){aZ=di};this.getCrossDomainLinkingUrlParameter=function(){return t(av)+"="+t(br())};this.setIgnoreClasses=function(di){bz=w(di)?[di]:di};this.setRequestMethod=function(di){c9=di||ci};this.setRequestContentType=function(di){cw=di||aI
+};this.setReferrerUrl=function(di){bn=di};this.setCustomUrl=function(di){a4=bV(bN,di)};this.getCurrentUrl=function(){return a4||bN};this.setDocumentTitle=function(di){bj=di};this.setAPIUrl=function(di){bH=di};this.setDownloadClasses=function(di){bL=w(di)?[di]:di};this.setLinkClasses=function(di){a8=w(di)?[di]:di};this.setCampaignNameKey=function(di){cq=w(di)?[di]:di};this.setCampaignKeywordKey=function(di){bG=w(di)?[di]:di};this.discardHashTag=function(di){bP=di};this.setCookieNamePrefix=function(di){bk=di;if(aQ){aQ=bX()}};this.setCookieDomain=function(di){var dj=L(di);if(bw(dj)){cW=dj;bi()}};this.getCookieDomain=function(){return cW};this.hasCookies=function(){return"1"===b5()};this.setSessionCookie=function(dk,dj,di){if(!dk){throw new Error("Missing cookie name")}if(!J(di)){di=co}bu.push(dk);dd(aT(dk),dj,di,bp,cW)};this.getCookie=function(dj){var di=aD(aT(dj));if(di===0){return null}return di};this.setCookiePath=function(di){bp=di;bi()};this.getCookiePath=function(di){return bp};this.setVisitorCookieTimeout=function(di){cJ=di*1000
+};this.setSessionCookieTimeout=function(di){co=di*1000};this.getSessionCookieTimeout=function(){return co};this.setReferralCookieTimeout=function(di){c4=di*1000};this.setConversionAttributionFirstReferrer=function(di){bv=di};this.setSecureCookie=function(di){bS=di};this.disableCookies=function(){bl=true;c7.cookie="0";if(b6){aF()}};this.deleteCookies=function(){aF()};this.setDoNotTrack=function(dj){var di=h.doNotTrack||h.msDoNotTrack;cP=dj&&(di==="yes"||di==="1");if(cP){this.disableCookies()}};this.alwaysUseSendBeacon=function(){cV=true};this.disableAlwaysUseSendBeacon=function(){cV=false};this.addListener=function(dj,di){aq(dj,di)};this.enableLinkTracking=function(dj){c8=true;var di=this;ch(function(){q(function(){bD(dj,di)})})};this.enableJSErrorTracking=function(){if(cR){return}cR=true;var di=T.onerror;T.onerror=function(dn,dl,dk,dm,dj){ch(function(){var dp="JavaScript Errors";var dq=dl+":"+dk;if(dm){dq+=":"+dm}at(dp,dq,dn)});if(di){return di(dn,dl,dk,dm,dj)}return false}};this.disablePerformanceTracking=function(){a2=false
+};this.setVisitStandardLength=function(di){di=Math.max(di,5);c6=di};this.enableHeartBeatTimer=function(di){di=Math.max(di,5);a5=(di||15)*1000;if(cX!==null){df()}};this.disableHeartBeatTimer=function(){bK();if(a5||aN){if(T.removeEventListener){T.removeEventListener("focus",ba);T.removeEventListener("blur",ay)}else{if(T.detachEvent){T.detachEvent("onfocus",ba);T.detachEvent("onblur",ay)}}}a5=null;aN=false};this.killFrame=function(){if(T.location!==T.top.location){T.top.location=T.location}};this.redirectFile=function(di){if(T.location.protocol==="file:"){T.location=di}};this.setCountPreRendered=function(di){be=di};this.trackGoal=function(di,dl,dk,dj){ch(function(){cS(di,dl,dk,dj)})};this.trackLink=function(dj,di,dl,dk){ch(function(){c0(dj,di,dl,dk)})};this.getNumTrackedPageViews=function(){return cr};this.trackPageView=function(di,dk,dj){ca=[];cK=[];if(N(b6)){ch(function(){Z(aE,bH,b6)})}else{ch(function(){cr++;b0(di,dk,dj)})}};this.trackAllContentImpressions=function(){if(N(b6)){return}ch(function(){q(function(){var di=v.findContentNodes();
+var dj=cz(di);de(dj,bJ)})})};this.trackVisibleContentImpressions=function(di,dj){if(N(b6)){return}if(!J(di)){di=true}if(!J(dj)){dj=750}aS(di,dj,this);ch(function(){n(function(){var dk=v.findContentNodes();var dl=a9(dk);de(dl,bJ)})})};this.trackContentImpression=function(dk,di,dj){if(N(b6)){return}dk=a(dk);di=a(di);dj=a(dj);if(!dk){return}di=di||"Unknown";ch(function(){var dl=aG(dk,di,dj);bF(dl,bJ)})};this.trackContentImpressionsWithinNode=function(di){if(N(b6)||!di){return}ch(function(){if(cf){n(function(){var dj=v.findContentNodesWithinNode(di);var dk=a9(dj);de(dk,bJ)})}else{q(function(){var dj=v.findContentNodesWithinNode(di);var dk=cz(dj);de(dk,bJ)})}})};this.trackContentInteraction=function(dk,dl,di,dj){if(N(b6)){return}dk=a(dk);dl=a(dl);di=a(di);dj=a(dj);if(!dk||!dl){return}di=di||"Unknown";ch(function(){var dm=aP(dk,dl,di,dj);if(dm){bF(dm,bJ)}})};this.trackContentInteractionNode=function(dk,dj){if(N(b6)||!dk){return}var di=null;ch(function(){di=da(dk,dj);if(di){bF(di,bJ)}});return di
+};this.logAllContentBlocksOnPage=function(){var dk=v.findContentNodes();var di=v.collectContent(dk);var dj=typeof console;if(dj!=="undefined"&&console&&console.log){console.log(di)}};this.trackEvent=function(dj,dl,di,dk,dn,dm){ch(function(){at(dj,dl,di,dk,dn,dm)})};this.trackSiteSearch=function(di,dk,dj,dl){ca=[];ch(function(){b8(di,dk,dj,dl)})};this.setEcommerceView=function(dl,di,dk,dj){if(Y(dk)){dk=String(dk)}if(!J(dk)||dk===null||dk===false||!dk.length){dk=""}else{if(dk instanceof Array){dk=T.JSON.stringify(dk)}}bW[5]=["_pkc",dk];if(J(dj)&&dj!==null&&dj!==false&&String(dj).length){bW[2]=["_pkp",dj]}if(!Y(dl)&&!Y(di)){return}if(Y(dl)){bW[3]=["_pks",dl]}if(!Y(di)){di=""}bW[4]=["_pkn",di]};this.getEcommerceItems=function(){return JSON.parse(JSON.stringify(cZ))};this.addEcommerceItem=function(dm,di,dk,dj,dl){if(Y(dm)){cZ[dm]=[String(dm),di,dk,dj,dl]}};this.removeEcommerceItem=function(di){if(Y(di)){di=String(di);delete cZ[di]}};this.clearEcommerceCart=function(){cZ={}};this.trackEcommerceOrder=function(di,dm,dl,dk,dj,dn){bZ(di,dm,dl,dk,dj,dn)
+};this.trackEcommerceCartUpdate=function(di){bs(di)};this.trackRequest=function(dj,dl,dk,di){ch(function(){var dm=cs(dj,dl,di);bF(dm,bJ,dk)})};this.ping=function(){this.trackRequest("ping=1",null,null,"ping")};this.disableQueueRequest=function(){bC.enabled=false};this.setRequestQueueInterval=function(di){if(di<1000){throw new Error("Request queue interval needs to be at least 1000ms")}bC.interval=di};this.queueRequest=function(di){ch(function(){var dj=cs(di);bC.push(dj)})};this.isConsentRequired=function(){return cA};this.getRememberedConsent=function(){var di=aD(bd);if(aD(cL)){if(di){bY(bd,bp,cW)}return null}if(!di||di===0){return null}return di};this.hasRememberedConsent=function(){return !!this.getRememberedConsent()};this.requireConsent=function(){cA=true;bB=this.hasRememberedConsent();x++;b["CoreConsent"+x]={unload:function(){if(!bB){aF()}}}};this.setConsentGiven=function(){bB=true;bY(cL,bp,cW);var dj,di;for(dj=0;dj<cK.length;dj++){di=typeof cK[dj];if(di==="string"){bF(cK[dj],bJ)}else{if(di==="object"){de(cK[dj],bJ)
+}}}cK=[]};this.rememberConsentGiven=function(dj){if(dj){dj=dj*60*60*1000}else{dj=30*365*24*60*60*1000}this.setConsentGiven();var di=new Date().getTime();dd(bd,di,dj,bp,cW,bS)};this.forgetConsentGiven=function(){var di=30*365*24*60*60*1000;bY(bd,bp,cW);dd(cL,new Date().getTime(),di,bp,cW,bS);this.requireConsent()};this.isUserOptedOut=function(){return !bB};this.optUserOut=this.forgetConsentGiven;this.forgetUserOptOut=this.rememberConsentGiven;n(function(){setTimeout(function(){bE=true},0)});e.trigger("TrackerSetup",[this])}function H(){return{push:af}}function c(au,at){var av={};var aq,ar;for(aq=0;aq<at.length;aq++){var ao=at[aq];av[ao]=1;for(ar=0;ar<au.length;ar++){if(au[ar]&&au[ar][0]){var ap=au[ar][0];if(ao===ap){af(au[ar]);delete au[ar];if(av[ap]>1&&ap!=="addTracker"){ak("The method "+ap+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Piwik trackers documentation: https://developer.piwik.org/guides/tracking-javascript-guide#multiple-piwik-trackers')
+}av[ap]++}}}}return au}var C=["addTracker","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setSiteId","alwaysUseSendBeacon","enableLinkTracking","requireConsent","setConsentGiven"];function ad(ao,aq){var ap=new Q(ao,aq);I.push(ap);_paq=c(_paq,C);for(E=0;E<_paq.length;E++){if(_paq[E]){af(_paq[E])}}_paq=new H();e.trigger("TrackerAdded",[ap]);return ap}an(T,"beforeunload",ai,false);an(T,"message",function(au){if(!au||!au.origin){return}var aw,ar,ap;var ax=d(au.origin);var at=e.getAsyncTrackers();for(ar=0;ar<at.length;ar++){ap=d(at[ar].getPiwikUrl());if(ap===ax){aw=at[ar];break}}if(!aw){return}var aq=null;try{aq=JSON.parse(au.data)}catch(av){return}if(!aq){return}function ao(aA){var aC=G.getElementsByTagName("iframe");for(ar=0;ar<aC.length;ar++){var aB=aC[ar];var ay=d(aB.src);if(aB.contentWindow&&J(aB.contentWindow.postMessage)&&ay===ax){var az=JSON.stringify(aA);
+aB.contentWindow.postMessage(az,"*")}}}if(J(aq.maq_initial_value)){ao({maq_opted_in:aq.maq_initial_value&&aw.hasConsent(),maq_url:aw.getPiwikUrl(),maq_optout_by_default:aw.isConsentRequired()})}else{if(J(aq.maq_opted_in)){at=e.getAsyncTrackers();for(ar=0;ar<at.length;ar++){aw=at[ar];if(aq.maq_opted_in){aw.rememberConsentGiven()}else{aw.forgetConsentGiven()}}ao({maq_confirm_opted_in:aw.hasConsent(),maq_url:aw.getPiwikUrl(),maq_optout_by_default:aw.isConsentRequired()})}}},false);Date.prototype.getTimeAlias=Date.prototype.getTime;e={initialized:false,JSON:T.JSON,DOM:{addEventListener:function(ar,aq,ap,ao){var at=typeof ao;if(at==="undefined"){ao=false}an(ar,aq,ap,ao)},onLoad:n,onReady:q,isNodeVisible:j,isOrWasNodeVisible:v.isNodeVisible},on:function(ap,ao){if(!y[ap]){y[ap]=[]}y[ap].push(ao)},off:function(aq,ap){if(!y[aq]){return}var ao=0;for(ao;ao<y[aq].length;ao++){if(y[aq][ao]===ap){y[aq].splice(ao,1)}}},trigger:function(aq,ar,ap){if(!y[aq]){return}var ao=0;for(ao;ao<y[aq].length;ao++){y[aq][ao].apply(ap||T,ar)
+}},addPlugin:function(ao,ap){b[ao]=ap},getTracker:function(ao,ap){if(!J(ap)){ap=this.getAsyncTracker().getSiteId()}if(!J(ao)){ao=this.getAsyncTracker().getTrackerUrl()}return new Q(ao,ap)},getAsyncTrackers:function(){return I},addTracker:function(ao,aq){var ap;if(!I.length){ap=ad(ao,aq)}else{ap=I[0].addTracker(ao,aq)}return ap},getAsyncTracker:function(ap,at){var ar;if(I&&I.length&&I[0]){ar=I[0]}else{return ad(ap,at)}if(!at&&!ap){return ar}if((!J(at)||null===at)&&ar){at=ar.getSiteId()}if((!J(ap)||null===ap)&&ar){ap=ar.getTrackerUrl()}var aq,ao=0;for(ao;ao<I.length;ao++){aq=I[ao];if(aq&&String(aq.getSiteId())===String(at)&&aq.getTrackerUrl()===ap){return aq}}},retryMissedPluginCalls:function(){var ap=ah;ah=[];var ao=0;for(ao;ao<ap.length;ao++){af(ap[ao])}}};if(typeof define==="function"&&define.amd){define("piwik",[],function(){return e});define("matomo",[],function(){return e})}return e}())}
/*!!! pluginTrackerHook */
-(function(){function b(){if("object"!==typeof _paq){return false}var c=typeof _paq.length;if("undefined"===c){return false}return !!_paq.length}if(window&&"object"===typeof window.piwikPluginAsyncInit&&window.piwikPluginAsyncInit.length){var a=0;for(a;a<window.piwikPluginAsyncInit.length;a++){if(typeof window.piwikPluginAsyncInit[a]==="function"){window.piwikPluginAsyncInit[a]()}}}if(window&&window.piwikAsyncInit){window.piwikAsyncInit()}if(!window.Piwik.getAsyncTrackers().length){if(b()){window.Piwik.addTracker()}else{_paq={push:function(c){var d=typeof console;if(d!=="undefined"&&console&&console.error){console.error("_paq.push() was used but Matomo tracker was not initialized before the matomo.js file was loaded. Make sure to configure the tracker via _paq.push before loading matomo.js. Alternatively, you can create a tracker via Matomo.addTracker() manually and then use _paq.push but it may not fully work as tracker methods may not be executed in the correct order.",c)
-}}}}}window.Piwik.trigger("PiwikInitialized",[]);window.Piwik.initialized=true}());(function(){var a=(typeof AnalyticsTracker);if(a==="undefined"){AnalyticsTracker=window.Piwik}}());if(typeof piwik_log!=="function"){piwik_log=function(b,f,d,g){function a(h){try{if(window["piwik_"+h]){return window["piwik_"+h]}}catch(i){}return}var c,e=window.Piwik.getTracker(d,f);e.setDocumentTitle(b);e.setCustomData(g);c=a("tracker_pause");if(c){e.setLinkTrackingTimer(c)}c=a("download_extensions");if(c){e.setDownloadExtensions(c)}c=a("hosts_alias");if(c){e.setDomains(c)}c=a("ignore_classes");if(c){e.setIgnoreClasses(c)}e.trackPageView();if(a("install_tracker")){piwik_track=function(i,k,j,h){e.setSiteId(k);e.setTrackerUrl(j);e.trackLink(i,h)};e.enableLinkTracking()}}}
+(function(){function b(){if("object"!==typeof _paq){return false}var c=typeof _paq.length;
+if("undefined"===c){return false}return !!_paq.length}if(window&&"object"===typeof window.piwikPluginAsyncInit&&window.piwikPluginAsyncInit.length){var a=0;for(a;a<window.piwikPluginAsyncInit.length;a++){if(typeof window.piwikPluginAsyncInit[a]==="function"){window.piwikPluginAsyncInit[a]()}}}if(window&&window.piwikAsyncInit){window.piwikAsyncInit()}if(!window.Piwik.getAsyncTrackers().length){if(b()){window.Piwik.addTracker()}else{_paq={push:function(c){var d=typeof console;if(d!=="undefined"&&console&&console.error){console.error("_paq.push() was used but Matomo tracker was not initialized before the matomo.js file was loaded. Make sure to configure the tracker via _paq.push before loading matomo.js. Alternatively, you can create a tracker via Matomo.addTracker() manually and then use _paq.push but it may not fully work as tracker methods may not be executed in the correct order.",c)}}}}}window.Piwik.trigger("PiwikInitialized",[]);window.Piwik.initialized=true}());(function(){var a=(typeof AnalyticsTracker);
+if(a==="undefined"){AnalyticsTracker=window.Piwik}}());if(typeof piwik_log!=="function"){piwik_log=function(b,f,d,g){function a(h){try{if(window["piwik_"+h]){return window["piwik_"+h]}}catch(i){}return}var c,e=window.Piwik.getTracker(d,f);e.setDocumentTitle(b);e.setCustomData(g);c=a("tracker_pause");if(c){e.setLinkTrackingTimer(c)}c=a("download_extensions");if(c){e.setDownloadExtensions(c)}c=a("hosts_alias");if(c){e.setDomains(c)}c=a("ignore_classes");if(c){e.setIgnoreClasses(c)}e.trackPageView();if(a("install_tracker")){piwik_track=function(i,k,j,h){e.setSiteId(k);e.setTrackerUrl(j);e.trackLink(i,h)};e.enableLinkTracking()}}}
/*!! @license-end */; \ No newline at end of file