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
diff options
context:
space:
mode:
authorStefan Giehl <stefan@matomo.org>2022-07-04 20:43:45 +0300
committerGitHub <noreply@github.com>2022-07-04 20:43:45 +0300
commitecae3ead0294d744b6a5fbd23d2f78a7f1ec1562 (patch)
tree7c5560480c866b6bebb90f70cceea059e73138cf
parent0562dce34dab49e7ba9f287867b09273643e1af6 (diff)
Use browser client hints for detection (#18843)
* inject client hints in js * use client hints for detection * don't use catch, as yui compressor can't parse it * rebuilt js files * use new version of device detector * more code adjustments * updates expected test files * improve js * fix header detection * improve cache key handling * fix tests * use a separate queue to wait for client hints if needed * try to fix js tests * also consider X_HTTP_REQUESTED_WITH header as client hints * updates expected test files * Extend demo detection with client hints * code improvements * use new version of matomo-php-tracker * Adds test case for client hints set through matomo php tracker * apply review feedback * submodule update * fix test
-rw-r--r--composer.json4
-rw-r--r--composer.lock24
-rw-r--r--core/Cookie.php2
-rw-r--r--core/DeviceDetector/DeviceDetectorFactory.php46
-rw-r--r--core/Http.php18
-rw-r--r--core/SupportedBrowser.php3
-rw-r--r--core/Tracker/Request.php9
-rw-r--r--core/Tracker/Settings.php2
-rw-r--r--core/Tracker/VisitExcluded.php2
-rw-r--r--js/piwik.js84
-rw-r--r--js/piwik.min.js73
-rw-r--r--matomo.js73
-rw-r--r--piwik.js73
-rw-r--r--plugins/API/tests/System/expected/test_AutoSuggestAPITest_browserName__API.getSuggestedValuesForSegment.xml4
-rw-r--r--plugins/API/tests/System/expected/test_AutoSuggestAPITest_operatingSystemName__API.getSuggestedValuesForSegment.xml2
m---------plugins/DeviceDetectorCache0
-rw-r--r--plugins/DevicesDetection/Columns/Base.php4
-rw-r--r--plugins/DevicesDetection/Columns/BrowserEngine.php3
-rw-r--r--plugins/DevicesDetection/Columns/BrowserName.php3
-rw-r--r--plugins/DevicesDetection/Columns/BrowserVersion.php3
-rw-r--r--plugins/DevicesDetection/Columns/ClientType.php3
-rw-r--r--plugins/DevicesDetection/Columns/DeviceBrand.php3
-rw-r--r--plugins/DevicesDetection/Columns/DeviceModel.php3
-rw-r--r--plugins/DevicesDetection/Columns/DeviceType.php3
-rw-r--r--plugins/DevicesDetection/Columns/Os.php3
-rw-r--r--plugins/DevicesDetection/Columns/OsVersion.php3
-rw-r--r--plugins/DevicesDetection/Controller.php5
-rw-r--r--plugins/DevicesDetection/lang/en.json3
-rw-r--r--plugins/DevicesDetection/templates/detection.twig58
-rw-r--r--plugins/DevicesDetection/tests/Fixtures/MultiDeviceGoalConversions.php2
-rw-r--r--plugins/DevicesDetection/tests/System/GoalReportForDevicesTest.php15
-rw-r--r--plugins/DevicesDetection/tests/System/expected/test___DevicesDetection.getOsVersions_day.xml94
-rw-r--r--tests/PHPUnit/System/expected/test_apiGetReportMetadata__API.getSegmentsMetadata.xml2
-rw-r--r--tests/PHPUnit/System/expected/test_reportLimitingdimension_2_rankingQuery__CustomDimensions.getCustomDimension_day.xml4
-rw-r--r--tests/javascript/index.php5
-rw-r--r--tests/javascript/matomo.php5
36 files changed, 460 insertions, 183 deletions
diff --git a/composer.json b/composer.json
index f1dd539490..f56540db8e 100644
--- a/composer.json
+++ b/composer.json
@@ -39,9 +39,9 @@
"lox/xhprof": "dev-master",
"matomo/cache": "~2.0",
"matomo/decompress": "~2.0",
- "matomo/device-detector": "^5.0",
+ "matomo/device-detector": "~6.0.0",
"matomo/ini": "~3.0",
- "matomo/matomo-php-tracker": "^3.0",
+ "matomo/matomo-php-tracker": "~3.1.0",
"matomo/network": "~2.0",
"matomo/referrer-spam-list": "dev-master",
"matomo/searchengine-and-social-list": "~3.0",
diff --git a/composer.lock b/composer.lock
index 2db8db7297..05e19ee641 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "f7f3caa46d358cadcbf0094f477b2cea",
+ "content-hash": "da1fc0afe262e854dd151a9a470d6777",
"packages": [
{
"name": "composer/ca-bundle",
@@ -398,16 +398,16 @@
},
{
"name": "matomo/device-detector",
- "version": "5.0.5",
+ "version": "6.0.1",
"source": {
"type": "git",
"url": "https://github.com/matomo-org/device-detector.git",
- "reference": "cd1283126b4cf5081fdc0381b5b5e7849333cfa4"
+ "reference": "a745aed40656e54d877f4b89754107a0b12a2a9d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/matomo-org/device-detector/zipball/cd1283126b4cf5081fdc0381b5b5e7849333cfa4",
- "reference": "cd1283126b4cf5081fdc0381b5b5e7849333cfa4",
+ "url": "https://api.github.com/repos/matomo-org/device-detector/zipball/a745aed40656e54d877f4b89754107a0b12a2a9d",
+ "reference": "a745aed40656e54d877f4b89754107a0b12a2a9d",
"shasum": ""
},
"require": {
@@ -463,7 +463,7 @@
"source": "https://github.com/matomo-org/matomo",
"wiki": "https://dev.matomo.org/"
},
- "time": "2022-03-08T09:22:55+00:00"
+ "time": "2022-06-10T08:32:53+00:00"
},
{
"name": "matomo/doctrine-cache-fork",
@@ -603,16 +603,16 @@
},
{
"name": "matomo/matomo-php-tracker",
- "version": "3.0.4",
+ "version": "3.1.0",
"source": {
"type": "git",
"url": "https://github.com/matomo-org/matomo-php-tracker.git",
- "reference": "441d377411296e04558f88c27706545c9524ac2e"
+ "reference": "0001560e0f8986d117099a5ae5b534b924a5466f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/matomo-org/matomo-php-tracker/zipball/441d377411296e04558f88c27706545c9524ac2e",
- "reference": "441d377411296e04558f88c27706545c9524ac2e",
+ "url": "https://api.github.com/repos/matomo-org/matomo-php-tracker/zipball/0001560e0f8986d117099a5ae5b534b924a5466f",
+ "reference": "0001560e0f8986d117099a5ae5b534b924a5466f",
"shasum": ""
},
"require": {
@@ -655,7 +655,7 @@
"issues": "https://github.com/matomo-org/matomo-php-tracker/issues",
"source": "https://github.com/matomo-org/matomo-php-tracker"
},
- "time": "2021-11-15T18:55:52+00:00"
+ "time": "2022-07-04T15:15:27+00:00"
},
{
"name": "matomo/network",
@@ -4494,5 +4494,5 @@
"platform-overrides": {
"php": "7.2.9"
},
- "plugin-api-version": "2.3.0"
+ "plugin-api-version": "2.2.0"
}
diff --git a/core/Cookie.php b/core/Cookie.php
index 6ce81416e4..e5ec99916f 100644
--- a/core/Cookie.php
+++ b/core/Cookie.php
@@ -456,7 +456,7 @@ class Cookie
} else {
$userAgent = Http::getUserAgent();
$ddFactory = StaticContainer::get(\Piwik\DeviceDetector\DeviceDetectorFactory::class);
- $deviceDetector = $ddFactory->makeInstance($userAgent);
+ $deviceDetector = $ddFactory->makeInstance($userAgent, Http::getClientHintsFromServerVariables());
$deviceDetector->parse();
$browserFamily = \DeviceDetector\Parser\Client\Browser::getBrowserFamily($deviceDetector->getClient('short_name'));
diff --git a/core/DeviceDetector/DeviceDetectorFactory.php b/core/DeviceDetector/DeviceDetectorFactory.php
index bc81a74a57..5902f4fae8 100644
--- a/core/DeviceDetector/DeviceDetectorFactory.php
+++ b/core/DeviceDetector/DeviceDetectorFactory.php
@@ -1,4 +1,5 @@
<?php
+
/**
* Matomo - free/libre analytics platform
*
@@ -6,50 +7,65 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
+
namespace Piwik\DeviceDetector;
+use DeviceDetector\ClientHints;
use DeviceDetector\DeviceDetector;
use Piwik\Container\StaticContainer;
class DeviceDetectorFactory
{
- protected static $deviceDetectorInstances = array();
+ protected static $deviceDetectorInstances = [];
/**
* Returns an instance of DeviceDetector for the given user agent. Uses template method pattern
* and calls getDeviceDetectionInfo() when it doesn't find a matching instance in the cache.
* @param string $userAgent
- * @return DeviceDetector|mixed
+ * @param array $clientHints
+ * @return DeviceDetector
*/
- public function makeInstance($userAgent)
+ public function makeInstance($userAgent, array $clientHints = [])
{
- $userAgent = self::getNormalizedUserAgent($userAgent);
+ $cacheKey = self::getNormalizedUserAgent($userAgent, $clientHints);
- if (array_key_exists($userAgent, self::$deviceDetectorInstances)) {
- return self::$deviceDetectorInstances[$userAgent];
+ if (array_key_exists($cacheKey, self::$deviceDetectorInstances)) {
+ return self::$deviceDetectorInstances[$cacheKey];
}
- $deviceDetector = $this->getDeviceDetectionInfo($userAgent);
+ $deviceDetector = $this->getDeviceDetectionInfo($userAgent, $clientHints);
- self::$deviceDetectorInstances[$userAgent] = $deviceDetector;
+ self::$deviceDetectorInstances[$cacheKey] = $deviceDetector;
return $deviceDetector;
}
- public static function getNormalizedUserAgent($userAgent)
+ public static function getNormalizedUserAgent($userAgent, array $clientHints = [])
{
- return mb_substr(trim($userAgent), 0, 500);
+ $normalizedClientHints = '';
+ if (is_array($clientHints) && count($clientHints)) {
+ $hints = ClientHints::factory($clientHints);
+ $brands = $hints->getBrandList();
+ ksort($brands);
+
+ // we only take the (sorted) list of brand, os + version and model name into account, as the other values
+ // are actually not used and should not change the result
+ $normalizedClientHints = md5(json_encode($brands) . $hints->getOperatingSystem() . $hints->getOperatingSystemVersion() . $hints->getModel());
+ }
+
+ return mb_substr($normalizedClientHints . trim($userAgent), 0, 500);
}
/**
* Creates a new DeviceDetector for the user agent. Called by makeInstance() when no matching instance
* was found in the cache.
- * @param $userAgent
+ * @param string $userAgent
+ * @param array $clientHints
* @return DeviceDetector
*/
- protected function getDeviceDetectionInfo($userAgent)
+ protected function getDeviceDetectionInfo($userAgent, array $clientHints = [])
{
- $deviceDetector = new DeviceDetector($userAgent);
+ $deviceDetector = new DeviceDetector($userAgent, ClientHints::factory($clientHints));
$deviceDetector->discardBotInformation();
$deviceDetector->setCache(StaticContainer::get('DeviceDetector\Cache\Cache'));
$deviceDetector->parse();
@@ -58,6 +74,6 @@ class DeviceDetectorFactory
public static function clearInstancesCache()
{
- self::$deviceDetectorInstances = array();
+ self::$deviceDetectorInstances = [];
}
-} \ No newline at end of file
+}
diff --git a/core/Http.php b/core/Http.php
index 6d0117a935..c598b82e63 100644
--- a/core/Http.php
+++ b/core/Http.php
@@ -993,6 +993,24 @@ class Http
: 'Matomo/' . Version::VERSION;
}
+ public static function getClientHintsFromServerVariables(): array
+ {
+ $clientHints = [];
+
+ foreach ($_SERVER as $key => $value) {
+ if (
+ 0 === strpos(strtolower($key), strtolower('HTTP_SEC_CH_UA'))
+ || 'X_HTTP_REQUESTED_WITH' === strtoupper($key)
+ ) {
+ $clientHints[$key] = $value;
+ }
+ }
+
+ ksort($clientHints);
+
+ return $clientHints;
+ }
+
/**
* Fetches a file located at `$url` and saves it to `$destinationPath`.
*
diff --git a/core/SupportedBrowser.php b/core/SupportedBrowser.php
index 3f9f195df0..f2a7cbb133 100644
--- a/core/SupportedBrowser.php
+++ b/core/SupportedBrowser.php
@@ -9,7 +9,6 @@
namespace Piwik;
-use Piwik\Piwik;
use Piwik\Container\StaticContainer;
use Piwik\DeviceDetector\DeviceDetectorFactory;
use Piwik\Exception\NotSupportedBrowserException;
@@ -44,7 +43,7 @@ class SupportedBrowser
$ddFactory = StaticContainer::get(DeviceDetectorFactory::class);
/** @var \DeviceDetector\DeviceDetector */
- $deviceDetector = $ddFactory->makeInstance($userAgent);
+ $deviceDetector = $ddFactory->makeInstance($userAgent, Http::getClientHintsFromServerVariables());
$deviceDetector->parse();
$client = $deviceDetector->getClient();
diff --git a/core/Tracker/Request.php b/core/Tracker/Request.php
index 2b1496f451..50a8fa87e4 100644
--- a/core/Tracker/Request.php
+++ b/core/Tracker/Request.php
@@ -14,6 +14,7 @@ use Piwik\Container\StaticContainer;
use Piwik\Cookie;
use Piwik\Exception\InvalidRequestParameterException;
use Piwik\Exception\UnexpectedWebsiteFoundException;
+use Piwik\Http;
use Piwik\IP;
use Matomo\Network\IPUtils;
use Piwik\Piwik;
@@ -634,6 +635,14 @@ class Request
return Common::getRequestVar('ua', $default, 'string', $this->params);
}
+ public function getClientHints()
+ {
+ // use headers as default if no data was send with the tracking request
+ $default = Http::getClientHintsFromServerVariables();
+
+ return Common::getRequestVar('uadata', $default, 'json', $this->params);
+ }
+
public function shouldUseThirdPartyCookie()
{
return TrackerConfig::getConfigValue('use_third_party_id_cookie', $this->getIdSiteIfExists());
diff --git a/core/Tracker/Settings.php b/core/Tracker/Settings.php
index 74a66d0c65..cf1eba210d 100644
--- a/core/Tracker/Settings.php
+++ b/core/Tracker/Settings.php
@@ -39,7 +39,7 @@ class Settings // TODO: merge w/ visitor recognizer or make it it's own service.
$userAgent = $request->getUserAgent();
- $deviceDetector = StaticContainer::get(DeviceDetectorFactory::class)->makeInstance($userAgent);
+ $deviceDetector = StaticContainer::get(DeviceDetectorFactory::class)->makeInstance($userAgent, $request->getClientHints());
$aBrowserInfo = $deviceDetector->getClient();
if (empty($aBrowserInfo['type']) || 'browser' !== $aBrowserInfo['type']) {
diff --git a/core/Tracker/VisitExcluded.php b/core/Tracker/VisitExcluded.php
index 8d412cef26..ca6d64c7c5 100644
--- a/core/Tracker/VisitExcluded.php
+++ b/core/Tracker/VisitExcluded.php
@@ -190,7 +190,7 @@ class VisitExcluded
{
$allowBots = $this->request->getParam('bots');
- $deviceDetector = StaticContainer::get(DeviceDetectorFactory::class)->makeInstance($this->userAgent );
+ $deviceDetector = StaticContainer::get(DeviceDetectorFactory::class)->makeInstance($this->userAgent, $this->request->getClientHints());
return !$allowBots
&& ($deviceDetector->isBot() || $this->isIpInRange());
diff --git a/js/piwik.js b/js/piwik.js
index 0bc90bee21..e4751f1e92 100644
--- a/js/piwik.js
+++ b/js/piwik.js
@@ -45,6 +45,7 @@
event, which, button, srcElement, type, target, data,
parentNode, tagName, hostname, className,
userAgent, cookieEnabled, sendBeacon, platform, mimeTypes, enabledPlugin, javaEnabled,
+ userAgentData, getHighEntropyValues, brands, uaFullVersion, fullVersionList,
serviceWorker, ready, then, sync, register,
XMLHttpRequest, ActiveXObject, open, setRequestHeader, onreadystatechange, send, readyState, status,
getTime, getTimeAlias, setTime, toGMTString, getHours, getMinutes, getSeconds,
@@ -2377,6 +2378,11 @@ if (typeof window.Matomo !== 'object') {
// Browser features via client-side data collection
browserFeatures = {},
+ // Browser client hints
+ clientHints = {},
+ clientHintsRequestQueue = [],
+ clientHintsResolved = false,
+
// Keeps track of previously tracked content impressions
trackedContentImpressions = [],
isTrackOnlyVisibleContentEnabled = false,
@@ -3032,10 +3038,65 @@ if (typeof window.Matomo !== 'object') {
}
}
+ function injectClientHints(request) {
+ if (!clientHints) {
+ return request;
+ }
+
+ var i, appendix = '&uadata=' + encodeWrapper(windowAlias.JSON.stringify(clientHints));
+
+ if (request instanceof Array) {
+ for (i = 0; i < request.length; i++) {
+ request[i] += appendix;
+ }
+ } else {
+ request += appendix;
+ }
+
+ return request;
+ }
+
+ function detectClientHints (callback) {
+ if (!configBrowserFeatureDetection || !isDefined(navigatorAlias.userAgentData) || !isFunction(navigatorAlias.userAgentData.getHighEntropyValues)) {
+ callback();
+ return;
+ }
+
+ // Initialize with low entropy values that are always available
+ clientHints = {
+ brands: navigatorAlias.userAgentData.brands,
+ platform: navigatorAlias.userAgentData.platform
+ };
+
+ // try to gather high entropy values
+ // currently this methods simply returns the requested values through a Promise
+ // In later versions it might require a user permission
+ navigatorAlias.userAgentData.getHighEntropyValues(
+ ['brands', 'model', 'platform', 'platformVersion', 'uaFullVersion', 'fullVersionList']
+ ).then(function(ua) {
+ var i;
+ if (ua.fullVersionList) {
+ // if fullVersionList is available, brands and uaFullVersion isn't needed
+ delete ua.brands;
+ delete ua.uaFullVersion;
+ }
+
+ clientHints = ua;
+ callback();
+ }, function (message) {
+ callback();
+ });
+ }
+
/*
* Send request
*/
function sendRequest(request, delay, callback) {
+ if (!clientHintsResolved) {
+ clientHintsRequestQueue.push(request);
+ return;
+ }
+
refreshConsentStatus();
if (!configHasConsent) {
consentRequestsQueue.push(request);
@@ -3049,8 +3110,9 @@ if (typeof window.Matomo !== 'object') {
request += '&consent=1';
}
- makeSureThereIsAGapAfterFirstTrackingRequestToPreventMultipleVisitorCreation(function () {
+ request = injectClientHints(request);
+ makeSureThereIsAGapAfterFirstTrackingRequestToPreventMultipleVisitorCreation(function () {
if (configAlwaysUseSendBeacon && sendPostRequestViaSendBeacon(request, callback, true)) {
setExpireDateTime(100);
return;
@@ -3105,6 +3167,11 @@ if (typeof window.Matomo !== 'object') {
return;
}
+ if (!clientHintsResolved) {
+ clientHintsRequestQueue.push(requests);
+ return;
+ }
+
if (!configHasConsent) {
consentRequestsQueue.push(requests);
return;
@@ -3117,7 +3184,7 @@ if (typeof window.Matomo !== 'object') {
var i = 0, bulk;
for (i; i < chunks.length; i++) {
- bulk = '{"requests":["?' + chunks[i].join('","?') + '"],"send_image":0}';
+ bulk = '{"requests":["?' + injectClientHints(chunks[i]).join('","?') + '"],"send_image":0}';
if (configAlwaysUseSendBeacon && sendPostRequestViaSendBeacon(bulk, null, false)) {
// makes sure to load the next page faster by not waiting as long
// we apply this once we know send beacon works
@@ -3176,6 +3243,19 @@ if (typeof window.Matomo !== 'object') {
* Browser features (plugins, resolution, cookies)
*/
function detectBrowserFeatures() {
+ detectClientHints(function() {
+ var i, requestType;
+ clientHintsResolved = true;
+ for (i = 0; i < clientHintsRequestQueue.length; i++) {
+ requestType = typeof clientHintsRequestQueue[i];
+ if (requestType === 'string') {
+ sendRequest(clientHintsRequestQueue[i], configTrackerPause);
+ } else if (requestType === 'object') {
+ sendBulkRequest(clientHintsRequestQueue[i], configTrackerPause);
+ }
+ }
+ clientHintsRequestQueue = [];
+ });
// Browser Feature is disabled return empty object
if (!configBrowserFeatureDetection) {
diff --git a/js/piwik.min.js b/js/piwik.min.js
index 6893f82409..58e9482f66 100644
--- a/js/piwik.min.js
+++ b/js/piwik.min.js
@@ -29,42 +29,43 @@ at=ai.findFirstNodeHavingAttribute(au,this.CONTENT_PIECE_ATTR);if(!at){at=ai.fin
}if(aw){aw+="&ca=1"}return aw},buildContentBlock:function(av){if(!av){return}var at=this.findContentName(av);var au=this.findContentPiece(av);var aw=this.findContentTarget(av);at=this.trim(at);au=this.trim(au);aw=this.trim(aw);return{name:at||"Unknown",piece:au||"Unknown",target:aw||""}},collectContent:function(aw){if(!aw||!aw.length){return[]}var av=[];var at,au;for(at=0;at<aw.length;at++){au=this.buildContentBlock(aw[at]);if(M(au)){av.push(au)}}return av},setLocation:function(at){this.location=at},getLocation:function(){var at=this.location||W.location;if(!at.origin){at.origin=at.protocol+"//"+at.hostname+(at.port?":"+at.port:"")}return at},toAbsoluteUrl:function(au){if((!au||String(au)!==au)&&au!==""){return au}if(""===au){return this.getLocation().href}if(au.search(/^\/\//)!==-1){return this.getLocation().protocol+au}if(au.search(/:\/\//)!==-1){return au}if(0===au.indexOf("#")){return this.getLocation().origin+this.getLocation().pathname+au}if(0===au.indexOf("?")){return this.getLocation().origin+this.getLocation().pathname+au
}if(0===au.search("^[a-zA-Z]{2,11}:")){return au}if(au.search(/^\//)!==-1){return this.getLocation().origin+au}var at="(.*/)";var av=this.getLocation().origin+this.getLocation().pathname.match(new RegExp(at))[0];return av+au},isUrlToCurrentDomain:function(au){var av=this.toAbsoluteUrl(au);if(!av){return false}var at=this.getLocation().origin;if(at===av){return true}if(0===String(av).indexOf(at)){if(":"===String(av).substr(at.length,1)){return false}return true}return false},setHrefAttribute:function(au,at){if(!au||!at){return}ai.setAnyAttribute(au,"href",at)},shouldIgnoreInteraction:function(at){if(ai.hasNodeAttribute(at,this.CONTENT_IGNOREINTERACTION_ATTR)){return true}if(ai.hasNodeCssClass(at,this.CONTENT_IGNOREINTERACTION_CLASS)){return true}if(ai.hasNodeCssClass(at,this.LEGACY_CONTENT_IGNOREINTERACTION_CLASS)){return true}return false}};function aa(au,ax){if(ax){return ax}au=w.toAbsoluteUrl(au);if(A(au,"?")){var aw=au.indexOf("?");au=au.slice(0,aw)}if(U(au,"matomo.php")){au=f(au,"matomo.php".length)
}else{if(U(au,"piwik.php")){au=f(au,"piwik.php".length)}else{if(U(au,".php")){var at=au.lastIndexOf("/");var av=1;au=au.slice(0,at+av)}}}if(U(au,"/js/")){au=f(au,"js/".length)}return au}function R(az){var aB="Matomo_Overlay";var au=new RegExp("index\\.php\\?module=Overlay&action=startOverlaySession&idSite=([0-9]+)&period=([^&]+)&date=([^&]+)(&segment=[^&]*)?");var av=au.exec(J.referrer);if(av){var ax=av[1];if(ax!==String(az)){return false}var ay=av[2],at=av[3],aw=av[4];if(!aw){aw=""}else{if(aw.indexOf("&segment=")===0){aw=aw.substr("&segment=".length)}}W.name=aB+"###"+ay+"###"+at+"###"+aw}var aA=W.name.split("###");return aA.length===4&&aA[0]===aB}function ad(au,az,av){var ay=W.name.split("###"),ax=ay[1],at=ay[2],aw=ay[3],aA=aa(au,az);o(aA+"plugins/Overlay/client/client.js?v=1",function(){Matomo_Overlay_Client.initialize(aA,av,ax,at,aw)})}function v(){var av;try{av=W.frameElement}catch(au){return true}if(M(av)){return(av&&String(av.nodeName).toLowerCase()==="iframe")?true:false}try{return W.self!==W.top
-}catch(at){return true}}function T(cj,cf){var bP=this,bj="mtm_consent",cN="mtm_cookie_consent",cW="mtm_consent_removed",ca=ae(J.domain,W.location.href,N()),c4=O(ca[0]),bT=p(ca[1]),bu=p(ca[2]),c2=false,cn="GET",dm=cn,aM="application/x-www-form-urlencoded; charset=UTF-8",cF=aM,aI=cj||"",bO="",db="",ct="",cc=cf||"",bF="",bU="",ba,bp="",di=["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","rtf","sea","sit","tar","tbz","tbz2","bz","bz2","tgz","torrent","txt","wav","wma","wmv","wpd","xls","xlsx","xml","z","zip"],aC=[c4],bG=[],cG=[],co=[],bR=[],be=[],bQ=500,c7=true,cT,bb,bX,bV,at,cw=["pk_campaign","mtm_campaign","piwik_campaign","matomo_campaign","utm_campaign","utm_source","utm_medium"],bN=["pk_kwd","mtm_kwd","piwik_kwd","matomo_kwd","utm_term"],bq="_pk_",az="pk_vid",a5=180,c9,bw,bY=false,aN="Lax",bs=false,c0,bk,bC,cU=33955200000,cu=1800000,dh=15768000000,a8=true,bL=false,bn=false,bW=false,aV=false,ch,b2={},cs={},bt={},bA=200,cB={},dc={},dj={},cg=[],ck=false,cL=false,au=false,dk=false,cX=false,aS=false,bi=v(),cH=null,da=null,aW,bI,cd=aq,bv,aQ,bH=false,cy=0,bB=["id","ses","cvar","ref"],cK=false,bJ=null,cV=[],cA=[],aB=X++,aA=false,c8=true;
-try{bp=J.title}catch(cI){bp=""}function aH(dy){if(bs){return 0}var dw=new RegExp("(^|;)[ ]*"+dy+"=([^;]*)"),dx=dw.exec(J.cookie);return dx?V(dx[2]):0}bJ=!aH(cW);function dr(dA,dB,dE,dD,dy,dz,dC){if(bs&&dA!==cW){return}var dx;if(dE){dx=new Date();dx.setTime(dx.getTime()+dE)}if(!dC){dC="Lax"}J.cookie=dA+"="+t(dB)+(dE?";expires="+dx.toGMTString():"")+";path="+(dD||"/")+(dy?";domain="+dy:"")+(dz?";secure":"")+";SameSite="+dC;if((!dE||dE>=0)&&aH(dA)!==String(dB)){var dw="There was an error setting cookie `"+dA+"`. Please check domain and path.";ao(dw)}}function b8(dw){var dy,dx;dw=j(dw,az);for(dx=0;dx<co.length;dx++){dw=j(dw,co[dx])}if(bV){dy=new RegExp("#.*");return dw.replace(dy,"")}return dw}function b1(dy,dw){var dz=s(dw),dx;if(dz){return dw}if(dw.slice(0,1)==="/"){return s(dy)+"://"+d(dy)+dw}dy=b8(dy);dx=dy.indexOf("?");if(dx>=0){dy=dy.slice(0,dx)}dx=dy.lastIndexOf("/");if(dx!==dy.length-1){dy=dy.slice(0,dx+1)}return dy+dw}function cR(dy,dw){var dx;dy=String(dy).toLowerCase();dw=String(dw).toLowerCase();
-if(dy===dw){return true}if(dw.slice(0,1)==="."){if(dy===dw.slice(1)){return true}dx=dy.length-dw.length;if((dx>0)&&(dy.slice(dx)===dw)){return true}}return false}function cr(dw){var dx=document.createElement("a");if(dw.indexOf("//")!==0&&dw.indexOf("http")!==0){if(dw.indexOf("*")===0){dw=dw.substr(1)}if(dw.indexOf(".")===0){dw=dw.substr(1)}dw="http://"+dw}dx.href=w.toAbsoluteUrl(dw);if(dx.pathname){return dx.pathname}return""}function a9(dx,dw){if(!an(dw,"/")){dw="/"+dw}if(!an(dx,"/")){dx="/"+dx}var dy=(dw==="/"||dw==="/*");if(dy){return true}if(dx===dw){return true}dw=String(dw).toLowerCase();dx=String(dx).toLowerCase();if(U(dw,"*")){dw=dw.slice(0,-1);dy=(!dw||dw==="/");if(dy){return true}if(dx===dw){return true}return dx.indexOf(dw)===0}if(!U(dx,"/")){dx+="/"}if(!U(dw,"/")){dw+="/"}return dx.indexOf(dw)===0}function aw(dA,dC){var dx,dw,dy,dz,dB;for(dx=0;dx<aC.length;dx++){dz=O(aC[dx]);dB=cr(aC[dx]);if(cR(dA,dz)&&a9(dC,dB)){return true}}return false}function a1(dz){var dx,dw,dy;for(dx=0;
-dx<aC.length;dx++){dw=O(aC[dx].toLowerCase());if(dz===dw){return true}if(dw.slice(0,1)==="."){if(dz===dw.slice(1)){return true}dy=dz.length-dw.length;if((dy>0)&&(dz.slice(dy)===dw)){return true}}}return false}function cx(dw){var dx,dz,dB,dy,dA;if(!dw.length||!cG.length){return false}dz=d(dw);dB=cr(dw);if(dz.indexOf("www.")===0){dz=dz.substr(4)}for(dx=0;dx<cG.length;dx++){dy=O(cG[dx]);dA=cr(cG[dx]);if(dy.indexOf("www.")===0){dy=dy.substr(4)}if(cR(dz,dy)&&a9(dB,dA)){return true}}return false}function cv(dw,dy){dw=dw.replace("send_image=0","send_image=1");var dx=new Image(1,1);dx.onload=function(){H=0;if(typeof dy==="function"){dy({request:dw,trackerUrl:aI,success:true})}};dx.onerror=function(){if(typeof dy==="function"){dy({request:dw,trackerUrl:aI,success:false})}};dx.src=aI+(aI.indexOf("?")<0?"?":"&")+dw}function cO(dw){if(dm==="POST"){return true}return dw&&(dw.length>2000||dw.indexOf('{"requests"')===0)}function aP(){return"object"===typeof g&&"function"===typeof g.sendBeacon&&"function"===typeof Blob
-}function bc(dA,dD,dC){var dy=aP();if(!dy){return false}var dz={type:"application/x-www-form-urlencoded; charset=UTF-8"};var dE=false;var dx=aI;try{var dw=new Blob([dA],dz);if(dC&&!cO(dA)){dw=new Blob([],dz);dx=dx+(dx.indexOf("?")<0?"?":"&")+dA}dE=g.sendBeacon(dx,dw)}catch(dB){return false}if(dE&&typeof dD==="function"){dD({request:dA,trackerUrl:aI,success:true,isSendBeacon:true})}return dE}function dg(dx,dy,dw){if(!M(dw)||null===dw){dw=true}if(m&&bc(dx,dy,dw)){return}setTimeout(function(){if(m&&bc(dx,dy,dw)){return}var dB;try{var dA=W.XMLHttpRequest?new W.XMLHttpRequest():W.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):null;dA.open("POST",aI,true);dA.onreadystatechange=function(){if(this.readyState===4&&!(this.status>=200&&this.status<300)){var dC=m&&bc(dx,dy,dw);if(!dC&&dw){cv(dx,dy)}else{if(typeof dy==="function"){dy({request:dx,trackerUrl:aI,success:false,xhr:this})}}}else{if(this.readyState===4&&(typeof dy==="function")){dy({request:dx,trackerUrl:aI,success:true,xhr:this})}}};
-dA.setRequestHeader("Content-Type",cF);dA.withCredentials=true;dA.send(dx)}catch(dz){dB=m&&bc(dx,dy,dw);if(!dB&&dw){cv(dx,dy)}else{if(typeof dy==="function"){dy({request:dx,trackerUrl:aI,success:false})}}}},50)}function cl(dx){var dw=new Date();var dy=dw.getTime()+dx;if(!r||dy>r){r=dy}}function bg(){bi=true;cH=new Date().getTime()}function dq(){var dw=new Date().getTime();return !cH||(dw-cH)>bb}function aD(){if(dq()){bX()}}function a0(){if(J.visibilityState==="hidden"&&dq()){bX()}else{if(J.visibilityState==="visible"){cH=new Date().getTime()}}}function dt(){if(aS||!bb){return}aS=true;ar(W,"focus",bg);ar(W,"blur",aD);ar(W,"visibilitychange",a0);af++;u.addPlugin("HeartBeat"+af,{unload:function(){if(aS&&dq()){bX()}}})}function cM(dA){var dx=new Date();var dw=dx.getTime();da=dw;if(cL&&dw<cL){var dy=cL-dw;setTimeout(dA,dy);cl(dy+50);cL+=50;return}if(cL===false){var dz=800;cL=dw+dz}dA()}function aT(){if(aH(cW)){bJ=false}else{if(aH(bj)){bJ=true}}}function bM(dx,dw,dy){aT();if(!bJ){cV.push(dx);
-return}aA=true;if(!c0&&dx){if(cK&&bJ){dx+="&consent=1"}cM(function(){if(c7&&bc(dx,dy,true)){cl(100);return}if(cO(dx)){dg(dx,dy)}else{cv(dx,dy)}cl(dw)})}if(!aS){dt()}}function cq(dw){if(c0){return false}return(dw&&dw.length)}function df(dw,dA){if(!dA||dA>=dw.length){return[dw]}var dx=0;var dy=dw.length;var dz=[];for(dx;dx<dy;dx+=dA){dz.push(dw.slice(dx,dx+dA))}return dz}function ds(dx,dw){if(!cq(dx)){return}if(!bJ){cV.push(dx);return}aA=true;cM(function(){var dA=df(dx,50);var dy=0,dz;for(dy;dy<dA.length;dy++){dz='{"requests":["?'+dA[dy].join('","?')+'"],"send_image":0}';if(c7&&bc(dz,null,false)){cl(100)}else{dg(dz,null,false)}}cl(dw)})}function aY(dw){return bq+dw+"."+cc+"."+bv}function b5(dy,dx,dw){dr(dy,"",-129600000,dx,dw)}function cb(){if(bs){return"0"}if(!M(W.showModalDialog)&&M(g.cookieEnabled)){return g.cookieEnabled?"1":"0"}var dw=bq+"testcookie";dr(dw,"1",undefined,bw,c9,bY,aN);var dx=aH(dw)==="1"?"1":"0";b5(dw);return dx}function bo(){bv=cd((c9||c4)+(bw||"/")).slice(0,4)}function cS(){if(!c8){return{}
-}if(M(dj.res)){return dj}var dx,dz,dA={pdf:"application/pdf",qt:"video/quicktime",realp:"audio/x-pn-realaudio-plugin",wma:"application/x-mplayer2",fla:"application/x-shockwave-flash",java:"application/x-java-vm",ag:"application/x-silverlight"};if(!((new RegExp("MSIE")).test(g.userAgent))){if(g.mimeTypes&&g.mimeTypes.length){for(dx in dA){if(Object.prototype.hasOwnProperty.call(dA,dx)){dz=g.mimeTypes[dA[dx]];dj[dx]=(dz&&dz.enabledPlugin)?"1":"0"}}}if(!((new RegExp("Edge[ /](\\d+[\\.\\d]+)")).test(g.userAgent))&&typeof navigator.javaEnabled!=="unknown"&&M(g.javaEnabled)&&g.javaEnabled()){dj.java="1"}if(!M(W.showModalDialog)&&M(g.cookieEnabled)){dj.cookie=g.cookieEnabled?"1":"0"}else{dj.cookie=cb()}}var dy=parseInt(ab.width,10);var dw=parseInt(ab.height,10);dj.res=parseInt(dy,10)+"x"+parseInt(dw,10);return dj}function b3(){var dx=aY("cvar"),dw=aH(dx);if(dw&&dw.length){dw=W.JSON.parse(dw);if(Z(dw)){return dw}}return{}}function cP(){if(aV===false){aV=b3()}}function c1(){var dw=cS();return cd((g.userAgent||"")+(g.platform||"")+W.JSON.stringify(dw)+(new Date()).getTime()+Math.random()).slice(0,16)
-}function aF(){var dw=cS();return cd((g.userAgent||"")+(g.platform||"")+W.JSON.stringify(dw)).slice(0,6)}function bl(){return Math.floor((new Date()).getTime()/1000)}function aO(){var dx=bl();var dy=aF();var dw=String(dx)+dy;return dw}function de(dy){dy=String(dy);var dB=aF();var dz=dB.length;var dA=dy.substr(-1*dz,dz);var dx=parseInt(dy.substr(0,dy.length-dz),10);if(dx&&dA&&dA===dB){var dw=bl();if(a5<=0){return true}if(dw>=dx&&dw<=(dx+a5)){return true}}return false}function du(dw){if(!cX){return""}var dA=e(dw,az);if(!dA){return""}dA=String(dA);var dy=new RegExp("^[a-zA-Z0-9]+$");if(dA.length===32&&dy.test(dA)){var dx=dA.substr(16,32);if(de(dx)){var dz=dA.substr(0,16);return dz}}return""}function cY(){if(!bU){bU=du(bT)}var dy=new Date(),dw=Math.round(dy.getTime()/1000),dx=aY("id"),dB=aH(dx),dA,dz;if(dB){dA=dB.split(".");dA.unshift("0");if(bU.length){dA[1]=bU}return dA}if(bU.length){dz=bU}else{if("0"===cb()){dz=""}else{dz=c1()}}dA=["1",dz,dw];return dA}function a4(){var dz=cY(),dx=dz[0],dy=dz[1],dw=dz[2];
-return{newVisitor:dx,uuid:dy,createTs:dw}}function aL(){var dz=new Date(),dx=dz.getTime(),dA=a4().createTs;var dw=parseInt(dA,10);var dy=(dw*1000)+cU-dx;return dy}function aR(dw){if(!cc){return}var dy=new Date(),dx=Math.round(dy.getTime()/1000);if(!M(dw)){dw=a4()}var dz=dw.uuid+"."+dw.createTs+".";dr(aY("id"),dz,aL(),bw,c9,bY,aN)}function bS(){var dw=aH(aY("ref"));if(dw.length){try{dw=W.JSON.parse(dw);if(Z(dw)){return dw}}catch(dx){}}return["","",0,""]}function bD(dy){var dx=bq+"testcookie_domain";var dw="testvalue";dr(dx,dw,10000,null,dy,bY,aN);if(aH(dx)===dw){b5(dx,null,dy);return true}return false}function aJ(){var dx=bs;bs=false;var dw,dy;for(dw=0;dw<bB.length;dw++){dy=aY(bB[dw]);if(dy!==cW&&dy!==bj&&0!==aH(dy)){b5(dy,bw,c9)}}bs=dx}function b9(dw){cc=dw}function dv(dA){if(!dA||!Z(dA)){return}var dz=[];var dy;for(dy in dA){if(Object.prototype.hasOwnProperty.call(dA,dy)){dz.push(dy)}}var dB={};dz.sort();var dw=dz.length;var dx;for(dx=0;dx<dw;dx++){dB[dz[dx]]=dA[dz[dx]]}return dB}function ci(){dr(aY("ses"),"1",cu,bw,c9,bY,aN)
-}function bm(){var dz="";var dx="abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";var dy=dx.length;var dw;for(dw=0;dw<6;dw++){dz+=dx.charAt(Math.floor(Math.random()*dy))}return dz}function aE(dx){if(ct!==""){dx+=ct;bn=true;return dx}if(!h){return dx}var dy=(typeof h.timing==="object")&&h.timing?h.timing:undefined;if(!dy){dy=(typeof h.getEntriesByType==="function")&&h.getEntriesByType("navigation")?h.getEntriesByType("navigation")[0]:undefined}if(!dy){return dx}var dw="";if(dy.connectEnd&&dy.fetchStart){if(dy.connectEnd<dy.fetchStart){return dx}dw+="&pf_net="+Math.round(dy.connectEnd-dy.fetchStart)}if(dy.responseStart&&dy.requestStart){if(dy.responseStart<dy.requestStart){return dx}dw+="&pf_srv="+Math.round(dy.responseStart-dy.requestStart)}if(dy.responseStart&&dy.responseEnd){if(dy.responseEnd<dy.responseStart){return dx}dw+="&pf_tfr="+Math.round(dy.responseEnd-dy.responseStart)}if(M(dy.domLoading)){if(dy.domInteractive&&dy.domLoading){if(dy.domInteractive<dy.domLoading){return dx
-}dw+="&pf_dm1="+Math.round(dy.domInteractive-dy.domLoading)}}else{if(dy.domInteractive&&dy.responseEnd){if(dy.domInteractive<dy.responseEnd){return dx}dw+="&pf_dm1="+Math.round(dy.domInteractive-dy.responseEnd)}}if(dy.domComplete&&dy.domInteractive){if(dy.domComplete<dy.domInteractive){return dx}dw+="&pf_dm2="+Math.round(dy.domComplete-dy.domInteractive)}if(dy.loadEventEnd&&dy.loadEventStart){if(dy.loadEventEnd<dy.loadEventStart){return dx}dw+="&pf_onl="+Math.round(dy.loadEventEnd-dy.loadEventStart)}return dx+dw}function dl(){var dG,dz=new Date(),dA=Math.round(dz.getTime()/1000),dL,dy,dB=1024,dI,dC,dx=aY("ses"),dF=aY("ref"),dE=aH(dx),dw=bS(),dK=ba||bT,dH,dD,dJ={};dH=dw[0];dD=dw[1];dL=dw[2];dy=dw[3];if(!dE){if(!bC||!dH.length){for(dG in cw){if(Object.prototype.hasOwnProperty.call(cw,dG)){dH=e(dK,cw[dG]);if(dH.length){break}}}for(dG in bN){if(Object.prototype.hasOwnProperty.call(bN,dG)){dD=e(dK,bN[dG]);if(dD.length){break}}}}dI=d(bu);dC=dy.length?d(dy):"";if(dI.length&&!a1(dI)&&!cx(bu)&&(!bC||!dC.length||a1(dC)||cx(dy))){dy=bu
-}if(dy.length||dH.length){dL=dA;dw=[dH,dD,dL,b8(dy.slice(0,dB))];dr(dF,W.JSON.stringify(dw),dh,bw,c9,bY,aN)}}if(dH.length){dJ._rcn=t(dH)}if(dD.length){dJ._rck=t(dD)}dJ._refts=dL;if(String(dy).length){dJ._ref=t(b8(dy.slice(0,dB)))}return dJ}function cz(dx,dI,dJ){var dH,dw=new Date(),dG=aV,dC=aY("cvar"),dK=ba||bT;if(bs){aJ()}if(c0){return""}var dD=a4();var dA=J.characterSet||J.charset;if(!dA||dA.toLowerCase()==="utf-8"){dA=null}dx+="&idsite="+cc+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+dw.getHours()+"&m="+dw.getMinutes()+"&s="+dw.getSeconds()+"&url="+t(b8(dK))+(bu.length&&!cx(bu)?"&urlref="+t(b8(bu)):"")+(ac(bF)?"&uid="+t(bF):"")+"&_id="+dD.uuid+"&_idn="+dD.newVisitor+(dA?"&cs="+t(dA):"")+"&send_image=0";var dF=dl();for(dH in dF){if(Object.prototype.hasOwnProperty.call(dF,dH)){dx+="&"+dH+"="+dF[dH]}}var dM=cS();for(dH in dM){if(Object.prototype.hasOwnProperty.call(dM,dH)){dx+="&"+dH+"="+dM[dH]}}var dN=[];if(dI){for(dH in dI){if(Object.prototype.hasOwnProperty.call(dI,dH)&&/^dimension\d+$/.test(dH)){var dy=dH.replace("dimension","");
-dN.push(parseInt(dy,10));dN.push(String(dy));dx+="&"+dH+"="+t(dI[dH]);delete dI[dH]}}}if(dI&&D(dI)){dI=null}for(dH in cB){if(Object.prototype.hasOwnProperty.call(cB,dH)){dx+="&"+dH+"="+t(cB[dH])}}for(dH in bt){if(Object.prototype.hasOwnProperty.call(bt,dH)){var dB=(-1===P(dN,dH));if(dB){dx+="&dimension"+dH+"="+t(bt[dH])}}}if(dI){dx+="&data="+t(W.JSON.stringify(dI))}else{if(at){dx+="&data="+t(W.JSON.stringify(at))}}function dz(dO,dP){var dQ=W.JSON.stringify(dO);if(dQ.length>2){return"&"+dP+"="+t(dQ)}return""}var dL=dv(b2);var dE=dv(cs);dx+=dz(dL,"cvar");dx+=dz(dE,"e_cvar");if(aV){dx+=dz(aV,"_cvar");for(dH in dG){if(Object.prototype.hasOwnProperty.call(dG,dH)){if(aV[dH][0]===""||aV[dH][1]===""){delete aV[dH]}}}if(bW){dr(dC,W.JSON.stringify(aV),cu,bw,c9,bY,aN)}}if(a8&&bL&&!bn){dx=aE(dx);bn=true}if(aQ){dx+="&pv_id="+aQ}aR(dD);ci();dx+=ag(dJ,{tracker:bP,request:dx});if(db.length){dx+="&"+db}if(C(ch)){dx=ch(dx)}return dx}bX=function bd(){var dw=new Date();dw=dw.getTime();if(!da){return false}if(da+bb<=dw){bP.ping();
-return true}return false};function bx(dz,dy,dD,dA,dw,dG){var dC="idgoal=0",dx=new Date(),dE=[],dF,dB=String(dz).length;if(dB){dC+="&ec_id="+t(dz)}dC+="&revenue="+dy;if(String(dD).length){dC+="&ec_st="+dD}if(String(dA).length){dC+="&ec_tx="+dA}if(String(dw).length){dC+="&ec_sh="+dw}if(String(dG).length){dC+="&ec_dt="+dG}if(dc){for(dF in dc){if(Object.prototype.hasOwnProperty.call(dc,dF)){if(!M(dc[dF][1])){dc[dF][1]=""}if(!M(dc[dF][2])){dc[dF][2]=""}if(!M(dc[dF][3])||String(dc[dF][3]).length===0){dc[dF][3]=0}if(!M(dc[dF][4])||String(dc[dF][4]).length===0){dc[dF][4]=1}dE.push(dc[dF])}}dC+="&ec_items="+t(W.JSON.stringify(dE))}dC=cz(dC,at,"ecommerce");bM(dC,bQ);if(dB){dc={}}}function b4(dw,dA,dz,dy,dx,dB){if(String(dw).length&&M(dA)){bx(dw,dA,dz,dy,dx,dB)}}function bz(dw){if(M(dw)){bx("",dw,"","","","")}}function b6(dx,dz,dy){if(!bH){aQ=bm()}var dw=cz("action_name="+t(ap(dx||bp)),dz,"log");if(a8&&!bn){dw=aE(dw)}bM(dw,bQ,dy)}function a6(dy,dx){var dz,dw="(^| )(piwik[_-]"+dx+"|matomo[_-]"+dx;if(dy){for(dz=0;
-dz<dy.length;dz++){dw+="|"+dy[dz]}}dw+=")( |$)";return new RegExp(dw)}function aZ(dw){return(aI&&dw&&0===String(dw).indexOf(aI))}function cD(dA,dw,dB,dx){if(aZ(dw)){return 0}var dz=a6(bR,"download"),dy=a6(be,"link"),dC=new RegExp("\\.("+di.join("|")+")([?&#]|$)","i");if(dy.test(dA)){return"link"}if(dx||dz.test(dA)||dC.test(dw)){return"download"}if(dB){return 0}return"link"}function ay(dx){var dw;dw=dx.parentNode;while(dw!==null&&M(dw)){if(ai.isLinkElement(dx)){break}dx=dw;dw=dx.parentNode}return dx}function dp(dB){dB=ay(dB);if(!ai.hasNodeAttribute(dB,"href")){return}if(!M(dB.href)){return}var dA=ai.getAttributeValueFromNode(dB,"href");var dx=dB.pathname||cr(dB.href);var dC=dB.hostname||d(dB.href);var dD=dC.toLowerCase();var dy=dB.href.replace(dC,dD);var dz=new RegExp("^(javascript|vbscript|jscript|mocha|livescript|ecmascript|mailto|tel):","i");if(!dz.test(dy)){var dw=cD(dB.className,dy,aw(dD,dx),ai.hasNodeAttribute(dB,"download"));if(dw){return{type:dw,href:dy}}}}function aU(dw,dx,dy,dz){var dA=w.buildInteractionRequestParams(dw,dx,dy,dz);
-if(!dA){return}return cz(dA,null,"contentInteraction")}function bh(dw,dx){if(!dw||!dx){return false}var dy=w.findTargetNode(dw);if(w.shouldIgnoreInteraction(dy)){return false}dy=w.findTargetNodeNoDefault(dw);if(dy&&!Y(dy,dx)){return false}return true}function cC(dy,dx,dA){if(!dy){return}var dw=w.findParentContentNode(dy);if(!dw){return}if(!bh(dw,dy)){return}var dz=w.buildContentBlock(dw);if(!dz){return}if(!dz.target&&dA){dz.target=dA}return w.buildInteractionRequestParams(dx,dz.name,dz.piece,dz.target)}function a2(dx){if(!cg||!cg.length){return false}var dw,dy;for(dw=0;dw<cg.length;dw++){dy=cg[dw];if(dy&&dy.name===dx.name&&dy.piece===dx.piece&&dy.target===dx.target){return true}}return false}function a3(dw){return function(dA){if(!dw){return}var dy=w.findParentContentNode(dw);var dx;if(dA){dx=dA.target||dA.srcElement}if(!dx){dx=dw}if(!bh(dy,dx)){return}if(!dy){return false}var dB=w.findTargetNode(dy);if(!dB||w.shouldIgnoreInteraction(dB)){return false}var dz=dp(dB);if(dk&&dz&&dz.type){return dz.type
-}return bP.trackContentInteractionNode(dx,"click")}}function b7(dy){if(!dy||!dy.length){return}var dw,dx;for(dw=0;dw<dy.length;dw++){dx=w.findTargetNode(dy[dw]);if(dx&&!dx.contentInteractionTrackingSetupDone){dx.contentInteractionTrackingSetupDone=true;ar(dx,"click",a3(dx))}}}function bE(dy,dz){if(!dy||!dy.length){return[]}var dw,dx;for(dw=0;dw<dy.length;dw++){if(a2(dy[dw])){dy.splice(dw,1);dw--}else{cg.push(dy[dw])}}if(!dy||!dy.length){return[]}b7(dz);var dA=[];for(dw=0;dw<dy.length;dw++){dx=cz(w.buildImpressionRequestParams(dy[dw].name,dy[dw].piece,dy[dw].target),undefined,"contentImpressions");if(dx){dA.push(dx)}}return dA}function cJ(dx){var dw=w.collectContent(dx);return bE(dw,dx)}function bf(dx){if(!dx||!dx.length){return[]}var dw;for(dw=0;dw<dx.length;dw++){if(!w.isNodeVisible(dx[dw])){dx.splice(dw,1);dw--}}if(!dx||!dx.length){return[]}return cJ(dx)}function aK(dy,dw,dx){var dz=w.buildImpressionRequestParams(dy,dw,dx);return cz(dz,null,"contentImpression")}function dn(dz,dx){if(!dz){return
-}var dw=w.findParentContentNode(dz);var dy=w.buildContentBlock(dw);if(!dy){return}if(!dx){dx="Unknown"}return aU(dx,dy.name,dy.piece,dy.target)}function cZ(dx,dz,dw,dy){return"e_c="+t(dx)+"&e_a="+t(dz)+(M(dw)?"&e_n="+t(dw):"")+(M(dy)?"&e_v="+t(dy):"")+"&ca=1"}function ax(dy,dA,dw,dz,dC,dB){if(!ac(dy)||!ac(dA)){ao("Error while logging event: Parameters `category` and `action` must not be empty or filled with whitespaces");return false}var dx=cz(cZ(dy,dA,dw,dz),dC,"event");bM(dx,bQ,dB)}function ce(dw,dz,dx,dA){var dy=cz("search="+t(dw)+(dz?"&search_cat="+t(dz):"")+(M(dx)?"&search_count="+dx:""),dA,"sitesearch");bM(dy,bQ)}function c3(dw,dA,dz,dy){var dx=cz("idgoal="+dw+(dA?"&revenue="+dA:""),dz,"goal");bM(dx,bQ,dy)}function dd(dz,dw,dD,dC,dy){var dB=dw+"="+t(b8(dz));var dx=cC(dy,"click",dz);if(dx){dB+="&"+dx}var dA=cz(dB,dD,"link");bM(dA,bQ,dC)}function b0(dx,dw){if(dx!==""){return dx+dw.charAt(0).toUpperCase()+dw.slice(1)}return dw}function cm(dB){var dA,dw,dz=["","webkit","ms","moz"],dy;
-if(!bk){for(dw=0;dw<dz.length;dw++){dy=dz[dw];if(Object.prototype.hasOwnProperty.call(J,b0(dy,"hidden"))){if(J[b0(dy,"visibilityState")]==="prerender"){dA=true}break}}}if(dA){ar(J,dy+"visibilitychange",function dx(){J.removeEventListener(dy+"visibilitychange",dx,false);dB()});return}dB()}function by(){var dx=bP.getVisitorId();var dw=aO();return dx+dw}function cp(dw){if(!dw){return}if(!ai.hasNodeAttribute(dw,"href")){return}var dx=ai.getAttributeValueFromNode(dw,"href");if(!dx||aZ(dx)){return}if(!bP.getVisitorId()){return}dx=j(dx,az);var dy=by();dx=I(dx,az,dy);ai.setAnyAttribute(dw,"href",dx)}function br(dz){var dA=ai.getAttributeValueFromNode(dz,"href");if(!dA){return false}dA=String(dA);var dx=dA.indexOf("//")===0||dA.indexOf("http://")===0||dA.indexOf("https://")===0;if(!dx){return false}var dw=dz.pathname||cr(dz.href);var dy=(dz.hostname||d(dz.href)).toLowerCase();if(aw(dy,dw)){if(!cR(c4,O(dy))){return true}return false}return false}function cQ(dw){var dx=dp(dw);if(dx&&dx.type){dx.href=p(dx.href);
-dd(dx.href,dx.type,undefined,null,dw);return}if(cX){dw=ay(dw);if(br(dw)){cp(dw)}}}function cE(){return J.all&&!J.addEventListener}function c5(dw){var dy=dw.which;var dx=(typeof dw.button);if(!dy&&dx!=="undefined"){if(cE()){if(dw.button&1){dy=1}else{if(dw.button&2){dy=3}else{if(dw.button&4){dy=2}}}}else{if(dw.button===0||dw.button==="0"){dy=1}else{if(dw.button&1){dy=2}else{if(dw.button&2){dy=3}}}}}return dy}function bZ(dw){switch(c5(dw)){case 1:return"left";case 2:return"middle";case 3:return"right"}}function a7(dw){return dw.target||dw.srcElement}function c6(dw){return dw==="A"||dw==="AREA"}function aG(dw){function dx(dz){var dA=a7(dz);var dB=dA.nodeName;var dy=a6(bG,"ignore");while(!c6(dB)&&dA&&dA.parentNode){dA=dA.parentNode;dB=dA.nodeName}if(dA&&c6(dB)&&!dy.test(dA.className)){return dA}}return function(dA){dA=dA||W.event;var dB=dx(dA);if(!dB){return}var dz=bZ(dA);if(dA.type==="click"){var dy=false;if(dw&&dz==="middle"){dy=true}if(dB&&!dy){cQ(dB)}}else{if(dA.type==="mousedown"){if(dz==="middle"&&dB){aW=dz;
-bI=dB}else{aW=bI=null}}else{if(dA.type==="mouseup"){if(dz===aW&&dB===bI){cQ(dB)}aW=bI=null}else{if(dA.type==="contextmenu"){cQ(dB)}}}}}}function av(dz,dy,dw){var dx=typeof dy;if(dx==="undefined"){dy=true}ar(dz,"click",aG(dy),dw);if(dy){ar(dz,"mouseup",aG(dy),dw);ar(dz,"mousedown",aG(dy),dw);ar(dz,"contextmenu",aG(dy),dw)}}function aX(dx,dA,dB){if(ck){return true}ck=true;var dC=false;var dz,dy;function dw(){dC=true}n(function(){function dD(dF){setTimeout(function(){if(!ck){return}dC=false;dB.trackVisibleContentImpressions();dD(dF)},dF)}function dE(dF){setTimeout(function(){if(!ck){return}if(dC){dC=false;dB.trackVisibleContentImpressions()}dE(dF)},dF)}if(dx){dz=["scroll","resize"];for(dy=0;dy<dz.length;dy++){if(J.addEventListener){J.addEventListener(dz[dy],dw,false)}else{W.attachEvent("on"+dz[dy],dw)}}dE(100)}if(dA&&dA>0){dA=parseInt(dA,10);dD(dA)}})}var bK={enabled:true,requests:[],timeout:null,interval:2500,sendRequests:function(){var dw=this.requests;this.requests=[];if(dw.length===1){bM(dw[0],bQ)
-}else{ds(dw,bQ)}},canQueue:function(){return !m&&this.enabled},pushMultiple:function(dx){if(!this.canQueue()){ds(dx,bQ);return}var dw;for(dw=0;dw<dx.length;dw++){this.push(dx[dw])}},push:function(dw){if(!dw){return}if(!this.canQueue()){bM(dw,bQ);return}bK.requests.push(dw);if(this.timeout){clearTimeout(this.timeout);this.timeout=null}this.timeout=setTimeout(function(){bK.timeout=null;bK.sendRequests()},bK.interval);var dx="RequestQueue"+aB;if(!Object.prototype.hasOwnProperty.call(b,dx)){b[dx]={unload:function(){if(bK.timeout){clearTimeout(bK.timeout)}bK.sendRequests()}}}}};bo();this.hasConsent=function(){return bJ};this.getVisitorInfo=function(){if(!aH(aY("id"))){aR()}return cY()};this.getVisitorId=function(){return this.getVisitorInfo()[1]};this.getAttributionInfo=function(){return bS()};this.getAttributionCampaignName=function(){return bS()[0]};this.getAttributionCampaignKeyword=function(){return bS()[1]};this.getAttributionReferrerTimestamp=function(){return bS()[2]};this.getAttributionReferrerUrl=function(){return bS()[3]
-};this.setTrackerUrl=function(dw){aI=dw};this.getTrackerUrl=function(){return aI};this.getMatomoUrl=function(){return aa(this.getTrackerUrl(),bO)};this.getPiwikUrl=function(){return this.getMatomoUrl()};this.addTracker=function(dy,dx){if(!M(dy)||null===dy){dy=this.getTrackerUrl()}var dw=new T(dy,dx);L.push(dw);u.trigger("TrackerAdded",[this]);return dw};this.getSiteId=function(){return cc};this.setSiteId=function(dw){b9(dw)};this.resetUserId=function(){bF=""};this.setUserId=function(dw){if(ac(dw)){bF=dw}};this.setVisitorId=function(dx){var dw=/[0-9A-Fa-f]{16}/g;if(x(dx)&&dw.test(dx)){bU=dx}else{ao("Invalid visitorId set"+dx)}};this.getUserId=function(){return bF};this.setCustomData=function(dw,dx){if(Z(dw)){at=dw}else{if(!at){at={}}at[dw]=dx}};this.getCustomData=function(){return at};this.setCustomRequestProcessing=function(dw){ch=dw};this.appendToTrackingUrl=function(dw){db=dw};this.getRequest=function(dw){return cz(dw)};this.addPlugin=function(dw,dx){b[dw]=dx};this.setCustomDimension=function(dw,dx){dw=parseInt(dw,10);
-if(dw>0){if(!M(dx)){dx=""}if(!x(dx)){dx=String(dx)}bt[dw]=dx}};this.getCustomDimension=function(dw){dw=parseInt(dw,10);if(dw>0&&Object.prototype.hasOwnProperty.call(bt,dw)){return bt[dw]}};this.deleteCustomDimension=function(dw){dw=parseInt(dw,10);if(dw>0){delete bt[dw]}};this.setCustomVariable=function(dx,dw,dA,dy){var dz;if(!M(dy)){dy="visit"}if(!M(dw)){return}if(!M(dA)){dA=""}if(dx>0){dw=!x(dw)?String(dw):dw;dA=!x(dA)?String(dA):dA;dz=[dw.slice(0,bA),dA.slice(0,bA)];if(dy==="visit"||dy===2){cP();aV[dx]=dz}else{if(dy==="page"||dy===3){b2[dx]=dz}else{if(dy==="event"){cs[dx]=dz}}}}};this.getCustomVariable=function(dx,dy){var dw;if(!M(dy)){dy="visit"}if(dy==="page"||dy===3){dw=b2[dx]}else{if(dy==="event"){dw=cs[dx]}else{if(dy==="visit"||dy===2){cP();dw=aV[dx]}}}if(!M(dw)||(dw&&dw[0]==="")){return false}return dw};this.deleteCustomVariable=function(dw,dx){if(this.getCustomVariable(dw,dx)){this.setCustomVariable(dw,"","",dx)}};this.deleteCustomVariables=function(dw){if(dw==="page"||dw===3){b2={}
-}else{if(dw==="event"){cs={}}else{if(dw==="visit"||dw===2){aV={}}}}};this.storeCustomVariablesInCookie=function(){bW=true};this.setLinkTrackingTimer=function(dw){bQ=dw};this.getLinkTrackingTimer=function(){return bQ};this.setDownloadExtensions=function(dw){if(x(dw)){dw=dw.split("|")}di=dw};this.addDownloadExtensions=function(dx){var dw;if(x(dx)){dx=dx.split("|")}for(dw=0;dw<dx.length;dw++){di.push(dx[dw])}};this.removeDownloadExtensions=function(dy){var dx,dw=[];if(x(dy)){dy=dy.split("|")}for(dx=0;dx<di.length;dx++){if(P(dy,di[dx])===-1){dw.push(di[dx])}}di=dw};this.setDomains=function(dw){aC=x(dw)?[dw]:dw;var dA=false,dy=0,dx;for(dy;dy<aC.length;dy++){dx=String(aC[dy]);if(cR(c4,O(dx))){dA=true;break}var dz=cr(dx);if(dz&&dz!=="/"&&dz!=="/*"){dA=true;break}}if(!dA){aC.push(c4)}};this.setExcludedReferrers=function(dw){cG=x(dw)?[dw]:dw};this.enableCrossDomainLinking=function(){cX=true};this.disableCrossDomainLinking=function(){cX=false};this.isCrossDomainLinkingEnabled=function(){return cX
-};this.setCrossDomainLinkingTimeout=function(dw){a5=dw};this.getCrossDomainLinkingUrlParameter=function(){return t(az)+"="+t(by())};this.setIgnoreClasses=function(dw){bG=x(dw)?[dw]:dw};this.setRequestMethod=function(dw){if(dw){dm=String(dw).toUpperCase()}else{dm=cn}if(dm==="GET"){this.disableAlwaysUseSendBeacon()}};this.setRequestContentType=function(dw){cF=dw||aM};this.setGenerationTimeMs=function(dw){ao("setGenerationTimeMs is no longer supported since Matomo 4. The call will be ignored. The replacement is setPagePerformanceTiming.")};this.setPagePerformanceTiming=function(dA,dC,dB,dx,dD,dy){var dz={pf_net:dA,pf_srv:dC,pf_tfr:dB,pf_dm1:dx,pf_dm2:dD,pf_onl:dy};try{dz=Q(dz,M);dz=B(dz);ct=l(dz);if(ct===""){ao("setPagePerformanceTiming() called without parameters. This function needs to be called with at least one performance parameter.");return}bn=false;bL=true}catch(dw){ao("setPagePerformanceTiming: "+dw.toString())}};this.setReferrerUrl=function(dw){bu=dw};this.setCustomUrl=function(dw){ba=b1(bT,dw)
-};this.getCurrentUrl=function(){return ba||bT};this.setDocumentTitle=function(dw){bp=dw};this.setPageViewId=function(dw){aQ=dw;bH=true};this.setAPIUrl=function(dw){bO=dw};this.setDownloadClasses=function(dw){bR=x(dw)?[dw]:dw};this.setLinkClasses=function(dw){be=x(dw)?[dw]:dw};this.setCampaignNameKey=function(dw){cw=x(dw)?[dw]:dw};this.setCampaignKeywordKey=function(dw){bN=x(dw)?[dw]:dw};this.discardHashTag=function(dw){bV=dw};this.setCookieNamePrefix=function(dw){bq=dw;if(aV){aV=b3()}};this.setCookieDomain=function(dw){var dx=O(dw);if(!bs&&!bD(dx)){ao("Can't write cookie on domain "+dw)}else{c9=dx;bo()}};this.setExcludedQueryParams=function(dw){co=x(dw)?[dw]:dw};this.getCookieDomain=function(){return c9};this.hasCookies=function(){return"1"===cb()};this.setSessionCookie=function(dy,dx,dw){if(!dy){throw new Error("Missing cookie name")}if(!M(dw)){dw=cu}bB.push(dy);dr(aY(dy),dx,dw,bw,c9,bY,aN)};this.getCookie=function(dx){var dw=aH(aY(dx));if(dw===0){return null}return dw};this.setCookiePath=function(dw){bw=dw;
-bo()};this.getCookiePath=function(dw){return bw};this.setVisitorCookieTimeout=function(dw){cU=dw*1000};this.setSessionCookieTimeout=function(dw){cu=dw*1000};this.getSessionCookieTimeout=function(){return cu};this.setReferralCookieTimeout=function(dw){dh=dw*1000};this.setConversionAttributionFirstReferrer=function(dw){bC=dw};this.setSecureCookie=function(dw){if(dw&&location.protocol!=="https:"){ao("Error in setSecureCookie: You cannot use `Secure` on http.");return}bY=dw};this.setCookieSameSite=function(dw){dw=String(dw);dw=dw.charAt(0).toUpperCase()+dw.toLowerCase().slice(1);if(dw!=="None"&&dw!=="Lax"&&dw!=="Strict"){ao("Ignored value for sameSite. Please use either Lax, None, or Strict.");return}if(dw==="None"){if(location.protocol==="https:"){this.setSecureCookie(true)}else{ao("sameSite=None cannot be used on http, reverted to sameSite=Lax.");dw="Lax"}}aN=dw};this.disableCookies=function(){bs=true;if(cc){aJ()}};this.areCookiesEnabled=function(){return !bs};this.setCookieConsentGiven=function(){if(bs&&!c0){bs=false;
-c8=true;if(cc&&aA){aR();var dw=cz("ping=1",null,"ping");bM(dw,bQ)}}};this.requireCookieConsent=function(){if(this.getRememberedCookieConsent()){return false}this.disableCookies();return true};this.getRememberedCookieConsent=function(){return aH(cN)};this.forgetCookieConsentGiven=function(){b5(cN,bw,c9);this.disableCookies()};this.rememberCookieConsentGiven=function(dx){if(dx){dx=dx*60*60*1000}else{dx=30*365*24*60*60*1000}this.setCookieConsentGiven();var dw=new Date().getTime();dr(cN,dw,dx,bw,c9,bY,aN)};this.deleteCookies=function(){aJ()};this.setDoNotTrack=function(dx){var dw=g.doNotTrack||g.msDoNotTrack;c0=dx&&(dw==="yes"||dw==="1");if(c0){this.disableCookies()}};this.alwaysUseSendBeacon=function(){c7=true};this.disableAlwaysUseSendBeacon=function(){c7=false};this.addListener=function(dx,dw){av(dx,dw,false)};this.enableLinkTracking=function(dx){if(dk){return}dk=true;var dw=this;q(function(){au=true;var dy=J.body;av(dy,dx,true)})};this.enableJSErrorTracking=function(){if(c2){return}c2=true;
-var dw=W.onerror;W.onerror=function(dB,dz,dy,dA,dx){cm(function(){var dC="JavaScript Errors";var dD=dz+":"+dy;if(dA){dD+=":"+dA}if(P(cA,dC+dD+dB)===-1){cA.push(dC+dD+dB);ax(dC,dD,dB)}});if(dw){return dw(dB,dz,dy,dA,dx)}return false}};this.disablePerformanceTracking=function(){a8=false};this.enableHeartBeatTimer=function(dw){dw=Math.max(dw||15,5);bb=dw*1000;if(da!==null){dt()}};this.disableHeartBeatTimer=function(){if(bb||aS){if(W.removeEventListener){W.removeEventListener("focus",bg);W.removeEventListener("blur",aD);W.removeEventListener("visibilitychange",a0)}else{if(W.detachEvent){W.detachEvent("onfocus",bg);W.detachEvent("onblur",aD);W.detachEvent("visibilitychange",a0)}}}bb=null;aS=false};this.killFrame=function(){if(W.location!==W.top.location){W.top.location=W.location}};this.redirectFile=function(dw){if(W.location.protocol==="file:"){W.location=dw}};this.setCountPreRendered=function(dw){bk=dw};this.trackGoal=function(dw,dz,dy,dx){cm(function(){c3(dw,dz,dy,dx)})};this.trackLink=function(dx,dw,dz,dy){cm(function(){dd(dx,dw,dz,dy)
-})};this.getNumTrackedPageViews=function(){return cy};this.trackPageView=function(dw,dy,dx){cg=[];cV=[];cA=[];if(R(cc)){cm(function(){ad(aI,bO,cc)})}else{cm(function(){cy++;b6(dw,dy,dx)})}};this.disableBrowserFeatureDetection=function(){c8=false};this.enableBrowserFeatureDetection=function(){c8=true};this.trackAllContentImpressions=function(){if(R(cc)){return}cm(function(){q(function(){var dw=w.findContentNodes();var dx=cJ(dw);bK.pushMultiple(dx)})})};this.trackVisibleContentImpressions=function(dw,dx){if(R(cc)){return}if(!M(dw)){dw=true}if(!M(dx)){dx=750}aX(dw,dx,this);cm(function(){n(function(){var dy=w.findContentNodes();var dz=bf(dy);bK.pushMultiple(dz)})})};this.trackContentImpression=function(dy,dw,dx){if(R(cc)){return}dy=a(dy);dw=a(dw);dx=a(dx);if(!dy){return}dw=dw||"Unknown";cm(function(){var dz=aK(dy,dw,dx);bK.push(dz)})};this.trackContentImpressionsWithinNode=function(dw){if(R(cc)||!dw){return}cm(function(){if(ck){n(function(){var dx=w.findContentNodesWithinNode(dw);var dy=bf(dx);
-bK.pushMultiple(dy)})}else{q(function(){var dx=w.findContentNodesWithinNode(dw);var dy=cJ(dx);bK.pushMultiple(dy)})}})};this.trackContentInteraction=function(dy,dz,dw,dx){if(R(cc)){return}dy=a(dy);dz=a(dz);dw=a(dw);dx=a(dx);if(!dy||!dz){return}dw=dw||"Unknown";cm(function(){var dA=aU(dy,dz,dw,dx);if(dA){bK.push(dA)}})};this.trackContentInteractionNode=function(dy,dx){if(R(cc)||!dy){return}var dw=null;cm(function(){dw=dn(dy,dx);if(dw){bK.push(dw)}});return dw};this.logAllContentBlocksOnPage=function(){var dy=w.findContentNodes();var dw=w.collectContent(dy);var dx=typeof console;if(dx!=="undefined"&&console&&console.log){console.log(dw)}};this.trackEvent=function(dx,dz,dw,dy,dB,dA){cm(function(){ax(dx,dz,dw,dy,dB,dA)})};this.trackSiteSearch=function(dw,dy,dx,dz){cg=[];cm(function(){ce(dw,dy,dx,dz)})};this.setEcommerceView=function(dA,dw,dy,dx){cB={};if(ac(dy)){dy=String(dy)}if(!M(dy)||dy===null||dy===false||!dy.length){dy=""}else{if(dy instanceof Array){dy=W.JSON.stringify(dy)}}var dz="_pkc";
-cB[dz]=dy;if(M(dx)&&dx!==null&&dx!==false&&String(dx).length){dz="_pkp";cB[dz]=dx}if(!ac(dA)&&!ac(dw)){return}if(ac(dA)){dz="_pks";cB[dz]=dA}if(!ac(dw)){dw=""}dz="_pkn";cB[dz]=dw};this.getEcommerceItems=function(){return JSON.parse(JSON.stringify(dc))};this.addEcommerceItem=function(dA,dw,dy,dx,dz){if(ac(dA)){dc[dA]=[String(dA),dw,dy,dx,dz]}};this.removeEcommerceItem=function(dw){if(ac(dw)){dw=String(dw);delete dc[dw]}};this.clearEcommerceCart=function(){dc={}};this.trackEcommerceOrder=function(dw,dA,dz,dy,dx,dB){b4(dw,dA,dz,dy,dx,dB)};this.trackEcommerceCartUpdate=function(dw){bz(dw)};this.trackRequest=function(dx,dz,dy,dw){cm(function(){var dA=cz(dx,dz,dw);bM(dA,bQ,dy)})};this.ping=function(){this.trackRequest("ping=1",null,null,"ping")};this.disableQueueRequest=function(){bK.enabled=false};this.setRequestQueueInterval=function(dw){if(dw<1000){throw new Error("Request queue interval needs to be at least 1000ms")}bK.interval=dw};this.queueRequest=function(dw){cm(function(){var dx=cz(dw);
-bK.push(dx)})};this.isConsentRequired=function(){return cK};this.getRememberedConsent=function(){var dw=aH(bj);if(aH(cW)){if(dw){b5(bj,bw,c9)}return null}if(!dw||dw===0){return null}return dw};this.hasRememberedConsent=function(){return !!this.getRememberedConsent()};this.requireConsent=function(){cK=true;bJ=this.hasRememberedConsent();if(!bJ){bs=true}y++;b["CoreConsent"+y]={unload:function(){if(!bJ){aJ()}}}};this.setConsentGiven=function(dx){bJ=true;c8=true;b5(cW,bw,c9);var dy,dw;for(dy=0;dy<cV.length;dy++){dw=typeof cV[dy];if(dw==="string"){bM(cV[dy],bQ)}else{if(dw==="object"){ds(cV[dy],bQ)}}}cV=[];if(!M(dx)||dx){this.setCookieConsentGiven()}};this.rememberConsentGiven=function(dy){if(dy){dy=dy*60*60*1000}else{dy=30*365*24*60*60*1000}var dw=true;this.setConsentGiven(dw);var dx=new Date().getTime();dr(bj,dx,dy,bw,c9,bY,aN)};this.forgetConsentGiven=function(){var dw=30*365*24*60*60*1000;b5(bj,bw,c9);dr(cW,new Date().getTime(),dw,bw,c9,bY,aN);this.forgetCookieConsentGiven();this.requireConsent()
-};this.isUserOptedOut=function(){return !bJ};this.optUserOut=this.forgetConsentGiven;this.forgetUserOptOut=function(){this.setConsentGiven(false)};n(function(){setTimeout(function(){bL=true},0)});u.trigger("TrackerSetup",[this]);u.addPlugin("TrackerVisitorIdCookie"+aB,{unload:function(){if(!aA){aR();dl()}}})}function K(){return{push:aj}}function c(ay,ax){var az={};var av,aw;for(av=0;av<ax.length;av++){var at=ax[av];az[at]=1;for(aw=0;aw<ay.length;aw++){if(ay[aw]&&ay[aw][0]){var au=ay[aw][0];if(at===au){aj(ay[aw]);delete ay[aw];if(az[au]>1&&au!=="addTracker"&&au!=="enableLinkTracking"){ao("The method "+au+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Matomo trackers documentation: https://developer.matomo.org/guides/tracking-javascript-guide#multiple-piwik-trackers')}az[au]++}}}}return ay}var E=["addTracker","forgetCookieConsentGiven","requireCookieConsent","disableBrowserFeatureDetection","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setCookieSameSite","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setVisitorId","setSiteId","alwaysUseSendBeacon","disableAlwaysUseSendBeacon","enableLinkTracking","setCookieConsentGiven","requireConsent","setConsentGiven","disablePerformanceTracking","setPagePerformanceTiming","setExcludedQueryParams","setExcludedReferrers"];
+}catch(at){return true}}function T(cn,ci){var bR=this,bk="mtm_consent",cS="mtm_cookie_consent",c1="mtm_consent_removed",cd=ae(J.domain,W.location.href,N()),c9=O(cd[0]),bW=p(cd[1]),bw=p(cd[2]),c7=false,cr="GET",ds=cr,aM="application/x-www-form-urlencoded; charset=UTF-8",cK=aM,aI=cn||"",bQ="",dg="",cx="",cf=ci||"",bH="",bX="",bb,bq="",dn=["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","rtf","sea","sit","tar","tbz","tbz2","bz","bz2","tgz","torrent","txt","wav","wma","wmv","wpd","xls","xlsx","xml","z","zip"],aC=[c9],bI=[],cL=[],cs=[],bU=[],bf=[],bS=500,dc=true,cY,bc,b0,bY,at,cB=["pk_campaign","mtm_campaign","piwik_campaign","matomo_campaign","utm_campaign","utm_source","utm_medium"],bP=["pk_kwd","mtm_kwd","piwik_kwd","matomo_kwd","utm_term"],br="_pk_",az="pk_vid",a6=180,de,by,b1=false,aN="Lax",bt=false,c5,bl,bE,cZ=33955200000,cy=1800000,dm=15768000000,a9=true,bN=false,bo=false,bZ=false,aV=false,cl,b5={},cw={},bv={},bC=200,cG={},dh={},dp={},aZ={},cj=[],bu=false,ck=[],co=false,cQ=false,au=false,dq=false,c2=false,aS=false,bj=v(),cM=null,df=null,aW,bK,cg=aq,bx,aQ,bJ=false,cD=0,bD=["id","ses","cvar","ref"],cP=false,bL=null,c0=[],cF=[],aB=X++,aA=false,dd=true;
+try{bq=J.title}catch(cN){bq=""}function aH(dD){if(bt){return 0}var dB=new RegExp("(^|;)[ ]*"+dD+"=([^;]*)"),dC=dB.exec(J.cookie);return dC?V(dC[2]):0}bL=!aH(c1);function dw(dF,dG,dJ,dI,dD,dE,dH){if(bt&&dF!==c1){return}var dC;if(dJ){dC=new Date();dC.setTime(dC.getTime()+dJ)}if(!dH){dH="Lax"}J.cookie=dF+"="+t(dG)+(dJ?";expires="+dC.toGMTString():"")+";path="+(dI||"/")+(dD?";domain="+dD:"")+(dE?";secure":"")+";SameSite="+dH;if((!dJ||dJ>=0)&&aH(dF)!==String(dG)){var dB="There was an error setting cookie `"+dF+"`. Please check domain and path.";ao(dB)}}function cb(dB){var dD,dC;dB=j(dB,az);for(dC=0;dC<cs.length;dC++){dB=j(dB,cs[dC])}if(bY){dD=new RegExp("#.*");return dB.replace(dD,"")}return dB}function b4(dD,dB){var dE=s(dB),dC;if(dE){return dB}if(dB.slice(0,1)==="/"){return s(dD)+"://"+d(dD)+dB}dD=cb(dD);dC=dD.indexOf("?");if(dC>=0){dD=dD.slice(0,dC)}dC=dD.lastIndexOf("/");if(dC!==dD.length-1){dD=dD.slice(0,dC+1)}return dD+dB}function cW(dD,dB){var dC;dD=String(dD).toLowerCase();dB=String(dB).toLowerCase();
+if(dD===dB){return true}if(dB.slice(0,1)==="."){if(dD===dB.slice(1)){return true}dC=dD.length-dB.length;if((dC>0)&&(dD.slice(dC)===dB)){return true}}return false}function cv(dB){var dC=document.createElement("a");if(dB.indexOf("//")!==0&&dB.indexOf("http")!==0){if(dB.indexOf("*")===0){dB=dB.substr(1)}if(dB.indexOf(".")===0){dB=dB.substr(1)}dB="http://"+dB}dC.href=w.toAbsoluteUrl(dB);if(dC.pathname){return dC.pathname}return""}function ba(dC,dB){if(!an(dB,"/")){dB="/"+dB}if(!an(dC,"/")){dC="/"+dC}var dD=(dB==="/"||dB==="/*");if(dD){return true}if(dC===dB){return true}dB=String(dB).toLowerCase();dC=String(dC).toLowerCase();if(U(dB,"*")){dB=dB.slice(0,-1);dD=(!dB||dB==="/");if(dD){return true}if(dC===dB){return true}return dC.indexOf(dB)===0}if(!U(dC,"/")){dC+="/"}if(!U(dB,"/")){dB+="/"}return dC.indexOf(dB)===0}function aw(dF,dH){var dC,dB,dD,dE,dG;for(dC=0;dC<aC.length;dC++){dE=O(aC[dC]);dG=cv(aC[dC]);if(cW(dF,dE)&&ba(dH,dG)){return true}}return false}function a2(dE){var dC,dB,dD;for(dC=0;
+dC<aC.length;dC++){dB=O(aC[dC].toLowerCase());if(dE===dB){return true}if(dB.slice(0,1)==="."){if(dE===dB.slice(1)){return true}dD=dE.length-dB.length;if((dD>0)&&(dE.slice(dD)===dB)){return true}}}return false}function cC(dB){var dC,dE,dG,dD,dF;if(!dB.length||!cL.length){return false}dE=d(dB);dG=cv(dB);if(dE.indexOf("www.")===0){dE=dE.substr(4)}for(dC=0;dC<cL.length;dC++){dD=O(cL[dC]);dF=cv(cL[dC]);if(dD.indexOf("www.")===0){dD=dD.substr(4)}if(cW(dE,dD)&&ba(dG,dF)){return true}}return false}function cz(dB,dD){dB=dB.replace("send_image=0","send_image=1");var dC=new Image(1,1);dC.onload=function(){H=0;if(typeof dD==="function"){dD({request:dB,trackerUrl:aI,success:true})}};dC.onerror=function(){if(typeof dD==="function"){dD({request:dB,trackerUrl:aI,success:false})}};dC.src=aI+(aI.indexOf("?")<0?"?":"&")+dB}function cT(dB){if(ds==="POST"){return true}return dB&&(dB.length>2000||dB.indexOf('{"requests"')===0)}function aP(){return"object"===typeof g&&"function"===typeof g.sendBeacon&&"function"===typeof Blob
+}function bd(dF,dI,dH){var dD=aP();if(!dD){return false}var dE={type:"application/x-www-form-urlencoded; charset=UTF-8"};var dJ=false;var dC=aI;try{var dB=new Blob([dF],dE);if(dH&&!cT(dF)){dB=new Blob([],dE);dC=dC+(dC.indexOf("?")<0?"?":"&")+dF}dJ=g.sendBeacon(dC,dB)}catch(dG){return false}if(dJ&&typeof dI==="function"){dI({request:dF,trackerUrl:aI,success:true,isSendBeacon:true})}return dJ}function dl(dC,dD,dB){if(!M(dB)||null===dB){dB=true}if(m&&bd(dC,dD,dB)){return}setTimeout(function(){if(m&&bd(dC,dD,dB)){return}var dG;try{var dF=W.XMLHttpRequest?new W.XMLHttpRequest():W.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):null;dF.open("POST",aI,true);dF.onreadystatechange=function(){if(this.readyState===4&&!(this.status>=200&&this.status<300)){var dH=m&&bd(dC,dD,dB);if(!dH&&dB){cz(dC,dD)}else{if(typeof dD==="function"){dD({request:dC,trackerUrl:aI,success:false,xhr:this})}}}else{if(this.readyState===4&&(typeof dD==="function")){dD({request:dC,trackerUrl:aI,success:true,xhr:this})}}};
+dF.setRequestHeader("Content-Type",cK);dF.withCredentials=true;dF.send(dC)}catch(dE){dG=m&&bd(dC,dD,dB);if(!dG&&dB){cz(dC,dD)}else{if(typeof dD==="function"){dD({request:dC,trackerUrl:aI,success:false})}}}},50)}function cp(dC){var dB=new Date();var dD=dB.getTime()+dC;if(!r||dD>r){r=dD}}function bh(){bj=true;cM=new Date().getTime()}function dv(){var dB=new Date().getTime();return !cM||(dB-cM)>bc}function aD(){if(dv()){b0()}}function a1(){if(J.visibilityState==="hidden"&&dv()){b0()}else{if(J.visibilityState==="visible"){cM=new Date().getTime()}}}function dy(){if(aS||!bc){return}aS=true;ar(W,"focus",bh);ar(W,"blur",aD);ar(W,"visibilitychange",a1);af++;u.addPlugin("HeartBeat"+af,{unload:function(){if(aS&&dv()){b0()}}})}function cR(dF){var dC=new Date();var dB=dC.getTime();df=dB;if(cQ&&dB<cQ){var dD=cQ-dB;setTimeout(dF,dD);cp(dD+50);cQ+=50;return}if(cQ===false){var dE=800;cQ=dB+dE}dF()}function aT(){if(aH(c1)){bL=false}else{if(aH(bk)){bL=true}}}function bT(dD){if(!aZ){return dD}var dC,dB="&uadata="+t(W.JSON.stringify(aZ));
+if(dD instanceof Array){for(dC=0;dC<dD.length;dC++){dD[dC]+=dB}}else{dD+=dB}return dD}function cA(dB){if(!dd||!M(g.userAgentData)||!C(g.userAgentData.getHighEntropyValues)){dB();return}aZ={brands:g.userAgentData.brands,platform:g.userAgentData.platform};g.userAgentData.getHighEntropyValues(["brands","model","platform","platformVersion","uaFullVersion","fullVersionList"]).then(function(dD){var dC;if(dD.fullVersionList){delete dD.brands;delete dD.uaFullVersion}aZ=dD;dB()},function(dC){dB()})}function bO(dC,dB,dD){if(!bu){cj.push(dC);return}aT();if(!bL){c0.push(dC);return}aA=true;if(!c5&&dC){if(cP&&bL){dC+="&consent=1"}dC=bT(dC);cR(function(){if(dc&&bd(dC,dD,true)){cp(100);return}if(cT(dC)){dl(dC,dD)}else{cz(dC,dD)}cp(dB)})}if(!aS){dy()}}function cu(dB){if(c5){return false}return(dB&&dB.length)}function dk(dB,dF){if(!dF||dF>=dB.length){return[dB]}var dC=0;var dD=dB.length;var dE=[];for(dC;dC<dD;dC+=dF){dE.push(dB.slice(dC,dC+dF))}return dE}function dx(dC,dB){if(!cu(dC)){return}if(!bu){cj.push(dC);
+return}if(!bL){c0.push(dC);return}aA=true;cR(function(){var dF=dk(dC,50);var dD=0,dE;for(dD;dD<dF.length;dD++){dE='{"requests":["?'+bT(dF[dD]).join('","?')+'"],"send_image":0}';if(dc&&bd(dE,null,false)){cp(100)}else{dl(dE,null,false)}}cp(dB)})}function aY(dB){return br+dB+"."+cf+"."+bx}function b8(dD,dC,dB){dw(dD,"",-129600000,dC,dB)}function ce(){if(bt){return"0"}if(!M(W.showModalDialog)&&M(g.cookieEnabled)){return g.cookieEnabled?"1":"0"}var dB=br+"testcookie";dw(dB,"1",undefined,by,de,b1,aN);var dC=aH(dB)==="1"?"1":"0";b8(dB);return dC}function bp(){bx=cg((de||c9)+(by||"/")).slice(0,4)}function cX(){cA(function(){var dH,dG;bu=true;for(dH=0;dH<cj.length;dH++){dG=typeof cj[dH];if(dG==="string"){bO(cj[dH],bS)}else{if(dG==="object"){dx(cj[dH],bS)}}}cj=[]});if(!dd){return{}}if(M(dp.res)){return dp}var dC,dE,dF={pdf:"application/pdf",qt:"video/quicktime",realp:"audio/x-pn-realaudio-plugin",wma:"application/x-mplayer2",fla:"application/x-shockwave-flash",java:"application/x-java-vm",ag:"application/x-silverlight"};
+if(!((new RegExp("MSIE")).test(g.userAgent))){if(g.mimeTypes&&g.mimeTypes.length){for(dC in dF){if(Object.prototype.hasOwnProperty.call(dF,dC)){dE=g.mimeTypes[dF[dC]];dp[dC]=(dE&&dE.enabledPlugin)?"1":"0"}}}if(!((new RegExp("Edge[ /](\\d+[\\.\\d]+)")).test(g.userAgent))&&typeof navigator.javaEnabled!=="unknown"&&M(g.javaEnabled)&&g.javaEnabled()){dp.java="1"}if(!M(W.showModalDialog)&&M(g.cookieEnabled)){dp.cookie=g.cookieEnabled?"1":"0"}else{dp.cookie=ce()}}var dD=parseInt(ab.width,10);var dB=parseInt(ab.height,10);dp.res=parseInt(dD,10)+"x"+parseInt(dB,10);return dp}function b6(){var dC=aY("cvar"),dB=aH(dC);if(dB&&dB.length){dB=W.JSON.parse(dB);if(Z(dB)){return dB}}return{}}function cU(){if(aV===false){aV=b6()}}function c6(){var dB=cX();return cg((g.userAgent||"")+(g.platform||"")+W.JSON.stringify(dB)+(new Date()).getTime()+Math.random()).slice(0,16)}function aF(){var dB=cX();return cg((g.userAgent||"")+(g.platform||"")+W.JSON.stringify(dB)).slice(0,6)}function bm(){return Math.floor((new Date()).getTime()/1000)
+}function aO(){var dC=bm();var dD=aF();var dB=String(dC)+dD;return dB}function dj(dD){dD=String(dD);var dG=aF();var dE=dG.length;var dF=dD.substr(-1*dE,dE);var dC=parseInt(dD.substr(0,dD.length-dE),10);if(dC&&dF&&dF===dG){var dB=bm();if(a6<=0){return true}if(dB>=dC&&dB<=(dC+a6)){return true}}return false}function dz(dB){if(!c2){return""}var dF=e(dB,az);if(!dF){return""}dF=String(dF);var dD=new RegExp("^[a-zA-Z0-9]+$");if(dF.length===32&&dD.test(dF)){var dC=dF.substr(16,32);if(dj(dC)){var dE=dF.substr(0,16);return dE}}return""}function c3(){if(!bX){bX=dz(bW)}var dD=new Date(),dB=Math.round(dD.getTime()/1000),dC=aY("id"),dG=aH(dC),dF,dE;if(dG){dF=dG.split(".");dF.unshift("0");if(bX.length){dF[1]=bX}return dF}if(bX.length){dE=bX}else{if("0"===ce()){dE=""}else{dE=c6()}}dF=["1",dE,dB];return dF}function a5(){var dE=c3(),dC=dE[0],dD=dE[1],dB=dE[2];return{newVisitor:dC,uuid:dD,createTs:dB}}function aL(){var dE=new Date(),dC=dE.getTime(),dF=a5().createTs;var dB=parseInt(dF,10);var dD=(dB*1000)+cZ-dC;
+return dD}function aR(dB){if(!cf){return}var dD=new Date(),dC=Math.round(dD.getTime()/1000);if(!M(dB)){dB=a5()}var dE=dB.uuid+"."+dB.createTs+".";dw(aY("id"),dE,aL(),by,de,b1,aN)}function bV(){var dB=aH(aY("ref"));if(dB.length){try{dB=W.JSON.parse(dB);if(Z(dB)){return dB}}catch(dC){}}return["","",0,""]}function bF(dD){var dC=br+"testcookie_domain";var dB="testvalue";dw(dC,dB,10000,null,dD,b1,aN);if(aH(dC)===dB){b8(dC,null,dD);return true}return false}function aJ(){var dC=bt;bt=false;var dB,dD;for(dB=0;dB<bD.length;dB++){dD=aY(bD[dB]);if(dD!==c1&&dD!==bk&&0!==aH(dD)){b8(dD,by,de)}}bt=dC}function cc(dB){cf=dB}function dA(dF){if(!dF||!Z(dF)){return}var dE=[];var dD;for(dD in dF){if(Object.prototype.hasOwnProperty.call(dF,dD)){dE.push(dD)}}var dG={};dE.sort();var dB=dE.length;var dC;for(dC=0;dC<dB;dC++){dG[dE[dC]]=dF[dE[dC]]}return dG}function cm(){dw(aY("ses"),"1",cy,by,de,b1,aN)}function bn(){var dE="";var dC="abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";var dD=dC.length;
+var dB;for(dB=0;dB<6;dB++){dE+=dC.charAt(Math.floor(Math.random()*dD))}return dE}function aE(dC){if(cx!==""){dC+=cx;bo=true;return dC}if(!h){return dC}var dD=(typeof h.timing==="object")&&h.timing?h.timing:undefined;if(!dD){dD=(typeof h.getEntriesByType==="function")&&h.getEntriesByType("navigation")?h.getEntriesByType("navigation")[0]:undefined}if(!dD){return dC}var dB="";if(dD.connectEnd&&dD.fetchStart){if(dD.connectEnd<dD.fetchStart){return dC}dB+="&pf_net="+Math.round(dD.connectEnd-dD.fetchStart)}if(dD.responseStart&&dD.requestStart){if(dD.responseStart<dD.requestStart){return dC}dB+="&pf_srv="+Math.round(dD.responseStart-dD.requestStart)}if(dD.responseStart&&dD.responseEnd){if(dD.responseEnd<dD.responseStart){return dC}dB+="&pf_tfr="+Math.round(dD.responseEnd-dD.responseStart)}if(M(dD.domLoading)){if(dD.domInteractive&&dD.domLoading){if(dD.domInteractive<dD.domLoading){return dC}dB+="&pf_dm1="+Math.round(dD.domInteractive-dD.domLoading)}}else{if(dD.domInteractive&&dD.responseEnd){if(dD.domInteractive<dD.responseEnd){return dC
+}dB+="&pf_dm1="+Math.round(dD.domInteractive-dD.responseEnd)}}if(dD.domComplete&&dD.domInteractive){if(dD.domComplete<dD.domInteractive){return dC}dB+="&pf_dm2="+Math.round(dD.domComplete-dD.domInteractive)}if(dD.loadEventEnd&&dD.loadEventStart){if(dD.loadEventEnd<dD.loadEventStart){return dC}dB+="&pf_onl="+Math.round(dD.loadEventEnd-dD.loadEventStart)}return dC+dB}function dr(){var dL,dE=new Date(),dF=Math.round(dE.getTime()/1000),dQ,dD,dG=1024,dN,dH,dC=aY("ses"),dK=aY("ref"),dJ=aH(dC),dB=bV(),dP=bb||bW,dM,dI,dO={};dM=dB[0];dI=dB[1];dQ=dB[2];dD=dB[3];if(!dJ){if(!bE||!dM.length){for(dL in cB){if(Object.prototype.hasOwnProperty.call(cB,dL)){dM=e(dP,cB[dL]);if(dM.length){break}}}for(dL in bP){if(Object.prototype.hasOwnProperty.call(bP,dL)){dI=e(dP,bP[dL]);if(dI.length){break}}}}dN=d(bw);dH=dD.length?d(dD):"";if(dN.length&&!a2(dN)&&!cC(bw)&&(!bE||!dH.length||a2(dH)||cC(dD))){dD=bw}if(dD.length||dM.length){dQ=dF;dB=[dM,dI,dQ,cb(dD.slice(0,dG))];dw(dK,W.JSON.stringify(dB),dm,by,de,b1,aN)}}if(dM.length){dO._rcn=t(dM)
+}if(dI.length){dO._rck=t(dI)}dO._refts=dQ;if(String(dD).length){dO._ref=t(cb(dD.slice(0,dG)))}return dO}function cE(dC,dN,dO){var dM,dB=new Date(),dL=aV,dH=aY("cvar"),dP=bb||bW;if(bt){aJ()}if(c5){return""}var dI=a5();var dF=J.characterSet||J.charset;if(!dF||dF.toLowerCase()==="utf-8"){dF=null}dC+="&idsite="+cf+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+dB.getHours()+"&m="+dB.getMinutes()+"&s="+dB.getSeconds()+"&url="+t(cb(dP))+(bw.length&&!cC(bw)?"&urlref="+t(cb(bw)):"")+(ac(bH)?"&uid="+t(bH):"")+"&_id="+dI.uuid+"&_idn="+dI.newVisitor+(dF?"&cs="+t(dF):"")+"&send_image=0";var dK=dr();for(dM in dK){if(Object.prototype.hasOwnProperty.call(dK,dM)){dC+="&"+dM+"="+dK[dM]}}var dR=cX();for(dM in dR){if(Object.prototype.hasOwnProperty.call(dR,dM)){dC+="&"+dM+"="+dR[dM]}}var dS=[];if(dN){for(dM in dN){if(Object.prototype.hasOwnProperty.call(dN,dM)&&/^dimension\d+$/.test(dM)){var dD=dM.replace("dimension","");dS.push(parseInt(dD,10));dS.push(String(dD));dC+="&"+dM+"="+t(dN[dM]);delete dN[dM]
+}}}if(dN&&D(dN)){dN=null}for(dM in cG){if(Object.prototype.hasOwnProperty.call(cG,dM)){dC+="&"+dM+"="+t(cG[dM])}}for(dM in bv){if(Object.prototype.hasOwnProperty.call(bv,dM)){var dG=(-1===P(dS,dM));if(dG){dC+="&dimension"+dM+"="+t(bv[dM])}}}if(dN){dC+="&data="+t(W.JSON.stringify(dN))}else{if(at){dC+="&data="+t(W.JSON.stringify(at))}}function dE(dT,dU){var dV=W.JSON.stringify(dT);if(dV.length>2){return"&"+dU+"="+t(dV)}return""}var dQ=dA(b5);var dJ=dA(cw);dC+=dE(dQ,"cvar");dC+=dE(dJ,"e_cvar");if(aV){dC+=dE(aV,"_cvar");for(dM in dL){if(Object.prototype.hasOwnProperty.call(dL,dM)){if(aV[dM][0]===""||aV[dM][1]===""){delete aV[dM]}}}if(bZ){dw(dH,W.JSON.stringify(aV),cy,by,de,b1,aN)}}if(a9&&bN&&!bo){dC=aE(dC);bo=true}if(aQ){dC+="&pv_id="+aQ}aR(dI);cm();dC+=ag(dO,{tracker:bR,request:dC});if(dg.length){dC+="&"+dg}if(C(cl)){dC=cl(dC)}return dC}b0=function be(){var dB=new Date();dB=dB.getTime();if(!df){return false}if(df+bc<=dB){bR.ping();return true}return false};function bz(dE,dD,dI,dF,dB,dL){var dH="idgoal=0",dC=new Date(),dJ=[],dK,dG=String(dE).length;
+if(dG){dH+="&ec_id="+t(dE)}dH+="&revenue="+dD;if(String(dI).length){dH+="&ec_st="+dI}if(String(dF).length){dH+="&ec_tx="+dF}if(String(dB).length){dH+="&ec_sh="+dB}if(String(dL).length){dH+="&ec_dt="+dL}if(dh){for(dK in dh){if(Object.prototype.hasOwnProperty.call(dh,dK)){if(!M(dh[dK][1])){dh[dK][1]=""}if(!M(dh[dK][2])){dh[dK][2]=""}if(!M(dh[dK][3])||String(dh[dK][3]).length===0){dh[dK][3]=0}if(!M(dh[dK][4])||String(dh[dK][4]).length===0){dh[dK][4]=1}dJ.push(dh[dK])}}dH+="&ec_items="+t(W.JSON.stringify(dJ))}dH=cE(dH,at,"ecommerce");bO(dH,bS);if(dG){dh={}}}function b7(dB,dF,dE,dD,dC,dG){if(String(dB).length&&M(dF)){bz(dB,dF,dE,dD,dC,dG)}}function bB(dB){if(M(dB)){bz("",dB,"","","","")}}function b9(dC,dE,dD){if(!bJ){aQ=bn()}var dB=cE("action_name="+t(ap(dC||bq)),dE,"log");if(a9&&!bo){dB=aE(dB)}bO(dB,bS,dD)}function a7(dD,dC){var dE,dB="(^| )(piwik[_-]"+dC+"|matomo[_-]"+dC;if(dD){for(dE=0;dE<dD.length;dE++){dB+="|"+dD[dE]}}dB+=")( |$)";return new RegExp(dB)}function a0(dB){return(aI&&dB&&0===String(dB).indexOf(aI))
+}function cI(dF,dB,dG,dC){if(a0(dB)){return 0}var dE=a7(bU,"download"),dD=a7(bf,"link"),dH=new RegExp("\\.("+dn.join("|")+")([?&#]|$)","i");if(dD.test(dF)){return"link"}if(dC||dE.test(dF)||dH.test(dB)){return"download"}if(dG){return 0}return"link"}function ay(dC){var dB;dB=dC.parentNode;while(dB!==null&&M(dB)){if(ai.isLinkElement(dC)){break}dC=dB;dB=dC.parentNode}return dC}function du(dG){dG=ay(dG);if(!ai.hasNodeAttribute(dG,"href")){return}if(!M(dG.href)){return}var dF=ai.getAttributeValueFromNode(dG,"href");var dC=dG.pathname||cv(dG.href);var dH=dG.hostname||d(dG.href);var dI=dH.toLowerCase();var dD=dG.href.replace(dH,dI);var dE=new RegExp("^(javascript|vbscript|jscript|mocha|livescript|ecmascript|mailto|tel):","i");if(!dE.test(dD)){var dB=cI(dG.className,dD,aw(dI,dC),ai.hasNodeAttribute(dG,"download"));if(dB){return{type:dB,href:dD}}}}function aU(dB,dC,dD,dE){var dF=w.buildInteractionRequestParams(dB,dC,dD,dE);if(!dF){return}return cE(dF,null,"contentInteraction")}function bi(dB,dC){if(!dB||!dC){return false
+}var dD=w.findTargetNode(dB);if(w.shouldIgnoreInteraction(dD)){return false}dD=w.findTargetNodeNoDefault(dB);if(dD&&!Y(dD,dC)){return false}return true}function cH(dD,dC,dF){if(!dD){return}var dB=w.findParentContentNode(dD);if(!dB){return}if(!bi(dB,dD)){return}var dE=w.buildContentBlock(dB);if(!dE){return}if(!dE.target&&dF){dE.target=dF}return w.buildInteractionRequestParams(dC,dE.name,dE.piece,dE.target)}function a3(dC){if(!ck||!ck.length){return false}var dB,dD;for(dB=0;dB<ck.length;dB++){dD=ck[dB];if(dD&&dD.name===dC.name&&dD.piece===dC.piece&&dD.target===dC.target){return true}}return false}function a4(dB){return function(dF){if(!dB){return}var dD=w.findParentContentNode(dB);var dC;if(dF){dC=dF.target||dF.srcElement}if(!dC){dC=dB}if(!bi(dD,dC)){return}if(!dD){return false}var dG=w.findTargetNode(dD);if(!dG||w.shouldIgnoreInteraction(dG)){return false}var dE=du(dG);if(dq&&dE&&dE.type){return dE.type}return bR.trackContentInteractionNode(dC,"click")}}function ca(dD){if(!dD||!dD.length){return
+}var dB,dC;for(dB=0;dB<dD.length;dB++){dC=w.findTargetNode(dD[dB]);if(dC&&!dC.contentInteractionTrackingSetupDone){dC.contentInteractionTrackingSetupDone=true;ar(dC,"click",a4(dC))}}}function bG(dD,dE){if(!dD||!dD.length){return[]}var dB,dC;for(dB=0;dB<dD.length;dB++){if(a3(dD[dB])){dD.splice(dB,1);dB--}else{ck.push(dD[dB])}}if(!dD||!dD.length){return[]}ca(dE);var dF=[];for(dB=0;dB<dD.length;dB++){dC=cE(w.buildImpressionRequestParams(dD[dB].name,dD[dB].piece,dD[dB].target),undefined,"contentImpressions");if(dC){dF.push(dC)}}return dF}function cO(dC){var dB=w.collectContent(dC);return bG(dB,dC)}function bg(dC){if(!dC||!dC.length){return[]}var dB;for(dB=0;dB<dC.length;dB++){if(!w.isNodeVisible(dC[dB])){dC.splice(dB,1);dB--}}if(!dC||!dC.length){return[]}return cO(dC)}function aK(dD,dB,dC){var dE=w.buildImpressionRequestParams(dD,dB,dC);return cE(dE,null,"contentImpression")}function dt(dE,dC){if(!dE){return}var dB=w.findParentContentNode(dE);var dD=w.buildContentBlock(dB);if(!dD){return}if(!dC){dC="Unknown"
+}return aU(dC,dD.name,dD.piece,dD.target)}function c4(dC,dE,dB,dD){return"e_c="+t(dC)+"&e_a="+t(dE)+(M(dB)?"&e_n="+t(dB):"")+(M(dD)?"&e_v="+t(dD):"")+"&ca=1"}function ax(dD,dF,dB,dE,dH,dG){if(!ac(dD)||!ac(dF)){ao("Error while logging event: Parameters `category` and `action` must not be empty or filled with whitespaces");return false}var dC=cE(c4(dD,dF,dB,dE),dH,"event");bO(dC,bS,dG)}function ch(dB,dE,dC,dF){var dD=cE("search="+t(dB)+(dE?"&search_cat="+t(dE):"")+(M(dC)?"&search_count="+dC:""),dF,"sitesearch");bO(dD,bS)}function c8(dB,dF,dE,dD){var dC=cE("idgoal="+dB+(dF?"&revenue="+dF:""),dE,"goal");bO(dC,bS,dD)}function di(dE,dB,dI,dH,dD){var dG=dB+"="+t(cb(dE));var dC=cH(dD,"click",dE);if(dC){dG+="&"+dC}var dF=cE(dG,dI,"link");bO(dF,bS,dH)}function b3(dC,dB){if(dC!==""){return dC+dB.charAt(0).toUpperCase()+dB.slice(1)}return dB}function cq(dG){var dF,dB,dE=["","webkit","ms","moz"],dD;if(!bl){for(dB=0;dB<dE.length;dB++){dD=dE[dB];if(Object.prototype.hasOwnProperty.call(J,b3(dD,"hidden"))){if(J[b3(dD,"visibilityState")]==="prerender"){dF=true
+}break}}}if(dF){ar(J,dD+"visibilitychange",function dC(){J.removeEventListener(dD+"visibilitychange",dC,false);dG()});return}dG()}function bA(){var dC=bR.getVisitorId();var dB=aO();return dC+dB}function ct(dB){if(!dB){return}if(!ai.hasNodeAttribute(dB,"href")){return}var dC=ai.getAttributeValueFromNode(dB,"href");if(!dC||a0(dC)){return}if(!bR.getVisitorId()){return}dC=j(dC,az);var dD=bA();dC=I(dC,az,dD);ai.setAnyAttribute(dB,"href",dC)}function bs(dE){var dF=ai.getAttributeValueFromNode(dE,"href");if(!dF){return false}dF=String(dF);var dC=dF.indexOf("//")===0||dF.indexOf("http://")===0||dF.indexOf("https://")===0;if(!dC){return false}var dB=dE.pathname||cv(dE.href);var dD=(dE.hostname||d(dE.href)).toLowerCase();if(aw(dD,dB)){if(!cW(c9,O(dD))){return true}return false}return false}function cV(dB){var dC=du(dB);if(dC&&dC.type){dC.href=p(dC.href);di(dC.href,dC.type,undefined,null,dB);return}if(c2){dB=ay(dB);if(bs(dB)){ct(dB)}}}function cJ(){return J.all&&!J.addEventListener}function da(dB){var dD=dB.which;
+var dC=(typeof dB.button);if(!dD&&dC!=="undefined"){if(cJ()){if(dB.button&1){dD=1}else{if(dB.button&2){dD=3}else{if(dB.button&4){dD=2}}}}else{if(dB.button===0||dB.button==="0"){dD=1}else{if(dB.button&1){dD=2}else{if(dB.button&2){dD=3}}}}}return dD}function b2(dB){switch(da(dB)){case 1:return"left";case 2:return"middle";case 3:return"right"}}function a8(dB){return dB.target||dB.srcElement}function db(dB){return dB==="A"||dB==="AREA"}function aG(dB){function dC(dE){var dF=a8(dE);var dG=dF.nodeName;var dD=a7(bI,"ignore");while(!db(dG)&&dF&&dF.parentNode){dF=dF.parentNode;dG=dF.nodeName}if(dF&&db(dG)&&!dD.test(dF.className)){return dF}}return function(dF){dF=dF||W.event;var dG=dC(dF);if(!dG){return}var dE=b2(dF);if(dF.type==="click"){var dD=false;if(dB&&dE==="middle"){dD=true}if(dG&&!dD){cV(dG)}}else{if(dF.type==="mousedown"){if(dE==="middle"&&dG){aW=dE;bK=dG}else{aW=bK=null}}else{if(dF.type==="mouseup"){if(dE===aW&&dG===bK){cV(dG)}aW=bK=null}else{if(dF.type==="contextmenu"){cV(dG)}}}}}}function av(dE,dD,dB){var dC=typeof dD;
+if(dC==="undefined"){dD=true}ar(dE,"click",aG(dD),dB);if(dD){ar(dE,"mouseup",aG(dD),dB);ar(dE,"mousedown",aG(dD),dB);ar(dE,"contextmenu",aG(dD),dB)}}function aX(dC,dF,dG){if(co){return true}co=true;var dH=false;var dE,dD;function dB(){dH=true}n(function(){function dI(dK){setTimeout(function(){if(!co){return}dH=false;dG.trackVisibleContentImpressions();dI(dK)},dK)}function dJ(dK){setTimeout(function(){if(!co){return}if(dH){dH=false;dG.trackVisibleContentImpressions()}dJ(dK)},dK)}if(dC){dE=["scroll","resize"];for(dD=0;dD<dE.length;dD++){if(J.addEventListener){J.addEventListener(dE[dD],dB,false)}else{W.attachEvent("on"+dE[dD],dB)}}dJ(100)}if(dF&&dF>0){dF=parseInt(dF,10);dI(dF)}})}var bM={enabled:true,requests:[],timeout:null,interval:2500,sendRequests:function(){var dB=this.requests;this.requests=[];if(dB.length===1){bO(dB[0],bS)}else{dx(dB,bS)}},canQueue:function(){return !m&&this.enabled},pushMultiple:function(dC){if(!this.canQueue()){dx(dC,bS);return}var dB;for(dB=0;dB<dC.length;dB++){this.push(dC[dB])
+}},push:function(dB){if(!dB){return}if(!this.canQueue()){bO(dB,bS);return}bM.requests.push(dB);if(this.timeout){clearTimeout(this.timeout);this.timeout=null}this.timeout=setTimeout(function(){bM.timeout=null;bM.sendRequests()},bM.interval);var dC="RequestQueue"+aB;if(!Object.prototype.hasOwnProperty.call(b,dC)){b[dC]={unload:function(){if(bM.timeout){clearTimeout(bM.timeout)}bM.sendRequests()}}}}};bp();this.hasConsent=function(){return bL};this.getVisitorInfo=function(){if(!aH(aY("id"))){aR()}return c3()};this.getVisitorId=function(){return this.getVisitorInfo()[1]};this.getAttributionInfo=function(){return bV()};this.getAttributionCampaignName=function(){return bV()[0]};this.getAttributionCampaignKeyword=function(){return bV()[1]};this.getAttributionReferrerTimestamp=function(){return bV()[2]};this.getAttributionReferrerUrl=function(){return bV()[3]};this.setTrackerUrl=function(dB){aI=dB};this.getTrackerUrl=function(){return aI};this.getMatomoUrl=function(){return aa(this.getTrackerUrl(),bQ)
+};this.getPiwikUrl=function(){return this.getMatomoUrl()};this.addTracker=function(dD,dC){if(!M(dD)||null===dD){dD=this.getTrackerUrl()}var dB=new T(dD,dC);L.push(dB);u.trigger("TrackerAdded",[this]);return dB};this.getSiteId=function(){return cf};this.setSiteId=function(dB){cc(dB)};this.resetUserId=function(){bH=""};this.setUserId=function(dB){if(ac(dB)){bH=dB}};this.setVisitorId=function(dC){var dB=/[0-9A-Fa-f]{16}/g;if(x(dC)&&dB.test(dC)){bX=dC}else{ao("Invalid visitorId set"+dC)}};this.getUserId=function(){return bH};this.setCustomData=function(dB,dC){if(Z(dB)){at=dB}else{if(!at){at={}}at[dB]=dC}};this.getCustomData=function(){return at};this.setCustomRequestProcessing=function(dB){cl=dB};this.appendToTrackingUrl=function(dB){dg=dB};this.getRequest=function(dB){return cE(dB)};this.addPlugin=function(dB,dC){b[dB]=dC};this.setCustomDimension=function(dB,dC){dB=parseInt(dB,10);if(dB>0){if(!M(dC)){dC=""}if(!x(dC)){dC=String(dC)}bv[dB]=dC}};this.getCustomDimension=function(dB){dB=parseInt(dB,10);
+if(dB>0&&Object.prototype.hasOwnProperty.call(bv,dB)){return bv[dB]}};this.deleteCustomDimension=function(dB){dB=parseInt(dB,10);if(dB>0){delete bv[dB]}};this.setCustomVariable=function(dC,dB,dF,dD){var dE;if(!M(dD)){dD="visit"}if(!M(dB)){return}if(!M(dF)){dF=""}if(dC>0){dB=!x(dB)?String(dB):dB;dF=!x(dF)?String(dF):dF;dE=[dB.slice(0,bC),dF.slice(0,bC)];if(dD==="visit"||dD===2){cU();aV[dC]=dE}else{if(dD==="page"||dD===3){b5[dC]=dE}else{if(dD==="event"){cw[dC]=dE}}}}};this.getCustomVariable=function(dC,dD){var dB;if(!M(dD)){dD="visit"}if(dD==="page"||dD===3){dB=b5[dC]}else{if(dD==="event"){dB=cw[dC]}else{if(dD==="visit"||dD===2){cU();dB=aV[dC]}}}if(!M(dB)||(dB&&dB[0]==="")){return false}return dB};this.deleteCustomVariable=function(dB,dC){if(this.getCustomVariable(dB,dC)){this.setCustomVariable(dB,"","",dC)}};this.deleteCustomVariables=function(dB){if(dB==="page"||dB===3){b5={}}else{if(dB==="event"){cw={}}else{if(dB==="visit"||dB===2){aV={}}}}};this.storeCustomVariablesInCookie=function(){bZ=true
+};this.setLinkTrackingTimer=function(dB){bS=dB};this.getLinkTrackingTimer=function(){return bS};this.setDownloadExtensions=function(dB){if(x(dB)){dB=dB.split("|")}dn=dB};this.addDownloadExtensions=function(dC){var dB;if(x(dC)){dC=dC.split("|")}for(dB=0;dB<dC.length;dB++){dn.push(dC[dB])}};this.removeDownloadExtensions=function(dD){var dC,dB=[];if(x(dD)){dD=dD.split("|")}for(dC=0;dC<dn.length;dC++){if(P(dD,dn[dC])===-1){dB.push(dn[dC])}}dn=dB};this.setDomains=function(dB){aC=x(dB)?[dB]:dB;var dF=false,dD=0,dC;for(dD;dD<aC.length;dD++){dC=String(aC[dD]);if(cW(c9,O(dC))){dF=true;break}var dE=cv(dC);if(dE&&dE!=="/"&&dE!=="/*"){dF=true;break}}if(!dF){aC.push(c9)}};this.setExcludedReferrers=function(dB){cL=x(dB)?[dB]:dB};this.enableCrossDomainLinking=function(){c2=true};this.disableCrossDomainLinking=function(){c2=false};this.isCrossDomainLinkingEnabled=function(){return c2};this.setCrossDomainLinkingTimeout=function(dB){a6=dB};this.getCrossDomainLinkingUrlParameter=function(){return t(az)+"="+t(bA())
+};this.setIgnoreClasses=function(dB){bI=x(dB)?[dB]:dB};this.setRequestMethod=function(dB){if(dB){ds=String(dB).toUpperCase()}else{ds=cr}if(ds==="GET"){this.disableAlwaysUseSendBeacon()}};this.setRequestContentType=function(dB){cK=dB||aM};this.setGenerationTimeMs=function(dB){ao("setGenerationTimeMs is no longer supported since Matomo 4. The call will be ignored. The replacement is setPagePerformanceTiming.")};this.setPagePerformanceTiming=function(dF,dH,dG,dC,dI,dD){var dE={pf_net:dF,pf_srv:dH,pf_tfr:dG,pf_dm1:dC,pf_dm2:dI,pf_onl:dD};try{dE=Q(dE,M);dE=B(dE);cx=l(dE);if(cx===""){ao("setPagePerformanceTiming() called without parameters. This function needs to be called with at least one performance parameter.");return}bo=false;bN=true}catch(dB){ao("setPagePerformanceTiming: "+dB.toString())}};this.setReferrerUrl=function(dB){bw=dB};this.setCustomUrl=function(dB){bb=b4(bW,dB)};this.getCurrentUrl=function(){return bb||bW};this.setDocumentTitle=function(dB){bq=dB};this.setPageViewId=function(dB){aQ=dB;
+bJ=true};this.setAPIUrl=function(dB){bQ=dB};this.setDownloadClasses=function(dB){bU=x(dB)?[dB]:dB};this.setLinkClasses=function(dB){bf=x(dB)?[dB]:dB};this.setCampaignNameKey=function(dB){cB=x(dB)?[dB]:dB};this.setCampaignKeywordKey=function(dB){bP=x(dB)?[dB]:dB};this.discardHashTag=function(dB){bY=dB};this.setCookieNamePrefix=function(dB){br=dB;if(aV){aV=b6()}};this.setCookieDomain=function(dB){var dC=O(dB);if(!bt&&!bF(dC)){ao("Can't write cookie on domain "+dB)}else{de=dC;bp()}};this.setExcludedQueryParams=function(dB){cs=x(dB)?[dB]:dB};this.getCookieDomain=function(){return de};this.hasCookies=function(){return"1"===ce()};this.setSessionCookie=function(dD,dC,dB){if(!dD){throw new Error("Missing cookie name")}if(!M(dB)){dB=cy}bD.push(dD);dw(aY(dD),dC,dB,by,de,b1,aN)};this.getCookie=function(dC){var dB=aH(aY(dC));if(dB===0){return null}return dB};this.setCookiePath=function(dB){by=dB;bp()};this.getCookiePath=function(dB){return by};this.setVisitorCookieTimeout=function(dB){cZ=dB*1000};this.setSessionCookieTimeout=function(dB){cy=dB*1000
+};this.getSessionCookieTimeout=function(){return cy};this.setReferralCookieTimeout=function(dB){dm=dB*1000};this.setConversionAttributionFirstReferrer=function(dB){bE=dB};this.setSecureCookie=function(dB){if(dB&&location.protocol!=="https:"){ao("Error in setSecureCookie: You cannot use `Secure` on http.");return}b1=dB};this.setCookieSameSite=function(dB){dB=String(dB);dB=dB.charAt(0).toUpperCase()+dB.toLowerCase().slice(1);if(dB!=="None"&&dB!=="Lax"&&dB!=="Strict"){ao("Ignored value for sameSite. Please use either Lax, None, or Strict.");return}if(dB==="None"){if(location.protocol==="https:"){this.setSecureCookie(true)}else{ao("sameSite=None cannot be used on http, reverted to sameSite=Lax.");dB="Lax"}}aN=dB};this.disableCookies=function(){bt=true;if(cf){aJ()}};this.areCookiesEnabled=function(){return !bt};this.setCookieConsentGiven=function(){if(bt&&!c5){bt=false;dd=true;if(cf&&aA){aR();var dB=cE("ping=1",null,"ping");bO(dB,bS)}}};this.requireCookieConsent=function(){if(this.getRememberedCookieConsent()){return false
+}this.disableCookies();return true};this.getRememberedCookieConsent=function(){return aH(cS)};this.forgetCookieConsentGiven=function(){b8(cS,by,de);this.disableCookies()};this.rememberCookieConsentGiven=function(dC){if(dC){dC=dC*60*60*1000}else{dC=30*365*24*60*60*1000}this.setCookieConsentGiven();var dB=new Date().getTime();dw(cS,dB,dC,by,de,b1,aN)};this.deleteCookies=function(){aJ()};this.setDoNotTrack=function(dC){var dB=g.doNotTrack||g.msDoNotTrack;c5=dC&&(dB==="yes"||dB==="1");if(c5){this.disableCookies()}};this.alwaysUseSendBeacon=function(){dc=true};this.disableAlwaysUseSendBeacon=function(){dc=false};this.addListener=function(dC,dB){av(dC,dB,false)};this.enableLinkTracking=function(dC){if(dq){return}dq=true;var dB=this;q(function(){au=true;var dD=J.body;av(dD,dC,true)})};this.enableJSErrorTracking=function(){if(c7){return}c7=true;var dB=W.onerror;W.onerror=function(dG,dE,dD,dF,dC){cq(function(){var dH="JavaScript Errors";var dI=dE+":"+dD;if(dF){dI+=":"+dF}if(P(cF,dH+dI+dG)===-1){cF.push(dH+dI+dG);
+ax(dH,dI,dG)}});if(dB){return dB(dG,dE,dD,dF,dC)}return false}};this.disablePerformanceTracking=function(){a9=false};this.enableHeartBeatTimer=function(dB){dB=Math.max(dB||15,5);bc=dB*1000;if(df!==null){dy()}};this.disableHeartBeatTimer=function(){if(bc||aS){if(W.removeEventListener){W.removeEventListener("focus",bh);W.removeEventListener("blur",aD);W.removeEventListener("visibilitychange",a1)}else{if(W.detachEvent){W.detachEvent("onfocus",bh);W.detachEvent("onblur",aD);W.detachEvent("visibilitychange",a1)}}}bc=null;aS=false};this.killFrame=function(){if(W.location!==W.top.location){W.top.location=W.location}};this.redirectFile=function(dB){if(W.location.protocol==="file:"){W.location=dB}};this.setCountPreRendered=function(dB){bl=dB};this.trackGoal=function(dB,dE,dD,dC){cq(function(){c8(dB,dE,dD,dC)})};this.trackLink=function(dC,dB,dE,dD){cq(function(){di(dC,dB,dE,dD)})};this.getNumTrackedPageViews=function(){return cD};this.trackPageView=function(dB,dD,dC){ck=[];c0=[];cF=[];if(R(cf)){cq(function(){ad(aI,bQ,cf)
+})}else{cq(function(){cD++;b9(dB,dD,dC)})}};this.disableBrowserFeatureDetection=function(){dd=false};this.enableBrowserFeatureDetection=function(){dd=true};this.trackAllContentImpressions=function(){if(R(cf)){return}cq(function(){q(function(){var dB=w.findContentNodes();var dC=cO(dB);bM.pushMultiple(dC)})})};this.trackVisibleContentImpressions=function(dB,dC){if(R(cf)){return}if(!M(dB)){dB=true}if(!M(dC)){dC=750}aX(dB,dC,this);cq(function(){n(function(){var dD=w.findContentNodes();var dE=bg(dD);bM.pushMultiple(dE)})})};this.trackContentImpression=function(dD,dB,dC){if(R(cf)){return}dD=a(dD);dB=a(dB);dC=a(dC);if(!dD){return}dB=dB||"Unknown";cq(function(){var dE=aK(dD,dB,dC);bM.push(dE)})};this.trackContentImpressionsWithinNode=function(dB){if(R(cf)||!dB){return}cq(function(){if(co){n(function(){var dC=w.findContentNodesWithinNode(dB);var dD=bg(dC);bM.pushMultiple(dD)})}else{q(function(){var dC=w.findContentNodesWithinNode(dB);var dD=cO(dC);bM.pushMultiple(dD)})}})};this.trackContentInteraction=function(dD,dE,dB,dC){if(R(cf)){return
+}dD=a(dD);dE=a(dE);dB=a(dB);dC=a(dC);if(!dD||!dE){return}dB=dB||"Unknown";cq(function(){var dF=aU(dD,dE,dB,dC);if(dF){bM.push(dF)}})};this.trackContentInteractionNode=function(dD,dC){if(R(cf)||!dD){return}var dB=null;cq(function(){dB=dt(dD,dC);if(dB){bM.push(dB)}});return dB};this.logAllContentBlocksOnPage=function(){var dD=w.findContentNodes();var dB=w.collectContent(dD);var dC=typeof console;if(dC!=="undefined"&&console&&console.log){console.log(dB)}};this.trackEvent=function(dC,dE,dB,dD,dG,dF){cq(function(){ax(dC,dE,dB,dD,dG,dF)})};this.trackSiteSearch=function(dB,dD,dC,dE){ck=[];cq(function(){ch(dB,dD,dC,dE)})};this.setEcommerceView=function(dF,dB,dD,dC){cG={};if(ac(dD)){dD=String(dD)}if(!M(dD)||dD===null||dD===false||!dD.length){dD=""}else{if(dD instanceof Array){dD=W.JSON.stringify(dD)}}var dE="_pkc";cG[dE]=dD;if(M(dC)&&dC!==null&&dC!==false&&String(dC).length){dE="_pkp";cG[dE]=dC}if(!ac(dF)&&!ac(dB)){return}if(ac(dF)){dE="_pks";cG[dE]=dF}if(!ac(dB)){dB=""}dE="_pkn";cG[dE]=dB};this.getEcommerceItems=function(){return JSON.parse(JSON.stringify(dh))
+};this.addEcommerceItem=function(dF,dB,dD,dC,dE){if(ac(dF)){dh[dF]=[String(dF),dB,dD,dC,dE]}};this.removeEcommerceItem=function(dB){if(ac(dB)){dB=String(dB);delete dh[dB]}};this.clearEcommerceCart=function(){dh={}};this.trackEcommerceOrder=function(dB,dF,dE,dD,dC,dG){b7(dB,dF,dE,dD,dC,dG)};this.trackEcommerceCartUpdate=function(dB){bB(dB)};this.trackRequest=function(dC,dE,dD,dB){cq(function(){var dF=cE(dC,dE,dB);bO(dF,bS,dD)})};this.ping=function(){this.trackRequest("ping=1",null,null,"ping")};this.disableQueueRequest=function(){bM.enabled=false};this.setRequestQueueInterval=function(dB){if(dB<1000){throw new Error("Request queue interval needs to be at least 1000ms")}bM.interval=dB};this.queueRequest=function(dB){cq(function(){var dC=cE(dB);bM.push(dC)})};this.isConsentRequired=function(){return cP};this.getRememberedConsent=function(){var dB=aH(bk);if(aH(c1)){if(dB){b8(bk,by,de)}return null}if(!dB||dB===0){return null}return dB};this.hasRememberedConsent=function(){return !!this.getRememberedConsent()
+};this.requireConsent=function(){cP=true;bL=this.hasRememberedConsent();if(!bL){bt=true}y++;b["CoreConsent"+y]={unload:function(){if(!bL){aJ()}}}};this.setConsentGiven=function(dC){bL=true;dd=true;b8(c1,by,de);var dD,dB;for(dD=0;dD<c0.length;dD++){dB=typeof c0[dD];if(dB==="string"){bO(c0[dD],bS)}else{if(dB==="object"){dx(c0[dD],bS)}}}c0=[];if(!M(dC)||dC){this.setCookieConsentGiven()}};this.rememberConsentGiven=function(dD){if(dD){dD=dD*60*60*1000}else{dD=30*365*24*60*60*1000}var dB=true;this.setConsentGiven(dB);var dC=new Date().getTime();dw(bk,dC,dD,by,de,b1,aN)};this.forgetConsentGiven=function(){var dB=30*365*24*60*60*1000;b8(bk,by,de);dw(c1,new Date().getTime(),dB,by,de,b1,aN);this.forgetCookieConsentGiven();this.requireConsent()};this.isUserOptedOut=function(){return !bL};this.optUserOut=this.forgetConsentGiven;this.forgetUserOptOut=function(){this.setConsentGiven(false)};n(function(){setTimeout(function(){bN=true},0)});u.trigger("TrackerSetup",[this]);u.addPlugin("TrackerVisitorIdCookie"+aB,{unload:function(){if(!aA){aR();
+dr()}}})}function K(){return{push:aj}}function c(ay,ax){var az={};var av,aw;for(av=0;av<ax.length;av++){var at=ax[av];az[at]=1;for(aw=0;aw<ay.length;aw++){if(ay[aw]&&ay[aw][0]){var au=ay[aw][0];if(at===au){aj(ay[aw]);delete ay[aw];if(az[au]>1&&au!=="addTracker"&&au!=="enableLinkTracking"){ao("The method "+au+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Matomo trackers documentation: https://developer.matomo.org/guides/tracking-javascript-guide#multiple-piwik-trackers')}az[au]++}}}}return ay}var E=["addTracker","forgetCookieConsentGiven","requireCookieConsent","disableBrowserFeatureDetection","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setCookieSameSite","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setVisitorId","setSiteId","alwaysUseSendBeacon","disableAlwaysUseSendBeacon","enableLinkTracking","setCookieConsentGiven","requireConsent","setConsentGiven","disablePerformanceTracking","setPagePerformanceTiming","setExcludedQueryParams","setExcludedReferrers"];
function ah(av,au){var at=new T(av,au);L.push(at);_paq=c(_paq,E);for(H=0;H<_paq.length;H++){if(_paq[H]){aj(_paq[H])}}_paq=new K();u.trigger("TrackerAdded",[at]);return at}ar(W,"beforeunload",am,false);ar(W,"visibilitychange",function(){if(m){return}if(J.visibilityState==="hidden"){ag("unload")}},false);ar(W,"online",function(){if(M(g.serviceWorker)){g.serviceWorker.ready.then(function(at){if(at&&at.sync){return at.sync.register("matomoSync")}},function(){})}},false);ar(W,"message",function(ay){if(!ay||!ay.origin){return}var aA,aw,au;var aB=d(ay.origin);var ax=u.getAsyncTrackers();for(aw=0;aw<ax.length;aw++){au=d(ax[aw].getMatomoUrl());if(au===aB){aA=ax[aw];break}}if(!aA){return}var av=null;try{av=JSON.parse(ay.data)}catch(az){return}if(!av){return}function at(aE){var aG=J.getElementsByTagName("iframe");for(aw=0;aw<aG.length;aw++){var aF=aG[aw];var aC=d(aF.src);if(aF.contentWindow&&M(aF.contentWindow.postMessage)&&aC===aB){var aD=JSON.stringify(aE);aF.contentWindow.postMessage(aD,"*")}}}if(M(av.maq_initial_value)){at({maq_opted_in:av.maq_initial_value&&aA.hasConsent(),maq_url:aA.getMatomoUrl(),maq_optout_by_default:aA.isConsentRequired()})
}else{if(M(av.maq_opted_in)){ax=u.getAsyncTrackers();for(aw=0;aw<ax.length;aw++){aA=ax[aw];if(av.maq_opted_in){aA.rememberConsentGiven()}else{aA.forgetConsentGiven()}}at({maq_confirm_opted_in:aA.hasConsent(),maq_url:aA.getMatomoUrl(),maq_optout_by_default:aA.isConsentRequired()})}}},false);Date.prototype.getTimeAlias=Date.prototype.getTime;u={initialized:false,JSON:W.JSON,DOM:{addEventListener:function(aw,av,au,at){var ax=typeof at;if(ax==="undefined"){at=false}ar(aw,av,au,at)},onLoad:n,onReady:q,isNodeVisible:i,isOrWasNodeVisible:w.isNodeVisible},on:function(au,at){if(!z[au]){z[au]=[]}z[au].push(at)},off:function(av,au){if(!z[av]){return}var at=0;for(at;at<z[av].length;at++){if(z[av][at]===au){z[av].splice(at,1)}}},trigger:function(av,aw,au){if(!z[av]){return}var at=0;for(at;at<z[av].length;at++){z[av][at].apply(au||W,aw)}},addPlugin:function(at,au){b[at]=au},getTracker:function(au,at){if(!M(at)){at=this.getAsyncTracker().getSiteId()}if(!M(au)){au=this.getAsyncTracker().getTrackerUrl()
}return new T(au,at)},getAsyncTrackers:function(){return L},addTracker:function(av,au){var at;if(!L.length){at=ah(av,au)}else{at=L[0].addTracker(av,au)}return at},getAsyncTracker:function(ax,aw){var av;if(L&&L.length&&L[0]){av=L[0]}else{return ah(ax,aw)}if(!aw&&!ax){return av}if((!M(aw)||null===aw)&&av){aw=av.getSiteId()}if((!M(ax)||null===ax)&&av){ax=av.getTrackerUrl()}var au,at=0;for(at;at<L.length;at++){au=L[at];if(au&&String(au.getSiteId())===String(aw)&&au.getTrackerUrl()===ax){return au}}},retryMissedPluginCalls:function(){var au=al;al=[];var at=0;for(at;at<au.length;at++){aj(au[at])}}};if(typeof define==="function"&&define.amd){define("piwik",[],function(){return u});define("matomo",[],function(){return u})}return u}())}
diff --git a/matomo.js b/matomo.js
index 6893f82409..58e9482f66 100644
--- a/matomo.js
+++ b/matomo.js
@@ -29,42 +29,43 @@ at=ai.findFirstNodeHavingAttribute(au,this.CONTENT_PIECE_ATTR);if(!at){at=ai.fin
}if(aw){aw+="&ca=1"}return aw},buildContentBlock:function(av){if(!av){return}var at=this.findContentName(av);var au=this.findContentPiece(av);var aw=this.findContentTarget(av);at=this.trim(at);au=this.trim(au);aw=this.trim(aw);return{name:at||"Unknown",piece:au||"Unknown",target:aw||""}},collectContent:function(aw){if(!aw||!aw.length){return[]}var av=[];var at,au;for(at=0;at<aw.length;at++){au=this.buildContentBlock(aw[at]);if(M(au)){av.push(au)}}return av},setLocation:function(at){this.location=at},getLocation:function(){var at=this.location||W.location;if(!at.origin){at.origin=at.protocol+"//"+at.hostname+(at.port?":"+at.port:"")}return at},toAbsoluteUrl:function(au){if((!au||String(au)!==au)&&au!==""){return au}if(""===au){return this.getLocation().href}if(au.search(/^\/\//)!==-1){return this.getLocation().protocol+au}if(au.search(/:\/\//)!==-1){return au}if(0===au.indexOf("#")){return this.getLocation().origin+this.getLocation().pathname+au}if(0===au.indexOf("?")){return this.getLocation().origin+this.getLocation().pathname+au
}if(0===au.search("^[a-zA-Z]{2,11}:")){return au}if(au.search(/^\//)!==-1){return this.getLocation().origin+au}var at="(.*/)";var av=this.getLocation().origin+this.getLocation().pathname.match(new RegExp(at))[0];return av+au},isUrlToCurrentDomain:function(au){var av=this.toAbsoluteUrl(au);if(!av){return false}var at=this.getLocation().origin;if(at===av){return true}if(0===String(av).indexOf(at)){if(":"===String(av).substr(at.length,1)){return false}return true}return false},setHrefAttribute:function(au,at){if(!au||!at){return}ai.setAnyAttribute(au,"href",at)},shouldIgnoreInteraction:function(at){if(ai.hasNodeAttribute(at,this.CONTENT_IGNOREINTERACTION_ATTR)){return true}if(ai.hasNodeCssClass(at,this.CONTENT_IGNOREINTERACTION_CLASS)){return true}if(ai.hasNodeCssClass(at,this.LEGACY_CONTENT_IGNOREINTERACTION_CLASS)){return true}return false}};function aa(au,ax){if(ax){return ax}au=w.toAbsoluteUrl(au);if(A(au,"?")){var aw=au.indexOf("?");au=au.slice(0,aw)}if(U(au,"matomo.php")){au=f(au,"matomo.php".length)
}else{if(U(au,"piwik.php")){au=f(au,"piwik.php".length)}else{if(U(au,".php")){var at=au.lastIndexOf("/");var av=1;au=au.slice(0,at+av)}}}if(U(au,"/js/")){au=f(au,"js/".length)}return au}function R(az){var aB="Matomo_Overlay";var au=new RegExp("index\\.php\\?module=Overlay&action=startOverlaySession&idSite=([0-9]+)&period=([^&]+)&date=([^&]+)(&segment=[^&]*)?");var av=au.exec(J.referrer);if(av){var ax=av[1];if(ax!==String(az)){return false}var ay=av[2],at=av[3],aw=av[4];if(!aw){aw=""}else{if(aw.indexOf("&segment=")===0){aw=aw.substr("&segment=".length)}}W.name=aB+"###"+ay+"###"+at+"###"+aw}var aA=W.name.split("###");return aA.length===4&&aA[0]===aB}function ad(au,az,av){var ay=W.name.split("###"),ax=ay[1],at=ay[2],aw=ay[3],aA=aa(au,az);o(aA+"plugins/Overlay/client/client.js?v=1",function(){Matomo_Overlay_Client.initialize(aA,av,ax,at,aw)})}function v(){var av;try{av=W.frameElement}catch(au){return true}if(M(av)){return(av&&String(av.nodeName).toLowerCase()==="iframe")?true:false}try{return W.self!==W.top
-}catch(at){return true}}function T(cj,cf){var bP=this,bj="mtm_consent",cN="mtm_cookie_consent",cW="mtm_consent_removed",ca=ae(J.domain,W.location.href,N()),c4=O(ca[0]),bT=p(ca[1]),bu=p(ca[2]),c2=false,cn="GET",dm=cn,aM="application/x-www-form-urlencoded; charset=UTF-8",cF=aM,aI=cj||"",bO="",db="",ct="",cc=cf||"",bF="",bU="",ba,bp="",di=["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","rtf","sea","sit","tar","tbz","tbz2","bz","bz2","tgz","torrent","txt","wav","wma","wmv","wpd","xls","xlsx","xml","z","zip"],aC=[c4],bG=[],cG=[],co=[],bR=[],be=[],bQ=500,c7=true,cT,bb,bX,bV,at,cw=["pk_campaign","mtm_campaign","piwik_campaign","matomo_campaign","utm_campaign","utm_source","utm_medium"],bN=["pk_kwd","mtm_kwd","piwik_kwd","matomo_kwd","utm_term"],bq="_pk_",az="pk_vid",a5=180,c9,bw,bY=false,aN="Lax",bs=false,c0,bk,bC,cU=33955200000,cu=1800000,dh=15768000000,a8=true,bL=false,bn=false,bW=false,aV=false,ch,b2={},cs={},bt={},bA=200,cB={},dc={},dj={},cg=[],ck=false,cL=false,au=false,dk=false,cX=false,aS=false,bi=v(),cH=null,da=null,aW,bI,cd=aq,bv,aQ,bH=false,cy=0,bB=["id","ses","cvar","ref"],cK=false,bJ=null,cV=[],cA=[],aB=X++,aA=false,c8=true;
-try{bp=J.title}catch(cI){bp=""}function aH(dy){if(bs){return 0}var dw=new RegExp("(^|;)[ ]*"+dy+"=([^;]*)"),dx=dw.exec(J.cookie);return dx?V(dx[2]):0}bJ=!aH(cW);function dr(dA,dB,dE,dD,dy,dz,dC){if(bs&&dA!==cW){return}var dx;if(dE){dx=new Date();dx.setTime(dx.getTime()+dE)}if(!dC){dC="Lax"}J.cookie=dA+"="+t(dB)+(dE?";expires="+dx.toGMTString():"")+";path="+(dD||"/")+(dy?";domain="+dy:"")+(dz?";secure":"")+";SameSite="+dC;if((!dE||dE>=0)&&aH(dA)!==String(dB)){var dw="There was an error setting cookie `"+dA+"`. Please check domain and path.";ao(dw)}}function b8(dw){var dy,dx;dw=j(dw,az);for(dx=0;dx<co.length;dx++){dw=j(dw,co[dx])}if(bV){dy=new RegExp("#.*");return dw.replace(dy,"")}return dw}function b1(dy,dw){var dz=s(dw),dx;if(dz){return dw}if(dw.slice(0,1)==="/"){return s(dy)+"://"+d(dy)+dw}dy=b8(dy);dx=dy.indexOf("?");if(dx>=0){dy=dy.slice(0,dx)}dx=dy.lastIndexOf("/");if(dx!==dy.length-1){dy=dy.slice(0,dx+1)}return dy+dw}function cR(dy,dw){var dx;dy=String(dy).toLowerCase();dw=String(dw).toLowerCase();
-if(dy===dw){return true}if(dw.slice(0,1)==="."){if(dy===dw.slice(1)){return true}dx=dy.length-dw.length;if((dx>0)&&(dy.slice(dx)===dw)){return true}}return false}function cr(dw){var dx=document.createElement("a");if(dw.indexOf("//")!==0&&dw.indexOf("http")!==0){if(dw.indexOf("*")===0){dw=dw.substr(1)}if(dw.indexOf(".")===0){dw=dw.substr(1)}dw="http://"+dw}dx.href=w.toAbsoluteUrl(dw);if(dx.pathname){return dx.pathname}return""}function a9(dx,dw){if(!an(dw,"/")){dw="/"+dw}if(!an(dx,"/")){dx="/"+dx}var dy=(dw==="/"||dw==="/*");if(dy){return true}if(dx===dw){return true}dw=String(dw).toLowerCase();dx=String(dx).toLowerCase();if(U(dw,"*")){dw=dw.slice(0,-1);dy=(!dw||dw==="/");if(dy){return true}if(dx===dw){return true}return dx.indexOf(dw)===0}if(!U(dx,"/")){dx+="/"}if(!U(dw,"/")){dw+="/"}return dx.indexOf(dw)===0}function aw(dA,dC){var dx,dw,dy,dz,dB;for(dx=0;dx<aC.length;dx++){dz=O(aC[dx]);dB=cr(aC[dx]);if(cR(dA,dz)&&a9(dC,dB)){return true}}return false}function a1(dz){var dx,dw,dy;for(dx=0;
-dx<aC.length;dx++){dw=O(aC[dx].toLowerCase());if(dz===dw){return true}if(dw.slice(0,1)==="."){if(dz===dw.slice(1)){return true}dy=dz.length-dw.length;if((dy>0)&&(dz.slice(dy)===dw)){return true}}}return false}function cx(dw){var dx,dz,dB,dy,dA;if(!dw.length||!cG.length){return false}dz=d(dw);dB=cr(dw);if(dz.indexOf("www.")===0){dz=dz.substr(4)}for(dx=0;dx<cG.length;dx++){dy=O(cG[dx]);dA=cr(cG[dx]);if(dy.indexOf("www.")===0){dy=dy.substr(4)}if(cR(dz,dy)&&a9(dB,dA)){return true}}return false}function cv(dw,dy){dw=dw.replace("send_image=0","send_image=1");var dx=new Image(1,1);dx.onload=function(){H=0;if(typeof dy==="function"){dy({request:dw,trackerUrl:aI,success:true})}};dx.onerror=function(){if(typeof dy==="function"){dy({request:dw,trackerUrl:aI,success:false})}};dx.src=aI+(aI.indexOf("?")<0?"?":"&")+dw}function cO(dw){if(dm==="POST"){return true}return dw&&(dw.length>2000||dw.indexOf('{"requests"')===0)}function aP(){return"object"===typeof g&&"function"===typeof g.sendBeacon&&"function"===typeof Blob
-}function bc(dA,dD,dC){var dy=aP();if(!dy){return false}var dz={type:"application/x-www-form-urlencoded; charset=UTF-8"};var dE=false;var dx=aI;try{var dw=new Blob([dA],dz);if(dC&&!cO(dA)){dw=new Blob([],dz);dx=dx+(dx.indexOf("?")<0?"?":"&")+dA}dE=g.sendBeacon(dx,dw)}catch(dB){return false}if(dE&&typeof dD==="function"){dD({request:dA,trackerUrl:aI,success:true,isSendBeacon:true})}return dE}function dg(dx,dy,dw){if(!M(dw)||null===dw){dw=true}if(m&&bc(dx,dy,dw)){return}setTimeout(function(){if(m&&bc(dx,dy,dw)){return}var dB;try{var dA=W.XMLHttpRequest?new W.XMLHttpRequest():W.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):null;dA.open("POST",aI,true);dA.onreadystatechange=function(){if(this.readyState===4&&!(this.status>=200&&this.status<300)){var dC=m&&bc(dx,dy,dw);if(!dC&&dw){cv(dx,dy)}else{if(typeof dy==="function"){dy({request:dx,trackerUrl:aI,success:false,xhr:this})}}}else{if(this.readyState===4&&(typeof dy==="function")){dy({request:dx,trackerUrl:aI,success:true,xhr:this})}}};
-dA.setRequestHeader("Content-Type",cF);dA.withCredentials=true;dA.send(dx)}catch(dz){dB=m&&bc(dx,dy,dw);if(!dB&&dw){cv(dx,dy)}else{if(typeof dy==="function"){dy({request:dx,trackerUrl:aI,success:false})}}}},50)}function cl(dx){var dw=new Date();var dy=dw.getTime()+dx;if(!r||dy>r){r=dy}}function bg(){bi=true;cH=new Date().getTime()}function dq(){var dw=new Date().getTime();return !cH||(dw-cH)>bb}function aD(){if(dq()){bX()}}function a0(){if(J.visibilityState==="hidden"&&dq()){bX()}else{if(J.visibilityState==="visible"){cH=new Date().getTime()}}}function dt(){if(aS||!bb){return}aS=true;ar(W,"focus",bg);ar(W,"blur",aD);ar(W,"visibilitychange",a0);af++;u.addPlugin("HeartBeat"+af,{unload:function(){if(aS&&dq()){bX()}}})}function cM(dA){var dx=new Date();var dw=dx.getTime();da=dw;if(cL&&dw<cL){var dy=cL-dw;setTimeout(dA,dy);cl(dy+50);cL+=50;return}if(cL===false){var dz=800;cL=dw+dz}dA()}function aT(){if(aH(cW)){bJ=false}else{if(aH(bj)){bJ=true}}}function bM(dx,dw,dy){aT();if(!bJ){cV.push(dx);
-return}aA=true;if(!c0&&dx){if(cK&&bJ){dx+="&consent=1"}cM(function(){if(c7&&bc(dx,dy,true)){cl(100);return}if(cO(dx)){dg(dx,dy)}else{cv(dx,dy)}cl(dw)})}if(!aS){dt()}}function cq(dw){if(c0){return false}return(dw&&dw.length)}function df(dw,dA){if(!dA||dA>=dw.length){return[dw]}var dx=0;var dy=dw.length;var dz=[];for(dx;dx<dy;dx+=dA){dz.push(dw.slice(dx,dx+dA))}return dz}function ds(dx,dw){if(!cq(dx)){return}if(!bJ){cV.push(dx);return}aA=true;cM(function(){var dA=df(dx,50);var dy=0,dz;for(dy;dy<dA.length;dy++){dz='{"requests":["?'+dA[dy].join('","?')+'"],"send_image":0}';if(c7&&bc(dz,null,false)){cl(100)}else{dg(dz,null,false)}}cl(dw)})}function aY(dw){return bq+dw+"."+cc+"."+bv}function b5(dy,dx,dw){dr(dy,"",-129600000,dx,dw)}function cb(){if(bs){return"0"}if(!M(W.showModalDialog)&&M(g.cookieEnabled)){return g.cookieEnabled?"1":"0"}var dw=bq+"testcookie";dr(dw,"1",undefined,bw,c9,bY,aN);var dx=aH(dw)==="1"?"1":"0";b5(dw);return dx}function bo(){bv=cd((c9||c4)+(bw||"/")).slice(0,4)}function cS(){if(!c8){return{}
-}if(M(dj.res)){return dj}var dx,dz,dA={pdf:"application/pdf",qt:"video/quicktime",realp:"audio/x-pn-realaudio-plugin",wma:"application/x-mplayer2",fla:"application/x-shockwave-flash",java:"application/x-java-vm",ag:"application/x-silverlight"};if(!((new RegExp("MSIE")).test(g.userAgent))){if(g.mimeTypes&&g.mimeTypes.length){for(dx in dA){if(Object.prototype.hasOwnProperty.call(dA,dx)){dz=g.mimeTypes[dA[dx]];dj[dx]=(dz&&dz.enabledPlugin)?"1":"0"}}}if(!((new RegExp("Edge[ /](\\d+[\\.\\d]+)")).test(g.userAgent))&&typeof navigator.javaEnabled!=="unknown"&&M(g.javaEnabled)&&g.javaEnabled()){dj.java="1"}if(!M(W.showModalDialog)&&M(g.cookieEnabled)){dj.cookie=g.cookieEnabled?"1":"0"}else{dj.cookie=cb()}}var dy=parseInt(ab.width,10);var dw=parseInt(ab.height,10);dj.res=parseInt(dy,10)+"x"+parseInt(dw,10);return dj}function b3(){var dx=aY("cvar"),dw=aH(dx);if(dw&&dw.length){dw=W.JSON.parse(dw);if(Z(dw)){return dw}}return{}}function cP(){if(aV===false){aV=b3()}}function c1(){var dw=cS();return cd((g.userAgent||"")+(g.platform||"")+W.JSON.stringify(dw)+(new Date()).getTime()+Math.random()).slice(0,16)
-}function aF(){var dw=cS();return cd((g.userAgent||"")+(g.platform||"")+W.JSON.stringify(dw)).slice(0,6)}function bl(){return Math.floor((new Date()).getTime()/1000)}function aO(){var dx=bl();var dy=aF();var dw=String(dx)+dy;return dw}function de(dy){dy=String(dy);var dB=aF();var dz=dB.length;var dA=dy.substr(-1*dz,dz);var dx=parseInt(dy.substr(0,dy.length-dz),10);if(dx&&dA&&dA===dB){var dw=bl();if(a5<=0){return true}if(dw>=dx&&dw<=(dx+a5)){return true}}return false}function du(dw){if(!cX){return""}var dA=e(dw,az);if(!dA){return""}dA=String(dA);var dy=new RegExp("^[a-zA-Z0-9]+$");if(dA.length===32&&dy.test(dA)){var dx=dA.substr(16,32);if(de(dx)){var dz=dA.substr(0,16);return dz}}return""}function cY(){if(!bU){bU=du(bT)}var dy=new Date(),dw=Math.round(dy.getTime()/1000),dx=aY("id"),dB=aH(dx),dA,dz;if(dB){dA=dB.split(".");dA.unshift("0");if(bU.length){dA[1]=bU}return dA}if(bU.length){dz=bU}else{if("0"===cb()){dz=""}else{dz=c1()}}dA=["1",dz,dw];return dA}function a4(){var dz=cY(),dx=dz[0],dy=dz[1],dw=dz[2];
-return{newVisitor:dx,uuid:dy,createTs:dw}}function aL(){var dz=new Date(),dx=dz.getTime(),dA=a4().createTs;var dw=parseInt(dA,10);var dy=(dw*1000)+cU-dx;return dy}function aR(dw){if(!cc){return}var dy=new Date(),dx=Math.round(dy.getTime()/1000);if(!M(dw)){dw=a4()}var dz=dw.uuid+"."+dw.createTs+".";dr(aY("id"),dz,aL(),bw,c9,bY,aN)}function bS(){var dw=aH(aY("ref"));if(dw.length){try{dw=W.JSON.parse(dw);if(Z(dw)){return dw}}catch(dx){}}return["","",0,""]}function bD(dy){var dx=bq+"testcookie_domain";var dw="testvalue";dr(dx,dw,10000,null,dy,bY,aN);if(aH(dx)===dw){b5(dx,null,dy);return true}return false}function aJ(){var dx=bs;bs=false;var dw,dy;for(dw=0;dw<bB.length;dw++){dy=aY(bB[dw]);if(dy!==cW&&dy!==bj&&0!==aH(dy)){b5(dy,bw,c9)}}bs=dx}function b9(dw){cc=dw}function dv(dA){if(!dA||!Z(dA)){return}var dz=[];var dy;for(dy in dA){if(Object.prototype.hasOwnProperty.call(dA,dy)){dz.push(dy)}}var dB={};dz.sort();var dw=dz.length;var dx;for(dx=0;dx<dw;dx++){dB[dz[dx]]=dA[dz[dx]]}return dB}function ci(){dr(aY("ses"),"1",cu,bw,c9,bY,aN)
-}function bm(){var dz="";var dx="abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";var dy=dx.length;var dw;for(dw=0;dw<6;dw++){dz+=dx.charAt(Math.floor(Math.random()*dy))}return dz}function aE(dx){if(ct!==""){dx+=ct;bn=true;return dx}if(!h){return dx}var dy=(typeof h.timing==="object")&&h.timing?h.timing:undefined;if(!dy){dy=(typeof h.getEntriesByType==="function")&&h.getEntriesByType("navigation")?h.getEntriesByType("navigation")[0]:undefined}if(!dy){return dx}var dw="";if(dy.connectEnd&&dy.fetchStart){if(dy.connectEnd<dy.fetchStart){return dx}dw+="&pf_net="+Math.round(dy.connectEnd-dy.fetchStart)}if(dy.responseStart&&dy.requestStart){if(dy.responseStart<dy.requestStart){return dx}dw+="&pf_srv="+Math.round(dy.responseStart-dy.requestStart)}if(dy.responseStart&&dy.responseEnd){if(dy.responseEnd<dy.responseStart){return dx}dw+="&pf_tfr="+Math.round(dy.responseEnd-dy.responseStart)}if(M(dy.domLoading)){if(dy.domInteractive&&dy.domLoading){if(dy.domInteractive<dy.domLoading){return dx
-}dw+="&pf_dm1="+Math.round(dy.domInteractive-dy.domLoading)}}else{if(dy.domInteractive&&dy.responseEnd){if(dy.domInteractive<dy.responseEnd){return dx}dw+="&pf_dm1="+Math.round(dy.domInteractive-dy.responseEnd)}}if(dy.domComplete&&dy.domInteractive){if(dy.domComplete<dy.domInteractive){return dx}dw+="&pf_dm2="+Math.round(dy.domComplete-dy.domInteractive)}if(dy.loadEventEnd&&dy.loadEventStart){if(dy.loadEventEnd<dy.loadEventStart){return dx}dw+="&pf_onl="+Math.round(dy.loadEventEnd-dy.loadEventStart)}return dx+dw}function dl(){var dG,dz=new Date(),dA=Math.round(dz.getTime()/1000),dL,dy,dB=1024,dI,dC,dx=aY("ses"),dF=aY("ref"),dE=aH(dx),dw=bS(),dK=ba||bT,dH,dD,dJ={};dH=dw[0];dD=dw[1];dL=dw[2];dy=dw[3];if(!dE){if(!bC||!dH.length){for(dG in cw){if(Object.prototype.hasOwnProperty.call(cw,dG)){dH=e(dK,cw[dG]);if(dH.length){break}}}for(dG in bN){if(Object.prototype.hasOwnProperty.call(bN,dG)){dD=e(dK,bN[dG]);if(dD.length){break}}}}dI=d(bu);dC=dy.length?d(dy):"";if(dI.length&&!a1(dI)&&!cx(bu)&&(!bC||!dC.length||a1(dC)||cx(dy))){dy=bu
-}if(dy.length||dH.length){dL=dA;dw=[dH,dD,dL,b8(dy.slice(0,dB))];dr(dF,W.JSON.stringify(dw),dh,bw,c9,bY,aN)}}if(dH.length){dJ._rcn=t(dH)}if(dD.length){dJ._rck=t(dD)}dJ._refts=dL;if(String(dy).length){dJ._ref=t(b8(dy.slice(0,dB)))}return dJ}function cz(dx,dI,dJ){var dH,dw=new Date(),dG=aV,dC=aY("cvar"),dK=ba||bT;if(bs){aJ()}if(c0){return""}var dD=a4();var dA=J.characterSet||J.charset;if(!dA||dA.toLowerCase()==="utf-8"){dA=null}dx+="&idsite="+cc+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+dw.getHours()+"&m="+dw.getMinutes()+"&s="+dw.getSeconds()+"&url="+t(b8(dK))+(bu.length&&!cx(bu)?"&urlref="+t(b8(bu)):"")+(ac(bF)?"&uid="+t(bF):"")+"&_id="+dD.uuid+"&_idn="+dD.newVisitor+(dA?"&cs="+t(dA):"")+"&send_image=0";var dF=dl();for(dH in dF){if(Object.prototype.hasOwnProperty.call(dF,dH)){dx+="&"+dH+"="+dF[dH]}}var dM=cS();for(dH in dM){if(Object.prototype.hasOwnProperty.call(dM,dH)){dx+="&"+dH+"="+dM[dH]}}var dN=[];if(dI){for(dH in dI){if(Object.prototype.hasOwnProperty.call(dI,dH)&&/^dimension\d+$/.test(dH)){var dy=dH.replace("dimension","");
-dN.push(parseInt(dy,10));dN.push(String(dy));dx+="&"+dH+"="+t(dI[dH]);delete dI[dH]}}}if(dI&&D(dI)){dI=null}for(dH in cB){if(Object.prototype.hasOwnProperty.call(cB,dH)){dx+="&"+dH+"="+t(cB[dH])}}for(dH in bt){if(Object.prototype.hasOwnProperty.call(bt,dH)){var dB=(-1===P(dN,dH));if(dB){dx+="&dimension"+dH+"="+t(bt[dH])}}}if(dI){dx+="&data="+t(W.JSON.stringify(dI))}else{if(at){dx+="&data="+t(W.JSON.stringify(at))}}function dz(dO,dP){var dQ=W.JSON.stringify(dO);if(dQ.length>2){return"&"+dP+"="+t(dQ)}return""}var dL=dv(b2);var dE=dv(cs);dx+=dz(dL,"cvar");dx+=dz(dE,"e_cvar");if(aV){dx+=dz(aV,"_cvar");for(dH in dG){if(Object.prototype.hasOwnProperty.call(dG,dH)){if(aV[dH][0]===""||aV[dH][1]===""){delete aV[dH]}}}if(bW){dr(dC,W.JSON.stringify(aV),cu,bw,c9,bY,aN)}}if(a8&&bL&&!bn){dx=aE(dx);bn=true}if(aQ){dx+="&pv_id="+aQ}aR(dD);ci();dx+=ag(dJ,{tracker:bP,request:dx});if(db.length){dx+="&"+db}if(C(ch)){dx=ch(dx)}return dx}bX=function bd(){var dw=new Date();dw=dw.getTime();if(!da){return false}if(da+bb<=dw){bP.ping();
-return true}return false};function bx(dz,dy,dD,dA,dw,dG){var dC="idgoal=0",dx=new Date(),dE=[],dF,dB=String(dz).length;if(dB){dC+="&ec_id="+t(dz)}dC+="&revenue="+dy;if(String(dD).length){dC+="&ec_st="+dD}if(String(dA).length){dC+="&ec_tx="+dA}if(String(dw).length){dC+="&ec_sh="+dw}if(String(dG).length){dC+="&ec_dt="+dG}if(dc){for(dF in dc){if(Object.prototype.hasOwnProperty.call(dc,dF)){if(!M(dc[dF][1])){dc[dF][1]=""}if(!M(dc[dF][2])){dc[dF][2]=""}if(!M(dc[dF][3])||String(dc[dF][3]).length===0){dc[dF][3]=0}if(!M(dc[dF][4])||String(dc[dF][4]).length===0){dc[dF][4]=1}dE.push(dc[dF])}}dC+="&ec_items="+t(W.JSON.stringify(dE))}dC=cz(dC,at,"ecommerce");bM(dC,bQ);if(dB){dc={}}}function b4(dw,dA,dz,dy,dx,dB){if(String(dw).length&&M(dA)){bx(dw,dA,dz,dy,dx,dB)}}function bz(dw){if(M(dw)){bx("",dw,"","","","")}}function b6(dx,dz,dy){if(!bH){aQ=bm()}var dw=cz("action_name="+t(ap(dx||bp)),dz,"log");if(a8&&!bn){dw=aE(dw)}bM(dw,bQ,dy)}function a6(dy,dx){var dz,dw="(^| )(piwik[_-]"+dx+"|matomo[_-]"+dx;if(dy){for(dz=0;
-dz<dy.length;dz++){dw+="|"+dy[dz]}}dw+=")( |$)";return new RegExp(dw)}function aZ(dw){return(aI&&dw&&0===String(dw).indexOf(aI))}function cD(dA,dw,dB,dx){if(aZ(dw)){return 0}var dz=a6(bR,"download"),dy=a6(be,"link"),dC=new RegExp("\\.("+di.join("|")+")([?&#]|$)","i");if(dy.test(dA)){return"link"}if(dx||dz.test(dA)||dC.test(dw)){return"download"}if(dB){return 0}return"link"}function ay(dx){var dw;dw=dx.parentNode;while(dw!==null&&M(dw)){if(ai.isLinkElement(dx)){break}dx=dw;dw=dx.parentNode}return dx}function dp(dB){dB=ay(dB);if(!ai.hasNodeAttribute(dB,"href")){return}if(!M(dB.href)){return}var dA=ai.getAttributeValueFromNode(dB,"href");var dx=dB.pathname||cr(dB.href);var dC=dB.hostname||d(dB.href);var dD=dC.toLowerCase();var dy=dB.href.replace(dC,dD);var dz=new RegExp("^(javascript|vbscript|jscript|mocha|livescript|ecmascript|mailto|tel):","i");if(!dz.test(dy)){var dw=cD(dB.className,dy,aw(dD,dx),ai.hasNodeAttribute(dB,"download"));if(dw){return{type:dw,href:dy}}}}function aU(dw,dx,dy,dz){var dA=w.buildInteractionRequestParams(dw,dx,dy,dz);
-if(!dA){return}return cz(dA,null,"contentInteraction")}function bh(dw,dx){if(!dw||!dx){return false}var dy=w.findTargetNode(dw);if(w.shouldIgnoreInteraction(dy)){return false}dy=w.findTargetNodeNoDefault(dw);if(dy&&!Y(dy,dx)){return false}return true}function cC(dy,dx,dA){if(!dy){return}var dw=w.findParentContentNode(dy);if(!dw){return}if(!bh(dw,dy)){return}var dz=w.buildContentBlock(dw);if(!dz){return}if(!dz.target&&dA){dz.target=dA}return w.buildInteractionRequestParams(dx,dz.name,dz.piece,dz.target)}function a2(dx){if(!cg||!cg.length){return false}var dw,dy;for(dw=0;dw<cg.length;dw++){dy=cg[dw];if(dy&&dy.name===dx.name&&dy.piece===dx.piece&&dy.target===dx.target){return true}}return false}function a3(dw){return function(dA){if(!dw){return}var dy=w.findParentContentNode(dw);var dx;if(dA){dx=dA.target||dA.srcElement}if(!dx){dx=dw}if(!bh(dy,dx)){return}if(!dy){return false}var dB=w.findTargetNode(dy);if(!dB||w.shouldIgnoreInteraction(dB)){return false}var dz=dp(dB);if(dk&&dz&&dz.type){return dz.type
-}return bP.trackContentInteractionNode(dx,"click")}}function b7(dy){if(!dy||!dy.length){return}var dw,dx;for(dw=0;dw<dy.length;dw++){dx=w.findTargetNode(dy[dw]);if(dx&&!dx.contentInteractionTrackingSetupDone){dx.contentInteractionTrackingSetupDone=true;ar(dx,"click",a3(dx))}}}function bE(dy,dz){if(!dy||!dy.length){return[]}var dw,dx;for(dw=0;dw<dy.length;dw++){if(a2(dy[dw])){dy.splice(dw,1);dw--}else{cg.push(dy[dw])}}if(!dy||!dy.length){return[]}b7(dz);var dA=[];for(dw=0;dw<dy.length;dw++){dx=cz(w.buildImpressionRequestParams(dy[dw].name,dy[dw].piece,dy[dw].target),undefined,"contentImpressions");if(dx){dA.push(dx)}}return dA}function cJ(dx){var dw=w.collectContent(dx);return bE(dw,dx)}function bf(dx){if(!dx||!dx.length){return[]}var dw;for(dw=0;dw<dx.length;dw++){if(!w.isNodeVisible(dx[dw])){dx.splice(dw,1);dw--}}if(!dx||!dx.length){return[]}return cJ(dx)}function aK(dy,dw,dx){var dz=w.buildImpressionRequestParams(dy,dw,dx);return cz(dz,null,"contentImpression")}function dn(dz,dx){if(!dz){return
-}var dw=w.findParentContentNode(dz);var dy=w.buildContentBlock(dw);if(!dy){return}if(!dx){dx="Unknown"}return aU(dx,dy.name,dy.piece,dy.target)}function cZ(dx,dz,dw,dy){return"e_c="+t(dx)+"&e_a="+t(dz)+(M(dw)?"&e_n="+t(dw):"")+(M(dy)?"&e_v="+t(dy):"")+"&ca=1"}function ax(dy,dA,dw,dz,dC,dB){if(!ac(dy)||!ac(dA)){ao("Error while logging event: Parameters `category` and `action` must not be empty or filled with whitespaces");return false}var dx=cz(cZ(dy,dA,dw,dz),dC,"event");bM(dx,bQ,dB)}function ce(dw,dz,dx,dA){var dy=cz("search="+t(dw)+(dz?"&search_cat="+t(dz):"")+(M(dx)?"&search_count="+dx:""),dA,"sitesearch");bM(dy,bQ)}function c3(dw,dA,dz,dy){var dx=cz("idgoal="+dw+(dA?"&revenue="+dA:""),dz,"goal");bM(dx,bQ,dy)}function dd(dz,dw,dD,dC,dy){var dB=dw+"="+t(b8(dz));var dx=cC(dy,"click",dz);if(dx){dB+="&"+dx}var dA=cz(dB,dD,"link");bM(dA,bQ,dC)}function b0(dx,dw){if(dx!==""){return dx+dw.charAt(0).toUpperCase()+dw.slice(1)}return dw}function cm(dB){var dA,dw,dz=["","webkit","ms","moz"],dy;
-if(!bk){for(dw=0;dw<dz.length;dw++){dy=dz[dw];if(Object.prototype.hasOwnProperty.call(J,b0(dy,"hidden"))){if(J[b0(dy,"visibilityState")]==="prerender"){dA=true}break}}}if(dA){ar(J,dy+"visibilitychange",function dx(){J.removeEventListener(dy+"visibilitychange",dx,false);dB()});return}dB()}function by(){var dx=bP.getVisitorId();var dw=aO();return dx+dw}function cp(dw){if(!dw){return}if(!ai.hasNodeAttribute(dw,"href")){return}var dx=ai.getAttributeValueFromNode(dw,"href");if(!dx||aZ(dx)){return}if(!bP.getVisitorId()){return}dx=j(dx,az);var dy=by();dx=I(dx,az,dy);ai.setAnyAttribute(dw,"href",dx)}function br(dz){var dA=ai.getAttributeValueFromNode(dz,"href");if(!dA){return false}dA=String(dA);var dx=dA.indexOf("//")===0||dA.indexOf("http://")===0||dA.indexOf("https://")===0;if(!dx){return false}var dw=dz.pathname||cr(dz.href);var dy=(dz.hostname||d(dz.href)).toLowerCase();if(aw(dy,dw)){if(!cR(c4,O(dy))){return true}return false}return false}function cQ(dw){var dx=dp(dw);if(dx&&dx.type){dx.href=p(dx.href);
-dd(dx.href,dx.type,undefined,null,dw);return}if(cX){dw=ay(dw);if(br(dw)){cp(dw)}}}function cE(){return J.all&&!J.addEventListener}function c5(dw){var dy=dw.which;var dx=(typeof dw.button);if(!dy&&dx!=="undefined"){if(cE()){if(dw.button&1){dy=1}else{if(dw.button&2){dy=3}else{if(dw.button&4){dy=2}}}}else{if(dw.button===0||dw.button==="0"){dy=1}else{if(dw.button&1){dy=2}else{if(dw.button&2){dy=3}}}}}return dy}function bZ(dw){switch(c5(dw)){case 1:return"left";case 2:return"middle";case 3:return"right"}}function a7(dw){return dw.target||dw.srcElement}function c6(dw){return dw==="A"||dw==="AREA"}function aG(dw){function dx(dz){var dA=a7(dz);var dB=dA.nodeName;var dy=a6(bG,"ignore");while(!c6(dB)&&dA&&dA.parentNode){dA=dA.parentNode;dB=dA.nodeName}if(dA&&c6(dB)&&!dy.test(dA.className)){return dA}}return function(dA){dA=dA||W.event;var dB=dx(dA);if(!dB){return}var dz=bZ(dA);if(dA.type==="click"){var dy=false;if(dw&&dz==="middle"){dy=true}if(dB&&!dy){cQ(dB)}}else{if(dA.type==="mousedown"){if(dz==="middle"&&dB){aW=dz;
-bI=dB}else{aW=bI=null}}else{if(dA.type==="mouseup"){if(dz===aW&&dB===bI){cQ(dB)}aW=bI=null}else{if(dA.type==="contextmenu"){cQ(dB)}}}}}}function av(dz,dy,dw){var dx=typeof dy;if(dx==="undefined"){dy=true}ar(dz,"click",aG(dy),dw);if(dy){ar(dz,"mouseup",aG(dy),dw);ar(dz,"mousedown",aG(dy),dw);ar(dz,"contextmenu",aG(dy),dw)}}function aX(dx,dA,dB){if(ck){return true}ck=true;var dC=false;var dz,dy;function dw(){dC=true}n(function(){function dD(dF){setTimeout(function(){if(!ck){return}dC=false;dB.trackVisibleContentImpressions();dD(dF)},dF)}function dE(dF){setTimeout(function(){if(!ck){return}if(dC){dC=false;dB.trackVisibleContentImpressions()}dE(dF)},dF)}if(dx){dz=["scroll","resize"];for(dy=0;dy<dz.length;dy++){if(J.addEventListener){J.addEventListener(dz[dy],dw,false)}else{W.attachEvent("on"+dz[dy],dw)}}dE(100)}if(dA&&dA>0){dA=parseInt(dA,10);dD(dA)}})}var bK={enabled:true,requests:[],timeout:null,interval:2500,sendRequests:function(){var dw=this.requests;this.requests=[];if(dw.length===1){bM(dw[0],bQ)
-}else{ds(dw,bQ)}},canQueue:function(){return !m&&this.enabled},pushMultiple:function(dx){if(!this.canQueue()){ds(dx,bQ);return}var dw;for(dw=0;dw<dx.length;dw++){this.push(dx[dw])}},push:function(dw){if(!dw){return}if(!this.canQueue()){bM(dw,bQ);return}bK.requests.push(dw);if(this.timeout){clearTimeout(this.timeout);this.timeout=null}this.timeout=setTimeout(function(){bK.timeout=null;bK.sendRequests()},bK.interval);var dx="RequestQueue"+aB;if(!Object.prototype.hasOwnProperty.call(b,dx)){b[dx]={unload:function(){if(bK.timeout){clearTimeout(bK.timeout)}bK.sendRequests()}}}}};bo();this.hasConsent=function(){return bJ};this.getVisitorInfo=function(){if(!aH(aY("id"))){aR()}return cY()};this.getVisitorId=function(){return this.getVisitorInfo()[1]};this.getAttributionInfo=function(){return bS()};this.getAttributionCampaignName=function(){return bS()[0]};this.getAttributionCampaignKeyword=function(){return bS()[1]};this.getAttributionReferrerTimestamp=function(){return bS()[2]};this.getAttributionReferrerUrl=function(){return bS()[3]
-};this.setTrackerUrl=function(dw){aI=dw};this.getTrackerUrl=function(){return aI};this.getMatomoUrl=function(){return aa(this.getTrackerUrl(),bO)};this.getPiwikUrl=function(){return this.getMatomoUrl()};this.addTracker=function(dy,dx){if(!M(dy)||null===dy){dy=this.getTrackerUrl()}var dw=new T(dy,dx);L.push(dw);u.trigger("TrackerAdded",[this]);return dw};this.getSiteId=function(){return cc};this.setSiteId=function(dw){b9(dw)};this.resetUserId=function(){bF=""};this.setUserId=function(dw){if(ac(dw)){bF=dw}};this.setVisitorId=function(dx){var dw=/[0-9A-Fa-f]{16}/g;if(x(dx)&&dw.test(dx)){bU=dx}else{ao("Invalid visitorId set"+dx)}};this.getUserId=function(){return bF};this.setCustomData=function(dw,dx){if(Z(dw)){at=dw}else{if(!at){at={}}at[dw]=dx}};this.getCustomData=function(){return at};this.setCustomRequestProcessing=function(dw){ch=dw};this.appendToTrackingUrl=function(dw){db=dw};this.getRequest=function(dw){return cz(dw)};this.addPlugin=function(dw,dx){b[dw]=dx};this.setCustomDimension=function(dw,dx){dw=parseInt(dw,10);
-if(dw>0){if(!M(dx)){dx=""}if(!x(dx)){dx=String(dx)}bt[dw]=dx}};this.getCustomDimension=function(dw){dw=parseInt(dw,10);if(dw>0&&Object.prototype.hasOwnProperty.call(bt,dw)){return bt[dw]}};this.deleteCustomDimension=function(dw){dw=parseInt(dw,10);if(dw>0){delete bt[dw]}};this.setCustomVariable=function(dx,dw,dA,dy){var dz;if(!M(dy)){dy="visit"}if(!M(dw)){return}if(!M(dA)){dA=""}if(dx>0){dw=!x(dw)?String(dw):dw;dA=!x(dA)?String(dA):dA;dz=[dw.slice(0,bA),dA.slice(0,bA)];if(dy==="visit"||dy===2){cP();aV[dx]=dz}else{if(dy==="page"||dy===3){b2[dx]=dz}else{if(dy==="event"){cs[dx]=dz}}}}};this.getCustomVariable=function(dx,dy){var dw;if(!M(dy)){dy="visit"}if(dy==="page"||dy===3){dw=b2[dx]}else{if(dy==="event"){dw=cs[dx]}else{if(dy==="visit"||dy===2){cP();dw=aV[dx]}}}if(!M(dw)||(dw&&dw[0]==="")){return false}return dw};this.deleteCustomVariable=function(dw,dx){if(this.getCustomVariable(dw,dx)){this.setCustomVariable(dw,"","",dx)}};this.deleteCustomVariables=function(dw){if(dw==="page"||dw===3){b2={}
-}else{if(dw==="event"){cs={}}else{if(dw==="visit"||dw===2){aV={}}}}};this.storeCustomVariablesInCookie=function(){bW=true};this.setLinkTrackingTimer=function(dw){bQ=dw};this.getLinkTrackingTimer=function(){return bQ};this.setDownloadExtensions=function(dw){if(x(dw)){dw=dw.split("|")}di=dw};this.addDownloadExtensions=function(dx){var dw;if(x(dx)){dx=dx.split("|")}for(dw=0;dw<dx.length;dw++){di.push(dx[dw])}};this.removeDownloadExtensions=function(dy){var dx,dw=[];if(x(dy)){dy=dy.split("|")}for(dx=0;dx<di.length;dx++){if(P(dy,di[dx])===-1){dw.push(di[dx])}}di=dw};this.setDomains=function(dw){aC=x(dw)?[dw]:dw;var dA=false,dy=0,dx;for(dy;dy<aC.length;dy++){dx=String(aC[dy]);if(cR(c4,O(dx))){dA=true;break}var dz=cr(dx);if(dz&&dz!=="/"&&dz!=="/*"){dA=true;break}}if(!dA){aC.push(c4)}};this.setExcludedReferrers=function(dw){cG=x(dw)?[dw]:dw};this.enableCrossDomainLinking=function(){cX=true};this.disableCrossDomainLinking=function(){cX=false};this.isCrossDomainLinkingEnabled=function(){return cX
-};this.setCrossDomainLinkingTimeout=function(dw){a5=dw};this.getCrossDomainLinkingUrlParameter=function(){return t(az)+"="+t(by())};this.setIgnoreClasses=function(dw){bG=x(dw)?[dw]:dw};this.setRequestMethod=function(dw){if(dw){dm=String(dw).toUpperCase()}else{dm=cn}if(dm==="GET"){this.disableAlwaysUseSendBeacon()}};this.setRequestContentType=function(dw){cF=dw||aM};this.setGenerationTimeMs=function(dw){ao("setGenerationTimeMs is no longer supported since Matomo 4. The call will be ignored. The replacement is setPagePerformanceTiming.")};this.setPagePerformanceTiming=function(dA,dC,dB,dx,dD,dy){var dz={pf_net:dA,pf_srv:dC,pf_tfr:dB,pf_dm1:dx,pf_dm2:dD,pf_onl:dy};try{dz=Q(dz,M);dz=B(dz);ct=l(dz);if(ct===""){ao("setPagePerformanceTiming() called without parameters. This function needs to be called with at least one performance parameter.");return}bn=false;bL=true}catch(dw){ao("setPagePerformanceTiming: "+dw.toString())}};this.setReferrerUrl=function(dw){bu=dw};this.setCustomUrl=function(dw){ba=b1(bT,dw)
-};this.getCurrentUrl=function(){return ba||bT};this.setDocumentTitle=function(dw){bp=dw};this.setPageViewId=function(dw){aQ=dw;bH=true};this.setAPIUrl=function(dw){bO=dw};this.setDownloadClasses=function(dw){bR=x(dw)?[dw]:dw};this.setLinkClasses=function(dw){be=x(dw)?[dw]:dw};this.setCampaignNameKey=function(dw){cw=x(dw)?[dw]:dw};this.setCampaignKeywordKey=function(dw){bN=x(dw)?[dw]:dw};this.discardHashTag=function(dw){bV=dw};this.setCookieNamePrefix=function(dw){bq=dw;if(aV){aV=b3()}};this.setCookieDomain=function(dw){var dx=O(dw);if(!bs&&!bD(dx)){ao("Can't write cookie on domain "+dw)}else{c9=dx;bo()}};this.setExcludedQueryParams=function(dw){co=x(dw)?[dw]:dw};this.getCookieDomain=function(){return c9};this.hasCookies=function(){return"1"===cb()};this.setSessionCookie=function(dy,dx,dw){if(!dy){throw new Error("Missing cookie name")}if(!M(dw)){dw=cu}bB.push(dy);dr(aY(dy),dx,dw,bw,c9,bY,aN)};this.getCookie=function(dx){var dw=aH(aY(dx));if(dw===0){return null}return dw};this.setCookiePath=function(dw){bw=dw;
-bo()};this.getCookiePath=function(dw){return bw};this.setVisitorCookieTimeout=function(dw){cU=dw*1000};this.setSessionCookieTimeout=function(dw){cu=dw*1000};this.getSessionCookieTimeout=function(){return cu};this.setReferralCookieTimeout=function(dw){dh=dw*1000};this.setConversionAttributionFirstReferrer=function(dw){bC=dw};this.setSecureCookie=function(dw){if(dw&&location.protocol!=="https:"){ao("Error in setSecureCookie: You cannot use `Secure` on http.");return}bY=dw};this.setCookieSameSite=function(dw){dw=String(dw);dw=dw.charAt(0).toUpperCase()+dw.toLowerCase().slice(1);if(dw!=="None"&&dw!=="Lax"&&dw!=="Strict"){ao("Ignored value for sameSite. Please use either Lax, None, or Strict.");return}if(dw==="None"){if(location.protocol==="https:"){this.setSecureCookie(true)}else{ao("sameSite=None cannot be used on http, reverted to sameSite=Lax.");dw="Lax"}}aN=dw};this.disableCookies=function(){bs=true;if(cc){aJ()}};this.areCookiesEnabled=function(){return !bs};this.setCookieConsentGiven=function(){if(bs&&!c0){bs=false;
-c8=true;if(cc&&aA){aR();var dw=cz("ping=1",null,"ping");bM(dw,bQ)}}};this.requireCookieConsent=function(){if(this.getRememberedCookieConsent()){return false}this.disableCookies();return true};this.getRememberedCookieConsent=function(){return aH(cN)};this.forgetCookieConsentGiven=function(){b5(cN,bw,c9);this.disableCookies()};this.rememberCookieConsentGiven=function(dx){if(dx){dx=dx*60*60*1000}else{dx=30*365*24*60*60*1000}this.setCookieConsentGiven();var dw=new Date().getTime();dr(cN,dw,dx,bw,c9,bY,aN)};this.deleteCookies=function(){aJ()};this.setDoNotTrack=function(dx){var dw=g.doNotTrack||g.msDoNotTrack;c0=dx&&(dw==="yes"||dw==="1");if(c0){this.disableCookies()}};this.alwaysUseSendBeacon=function(){c7=true};this.disableAlwaysUseSendBeacon=function(){c7=false};this.addListener=function(dx,dw){av(dx,dw,false)};this.enableLinkTracking=function(dx){if(dk){return}dk=true;var dw=this;q(function(){au=true;var dy=J.body;av(dy,dx,true)})};this.enableJSErrorTracking=function(){if(c2){return}c2=true;
-var dw=W.onerror;W.onerror=function(dB,dz,dy,dA,dx){cm(function(){var dC="JavaScript Errors";var dD=dz+":"+dy;if(dA){dD+=":"+dA}if(P(cA,dC+dD+dB)===-1){cA.push(dC+dD+dB);ax(dC,dD,dB)}});if(dw){return dw(dB,dz,dy,dA,dx)}return false}};this.disablePerformanceTracking=function(){a8=false};this.enableHeartBeatTimer=function(dw){dw=Math.max(dw||15,5);bb=dw*1000;if(da!==null){dt()}};this.disableHeartBeatTimer=function(){if(bb||aS){if(W.removeEventListener){W.removeEventListener("focus",bg);W.removeEventListener("blur",aD);W.removeEventListener("visibilitychange",a0)}else{if(W.detachEvent){W.detachEvent("onfocus",bg);W.detachEvent("onblur",aD);W.detachEvent("visibilitychange",a0)}}}bb=null;aS=false};this.killFrame=function(){if(W.location!==W.top.location){W.top.location=W.location}};this.redirectFile=function(dw){if(W.location.protocol==="file:"){W.location=dw}};this.setCountPreRendered=function(dw){bk=dw};this.trackGoal=function(dw,dz,dy,dx){cm(function(){c3(dw,dz,dy,dx)})};this.trackLink=function(dx,dw,dz,dy){cm(function(){dd(dx,dw,dz,dy)
-})};this.getNumTrackedPageViews=function(){return cy};this.trackPageView=function(dw,dy,dx){cg=[];cV=[];cA=[];if(R(cc)){cm(function(){ad(aI,bO,cc)})}else{cm(function(){cy++;b6(dw,dy,dx)})}};this.disableBrowserFeatureDetection=function(){c8=false};this.enableBrowserFeatureDetection=function(){c8=true};this.trackAllContentImpressions=function(){if(R(cc)){return}cm(function(){q(function(){var dw=w.findContentNodes();var dx=cJ(dw);bK.pushMultiple(dx)})})};this.trackVisibleContentImpressions=function(dw,dx){if(R(cc)){return}if(!M(dw)){dw=true}if(!M(dx)){dx=750}aX(dw,dx,this);cm(function(){n(function(){var dy=w.findContentNodes();var dz=bf(dy);bK.pushMultiple(dz)})})};this.trackContentImpression=function(dy,dw,dx){if(R(cc)){return}dy=a(dy);dw=a(dw);dx=a(dx);if(!dy){return}dw=dw||"Unknown";cm(function(){var dz=aK(dy,dw,dx);bK.push(dz)})};this.trackContentImpressionsWithinNode=function(dw){if(R(cc)||!dw){return}cm(function(){if(ck){n(function(){var dx=w.findContentNodesWithinNode(dw);var dy=bf(dx);
-bK.pushMultiple(dy)})}else{q(function(){var dx=w.findContentNodesWithinNode(dw);var dy=cJ(dx);bK.pushMultiple(dy)})}})};this.trackContentInteraction=function(dy,dz,dw,dx){if(R(cc)){return}dy=a(dy);dz=a(dz);dw=a(dw);dx=a(dx);if(!dy||!dz){return}dw=dw||"Unknown";cm(function(){var dA=aU(dy,dz,dw,dx);if(dA){bK.push(dA)}})};this.trackContentInteractionNode=function(dy,dx){if(R(cc)||!dy){return}var dw=null;cm(function(){dw=dn(dy,dx);if(dw){bK.push(dw)}});return dw};this.logAllContentBlocksOnPage=function(){var dy=w.findContentNodes();var dw=w.collectContent(dy);var dx=typeof console;if(dx!=="undefined"&&console&&console.log){console.log(dw)}};this.trackEvent=function(dx,dz,dw,dy,dB,dA){cm(function(){ax(dx,dz,dw,dy,dB,dA)})};this.trackSiteSearch=function(dw,dy,dx,dz){cg=[];cm(function(){ce(dw,dy,dx,dz)})};this.setEcommerceView=function(dA,dw,dy,dx){cB={};if(ac(dy)){dy=String(dy)}if(!M(dy)||dy===null||dy===false||!dy.length){dy=""}else{if(dy instanceof Array){dy=W.JSON.stringify(dy)}}var dz="_pkc";
-cB[dz]=dy;if(M(dx)&&dx!==null&&dx!==false&&String(dx).length){dz="_pkp";cB[dz]=dx}if(!ac(dA)&&!ac(dw)){return}if(ac(dA)){dz="_pks";cB[dz]=dA}if(!ac(dw)){dw=""}dz="_pkn";cB[dz]=dw};this.getEcommerceItems=function(){return JSON.parse(JSON.stringify(dc))};this.addEcommerceItem=function(dA,dw,dy,dx,dz){if(ac(dA)){dc[dA]=[String(dA),dw,dy,dx,dz]}};this.removeEcommerceItem=function(dw){if(ac(dw)){dw=String(dw);delete dc[dw]}};this.clearEcommerceCart=function(){dc={}};this.trackEcommerceOrder=function(dw,dA,dz,dy,dx,dB){b4(dw,dA,dz,dy,dx,dB)};this.trackEcommerceCartUpdate=function(dw){bz(dw)};this.trackRequest=function(dx,dz,dy,dw){cm(function(){var dA=cz(dx,dz,dw);bM(dA,bQ,dy)})};this.ping=function(){this.trackRequest("ping=1",null,null,"ping")};this.disableQueueRequest=function(){bK.enabled=false};this.setRequestQueueInterval=function(dw){if(dw<1000){throw new Error("Request queue interval needs to be at least 1000ms")}bK.interval=dw};this.queueRequest=function(dw){cm(function(){var dx=cz(dw);
-bK.push(dx)})};this.isConsentRequired=function(){return cK};this.getRememberedConsent=function(){var dw=aH(bj);if(aH(cW)){if(dw){b5(bj,bw,c9)}return null}if(!dw||dw===0){return null}return dw};this.hasRememberedConsent=function(){return !!this.getRememberedConsent()};this.requireConsent=function(){cK=true;bJ=this.hasRememberedConsent();if(!bJ){bs=true}y++;b["CoreConsent"+y]={unload:function(){if(!bJ){aJ()}}}};this.setConsentGiven=function(dx){bJ=true;c8=true;b5(cW,bw,c9);var dy,dw;for(dy=0;dy<cV.length;dy++){dw=typeof cV[dy];if(dw==="string"){bM(cV[dy],bQ)}else{if(dw==="object"){ds(cV[dy],bQ)}}}cV=[];if(!M(dx)||dx){this.setCookieConsentGiven()}};this.rememberConsentGiven=function(dy){if(dy){dy=dy*60*60*1000}else{dy=30*365*24*60*60*1000}var dw=true;this.setConsentGiven(dw);var dx=new Date().getTime();dr(bj,dx,dy,bw,c9,bY,aN)};this.forgetConsentGiven=function(){var dw=30*365*24*60*60*1000;b5(bj,bw,c9);dr(cW,new Date().getTime(),dw,bw,c9,bY,aN);this.forgetCookieConsentGiven();this.requireConsent()
-};this.isUserOptedOut=function(){return !bJ};this.optUserOut=this.forgetConsentGiven;this.forgetUserOptOut=function(){this.setConsentGiven(false)};n(function(){setTimeout(function(){bL=true},0)});u.trigger("TrackerSetup",[this]);u.addPlugin("TrackerVisitorIdCookie"+aB,{unload:function(){if(!aA){aR();dl()}}})}function K(){return{push:aj}}function c(ay,ax){var az={};var av,aw;for(av=0;av<ax.length;av++){var at=ax[av];az[at]=1;for(aw=0;aw<ay.length;aw++){if(ay[aw]&&ay[aw][0]){var au=ay[aw][0];if(at===au){aj(ay[aw]);delete ay[aw];if(az[au]>1&&au!=="addTracker"&&au!=="enableLinkTracking"){ao("The method "+au+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Matomo trackers documentation: https://developer.matomo.org/guides/tracking-javascript-guide#multiple-piwik-trackers')}az[au]++}}}}return ay}var E=["addTracker","forgetCookieConsentGiven","requireCookieConsent","disableBrowserFeatureDetection","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setCookieSameSite","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setVisitorId","setSiteId","alwaysUseSendBeacon","disableAlwaysUseSendBeacon","enableLinkTracking","setCookieConsentGiven","requireConsent","setConsentGiven","disablePerformanceTracking","setPagePerformanceTiming","setExcludedQueryParams","setExcludedReferrers"];
+}catch(at){return true}}function T(cn,ci){var bR=this,bk="mtm_consent",cS="mtm_cookie_consent",c1="mtm_consent_removed",cd=ae(J.domain,W.location.href,N()),c9=O(cd[0]),bW=p(cd[1]),bw=p(cd[2]),c7=false,cr="GET",ds=cr,aM="application/x-www-form-urlencoded; charset=UTF-8",cK=aM,aI=cn||"",bQ="",dg="",cx="",cf=ci||"",bH="",bX="",bb,bq="",dn=["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","rtf","sea","sit","tar","tbz","tbz2","bz","bz2","tgz","torrent","txt","wav","wma","wmv","wpd","xls","xlsx","xml","z","zip"],aC=[c9],bI=[],cL=[],cs=[],bU=[],bf=[],bS=500,dc=true,cY,bc,b0,bY,at,cB=["pk_campaign","mtm_campaign","piwik_campaign","matomo_campaign","utm_campaign","utm_source","utm_medium"],bP=["pk_kwd","mtm_kwd","piwik_kwd","matomo_kwd","utm_term"],br="_pk_",az="pk_vid",a6=180,de,by,b1=false,aN="Lax",bt=false,c5,bl,bE,cZ=33955200000,cy=1800000,dm=15768000000,a9=true,bN=false,bo=false,bZ=false,aV=false,cl,b5={},cw={},bv={},bC=200,cG={},dh={},dp={},aZ={},cj=[],bu=false,ck=[],co=false,cQ=false,au=false,dq=false,c2=false,aS=false,bj=v(),cM=null,df=null,aW,bK,cg=aq,bx,aQ,bJ=false,cD=0,bD=["id","ses","cvar","ref"],cP=false,bL=null,c0=[],cF=[],aB=X++,aA=false,dd=true;
+try{bq=J.title}catch(cN){bq=""}function aH(dD){if(bt){return 0}var dB=new RegExp("(^|;)[ ]*"+dD+"=([^;]*)"),dC=dB.exec(J.cookie);return dC?V(dC[2]):0}bL=!aH(c1);function dw(dF,dG,dJ,dI,dD,dE,dH){if(bt&&dF!==c1){return}var dC;if(dJ){dC=new Date();dC.setTime(dC.getTime()+dJ)}if(!dH){dH="Lax"}J.cookie=dF+"="+t(dG)+(dJ?";expires="+dC.toGMTString():"")+";path="+(dI||"/")+(dD?";domain="+dD:"")+(dE?";secure":"")+";SameSite="+dH;if((!dJ||dJ>=0)&&aH(dF)!==String(dG)){var dB="There was an error setting cookie `"+dF+"`. Please check domain and path.";ao(dB)}}function cb(dB){var dD,dC;dB=j(dB,az);for(dC=0;dC<cs.length;dC++){dB=j(dB,cs[dC])}if(bY){dD=new RegExp("#.*");return dB.replace(dD,"")}return dB}function b4(dD,dB){var dE=s(dB),dC;if(dE){return dB}if(dB.slice(0,1)==="/"){return s(dD)+"://"+d(dD)+dB}dD=cb(dD);dC=dD.indexOf("?");if(dC>=0){dD=dD.slice(0,dC)}dC=dD.lastIndexOf("/");if(dC!==dD.length-1){dD=dD.slice(0,dC+1)}return dD+dB}function cW(dD,dB){var dC;dD=String(dD).toLowerCase();dB=String(dB).toLowerCase();
+if(dD===dB){return true}if(dB.slice(0,1)==="."){if(dD===dB.slice(1)){return true}dC=dD.length-dB.length;if((dC>0)&&(dD.slice(dC)===dB)){return true}}return false}function cv(dB){var dC=document.createElement("a");if(dB.indexOf("//")!==0&&dB.indexOf("http")!==0){if(dB.indexOf("*")===0){dB=dB.substr(1)}if(dB.indexOf(".")===0){dB=dB.substr(1)}dB="http://"+dB}dC.href=w.toAbsoluteUrl(dB);if(dC.pathname){return dC.pathname}return""}function ba(dC,dB){if(!an(dB,"/")){dB="/"+dB}if(!an(dC,"/")){dC="/"+dC}var dD=(dB==="/"||dB==="/*");if(dD){return true}if(dC===dB){return true}dB=String(dB).toLowerCase();dC=String(dC).toLowerCase();if(U(dB,"*")){dB=dB.slice(0,-1);dD=(!dB||dB==="/");if(dD){return true}if(dC===dB){return true}return dC.indexOf(dB)===0}if(!U(dC,"/")){dC+="/"}if(!U(dB,"/")){dB+="/"}return dC.indexOf(dB)===0}function aw(dF,dH){var dC,dB,dD,dE,dG;for(dC=0;dC<aC.length;dC++){dE=O(aC[dC]);dG=cv(aC[dC]);if(cW(dF,dE)&&ba(dH,dG)){return true}}return false}function a2(dE){var dC,dB,dD;for(dC=0;
+dC<aC.length;dC++){dB=O(aC[dC].toLowerCase());if(dE===dB){return true}if(dB.slice(0,1)==="."){if(dE===dB.slice(1)){return true}dD=dE.length-dB.length;if((dD>0)&&(dE.slice(dD)===dB)){return true}}}return false}function cC(dB){var dC,dE,dG,dD,dF;if(!dB.length||!cL.length){return false}dE=d(dB);dG=cv(dB);if(dE.indexOf("www.")===0){dE=dE.substr(4)}for(dC=0;dC<cL.length;dC++){dD=O(cL[dC]);dF=cv(cL[dC]);if(dD.indexOf("www.")===0){dD=dD.substr(4)}if(cW(dE,dD)&&ba(dG,dF)){return true}}return false}function cz(dB,dD){dB=dB.replace("send_image=0","send_image=1");var dC=new Image(1,1);dC.onload=function(){H=0;if(typeof dD==="function"){dD({request:dB,trackerUrl:aI,success:true})}};dC.onerror=function(){if(typeof dD==="function"){dD({request:dB,trackerUrl:aI,success:false})}};dC.src=aI+(aI.indexOf("?")<0?"?":"&")+dB}function cT(dB){if(ds==="POST"){return true}return dB&&(dB.length>2000||dB.indexOf('{"requests"')===0)}function aP(){return"object"===typeof g&&"function"===typeof g.sendBeacon&&"function"===typeof Blob
+}function bd(dF,dI,dH){var dD=aP();if(!dD){return false}var dE={type:"application/x-www-form-urlencoded; charset=UTF-8"};var dJ=false;var dC=aI;try{var dB=new Blob([dF],dE);if(dH&&!cT(dF)){dB=new Blob([],dE);dC=dC+(dC.indexOf("?")<0?"?":"&")+dF}dJ=g.sendBeacon(dC,dB)}catch(dG){return false}if(dJ&&typeof dI==="function"){dI({request:dF,trackerUrl:aI,success:true,isSendBeacon:true})}return dJ}function dl(dC,dD,dB){if(!M(dB)||null===dB){dB=true}if(m&&bd(dC,dD,dB)){return}setTimeout(function(){if(m&&bd(dC,dD,dB)){return}var dG;try{var dF=W.XMLHttpRequest?new W.XMLHttpRequest():W.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):null;dF.open("POST",aI,true);dF.onreadystatechange=function(){if(this.readyState===4&&!(this.status>=200&&this.status<300)){var dH=m&&bd(dC,dD,dB);if(!dH&&dB){cz(dC,dD)}else{if(typeof dD==="function"){dD({request:dC,trackerUrl:aI,success:false,xhr:this})}}}else{if(this.readyState===4&&(typeof dD==="function")){dD({request:dC,trackerUrl:aI,success:true,xhr:this})}}};
+dF.setRequestHeader("Content-Type",cK);dF.withCredentials=true;dF.send(dC)}catch(dE){dG=m&&bd(dC,dD,dB);if(!dG&&dB){cz(dC,dD)}else{if(typeof dD==="function"){dD({request:dC,trackerUrl:aI,success:false})}}}},50)}function cp(dC){var dB=new Date();var dD=dB.getTime()+dC;if(!r||dD>r){r=dD}}function bh(){bj=true;cM=new Date().getTime()}function dv(){var dB=new Date().getTime();return !cM||(dB-cM)>bc}function aD(){if(dv()){b0()}}function a1(){if(J.visibilityState==="hidden"&&dv()){b0()}else{if(J.visibilityState==="visible"){cM=new Date().getTime()}}}function dy(){if(aS||!bc){return}aS=true;ar(W,"focus",bh);ar(W,"blur",aD);ar(W,"visibilitychange",a1);af++;u.addPlugin("HeartBeat"+af,{unload:function(){if(aS&&dv()){b0()}}})}function cR(dF){var dC=new Date();var dB=dC.getTime();df=dB;if(cQ&&dB<cQ){var dD=cQ-dB;setTimeout(dF,dD);cp(dD+50);cQ+=50;return}if(cQ===false){var dE=800;cQ=dB+dE}dF()}function aT(){if(aH(c1)){bL=false}else{if(aH(bk)){bL=true}}}function bT(dD){if(!aZ){return dD}var dC,dB="&uadata="+t(W.JSON.stringify(aZ));
+if(dD instanceof Array){for(dC=0;dC<dD.length;dC++){dD[dC]+=dB}}else{dD+=dB}return dD}function cA(dB){if(!dd||!M(g.userAgentData)||!C(g.userAgentData.getHighEntropyValues)){dB();return}aZ={brands:g.userAgentData.brands,platform:g.userAgentData.platform};g.userAgentData.getHighEntropyValues(["brands","model","platform","platformVersion","uaFullVersion","fullVersionList"]).then(function(dD){var dC;if(dD.fullVersionList){delete dD.brands;delete dD.uaFullVersion}aZ=dD;dB()},function(dC){dB()})}function bO(dC,dB,dD){if(!bu){cj.push(dC);return}aT();if(!bL){c0.push(dC);return}aA=true;if(!c5&&dC){if(cP&&bL){dC+="&consent=1"}dC=bT(dC);cR(function(){if(dc&&bd(dC,dD,true)){cp(100);return}if(cT(dC)){dl(dC,dD)}else{cz(dC,dD)}cp(dB)})}if(!aS){dy()}}function cu(dB){if(c5){return false}return(dB&&dB.length)}function dk(dB,dF){if(!dF||dF>=dB.length){return[dB]}var dC=0;var dD=dB.length;var dE=[];for(dC;dC<dD;dC+=dF){dE.push(dB.slice(dC,dC+dF))}return dE}function dx(dC,dB){if(!cu(dC)){return}if(!bu){cj.push(dC);
+return}if(!bL){c0.push(dC);return}aA=true;cR(function(){var dF=dk(dC,50);var dD=0,dE;for(dD;dD<dF.length;dD++){dE='{"requests":["?'+bT(dF[dD]).join('","?')+'"],"send_image":0}';if(dc&&bd(dE,null,false)){cp(100)}else{dl(dE,null,false)}}cp(dB)})}function aY(dB){return br+dB+"."+cf+"."+bx}function b8(dD,dC,dB){dw(dD,"",-129600000,dC,dB)}function ce(){if(bt){return"0"}if(!M(W.showModalDialog)&&M(g.cookieEnabled)){return g.cookieEnabled?"1":"0"}var dB=br+"testcookie";dw(dB,"1",undefined,by,de,b1,aN);var dC=aH(dB)==="1"?"1":"0";b8(dB);return dC}function bp(){bx=cg((de||c9)+(by||"/")).slice(0,4)}function cX(){cA(function(){var dH,dG;bu=true;for(dH=0;dH<cj.length;dH++){dG=typeof cj[dH];if(dG==="string"){bO(cj[dH],bS)}else{if(dG==="object"){dx(cj[dH],bS)}}}cj=[]});if(!dd){return{}}if(M(dp.res)){return dp}var dC,dE,dF={pdf:"application/pdf",qt:"video/quicktime",realp:"audio/x-pn-realaudio-plugin",wma:"application/x-mplayer2",fla:"application/x-shockwave-flash",java:"application/x-java-vm",ag:"application/x-silverlight"};
+if(!((new RegExp("MSIE")).test(g.userAgent))){if(g.mimeTypes&&g.mimeTypes.length){for(dC in dF){if(Object.prototype.hasOwnProperty.call(dF,dC)){dE=g.mimeTypes[dF[dC]];dp[dC]=(dE&&dE.enabledPlugin)?"1":"0"}}}if(!((new RegExp("Edge[ /](\\d+[\\.\\d]+)")).test(g.userAgent))&&typeof navigator.javaEnabled!=="unknown"&&M(g.javaEnabled)&&g.javaEnabled()){dp.java="1"}if(!M(W.showModalDialog)&&M(g.cookieEnabled)){dp.cookie=g.cookieEnabled?"1":"0"}else{dp.cookie=ce()}}var dD=parseInt(ab.width,10);var dB=parseInt(ab.height,10);dp.res=parseInt(dD,10)+"x"+parseInt(dB,10);return dp}function b6(){var dC=aY("cvar"),dB=aH(dC);if(dB&&dB.length){dB=W.JSON.parse(dB);if(Z(dB)){return dB}}return{}}function cU(){if(aV===false){aV=b6()}}function c6(){var dB=cX();return cg((g.userAgent||"")+(g.platform||"")+W.JSON.stringify(dB)+(new Date()).getTime()+Math.random()).slice(0,16)}function aF(){var dB=cX();return cg((g.userAgent||"")+(g.platform||"")+W.JSON.stringify(dB)).slice(0,6)}function bm(){return Math.floor((new Date()).getTime()/1000)
+}function aO(){var dC=bm();var dD=aF();var dB=String(dC)+dD;return dB}function dj(dD){dD=String(dD);var dG=aF();var dE=dG.length;var dF=dD.substr(-1*dE,dE);var dC=parseInt(dD.substr(0,dD.length-dE),10);if(dC&&dF&&dF===dG){var dB=bm();if(a6<=0){return true}if(dB>=dC&&dB<=(dC+a6)){return true}}return false}function dz(dB){if(!c2){return""}var dF=e(dB,az);if(!dF){return""}dF=String(dF);var dD=new RegExp("^[a-zA-Z0-9]+$");if(dF.length===32&&dD.test(dF)){var dC=dF.substr(16,32);if(dj(dC)){var dE=dF.substr(0,16);return dE}}return""}function c3(){if(!bX){bX=dz(bW)}var dD=new Date(),dB=Math.round(dD.getTime()/1000),dC=aY("id"),dG=aH(dC),dF,dE;if(dG){dF=dG.split(".");dF.unshift("0");if(bX.length){dF[1]=bX}return dF}if(bX.length){dE=bX}else{if("0"===ce()){dE=""}else{dE=c6()}}dF=["1",dE,dB];return dF}function a5(){var dE=c3(),dC=dE[0],dD=dE[1],dB=dE[2];return{newVisitor:dC,uuid:dD,createTs:dB}}function aL(){var dE=new Date(),dC=dE.getTime(),dF=a5().createTs;var dB=parseInt(dF,10);var dD=(dB*1000)+cZ-dC;
+return dD}function aR(dB){if(!cf){return}var dD=new Date(),dC=Math.round(dD.getTime()/1000);if(!M(dB)){dB=a5()}var dE=dB.uuid+"."+dB.createTs+".";dw(aY("id"),dE,aL(),by,de,b1,aN)}function bV(){var dB=aH(aY("ref"));if(dB.length){try{dB=W.JSON.parse(dB);if(Z(dB)){return dB}}catch(dC){}}return["","",0,""]}function bF(dD){var dC=br+"testcookie_domain";var dB="testvalue";dw(dC,dB,10000,null,dD,b1,aN);if(aH(dC)===dB){b8(dC,null,dD);return true}return false}function aJ(){var dC=bt;bt=false;var dB,dD;for(dB=0;dB<bD.length;dB++){dD=aY(bD[dB]);if(dD!==c1&&dD!==bk&&0!==aH(dD)){b8(dD,by,de)}}bt=dC}function cc(dB){cf=dB}function dA(dF){if(!dF||!Z(dF)){return}var dE=[];var dD;for(dD in dF){if(Object.prototype.hasOwnProperty.call(dF,dD)){dE.push(dD)}}var dG={};dE.sort();var dB=dE.length;var dC;for(dC=0;dC<dB;dC++){dG[dE[dC]]=dF[dE[dC]]}return dG}function cm(){dw(aY("ses"),"1",cy,by,de,b1,aN)}function bn(){var dE="";var dC="abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";var dD=dC.length;
+var dB;for(dB=0;dB<6;dB++){dE+=dC.charAt(Math.floor(Math.random()*dD))}return dE}function aE(dC){if(cx!==""){dC+=cx;bo=true;return dC}if(!h){return dC}var dD=(typeof h.timing==="object")&&h.timing?h.timing:undefined;if(!dD){dD=(typeof h.getEntriesByType==="function")&&h.getEntriesByType("navigation")?h.getEntriesByType("navigation")[0]:undefined}if(!dD){return dC}var dB="";if(dD.connectEnd&&dD.fetchStart){if(dD.connectEnd<dD.fetchStart){return dC}dB+="&pf_net="+Math.round(dD.connectEnd-dD.fetchStart)}if(dD.responseStart&&dD.requestStart){if(dD.responseStart<dD.requestStart){return dC}dB+="&pf_srv="+Math.round(dD.responseStart-dD.requestStart)}if(dD.responseStart&&dD.responseEnd){if(dD.responseEnd<dD.responseStart){return dC}dB+="&pf_tfr="+Math.round(dD.responseEnd-dD.responseStart)}if(M(dD.domLoading)){if(dD.domInteractive&&dD.domLoading){if(dD.domInteractive<dD.domLoading){return dC}dB+="&pf_dm1="+Math.round(dD.domInteractive-dD.domLoading)}}else{if(dD.domInteractive&&dD.responseEnd){if(dD.domInteractive<dD.responseEnd){return dC
+}dB+="&pf_dm1="+Math.round(dD.domInteractive-dD.responseEnd)}}if(dD.domComplete&&dD.domInteractive){if(dD.domComplete<dD.domInteractive){return dC}dB+="&pf_dm2="+Math.round(dD.domComplete-dD.domInteractive)}if(dD.loadEventEnd&&dD.loadEventStart){if(dD.loadEventEnd<dD.loadEventStart){return dC}dB+="&pf_onl="+Math.round(dD.loadEventEnd-dD.loadEventStart)}return dC+dB}function dr(){var dL,dE=new Date(),dF=Math.round(dE.getTime()/1000),dQ,dD,dG=1024,dN,dH,dC=aY("ses"),dK=aY("ref"),dJ=aH(dC),dB=bV(),dP=bb||bW,dM,dI,dO={};dM=dB[0];dI=dB[1];dQ=dB[2];dD=dB[3];if(!dJ){if(!bE||!dM.length){for(dL in cB){if(Object.prototype.hasOwnProperty.call(cB,dL)){dM=e(dP,cB[dL]);if(dM.length){break}}}for(dL in bP){if(Object.prototype.hasOwnProperty.call(bP,dL)){dI=e(dP,bP[dL]);if(dI.length){break}}}}dN=d(bw);dH=dD.length?d(dD):"";if(dN.length&&!a2(dN)&&!cC(bw)&&(!bE||!dH.length||a2(dH)||cC(dD))){dD=bw}if(dD.length||dM.length){dQ=dF;dB=[dM,dI,dQ,cb(dD.slice(0,dG))];dw(dK,W.JSON.stringify(dB),dm,by,de,b1,aN)}}if(dM.length){dO._rcn=t(dM)
+}if(dI.length){dO._rck=t(dI)}dO._refts=dQ;if(String(dD).length){dO._ref=t(cb(dD.slice(0,dG)))}return dO}function cE(dC,dN,dO){var dM,dB=new Date(),dL=aV,dH=aY("cvar"),dP=bb||bW;if(bt){aJ()}if(c5){return""}var dI=a5();var dF=J.characterSet||J.charset;if(!dF||dF.toLowerCase()==="utf-8"){dF=null}dC+="&idsite="+cf+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+dB.getHours()+"&m="+dB.getMinutes()+"&s="+dB.getSeconds()+"&url="+t(cb(dP))+(bw.length&&!cC(bw)?"&urlref="+t(cb(bw)):"")+(ac(bH)?"&uid="+t(bH):"")+"&_id="+dI.uuid+"&_idn="+dI.newVisitor+(dF?"&cs="+t(dF):"")+"&send_image=0";var dK=dr();for(dM in dK){if(Object.prototype.hasOwnProperty.call(dK,dM)){dC+="&"+dM+"="+dK[dM]}}var dR=cX();for(dM in dR){if(Object.prototype.hasOwnProperty.call(dR,dM)){dC+="&"+dM+"="+dR[dM]}}var dS=[];if(dN){for(dM in dN){if(Object.prototype.hasOwnProperty.call(dN,dM)&&/^dimension\d+$/.test(dM)){var dD=dM.replace("dimension","");dS.push(parseInt(dD,10));dS.push(String(dD));dC+="&"+dM+"="+t(dN[dM]);delete dN[dM]
+}}}if(dN&&D(dN)){dN=null}for(dM in cG){if(Object.prototype.hasOwnProperty.call(cG,dM)){dC+="&"+dM+"="+t(cG[dM])}}for(dM in bv){if(Object.prototype.hasOwnProperty.call(bv,dM)){var dG=(-1===P(dS,dM));if(dG){dC+="&dimension"+dM+"="+t(bv[dM])}}}if(dN){dC+="&data="+t(W.JSON.stringify(dN))}else{if(at){dC+="&data="+t(W.JSON.stringify(at))}}function dE(dT,dU){var dV=W.JSON.stringify(dT);if(dV.length>2){return"&"+dU+"="+t(dV)}return""}var dQ=dA(b5);var dJ=dA(cw);dC+=dE(dQ,"cvar");dC+=dE(dJ,"e_cvar");if(aV){dC+=dE(aV,"_cvar");for(dM in dL){if(Object.prototype.hasOwnProperty.call(dL,dM)){if(aV[dM][0]===""||aV[dM][1]===""){delete aV[dM]}}}if(bZ){dw(dH,W.JSON.stringify(aV),cy,by,de,b1,aN)}}if(a9&&bN&&!bo){dC=aE(dC);bo=true}if(aQ){dC+="&pv_id="+aQ}aR(dI);cm();dC+=ag(dO,{tracker:bR,request:dC});if(dg.length){dC+="&"+dg}if(C(cl)){dC=cl(dC)}return dC}b0=function be(){var dB=new Date();dB=dB.getTime();if(!df){return false}if(df+bc<=dB){bR.ping();return true}return false};function bz(dE,dD,dI,dF,dB,dL){var dH="idgoal=0",dC=new Date(),dJ=[],dK,dG=String(dE).length;
+if(dG){dH+="&ec_id="+t(dE)}dH+="&revenue="+dD;if(String(dI).length){dH+="&ec_st="+dI}if(String(dF).length){dH+="&ec_tx="+dF}if(String(dB).length){dH+="&ec_sh="+dB}if(String(dL).length){dH+="&ec_dt="+dL}if(dh){for(dK in dh){if(Object.prototype.hasOwnProperty.call(dh,dK)){if(!M(dh[dK][1])){dh[dK][1]=""}if(!M(dh[dK][2])){dh[dK][2]=""}if(!M(dh[dK][3])||String(dh[dK][3]).length===0){dh[dK][3]=0}if(!M(dh[dK][4])||String(dh[dK][4]).length===0){dh[dK][4]=1}dJ.push(dh[dK])}}dH+="&ec_items="+t(W.JSON.stringify(dJ))}dH=cE(dH,at,"ecommerce");bO(dH,bS);if(dG){dh={}}}function b7(dB,dF,dE,dD,dC,dG){if(String(dB).length&&M(dF)){bz(dB,dF,dE,dD,dC,dG)}}function bB(dB){if(M(dB)){bz("",dB,"","","","")}}function b9(dC,dE,dD){if(!bJ){aQ=bn()}var dB=cE("action_name="+t(ap(dC||bq)),dE,"log");if(a9&&!bo){dB=aE(dB)}bO(dB,bS,dD)}function a7(dD,dC){var dE,dB="(^| )(piwik[_-]"+dC+"|matomo[_-]"+dC;if(dD){for(dE=0;dE<dD.length;dE++){dB+="|"+dD[dE]}}dB+=")( |$)";return new RegExp(dB)}function a0(dB){return(aI&&dB&&0===String(dB).indexOf(aI))
+}function cI(dF,dB,dG,dC){if(a0(dB)){return 0}var dE=a7(bU,"download"),dD=a7(bf,"link"),dH=new RegExp("\\.("+dn.join("|")+")([?&#]|$)","i");if(dD.test(dF)){return"link"}if(dC||dE.test(dF)||dH.test(dB)){return"download"}if(dG){return 0}return"link"}function ay(dC){var dB;dB=dC.parentNode;while(dB!==null&&M(dB)){if(ai.isLinkElement(dC)){break}dC=dB;dB=dC.parentNode}return dC}function du(dG){dG=ay(dG);if(!ai.hasNodeAttribute(dG,"href")){return}if(!M(dG.href)){return}var dF=ai.getAttributeValueFromNode(dG,"href");var dC=dG.pathname||cv(dG.href);var dH=dG.hostname||d(dG.href);var dI=dH.toLowerCase();var dD=dG.href.replace(dH,dI);var dE=new RegExp("^(javascript|vbscript|jscript|mocha|livescript|ecmascript|mailto|tel):","i");if(!dE.test(dD)){var dB=cI(dG.className,dD,aw(dI,dC),ai.hasNodeAttribute(dG,"download"));if(dB){return{type:dB,href:dD}}}}function aU(dB,dC,dD,dE){var dF=w.buildInteractionRequestParams(dB,dC,dD,dE);if(!dF){return}return cE(dF,null,"contentInteraction")}function bi(dB,dC){if(!dB||!dC){return false
+}var dD=w.findTargetNode(dB);if(w.shouldIgnoreInteraction(dD)){return false}dD=w.findTargetNodeNoDefault(dB);if(dD&&!Y(dD,dC)){return false}return true}function cH(dD,dC,dF){if(!dD){return}var dB=w.findParentContentNode(dD);if(!dB){return}if(!bi(dB,dD)){return}var dE=w.buildContentBlock(dB);if(!dE){return}if(!dE.target&&dF){dE.target=dF}return w.buildInteractionRequestParams(dC,dE.name,dE.piece,dE.target)}function a3(dC){if(!ck||!ck.length){return false}var dB,dD;for(dB=0;dB<ck.length;dB++){dD=ck[dB];if(dD&&dD.name===dC.name&&dD.piece===dC.piece&&dD.target===dC.target){return true}}return false}function a4(dB){return function(dF){if(!dB){return}var dD=w.findParentContentNode(dB);var dC;if(dF){dC=dF.target||dF.srcElement}if(!dC){dC=dB}if(!bi(dD,dC)){return}if(!dD){return false}var dG=w.findTargetNode(dD);if(!dG||w.shouldIgnoreInteraction(dG)){return false}var dE=du(dG);if(dq&&dE&&dE.type){return dE.type}return bR.trackContentInteractionNode(dC,"click")}}function ca(dD){if(!dD||!dD.length){return
+}var dB,dC;for(dB=0;dB<dD.length;dB++){dC=w.findTargetNode(dD[dB]);if(dC&&!dC.contentInteractionTrackingSetupDone){dC.contentInteractionTrackingSetupDone=true;ar(dC,"click",a4(dC))}}}function bG(dD,dE){if(!dD||!dD.length){return[]}var dB,dC;for(dB=0;dB<dD.length;dB++){if(a3(dD[dB])){dD.splice(dB,1);dB--}else{ck.push(dD[dB])}}if(!dD||!dD.length){return[]}ca(dE);var dF=[];for(dB=0;dB<dD.length;dB++){dC=cE(w.buildImpressionRequestParams(dD[dB].name,dD[dB].piece,dD[dB].target),undefined,"contentImpressions");if(dC){dF.push(dC)}}return dF}function cO(dC){var dB=w.collectContent(dC);return bG(dB,dC)}function bg(dC){if(!dC||!dC.length){return[]}var dB;for(dB=0;dB<dC.length;dB++){if(!w.isNodeVisible(dC[dB])){dC.splice(dB,1);dB--}}if(!dC||!dC.length){return[]}return cO(dC)}function aK(dD,dB,dC){var dE=w.buildImpressionRequestParams(dD,dB,dC);return cE(dE,null,"contentImpression")}function dt(dE,dC){if(!dE){return}var dB=w.findParentContentNode(dE);var dD=w.buildContentBlock(dB);if(!dD){return}if(!dC){dC="Unknown"
+}return aU(dC,dD.name,dD.piece,dD.target)}function c4(dC,dE,dB,dD){return"e_c="+t(dC)+"&e_a="+t(dE)+(M(dB)?"&e_n="+t(dB):"")+(M(dD)?"&e_v="+t(dD):"")+"&ca=1"}function ax(dD,dF,dB,dE,dH,dG){if(!ac(dD)||!ac(dF)){ao("Error while logging event: Parameters `category` and `action` must not be empty or filled with whitespaces");return false}var dC=cE(c4(dD,dF,dB,dE),dH,"event");bO(dC,bS,dG)}function ch(dB,dE,dC,dF){var dD=cE("search="+t(dB)+(dE?"&search_cat="+t(dE):"")+(M(dC)?"&search_count="+dC:""),dF,"sitesearch");bO(dD,bS)}function c8(dB,dF,dE,dD){var dC=cE("idgoal="+dB+(dF?"&revenue="+dF:""),dE,"goal");bO(dC,bS,dD)}function di(dE,dB,dI,dH,dD){var dG=dB+"="+t(cb(dE));var dC=cH(dD,"click",dE);if(dC){dG+="&"+dC}var dF=cE(dG,dI,"link");bO(dF,bS,dH)}function b3(dC,dB){if(dC!==""){return dC+dB.charAt(0).toUpperCase()+dB.slice(1)}return dB}function cq(dG){var dF,dB,dE=["","webkit","ms","moz"],dD;if(!bl){for(dB=0;dB<dE.length;dB++){dD=dE[dB];if(Object.prototype.hasOwnProperty.call(J,b3(dD,"hidden"))){if(J[b3(dD,"visibilityState")]==="prerender"){dF=true
+}break}}}if(dF){ar(J,dD+"visibilitychange",function dC(){J.removeEventListener(dD+"visibilitychange",dC,false);dG()});return}dG()}function bA(){var dC=bR.getVisitorId();var dB=aO();return dC+dB}function ct(dB){if(!dB){return}if(!ai.hasNodeAttribute(dB,"href")){return}var dC=ai.getAttributeValueFromNode(dB,"href");if(!dC||a0(dC)){return}if(!bR.getVisitorId()){return}dC=j(dC,az);var dD=bA();dC=I(dC,az,dD);ai.setAnyAttribute(dB,"href",dC)}function bs(dE){var dF=ai.getAttributeValueFromNode(dE,"href");if(!dF){return false}dF=String(dF);var dC=dF.indexOf("//")===0||dF.indexOf("http://")===0||dF.indexOf("https://")===0;if(!dC){return false}var dB=dE.pathname||cv(dE.href);var dD=(dE.hostname||d(dE.href)).toLowerCase();if(aw(dD,dB)){if(!cW(c9,O(dD))){return true}return false}return false}function cV(dB){var dC=du(dB);if(dC&&dC.type){dC.href=p(dC.href);di(dC.href,dC.type,undefined,null,dB);return}if(c2){dB=ay(dB);if(bs(dB)){ct(dB)}}}function cJ(){return J.all&&!J.addEventListener}function da(dB){var dD=dB.which;
+var dC=(typeof dB.button);if(!dD&&dC!=="undefined"){if(cJ()){if(dB.button&1){dD=1}else{if(dB.button&2){dD=3}else{if(dB.button&4){dD=2}}}}else{if(dB.button===0||dB.button==="0"){dD=1}else{if(dB.button&1){dD=2}else{if(dB.button&2){dD=3}}}}}return dD}function b2(dB){switch(da(dB)){case 1:return"left";case 2:return"middle";case 3:return"right"}}function a8(dB){return dB.target||dB.srcElement}function db(dB){return dB==="A"||dB==="AREA"}function aG(dB){function dC(dE){var dF=a8(dE);var dG=dF.nodeName;var dD=a7(bI,"ignore");while(!db(dG)&&dF&&dF.parentNode){dF=dF.parentNode;dG=dF.nodeName}if(dF&&db(dG)&&!dD.test(dF.className)){return dF}}return function(dF){dF=dF||W.event;var dG=dC(dF);if(!dG){return}var dE=b2(dF);if(dF.type==="click"){var dD=false;if(dB&&dE==="middle"){dD=true}if(dG&&!dD){cV(dG)}}else{if(dF.type==="mousedown"){if(dE==="middle"&&dG){aW=dE;bK=dG}else{aW=bK=null}}else{if(dF.type==="mouseup"){if(dE===aW&&dG===bK){cV(dG)}aW=bK=null}else{if(dF.type==="contextmenu"){cV(dG)}}}}}}function av(dE,dD,dB){var dC=typeof dD;
+if(dC==="undefined"){dD=true}ar(dE,"click",aG(dD),dB);if(dD){ar(dE,"mouseup",aG(dD),dB);ar(dE,"mousedown",aG(dD),dB);ar(dE,"contextmenu",aG(dD),dB)}}function aX(dC,dF,dG){if(co){return true}co=true;var dH=false;var dE,dD;function dB(){dH=true}n(function(){function dI(dK){setTimeout(function(){if(!co){return}dH=false;dG.trackVisibleContentImpressions();dI(dK)},dK)}function dJ(dK){setTimeout(function(){if(!co){return}if(dH){dH=false;dG.trackVisibleContentImpressions()}dJ(dK)},dK)}if(dC){dE=["scroll","resize"];for(dD=0;dD<dE.length;dD++){if(J.addEventListener){J.addEventListener(dE[dD],dB,false)}else{W.attachEvent("on"+dE[dD],dB)}}dJ(100)}if(dF&&dF>0){dF=parseInt(dF,10);dI(dF)}})}var bM={enabled:true,requests:[],timeout:null,interval:2500,sendRequests:function(){var dB=this.requests;this.requests=[];if(dB.length===1){bO(dB[0],bS)}else{dx(dB,bS)}},canQueue:function(){return !m&&this.enabled},pushMultiple:function(dC){if(!this.canQueue()){dx(dC,bS);return}var dB;for(dB=0;dB<dC.length;dB++){this.push(dC[dB])
+}},push:function(dB){if(!dB){return}if(!this.canQueue()){bO(dB,bS);return}bM.requests.push(dB);if(this.timeout){clearTimeout(this.timeout);this.timeout=null}this.timeout=setTimeout(function(){bM.timeout=null;bM.sendRequests()},bM.interval);var dC="RequestQueue"+aB;if(!Object.prototype.hasOwnProperty.call(b,dC)){b[dC]={unload:function(){if(bM.timeout){clearTimeout(bM.timeout)}bM.sendRequests()}}}}};bp();this.hasConsent=function(){return bL};this.getVisitorInfo=function(){if(!aH(aY("id"))){aR()}return c3()};this.getVisitorId=function(){return this.getVisitorInfo()[1]};this.getAttributionInfo=function(){return bV()};this.getAttributionCampaignName=function(){return bV()[0]};this.getAttributionCampaignKeyword=function(){return bV()[1]};this.getAttributionReferrerTimestamp=function(){return bV()[2]};this.getAttributionReferrerUrl=function(){return bV()[3]};this.setTrackerUrl=function(dB){aI=dB};this.getTrackerUrl=function(){return aI};this.getMatomoUrl=function(){return aa(this.getTrackerUrl(),bQ)
+};this.getPiwikUrl=function(){return this.getMatomoUrl()};this.addTracker=function(dD,dC){if(!M(dD)||null===dD){dD=this.getTrackerUrl()}var dB=new T(dD,dC);L.push(dB);u.trigger("TrackerAdded",[this]);return dB};this.getSiteId=function(){return cf};this.setSiteId=function(dB){cc(dB)};this.resetUserId=function(){bH=""};this.setUserId=function(dB){if(ac(dB)){bH=dB}};this.setVisitorId=function(dC){var dB=/[0-9A-Fa-f]{16}/g;if(x(dC)&&dB.test(dC)){bX=dC}else{ao("Invalid visitorId set"+dC)}};this.getUserId=function(){return bH};this.setCustomData=function(dB,dC){if(Z(dB)){at=dB}else{if(!at){at={}}at[dB]=dC}};this.getCustomData=function(){return at};this.setCustomRequestProcessing=function(dB){cl=dB};this.appendToTrackingUrl=function(dB){dg=dB};this.getRequest=function(dB){return cE(dB)};this.addPlugin=function(dB,dC){b[dB]=dC};this.setCustomDimension=function(dB,dC){dB=parseInt(dB,10);if(dB>0){if(!M(dC)){dC=""}if(!x(dC)){dC=String(dC)}bv[dB]=dC}};this.getCustomDimension=function(dB){dB=parseInt(dB,10);
+if(dB>0&&Object.prototype.hasOwnProperty.call(bv,dB)){return bv[dB]}};this.deleteCustomDimension=function(dB){dB=parseInt(dB,10);if(dB>0){delete bv[dB]}};this.setCustomVariable=function(dC,dB,dF,dD){var dE;if(!M(dD)){dD="visit"}if(!M(dB)){return}if(!M(dF)){dF=""}if(dC>0){dB=!x(dB)?String(dB):dB;dF=!x(dF)?String(dF):dF;dE=[dB.slice(0,bC),dF.slice(0,bC)];if(dD==="visit"||dD===2){cU();aV[dC]=dE}else{if(dD==="page"||dD===3){b5[dC]=dE}else{if(dD==="event"){cw[dC]=dE}}}}};this.getCustomVariable=function(dC,dD){var dB;if(!M(dD)){dD="visit"}if(dD==="page"||dD===3){dB=b5[dC]}else{if(dD==="event"){dB=cw[dC]}else{if(dD==="visit"||dD===2){cU();dB=aV[dC]}}}if(!M(dB)||(dB&&dB[0]==="")){return false}return dB};this.deleteCustomVariable=function(dB,dC){if(this.getCustomVariable(dB,dC)){this.setCustomVariable(dB,"","",dC)}};this.deleteCustomVariables=function(dB){if(dB==="page"||dB===3){b5={}}else{if(dB==="event"){cw={}}else{if(dB==="visit"||dB===2){aV={}}}}};this.storeCustomVariablesInCookie=function(){bZ=true
+};this.setLinkTrackingTimer=function(dB){bS=dB};this.getLinkTrackingTimer=function(){return bS};this.setDownloadExtensions=function(dB){if(x(dB)){dB=dB.split("|")}dn=dB};this.addDownloadExtensions=function(dC){var dB;if(x(dC)){dC=dC.split("|")}for(dB=0;dB<dC.length;dB++){dn.push(dC[dB])}};this.removeDownloadExtensions=function(dD){var dC,dB=[];if(x(dD)){dD=dD.split("|")}for(dC=0;dC<dn.length;dC++){if(P(dD,dn[dC])===-1){dB.push(dn[dC])}}dn=dB};this.setDomains=function(dB){aC=x(dB)?[dB]:dB;var dF=false,dD=0,dC;for(dD;dD<aC.length;dD++){dC=String(aC[dD]);if(cW(c9,O(dC))){dF=true;break}var dE=cv(dC);if(dE&&dE!=="/"&&dE!=="/*"){dF=true;break}}if(!dF){aC.push(c9)}};this.setExcludedReferrers=function(dB){cL=x(dB)?[dB]:dB};this.enableCrossDomainLinking=function(){c2=true};this.disableCrossDomainLinking=function(){c2=false};this.isCrossDomainLinkingEnabled=function(){return c2};this.setCrossDomainLinkingTimeout=function(dB){a6=dB};this.getCrossDomainLinkingUrlParameter=function(){return t(az)+"="+t(bA())
+};this.setIgnoreClasses=function(dB){bI=x(dB)?[dB]:dB};this.setRequestMethod=function(dB){if(dB){ds=String(dB).toUpperCase()}else{ds=cr}if(ds==="GET"){this.disableAlwaysUseSendBeacon()}};this.setRequestContentType=function(dB){cK=dB||aM};this.setGenerationTimeMs=function(dB){ao("setGenerationTimeMs is no longer supported since Matomo 4. The call will be ignored. The replacement is setPagePerformanceTiming.")};this.setPagePerformanceTiming=function(dF,dH,dG,dC,dI,dD){var dE={pf_net:dF,pf_srv:dH,pf_tfr:dG,pf_dm1:dC,pf_dm2:dI,pf_onl:dD};try{dE=Q(dE,M);dE=B(dE);cx=l(dE);if(cx===""){ao("setPagePerformanceTiming() called without parameters. This function needs to be called with at least one performance parameter.");return}bo=false;bN=true}catch(dB){ao("setPagePerformanceTiming: "+dB.toString())}};this.setReferrerUrl=function(dB){bw=dB};this.setCustomUrl=function(dB){bb=b4(bW,dB)};this.getCurrentUrl=function(){return bb||bW};this.setDocumentTitle=function(dB){bq=dB};this.setPageViewId=function(dB){aQ=dB;
+bJ=true};this.setAPIUrl=function(dB){bQ=dB};this.setDownloadClasses=function(dB){bU=x(dB)?[dB]:dB};this.setLinkClasses=function(dB){bf=x(dB)?[dB]:dB};this.setCampaignNameKey=function(dB){cB=x(dB)?[dB]:dB};this.setCampaignKeywordKey=function(dB){bP=x(dB)?[dB]:dB};this.discardHashTag=function(dB){bY=dB};this.setCookieNamePrefix=function(dB){br=dB;if(aV){aV=b6()}};this.setCookieDomain=function(dB){var dC=O(dB);if(!bt&&!bF(dC)){ao("Can't write cookie on domain "+dB)}else{de=dC;bp()}};this.setExcludedQueryParams=function(dB){cs=x(dB)?[dB]:dB};this.getCookieDomain=function(){return de};this.hasCookies=function(){return"1"===ce()};this.setSessionCookie=function(dD,dC,dB){if(!dD){throw new Error("Missing cookie name")}if(!M(dB)){dB=cy}bD.push(dD);dw(aY(dD),dC,dB,by,de,b1,aN)};this.getCookie=function(dC){var dB=aH(aY(dC));if(dB===0){return null}return dB};this.setCookiePath=function(dB){by=dB;bp()};this.getCookiePath=function(dB){return by};this.setVisitorCookieTimeout=function(dB){cZ=dB*1000};this.setSessionCookieTimeout=function(dB){cy=dB*1000
+};this.getSessionCookieTimeout=function(){return cy};this.setReferralCookieTimeout=function(dB){dm=dB*1000};this.setConversionAttributionFirstReferrer=function(dB){bE=dB};this.setSecureCookie=function(dB){if(dB&&location.protocol!=="https:"){ao("Error in setSecureCookie: You cannot use `Secure` on http.");return}b1=dB};this.setCookieSameSite=function(dB){dB=String(dB);dB=dB.charAt(0).toUpperCase()+dB.toLowerCase().slice(1);if(dB!=="None"&&dB!=="Lax"&&dB!=="Strict"){ao("Ignored value for sameSite. Please use either Lax, None, or Strict.");return}if(dB==="None"){if(location.protocol==="https:"){this.setSecureCookie(true)}else{ao("sameSite=None cannot be used on http, reverted to sameSite=Lax.");dB="Lax"}}aN=dB};this.disableCookies=function(){bt=true;if(cf){aJ()}};this.areCookiesEnabled=function(){return !bt};this.setCookieConsentGiven=function(){if(bt&&!c5){bt=false;dd=true;if(cf&&aA){aR();var dB=cE("ping=1",null,"ping");bO(dB,bS)}}};this.requireCookieConsent=function(){if(this.getRememberedCookieConsent()){return false
+}this.disableCookies();return true};this.getRememberedCookieConsent=function(){return aH(cS)};this.forgetCookieConsentGiven=function(){b8(cS,by,de);this.disableCookies()};this.rememberCookieConsentGiven=function(dC){if(dC){dC=dC*60*60*1000}else{dC=30*365*24*60*60*1000}this.setCookieConsentGiven();var dB=new Date().getTime();dw(cS,dB,dC,by,de,b1,aN)};this.deleteCookies=function(){aJ()};this.setDoNotTrack=function(dC){var dB=g.doNotTrack||g.msDoNotTrack;c5=dC&&(dB==="yes"||dB==="1");if(c5){this.disableCookies()}};this.alwaysUseSendBeacon=function(){dc=true};this.disableAlwaysUseSendBeacon=function(){dc=false};this.addListener=function(dC,dB){av(dC,dB,false)};this.enableLinkTracking=function(dC){if(dq){return}dq=true;var dB=this;q(function(){au=true;var dD=J.body;av(dD,dC,true)})};this.enableJSErrorTracking=function(){if(c7){return}c7=true;var dB=W.onerror;W.onerror=function(dG,dE,dD,dF,dC){cq(function(){var dH="JavaScript Errors";var dI=dE+":"+dD;if(dF){dI+=":"+dF}if(P(cF,dH+dI+dG)===-1){cF.push(dH+dI+dG);
+ax(dH,dI,dG)}});if(dB){return dB(dG,dE,dD,dF,dC)}return false}};this.disablePerformanceTracking=function(){a9=false};this.enableHeartBeatTimer=function(dB){dB=Math.max(dB||15,5);bc=dB*1000;if(df!==null){dy()}};this.disableHeartBeatTimer=function(){if(bc||aS){if(W.removeEventListener){W.removeEventListener("focus",bh);W.removeEventListener("blur",aD);W.removeEventListener("visibilitychange",a1)}else{if(W.detachEvent){W.detachEvent("onfocus",bh);W.detachEvent("onblur",aD);W.detachEvent("visibilitychange",a1)}}}bc=null;aS=false};this.killFrame=function(){if(W.location!==W.top.location){W.top.location=W.location}};this.redirectFile=function(dB){if(W.location.protocol==="file:"){W.location=dB}};this.setCountPreRendered=function(dB){bl=dB};this.trackGoal=function(dB,dE,dD,dC){cq(function(){c8(dB,dE,dD,dC)})};this.trackLink=function(dC,dB,dE,dD){cq(function(){di(dC,dB,dE,dD)})};this.getNumTrackedPageViews=function(){return cD};this.trackPageView=function(dB,dD,dC){ck=[];c0=[];cF=[];if(R(cf)){cq(function(){ad(aI,bQ,cf)
+})}else{cq(function(){cD++;b9(dB,dD,dC)})}};this.disableBrowserFeatureDetection=function(){dd=false};this.enableBrowserFeatureDetection=function(){dd=true};this.trackAllContentImpressions=function(){if(R(cf)){return}cq(function(){q(function(){var dB=w.findContentNodes();var dC=cO(dB);bM.pushMultiple(dC)})})};this.trackVisibleContentImpressions=function(dB,dC){if(R(cf)){return}if(!M(dB)){dB=true}if(!M(dC)){dC=750}aX(dB,dC,this);cq(function(){n(function(){var dD=w.findContentNodes();var dE=bg(dD);bM.pushMultiple(dE)})})};this.trackContentImpression=function(dD,dB,dC){if(R(cf)){return}dD=a(dD);dB=a(dB);dC=a(dC);if(!dD){return}dB=dB||"Unknown";cq(function(){var dE=aK(dD,dB,dC);bM.push(dE)})};this.trackContentImpressionsWithinNode=function(dB){if(R(cf)||!dB){return}cq(function(){if(co){n(function(){var dC=w.findContentNodesWithinNode(dB);var dD=bg(dC);bM.pushMultiple(dD)})}else{q(function(){var dC=w.findContentNodesWithinNode(dB);var dD=cO(dC);bM.pushMultiple(dD)})}})};this.trackContentInteraction=function(dD,dE,dB,dC){if(R(cf)){return
+}dD=a(dD);dE=a(dE);dB=a(dB);dC=a(dC);if(!dD||!dE){return}dB=dB||"Unknown";cq(function(){var dF=aU(dD,dE,dB,dC);if(dF){bM.push(dF)}})};this.trackContentInteractionNode=function(dD,dC){if(R(cf)||!dD){return}var dB=null;cq(function(){dB=dt(dD,dC);if(dB){bM.push(dB)}});return dB};this.logAllContentBlocksOnPage=function(){var dD=w.findContentNodes();var dB=w.collectContent(dD);var dC=typeof console;if(dC!=="undefined"&&console&&console.log){console.log(dB)}};this.trackEvent=function(dC,dE,dB,dD,dG,dF){cq(function(){ax(dC,dE,dB,dD,dG,dF)})};this.trackSiteSearch=function(dB,dD,dC,dE){ck=[];cq(function(){ch(dB,dD,dC,dE)})};this.setEcommerceView=function(dF,dB,dD,dC){cG={};if(ac(dD)){dD=String(dD)}if(!M(dD)||dD===null||dD===false||!dD.length){dD=""}else{if(dD instanceof Array){dD=W.JSON.stringify(dD)}}var dE="_pkc";cG[dE]=dD;if(M(dC)&&dC!==null&&dC!==false&&String(dC).length){dE="_pkp";cG[dE]=dC}if(!ac(dF)&&!ac(dB)){return}if(ac(dF)){dE="_pks";cG[dE]=dF}if(!ac(dB)){dB=""}dE="_pkn";cG[dE]=dB};this.getEcommerceItems=function(){return JSON.parse(JSON.stringify(dh))
+};this.addEcommerceItem=function(dF,dB,dD,dC,dE){if(ac(dF)){dh[dF]=[String(dF),dB,dD,dC,dE]}};this.removeEcommerceItem=function(dB){if(ac(dB)){dB=String(dB);delete dh[dB]}};this.clearEcommerceCart=function(){dh={}};this.trackEcommerceOrder=function(dB,dF,dE,dD,dC,dG){b7(dB,dF,dE,dD,dC,dG)};this.trackEcommerceCartUpdate=function(dB){bB(dB)};this.trackRequest=function(dC,dE,dD,dB){cq(function(){var dF=cE(dC,dE,dB);bO(dF,bS,dD)})};this.ping=function(){this.trackRequest("ping=1",null,null,"ping")};this.disableQueueRequest=function(){bM.enabled=false};this.setRequestQueueInterval=function(dB){if(dB<1000){throw new Error("Request queue interval needs to be at least 1000ms")}bM.interval=dB};this.queueRequest=function(dB){cq(function(){var dC=cE(dB);bM.push(dC)})};this.isConsentRequired=function(){return cP};this.getRememberedConsent=function(){var dB=aH(bk);if(aH(c1)){if(dB){b8(bk,by,de)}return null}if(!dB||dB===0){return null}return dB};this.hasRememberedConsent=function(){return !!this.getRememberedConsent()
+};this.requireConsent=function(){cP=true;bL=this.hasRememberedConsent();if(!bL){bt=true}y++;b["CoreConsent"+y]={unload:function(){if(!bL){aJ()}}}};this.setConsentGiven=function(dC){bL=true;dd=true;b8(c1,by,de);var dD,dB;for(dD=0;dD<c0.length;dD++){dB=typeof c0[dD];if(dB==="string"){bO(c0[dD],bS)}else{if(dB==="object"){dx(c0[dD],bS)}}}c0=[];if(!M(dC)||dC){this.setCookieConsentGiven()}};this.rememberConsentGiven=function(dD){if(dD){dD=dD*60*60*1000}else{dD=30*365*24*60*60*1000}var dB=true;this.setConsentGiven(dB);var dC=new Date().getTime();dw(bk,dC,dD,by,de,b1,aN)};this.forgetConsentGiven=function(){var dB=30*365*24*60*60*1000;b8(bk,by,de);dw(c1,new Date().getTime(),dB,by,de,b1,aN);this.forgetCookieConsentGiven();this.requireConsent()};this.isUserOptedOut=function(){return !bL};this.optUserOut=this.forgetConsentGiven;this.forgetUserOptOut=function(){this.setConsentGiven(false)};n(function(){setTimeout(function(){bN=true},0)});u.trigger("TrackerSetup",[this]);u.addPlugin("TrackerVisitorIdCookie"+aB,{unload:function(){if(!aA){aR();
+dr()}}})}function K(){return{push:aj}}function c(ay,ax){var az={};var av,aw;for(av=0;av<ax.length;av++){var at=ax[av];az[at]=1;for(aw=0;aw<ay.length;aw++){if(ay[aw]&&ay[aw][0]){var au=ay[aw][0];if(at===au){aj(ay[aw]);delete ay[aw];if(az[au]>1&&au!=="addTracker"&&au!=="enableLinkTracking"){ao("The method "+au+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Matomo trackers documentation: https://developer.matomo.org/guides/tracking-javascript-guide#multiple-piwik-trackers')}az[au]++}}}}return ay}var E=["addTracker","forgetCookieConsentGiven","requireCookieConsent","disableBrowserFeatureDetection","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setCookieSameSite","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setVisitorId","setSiteId","alwaysUseSendBeacon","disableAlwaysUseSendBeacon","enableLinkTracking","setCookieConsentGiven","requireConsent","setConsentGiven","disablePerformanceTracking","setPagePerformanceTiming","setExcludedQueryParams","setExcludedReferrers"];
function ah(av,au){var at=new T(av,au);L.push(at);_paq=c(_paq,E);for(H=0;H<_paq.length;H++){if(_paq[H]){aj(_paq[H])}}_paq=new K();u.trigger("TrackerAdded",[at]);return at}ar(W,"beforeunload",am,false);ar(W,"visibilitychange",function(){if(m){return}if(J.visibilityState==="hidden"){ag("unload")}},false);ar(W,"online",function(){if(M(g.serviceWorker)){g.serviceWorker.ready.then(function(at){if(at&&at.sync){return at.sync.register("matomoSync")}},function(){})}},false);ar(W,"message",function(ay){if(!ay||!ay.origin){return}var aA,aw,au;var aB=d(ay.origin);var ax=u.getAsyncTrackers();for(aw=0;aw<ax.length;aw++){au=d(ax[aw].getMatomoUrl());if(au===aB){aA=ax[aw];break}}if(!aA){return}var av=null;try{av=JSON.parse(ay.data)}catch(az){return}if(!av){return}function at(aE){var aG=J.getElementsByTagName("iframe");for(aw=0;aw<aG.length;aw++){var aF=aG[aw];var aC=d(aF.src);if(aF.contentWindow&&M(aF.contentWindow.postMessage)&&aC===aB){var aD=JSON.stringify(aE);aF.contentWindow.postMessage(aD,"*")}}}if(M(av.maq_initial_value)){at({maq_opted_in:av.maq_initial_value&&aA.hasConsent(),maq_url:aA.getMatomoUrl(),maq_optout_by_default:aA.isConsentRequired()})
}else{if(M(av.maq_opted_in)){ax=u.getAsyncTrackers();for(aw=0;aw<ax.length;aw++){aA=ax[aw];if(av.maq_opted_in){aA.rememberConsentGiven()}else{aA.forgetConsentGiven()}}at({maq_confirm_opted_in:aA.hasConsent(),maq_url:aA.getMatomoUrl(),maq_optout_by_default:aA.isConsentRequired()})}}},false);Date.prototype.getTimeAlias=Date.prototype.getTime;u={initialized:false,JSON:W.JSON,DOM:{addEventListener:function(aw,av,au,at){var ax=typeof at;if(ax==="undefined"){at=false}ar(aw,av,au,at)},onLoad:n,onReady:q,isNodeVisible:i,isOrWasNodeVisible:w.isNodeVisible},on:function(au,at){if(!z[au]){z[au]=[]}z[au].push(at)},off:function(av,au){if(!z[av]){return}var at=0;for(at;at<z[av].length;at++){if(z[av][at]===au){z[av].splice(at,1)}}},trigger:function(av,aw,au){if(!z[av]){return}var at=0;for(at;at<z[av].length;at++){z[av][at].apply(au||W,aw)}},addPlugin:function(at,au){b[at]=au},getTracker:function(au,at){if(!M(at)){at=this.getAsyncTracker().getSiteId()}if(!M(au)){au=this.getAsyncTracker().getTrackerUrl()
}return new T(au,at)},getAsyncTrackers:function(){return L},addTracker:function(av,au){var at;if(!L.length){at=ah(av,au)}else{at=L[0].addTracker(av,au)}return at},getAsyncTracker:function(ax,aw){var av;if(L&&L.length&&L[0]){av=L[0]}else{return ah(ax,aw)}if(!aw&&!ax){return av}if((!M(aw)||null===aw)&&av){aw=av.getSiteId()}if((!M(ax)||null===ax)&&av){ax=av.getTrackerUrl()}var au,at=0;for(at;at<L.length;at++){au=L[at];if(au&&String(au.getSiteId())===String(aw)&&au.getTrackerUrl()===ax){return au}}},retryMissedPluginCalls:function(){var au=al;al=[];var at=0;for(at;at<au.length;at++){aj(au[at])}}};if(typeof define==="function"&&define.amd){define("piwik",[],function(){return u});define("matomo",[],function(){return u})}return u}())}
diff --git a/piwik.js b/piwik.js
index 6893f82409..58e9482f66 100644
--- a/piwik.js
+++ b/piwik.js
@@ -29,42 +29,43 @@ at=ai.findFirstNodeHavingAttribute(au,this.CONTENT_PIECE_ATTR);if(!at){at=ai.fin
}if(aw){aw+="&ca=1"}return aw},buildContentBlock:function(av){if(!av){return}var at=this.findContentName(av);var au=this.findContentPiece(av);var aw=this.findContentTarget(av);at=this.trim(at);au=this.trim(au);aw=this.trim(aw);return{name:at||"Unknown",piece:au||"Unknown",target:aw||""}},collectContent:function(aw){if(!aw||!aw.length){return[]}var av=[];var at,au;for(at=0;at<aw.length;at++){au=this.buildContentBlock(aw[at]);if(M(au)){av.push(au)}}return av},setLocation:function(at){this.location=at},getLocation:function(){var at=this.location||W.location;if(!at.origin){at.origin=at.protocol+"//"+at.hostname+(at.port?":"+at.port:"")}return at},toAbsoluteUrl:function(au){if((!au||String(au)!==au)&&au!==""){return au}if(""===au){return this.getLocation().href}if(au.search(/^\/\//)!==-1){return this.getLocation().protocol+au}if(au.search(/:\/\//)!==-1){return au}if(0===au.indexOf("#")){return this.getLocation().origin+this.getLocation().pathname+au}if(0===au.indexOf("?")){return this.getLocation().origin+this.getLocation().pathname+au
}if(0===au.search("^[a-zA-Z]{2,11}:")){return au}if(au.search(/^\//)!==-1){return this.getLocation().origin+au}var at="(.*/)";var av=this.getLocation().origin+this.getLocation().pathname.match(new RegExp(at))[0];return av+au},isUrlToCurrentDomain:function(au){var av=this.toAbsoluteUrl(au);if(!av){return false}var at=this.getLocation().origin;if(at===av){return true}if(0===String(av).indexOf(at)){if(":"===String(av).substr(at.length,1)){return false}return true}return false},setHrefAttribute:function(au,at){if(!au||!at){return}ai.setAnyAttribute(au,"href",at)},shouldIgnoreInteraction:function(at){if(ai.hasNodeAttribute(at,this.CONTENT_IGNOREINTERACTION_ATTR)){return true}if(ai.hasNodeCssClass(at,this.CONTENT_IGNOREINTERACTION_CLASS)){return true}if(ai.hasNodeCssClass(at,this.LEGACY_CONTENT_IGNOREINTERACTION_CLASS)){return true}return false}};function aa(au,ax){if(ax){return ax}au=w.toAbsoluteUrl(au);if(A(au,"?")){var aw=au.indexOf("?");au=au.slice(0,aw)}if(U(au,"matomo.php")){au=f(au,"matomo.php".length)
}else{if(U(au,"piwik.php")){au=f(au,"piwik.php".length)}else{if(U(au,".php")){var at=au.lastIndexOf("/");var av=1;au=au.slice(0,at+av)}}}if(U(au,"/js/")){au=f(au,"js/".length)}return au}function R(az){var aB="Matomo_Overlay";var au=new RegExp("index\\.php\\?module=Overlay&action=startOverlaySession&idSite=([0-9]+)&period=([^&]+)&date=([^&]+)(&segment=[^&]*)?");var av=au.exec(J.referrer);if(av){var ax=av[1];if(ax!==String(az)){return false}var ay=av[2],at=av[3],aw=av[4];if(!aw){aw=""}else{if(aw.indexOf("&segment=")===0){aw=aw.substr("&segment=".length)}}W.name=aB+"###"+ay+"###"+at+"###"+aw}var aA=W.name.split("###");return aA.length===4&&aA[0]===aB}function ad(au,az,av){var ay=W.name.split("###"),ax=ay[1],at=ay[2],aw=ay[3],aA=aa(au,az);o(aA+"plugins/Overlay/client/client.js?v=1",function(){Matomo_Overlay_Client.initialize(aA,av,ax,at,aw)})}function v(){var av;try{av=W.frameElement}catch(au){return true}if(M(av)){return(av&&String(av.nodeName).toLowerCase()==="iframe")?true:false}try{return W.self!==W.top
-}catch(at){return true}}function T(cj,cf){var bP=this,bj="mtm_consent",cN="mtm_cookie_consent",cW="mtm_consent_removed",ca=ae(J.domain,W.location.href,N()),c4=O(ca[0]),bT=p(ca[1]),bu=p(ca[2]),c2=false,cn="GET",dm=cn,aM="application/x-www-form-urlencoded; charset=UTF-8",cF=aM,aI=cj||"",bO="",db="",ct="",cc=cf||"",bF="",bU="",ba,bp="",di=["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","rtf","sea","sit","tar","tbz","tbz2","bz","bz2","tgz","torrent","txt","wav","wma","wmv","wpd","xls","xlsx","xml","z","zip"],aC=[c4],bG=[],cG=[],co=[],bR=[],be=[],bQ=500,c7=true,cT,bb,bX,bV,at,cw=["pk_campaign","mtm_campaign","piwik_campaign","matomo_campaign","utm_campaign","utm_source","utm_medium"],bN=["pk_kwd","mtm_kwd","piwik_kwd","matomo_kwd","utm_term"],bq="_pk_",az="pk_vid",a5=180,c9,bw,bY=false,aN="Lax",bs=false,c0,bk,bC,cU=33955200000,cu=1800000,dh=15768000000,a8=true,bL=false,bn=false,bW=false,aV=false,ch,b2={},cs={},bt={},bA=200,cB={},dc={},dj={},cg=[],ck=false,cL=false,au=false,dk=false,cX=false,aS=false,bi=v(),cH=null,da=null,aW,bI,cd=aq,bv,aQ,bH=false,cy=0,bB=["id","ses","cvar","ref"],cK=false,bJ=null,cV=[],cA=[],aB=X++,aA=false,c8=true;
-try{bp=J.title}catch(cI){bp=""}function aH(dy){if(bs){return 0}var dw=new RegExp("(^|;)[ ]*"+dy+"=([^;]*)"),dx=dw.exec(J.cookie);return dx?V(dx[2]):0}bJ=!aH(cW);function dr(dA,dB,dE,dD,dy,dz,dC){if(bs&&dA!==cW){return}var dx;if(dE){dx=new Date();dx.setTime(dx.getTime()+dE)}if(!dC){dC="Lax"}J.cookie=dA+"="+t(dB)+(dE?";expires="+dx.toGMTString():"")+";path="+(dD||"/")+(dy?";domain="+dy:"")+(dz?";secure":"")+";SameSite="+dC;if((!dE||dE>=0)&&aH(dA)!==String(dB)){var dw="There was an error setting cookie `"+dA+"`. Please check domain and path.";ao(dw)}}function b8(dw){var dy,dx;dw=j(dw,az);for(dx=0;dx<co.length;dx++){dw=j(dw,co[dx])}if(bV){dy=new RegExp("#.*");return dw.replace(dy,"")}return dw}function b1(dy,dw){var dz=s(dw),dx;if(dz){return dw}if(dw.slice(0,1)==="/"){return s(dy)+"://"+d(dy)+dw}dy=b8(dy);dx=dy.indexOf("?");if(dx>=0){dy=dy.slice(0,dx)}dx=dy.lastIndexOf("/");if(dx!==dy.length-1){dy=dy.slice(0,dx+1)}return dy+dw}function cR(dy,dw){var dx;dy=String(dy).toLowerCase();dw=String(dw).toLowerCase();
-if(dy===dw){return true}if(dw.slice(0,1)==="."){if(dy===dw.slice(1)){return true}dx=dy.length-dw.length;if((dx>0)&&(dy.slice(dx)===dw)){return true}}return false}function cr(dw){var dx=document.createElement("a");if(dw.indexOf("//")!==0&&dw.indexOf("http")!==0){if(dw.indexOf("*")===0){dw=dw.substr(1)}if(dw.indexOf(".")===0){dw=dw.substr(1)}dw="http://"+dw}dx.href=w.toAbsoluteUrl(dw);if(dx.pathname){return dx.pathname}return""}function a9(dx,dw){if(!an(dw,"/")){dw="/"+dw}if(!an(dx,"/")){dx="/"+dx}var dy=(dw==="/"||dw==="/*");if(dy){return true}if(dx===dw){return true}dw=String(dw).toLowerCase();dx=String(dx).toLowerCase();if(U(dw,"*")){dw=dw.slice(0,-1);dy=(!dw||dw==="/");if(dy){return true}if(dx===dw){return true}return dx.indexOf(dw)===0}if(!U(dx,"/")){dx+="/"}if(!U(dw,"/")){dw+="/"}return dx.indexOf(dw)===0}function aw(dA,dC){var dx,dw,dy,dz,dB;for(dx=0;dx<aC.length;dx++){dz=O(aC[dx]);dB=cr(aC[dx]);if(cR(dA,dz)&&a9(dC,dB)){return true}}return false}function a1(dz){var dx,dw,dy;for(dx=0;
-dx<aC.length;dx++){dw=O(aC[dx].toLowerCase());if(dz===dw){return true}if(dw.slice(0,1)==="."){if(dz===dw.slice(1)){return true}dy=dz.length-dw.length;if((dy>0)&&(dz.slice(dy)===dw)){return true}}}return false}function cx(dw){var dx,dz,dB,dy,dA;if(!dw.length||!cG.length){return false}dz=d(dw);dB=cr(dw);if(dz.indexOf("www.")===0){dz=dz.substr(4)}for(dx=0;dx<cG.length;dx++){dy=O(cG[dx]);dA=cr(cG[dx]);if(dy.indexOf("www.")===0){dy=dy.substr(4)}if(cR(dz,dy)&&a9(dB,dA)){return true}}return false}function cv(dw,dy){dw=dw.replace("send_image=0","send_image=1");var dx=new Image(1,1);dx.onload=function(){H=0;if(typeof dy==="function"){dy({request:dw,trackerUrl:aI,success:true})}};dx.onerror=function(){if(typeof dy==="function"){dy({request:dw,trackerUrl:aI,success:false})}};dx.src=aI+(aI.indexOf("?")<0?"?":"&")+dw}function cO(dw){if(dm==="POST"){return true}return dw&&(dw.length>2000||dw.indexOf('{"requests"')===0)}function aP(){return"object"===typeof g&&"function"===typeof g.sendBeacon&&"function"===typeof Blob
-}function bc(dA,dD,dC){var dy=aP();if(!dy){return false}var dz={type:"application/x-www-form-urlencoded; charset=UTF-8"};var dE=false;var dx=aI;try{var dw=new Blob([dA],dz);if(dC&&!cO(dA)){dw=new Blob([],dz);dx=dx+(dx.indexOf("?")<0?"?":"&")+dA}dE=g.sendBeacon(dx,dw)}catch(dB){return false}if(dE&&typeof dD==="function"){dD({request:dA,trackerUrl:aI,success:true,isSendBeacon:true})}return dE}function dg(dx,dy,dw){if(!M(dw)||null===dw){dw=true}if(m&&bc(dx,dy,dw)){return}setTimeout(function(){if(m&&bc(dx,dy,dw)){return}var dB;try{var dA=W.XMLHttpRequest?new W.XMLHttpRequest():W.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):null;dA.open("POST",aI,true);dA.onreadystatechange=function(){if(this.readyState===4&&!(this.status>=200&&this.status<300)){var dC=m&&bc(dx,dy,dw);if(!dC&&dw){cv(dx,dy)}else{if(typeof dy==="function"){dy({request:dx,trackerUrl:aI,success:false,xhr:this})}}}else{if(this.readyState===4&&(typeof dy==="function")){dy({request:dx,trackerUrl:aI,success:true,xhr:this})}}};
-dA.setRequestHeader("Content-Type",cF);dA.withCredentials=true;dA.send(dx)}catch(dz){dB=m&&bc(dx,dy,dw);if(!dB&&dw){cv(dx,dy)}else{if(typeof dy==="function"){dy({request:dx,trackerUrl:aI,success:false})}}}},50)}function cl(dx){var dw=new Date();var dy=dw.getTime()+dx;if(!r||dy>r){r=dy}}function bg(){bi=true;cH=new Date().getTime()}function dq(){var dw=new Date().getTime();return !cH||(dw-cH)>bb}function aD(){if(dq()){bX()}}function a0(){if(J.visibilityState==="hidden"&&dq()){bX()}else{if(J.visibilityState==="visible"){cH=new Date().getTime()}}}function dt(){if(aS||!bb){return}aS=true;ar(W,"focus",bg);ar(W,"blur",aD);ar(W,"visibilitychange",a0);af++;u.addPlugin("HeartBeat"+af,{unload:function(){if(aS&&dq()){bX()}}})}function cM(dA){var dx=new Date();var dw=dx.getTime();da=dw;if(cL&&dw<cL){var dy=cL-dw;setTimeout(dA,dy);cl(dy+50);cL+=50;return}if(cL===false){var dz=800;cL=dw+dz}dA()}function aT(){if(aH(cW)){bJ=false}else{if(aH(bj)){bJ=true}}}function bM(dx,dw,dy){aT();if(!bJ){cV.push(dx);
-return}aA=true;if(!c0&&dx){if(cK&&bJ){dx+="&consent=1"}cM(function(){if(c7&&bc(dx,dy,true)){cl(100);return}if(cO(dx)){dg(dx,dy)}else{cv(dx,dy)}cl(dw)})}if(!aS){dt()}}function cq(dw){if(c0){return false}return(dw&&dw.length)}function df(dw,dA){if(!dA||dA>=dw.length){return[dw]}var dx=0;var dy=dw.length;var dz=[];for(dx;dx<dy;dx+=dA){dz.push(dw.slice(dx,dx+dA))}return dz}function ds(dx,dw){if(!cq(dx)){return}if(!bJ){cV.push(dx);return}aA=true;cM(function(){var dA=df(dx,50);var dy=0,dz;for(dy;dy<dA.length;dy++){dz='{"requests":["?'+dA[dy].join('","?')+'"],"send_image":0}';if(c7&&bc(dz,null,false)){cl(100)}else{dg(dz,null,false)}}cl(dw)})}function aY(dw){return bq+dw+"."+cc+"."+bv}function b5(dy,dx,dw){dr(dy,"",-129600000,dx,dw)}function cb(){if(bs){return"0"}if(!M(W.showModalDialog)&&M(g.cookieEnabled)){return g.cookieEnabled?"1":"0"}var dw=bq+"testcookie";dr(dw,"1",undefined,bw,c9,bY,aN);var dx=aH(dw)==="1"?"1":"0";b5(dw);return dx}function bo(){bv=cd((c9||c4)+(bw||"/")).slice(0,4)}function cS(){if(!c8){return{}
-}if(M(dj.res)){return dj}var dx,dz,dA={pdf:"application/pdf",qt:"video/quicktime",realp:"audio/x-pn-realaudio-plugin",wma:"application/x-mplayer2",fla:"application/x-shockwave-flash",java:"application/x-java-vm",ag:"application/x-silverlight"};if(!((new RegExp("MSIE")).test(g.userAgent))){if(g.mimeTypes&&g.mimeTypes.length){for(dx in dA){if(Object.prototype.hasOwnProperty.call(dA,dx)){dz=g.mimeTypes[dA[dx]];dj[dx]=(dz&&dz.enabledPlugin)?"1":"0"}}}if(!((new RegExp("Edge[ /](\\d+[\\.\\d]+)")).test(g.userAgent))&&typeof navigator.javaEnabled!=="unknown"&&M(g.javaEnabled)&&g.javaEnabled()){dj.java="1"}if(!M(W.showModalDialog)&&M(g.cookieEnabled)){dj.cookie=g.cookieEnabled?"1":"0"}else{dj.cookie=cb()}}var dy=parseInt(ab.width,10);var dw=parseInt(ab.height,10);dj.res=parseInt(dy,10)+"x"+parseInt(dw,10);return dj}function b3(){var dx=aY("cvar"),dw=aH(dx);if(dw&&dw.length){dw=W.JSON.parse(dw);if(Z(dw)){return dw}}return{}}function cP(){if(aV===false){aV=b3()}}function c1(){var dw=cS();return cd((g.userAgent||"")+(g.platform||"")+W.JSON.stringify(dw)+(new Date()).getTime()+Math.random()).slice(0,16)
-}function aF(){var dw=cS();return cd((g.userAgent||"")+(g.platform||"")+W.JSON.stringify(dw)).slice(0,6)}function bl(){return Math.floor((new Date()).getTime()/1000)}function aO(){var dx=bl();var dy=aF();var dw=String(dx)+dy;return dw}function de(dy){dy=String(dy);var dB=aF();var dz=dB.length;var dA=dy.substr(-1*dz,dz);var dx=parseInt(dy.substr(0,dy.length-dz),10);if(dx&&dA&&dA===dB){var dw=bl();if(a5<=0){return true}if(dw>=dx&&dw<=(dx+a5)){return true}}return false}function du(dw){if(!cX){return""}var dA=e(dw,az);if(!dA){return""}dA=String(dA);var dy=new RegExp("^[a-zA-Z0-9]+$");if(dA.length===32&&dy.test(dA)){var dx=dA.substr(16,32);if(de(dx)){var dz=dA.substr(0,16);return dz}}return""}function cY(){if(!bU){bU=du(bT)}var dy=new Date(),dw=Math.round(dy.getTime()/1000),dx=aY("id"),dB=aH(dx),dA,dz;if(dB){dA=dB.split(".");dA.unshift("0");if(bU.length){dA[1]=bU}return dA}if(bU.length){dz=bU}else{if("0"===cb()){dz=""}else{dz=c1()}}dA=["1",dz,dw];return dA}function a4(){var dz=cY(),dx=dz[0],dy=dz[1],dw=dz[2];
-return{newVisitor:dx,uuid:dy,createTs:dw}}function aL(){var dz=new Date(),dx=dz.getTime(),dA=a4().createTs;var dw=parseInt(dA,10);var dy=(dw*1000)+cU-dx;return dy}function aR(dw){if(!cc){return}var dy=new Date(),dx=Math.round(dy.getTime()/1000);if(!M(dw)){dw=a4()}var dz=dw.uuid+"."+dw.createTs+".";dr(aY("id"),dz,aL(),bw,c9,bY,aN)}function bS(){var dw=aH(aY("ref"));if(dw.length){try{dw=W.JSON.parse(dw);if(Z(dw)){return dw}}catch(dx){}}return["","",0,""]}function bD(dy){var dx=bq+"testcookie_domain";var dw="testvalue";dr(dx,dw,10000,null,dy,bY,aN);if(aH(dx)===dw){b5(dx,null,dy);return true}return false}function aJ(){var dx=bs;bs=false;var dw,dy;for(dw=0;dw<bB.length;dw++){dy=aY(bB[dw]);if(dy!==cW&&dy!==bj&&0!==aH(dy)){b5(dy,bw,c9)}}bs=dx}function b9(dw){cc=dw}function dv(dA){if(!dA||!Z(dA)){return}var dz=[];var dy;for(dy in dA){if(Object.prototype.hasOwnProperty.call(dA,dy)){dz.push(dy)}}var dB={};dz.sort();var dw=dz.length;var dx;for(dx=0;dx<dw;dx++){dB[dz[dx]]=dA[dz[dx]]}return dB}function ci(){dr(aY("ses"),"1",cu,bw,c9,bY,aN)
-}function bm(){var dz="";var dx="abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";var dy=dx.length;var dw;for(dw=0;dw<6;dw++){dz+=dx.charAt(Math.floor(Math.random()*dy))}return dz}function aE(dx){if(ct!==""){dx+=ct;bn=true;return dx}if(!h){return dx}var dy=(typeof h.timing==="object")&&h.timing?h.timing:undefined;if(!dy){dy=(typeof h.getEntriesByType==="function")&&h.getEntriesByType("navigation")?h.getEntriesByType("navigation")[0]:undefined}if(!dy){return dx}var dw="";if(dy.connectEnd&&dy.fetchStart){if(dy.connectEnd<dy.fetchStart){return dx}dw+="&pf_net="+Math.round(dy.connectEnd-dy.fetchStart)}if(dy.responseStart&&dy.requestStart){if(dy.responseStart<dy.requestStart){return dx}dw+="&pf_srv="+Math.round(dy.responseStart-dy.requestStart)}if(dy.responseStart&&dy.responseEnd){if(dy.responseEnd<dy.responseStart){return dx}dw+="&pf_tfr="+Math.round(dy.responseEnd-dy.responseStart)}if(M(dy.domLoading)){if(dy.domInteractive&&dy.domLoading){if(dy.domInteractive<dy.domLoading){return dx
-}dw+="&pf_dm1="+Math.round(dy.domInteractive-dy.domLoading)}}else{if(dy.domInteractive&&dy.responseEnd){if(dy.domInteractive<dy.responseEnd){return dx}dw+="&pf_dm1="+Math.round(dy.domInteractive-dy.responseEnd)}}if(dy.domComplete&&dy.domInteractive){if(dy.domComplete<dy.domInteractive){return dx}dw+="&pf_dm2="+Math.round(dy.domComplete-dy.domInteractive)}if(dy.loadEventEnd&&dy.loadEventStart){if(dy.loadEventEnd<dy.loadEventStart){return dx}dw+="&pf_onl="+Math.round(dy.loadEventEnd-dy.loadEventStart)}return dx+dw}function dl(){var dG,dz=new Date(),dA=Math.round(dz.getTime()/1000),dL,dy,dB=1024,dI,dC,dx=aY("ses"),dF=aY("ref"),dE=aH(dx),dw=bS(),dK=ba||bT,dH,dD,dJ={};dH=dw[0];dD=dw[1];dL=dw[2];dy=dw[3];if(!dE){if(!bC||!dH.length){for(dG in cw){if(Object.prototype.hasOwnProperty.call(cw,dG)){dH=e(dK,cw[dG]);if(dH.length){break}}}for(dG in bN){if(Object.prototype.hasOwnProperty.call(bN,dG)){dD=e(dK,bN[dG]);if(dD.length){break}}}}dI=d(bu);dC=dy.length?d(dy):"";if(dI.length&&!a1(dI)&&!cx(bu)&&(!bC||!dC.length||a1(dC)||cx(dy))){dy=bu
-}if(dy.length||dH.length){dL=dA;dw=[dH,dD,dL,b8(dy.slice(0,dB))];dr(dF,W.JSON.stringify(dw),dh,bw,c9,bY,aN)}}if(dH.length){dJ._rcn=t(dH)}if(dD.length){dJ._rck=t(dD)}dJ._refts=dL;if(String(dy).length){dJ._ref=t(b8(dy.slice(0,dB)))}return dJ}function cz(dx,dI,dJ){var dH,dw=new Date(),dG=aV,dC=aY("cvar"),dK=ba||bT;if(bs){aJ()}if(c0){return""}var dD=a4();var dA=J.characterSet||J.charset;if(!dA||dA.toLowerCase()==="utf-8"){dA=null}dx+="&idsite="+cc+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+dw.getHours()+"&m="+dw.getMinutes()+"&s="+dw.getSeconds()+"&url="+t(b8(dK))+(bu.length&&!cx(bu)?"&urlref="+t(b8(bu)):"")+(ac(bF)?"&uid="+t(bF):"")+"&_id="+dD.uuid+"&_idn="+dD.newVisitor+(dA?"&cs="+t(dA):"")+"&send_image=0";var dF=dl();for(dH in dF){if(Object.prototype.hasOwnProperty.call(dF,dH)){dx+="&"+dH+"="+dF[dH]}}var dM=cS();for(dH in dM){if(Object.prototype.hasOwnProperty.call(dM,dH)){dx+="&"+dH+"="+dM[dH]}}var dN=[];if(dI){for(dH in dI){if(Object.prototype.hasOwnProperty.call(dI,dH)&&/^dimension\d+$/.test(dH)){var dy=dH.replace("dimension","");
-dN.push(parseInt(dy,10));dN.push(String(dy));dx+="&"+dH+"="+t(dI[dH]);delete dI[dH]}}}if(dI&&D(dI)){dI=null}for(dH in cB){if(Object.prototype.hasOwnProperty.call(cB,dH)){dx+="&"+dH+"="+t(cB[dH])}}for(dH in bt){if(Object.prototype.hasOwnProperty.call(bt,dH)){var dB=(-1===P(dN,dH));if(dB){dx+="&dimension"+dH+"="+t(bt[dH])}}}if(dI){dx+="&data="+t(W.JSON.stringify(dI))}else{if(at){dx+="&data="+t(W.JSON.stringify(at))}}function dz(dO,dP){var dQ=W.JSON.stringify(dO);if(dQ.length>2){return"&"+dP+"="+t(dQ)}return""}var dL=dv(b2);var dE=dv(cs);dx+=dz(dL,"cvar");dx+=dz(dE,"e_cvar");if(aV){dx+=dz(aV,"_cvar");for(dH in dG){if(Object.prototype.hasOwnProperty.call(dG,dH)){if(aV[dH][0]===""||aV[dH][1]===""){delete aV[dH]}}}if(bW){dr(dC,W.JSON.stringify(aV),cu,bw,c9,bY,aN)}}if(a8&&bL&&!bn){dx=aE(dx);bn=true}if(aQ){dx+="&pv_id="+aQ}aR(dD);ci();dx+=ag(dJ,{tracker:bP,request:dx});if(db.length){dx+="&"+db}if(C(ch)){dx=ch(dx)}return dx}bX=function bd(){var dw=new Date();dw=dw.getTime();if(!da){return false}if(da+bb<=dw){bP.ping();
-return true}return false};function bx(dz,dy,dD,dA,dw,dG){var dC="idgoal=0",dx=new Date(),dE=[],dF,dB=String(dz).length;if(dB){dC+="&ec_id="+t(dz)}dC+="&revenue="+dy;if(String(dD).length){dC+="&ec_st="+dD}if(String(dA).length){dC+="&ec_tx="+dA}if(String(dw).length){dC+="&ec_sh="+dw}if(String(dG).length){dC+="&ec_dt="+dG}if(dc){for(dF in dc){if(Object.prototype.hasOwnProperty.call(dc,dF)){if(!M(dc[dF][1])){dc[dF][1]=""}if(!M(dc[dF][2])){dc[dF][2]=""}if(!M(dc[dF][3])||String(dc[dF][3]).length===0){dc[dF][3]=0}if(!M(dc[dF][4])||String(dc[dF][4]).length===0){dc[dF][4]=1}dE.push(dc[dF])}}dC+="&ec_items="+t(W.JSON.stringify(dE))}dC=cz(dC,at,"ecommerce");bM(dC,bQ);if(dB){dc={}}}function b4(dw,dA,dz,dy,dx,dB){if(String(dw).length&&M(dA)){bx(dw,dA,dz,dy,dx,dB)}}function bz(dw){if(M(dw)){bx("",dw,"","","","")}}function b6(dx,dz,dy){if(!bH){aQ=bm()}var dw=cz("action_name="+t(ap(dx||bp)),dz,"log");if(a8&&!bn){dw=aE(dw)}bM(dw,bQ,dy)}function a6(dy,dx){var dz,dw="(^| )(piwik[_-]"+dx+"|matomo[_-]"+dx;if(dy){for(dz=0;
-dz<dy.length;dz++){dw+="|"+dy[dz]}}dw+=")( |$)";return new RegExp(dw)}function aZ(dw){return(aI&&dw&&0===String(dw).indexOf(aI))}function cD(dA,dw,dB,dx){if(aZ(dw)){return 0}var dz=a6(bR,"download"),dy=a6(be,"link"),dC=new RegExp("\\.("+di.join("|")+")([?&#]|$)","i");if(dy.test(dA)){return"link"}if(dx||dz.test(dA)||dC.test(dw)){return"download"}if(dB){return 0}return"link"}function ay(dx){var dw;dw=dx.parentNode;while(dw!==null&&M(dw)){if(ai.isLinkElement(dx)){break}dx=dw;dw=dx.parentNode}return dx}function dp(dB){dB=ay(dB);if(!ai.hasNodeAttribute(dB,"href")){return}if(!M(dB.href)){return}var dA=ai.getAttributeValueFromNode(dB,"href");var dx=dB.pathname||cr(dB.href);var dC=dB.hostname||d(dB.href);var dD=dC.toLowerCase();var dy=dB.href.replace(dC,dD);var dz=new RegExp("^(javascript|vbscript|jscript|mocha|livescript|ecmascript|mailto|tel):","i");if(!dz.test(dy)){var dw=cD(dB.className,dy,aw(dD,dx),ai.hasNodeAttribute(dB,"download"));if(dw){return{type:dw,href:dy}}}}function aU(dw,dx,dy,dz){var dA=w.buildInteractionRequestParams(dw,dx,dy,dz);
-if(!dA){return}return cz(dA,null,"contentInteraction")}function bh(dw,dx){if(!dw||!dx){return false}var dy=w.findTargetNode(dw);if(w.shouldIgnoreInteraction(dy)){return false}dy=w.findTargetNodeNoDefault(dw);if(dy&&!Y(dy,dx)){return false}return true}function cC(dy,dx,dA){if(!dy){return}var dw=w.findParentContentNode(dy);if(!dw){return}if(!bh(dw,dy)){return}var dz=w.buildContentBlock(dw);if(!dz){return}if(!dz.target&&dA){dz.target=dA}return w.buildInteractionRequestParams(dx,dz.name,dz.piece,dz.target)}function a2(dx){if(!cg||!cg.length){return false}var dw,dy;for(dw=0;dw<cg.length;dw++){dy=cg[dw];if(dy&&dy.name===dx.name&&dy.piece===dx.piece&&dy.target===dx.target){return true}}return false}function a3(dw){return function(dA){if(!dw){return}var dy=w.findParentContentNode(dw);var dx;if(dA){dx=dA.target||dA.srcElement}if(!dx){dx=dw}if(!bh(dy,dx)){return}if(!dy){return false}var dB=w.findTargetNode(dy);if(!dB||w.shouldIgnoreInteraction(dB)){return false}var dz=dp(dB);if(dk&&dz&&dz.type){return dz.type
-}return bP.trackContentInteractionNode(dx,"click")}}function b7(dy){if(!dy||!dy.length){return}var dw,dx;for(dw=0;dw<dy.length;dw++){dx=w.findTargetNode(dy[dw]);if(dx&&!dx.contentInteractionTrackingSetupDone){dx.contentInteractionTrackingSetupDone=true;ar(dx,"click",a3(dx))}}}function bE(dy,dz){if(!dy||!dy.length){return[]}var dw,dx;for(dw=0;dw<dy.length;dw++){if(a2(dy[dw])){dy.splice(dw,1);dw--}else{cg.push(dy[dw])}}if(!dy||!dy.length){return[]}b7(dz);var dA=[];for(dw=0;dw<dy.length;dw++){dx=cz(w.buildImpressionRequestParams(dy[dw].name,dy[dw].piece,dy[dw].target),undefined,"contentImpressions");if(dx){dA.push(dx)}}return dA}function cJ(dx){var dw=w.collectContent(dx);return bE(dw,dx)}function bf(dx){if(!dx||!dx.length){return[]}var dw;for(dw=0;dw<dx.length;dw++){if(!w.isNodeVisible(dx[dw])){dx.splice(dw,1);dw--}}if(!dx||!dx.length){return[]}return cJ(dx)}function aK(dy,dw,dx){var dz=w.buildImpressionRequestParams(dy,dw,dx);return cz(dz,null,"contentImpression")}function dn(dz,dx){if(!dz){return
-}var dw=w.findParentContentNode(dz);var dy=w.buildContentBlock(dw);if(!dy){return}if(!dx){dx="Unknown"}return aU(dx,dy.name,dy.piece,dy.target)}function cZ(dx,dz,dw,dy){return"e_c="+t(dx)+"&e_a="+t(dz)+(M(dw)?"&e_n="+t(dw):"")+(M(dy)?"&e_v="+t(dy):"")+"&ca=1"}function ax(dy,dA,dw,dz,dC,dB){if(!ac(dy)||!ac(dA)){ao("Error while logging event: Parameters `category` and `action` must not be empty or filled with whitespaces");return false}var dx=cz(cZ(dy,dA,dw,dz),dC,"event");bM(dx,bQ,dB)}function ce(dw,dz,dx,dA){var dy=cz("search="+t(dw)+(dz?"&search_cat="+t(dz):"")+(M(dx)?"&search_count="+dx:""),dA,"sitesearch");bM(dy,bQ)}function c3(dw,dA,dz,dy){var dx=cz("idgoal="+dw+(dA?"&revenue="+dA:""),dz,"goal");bM(dx,bQ,dy)}function dd(dz,dw,dD,dC,dy){var dB=dw+"="+t(b8(dz));var dx=cC(dy,"click",dz);if(dx){dB+="&"+dx}var dA=cz(dB,dD,"link");bM(dA,bQ,dC)}function b0(dx,dw){if(dx!==""){return dx+dw.charAt(0).toUpperCase()+dw.slice(1)}return dw}function cm(dB){var dA,dw,dz=["","webkit","ms","moz"],dy;
-if(!bk){for(dw=0;dw<dz.length;dw++){dy=dz[dw];if(Object.prototype.hasOwnProperty.call(J,b0(dy,"hidden"))){if(J[b0(dy,"visibilityState")]==="prerender"){dA=true}break}}}if(dA){ar(J,dy+"visibilitychange",function dx(){J.removeEventListener(dy+"visibilitychange",dx,false);dB()});return}dB()}function by(){var dx=bP.getVisitorId();var dw=aO();return dx+dw}function cp(dw){if(!dw){return}if(!ai.hasNodeAttribute(dw,"href")){return}var dx=ai.getAttributeValueFromNode(dw,"href");if(!dx||aZ(dx)){return}if(!bP.getVisitorId()){return}dx=j(dx,az);var dy=by();dx=I(dx,az,dy);ai.setAnyAttribute(dw,"href",dx)}function br(dz){var dA=ai.getAttributeValueFromNode(dz,"href");if(!dA){return false}dA=String(dA);var dx=dA.indexOf("//")===0||dA.indexOf("http://")===0||dA.indexOf("https://")===0;if(!dx){return false}var dw=dz.pathname||cr(dz.href);var dy=(dz.hostname||d(dz.href)).toLowerCase();if(aw(dy,dw)){if(!cR(c4,O(dy))){return true}return false}return false}function cQ(dw){var dx=dp(dw);if(dx&&dx.type){dx.href=p(dx.href);
-dd(dx.href,dx.type,undefined,null,dw);return}if(cX){dw=ay(dw);if(br(dw)){cp(dw)}}}function cE(){return J.all&&!J.addEventListener}function c5(dw){var dy=dw.which;var dx=(typeof dw.button);if(!dy&&dx!=="undefined"){if(cE()){if(dw.button&1){dy=1}else{if(dw.button&2){dy=3}else{if(dw.button&4){dy=2}}}}else{if(dw.button===0||dw.button==="0"){dy=1}else{if(dw.button&1){dy=2}else{if(dw.button&2){dy=3}}}}}return dy}function bZ(dw){switch(c5(dw)){case 1:return"left";case 2:return"middle";case 3:return"right"}}function a7(dw){return dw.target||dw.srcElement}function c6(dw){return dw==="A"||dw==="AREA"}function aG(dw){function dx(dz){var dA=a7(dz);var dB=dA.nodeName;var dy=a6(bG,"ignore");while(!c6(dB)&&dA&&dA.parentNode){dA=dA.parentNode;dB=dA.nodeName}if(dA&&c6(dB)&&!dy.test(dA.className)){return dA}}return function(dA){dA=dA||W.event;var dB=dx(dA);if(!dB){return}var dz=bZ(dA);if(dA.type==="click"){var dy=false;if(dw&&dz==="middle"){dy=true}if(dB&&!dy){cQ(dB)}}else{if(dA.type==="mousedown"){if(dz==="middle"&&dB){aW=dz;
-bI=dB}else{aW=bI=null}}else{if(dA.type==="mouseup"){if(dz===aW&&dB===bI){cQ(dB)}aW=bI=null}else{if(dA.type==="contextmenu"){cQ(dB)}}}}}}function av(dz,dy,dw){var dx=typeof dy;if(dx==="undefined"){dy=true}ar(dz,"click",aG(dy),dw);if(dy){ar(dz,"mouseup",aG(dy),dw);ar(dz,"mousedown",aG(dy),dw);ar(dz,"contextmenu",aG(dy),dw)}}function aX(dx,dA,dB){if(ck){return true}ck=true;var dC=false;var dz,dy;function dw(){dC=true}n(function(){function dD(dF){setTimeout(function(){if(!ck){return}dC=false;dB.trackVisibleContentImpressions();dD(dF)},dF)}function dE(dF){setTimeout(function(){if(!ck){return}if(dC){dC=false;dB.trackVisibleContentImpressions()}dE(dF)},dF)}if(dx){dz=["scroll","resize"];for(dy=0;dy<dz.length;dy++){if(J.addEventListener){J.addEventListener(dz[dy],dw,false)}else{W.attachEvent("on"+dz[dy],dw)}}dE(100)}if(dA&&dA>0){dA=parseInt(dA,10);dD(dA)}})}var bK={enabled:true,requests:[],timeout:null,interval:2500,sendRequests:function(){var dw=this.requests;this.requests=[];if(dw.length===1){bM(dw[0],bQ)
-}else{ds(dw,bQ)}},canQueue:function(){return !m&&this.enabled},pushMultiple:function(dx){if(!this.canQueue()){ds(dx,bQ);return}var dw;for(dw=0;dw<dx.length;dw++){this.push(dx[dw])}},push:function(dw){if(!dw){return}if(!this.canQueue()){bM(dw,bQ);return}bK.requests.push(dw);if(this.timeout){clearTimeout(this.timeout);this.timeout=null}this.timeout=setTimeout(function(){bK.timeout=null;bK.sendRequests()},bK.interval);var dx="RequestQueue"+aB;if(!Object.prototype.hasOwnProperty.call(b,dx)){b[dx]={unload:function(){if(bK.timeout){clearTimeout(bK.timeout)}bK.sendRequests()}}}}};bo();this.hasConsent=function(){return bJ};this.getVisitorInfo=function(){if(!aH(aY("id"))){aR()}return cY()};this.getVisitorId=function(){return this.getVisitorInfo()[1]};this.getAttributionInfo=function(){return bS()};this.getAttributionCampaignName=function(){return bS()[0]};this.getAttributionCampaignKeyword=function(){return bS()[1]};this.getAttributionReferrerTimestamp=function(){return bS()[2]};this.getAttributionReferrerUrl=function(){return bS()[3]
-};this.setTrackerUrl=function(dw){aI=dw};this.getTrackerUrl=function(){return aI};this.getMatomoUrl=function(){return aa(this.getTrackerUrl(),bO)};this.getPiwikUrl=function(){return this.getMatomoUrl()};this.addTracker=function(dy,dx){if(!M(dy)||null===dy){dy=this.getTrackerUrl()}var dw=new T(dy,dx);L.push(dw);u.trigger("TrackerAdded",[this]);return dw};this.getSiteId=function(){return cc};this.setSiteId=function(dw){b9(dw)};this.resetUserId=function(){bF=""};this.setUserId=function(dw){if(ac(dw)){bF=dw}};this.setVisitorId=function(dx){var dw=/[0-9A-Fa-f]{16}/g;if(x(dx)&&dw.test(dx)){bU=dx}else{ao("Invalid visitorId set"+dx)}};this.getUserId=function(){return bF};this.setCustomData=function(dw,dx){if(Z(dw)){at=dw}else{if(!at){at={}}at[dw]=dx}};this.getCustomData=function(){return at};this.setCustomRequestProcessing=function(dw){ch=dw};this.appendToTrackingUrl=function(dw){db=dw};this.getRequest=function(dw){return cz(dw)};this.addPlugin=function(dw,dx){b[dw]=dx};this.setCustomDimension=function(dw,dx){dw=parseInt(dw,10);
-if(dw>0){if(!M(dx)){dx=""}if(!x(dx)){dx=String(dx)}bt[dw]=dx}};this.getCustomDimension=function(dw){dw=parseInt(dw,10);if(dw>0&&Object.prototype.hasOwnProperty.call(bt,dw)){return bt[dw]}};this.deleteCustomDimension=function(dw){dw=parseInt(dw,10);if(dw>0){delete bt[dw]}};this.setCustomVariable=function(dx,dw,dA,dy){var dz;if(!M(dy)){dy="visit"}if(!M(dw)){return}if(!M(dA)){dA=""}if(dx>0){dw=!x(dw)?String(dw):dw;dA=!x(dA)?String(dA):dA;dz=[dw.slice(0,bA),dA.slice(0,bA)];if(dy==="visit"||dy===2){cP();aV[dx]=dz}else{if(dy==="page"||dy===3){b2[dx]=dz}else{if(dy==="event"){cs[dx]=dz}}}}};this.getCustomVariable=function(dx,dy){var dw;if(!M(dy)){dy="visit"}if(dy==="page"||dy===3){dw=b2[dx]}else{if(dy==="event"){dw=cs[dx]}else{if(dy==="visit"||dy===2){cP();dw=aV[dx]}}}if(!M(dw)||(dw&&dw[0]==="")){return false}return dw};this.deleteCustomVariable=function(dw,dx){if(this.getCustomVariable(dw,dx)){this.setCustomVariable(dw,"","",dx)}};this.deleteCustomVariables=function(dw){if(dw==="page"||dw===3){b2={}
-}else{if(dw==="event"){cs={}}else{if(dw==="visit"||dw===2){aV={}}}}};this.storeCustomVariablesInCookie=function(){bW=true};this.setLinkTrackingTimer=function(dw){bQ=dw};this.getLinkTrackingTimer=function(){return bQ};this.setDownloadExtensions=function(dw){if(x(dw)){dw=dw.split("|")}di=dw};this.addDownloadExtensions=function(dx){var dw;if(x(dx)){dx=dx.split("|")}for(dw=0;dw<dx.length;dw++){di.push(dx[dw])}};this.removeDownloadExtensions=function(dy){var dx,dw=[];if(x(dy)){dy=dy.split("|")}for(dx=0;dx<di.length;dx++){if(P(dy,di[dx])===-1){dw.push(di[dx])}}di=dw};this.setDomains=function(dw){aC=x(dw)?[dw]:dw;var dA=false,dy=0,dx;for(dy;dy<aC.length;dy++){dx=String(aC[dy]);if(cR(c4,O(dx))){dA=true;break}var dz=cr(dx);if(dz&&dz!=="/"&&dz!=="/*"){dA=true;break}}if(!dA){aC.push(c4)}};this.setExcludedReferrers=function(dw){cG=x(dw)?[dw]:dw};this.enableCrossDomainLinking=function(){cX=true};this.disableCrossDomainLinking=function(){cX=false};this.isCrossDomainLinkingEnabled=function(){return cX
-};this.setCrossDomainLinkingTimeout=function(dw){a5=dw};this.getCrossDomainLinkingUrlParameter=function(){return t(az)+"="+t(by())};this.setIgnoreClasses=function(dw){bG=x(dw)?[dw]:dw};this.setRequestMethod=function(dw){if(dw){dm=String(dw).toUpperCase()}else{dm=cn}if(dm==="GET"){this.disableAlwaysUseSendBeacon()}};this.setRequestContentType=function(dw){cF=dw||aM};this.setGenerationTimeMs=function(dw){ao("setGenerationTimeMs is no longer supported since Matomo 4. The call will be ignored. The replacement is setPagePerformanceTiming.")};this.setPagePerformanceTiming=function(dA,dC,dB,dx,dD,dy){var dz={pf_net:dA,pf_srv:dC,pf_tfr:dB,pf_dm1:dx,pf_dm2:dD,pf_onl:dy};try{dz=Q(dz,M);dz=B(dz);ct=l(dz);if(ct===""){ao("setPagePerformanceTiming() called without parameters. This function needs to be called with at least one performance parameter.");return}bn=false;bL=true}catch(dw){ao("setPagePerformanceTiming: "+dw.toString())}};this.setReferrerUrl=function(dw){bu=dw};this.setCustomUrl=function(dw){ba=b1(bT,dw)
-};this.getCurrentUrl=function(){return ba||bT};this.setDocumentTitle=function(dw){bp=dw};this.setPageViewId=function(dw){aQ=dw;bH=true};this.setAPIUrl=function(dw){bO=dw};this.setDownloadClasses=function(dw){bR=x(dw)?[dw]:dw};this.setLinkClasses=function(dw){be=x(dw)?[dw]:dw};this.setCampaignNameKey=function(dw){cw=x(dw)?[dw]:dw};this.setCampaignKeywordKey=function(dw){bN=x(dw)?[dw]:dw};this.discardHashTag=function(dw){bV=dw};this.setCookieNamePrefix=function(dw){bq=dw;if(aV){aV=b3()}};this.setCookieDomain=function(dw){var dx=O(dw);if(!bs&&!bD(dx)){ao("Can't write cookie on domain "+dw)}else{c9=dx;bo()}};this.setExcludedQueryParams=function(dw){co=x(dw)?[dw]:dw};this.getCookieDomain=function(){return c9};this.hasCookies=function(){return"1"===cb()};this.setSessionCookie=function(dy,dx,dw){if(!dy){throw new Error("Missing cookie name")}if(!M(dw)){dw=cu}bB.push(dy);dr(aY(dy),dx,dw,bw,c9,bY,aN)};this.getCookie=function(dx){var dw=aH(aY(dx));if(dw===0){return null}return dw};this.setCookiePath=function(dw){bw=dw;
-bo()};this.getCookiePath=function(dw){return bw};this.setVisitorCookieTimeout=function(dw){cU=dw*1000};this.setSessionCookieTimeout=function(dw){cu=dw*1000};this.getSessionCookieTimeout=function(){return cu};this.setReferralCookieTimeout=function(dw){dh=dw*1000};this.setConversionAttributionFirstReferrer=function(dw){bC=dw};this.setSecureCookie=function(dw){if(dw&&location.protocol!=="https:"){ao("Error in setSecureCookie: You cannot use `Secure` on http.");return}bY=dw};this.setCookieSameSite=function(dw){dw=String(dw);dw=dw.charAt(0).toUpperCase()+dw.toLowerCase().slice(1);if(dw!=="None"&&dw!=="Lax"&&dw!=="Strict"){ao("Ignored value for sameSite. Please use either Lax, None, or Strict.");return}if(dw==="None"){if(location.protocol==="https:"){this.setSecureCookie(true)}else{ao("sameSite=None cannot be used on http, reverted to sameSite=Lax.");dw="Lax"}}aN=dw};this.disableCookies=function(){bs=true;if(cc){aJ()}};this.areCookiesEnabled=function(){return !bs};this.setCookieConsentGiven=function(){if(bs&&!c0){bs=false;
-c8=true;if(cc&&aA){aR();var dw=cz("ping=1",null,"ping");bM(dw,bQ)}}};this.requireCookieConsent=function(){if(this.getRememberedCookieConsent()){return false}this.disableCookies();return true};this.getRememberedCookieConsent=function(){return aH(cN)};this.forgetCookieConsentGiven=function(){b5(cN,bw,c9);this.disableCookies()};this.rememberCookieConsentGiven=function(dx){if(dx){dx=dx*60*60*1000}else{dx=30*365*24*60*60*1000}this.setCookieConsentGiven();var dw=new Date().getTime();dr(cN,dw,dx,bw,c9,bY,aN)};this.deleteCookies=function(){aJ()};this.setDoNotTrack=function(dx){var dw=g.doNotTrack||g.msDoNotTrack;c0=dx&&(dw==="yes"||dw==="1");if(c0){this.disableCookies()}};this.alwaysUseSendBeacon=function(){c7=true};this.disableAlwaysUseSendBeacon=function(){c7=false};this.addListener=function(dx,dw){av(dx,dw,false)};this.enableLinkTracking=function(dx){if(dk){return}dk=true;var dw=this;q(function(){au=true;var dy=J.body;av(dy,dx,true)})};this.enableJSErrorTracking=function(){if(c2){return}c2=true;
-var dw=W.onerror;W.onerror=function(dB,dz,dy,dA,dx){cm(function(){var dC="JavaScript Errors";var dD=dz+":"+dy;if(dA){dD+=":"+dA}if(P(cA,dC+dD+dB)===-1){cA.push(dC+dD+dB);ax(dC,dD,dB)}});if(dw){return dw(dB,dz,dy,dA,dx)}return false}};this.disablePerformanceTracking=function(){a8=false};this.enableHeartBeatTimer=function(dw){dw=Math.max(dw||15,5);bb=dw*1000;if(da!==null){dt()}};this.disableHeartBeatTimer=function(){if(bb||aS){if(W.removeEventListener){W.removeEventListener("focus",bg);W.removeEventListener("blur",aD);W.removeEventListener("visibilitychange",a0)}else{if(W.detachEvent){W.detachEvent("onfocus",bg);W.detachEvent("onblur",aD);W.detachEvent("visibilitychange",a0)}}}bb=null;aS=false};this.killFrame=function(){if(W.location!==W.top.location){W.top.location=W.location}};this.redirectFile=function(dw){if(W.location.protocol==="file:"){W.location=dw}};this.setCountPreRendered=function(dw){bk=dw};this.trackGoal=function(dw,dz,dy,dx){cm(function(){c3(dw,dz,dy,dx)})};this.trackLink=function(dx,dw,dz,dy){cm(function(){dd(dx,dw,dz,dy)
-})};this.getNumTrackedPageViews=function(){return cy};this.trackPageView=function(dw,dy,dx){cg=[];cV=[];cA=[];if(R(cc)){cm(function(){ad(aI,bO,cc)})}else{cm(function(){cy++;b6(dw,dy,dx)})}};this.disableBrowserFeatureDetection=function(){c8=false};this.enableBrowserFeatureDetection=function(){c8=true};this.trackAllContentImpressions=function(){if(R(cc)){return}cm(function(){q(function(){var dw=w.findContentNodes();var dx=cJ(dw);bK.pushMultiple(dx)})})};this.trackVisibleContentImpressions=function(dw,dx){if(R(cc)){return}if(!M(dw)){dw=true}if(!M(dx)){dx=750}aX(dw,dx,this);cm(function(){n(function(){var dy=w.findContentNodes();var dz=bf(dy);bK.pushMultiple(dz)})})};this.trackContentImpression=function(dy,dw,dx){if(R(cc)){return}dy=a(dy);dw=a(dw);dx=a(dx);if(!dy){return}dw=dw||"Unknown";cm(function(){var dz=aK(dy,dw,dx);bK.push(dz)})};this.trackContentImpressionsWithinNode=function(dw){if(R(cc)||!dw){return}cm(function(){if(ck){n(function(){var dx=w.findContentNodesWithinNode(dw);var dy=bf(dx);
-bK.pushMultiple(dy)})}else{q(function(){var dx=w.findContentNodesWithinNode(dw);var dy=cJ(dx);bK.pushMultiple(dy)})}})};this.trackContentInteraction=function(dy,dz,dw,dx){if(R(cc)){return}dy=a(dy);dz=a(dz);dw=a(dw);dx=a(dx);if(!dy||!dz){return}dw=dw||"Unknown";cm(function(){var dA=aU(dy,dz,dw,dx);if(dA){bK.push(dA)}})};this.trackContentInteractionNode=function(dy,dx){if(R(cc)||!dy){return}var dw=null;cm(function(){dw=dn(dy,dx);if(dw){bK.push(dw)}});return dw};this.logAllContentBlocksOnPage=function(){var dy=w.findContentNodes();var dw=w.collectContent(dy);var dx=typeof console;if(dx!=="undefined"&&console&&console.log){console.log(dw)}};this.trackEvent=function(dx,dz,dw,dy,dB,dA){cm(function(){ax(dx,dz,dw,dy,dB,dA)})};this.trackSiteSearch=function(dw,dy,dx,dz){cg=[];cm(function(){ce(dw,dy,dx,dz)})};this.setEcommerceView=function(dA,dw,dy,dx){cB={};if(ac(dy)){dy=String(dy)}if(!M(dy)||dy===null||dy===false||!dy.length){dy=""}else{if(dy instanceof Array){dy=W.JSON.stringify(dy)}}var dz="_pkc";
-cB[dz]=dy;if(M(dx)&&dx!==null&&dx!==false&&String(dx).length){dz="_pkp";cB[dz]=dx}if(!ac(dA)&&!ac(dw)){return}if(ac(dA)){dz="_pks";cB[dz]=dA}if(!ac(dw)){dw=""}dz="_pkn";cB[dz]=dw};this.getEcommerceItems=function(){return JSON.parse(JSON.stringify(dc))};this.addEcommerceItem=function(dA,dw,dy,dx,dz){if(ac(dA)){dc[dA]=[String(dA),dw,dy,dx,dz]}};this.removeEcommerceItem=function(dw){if(ac(dw)){dw=String(dw);delete dc[dw]}};this.clearEcommerceCart=function(){dc={}};this.trackEcommerceOrder=function(dw,dA,dz,dy,dx,dB){b4(dw,dA,dz,dy,dx,dB)};this.trackEcommerceCartUpdate=function(dw){bz(dw)};this.trackRequest=function(dx,dz,dy,dw){cm(function(){var dA=cz(dx,dz,dw);bM(dA,bQ,dy)})};this.ping=function(){this.trackRequest("ping=1",null,null,"ping")};this.disableQueueRequest=function(){bK.enabled=false};this.setRequestQueueInterval=function(dw){if(dw<1000){throw new Error("Request queue interval needs to be at least 1000ms")}bK.interval=dw};this.queueRequest=function(dw){cm(function(){var dx=cz(dw);
-bK.push(dx)})};this.isConsentRequired=function(){return cK};this.getRememberedConsent=function(){var dw=aH(bj);if(aH(cW)){if(dw){b5(bj,bw,c9)}return null}if(!dw||dw===0){return null}return dw};this.hasRememberedConsent=function(){return !!this.getRememberedConsent()};this.requireConsent=function(){cK=true;bJ=this.hasRememberedConsent();if(!bJ){bs=true}y++;b["CoreConsent"+y]={unload:function(){if(!bJ){aJ()}}}};this.setConsentGiven=function(dx){bJ=true;c8=true;b5(cW,bw,c9);var dy,dw;for(dy=0;dy<cV.length;dy++){dw=typeof cV[dy];if(dw==="string"){bM(cV[dy],bQ)}else{if(dw==="object"){ds(cV[dy],bQ)}}}cV=[];if(!M(dx)||dx){this.setCookieConsentGiven()}};this.rememberConsentGiven=function(dy){if(dy){dy=dy*60*60*1000}else{dy=30*365*24*60*60*1000}var dw=true;this.setConsentGiven(dw);var dx=new Date().getTime();dr(bj,dx,dy,bw,c9,bY,aN)};this.forgetConsentGiven=function(){var dw=30*365*24*60*60*1000;b5(bj,bw,c9);dr(cW,new Date().getTime(),dw,bw,c9,bY,aN);this.forgetCookieConsentGiven();this.requireConsent()
-};this.isUserOptedOut=function(){return !bJ};this.optUserOut=this.forgetConsentGiven;this.forgetUserOptOut=function(){this.setConsentGiven(false)};n(function(){setTimeout(function(){bL=true},0)});u.trigger("TrackerSetup",[this]);u.addPlugin("TrackerVisitorIdCookie"+aB,{unload:function(){if(!aA){aR();dl()}}})}function K(){return{push:aj}}function c(ay,ax){var az={};var av,aw;for(av=0;av<ax.length;av++){var at=ax[av];az[at]=1;for(aw=0;aw<ay.length;aw++){if(ay[aw]&&ay[aw][0]){var au=ay[aw][0];if(at===au){aj(ay[aw]);delete ay[aw];if(az[au]>1&&au!=="addTracker"&&au!=="enableLinkTracking"){ao("The method "+au+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Matomo trackers documentation: https://developer.matomo.org/guides/tracking-javascript-guide#multiple-piwik-trackers')}az[au]++}}}}return ay}var E=["addTracker","forgetCookieConsentGiven","requireCookieConsent","disableBrowserFeatureDetection","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setCookieSameSite","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setVisitorId","setSiteId","alwaysUseSendBeacon","disableAlwaysUseSendBeacon","enableLinkTracking","setCookieConsentGiven","requireConsent","setConsentGiven","disablePerformanceTracking","setPagePerformanceTiming","setExcludedQueryParams","setExcludedReferrers"];
+}catch(at){return true}}function T(cn,ci){var bR=this,bk="mtm_consent",cS="mtm_cookie_consent",c1="mtm_consent_removed",cd=ae(J.domain,W.location.href,N()),c9=O(cd[0]),bW=p(cd[1]),bw=p(cd[2]),c7=false,cr="GET",ds=cr,aM="application/x-www-form-urlencoded; charset=UTF-8",cK=aM,aI=cn||"",bQ="",dg="",cx="",cf=ci||"",bH="",bX="",bb,bq="",dn=["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","rtf","sea","sit","tar","tbz","tbz2","bz","bz2","tgz","torrent","txt","wav","wma","wmv","wpd","xls","xlsx","xml","z","zip"],aC=[c9],bI=[],cL=[],cs=[],bU=[],bf=[],bS=500,dc=true,cY,bc,b0,bY,at,cB=["pk_campaign","mtm_campaign","piwik_campaign","matomo_campaign","utm_campaign","utm_source","utm_medium"],bP=["pk_kwd","mtm_kwd","piwik_kwd","matomo_kwd","utm_term"],br="_pk_",az="pk_vid",a6=180,de,by,b1=false,aN="Lax",bt=false,c5,bl,bE,cZ=33955200000,cy=1800000,dm=15768000000,a9=true,bN=false,bo=false,bZ=false,aV=false,cl,b5={},cw={},bv={},bC=200,cG={},dh={},dp={},aZ={},cj=[],bu=false,ck=[],co=false,cQ=false,au=false,dq=false,c2=false,aS=false,bj=v(),cM=null,df=null,aW,bK,cg=aq,bx,aQ,bJ=false,cD=0,bD=["id","ses","cvar","ref"],cP=false,bL=null,c0=[],cF=[],aB=X++,aA=false,dd=true;
+try{bq=J.title}catch(cN){bq=""}function aH(dD){if(bt){return 0}var dB=new RegExp("(^|;)[ ]*"+dD+"=([^;]*)"),dC=dB.exec(J.cookie);return dC?V(dC[2]):0}bL=!aH(c1);function dw(dF,dG,dJ,dI,dD,dE,dH){if(bt&&dF!==c1){return}var dC;if(dJ){dC=new Date();dC.setTime(dC.getTime()+dJ)}if(!dH){dH="Lax"}J.cookie=dF+"="+t(dG)+(dJ?";expires="+dC.toGMTString():"")+";path="+(dI||"/")+(dD?";domain="+dD:"")+(dE?";secure":"")+";SameSite="+dH;if((!dJ||dJ>=0)&&aH(dF)!==String(dG)){var dB="There was an error setting cookie `"+dF+"`. Please check domain and path.";ao(dB)}}function cb(dB){var dD,dC;dB=j(dB,az);for(dC=0;dC<cs.length;dC++){dB=j(dB,cs[dC])}if(bY){dD=new RegExp("#.*");return dB.replace(dD,"")}return dB}function b4(dD,dB){var dE=s(dB),dC;if(dE){return dB}if(dB.slice(0,1)==="/"){return s(dD)+"://"+d(dD)+dB}dD=cb(dD);dC=dD.indexOf("?");if(dC>=0){dD=dD.slice(0,dC)}dC=dD.lastIndexOf("/");if(dC!==dD.length-1){dD=dD.slice(0,dC+1)}return dD+dB}function cW(dD,dB){var dC;dD=String(dD).toLowerCase();dB=String(dB).toLowerCase();
+if(dD===dB){return true}if(dB.slice(0,1)==="."){if(dD===dB.slice(1)){return true}dC=dD.length-dB.length;if((dC>0)&&(dD.slice(dC)===dB)){return true}}return false}function cv(dB){var dC=document.createElement("a");if(dB.indexOf("//")!==0&&dB.indexOf("http")!==0){if(dB.indexOf("*")===0){dB=dB.substr(1)}if(dB.indexOf(".")===0){dB=dB.substr(1)}dB="http://"+dB}dC.href=w.toAbsoluteUrl(dB);if(dC.pathname){return dC.pathname}return""}function ba(dC,dB){if(!an(dB,"/")){dB="/"+dB}if(!an(dC,"/")){dC="/"+dC}var dD=(dB==="/"||dB==="/*");if(dD){return true}if(dC===dB){return true}dB=String(dB).toLowerCase();dC=String(dC).toLowerCase();if(U(dB,"*")){dB=dB.slice(0,-1);dD=(!dB||dB==="/");if(dD){return true}if(dC===dB){return true}return dC.indexOf(dB)===0}if(!U(dC,"/")){dC+="/"}if(!U(dB,"/")){dB+="/"}return dC.indexOf(dB)===0}function aw(dF,dH){var dC,dB,dD,dE,dG;for(dC=0;dC<aC.length;dC++){dE=O(aC[dC]);dG=cv(aC[dC]);if(cW(dF,dE)&&ba(dH,dG)){return true}}return false}function a2(dE){var dC,dB,dD;for(dC=0;
+dC<aC.length;dC++){dB=O(aC[dC].toLowerCase());if(dE===dB){return true}if(dB.slice(0,1)==="."){if(dE===dB.slice(1)){return true}dD=dE.length-dB.length;if((dD>0)&&(dE.slice(dD)===dB)){return true}}}return false}function cC(dB){var dC,dE,dG,dD,dF;if(!dB.length||!cL.length){return false}dE=d(dB);dG=cv(dB);if(dE.indexOf("www.")===0){dE=dE.substr(4)}for(dC=0;dC<cL.length;dC++){dD=O(cL[dC]);dF=cv(cL[dC]);if(dD.indexOf("www.")===0){dD=dD.substr(4)}if(cW(dE,dD)&&ba(dG,dF)){return true}}return false}function cz(dB,dD){dB=dB.replace("send_image=0","send_image=1");var dC=new Image(1,1);dC.onload=function(){H=0;if(typeof dD==="function"){dD({request:dB,trackerUrl:aI,success:true})}};dC.onerror=function(){if(typeof dD==="function"){dD({request:dB,trackerUrl:aI,success:false})}};dC.src=aI+(aI.indexOf("?")<0?"?":"&")+dB}function cT(dB){if(ds==="POST"){return true}return dB&&(dB.length>2000||dB.indexOf('{"requests"')===0)}function aP(){return"object"===typeof g&&"function"===typeof g.sendBeacon&&"function"===typeof Blob
+}function bd(dF,dI,dH){var dD=aP();if(!dD){return false}var dE={type:"application/x-www-form-urlencoded; charset=UTF-8"};var dJ=false;var dC=aI;try{var dB=new Blob([dF],dE);if(dH&&!cT(dF)){dB=new Blob([],dE);dC=dC+(dC.indexOf("?")<0?"?":"&")+dF}dJ=g.sendBeacon(dC,dB)}catch(dG){return false}if(dJ&&typeof dI==="function"){dI({request:dF,trackerUrl:aI,success:true,isSendBeacon:true})}return dJ}function dl(dC,dD,dB){if(!M(dB)||null===dB){dB=true}if(m&&bd(dC,dD,dB)){return}setTimeout(function(){if(m&&bd(dC,dD,dB)){return}var dG;try{var dF=W.XMLHttpRequest?new W.XMLHttpRequest():W.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):null;dF.open("POST",aI,true);dF.onreadystatechange=function(){if(this.readyState===4&&!(this.status>=200&&this.status<300)){var dH=m&&bd(dC,dD,dB);if(!dH&&dB){cz(dC,dD)}else{if(typeof dD==="function"){dD({request:dC,trackerUrl:aI,success:false,xhr:this})}}}else{if(this.readyState===4&&(typeof dD==="function")){dD({request:dC,trackerUrl:aI,success:true,xhr:this})}}};
+dF.setRequestHeader("Content-Type",cK);dF.withCredentials=true;dF.send(dC)}catch(dE){dG=m&&bd(dC,dD,dB);if(!dG&&dB){cz(dC,dD)}else{if(typeof dD==="function"){dD({request:dC,trackerUrl:aI,success:false})}}}},50)}function cp(dC){var dB=new Date();var dD=dB.getTime()+dC;if(!r||dD>r){r=dD}}function bh(){bj=true;cM=new Date().getTime()}function dv(){var dB=new Date().getTime();return !cM||(dB-cM)>bc}function aD(){if(dv()){b0()}}function a1(){if(J.visibilityState==="hidden"&&dv()){b0()}else{if(J.visibilityState==="visible"){cM=new Date().getTime()}}}function dy(){if(aS||!bc){return}aS=true;ar(W,"focus",bh);ar(W,"blur",aD);ar(W,"visibilitychange",a1);af++;u.addPlugin("HeartBeat"+af,{unload:function(){if(aS&&dv()){b0()}}})}function cR(dF){var dC=new Date();var dB=dC.getTime();df=dB;if(cQ&&dB<cQ){var dD=cQ-dB;setTimeout(dF,dD);cp(dD+50);cQ+=50;return}if(cQ===false){var dE=800;cQ=dB+dE}dF()}function aT(){if(aH(c1)){bL=false}else{if(aH(bk)){bL=true}}}function bT(dD){if(!aZ){return dD}var dC,dB="&uadata="+t(W.JSON.stringify(aZ));
+if(dD instanceof Array){for(dC=0;dC<dD.length;dC++){dD[dC]+=dB}}else{dD+=dB}return dD}function cA(dB){if(!dd||!M(g.userAgentData)||!C(g.userAgentData.getHighEntropyValues)){dB();return}aZ={brands:g.userAgentData.brands,platform:g.userAgentData.platform};g.userAgentData.getHighEntropyValues(["brands","model","platform","platformVersion","uaFullVersion","fullVersionList"]).then(function(dD){var dC;if(dD.fullVersionList){delete dD.brands;delete dD.uaFullVersion}aZ=dD;dB()},function(dC){dB()})}function bO(dC,dB,dD){if(!bu){cj.push(dC);return}aT();if(!bL){c0.push(dC);return}aA=true;if(!c5&&dC){if(cP&&bL){dC+="&consent=1"}dC=bT(dC);cR(function(){if(dc&&bd(dC,dD,true)){cp(100);return}if(cT(dC)){dl(dC,dD)}else{cz(dC,dD)}cp(dB)})}if(!aS){dy()}}function cu(dB){if(c5){return false}return(dB&&dB.length)}function dk(dB,dF){if(!dF||dF>=dB.length){return[dB]}var dC=0;var dD=dB.length;var dE=[];for(dC;dC<dD;dC+=dF){dE.push(dB.slice(dC,dC+dF))}return dE}function dx(dC,dB){if(!cu(dC)){return}if(!bu){cj.push(dC);
+return}if(!bL){c0.push(dC);return}aA=true;cR(function(){var dF=dk(dC,50);var dD=0,dE;for(dD;dD<dF.length;dD++){dE='{"requests":["?'+bT(dF[dD]).join('","?')+'"],"send_image":0}';if(dc&&bd(dE,null,false)){cp(100)}else{dl(dE,null,false)}}cp(dB)})}function aY(dB){return br+dB+"."+cf+"."+bx}function b8(dD,dC,dB){dw(dD,"",-129600000,dC,dB)}function ce(){if(bt){return"0"}if(!M(W.showModalDialog)&&M(g.cookieEnabled)){return g.cookieEnabled?"1":"0"}var dB=br+"testcookie";dw(dB,"1",undefined,by,de,b1,aN);var dC=aH(dB)==="1"?"1":"0";b8(dB);return dC}function bp(){bx=cg((de||c9)+(by||"/")).slice(0,4)}function cX(){cA(function(){var dH,dG;bu=true;for(dH=0;dH<cj.length;dH++){dG=typeof cj[dH];if(dG==="string"){bO(cj[dH],bS)}else{if(dG==="object"){dx(cj[dH],bS)}}}cj=[]});if(!dd){return{}}if(M(dp.res)){return dp}var dC,dE,dF={pdf:"application/pdf",qt:"video/quicktime",realp:"audio/x-pn-realaudio-plugin",wma:"application/x-mplayer2",fla:"application/x-shockwave-flash",java:"application/x-java-vm",ag:"application/x-silverlight"};
+if(!((new RegExp("MSIE")).test(g.userAgent))){if(g.mimeTypes&&g.mimeTypes.length){for(dC in dF){if(Object.prototype.hasOwnProperty.call(dF,dC)){dE=g.mimeTypes[dF[dC]];dp[dC]=(dE&&dE.enabledPlugin)?"1":"0"}}}if(!((new RegExp("Edge[ /](\\d+[\\.\\d]+)")).test(g.userAgent))&&typeof navigator.javaEnabled!=="unknown"&&M(g.javaEnabled)&&g.javaEnabled()){dp.java="1"}if(!M(W.showModalDialog)&&M(g.cookieEnabled)){dp.cookie=g.cookieEnabled?"1":"0"}else{dp.cookie=ce()}}var dD=parseInt(ab.width,10);var dB=parseInt(ab.height,10);dp.res=parseInt(dD,10)+"x"+parseInt(dB,10);return dp}function b6(){var dC=aY("cvar"),dB=aH(dC);if(dB&&dB.length){dB=W.JSON.parse(dB);if(Z(dB)){return dB}}return{}}function cU(){if(aV===false){aV=b6()}}function c6(){var dB=cX();return cg((g.userAgent||"")+(g.platform||"")+W.JSON.stringify(dB)+(new Date()).getTime()+Math.random()).slice(0,16)}function aF(){var dB=cX();return cg((g.userAgent||"")+(g.platform||"")+W.JSON.stringify(dB)).slice(0,6)}function bm(){return Math.floor((new Date()).getTime()/1000)
+}function aO(){var dC=bm();var dD=aF();var dB=String(dC)+dD;return dB}function dj(dD){dD=String(dD);var dG=aF();var dE=dG.length;var dF=dD.substr(-1*dE,dE);var dC=parseInt(dD.substr(0,dD.length-dE),10);if(dC&&dF&&dF===dG){var dB=bm();if(a6<=0){return true}if(dB>=dC&&dB<=(dC+a6)){return true}}return false}function dz(dB){if(!c2){return""}var dF=e(dB,az);if(!dF){return""}dF=String(dF);var dD=new RegExp("^[a-zA-Z0-9]+$");if(dF.length===32&&dD.test(dF)){var dC=dF.substr(16,32);if(dj(dC)){var dE=dF.substr(0,16);return dE}}return""}function c3(){if(!bX){bX=dz(bW)}var dD=new Date(),dB=Math.round(dD.getTime()/1000),dC=aY("id"),dG=aH(dC),dF,dE;if(dG){dF=dG.split(".");dF.unshift("0");if(bX.length){dF[1]=bX}return dF}if(bX.length){dE=bX}else{if("0"===ce()){dE=""}else{dE=c6()}}dF=["1",dE,dB];return dF}function a5(){var dE=c3(),dC=dE[0],dD=dE[1],dB=dE[2];return{newVisitor:dC,uuid:dD,createTs:dB}}function aL(){var dE=new Date(),dC=dE.getTime(),dF=a5().createTs;var dB=parseInt(dF,10);var dD=(dB*1000)+cZ-dC;
+return dD}function aR(dB){if(!cf){return}var dD=new Date(),dC=Math.round(dD.getTime()/1000);if(!M(dB)){dB=a5()}var dE=dB.uuid+"."+dB.createTs+".";dw(aY("id"),dE,aL(),by,de,b1,aN)}function bV(){var dB=aH(aY("ref"));if(dB.length){try{dB=W.JSON.parse(dB);if(Z(dB)){return dB}}catch(dC){}}return["","",0,""]}function bF(dD){var dC=br+"testcookie_domain";var dB="testvalue";dw(dC,dB,10000,null,dD,b1,aN);if(aH(dC)===dB){b8(dC,null,dD);return true}return false}function aJ(){var dC=bt;bt=false;var dB,dD;for(dB=0;dB<bD.length;dB++){dD=aY(bD[dB]);if(dD!==c1&&dD!==bk&&0!==aH(dD)){b8(dD,by,de)}}bt=dC}function cc(dB){cf=dB}function dA(dF){if(!dF||!Z(dF)){return}var dE=[];var dD;for(dD in dF){if(Object.prototype.hasOwnProperty.call(dF,dD)){dE.push(dD)}}var dG={};dE.sort();var dB=dE.length;var dC;for(dC=0;dC<dB;dC++){dG[dE[dC]]=dF[dE[dC]]}return dG}function cm(){dw(aY("ses"),"1",cy,by,de,b1,aN)}function bn(){var dE="";var dC="abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";var dD=dC.length;
+var dB;for(dB=0;dB<6;dB++){dE+=dC.charAt(Math.floor(Math.random()*dD))}return dE}function aE(dC){if(cx!==""){dC+=cx;bo=true;return dC}if(!h){return dC}var dD=(typeof h.timing==="object")&&h.timing?h.timing:undefined;if(!dD){dD=(typeof h.getEntriesByType==="function")&&h.getEntriesByType("navigation")?h.getEntriesByType("navigation")[0]:undefined}if(!dD){return dC}var dB="";if(dD.connectEnd&&dD.fetchStart){if(dD.connectEnd<dD.fetchStart){return dC}dB+="&pf_net="+Math.round(dD.connectEnd-dD.fetchStart)}if(dD.responseStart&&dD.requestStart){if(dD.responseStart<dD.requestStart){return dC}dB+="&pf_srv="+Math.round(dD.responseStart-dD.requestStart)}if(dD.responseStart&&dD.responseEnd){if(dD.responseEnd<dD.responseStart){return dC}dB+="&pf_tfr="+Math.round(dD.responseEnd-dD.responseStart)}if(M(dD.domLoading)){if(dD.domInteractive&&dD.domLoading){if(dD.domInteractive<dD.domLoading){return dC}dB+="&pf_dm1="+Math.round(dD.domInteractive-dD.domLoading)}}else{if(dD.domInteractive&&dD.responseEnd){if(dD.domInteractive<dD.responseEnd){return dC
+}dB+="&pf_dm1="+Math.round(dD.domInteractive-dD.responseEnd)}}if(dD.domComplete&&dD.domInteractive){if(dD.domComplete<dD.domInteractive){return dC}dB+="&pf_dm2="+Math.round(dD.domComplete-dD.domInteractive)}if(dD.loadEventEnd&&dD.loadEventStart){if(dD.loadEventEnd<dD.loadEventStart){return dC}dB+="&pf_onl="+Math.round(dD.loadEventEnd-dD.loadEventStart)}return dC+dB}function dr(){var dL,dE=new Date(),dF=Math.round(dE.getTime()/1000),dQ,dD,dG=1024,dN,dH,dC=aY("ses"),dK=aY("ref"),dJ=aH(dC),dB=bV(),dP=bb||bW,dM,dI,dO={};dM=dB[0];dI=dB[1];dQ=dB[2];dD=dB[3];if(!dJ){if(!bE||!dM.length){for(dL in cB){if(Object.prototype.hasOwnProperty.call(cB,dL)){dM=e(dP,cB[dL]);if(dM.length){break}}}for(dL in bP){if(Object.prototype.hasOwnProperty.call(bP,dL)){dI=e(dP,bP[dL]);if(dI.length){break}}}}dN=d(bw);dH=dD.length?d(dD):"";if(dN.length&&!a2(dN)&&!cC(bw)&&(!bE||!dH.length||a2(dH)||cC(dD))){dD=bw}if(dD.length||dM.length){dQ=dF;dB=[dM,dI,dQ,cb(dD.slice(0,dG))];dw(dK,W.JSON.stringify(dB),dm,by,de,b1,aN)}}if(dM.length){dO._rcn=t(dM)
+}if(dI.length){dO._rck=t(dI)}dO._refts=dQ;if(String(dD).length){dO._ref=t(cb(dD.slice(0,dG)))}return dO}function cE(dC,dN,dO){var dM,dB=new Date(),dL=aV,dH=aY("cvar"),dP=bb||bW;if(bt){aJ()}if(c5){return""}var dI=a5();var dF=J.characterSet||J.charset;if(!dF||dF.toLowerCase()==="utf-8"){dF=null}dC+="&idsite="+cf+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+dB.getHours()+"&m="+dB.getMinutes()+"&s="+dB.getSeconds()+"&url="+t(cb(dP))+(bw.length&&!cC(bw)?"&urlref="+t(cb(bw)):"")+(ac(bH)?"&uid="+t(bH):"")+"&_id="+dI.uuid+"&_idn="+dI.newVisitor+(dF?"&cs="+t(dF):"")+"&send_image=0";var dK=dr();for(dM in dK){if(Object.prototype.hasOwnProperty.call(dK,dM)){dC+="&"+dM+"="+dK[dM]}}var dR=cX();for(dM in dR){if(Object.prototype.hasOwnProperty.call(dR,dM)){dC+="&"+dM+"="+dR[dM]}}var dS=[];if(dN){for(dM in dN){if(Object.prototype.hasOwnProperty.call(dN,dM)&&/^dimension\d+$/.test(dM)){var dD=dM.replace("dimension","");dS.push(parseInt(dD,10));dS.push(String(dD));dC+="&"+dM+"="+t(dN[dM]);delete dN[dM]
+}}}if(dN&&D(dN)){dN=null}for(dM in cG){if(Object.prototype.hasOwnProperty.call(cG,dM)){dC+="&"+dM+"="+t(cG[dM])}}for(dM in bv){if(Object.prototype.hasOwnProperty.call(bv,dM)){var dG=(-1===P(dS,dM));if(dG){dC+="&dimension"+dM+"="+t(bv[dM])}}}if(dN){dC+="&data="+t(W.JSON.stringify(dN))}else{if(at){dC+="&data="+t(W.JSON.stringify(at))}}function dE(dT,dU){var dV=W.JSON.stringify(dT);if(dV.length>2){return"&"+dU+"="+t(dV)}return""}var dQ=dA(b5);var dJ=dA(cw);dC+=dE(dQ,"cvar");dC+=dE(dJ,"e_cvar");if(aV){dC+=dE(aV,"_cvar");for(dM in dL){if(Object.prototype.hasOwnProperty.call(dL,dM)){if(aV[dM][0]===""||aV[dM][1]===""){delete aV[dM]}}}if(bZ){dw(dH,W.JSON.stringify(aV),cy,by,de,b1,aN)}}if(a9&&bN&&!bo){dC=aE(dC);bo=true}if(aQ){dC+="&pv_id="+aQ}aR(dI);cm();dC+=ag(dO,{tracker:bR,request:dC});if(dg.length){dC+="&"+dg}if(C(cl)){dC=cl(dC)}return dC}b0=function be(){var dB=new Date();dB=dB.getTime();if(!df){return false}if(df+bc<=dB){bR.ping();return true}return false};function bz(dE,dD,dI,dF,dB,dL){var dH="idgoal=0",dC=new Date(),dJ=[],dK,dG=String(dE).length;
+if(dG){dH+="&ec_id="+t(dE)}dH+="&revenue="+dD;if(String(dI).length){dH+="&ec_st="+dI}if(String(dF).length){dH+="&ec_tx="+dF}if(String(dB).length){dH+="&ec_sh="+dB}if(String(dL).length){dH+="&ec_dt="+dL}if(dh){for(dK in dh){if(Object.prototype.hasOwnProperty.call(dh,dK)){if(!M(dh[dK][1])){dh[dK][1]=""}if(!M(dh[dK][2])){dh[dK][2]=""}if(!M(dh[dK][3])||String(dh[dK][3]).length===0){dh[dK][3]=0}if(!M(dh[dK][4])||String(dh[dK][4]).length===0){dh[dK][4]=1}dJ.push(dh[dK])}}dH+="&ec_items="+t(W.JSON.stringify(dJ))}dH=cE(dH,at,"ecommerce");bO(dH,bS);if(dG){dh={}}}function b7(dB,dF,dE,dD,dC,dG){if(String(dB).length&&M(dF)){bz(dB,dF,dE,dD,dC,dG)}}function bB(dB){if(M(dB)){bz("",dB,"","","","")}}function b9(dC,dE,dD){if(!bJ){aQ=bn()}var dB=cE("action_name="+t(ap(dC||bq)),dE,"log");if(a9&&!bo){dB=aE(dB)}bO(dB,bS,dD)}function a7(dD,dC){var dE,dB="(^| )(piwik[_-]"+dC+"|matomo[_-]"+dC;if(dD){for(dE=0;dE<dD.length;dE++){dB+="|"+dD[dE]}}dB+=")( |$)";return new RegExp(dB)}function a0(dB){return(aI&&dB&&0===String(dB).indexOf(aI))
+}function cI(dF,dB,dG,dC){if(a0(dB)){return 0}var dE=a7(bU,"download"),dD=a7(bf,"link"),dH=new RegExp("\\.("+dn.join("|")+")([?&#]|$)","i");if(dD.test(dF)){return"link"}if(dC||dE.test(dF)||dH.test(dB)){return"download"}if(dG){return 0}return"link"}function ay(dC){var dB;dB=dC.parentNode;while(dB!==null&&M(dB)){if(ai.isLinkElement(dC)){break}dC=dB;dB=dC.parentNode}return dC}function du(dG){dG=ay(dG);if(!ai.hasNodeAttribute(dG,"href")){return}if(!M(dG.href)){return}var dF=ai.getAttributeValueFromNode(dG,"href");var dC=dG.pathname||cv(dG.href);var dH=dG.hostname||d(dG.href);var dI=dH.toLowerCase();var dD=dG.href.replace(dH,dI);var dE=new RegExp("^(javascript|vbscript|jscript|mocha|livescript|ecmascript|mailto|tel):","i");if(!dE.test(dD)){var dB=cI(dG.className,dD,aw(dI,dC),ai.hasNodeAttribute(dG,"download"));if(dB){return{type:dB,href:dD}}}}function aU(dB,dC,dD,dE){var dF=w.buildInteractionRequestParams(dB,dC,dD,dE);if(!dF){return}return cE(dF,null,"contentInteraction")}function bi(dB,dC){if(!dB||!dC){return false
+}var dD=w.findTargetNode(dB);if(w.shouldIgnoreInteraction(dD)){return false}dD=w.findTargetNodeNoDefault(dB);if(dD&&!Y(dD,dC)){return false}return true}function cH(dD,dC,dF){if(!dD){return}var dB=w.findParentContentNode(dD);if(!dB){return}if(!bi(dB,dD)){return}var dE=w.buildContentBlock(dB);if(!dE){return}if(!dE.target&&dF){dE.target=dF}return w.buildInteractionRequestParams(dC,dE.name,dE.piece,dE.target)}function a3(dC){if(!ck||!ck.length){return false}var dB,dD;for(dB=0;dB<ck.length;dB++){dD=ck[dB];if(dD&&dD.name===dC.name&&dD.piece===dC.piece&&dD.target===dC.target){return true}}return false}function a4(dB){return function(dF){if(!dB){return}var dD=w.findParentContentNode(dB);var dC;if(dF){dC=dF.target||dF.srcElement}if(!dC){dC=dB}if(!bi(dD,dC)){return}if(!dD){return false}var dG=w.findTargetNode(dD);if(!dG||w.shouldIgnoreInteraction(dG)){return false}var dE=du(dG);if(dq&&dE&&dE.type){return dE.type}return bR.trackContentInteractionNode(dC,"click")}}function ca(dD){if(!dD||!dD.length){return
+}var dB,dC;for(dB=0;dB<dD.length;dB++){dC=w.findTargetNode(dD[dB]);if(dC&&!dC.contentInteractionTrackingSetupDone){dC.contentInteractionTrackingSetupDone=true;ar(dC,"click",a4(dC))}}}function bG(dD,dE){if(!dD||!dD.length){return[]}var dB,dC;for(dB=0;dB<dD.length;dB++){if(a3(dD[dB])){dD.splice(dB,1);dB--}else{ck.push(dD[dB])}}if(!dD||!dD.length){return[]}ca(dE);var dF=[];for(dB=0;dB<dD.length;dB++){dC=cE(w.buildImpressionRequestParams(dD[dB].name,dD[dB].piece,dD[dB].target),undefined,"contentImpressions");if(dC){dF.push(dC)}}return dF}function cO(dC){var dB=w.collectContent(dC);return bG(dB,dC)}function bg(dC){if(!dC||!dC.length){return[]}var dB;for(dB=0;dB<dC.length;dB++){if(!w.isNodeVisible(dC[dB])){dC.splice(dB,1);dB--}}if(!dC||!dC.length){return[]}return cO(dC)}function aK(dD,dB,dC){var dE=w.buildImpressionRequestParams(dD,dB,dC);return cE(dE,null,"contentImpression")}function dt(dE,dC){if(!dE){return}var dB=w.findParentContentNode(dE);var dD=w.buildContentBlock(dB);if(!dD){return}if(!dC){dC="Unknown"
+}return aU(dC,dD.name,dD.piece,dD.target)}function c4(dC,dE,dB,dD){return"e_c="+t(dC)+"&e_a="+t(dE)+(M(dB)?"&e_n="+t(dB):"")+(M(dD)?"&e_v="+t(dD):"")+"&ca=1"}function ax(dD,dF,dB,dE,dH,dG){if(!ac(dD)||!ac(dF)){ao("Error while logging event: Parameters `category` and `action` must not be empty or filled with whitespaces");return false}var dC=cE(c4(dD,dF,dB,dE),dH,"event");bO(dC,bS,dG)}function ch(dB,dE,dC,dF){var dD=cE("search="+t(dB)+(dE?"&search_cat="+t(dE):"")+(M(dC)?"&search_count="+dC:""),dF,"sitesearch");bO(dD,bS)}function c8(dB,dF,dE,dD){var dC=cE("idgoal="+dB+(dF?"&revenue="+dF:""),dE,"goal");bO(dC,bS,dD)}function di(dE,dB,dI,dH,dD){var dG=dB+"="+t(cb(dE));var dC=cH(dD,"click",dE);if(dC){dG+="&"+dC}var dF=cE(dG,dI,"link");bO(dF,bS,dH)}function b3(dC,dB){if(dC!==""){return dC+dB.charAt(0).toUpperCase()+dB.slice(1)}return dB}function cq(dG){var dF,dB,dE=["","webkit","ms","moz"],dD;if(!bl){for(dB=0;dB<dE.length;dB++){dD=dE[dB];if(Object.prototype.hasOwnProperty.call(J,b3(dD,"hidden"))){if(J[b3(dD,"visibilityState")]==="prerender"){dF=true
+}break}}}if(dF){ar(J,dD+"visibilitychange",function dC(){J.removeEventListener(dD+"visibilitychange",dC,false);dG()});return}dG()}function bA(){var dC=bR.getVisitorId();var dB=aO();return dC+dB}function ct(dB){if(!dB){return}if(!ai.hasNodeAttribute(dB,"href")){return}var dC=ai.getAttributeValueFromNode(dB,"href");if(!dC||a0(dC)){return}if(!bR.getVisitorId()){return}dC=j(dC,az);var dD=bA();dC=I(dC,az,dD);ai.setAnyAttribute(dB,"href",dC)}function bs(dE){var dF=ai.getAttributeValueFromNode(dE,"href");if(!dF){return false}dF=String(dF);var dC=dF.indexOf("//")===0||dF.indexOf("http://")===0||dF.indexOf("https://")===0;if(!dC){return false}var dB=dE.pathname||cv(dE.href);var dD=(dE.hostname||d(dE.href)).toLowerCase();if(aw(dD,dB)){if(!cW(c9,O(dD))){return true}return false}return false}function cV(dB){var dC=du(dB);if(dC&&dC.type){dC.href=p(dC.href);di(dC.href,dC.type,undefined,null,dB);return}if(c2){dB=ay(dB);if(bs(dB)){ct(dB)}}}function cJ(){return J.all&&!J.addEventListener}function da(dB){var dD=dB.which;
+var dC=(typeof dB.button);if(!dD&&dC!=="undefined"){if(cJ()){if(dB.button&1){dD=1}else{if(dB.button&2){dD=3}else{if(dB.button&4){dD=2}}}}else{if(dB.button===0||dB.button==="0"){dD=1}else{if(dB.button&1){dD=2}else{if(dB.button&2){dD=3}}}}}return dD}function b2(dB){switch(da(dB)){case 1:return"left";case 2:return"middle";case 3:return"right"}}function a8(dB){return dB.target||dB.srcElement}function db(dB){return dB==="A"||dB==="AREA"}function aG(dB){function dC(dE){var dF=a8(dE);var dG=dF.nodeName;var dD=a7(bI,"ignore");while(!db(dG)&&dF&&dF.parentNode){dF=dF.parentNode;dG=dF.nodeName}if(dF&&db(dG)&&!dD.test(dF.className)){return dF}}return function(dF){dF=dF||W.event;var dG=dC(dF);if(!dG){return}var dE=b2(dF);if(dF.type==="click"){var dD=false;if(dB&&dE==="middle"){dD=true}if(dG&&!dD){cV(dG)}}else{if(dF.type==="mousedown"){if(dE==="middle"&&dG){aW=dE;bK=dG}else{aW=bK=null}}else{if(dF.type==="mouseup"){if(dE===aW&&dG===bK){cV(dG)}aW=bK=null}else{if(dF.type==="contextmenu"){cV(dG)}}}}}}function av(dE,dD,dB){var dC=typeof dD;
+if(dC==="undefined"){dD=true}ar(dE,"click",aG(dD),dB);if(dD){ar(dE,"mouseup",aG(dD),dB);ar(dE,"mousedown",aG(dD),dB);ar(dE,"contextmenu",aG(dD),dB)}}function aX(dC,dF,dG){if(co){return true}co=true;var dH=false;var dE,dD;function dB(){dH=true}n(function(){function dI(dK){setTimeout(function(){if(!co){return}dH=false;dG.trackVisibleContentImpressions();dI(dK)},dK)}function dJ(dK){setTimeout(function(){if(!co){return}if(dH){dH=false;dG.trackVisibleContentImpressions()}dJ(dK)},dK)}if(dC){dE=["scroll","resize"];for(dD=0;dD<dE.length;dD++){if(J.addEventListener){J.addEventListener(dE[dD],dB,false)}else{W.attachEvent("on"+dE[dD],dB)}}dJ(100)}if(dF&&dF>0){dF=parseInt(dF,10);dI(dF)}})}var bM={enabled:true,requests:[],timeout:null,interval:2500,sendRequests:function(){var dB=this.requests;this.requests=[];if(dB.length===1){bO(dB[0],bS)}else{dx(dB,bS)}},canQueue:function(){return !m&&this.enabled},pushMultiple:function(dC){if(!this.canQueue()){dx(dC,bS);return}var dB;for(dB=0;dB<dC.length;dB++){this.push(dC[dB])
+}},push:function(dB){if(!dB){return}if(!this.canQueue()){bO(dB,bS);return}bM.requests.push(dB);if(this.timeout){clearTimeout(this.timeout);this.timeout=null}this.timeout=setTimeout(function(){bM.timeout=null;bM.sendRequests()},bM.interval);var dC="RequestQueue"+aB;if(!Object.prototype.hasOwnProperty.call(b,dC)){b[dC]={unload:function(){if(bM.timeout){clearTimeout(bM.timeout)}bM.sendRequests()}}}}};bp();this.hasConsent=function(){return bL};this.getVisitorInfo=function(){if(!aH(aY("id"))){aR()}return c3()};this.getVisitorId=function(){return this.getVisitorInfo()[1]};this.getAttributionInfo=function(){return bV()};this.getAttributionCampaignName=function(){return bV()[0]};this.getAttributionCampaignKeyword=function(){return bV()[1]};this.getAttributionReferrerTimestamp=function(){return bV()[2]};this.getAttributionReferrerUrl=function(){return bV()[3]};this.setTrackerUrl=function(dB){aI=dB};this.getTrackerUrl=function(){return aI};this.getMatomoUrl=function(){return aa(this.getTrackerUrl(),bQ)
+};this.getPiwikUrl=function(){return this.getMatomoUrl()};this.addTracker=function(dD,dC){if(!M(dD)||null===dD){dD=this.getTrackerUrl()}var dB=new T(dD,dC);L.push(dB);u.trigger("TrackerAdded",[this]);return dB};this.getSiteId=function(){return cf};this.setSiteId=function(dB){cc(dB)};this.resetUserId=function(){bH=""};this.setUserId=function(dB){if(ac(dB)){bH=dB}};this.setVisitorId=function(dC){var dB=/[0-9A-Fa-f]{16}/g;if(x(dC)&&dB.test(dC)){bX=dC}else{ao("Invalid visitorId set"+dC)}};this.getUserId=function(){return bH};this.setCustomData=function(dB,dC){if(Z(dB)){at=dB}else{if(!at){at={}}at[dB]=dC}};this.getCustomData=function(){return at};this.setCustomRequestProcessing=function(dB){cl=dB};this.appendToTrackingUrl=function(dB){dg=dB};this.getRequest=function(dB){return cE(dB)};this.addPlugin=function(dB,dC){b[dB]=dC};this.setCustomDimension=function(dB,dC){dB=parseInt(dB,10);if(dB>0){if(!M(dC)){dC=""}if(!x(dC)){dC=String(dC)}bv[dB]=dC}};this.getCustomDimension=function(dB){dB=parseInt(dB,10);
+if(dB>0&&Object.prototype.hasOwnProperty.call(bv,dB)){return bv[dB]}};this.deleteCustomDimension=function(dB){dB=parseInt(dB,10);if(dB>0){delete bv[dB]}};this.setCustomVariable=function(dC,dB,dF,dD){var dE;if(!M(dD)){dD="visit"}if(!M(dB)){return}if(!M(dF)){dF=""}if(dC>0){dB=!x(dB)?String(dB):dB;dF=!x(dF)?String(dF):dF;dE=[dB.slice(0,bC),dF.slice(0,bC)];if(dD==="visit"||dD===2){cU();aV[dC]=dE}else{if(dD==="page"||dD===3){b5[dC]=dE}else{if(dD==="event"){cw[dC]=dE}}}}};this.getCustomVariable=function(dC,dD){var dB;if(!M(dD)){dD="visit"}if(dD==="page"||dD===3){dB=b5[dC]}else{if(dD==="event"){dB=cw[dC]}else{if(dD==="visit"||dD===2){cU();dB=aV[dC]}}}if(!M(dB)||(dB&&dB[0]==="")){return false}return dB};this.deleteCustomVariable=function(dB,dC){if(this.getCustomVariable(dB,dC)){this.setCustomVariable(dB,"","",dC)}};this.deleteCustomVariables=function(dB){if(dB==="page"||dB===3){b5={}}else{if(dB==="event"){cw={}}else{if(dB==="visit"||dB===2){aV={}}}}};this.storeCustomVariablesInCookie=function(){bZ=true
+};this.setLinkTrackingTimer=function(dB){bS=dB};this.getLinkTrackingTimer=function(){return bS};this.setDownloadExtensions=function(dB){if(x(dB)){dB=dB.split("|")}dn=dB};this.addDownloadExtensions=function(dC){var dB;if(x(dC)){dC=dC.split("|")}for(dB=0;dB<dC.length;dB++){dn.push(dC[dB])}};this.removeDownloadExtensions=function(dD){var dC,dB=[];if(x(dD)){dD=dD.split("|")}for(dC=0;dC<dn.length;dC++){if(P(dD,dn[dC])===-1){dB.push(dn[dC])}}dn=dB};this.setDomains=function(dB){aC=x(dB)?[dB]:dB;var dF=false,dD=0,dC;for(dD;dD<aC.length;dD++){dC=String(aC[dD]);if(cW(c9,O(dC))){dF=true;break}var dE=cv(dC);if(dE&&dE!=="/"&&dE!=="/*"){dF=true;break}}if(!dF){aC.push(c9)}};this.setExcludedReferrers=function(dB){cL=x(dB)?[dB]:dB};this.enableCrossDomainLinking=function(){c2=true};this.disableCrossDomainLinking=function(){c2=false};this.isCrossDomainLinkingEnabled=function(){return c2};this.setCrossDomainLinkingTimeout=function(dB){a6=dB};this.getCrossDomainLinkingUrlParameter=function(){return t(az)+"="+t(bA())
+};this.setIgnoreClasses=function(dB){bI=x(dB)?[dB]:dB};this.setRequestMethod=function(dB){if(dB){ds=String(dB).toUpperCase()}else{ds=cr}if(ds==="GET"){this.disableAlwaysUseSendBeacon()}};this.setRequestContentType=function(dB){cK=dB||aM};this.setGenerationTimeMs=function(dB){ao("setGenerationTimeMs is no longer supported since Matomo 4. The call will be ignored. The replacement is setPagePerformanceTiming.")};this.setPagePerformanceTiming=function(dF,dH,dG,dC,dI,dD){var dE={pf_net:dF,pf_srv:dH,pf_tfr:dG,pf_dm1:dC,pf_dm2:dI,pf_onl:dD};try{dE=Q(dE,M);dE=B(dE);cx=l(dE);if(cx===""){ao("setPagePerformanceTiming() called without parameters. This function needs to be called with at least one performance parameter.");return}bo=false;bN=true}catch(dB){ao("setPagePerformanceTiming: "+dB.toString())}};this.setReferrerUrl=function(dB){bw=dB};this.setCustomUrl=function(dB){bb=b4(bW,dB)};this.getCurrentUrl=function(){return bb||bW};this.setDocumentTitle=function(dB){bq=dB};this.setPageViewId=function(dB){aQ=dB;
+bJ=true};this.setAPIUrl=function(dB){bQ=dB};this.setDownloadClasses=function(dB){bU=x(dB)?[dB]:dB};this.setLinkClasses=function(dB){bf=x(dB)?[dB]:dB};this.setCampaignNameKey=function(dB){cB=x(dB)?[dB]:dB};this.setCampaignKeywordKey=function(dB){bP=x(dB)?[dB]:dB};this.discardHashTag=function(dB){bY=dB};this.setCookieNamePrefix=function(dB){br=dB;if(aV){aV=b6()}};this.setCookieDomain=function(dB){var dC=O(dB);if(!bt&&!bF(dC)){ao("Can't write cookie on domain "+dB)}else{de=dC;bp()}};this.setExcludedQueryParams=function(dB){cs=x(dB)?[dB]:dB};this.getCookieDomain=function(){return de};this.hasCookies=function(){return"1"===ce()};this.setSessionCookie=function(dD,dC,dB){if(!dD){throw new Error("Missing cookie name")}if(!M(dB)){dB=cy}bD.push(dD);dw(aY(dD),dC,dB,by,de,b1,aN)};this.getCookie=function(dC){var dB=aH(aY(dC));if(dB===0){return null}return dB};this.setCookiePath=function(dB){by=dB;bp()};this.getCookiePath=function(dB){return by};this.setVisitorCookieTimeout=function(dB){cZ=dB*1000};this.setSessionCookieTimeout=function(dB){cy=dB*1000
+};this.getSessionCookieTimeout=function(){return cy};this.setReferralCookieTimeout=function(dB){dm=dB*1000};this.setConversionAttributionFirstReferrer=function(dB){bE=dB};this.setSecureCookie=function(dB){if(dB&&location.protocol!=="https:"){ao("Error in setSecureCookie: You cannot use `Secure` on http.");return}b1=dB};this.setCookieSameSite=function(dB){dB=String(dB);dB=dB.charAt(0).toUpperCase()+dB.toLowerCase().slice(1);if(dB!=="None"&&dB!=="Lax"&&dB!=="Strict"){ao("Ignored value for sameSite. Please use either Lax, None, or Strict.");return}if(dB==="None"){if(location.protocol==="https:"){this.setSecureCookie(true)}else{ao("sameSite=None cannot be used on http, reverted to sameSite=Lax.");dB="Lax"}}aN=dB};this.disableCookies=function(){bt=true;if(cf){aJ()}};this.areCookiesEnabled=function(){return !bt};this.setCookieConsentGiven=function(){if(bt&&!c5){bt=false;dd=true;if(cf&&aA){aR();var dB=cE("ping=1",null,"ping");bO(dB,bS)}}};this.requireCookieConsent=function(){if(this.getRememberedCookieConsent()){return false
+}this.disableCookies();return true};this.getRememberedCookieConsent=function(){return aH(cS)};this.forgetCookieConsentGiven=function(){b8(cS,by,de);this.disableCookies()};this.rememberCookieConsentGiven=function(dC){if(dC){dC=dC*60*60*1000}else{dC=30*365*24*60*60*1000}this.setCookieConsentGiven();var dB=new Date().getTime();dw(cS,dB,dC,by,de,b1,aN)};this.deleteCookies=function(){aJ()};this.setDoNotTrack=function(dC){var dB=g.doNotTrack||g.msDoNotTrack;c5=dC&&(dB==="yes"||dB==="1");if(c5){this.disableCookies()}};this.alwaysUseSendBeacon=function(){dc=true};this.disableAlwaysUseSendBeacon=function(){dc=false};this.addListener=function(dC,dB){av(dC,dB,false)};this.enableLinkTracking=function(dC){if(dq){return}dq=true;var dB=this;q(function(){au=true;var dD=J.body;av(dD,dC,true)})};this.enableJSErrorTracking=function(){if(c7){return}c7=true;var dB=W.onerror;W.onerror=function(dG,dE,dD,dF,dC){cq(function(){var dH="JavaScript Errors";var dI=dE+":"+dD;if(dF){dI+=":"+dF}if(P(cF,dH+dI+dG)===-1){cF.push(dH+dI+dG);
+ax(dH,dI,dG)}});if(dB){return dB(dG,dE,dD,dF,dC)}return false}};this.disablePerformanceTracking=function(){a9=false};this.enableHeartBeatTimer=function(dB){dB=Math.max(dB||15,5);bc=dB*1000;if(df!==null){dy()}};this.disableHeartBeatTimer=function(){if(bc||aS){if(W.removeEventListener){W.removeEventListener("focus",bh);W.removeEventListener("blur",aD);W.removeEventListener("visibilitychange",a1)}else{if(W.detachEvent){W.detachEvent("onfocus",bh);W.detachEvent("onblur",aD);W.detachEvent("visibilitychange",a1)}}}bc=null;aS=false};this.killFrame=function(){if(W.location!==W.top.location){W.top.location=W.location}};this.redirectFile=function(dB){if(W.location.protocol==="file:"){W.location=dB}};this.setCountPreRendered=function(dB){bl=dB};this.trackGoal=function(dB,dE,dD,dC){cq(function(){c8(dB,dE,dD,dC)})};this.trackLink=function(dC,dB,dE,dD){cq(function(){di(dC,dB,dE,dD)})};this.getNumTrackedPageViews=function(){return cD};this.trackPageView=function(dB,dD,dC){ck=[];c0=[];cF=[];if(R(cf)){cq(function(){ad(aI,bQ,cf)
+})}else{cq(function(){cD++;b9(dB,dD,dC)})}};this.disableBrowserFeatureDetection=function(){dd=false};this.enableBrowserFeatureDetection=function(){dd=true};this.trackAllContentImpressions=function(){if(R(cf)){return}cq(function(){q(function(){var dB=w.findContentNodes();var dC=cO(dB);bM.pushMultiple(dC)})})};this.trackVisibleContentImpressions=function(dB,dC){if(R(cf)){return}if(!M(dB)){dB=true}if(!M(dC)){dC=750}aX(dB,dC,this);cq(function(){n(function(){var dD=w.findContentNodes();var dE=bg(dD);bM.pushMultiple(dE)})})};this.trackContentImpression=function(dD,dB,dC){if(R(cf)){return}dD=a(dD);dB=a(dB);dC=a(dC);if(!dD){return}dB=dB||"Unknown";cq(function(){var dE=aK(dD,dB,dC);bM.push(dE)})};this.trackContentImpressionsWithinNode=function(dB){if(R(cf)||!dB){return}cq(function(){if(co){n(function(){var dC=w.findContentNodesWithinNode(dB);var dD=bg(dC);bM.pushMultiple(dD)})}else{q(function(){var dC=w.findContentNodesWithinNode(dB);var dD=cO(dC);bM.pushMultiple(dD)})}})};this.trackContentInteraction=function(dD,dE,dB,dC){if(R(cf)){return
+}dD=a(dD);dE=a(dE);dB=a(dB);dC=a(dC);if(!dD||!dE){return}dB=dB||"Unknown";cq(function(){var dF=aU(dD,dE,dB,dC);if(dF){bM.push(dF)}})};this.trackContentInteractionNode=function(dD,dC){if(R(cf)||!dD){return}var dB=null;cq(function(){dB=dt(dD,dC);if(dB){bM.push(dB)}});return dB};this.logAllContentBlocksOnPage=function(){var dD=w.findContentNodes();var dB=w.collectContent(dD);var dC=typeof console;if(dC!=="undefined"&&console&&console.log){console.log(dB)}};this.trackEvent=function(dC,dE,dB,dD,dG,dF){cq(function(){ax(dC,dE,dB,dD,dG,dF)})};this.trackSiteSearch=function(dB,dD,dC,dE){ck=[];cq(function(){ch(dB,dD,dC,dE)})};this.setEcommerceView=function(dF,dB,dD,dC){cG={};if(ac(dD)){dD=String(dD)}if(!M(dD)||dD===null||dD===false||!dD.length){dD=""}else{if(dD instanceof Array){dD=W.JSON.stringify(dD)}}var dE="_pkc";cG[dE]=dD;if(M(dC)&&dC!==null&&dC!==false&&String(dC).length){dE="_pkp";cG[dE]=dC}if(!ac(dF)&&!ac(dB)){return}if(ac(dF)){dE="_pks";cG[dE]=dF}if(!ac(dB)){dB=""}dE="_pkn";cG[dE]=dB};this.getEcommerceItems=function(){return JSON.parse(JSON.stringify(dh))
+};this.addEcommerceItem=function(dF,dB,dD,dC,dE){if(ac(dF)){dh[dF]=[String(dF),dB,dD,dC,dE]}};this.removeEcommerceItem=function(dB){if(ac(dB)){dB=String(dB);delete dh[dB]}};this.clearEcommerceCart=function(){dh={}};this.trackEcommerceOrder=function(dB,dF,dE,dD,dC,dG){b7(dB,dF,dE,dD,dC,dG)};this.trackEcommerceCartUpdate=function(dB){bB(dB)};this.trackRequest=function(dC,dE,dD,dB){cq(function(){var dF=cE(dC,dE,dB);bO(dF,bS,dD)})};this.ping=function(){this.trackRequest("ping=1",null,null,"ping")};this.disableQueueRequest=function(){bM.enabled=false};this.setRequestQueueInterval=function(dB){if(dB<1000){throw new Error("Request queue interval needs to be at least 1000ms")}bM.interval=dB};this.queueRequest=function(dB){cq(function(){var dC=cE(dB);bM.push(dC)})};this.isConsentRequired=function(){return cP};this.getRememberedConsent=function(){var dB=aH(bk);if(aH(c1)){if(dB){b8(bk,by,de)}return null}if(!dB||dB===0){return null}return dB};this.hasRememberedConsent=function(){return !!this.getRememberedConsent()
+};this.requireConsent=function(){cP=true;bL=this.hasRememberedConsent();if(!bL){bt=true}y++;b["CoreConsent"+y]={unload:function(){if(!bL){aJ()}}}};this.setConsentGiven=function(dC){bL=true;dd=true;b8(c1,by,de);var dD,dB;for(dD=0;dD<c0.length;dD++){dB=typeof c0[dD];if(dB==="string"){bO(c0[dD],bS)}else{if(dB==="object"){dx(c0[dD],bS)}}}c0=[];if(!M(dC)||dC){this.setCookieConsentGiven()}};this.rememberConsentGiven=function(dD){if(dD){dD=dD*60*60*1000}else{dD=30*365*24*60*60*1000}var dB=true;this.setConsentGiven(dB);var dC=new Date().getTime();dw(bk,dC,dD,by,de,b1,aN)};this.forgetConsentGiven=function(){var dB=30*365*24*60*60*1000;b8(bk,by,de);dw(c1,new Date().getTime(),dB,by,de,b1,aN);this.forgetCookieConsentGiven();this.requireConsent()};this.isUserOptedOut=function(){return !bL};this.optUserOut=this.forgetConsentGiven;this.forgetUserOptOut=function(){this.setConsentGiven(false)};n(function(){setTimeout(function(){bN=true},0)});u.trigger("TrackerSetup",[this]);u.addPlugin("TrackerVisitorIdCookie"+aB,{unload:function(){if(!aA){aR();
+dr()}}})}function K(){return{push:aj}}function c(ay,ax){var az={};var av,aw;for(av=0;av<ax.length;av++){var at=ax[av];az[at]=1;for(aw=0;aw<ay.length;aw++){if(ay[aw]&&ay[aw][0]){var au=ay[aw][0];if(at===au){aj(ay[aw]);delete ay[aw];if(az[au]>1&&au!=="addTracker"&&au!=="enableLinkTracking"){ao("The method "+au+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Matomo trackers documentation: https://developer.matomo.org/guides/tracking-javascript-guide#multiple-piwik-trackers')}az[au]++}}}}return ay}var E=["addTracker","forgetCookieConsentGiven","requireCookieConsent","disableBrowserFeatureDetection","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setCookieSameSite","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setVisitorId","setSiteId","alwaysUseSendBeacon","disableAlwaysUseSendBeacon","enableLinkTracking","setCookieConsentGiven","requireConsent","setConsentGiven","disablePerformanceTracking","setPagePerformanceTiming","setExcludedQueryParams","setExcludedReferrers"];
function ah(av,au){var at=new T(av,au);L.push(at);_paq=c(_paq,E);for(H=0;H<_paq.length;H++){if(_paq[H]){aj(_paq[H])}}_paq=new K();u.trigger("TrackerAdded",[at]);return at}ar(W,"beforeunload",am,false);ar(W,"visibilitychange",function(){if(m){return}if(J.visibilityState==="hidden"){ag("unload")}},false);ar(W,"online",function(){if(M(g.serviceWorker)){g.serviceWorker.ready.then(function(at){if(at&&at.sync){return at.sync.register("matomoSync")}},function(){})}},false);ar(W,"message",function(ay){if(!ay||!ay.origin){return}var aA,aw,au;var aB=d(ay.origin);var ax=u.getAsyncTrackers();for(aw=0;aw<ax.length;aw++){au=d(ax[aw].getMatomoUrl());if(au===aB){aA=ax[aw];break}}if(!aA){return}var av=null;try{av=JSON.parse(ay.data)}catch(az){return}if(!av){return}function at(aE){var aG=J.getElementsByTagName("iframe");for(aw=0;aw<aG.length;aw++){var aF=aG[aw];var aC=d(aF.src);if(aF.contentWindow&&M(aF.contentWindow.postMessage)&&aC===aB){var aD=JSON.stringify(aE);aF.contentWindow.postMessage(aD,"*")}}}if(M(av.maq_initial_value)){at({maq_opted_in:av.maq_initial_value&&aA.hasConsent(),maq_url:aA.getMatomoUrl(),maq_optout_by_default:aA.isConsentRequired()})
}else{if(M(av.maq_opted_in)){ax=u.getAsyncTrackers();for(aw=0;aw<ax.length;aw++){aA=ax[aw];if(av.maq_opted_in){aA.rememberConsentGiven()}else{aA.forgetConsentGiven()}}at({maq_confirm_opted_in:aA.hasConsent(),maq_url:aA.getMatomoUrl(),maq_optout_by_default:aA.isConsentRequired()})}}},false);Date.prototype.getTimeAlias=Date.prototype.getTime;u={initialized:false,JSON:W.JSON,DOM:{addEventListener:function(aw,av,au,at){var ax=typeof at;if(ax==="undefined"){at=false}ar(aw,av,au,at)},onLoad:n,onReady:q,isNodeVisible:i,isOrWasNodeVisible:w.isNodeVisible},on:function(au,at){if(!z[au]){z[au]=[]}z[au].push(at)},off:function(av,au){if(!z[av]){return}var at=0;for(at;at<z[av].length;at++){if(z[av][at]===au){z[av].splice(at,1)}}},trigger:function(av,aw,au){if(!z[av]){return}var at=0;for(at;at<z[av].length;at++){z[av][at].apply(au||W,aw)}},addPlugin:function(at,au){b[at]=au},getTracker:function(au,at){if(!M(at)){at=this.getAsyncTracker().getSiteId()}if(!M(au)){au=this.getAsyncTracker().getTrackerUrl()
}return new T(au,at)},getAsyncTrackers:function(){return L},addTracker:function(av,au){var at;if(!L.length){at=ah(av,au)}else{at=L[0].addTracker(av,au)}return at},getAsyncTracker:function(ax,aw){var av;if(L&&L.length&&L[0]){av=L[0]}else{return ah(ax,aw)}if(!aw&&!ax){return av}if((!M(aw)||null===aw)&&av){aw=av.getSiteId()}if((!M(ax)||null===ax)&&av){ax=av.getTrackerUrl()}var au,at=0;for(at;at<L.length;at++){au=L[at];if(au&&String(au.getSiteId())===String(aw)&&au.getTrackerUrl()===ax){return au}}},retryMissedPluginCalls:function(){var au=al;al=[];var at=0;for(at;at<au.length;at++){aj(au[at])}}};if(typeof define==="function"&&define.amd){define("piwik",[],function(){return u});define("matomo",[],function(){return u})}return u}())}
diff --git a/plugins/API/tests/System/expected/test_AutoSuggestAPITest_browserName__API.getSuggestedValuesForSegment.xml b/plugins/API/tests/System/expected/test_AutoSuggestAPITest_browserName__API.getSuggestedValuesForSegment.xml
index 0a45edcc89..aea9f9226b 100644
--- a/plugins/API/tests/System/expected/test_AutoSuggestAPITest_browserName__API.getSuggestedValuesForSegment.xml
+++ b/plugins/API/tests/System/expected/test_AutoSuggestAPITest_browserName__API.getSuggestedValuesForSegment.xml
@@ -10,9 +10,11 @@
<row>xStand</row>
<row>wOSBrowser</row>
<row>vivo Browser</row>
+ <row>vBrowser</row>
<row>t-online.de Browser</row>
<row>surf</row>
<row>mCent</row>
+ <row>iDesktop PC Browser</row>
<row>iCab Mobile</row>
<row>iCab</row>
<row>iBrowser Mini</row>
@@ -28,6 +30,4 @@
<row>Yandex Browser Lite</row>
<row>Yandex Browser</row>
<row>Yahoo! Japan Browser</row>
- <row>Yaani Browser</row>
- <row>Xvast</row>
</result> \ No newline at end of file
diff --git a/plugins/API/tests/System/expected/test_AutoSuggestAPITest_operatingSystemName__API.getSuggestedValuesForSegment.xml b/plugins/API/tests/System/expected/test_AutoSuggestAPITest_operatingSystemName__API.getSuggestedValuesForSegment.xml
index 920b6c6374..d322d5adca 100644
--- a/plugins/API/tests/System/expected/test_AutoSuggestAPITest_operatingSystemName__API.getSuggestedValuesForSegment.xml
+++ b/plugins/API/tests/System/expected/test_AutoSuggestAPITest_operatingSystemName__API.getSuggestedValuesForSegment.xml
@@ -27,7 +27,7 @@
<row>TmaxOS</row>
<row>Tizen</row>
<row>ThreadX</row>
+ <row>TencentOS</row>
<row>Symbian^3</row>
<row>Symbian OS Series 60</row>
- <row>Symbian OS Series 40</row>
</result> \ No newline at end of file
diff --git a/plugins/DeviceDetectorCache b/plugins/DeviceDetectorCache
-Subproject 86a895429c30310ec507cc1012610ce39f62b0d
+Subproject e7ddda820a6b45552b0f963f318338bf2ef8754
diff --git a/plugins/DevicesDetection/Columns/Base.php b/plugins/DevicesDetection/Columns/Base.php
index 5c3a073c91..a28b7de08a 100644
--- a/plugins/DevicesDetection/Columns/Base.php
+++ b/plugins/DevicesDetection/Columns/Base.php
@@ -14,8 +14,8 @@ use Piwik\Plugin\Dimension\VisitDimension;
abstract class Base extends VisitDimension
{
- protected function getUAParser($userAgent)
+ protected function getUAParser($userAgent, $clientHints)
{
- return StaticContainer::get(DeviceDetectorFactory::class)->makeInstance($userAgent);
+ return StaticContainer::get(DeviceDetectorFactory::class)->makeInstance($userAgent, $clientHints);
}
}
diff --git a/plugins/DevicesDetection/Columns/BrowserEngine.php b/plugins/DevicesDetection/Columns/BrowserEngine.php
index d69d70c976..0e5cfd453c 100644
--- a/plugins/DevicesDetection/Columns/BrowserEngine.php
+++ b/plugins/DevicesDetection/Columns/BrowserEngine.php
@@ -37,8 +37,7 @@ class BrowserEngine extends Base
*/
public function onNewVisit(Request $request, Visitor $visitor, $action)
{
- $userAgent = $request->getUserAgent();
- $parser = $this->getUAParser($userAgent);
+ $parser = $this->getUAParser($request->getUserAgent(), $request->getClientHints());
$aBrowserInfo = $parser->getClient();
diff --git a/plugins/DevicesDetection/Columns/BrowserName.php b/plugins/DevicesDetection/Columns/BrowserName.php
index 69ff56a235..8acaaed039 100644
--- a/plugins/DevicesDetection/Columns/BrowserName.php
+++ b/plugins/DevicesDetection/Columns/BrowserName.php
@@ -76,8 +76,7 @@ class BrowserName extends Base
*/
public function onNewVisit(Request $request, Visitor $visitor, $action)
{
- $userAgent = $request->getUserAgent();
- $parser = $this->getUAParser($userAgent);
+ $parser = $this->getUAParser($request->getUserAgent(), $request->getClientHints());
$aBrowserInfo = $parser->getClient();
diff --git a/plugins/DevicesDetection/Columns/BrowserVersion.php b/plugins/DevicesDetection/Columns/BrowserVersion.php
index 9b2de1de0b..a57bf30593 100644
--- a/plugins/DevicesDetection/Columns/BrowserVersion.php
+++ b/plugins/DevicesDetection/Columns/BrowserVersion.php
@@ -32,8 +32,7 @@ class BrowserVersion extends Base
*/
public function onNewVisit(Request $request, Visitor $visitor, $action)
{
- $userAgent = $request->getUserAgent();
- $parser = $this->getUAParser($userAgent);
+ $parser = $this->getUAParser($request->getUserAgent(), $request->getClientHints());
$aBrowserInfo = $parser->getClient();
diff --git a/plugins/DevicesDetection/Columns/ClientType.php b/plugins/DevicesDetection/Columns/ClientType.php
index 489221bb3e..da1066be71 100644
--- a/plugins/DevicesDetection/Columns/ClientType.php
+++ b/plugins/DevicesDetection/Columns/ClientType.php
@@ -48,8 +48,7 @@ class ClientType extends Base
*/
public function onNewVisit(Request $request, Visitor $visitor, $action)
{
- $userAgent = $request->getUserAgent();
- $parser = $this->getUAParser($userAgent);
+ $parser = $this->getUAParser($request->getUserAgent(), $request->getClientHints());
$clientTypes = \Piwik\Plugins\DevicesDetection\getClientTypeMapping();
diff --git a/plugins/DevicesDetection/Columns/DeviceBrand.php b/plugins/DevicesDetection/Columns/DeviceBrand.php
index befb4dc75b..683508e431 100644
--- a/plugins/DevicesDetection/Columns/DeviceBrand.php
+++ b/plugins/DevicesDetection/Columns/DeviceBrand.php
@@ -57,8 +57,7 @@ class DeviceBrand extends Base
*/
public function onNewVisit(Request $request, Visitor $visitor, $action)
{
- $userAgent = $request->getUserAgent();
- $parser = $this->getUAParser($userAgent);
+ $parser = $this->getUAParser($request->getUserAgent(), $request->getClientHints());
return $parser->getBrand();
}
diff --git a/plugins/DevicesDetection/Columns/DeviceModel.php b/plugins/DevicesDetection/Columns/DeviceModel.php
index 98f2c9fb18..6bb3626dca 100644
--- a/plugins/DevicesDetection/Columns/DeviceModel.php
+++ b/plugins/DevicesDetection/Columns/DeviceModel.php
@@ -30,8 +30,7 @@ class DeviceModel extends Base
*/
public function onNewVisit(Request $request, Visitor $visitor, $action)
{
- $userAgent = $request->getUserAgent();
- $parser = $this->getUAParser($userAgent);
+ $parser = $this->getUAParser($request->getUserAgent(), $request->getClientHints());
$model = $parser->getModel();
diff --git a/plugins/DevicesDetection/Columns/DeviceType.php b/plugins/DevicesDetection/Columns/DeviceType.php
index a59974368d..a069b485cd 100644
--- a/plugins/DevicesDetection/Columns/DeviceType.php
+++ b/plugins/DevicesDetection/Columns/DeviceType.php
@@ -50,8 +50,7 @@ class DeviceType extends Base
*/
public function onNewVisit(Request $request, Visitor $visitor, $action)
{
- $userAgent = $request->getUserAgent();
- $parser = $this->getUAParser($userAgent);
+ $parser = $this->getUAParser($request->getUserAgent(), $request->getClientHints());
return $parser->getDevice();
}
diff --git a/plugins/DevicesDetection/Columns/Os.php b/plugins/DevicesDetection/Columns/Os.php
index 63ed9c342e..48c617de09 100644
--- a/plugins/DevicesDetection/Columns/Os.php
+++ b/plugins/DevicesDetection/Columns/Os.php
@@ -78,8 +78,7 @@ class Os extends Base
*/
public function onNewVisit(Request $request, Visitor $visitor, $action)
{
- $userAgent = $request->getUserAgent();
- $parser = $this->getUAParser($userAgent);
+ $parser = $this->getUAParser($request->getUserAgent(), $request->getClientHints());
if ($parser->isBot()) {
$os = Settings::OS_BOT;
diff --git a/plugins/DevicesDetection/Columns/OsVersion.php b/plugins/DevicesDetection/Columns/OsVersion.php
index 6df88cd832..e9d063cc8f 100644
--- a/plugins/DevicesDetection/Columns/OsVersion.php
+++ b/plugins/DevicesDetection/Columns/OsVersion.php
@@ -30,8 +30,7 @@ class OsVersion extends Base
*/
public function onNewVisit(Request $request, Visitor $visitor, $action)
{
- $userAgent = $request->getUserAgent();
- $parser = $this->getUAParser($userAgent);
+ $parser = $this->getUAParser($request->getUserAgent(), $request->getClientHints());
return $parser->getOs('version');
}
diff --git a/plugins/DevicesDetection/Controller.php b/plugins/DevicesDetection/Controller.php
index d74ba9d527..dff2b25d67 100644
--- a/plugins/DevicesDetection/Controller.php
+++ b/plugins/DevicesDetection/Controller.php
@@ -8,6 +8,7 @@
*/
namespace Piwik\Plugins\DevicesDetection;
+use DeviceDetector\ClientHints;
use DeviceDetector\DeviceDetector;
use Piwik\Common;
use Piwik\Piwik;
@@ -25,11 +26,13 @@ class Controller extends \Piwik\Plugin\Controller
ControllerAdmin::setBasicVariablesAdminView($view);
$userAgent = Common::getRequestVar('ua', $_SERVER['HTTP_USER_AGENT'], 'string');
+ $clientHints = Common::getRequestVar('clienthints', '', 'json');
- $uaParser = new DeviceDetector($userAgent);
+ $uaParser = new DeviceDetector($userAgent, is_array($clientHints) ? ClientHints::factory($clientHints) : null);
$uaParser->parse();
$view->userAgent = $userAgent;
+ $view->clientHints = $clientHints;
$view->bot_info = $uaParser->getBot();
$view->browser_name = $uaParser->getClient('name');
$view->browser_short_name = $uaParser->getClient('short_name');
diff --git a/plugins/DevicesDetection/lang/en.json b/plugins/DevicesDetection/lang/en.json
index acec477774..b1a18c7a83 100644
--- a/plugins/DevicesDetection/lang/en.json
+++ b/plugins/DevicesDetection/lang/en.json
@@ -22,6 +22,9 @@
"dataTableLabelTypes": "Type",
"ClientType": "Client type",
"ClientTypes": "Client types",
+ "ClientHints": "Client Hints",
+ "ClientHintsNotSupported": "Your Browser does not support client hints.",
+ "ConsiderClientHints": "Consider Client Hints",
"Device": "Device",
"DeviceBrand": "Device brand",
"DeviceBrands": "Device brands",
diff --git a/plugins/DevicesDetection/templates/detection.twig b/plugins/DevicesDetection/templates/detection.twig
index 399e6434c5..c78dcf1284 100644
--- a/plugins/DevicesDetection/templates/detection.twig
+++ b/plugins/DevicesDetection/templates/detection.twig
@@ -6,6 +6,34 @@
<script type="text/javascript">
+ $(document).ready(function() {
+ if (!navigator.userAgentData || typeof navigator.userAgentData.getHighEntropyValues !== 'function') {
+ $('#noclienthints').css({display: 'inline-block'});
+ $('[name=clienthints],.usech').hide();
+ } else {
+ // Initialize with low entropy values that are always available
+ var clientHints = {
+ brands: navigator.userAgentData.brands,
+ platform: navigator.userAgentData.platform
+ };
+
+ // try to gather high entropy values
+ // currently this methods simply returns the requested values through a Promise
+ // In later versions it might require a user permission
+ navigator.userAgentData.getHighEntropyValues(
+ ['brands', 'model', 'platform', 'platformVersion', 'uaFullVersion', 'fullVersionList']
+ ).then(function (ua) {
+ if (ua.fullVersionList) {
+ // if fullVersionList is available, brands and uaFullVersion isn't needed
+ delete ua.brands;
+ delete ua.uaFullVersion;
+ }
+
+ clientHints = ua;
+ });
+ }
+ });
+
function showList(type) {
var ajaxHandler = new ajaxHelper();
ajaxHandler.addParams({
@@ -22,6 +50,15 @@
ajaxHandler.send();
}
+ function toggleClientHints() {
+ $('[name=clienthints]').toggle();
+ if ($('[name=clienthints]:visible').length) {
+ $('[name=clienthints]').text().length || $('[name=clienthints]').text(JSON.stringify(clientHints));
+ } else {
+ $('[name=clienthints]').text('');
+ }
+ }
+
</script>
<style type="text/css">
@@ -42,11 +79,26 @@
</style>
<div piwik-content-block content-title="{{ title|e('html_attr') }}">
- <h3>{{ 'DevicesDetection_UserAgent'|translate|e('html_attr') }}</h3>
-
<form action="{{ linkTo({}) }}" method="POST">
+
+ <h3>{{ 'DevicesDetection_UserAgent'|translate }}</h3>
+
<textarea name="ua">{{ userAgent }}</textarea>
- <br />
+
+ <h3>{{ 'DevicesDetection_ClientHints'|translate }}</h3>
+
+ <span class="checkbox-container usech">
+ <label>
+ <input type="checkbox" id="usech" {% if clientHints %}checked{% endif %} onchange="toggleClientHints()"/>
+ <span>{{ 'DevicesDetection_ConsiderClientHints'|translate }}</span>
+ </label>
+ </span>
+
+ <textarea name="clienthints" style="margin-top: 2em; {% if not clientHints %}display: none{% endif %}">{% if clientHints %}{{ clientHints|json_encode }}{% endif %}</textarea>
+
+ <span id="noclienthints" class="alert alert-warning" style="display: none">{{ 'DevicesDetection_ClientHintsNotSupported'|translate }}</span>
+
+ <br /><br />
<input type="submit" value="{{ 'General_Refresh'|translate }}" class="btn" />
</form>
diff --git a/plugins/DevicesDetection/tests/Fixtures/MultiDeviceGoalConversions.php b/plugins/DevicesDetection/tests/Fixtures/MultiDeviceGoalConversions.php
index dca57f9897..b4d38249e2 100644
--- a/plugins/DevicesDetection/tests/Fixtures/MultiDeviceGoalConversions.php
+++ b/plugins/DevicesDetection/tests/Fixtures/MultiDeviceGoalConversions.php
@@ -159,6 +159,8 @@ class MultiDeviceGoalConversions extends Fixture
$t = self::getTracker($this->idSite, $this->getAdjustedDateTime(1.6), $defaultInit = true);
$t->setUserAgent('Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; Banca Caboto s.p.a.; rv:11.0) like Gecko');
+ // The client hints below should change the OS to Windows 11 and browser to Edge 95.5.2
+ $t->setClientHints('', 'Windows', '14.0.0', '" Not A;Brand";v="99", "Chromium";v="95", "Microsoft Edge";v="95"', '95.5.2');
$t->setUrl('http://example.org/index.htm');
self::checkResponse($t->doTrackPageView('0'));
diff --git a/plugins/DevicesDetection/tests/System/GoalReportForDevicesTest.php b/plugins/DevicesDetection/tests/System/GoalReportForDevicesTest.php
index 475158055c..8b9e862309 100644
--- a/plugins/DevicesDetection/tests/System/GoalReportForDevicesTest.php
+++ b/plugins/DevicesDetection/tests/System/GoalReportForDevicesTest.php
@@ -1,10 +1,12 @@
<?php
+
/**
* Matomo - free/libre analytics platform
*
* @link https://matomo.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
namespace Piwik\Plugins\DevicesDetection\tests\System;
use Piwik\Plugins\DevicesDetection\tests\Fixtures\MultiDeviceGoalConversions;
@@ -34,11 +36,12 @@ class GoalReportForDevicesTest extends SystemTestCase
$idSite = self::$fixture->idSite;
$dateTime = self::$fixture->dateTime;
- return array(
- array('DevicesDetection.getType', array('idSite' => $idSite, 'date' => $dateTime)),
- array('DevicesDetection.getBrand', array('idSite' => $idSite, 'date' => $dateTime)),
- array('DevicesDetection.getModel', array('idSite' => $idSite, 'date' => $dateTime)),
- );
+ return [
+ ['DevicesDetection.getType', ['idSite' => $idSite, 'date' => $dateTime]],
+ ['DevicesDetection.getOsVersions', ['idSite' => $idSite, 'date' => $dateTime]],
+ ['DevicesDetection.getBrand', ['idSite' => $idSite, 'date' => $dateTime]],
+ ['DevicesDetection.getModel', ['idSite' => $idSite, 'date' => $dateTime]],
+ ];
}
/**
@@ -50,4 +53,4 @@ class GoalReportForDevicesTest extends SystemTestCase
}
}
-GoalReportForDevicesTest::$fixture = new MultiDeviceGoalConversions(); \ No newline at end of file
+GoalReportForDevicesTest::$fixture = new MultiDeviceGoalConversions();
diff --git a/plugins/DevicesDetection/tests/System/expected/test___DevicesDetection.getOsVersions_day.xml b/plugins/DevicesDetection/tests/System/expected/test___DevicesDetection.getOsVersions_day.xml
new file mode 100644
index 0000000000..b64d346b97
--- /dev/null
+++ b/plugins/DevicesDetection/tests/System/expected/test___DevicesDetection.getOsVersions_day.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Unknown</label>
+ <nb_uniq_visitors>2</nb_uniq_visitors>
+ <nb_visits>3</nb_visits>
+ <nb_actions>2</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>1</max_actions>
+ <sum_visit_length>3</sum_visit_length>
+ <bounce_count>3</bounce_count>
+ <nb_visits_converted>1</nb_visits_converted>
+ <segment>operatingSystemCode==UNK;operatingSystemVersion==UNK</segment>
+ <logo>plugins/Morpheus/icons/dist/os/UNK.png</logo>
+ </row>
+ <row>
+ <label>Android 4.2</label>
+ <nb_uniq_visitors>2</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>3</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>2</max_actions>
+ <sum_visit_length>721</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>1</nb_visits_converted>
+ <segment>operatingSystemCode==AND;operatingSystemVersion==4.2</segment>
+ <logo>plugins/Morpheus/icons/dist/os/AND.png</logo>
+ </row>
+ <row>
+ <label>iOS 6.0</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>1</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>1</max_actions>
+ <sum_visit_length>3</sum_visit_length>
+ <bounce_count>2</bounce_count>
+ <nb_visits_converted>1</nb_visits_converted>
+ <segment>operatingSystemCode==IOS;operatingSystemVersion==6.0</segment>
+ <logo>plugins/Morpheus/icons/dist/os/IOS.png</logo>
+ </row>
+ <row>
+ <label>iOS 7.1</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>1</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>1</max_actions>
+ <sum_visit_length>3</sum_visit_length>
+ <bounce_count>2</bounce_count>
+ <nb_visits_converted>1</nb_visits_converted>
+ <segment>operatingSystemCode==IOS;operatingSystemVersion==7.1</segment>
+ <logo>plugins/Morpheus/icons/dist/os/IOS.png</logo>
+ </row>
+ <row>
+ <label>Android 2.3</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>1</nb_visits>
+ <nb_actions>1</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>1</max_actions>
+ <sum_visit_length>1084</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>1</nb_visits_converted>
+ <segment>operatingSystemCode==AND;operatingSystemVersion==2.3</segment>
+ <logo>plugins/Morpheus/icons/dist/os/AND.png</logo>
+ </row>
+ <row>
+ <label>Java ME</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>1</nb_visits>
+ <nb_actions>1</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>1</max_actions>
+ <sum_visit_length>724</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>1</nb_visits_converted>
+ <segment>operatingSystemCode==JME;operatingSystemVersion==</segment>
+ <logo>plugins/Morpheus/icons/dist/os/UNK.png</logo>
+ </row>
+ <row>
+ <label>Windows 11</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>1</nb_visits>
+ <nb_actions>1</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>1</max_actions>
+ <sum_visit_length>1084</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>1</nb_visits_converted>
+ <segment>operatingSystemCode==WIN;operatingSystemVersion==11</segment>
+ <logo>plugins/Morpheus/icons/dist/os/WIN.png</logo>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_apiGetReportMetadata__API.getSegmentsMetadata.xml b/tests/PHPUnit/System/expected/test_apiGetReportMetadata__API.getSegmentsMetadata.xml
index e579fe47e2..20f216c73c 100644
--- a/tests/PHPUnit/System/expected/test_apiGetReportMetadata__API.getSegmentsMetadata.xml
+++ b/tests/PHPUnit/System/expected/test_apiGetReportMetadata__API.getSegmentsMetadata.xml
@@ -124,7 +124,7 @@
<category>Visitors</category>
<name>Device brand</name>
<segment>deviceBrand</segment>
- <acceptedValues>2E, 3GNET, 3GO, 3Q, 4Good, 4ife, 7 Mobile, 360, 8848, A1, Accent, Ace, Acer, Acteck, Adronix, Advan, Advance, AfriOne, AGM, AG Mobile, AIDATA, Ainol, Airness, AIRON, Airties, AIS, Aiuto, Aiwa, Akai, AKIRA, Alba, Alcatel, Alcor, ALDI NORD, ALDI SÜD, Alfawise, Aligator, AllCall, AllDocube, Allview, Allwinner, Alps, Altech UEC, Altice, altron, Amazon, AMCV, AMGOO, Amigoo, Amino, Amoi, Andowl, Angelcare, Anker, Anry, ANS, AOC, Aocos, AOpen, Aoson, AOYODKG, Apple, Archos, Arian Space, Ark, ArmPhone, Arnova, ARRIS, Artel, Artizlee, ArtLine, Asano, Asanzo, Ask, Aspera, Assistant, Astro, Asus, AT&amp;T, Atmaca Elektronik, Atom, Atvio, Audiovox, AURIS, Autan, Avenzo, AVH, Avvio, Awow, Axioo, Axxion, Azumi Mobile, b2m, BangOlufsen, Barnes &amp; Noble, BBK, BB Mobile, BDF, BDQ, Becker, Beeline, Beelink, Beetel, Beista, Bellphone, Benco, BenQ, BenQ-Siemens, Benzo, Beyond, Bezkam, BGH, Bigben, BIHEE, BilimLand, Billion, BioRugged, Bird, Bitel, Bitmore, Bkav, Black Bear, Black Fox, Blackview, Blaupunkt, Bleck, Blloc, Blow, Blu, Bluboo, Bluebird, Bluedot, Bluegood, Bluewave, BMAX, Bmobile, Bobarry, bogo, Boway, bq, Brandt, Bravis, BrightSign, Brondi, BS Mobile, Bubblegum, Bundy, Bush, CAGI, Camfone, Canal Digital, Capitel, Captiva, Carrefour, Casio, Casper, Cat, Cavion, Celcus, Celkon, Cell-C, CellAllure, Cellution, Centric, CG Mobile, CGV, Changhong, Cherry Mobile, Chico Mobile, China Mobile, China Telecom, Chuwi, Claresta, Clarmin, ClearPHONE, Clementoni, Cloud, Cloudfone, Cloudpad, Clout, CnM, Cobalt, Coby Kyros, Colors, Comio, Compal, Compaq, ComTrade Tesla, Concord, ConCorde, Condor, Connectce, Connex, Conquest, Contixo, Coolpad, CORN, Cosmote, Covia, Cowon, CreNova, Crescent, Cricket, Crius Mea, Crony, Crosscall, Crown, Cube, CUBOT, CVTE, Cyrus, Daewoo, Danew, Datalogic, Datamini, Datang, Datawind, Datsun, Dazen, Dbtel, Dell, Denver, Desay, DeWalt, DEXP, DF, Dialog, Dicam, Digi, Digicel, DIGIFORS, Digihome, Digiland, Digma, DING DING, DISH, Ditecma, Diva, Divisat, DIXON, DMM, DNS, DoCoMo, Doffler, Dolamee, Doogee, Doopro, Doov, Dopod, Doppio, DORLAND, Doro, Dragon Touch, Dreamgate, Droxio, Dune HD, DUNNS Mobile, E-Boda, E-Ceros, E-tel, Eagle, Easypix, EBEST, Echo Mobiles, ecom, ECON, ECS, EE, Einstein, EKO, Eks Mobility, EKT, ELARI, Electroneum, ELECTRONIA, Elekta, Element, Elenberg, Elephone, Eltex, Ematic, Energizer, Energy Sistem, Engel, Enot, Epik One, Epson, Ergo, Ericsson, Ericy, Erisson, Essential, Essentielb, eSTAR, Eton, eTouch, Etuline, Eurocase, Eurostar, Evercoss, Evertek, Evolio, Evolveo, Evoo, EVPAD, EvroMedia, EWIS, EXCEED, Exmart, ExMobile, EXO, Explay, Extrem, Ezio, Ezze, F&amp;U, F2 Mobile, F150, Facebook, Fairphone, Famoco, Fantec, FaRao Pro, FarEasTone, Fengxiang, FEONAL, Fero, FiGi, FiGO, FiiO, FinePower, Finlux, FireFly Mobile, FISE, Fly, FLYCAT, FMT, FNB, FNF, Fondi, Fonos, FORME, Formuler, Forstar, Fortis, Fourel, Four Mobile, Foxconn, Freetel, Fuego, Fujitsu, Funai, Fusion5, G-TiDE, G-Touch, Galaxy Innovations, Garmin-Asus, Gateway, Gemini, General Mobile, Genesis, GEOFOX, Geotel, Geotex, GFive, Ghia, Ghong, Ghost, Gigabyte, Gigaset, Gini, Ginzzu, Gionee, Globex, Glofiish, GLONYX, GLX, GOCLEVER, Gocomma, GoGEN, Gol Mobile, Goly, Gome, GoMobile, Google, Goophone, Gooweel, Gplus, Gradiente, Grape, Gree, Greentel, Gresso, Gretel, Grundig, Gtel, H96, Hafury, Haier, Hamlet, HannSpree, Hardkernel, Hasee, Helio, HERO, Hezire, Hi, Hi-Level, High Q, Highscreen, HiMax, Hi Nova, Hipstreet, Hisense, Hitachi, Hitech, HKPro, Hoffmann, Hometech, Homtom, Honeywell, Hoozo, Horizon, Horizont, Hosin, Hotel, Hot Pepper, Hotwav, How, HP, HTC, Huadoo, Huavi, Huawei, Humax, Hurricane, Huskee, Hyrican, Hyundai, Hyve, i-Cherry, i-Joy, i-mate, i-mobile, iBall, iBerry, iBrit, IconBIT, iData, iDroid, iGet, iHunt, Ikea, IKI Mobile, iKoMo, iKon, IKU Mobile, iLA, iLife, iMan, iMars, IMO Mobile, Impression, INCAR, Inch, Inco, iNew, Infinix, InFocus, InfoKit, Inkti, InnJoo, Innos, Innostream, Inoi, INQ, Insignia, INSYS, Intek, Intex, Invens, Inverto, Invin, iOcean, iOutdoor, iPEGTOP, iPro, iQ&amp;T, IQM, IRA, Irbis, Iris, iRola, iRulu, iSafe Mobile, iSWAG, IT, iTel, iTruck, IUNI, iVA, iView, iVooMi, ivvi, iZotron, JAY-Tech, Jedi, Jeka, Jesy, JFone, Jiake, Jiayu, Jinga, Jio, Jivi, JKL, Jolla, Jumper, Juniper Systems, Just5, JVC, K-Touch, Kaan, Kaiomy, Kalley, Kanji, Karbonn, Kata, KATV1, Kazam, Kazuna, KDDI, Kempler &amp; Strauss, Keneksi, Kenxinda, Kiano, Kingbox, Kingsun, KINGZONE, Kiowa, Kivi, Klipad, Kocaso, Kodak, Kogan, Komu, Konka, Konrow, Koobee, Koolnee, Kooper, KOPO, Koridy, Koslam, KREZ, KRIP, KRONO, Krüger&amp;Matz, KT-Tech, KUBO, Kuliao, Kult, Kumai, Kurio, Kvant, Kyocera, Kyowon, Kzen, L-Max, LAIQ, Land Rover, Landvo, Lanix, Lark, Laurus, Lava, LCT, Leader Phone, Leagoo, Leben, Ledstar, LeEco, Leff, LEMFO, Lemhoov, Lenco, Lenovo, Leotec, Le Pan, Lephone, Lesia, Lexand, Lexibook, LG, Liberton, Lifemaxx, Lingwin, Linnex, Linsar, Loewe, Logic, Logicom, Loview, LT Mobile, Lumigon, Lumus, Luna, Luxor, LYF, M-Horse, M-Tech, M.T.T., M4tel, MAC AUDIO, Macoox, Mafe, Magicsee, Magnus, Majestic, Malata, Manhattan, Mann, Manta Multimedia, Mantra, Mara, Massgo, Masstel, Mastertech, Matrix, Maxcom, Maximus, Maxtron, MAXVI, Maxwest, Maze, Maze Speed, MBOX, MDC Store, MDTV, meanIT, Mecer, Mecool, Mediacom, MediaTek, Medion, MEEG, MegaFon, Meitu, Meizu, Melrose, Memup, Metz, MEU, MicroMax, Microsoft, Microtech, Minix, Mintt, Mio, Mione, Miray, Mito, Mitsubishi, Mitsui, MIVO, MIXC, MiXzo, MLLED, MLS, MMI, Mobicel, MobiIoT, Mobiistar, Mobiola, Mobistel, MobiWire, Mobo, Modecom, Mofut, Motorola, Movic, mPhone, Mpman, MSI, MStar, MTC, MTN, Multilaser, MYFON, MyGica, Mymaga, MyPhone, Myria, Myros, Mystery, MyTab, MyWigo, Nabi, Naomi Phone, National, Navcity, Navitech, Navitel, Navon, NavRoad, NEC, Necnot, Neffos, Neo, Neomi, Neon IQ, Netgear, NeuImage, New Balance, Newgen, Newland, Newman, Newsday, NewsMy, Nexa, NEXBOX, Nexian, NEXON, Nextbit, NextBook, NextTab, NGM, NG Optics, Nikon, Nintendo, NOA, Noain, Nobby, Noblex, NOBUX, NOGA, Nokia, Nomi, Nomu, Noontec, Nordmende, NorthTech, Nos, Nous, Novex, NuAns, Nubia, NUU Mobile, Nuvo, Nvidia, NYX Mobile, O+, O2, Oale, OASYS, Obabox, Obi, Oculus, Odys, OINOM, Ok, Okapia, OKSI, OKWU, OMIX, Onda, OnePlus, Onix, Onkyo, ONN, ONYX BOOX, Ookee, OpelMobile, Openbox, OPPO, Opsson, Orange, Orbic, Orbita, Ordissimo, Orion, Ouki, Oukitel, OUYA, Overmax, Ovvi, Owwo, Oysters, Oyyu, OzoneHD, P-UP, Packard Bell, Paladin, Palm, Panacom, Panasonic, Pantech, Parrot Mobile, PCBOX, PCD, PCD Argentina, PEAQ, Pendoo, Pentagram, Perfeo, Phicomm, Philco, Philips, Phonemax, phoneOne, Pico, Pioneer, PiPO, Pixela, Pixelphone, Pixus, Planet Computers, Ployer, Plum, Pluzz, PocketBook, POCO, Point Mobile, Point of View, Polar, PolarLine, Polaroid, Polestar, PolyPad, Polytron, Pomp, Poppox, POPTEL, Porsche, Positivo, Positivo BGH, PPTV, Premio, Prestigio, Primepad, Primux, Prixton, PROFiLO, Proline, Prology, ProScan, Protruly, ProVision, PULID, Purism, Q-Box, Q-Touch, Q.Bell, Qilive, QMobile, Qnet Mobile, QTECH, Qtek, Quantum, Qubo, Quechua, Qumo, R-TV, Rakuten, Ramos, Raspberry, Ravoz, Razer, RCA Tablets, Reach, Readboy, Realme, RED, Redfox, Reeder, REGAL, Remdun, Retroid Pocket, Revo, Rikomagic, RIM, Rinno, Ritmix, Ritzviva, Riviera, Rivo, Roadrover, Rokit, Roku, Rombica, Ross&amp;Moor, Rover, RoverPad, Royole, RoyQueen, RT Project, RugGear, Ruio, Runbo, Ryte, S-TELL, S2Tel, Saba, Safaricom, Sagem, Saiet, Salora, Samsung, Sanei, Sansui, Santin, Sanyo, Savio, SCBC, Schneider, Schok, Seatel, Seeken, SEG, Sega, Selecline, Selenga, Selevision, Selfix, SEMP TCL, Sencor, Sendo, Senkatel, Senseit, Senwa, Seuic, SFR, Shanling, Sharp, Shift Phones, Shivaki, Shtrikh-M, Shuttle, Sico, Siemens, Sigma, Silelis, Silent Circle, Simbans, Simply, Singtech, Siragon, Sirin labs, SK Broadband, SKG, Sky, Skyworth, Smadl, Smailo, Smart, Smartab, SmartBook, SMARTEC, Smart Electronic, Smartfren, Smartisan, Smarty, Smooth Mobile, Smotreshka, Softbank, Soho Style, SOLE, SOLO, Solone, Sonim, SONOS, Sony, Sony Ericsson, Soundmax, Soyes, Spark, SPC, Spectralink, Spectrum, Spice, Sprint, SQOOL, Star, Starlight, Starmobile, Starway, Starwind, STF Mobile, STG Telecom, STK, Stonex, Storex, StrawBerry, STRONG, Stylo, Subor, Sugar, Sumvision, Sunmi, Sunny, Sunstech, SunVan, Sunvell, SUNWIND, SuperSonic, SuperTab, Supra, Suzuki, Swipe, SWISSMOBILITY, Swisstone, SWTV, Symphony, Syrox, T-Mobile, TAG Tech, Taiga System, Takara, Tambo, Tanix, TB Touch, TCL, TD Systems, Technicolor, Technika, TechniSat, Technopc, TechnoTrend, TechPad, Techwood, Teclast, Tecno Mobile, TEENO, Teknosa, Tele2, Telefunken, Telego, Telenor, Telia, Telit, Telpo, Tesco, Tesla, Tetratab, teXet, ThL, Thomson, Thuraya, TIANYU, Tigers, Time2, Timovi, Tinai, Tinmo, TiPhone, TiVo, TOKYO, Tolino, Tone, Tooky, Topelotek, Top House, Toplux, Topway, Torex, TOSCIDO, Toshiba, Touchmate, Transpeed, TrekStor, Trevi, Trident, Trifone, Trio, Tronsmart, True, True Slim, TTEC, TuCEL, Tunisie Telecom, Turbo, Turbo-X, TurboKids, TurboPad, Turkcell, TVC, TWM, Twoe, TWZ, Tymes, Türk Telekom, U-Magic, U.S. Cellular, Ugoos, Uhans, Uhappy, Ulefone, Umax, UMIDIGI, Unihertz, Unimax, Uniscope, UNIWA, Unknown, Unnecto, UNNO, Unonu, Unowhy, Urovo, UTime, UTOK, UTStarcom, UZ Mobile, v-mobile, VAIO, Vankyo, Vargo, Vastking, VAVA, VC, VDVD, Vega, Venso, Venturer, VEON, Verico, Verizon, Vernee, Verssed, Vertex, Vertu, Verykool, Vesta, Vestel, Vexia, VGO TEL, Videocon, Videoweb, ViewSonic, Vinabox, Vinga, Vinsoc, Vios, Vipro, Virzo, Vision Touch, Vitelcom, Viumee, Vivax, Vivo, VIWA, Vizio, VK Mobile, VKworld, Vodacom, Vodafone, Vonino, Vontar, Vorago, Vorcom, Vorke, Voto, VOX, Voxtel, Voyo, Vsmart, Vsun, Vulcan, VVETIME, Walton, WE, Web TV, Weimei, WellcoM, WELLINGTON, Western Digital, Westpoint, Wexler, Wieppo, Wigor, Wiko, Wileyfox, Winds, Wink, Winmax, Winnovo, Wintouch, Wiseasy, WIWA, Wizz, Wolder, Wolfgang, Wolki, Wonu, Woo, Wortmann, Woxter, X-BO, X-TIGI, X-View, X.Vision, XGIMI, Xgody, Xiaolajiao, Xiaomi, Xion, Xolo, Xoro, Xshitou, Xtouch, Xtratech, Yandex, Yarvik, YASIN, Yes, Yezz, Yoka TV, Yota, YOTOPT, Ytone, Yu, Yuandao, YUHO, Yuno, Yusun, Yxtel, Zaith, Zatec, Zebra, Zeemi, Zen, Zenek, Zentality, Zfiner, ZH&amp;K, Zidoo, ZIFRO, Ziox, Zonda, Zopo, ZTE, Zuum, Zync, ZYQ, Zyrex, öwn</acceptedValues>
+ <acceptedValues>2E, 3GNET, 3GO, 3Q, 4Good, 4ife, 7 Mobile, 360, 8848, A1, Accent, Ace, Acer, Acteck, Adronix, Advan, Advance, AFFIX, AfriOne, AGM, AG Mobile, AIDATA, Ainol, Airness, AIRON, Airtel, Airties, AIS, Aiuto, Aiwa, Akai, AKIRA, Alba, Alcatel, Alcor, ALDI NORD, ALDI SÜD, Alfawise, Aligator, AllCall, AllDocube, Allview, Allwinner, Alps, Altech UEC, Altice, altron, Amazon, AMCV, AMGOO, Amigoo, Amino, Amoi, Andowl, Angelcare, Anker, Anry, ANS, AOC, Aocos, AOpen, Aoro, Aoson, AOYODKG, Apple, Aquarius, Archos, Arian Space, Ark, ArmPhone, Arnova, ARRIS, Artel, Artizlee, ArtLine, Asano, Asanzo, Ask, Aspera, Assistant, Astro, Asus, AT&amp;T, Atmaca Elektronik, ATMAN, Atom, Atvio, Audiovox, AURIS, Autan, AUX, Avenzo, AVH, Avvio, Awow, Axioo, Axxion, AYYA, Azumi Mobile, b2m, BangOlufsen, Barnes &amp; Noble, BBK, BB Mobile, BDF, BDQ, BDsharing, Becker, Beeline, Beelink, Beetel, Beista, Bellphone, Benco, Benesse, BenQ, BenQ-Siemens, Benzo, Beyond, Bezkam, BGH, Bigben, BIHEE, BilimLand, Billion, BioRugged, Bird, Bitel, Bitmore, Bittium, Bkav, Black Bear, Black Fox, Blackview, Blaupunkt, Bleck, Blloc, Blow, Blu, Bluboo, Bluebird, Bluedot, Bluegood, Bluewave, BMAX, Bmobile, Bobarry, bogo, Boway, bq, Brandt, Bravis, BrightSign, Brondi, BROR, BS Mobile, Bubblegum, Bundy, Bush, CAGI, Camfone, Canal Digital, Capitel, Captiva, Carrefour, Casio, Casper, Cat, Cavion, Celcus, Celkon, Cell-C, CellAllure, Cellution, Centric, CG Mobile, CGV, Changhong, Cherry Mobile, Chico Mobile, China Mobile, China Telecom, Chuwi, Claresta, Clarmin, ClearPHONE, Clementoni, Cloud, Cloudfone, Cloudpad, Clout, CnM, Cobalt, Coby Kyros, Colors, Comio, Compal, Compaq, COMPUMAX, ComTrade Tesla, Concord, ConCorde, Condor, Connectce, Connex, Conquest, Contixo, Coolpad, CORN, Cosmote, Covia, Cowon, COYOTE, CreNova, Crescent, Cricket, Crius Mea, Crony, Crosscall, Crown, Cube, CUBOT, CVTE, Cyrus, Daewoo, Danew, Datalogic, Datamini, Datang, Datawind, Datsun, Dazen, Dbtel, Dell, Denver, Desay, DeWalt, DEXP, DF, Dialog, Dicam, Digi, Digicel, DIGIFORS, Digihome, Digiland, Digma, DING DING, DISH, Ditecma, Diva, Divisat, DIXON, DMM, DNS, DoCoMo, Doffler, Dolamee, Doogee, Doopro, Doov, Dopod, Doppio, DORLAND, Doro, Dragon Touch, Dreamgate, Droxio, Dune HD, DUNNS Mobile, E-Boda, E-Ceros, E-tel, Eagle, Easypix, EBEN, EBEST, Echo Mobiles, ecom, ECON, ECS, EE, EGL, Einstein, EKO, Eks Mobility, EKT, ELARI, Electroneum, ELECTRONIA, Elekta, Element, Elenberg, Elephone, Eltex, Ematic, Energizer, Energy Sistem, Engel, Enot, Epik One, Epson, Ergo, Ericsson, Ericy, Erisson, Essential, Essentielb, eSTAR, Eton, eTouch, Etuline, Eurocase, Eurostar, Evercoss, Evertek, Evolio, Evolveo, Evoo, EVPAD, EvroMedia, EWIS, EXCEED, Exmart, ExMobile, EXO, Explay, Extrem, EYU, Ezio, Ezze, F&amp;U, F2 Mobile, F150, Facebook, Fairphone, Famoco, Fantec, FaRao Pro, FarEasTone, Fengxiang, FEONAL, Fero, FiGi, FiGO, FiiO, FinePower, Finlux, FireFly Mobile, FISE, Fly, FLYCAT, FMT, FNB, FNF, Fondi, Fonos, FOODO, FORME, Formuler, Forstar, Fortis, Fourel, Four Mobile, Foxconn, Freetel, Fuego, Fujitsu, Funai, Fusion5, Future Mobile Technology, G-TiDE, G-Touch, Galaxy Innovations, Garmin-Asus, Gateway, Gemini, General Mobile, Genesis, GEOFOX, Geotel, Geotex, GFive, Ghia, Ghong, Ghost, Gigabyte, Gigaset, Gini, Ginzzu, Gionee, Globex, Glofiish, GLONYX, GLX, GOCLEVER, Gocomma, GoGEN, Gol Mobile, Goly, Gome, GoMobile, Google, Goophone, Gooweel, Gplus, Gradiente, Grape, Gree, Greentel, Gresso, Gretel, Grundig, Gtel, H96, Hafury, Haier, Haipai, Hamlet, HannSpree, HAOVM, Hardkernel, Hasee, Helio, HERO, Hezire, Hi, Hi-Level, High Q, Highscreen, HiMax, Hi Nova, Hipstreet, Hisense, Hitachi, Hitech, HKPro, Hoffmann, Hometech, Homtom, Honeywell, Hoozo, Horizon, Horizont, Hosin, Hotel, Hot Pepper, HOTREALS, Hotwav, How, HP, HTC, Huadoo, Huagan, Huavi, Huawei, Humax, Hurricane, Huskee, Hyrican, Hyundai, Hyve, i-Cherry, i-Joy, i-mate, i-mobile, iBall, iBerry, iBrit, IconBIT, iData, iDroid, iGet, iHunt, Ikea, IKI Mobile, iKoMo, iKon, IKU Mobile, iLA, iLife, iMan, iMars, IMO Mobile, Impression, INCAR, Inch, Inco, iNew, Infinix, InFocus, InfoKit, Inkti, InnJoo, Innos, Innostream, Inoi, INQ, Insignia, INSYS, Intek, Intex, Invens, Inverto, Invin, iOcean, iOutdoor, iPEGTOP, iPro, iQ&amp;T, IQM, IRA, Irbis, Iris, iRola, iRulu, iSafe Mobile, iSWAG, IT, iTel, iTruck, IUNI, iVA, iView, iVooMi, ivvi, iWaylink, iZotron, JAY-Tech, Jedi, Jeka, Jesy, JFone, Jiake, Jiayu, Jinga, Jio, Jivi, JKL, Jolla, Joy, Jumper, Juniper Systems, Just5, JVC, K-Touch, Kaan, Kaiomy, Kalley, Kanji, Karbonn, Kata, KATV1, Kazam, Kazuna, KDDI, Kempler &amp; Strauss, Keneksi, Kenxinda, Kiano, Kingbox, Kingsun, KINGZONE, Kiowa, Kivi, Klipad, Kocaso, Kodak, Kogan, Komu, Konka, Konrow, Koobee, Koolnee, Kooper, KOPO, Koridy, Koslam, KREZ, KRIP, KRONO, Krüger&amp;Matz, KT-Tech, KUBO, Kuliao, Kult, Kumai, Kurio, Kvant, Kyocera, Kyowon, Kzen, L-Max, LAIQ, Land Rover, Landvo, Lanix, Lark, Laurus, Lava, LCT, Leader Phone, Leagoo, Leben, Ledstar, LeEco, Leff, Leke, LEMFO, Lemhoov, Lenco, Lenovo, Leotec, Le Pan, Lephone, Lesia, Lexand, Lexibook, LG, Liberton, Lifemaxx, Lingwin, Linnex, Linsar, Listo, Loewe, Logic, Logic Instrument, Logicom, LOKMAT, Loview, LT Mobile, Lumigon, Lumus, Luna, Luxor, LYF, M-Horse, M-Tech, M.T.T., M4tel, MAC AUDIO, Macoox, Mafe, Magicsee, Magnus, Majestic, Malata, Manhattan, Mann, Manta Multimedia, Mantra, Mara, Massgo, Masstel, Mastertech, Matrix, Maxcom, Maximus, Maxtron, MAXVI, Maxwest, MAXX, Maze, Maze Speed, MBI, MBOX, MDC Store, MDTV, meanIT, Mecer, Mecool, Mediacom, MediaTek, Medion, MEEG, MegaFon, Meitu, Meizu, Melrose, Memup, Metz, MEU, MicroMax, Microsoft, Microtech, Minix, Mintt, Mio, Mione, Miray, Mito, Mitsubishi, Mitsui, MIVO, MIXC, MiXzo, MLLED, MLS, MMI, Mobicel, MobiIoT, Mobiistar, Mobiola, Mobistel, MobiWire, Mobo, Modecom, Mofut, Motorola, Movic, mPhone, Mpman, MSI, MStar, MTC, MTN, Multilaser, MYFON, MyGica, Mymaga, MyPhone, Myria, Myros, Mystery, MyTab, MyWigo, Nabi, Naomi Phone, National, Navcity, Navitech, Navitel, Navon, NavRoad, NEC, Necnot, Neffos, Neo, Neolix, Neomi, Neon IQ, Netgear, NeuImage, New Balance, Newgen, Newland, Newman, Newsday, NewsMy, Nexa, NEXBOX, Nexian, NEXON, Nextbit, NextBook, NextTab, NGM, NG Optics, Nikon, Nintendo, NOA, Noain, Nobby, Noblex, NOBUX, NOGA, Nokia, Nomi, Nomu, Noontec, Nordmende, NorthTech, Nos, Nous, Novex, NuAns, Nubia, NUU Mobile, Nuvo, Nvidia, NYX Mobile, O+, O2, Oale, OASYS, Obabox, Obi, Oculus, Odys, OINOM, Ok, Okapia, OKSI, OKWU, OMIX, Onda, OnePlus, Onix, Onkyo, ONN, ONYX BOOX, Ookee, OpelMobile, Openbox, OPPO, Opsson, Orange, Orbic, Orbita, Ordissimo, Orion, OUJIA, Ouki, Oukitel, OUYA, Overmax, Ovvi, Owwo, OYSIN, Oysters, Oyyu, OzoneHD, P-UP, Packard Bell, Paladin, Palm, Panacom, Panasonic, Pantech, Parrot Mobile, PCBOX, PCD, PCD Argentina, PEAQ, Pelitt, Pendoo, Pentagram, Perfeo, Phicomm, Philco, Philips, Phonemax, phoneOne, Pico, Pioneer, PiPO, Pixela, Pixelphone, Pixus, Planet Computers, Ployer, Plum, Pluzz, PocketBook, POCO, Point Mobile, Point of View, Polar, PolarLine, Polaroid, Polestar, PolyPad, Polytron, Pomp, Poppox, POPTEL, Porsche, Positivo, Positivo BGH, PPTV, Premio, Prestigio, Primepad, Primux, Prixton, PROFiLO, Proline, Prology, ProScan, Protruly, ProVision, PULID, Purism, Q-Box, Q-Touch, Q.Bell, Qilive, QLink, QMobile, Qnet Mobile, QTECH, Qtek, Quantum, Qubo, Quechua, Qumo, Qware, R-TV, Rakuten, Ramos, Raspberry, Ravoz, Razer, RCA Tablets, Reach, Readboy, Realme, RED, Redfox, Reeder, REGAL, Remdun, Retroid Pocket, Revo, Rikomagic, RIM, Rinno, Ritmix, Ritzviva, Riviera, Rivo, ROADMAX, Roadrover, Rokit, Roku, Rombica, Ross&amp;Moor, Rover, RoverPad, Royole, RoyQueen, RT Project, RugGear, Ruio, Runbo, Ryte, S-TELL, S2Tel, Saba, Safaricom, Sagem, Saiet, Salora, Samsung, Sanei, Sansui, Santin, Sanyo, Savio, SCBC, Schneider, Schok, Seatel, Seeken, SEG, Sega, Selecline, Selenga, Selevision, Selfix, SEMP TCL, Sencor, Sendo, Senkatel, Senseit, Senwa, Seuic, SFR, Shanling, Sharp, Shift Phones, Shivaki, Shtrikh-M, Shuttle, Sico, Siemens, Sigma, Silelis, Silent Circle, Simbans, Simply, Singtech, Siragon, Sirin labs, SK Broadband, SKG, Sky, Skyworth, Smadl, Smailo, Smart, Smartab, SmartBook, SMARTEC, Smart Electronic, Smartfren, Smartisan, Smarty, Smooth Mobile, Smotreshka, Softbank, Soho Style, SOLE, SOLO, Solone, Sonim, SONOS, Sony, Sony Ericsson, Soundmax, Soyes, Spark, SPC, Spectralink, Spectrum, Spice, Sprint, SQOOL, Star, Starlight, Starmobile, Starway, Starwind, STF Mobile, STG Telecom, STK, Stonex, Storex, StrawBerry, STRONG, Stylo, Subor, Sugar, Sumvision, Sunmi, Sunny, Sunstech, SunVan, Sunvell, SUNWIND, SuperSonic, SuperTab, Supra, Suzuki, Swipe, SWISSMOBILITY, Swisstone, SWTV, Sylvania, Symphony, Syrox, T-Mobile, TAG Tech, Taiga System, Takara, Tambo, Tanix, TB Touch, TCL, TD Systems, TD Tech, Technicolor, Technika, TechniSat, Technopc, TechnoTrend, TechPad, Techwood, Teclast, Tecno Mobile, TEENO, Teknosa, Tele2, Telefunken, Telego, Telenor, Telia, Telit, Telpo, TENPLUS, Tesco, Tesla, Tetratab, teXet, ThL, Thomson, Thuraya, TIANYU, Tigers, Time2, Timovi, Tinai, Tinmo, TiPhone, TiVo, TJC, TOKYO, Tolino, Tone, Tooky, Topelotek, Top House, Toplux, Topway, Torex, TOSCIDO, Toshiba, Touchmate, Transpeed, TrekStor, Trevi, Trident, Trifone, Trio, Tronsmart, True, True Slim, TTEC, TuCEL, Tunisie Telecom, Turbo, Turbo-X, TurboKids, TurboPad, Turkcell, TVC, TWM, Twoe, TWZ, Tymes, Türk Telekom, U-Magic, U.S. Cellular, Ugoos, Uhans, Uhappy, Ulefone, Umax, UMIDIGI, Unihertz, Unimax, Uniscope, UNIWA, Unknown, Unnecto, UNNO, Unonu, Unowhy, Urovo, UTime, UTOK, UTStarcom, UZ Mobile, v-mobile, VAIO, Vankyo, Vargo, Vastking, VAVA, VC, VDVD, Vega, Venso, Venturer, VEON, Verico, Verizon, Vernee, Verssed, Vertex, Vertu, Verykool, Vesta, Vestel, Vexia, VGO TEL, Videocon, Videoweb, ViewSonic, Vinabox, Vinga, Vinsoc, Vios, Vipro, Virzo, Vision Touch, Vitelcom, Viumee, Vivax, Vivo, VIWA, Vizio, VK Mobile, VKworld, Vodacom, Vodafone, VOGA, Vonino, Vontar, Vorago, Vorcom, Vorke, Vortex, Voto, VOX, Voxtel, Voyo, Vsmart, Vsun, VUCATIMES, Vulcan, VVETIME, Walton, WE, Web TV, Weimei, WellcoM, WELLINGTON, Western Digital, Westpoint, Wexler, Wieppo, Wigor, Wiko, Wileyfox, Winds, Wink, Winmax, Winnovo, Wintouch, Wiseasy, WIWA, Wizz, Wolder, Wolfgang, Wolki, Wonu, Woo, Wortmann, Woxter, X-AGE, X-BO, X-TIGI, X-View, X.Vision, XGIMI, Xgody, Xiaodu, Xiaolajiao, Xiaomi, Xion, Xolo, Xoro, Xshitou, Xtouch, Xtratech, Yandex, Yarvik, YASIN, YEPEN, Yes, Yezz, Yoka TV, Yota, YOTOPT, Ytone, Yu, Yuandao, YU Fly, YUHO, Yuno, Yusun, Yxtel, Zaith, Zatec, Zebra, Zeeker, Zeemi, Zen, Zenek, Zentality, Zfiner, ZH&amp;K, Zidoo, ZIFRO, Ziox, Zonda, Zonko, Zopo, ZTE, Zuum, Zync, ZYQ, Zyrex, öwn</acceptedValues>
</row>
<row>
<type>dimension</type>
diff --git a/tests/PHPUnit/System/expected/test_reportLimitingdimension_2_rankingQuery__CustomDimensions.getCustomDimension_day.xml b/tests/PHPUnit/System/expected/test_reportLimitingdimension_2_rankingQuery__CustomDimensions.getCustomDimension_day.xml
index ecd14db85a..32ab8d4f1c 100644
--- a/tests/PHPUnit/System/expected/test_reportLimitingdimension_2_rankingQuery__CustomDimensions.getCustomDimension_day.xml
+++ b/tests/PHPUnit/System/expected/test_reportLimitingdimension_2_rankingQuery__CustomDimensions.getCustomDimension_day.xml
@@ -205,8 +205,6 @@
<avg_time_on_dimension>0</avg_time_on_dimension>
-
-
</row>
<row>
@@ -247,8 +245,6 @@
<avg_time_on_dimension>0</avg_time_on_dimension>
-
-
</row>
</subtable>
</row>
diff --git a/tests/javascript/index.php b/tests/javascript/index.php
index c967b6b47c..81ec2570a5 100644
--- a/tests/javascript/index.php
+++ b/tests/javascript/index.php
@@ -3286,6 +3286,7 @@ function PiwikTest() {
expect(5);
var tracker = Piwik.getTracker();
+ tracker.disableBrowserFeatureDetection(); // avoid client hint queue
tracker.setTrackerUrl("matomo.php");
tracker.setSiteId(1);
tracker.setCustomData({ "token": '---' });
@@ -3594,6 +3595,7 @@ if ($mysql) {
expect(11);
var tracker = Piwik.getTracker();
+ tracker.disableBrowserFeatureDetection(); // avoid client hint queue
tracker.setTrackerUrl("matomo.php");
tracker.setSiteId(1);
tracker.setCustomData({ "token" : getAlwaysUseSendBeaconToken() });
@@ -3706,6 +3708,7 @@ if ($mysql) {
};
var tracker = Piwik.getTracker();
+ tracker.disableBrowserFeatureDetection(); // avoid client hint queue
tracker.setTrackerUrl("matomo.php");
tracker.setSiteId(1);
@@ -4992,6 +4995,7 @@ if ($mysql) {
var queue;
var tracker = Piwik.getTracker();
+ tracker.disableBrowserFeatureDetection(); // avoid client hint queue
tracker.setCustomData('token', getConsentToken() + '1');
deepEqual(tracker.getConsentRequestsQueue(), [], "getConsentRequestsQueue, by default is empty" );
strictEqual(tracker.hasRememberedConsent(), false, "hasRememberedConsent, has no consent given by default" );
@@ -5257,6 +5261,7 @@ if ($mysql) {
expect(8);
var tracker = Piwik.getTracker();
+ tracker.disableBrowserFeatureDetection(); // avoid client hint queue
ok( ! ( _paq instanceof Array ), "async tracker proxy not an array" );
equal( typeof tracker, typeof _paq, "async tracker proxy" );
diff --git a/tests/javascript/matomo.php b/tests/javascript/matomo.php
index be7dfe7f23..d340207175 100644
--- a/tests/javascript/matomo.php
+++ b/tests/javascript/matomo.php
@@ -74,7 +74,10 @@ function logRequest($db, $uri, $data) {
$id = getNextRequestId($db, $token);
- $query = $db->query("INSERT INTO requests (requestid, token, ip, ts, uri, referer, ua) VALUES (\"$id\", \"$token\", \"$ip\", \"$ts\", \"$uri\", \"$referrer\", \"$ua\")");
+ $query = $db->query(
+ "INSERT INTO requests (requestid, token, ip, ts, uri, referer, ua) VALUES (?, ?, ?, ?, ?, ?, ?)",
+ [$id, $token, $ip, $ts, $uri, $referrer, $ua]
+ );
return $query;
}