// The Two Items Below Are For Back Compat Only
/*!
* jQuery Cookie Plugin v1.4.1
* https://github.com/carhartl/jquery-cookie
*
* Copyright 2006, 2014 Klaus Hartl
* Released under the MIT license
*/
// Included for compatibility only
// Refactoring involves a lot of "old" Martini advertising
(function (factory) {
factory(window.jQuery);
}(function ($) {
var pluses = /\+/g;
function encode(s) {
return config.raw ? s : encodeURIComponent(s);
}
function decode(s) {
return config.raw ? s : decodeURIComponent(s);
}
function stringifyCookieValue(value) {
return encode(config.json ? JSON.stringify(value) : String(value));
}
function parseCookieValue(s) {
if (s.indexOf('"') === 0) {
// This is a quoted cookie as according to RFC2068, unescape...
s = s.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, '\\');
}
try {
// Replace server-side written pluses with spaces.
// If we can't decode the cookie, ignore it, it's unusable.
// If we can't parse the cookie, ignore it, it's unusable.
s = decodeURIComponent(s.replace(pluses, ' '));
return config.json ? JSON.parse(s) : s;
} catch(e) {}
}
function read(s, converter) {
var value = config.raw ? s : parseCookieValue(s);
return $.isFunction(converter) ? converter(value) : value;
}
var config = $.cookie = function (key, value, options) {
// Write
if (arguments.length > 1 && !$.isFunction(value)) {
options = $.extend({}, config.defaults, options);
if (typeof options.expires === 'number') {
var days = options.expires, t = options.expires = new Date();
t.setMilliseconds(t.getMilliseconds() + days * 864e+5);
}
return (document.cookie = [
encode(key), '=', stringifyCookieValue(value),
options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
options.path ? '; path=' + options.path : '',
options.domain ? '; domain=' + options.domain : '',
options.secure ? '; secure' : ''
].join(''));
}
// Read
var result = key ? undefined : {},
// To prevent the for loop in the first place assign an empty array
// in case there are no cookies at all. Also prevents odd result when
// calling $.cookie().
cookies = document.cookie ? document.cookie.split('; ') : [],
i = 0,
l = cookies.length;
for (; i < l; i++) {
var parts = cookies[i].split('='),
name = decode(parts.shift()),
cookie = parts.join('=');
if (key === name) {
// If second argument (value) is a function it's a converter...
result = read(cookie, value);
break;
}
// Prevent storing a cookie that we couldn't decode.
if (!key && (cookie = read(cookie)) !== undefined) {
result[name] = cookie;
}
}
return result;
};
config.defaults = {};
$.removeCookie = function (key, options) {
// Must not alter options, thus extending a fresh object...
$.cookie(key, '', $.extend({}, options, { expires: -1 }));
return !$.cookie(key);
};
}));
/*!mobile-detect v1.3.5 2016-11-14*/
/*global module:false, define:false*/
/*jshint latedef:false*/
/*!@license Copyright 2013, Heinrich Goebl, License: MIT, see https://github.com/hgoebl/mobile-detect.js*/
(function () {
'use strict';
var impl = {};
impl.mobileDetectRules = {
"phones": {
"iPhone": "\\biPhone\\b|\\biPod\\b",
"BlackBerry": "BlackBerry|\\bBB10\\b|rim[0-9]+",
"HTC": "HTC|HTC.*(Sensation|Evo|Vision|Explorer|6800|8100|8900|A7272|S510e|C110e|Legend|Desire|T8282)|APX515CKT|Qtek9090|APA9292KT|HD_mini|Sensation.*Z710e|PG86100|Z715e|Desire.*(A8181|HD)|ADR6200|ADR6400L|ADR6425|001HT|Inspire 4G|Android.*\\bEVO\\b|T-Mobile G1|Z520m",
"Nexus": "Nexus One|Nexus S|Galaxy.*Nexus|Android.*Nexus.*Mobile|Nexus 4|Nexus 5|Nexus 6",
"Dell": "Dell.*Streak|Dell.*Aero|Dell.*Venue|DELL.*Venue Pro|Dell Flash|Dell Smoke|Dell Mini 3iX|XCD28|XCD35|\\b001DL\\b|\\b101DL\\b|\\bGS01\\b",
"Motorola": "Motorola|DROIDX|DROID BIONIC|\\bDroid\\b.*Build|Android.*Xoom|HRI39|MOT-|A1260|A1680|A555|A853|A855|A953|A955|A956|Motorola.*ELECTRIFY|Motorola.*i1|i867|i940|MB200|MB300|MB501|MB502|MB508|MB511|MB520|MB525|MB526|MB611|MB612|MB632|MB810|MB855|MB860|MB861|MB865|MB870|ME501|ME502|ME511|ME525|ME600|ME632|ME722|ME811|ME860|ME863|ME865|MT620|MT710|MT716|MT720|MT810|MT870|MT917|Motorola.*TITANIUM|WX435|WX445|XT300|XT301|XT311|XT316|XT317|XT319|XT320|XT390|XT502|XT530|XT531|XT532|XT535|XT603|XT610|XT611|XT615|XT681|XT701|XT702|XT711|XT720|XT800|XT806|XT860|XT862|XT875|XT882|XT883|XT894|XT901|XT907|XT909|XT910|XT912|XT928|XT926|XT915|XT919|XT925|XT1021|\\bMoto E\\b",
"Samsung": "\\bSamsung\\b|SM-G9250|GT-19300|SGH-I337|BGT-S5230|GT-B2100|GT-B2700|GT-B2710|GT-B3210|GT-B3310|GT-B3410|GT-B3730|GT-B3740|GT-B5510|GT-B5512|GT-B5722|GT-B6520|GT-B7300|GT-B7320|GT-B7330|GT-B7350|GT-B7510|GT-B7722|GT-B7800|GT-C3010|GT-C3011|GT-C3060|GT-C3200|GT-C3212|GT-C3212I|GT-C3262|GT-C3222|GT-C3300|GT-C3300K|GT-C3303|GT-C3303K|GT-C3310|GT-C3322|GT-C3330|GT-C3350|GT-C3500|GT-C3510|GT-C3530|GT-C3630|GT-C3780|GT-C5010|GT-C5212|GT-C6620|GT-C6625|GT-C6712|GT-E1050|GT-E1070|GT-E1075|GT-E1080|GT-E1081|GT-E1085|GT-E1087|GT-E1100|GT-E1107|GT-E1110|GT-E1120|GT-E1125|GT-E1130|GT-E1160|GT-E1170|GT-E1175|GT-E1180|GT-E1182|GT-E1200|GT-E1210|GT-E1225|GT-E1230|GT-E1390|GT-E2100|GT-E2120|GT-E2121|GT-E2152|GT-E2220|GT-E2222|GT-E2230|GT-E2232|GT-E2250|GT-E2370|GT-E2550|GT-E2652|GT-E3210|GT-E3213|GT-I5500|GT-I5503|GT-I5700|GT-I5800|GT-I5801|GT-I6410|GT-I6420|GT-I7110|GT-I7410|GT-I7500|GT-I8000|GT-I8150|GT-I8160|GT-I8190|GT-I8320|GT-I8330|GT-I8350|GT-I8530|GT-I8700|GT-I8703|GT-I8910|GT-I9000|GT-I9001|GT-I9003|GT-I9010|GT-I9020|GT-I9023|GT-I9070|GT-I9082|GT-I9100|GT-I9103|GT-I9220|GT-I9250|GT-I9300|GT-I9305|GT-I9500|GT-I9505|GT-M3510|GT-M5650|GT-M7500|GT-M7600|GT-M7603|GT-M8800|GT-M8910|GT-N7000|GT-S3110|GT-S3310|GT-S3350|GT-S3353|GT-S3370|GT-S3650|GT-S3653|GT-S3770|GT-S3850|GT-S5210|GT-S5220|GT-S5229|GT-S5230|GT-S5233|GT-S5250|GT-S5253|GT-S5260|GT-S5263|GT-S5270|GT-S5300|GT-S5330|GT-S5350|GT-S5360|GT-S5363|GT-S5369|GT-S5380|GT-S5380D|GT-S5560|GT-S5570|GT-S5600|GT-S5603|GT-S5610|GT-S5620|GT-S5660|GT-S5670|GT-S5690|GT-S5750|GT-S5780|GT-S5830|GT-S5839|GT-S6102|GT-S6500|GT-S7070|GT-S7200|GT-S7220|GT-S7230|GT-S7233|GT-S7250|GT-S7500|GT-S7530|GT-S7550|GT-S7562|GT-S7710|GT-S8000|GT-S8003|GT-S8500|GT-S8530|GT-S8600|SCH-A310|SCH-A530|SCH-A570|SCH-A610|SCH-A630|SCH-A650|SCH-A790|SCH-A795|SCH-A850|SCH-A870|SCH-A890|SCH-A930|SCH-A950|SCH-A970|SCH-A990|SCH-I100|SCH-I110|SCH-I400|SCH-I405|SCH-I500|SCH-I510|SCH-I515|SCH-I600|SCH-I730|SCH-I760|SCH-I770|SCH-I830|SCH-I910|SCH-I920|SCH-I959|SCH-LC11|SCH-N150|SCH-N300|SCH-R100|SCH-R300|SCH-R351|SCH-R400|SCH-R410|SCH-T300|SCH-U310|SCH-U320|SCH-U350|SCH-U360|SCH-U365|SCH-U370|SCH-U380|SCH-U410|SCH-U430|SCH-U450|SCH-U460|SCH-U470|SCH-U490|SCH-U540|SCH-U550|SCH-U620|SCH-U640|SCH-U650|SCH-U660|SCH-U700|SCH-U740|SCH-U750|SCH-U810|SCH-U820|SCH-U900|SCH-U940|SCH-U960|SCS-26UC|SGH-A107|SGH-A117|SGH-A127|SGH-A137|SGH-A157|SGH-A167|SGH-A177|SGH-A187|SGH-A197|SGH-A227|SGH-A237|SGH-A257|SGH-A437|SGH-A517|SGH-A597|SGH-A637|SGH-A657|SGH-A667|SGH-A687|SGH-A697|SGH-A707|SGH-A717|SGH-A727|SGH-A737|SGH-A747|SGH-A767|SGH-A777|SGH-A797|SGH-A817|SGH-A827|SGH-A837|SGH-A847|SGH-A867|SGH-A877|SGH-A887|SGH-A897|SGH-A927|SGH-B100|SGH-B130|SGH-B200|SGH-B220|SGH-C100|SGH-C110|SGH-C120|SGH-C130|SGH-C140|SGH-C160|SGH-C170|SGH-C180|SGH-C200|SGH-C207|SGH-C210|SGH-C225|SGH-C230|SGH-C417|SGH-C450|SGH-D307|SGH-D347|SGH-D357|SGH-D407|SGH-D415|SGH-D780|SGH-D807|SGH-D980|SGH-E105|SGH-E200|SGH-E315|SGH-E316|SGH-E317|SGH-E335|SGH-E590|SGH-E635|SGH-E715|SGH-E890|SGH-F300|SGH-F480|SGH-I200|SGH-I300|SGH-I320|SGH-I550|SGH-I577|SGH-I600|SGH-I607|SGH-I617|SGH-I627|SGH-I637|SGH-I677|SGH-I700|SGH-I717|SGH-I727|SGH-i747M|SGH-I777|SGH-I780|SGH-I827|SGH-I847|SGH-I857|SGH-I896|SGH-I897|SGH-I900|SGH-I907|SGH-I917|SGH-I927|SGH-I937|SGH-I997|SGH-J150|SGH-J200|SGH-L170|SGH-L700|SGH-M110|SGH-M150|SGH-M200|SGH-N105|SGH-N500|SGH-N600|SGH-N620|SGH-N625|SGH-N700|SGH-N710|SGH-P107|SGH-P207|SGH-P300|SGH-P310|SGH-P520|SGH-P735|SGH-P777|SGH-Q105|SGH-R210|SGH-R220|SGH-R225|SGH-S105|SGH-S307|SGH-T109|SGH-T119|SGH-T139|SGH-T209|SGH-T219|SGH-T229|SGH-T239|SGH-T249|SGH-T259|SGH-T309|SGH-T319|SGH-T329|SGH-T339|SGH-T349|SGH-T359|SGH-T369|SGH-T379|SGH-T409|SGH-T429|SGH-T439|SGH-T459|SGH-T469|SGH-T479|SGH-T499|SGH-T509|SGH-T519|SGH-T539|SGH-T559|SGH-T589|SGH-T609|SGH-T619|SGH-T629|SGH-T639|SGH-T659|SGH-T669|SGH-T679|SGH-T709|SGH-T719|SGH-T729|SGH-T739|SGH-T746|SGH-T749|SGH-T759|SGH-T769|SGH-T809|SGH-T819|SGH-T839|SGH-T919|SGH-T929|SGH-T939|SGH-T959|SGH-T989|SGH-U100|SGH-U200|SGH-U800|SGH-V205|SGH-V206|SGH-X100|SGH-X105|SGH-X120|SGH-X140|SGH-X426|SGH-X427|SGH-X475|SGH-X495|SGH-X497|SGH-X507|SGH-X600|SGH-X610|SGH-X620|SGH-X630|SGH-X700|SGH-X820|SGH-X890|SGH-Z130|SGH-Z150|SGH-Z170|SGH-ZX10|SGH-ZX20|SHW-M110|SPH-A120|SPH-A400|SPH-A420|SPH-A460|SPH-A500|SPH-A560|SPH-A600|SPH-A620|SPH-A660|SPH-A700|SPH-A740|SPH-A760|SPH-A790|SPH-A800|SPH-A820|SPH-A840|SPH-A880|SPH-A900|SPH-A940|SPH-A960|SPH-D600|SPH-D700|SPH-D710|SPH-D720|SPH-I300|SPH-I325|SPH-I330|SPH-I350|SPH-I500|SPH-I600|SPH-I700|SPH-L700|SPH-M100|SPH-M220|SPH-M240|SPH-M300|SPH-M305|SPH-M320|SPH-M330|SPH-M350|SPH-M360|SPH-M370|SPH-M380|SPH-M510|SPH-M540|SPH-M550|SPH-M560|SPH-M570|SPH-M580|SPH-M610|SPH-M620|SPH-M630|SPH-M800|SPH-M810|SPH-M850|SPH-M900|SPH-M910|SPH-M920|SPH-M930|SPH-N100|SPH-N200|SPH-N240|SPH-N300|SPH-N400|SPH-Z400|SWC-E100|SCH-i909|GT-N7100|GT-N7105|SCH-I535|SM-N900A|SGH-I317|SGH-T999L|GT-S5360B|GT-I8262|GT-S6802|GT-S6312|GT-S6310|GT-S5312|GT-S5310|GT-I9105|GT-I8510|GT-S6790N|SM-G7105|SM-N9005|GT-S5301|GT-I9295|GT-I9195|SM-C101|GT-S7392|GT-S7560|GT-B7610|GT-I5510|GT-S7582|GT-S7530E|GT-I8750|SM-G9006V|SM-G9008V|SM-G9009D|SM-G900A|SM-G900D|SM-G900F|SM-G900H|SM-G900I|SM-G900J|SM-G900K|SM-G900L|SM-G900M|SM-G900P|SM-G900R4|SM-G900S|SM-G900T|SM-G900V|SM-G900W8|SHV-E160K|SCH-P709|SCH-P729|SM-T2558|GT-I9205|SM-G9350|SM-J120F",
"LG": "\\bLG\\b;|LG[- ]?(C800|C900|E400|E610|E900|E-900|F160|F180K|F180L|F180S|730|855|L160|LS740|LS840|LS970|LU6200|MS690|MS695|MS770|MS840|MS870|MS910|P500|P700|P705|VM696|AS680|AS695|AX840|C729|E970|GS505|272|C395|E739BK|E960|L55C|L75C|LS696|LS860|P769BK|P350|P500|P509|P870|UN272|US730|VS840|VS950|LN272|LN510|LS670|LS855|LW690|MN270|MN510|P509|P769|P930|UN200|UN270|UN510|UN610|US670|US740|US760|UX265|UX840|VN271|VN530|VS660|VS700|VS740|VS750|VS910|VS920|VS930|VX9200|VX11000|AX840A|LW770|P506|P925|P999|E612|D955|D802|MS323)",
"Sony": "SonyST|SonyLT|SonyEricsson|SonyEricssonLT15iv|LT18i|E10i|LT28h|LT26w|SonyEricssonMT27i|C5303|C6902|C6903|C6906|C6943|D2533",
"Asus": "Asus.*Galaxy|PadFone.*Mobile",
"NokiaLumia": "Lumia [0-9]{3,4}",
"Micromax": "Micromax.*\\b(A210|A92|A88|A72|A111|A110Q|A115|A116|A110|A90S|A26|A51|A35|A54|A25|A27|A89|A68|A65|A57|A90)\\b",
"Palm": "PalmSource|Palm",
"Vertu": "Vertu|Vertu.*Ltd|Vertu.*Ascent|Vertu.*Ayxta|Vertu.*Constellation(F|Quest)?|Vertu.*Monika|Vertu.*Signature",
"Pantech": "PANTECH|IM-A850S|IM-A840S|IM-A830L|IM-A830K|IM-A830S|IM-A820L|IM-A810K|IM-A810S|IM-A800S|IM-T100K|IM-A725L|IM-A780L|IM-A775C|IM-A770K|IM-A760S|IM-A750K|IM-A740S|IM-A730S|IM-A720L|IM-A710K|IM-A690L|IM-A690S|IM-A650S|IM-A630K|IM-A600S|VEGA PTL21|PT003|P8010|ADR910L|P6030|P6020|P9070|P4100|P9060|P5000|CDM8992|TXT8045|ADR8995|IS11PT|P2030|P6010|P8000|PT002|IS06|CDM8999|P9050|PT001|TXT8040|P2020|P9020|P2000|P7040|P7000|C790",
"Fly": "IQ230|IQ444|IQ450|IQ440|IQ442|IQ441|IQ245|IQ256|IQ236|IQ255|IQ235|IQ245|IQ275|IQ240|IQ285|IQ280|IQ270|IQ260|IQ250",
"Wiko": "KITE 4G|HIGHWAY|GETAWAY|STAIRWAY|DARKSIDE|DARKFULL|DARKNIGHT|DARKMOON|SLIDE|WAX 4G|RAINBOW|BLOOM|SUNSET|GOA(?!nna)|LENNY|BARRY|IGGY|OZZY|CINK FIVE|CINK PEAX|CINK PEAX 2|CINK SLIM|CINK SLIM 2|CINK +|CINK KING|CINK PEAX|CINK SLIM|SUBLIM",
"iMobile": "i-mobile (IQ|i-STYLE|idea|ZAA|Hitz)",
"SimValley": "\\b(SP-80|XT-930|SX-340|XT-930|SX-310|SP-360|SP60|SPT-800|SP-120|SPT-800|SP-140|SPX-5|SPX-8|SP-100|SPX-8|SPX-12)\\b",
"Wolfgang": "AT-B24D|AT-AS50HD|AT-AS40W|AT-AS55HD|AT-AS45q2|AT-B26D|AT-AS50Q",
"Alcatel": "Alcatel",
"Nintendo": "Nintendo 3DS",
"Amoi": "Amoi",
"INQ": "INQ",
"GenericPhone": "Tapatalk|PDA;|SAGEM|\\bmmp\\b|pocket|\\bpsp\\b|symbian|Smartphone|smartfon|treo|up.browser|up.link|vodafone|\\bwap\\b|nokia|Series40|Series60|S60|SonyEricsson|N900|MAUI.*WAP.*Browser"
},
"tablets": {
"iPad": "iPad|iPad.*Mobile",
"NexusTablet": "Android.*Nexus[\\s]+(7|9|10)",
"SamsungTablet": "SAMSUNG.*Tablet|Galaxy.*Tab|SC-01C|GT-P1000|GT-P1003|GT-P1010|GT-P3105|GT-P6210|GT-P6800|GT-P6810|GT-P7100|GT-P7300|GT-P7310|GT-P7500|GT-P7510|SCH-I800|SCH-I815|SCH-I905|SGH-I957|SGH-I987|SGH-T849|SGH-T859|SGH-T869|SPH-P100|GT-P3100|GT-P3108|GT-P3110|GT-P5100|GT-P5110|GT-P6200|GT-P7320|GT-P7511|GT-N8000|GT-P8510|SGH-I497|SPH-P500|SGH-T779|SCH-I705|SCH-I915|GT-N8013|GT-P3113|GT-P5113|GT-P8110|GT-N8010|GT-N8005|GT-N8020|GT-P1013|GT-P6201|GT-P7501|GT-N5100|GT-N5105|GT-N5110|SHV-E140K|SHV-E140L|SHV-E140S|SHV-E150S|SHV-E230K|SHV-E230L|SHV-E230S|SHW-M180K|SHW-M180L|SHW-M180S|SHW-M180W|SHW-M300W|SHW-M305W|SHW-M380K|SHW-M380S|SHW-M380W|SHW-M430W|SHW-M480K|SHW-M480S|SHW-M480W|SHW-M485W|SHW-M486W|SHW-M500W|GT-I9228|SCH-P739|SCH-I925|GT-I9200|GT-P5200|GT-P5210|GT-P5210X|SM-T311|SM-T310|SM-T310X|SM-T210|SM-T210R|SM-T211|SM-P600|SM-P601|SM-P605|SM-P900|SM-P901|SM-T217|SM-T217A|SM-T217S|SM-P6000|SM-T3100|SGH-I467|XE500|SM-T110|GT-P5220|GT-I9200X|GT-N5110X|GT-N5120|SM-P905|SM-T111|SM-T2105|SM-T315|SM-T320|SM-T320X|SM-T321|SM-T520|SM-T525|SM-T530NU|SM-T230NU|SM-T330NU|SM-T900|XE500T1C|SM-P605V|SM-P905V|SM-T337V|SM-T537V|SM-T707V|SM-T807V|SM-P600X|SM-P900X|SM-T210X|SM-T230|SM-T230X|SM-T325|GT-P7503|SM-T531|SM-T330|SM-T530|SM-T705|SM-T705C|SM-T535|SM-T331|SM-T800|SM-T700|SM-T537|SM-T807|SM-P907A|SM-T337A|SM-T537A|SM-T707A|SM-T807A|SM-T237|SM-T807P|SM-P607T|SM-T217T|SM-T337T|SM-T807T|SM-T116NQ|SM-P550|SM-T350|SM-T550|SM-T9000|SM-P9000|SM-T705Y|SM-T805|GT-P3113|SM-T710|SM-T810|SM-T815|SM-T360|SM-T533|SM-T113|SM-T335|SM-T715|SM-T560|SM-T670|SM-T677|SM-T377|SM-T567|SM-T357T|SM-T555|SM-T561|SM-T713|SM-T719|SM-T813|SM-T819|SM-T580|SM-T355Y|SM-T280",
"Kindle": "Kindle|Silk.*Accelerated|Android.*\\b(KFOT|KFTT|KFJWI|KFJWA|KFOTE|KFSOWI|KFTHWI|KFTHWA|KFAPWI|KFAPWA|WFJWAE|KFSAWA|KFSAWI|KFASWI|KFARWI)\\b",
"SurfaceTablet": "Windows NT [0-9.]+; ARM;.*(Tablet|ARMBJS)",
"HPTablet": "HP Slate (7|8|10)|HP ElitePad 900|hp-tablet|EliteBook.*Touch|HP 8|Slate 21|HP SlateBook 10",
"AsusTablet": "^.*PadFone((?!Mobile).)*$|Transformer|TF101|TF101G|TF300T|TF300TG|TF300TL|TF700T|TF700KL|TF701T|TF810C|ME171|ME301T|ME302C|ME371MG|ME370T|ME372MG|ME172V|ME173X|ME400C|Slider SL101|\\bK00F\\b|\\bK00C\\b|\\bK00E\\b|\\bK00L\\b|TX201LA|ME176C|ME102A|\\bM80TA\\b|ME372CL|ME560CG|ME372CG|ME302KL| K010 | K011 | K017 | K01E |ME572C|ME103K|ME170C|ME171C|\\bME70C\\b|ME581C|ME581CL|ME8510C|ME181C|P01Y|PO1MA|P01Z",
"BlackBerryTablet": "PlayBook|RIM Tablet",
"HTCtablet": "HTC_Flyer_P512|HTC Flyer|HTC Jetstream|HTC-P715a|HTC EVO View 4G|PG41200|PG09410",
"MotorolaTablet": "xoom|sholest|MZ615|MZ605|MZ505|MZ601|MZ602|MZ603|MZ604|MZ606|MZ607|MZ608|MZ609|MZ615|MZ616|MZ617",
"NookTablet": "Android.*Nook|NookColor|nook browser|BNRV200|BNRV200A|BNTV250|BNTV250A|BNTV400|BNTV600|LogicPD Zoom2",
"AcerTablet": "Android.*; \\b(A100|A101|A110|A200|A210|A211|A500|A501|A510|A511|A700|A701|W500|W500P|W501|W501P|W510|W511|W700|G100|G100W|B1-A71|B1-710|B1-711|A1-810|A1-811|A1-830)\\b|W3-810|\\bA3-A10\\b|\\bA3-A11\\b|\\bA3-A20\\b|\\bA3-A30",
"ToshibaTablet": "Android.*(AT100|AT105|AT200|AT205|AT270|AT275|AT300|AT305|AT1S5|AT500|AT570|AT700|AT830)|TOSHIBA.*FOLIO",
"LGTablet": "\\bL-06C|LG-V909|LG-V900|LG-V700|LG-V510|LG-V500|LG-V410|LG-V400|LG-VK810\\b",
"FujitsuTablet": "Android.*\\b(F-01D|F-02F|F-05E|F-10D|M532|Q572)\\b",
"PrestigioTablet": "PMP3170B|PMP3270B|PMP3470B|PMP7170B|PMP3370B|PMP3570C|PMP5870C|PMP3670B|PMP5570C|PMP5770D|PMP3970B|PMP3870C|PMP5580C|PMP5880D|PMP5780D|PMP5588C|PMP7280C|PMP7280C3G|PMP7280|PMP7880D|PMP5597D|PMP5597|PMP7100D|PER3464|PER3274|PER3574|PER3884|PER5274|PER5474|PMP5097CPRO|PMP5097|PMP7380D|PMP5297C|PMP5297C_QUAD|PMP812E|PMP812E3G|PMP812F|PMP810E|PMP880TD|PMT3017|PMT3037|PMT3047|PMT3057|PMT7008|PMT5887|PMT5001|PMT5002",
"LenovoTablet": "Lenovo TAB|Idea(Tab|Pad)( A1|A10| K1|)|ThinkPad([ ]+)?Tablet|YT3-X90L|YT3-X90F|YT3-X90X|Lenovo.*(S2109|S2110|S5000|S6000|K3011|A3000|A3500|A1000|A2107|A2109|A1107|A5500|A7600|B6000|B8000|B8080)(-|)(FL|F|HV|H|)",
"DellTablet": "Venue 11|Venue 8|Venue 7|Dell Streak 10|Dell Streak 7",
"YarvikTablet": "Android.*\\b(TAB210|TAB211|TAB224|TAB250|TAB260|TAB264|TAB310|TAB360|TAB364|TAB410|TAB411|TAB420|TAB424|TAB450|TAB460|TAB461|TAB464|TAB465|TAB467|TAB468|TAB07-100|TAB07-101|TAB07-150|TAB07-151|TAB07-152|TAB07-200|TAB07-201-3G|TAB07-210|TAB07-211|TAB07-212|TAB07-214|TAB07-220|TAB07-400|TAB07-485|TAB08-150|TAB08-200|TAB08-201-3G|TAB08-201-30|TAB09-100|TAB09-211|TAB09-410|TAB10-150|TAB10-201|TAB10-211|TAB10-400|TAB10-410|TAB13-201|TAB274EUK|TAB275EUK|TAB374EUK|TAB462EUK|TAB474EUK|TAB9-200)\\b",
"MedionTablet": "Android.*\\bOYO\\b|LIFE.*(P9212|P9514|P9516|S9512)|LIFETAB",
"ArnovaTablet": "97G4|AN10G2|AN7bG3|AN7fG3|AN8G3|AN8cG3|AN7G3|AN9G3|AN7dG3|AN7dG3ST|AN7dG3ChildPad|AN10bG3|AN10bG3DT|AN9G2",
"IntensoTablet": "INM8002KP|INM1010FP|INM805ND|Intenso Tab|TAB1004",
"IRUTablet": "M702pro",
"MegafonTablet": "MegaFon V9|\\bZTE V9\\b|Android.*\\bMT7A\\b",
"EbodaTablet": "E-Boda (Supreme|Impresspeed|Izzycomm|Essential)",
"AllViewTablet": "Allview.*(Viva|Alldro|City|Speed|All TV|Frenzy|Quasar|Shine|TX1|AX1|AX2)",
"ArchosTablet": "\\b(101G9|80G9|A101IT)\\b|Qilive 97R|Archos5|\\bARCHOS (70|79|80|90|97|101|FAMILYPAD|)(b|)(G10| Cobalt| TITANIUM(HD|)| Xenon| Neon|XSK| 2| XS 2| PLATINUM| CARBON|GAMEPAD)\\b",
"AinolTablet": "NOVO7|NOVO8|NOVO10|Novo7Aurora|Novo7Basic|NOVO7PALADIN|novo9-Spark",
"NokiaLumiaTablet": "Lumia 2520",
"SonyTablet": "Sony.*Tablet|Xperia Tablet|Sony Tablet S|SO-03E|SGPT12|SGPT13|SGPT114|SGPT121|SGPT122|SGPT123|SGPT111|SGPT112|SGPT113|SGPT131|SGPT132|SGPT133|SGPT211|SGPT212|SGPT213|SGP311|SGP312|SGP321|EBRD1101|EBRD1102|EBRD1201|SGP351|SGP341|SGP511|SGP512|SGP521|SGP541|SGP551|SGP621|SGP612|SOT31",
"PhilipsTablet": "\\b(PI2010|PI3000|PI3100|PI3105|PI3110|PI3205|PI3210|PI3900|PI4010|PI7000|PI7100)\\b",
"CubeTablet": "Android.*(K8GT|U9GT|U10GT|U16GT|U17GT|U18GT|U19GT|U20GT|U23GT|U30GT)|CUBE U8GT",
"CobyTablet": "MID1042|MID1045|MID1125|MID1126|MID7012|MID7014|MID7015|MID7034|MID7035|MID7036|MID7042|MID7048|MID7127|MID8042|MID8048|MID8127|MID9042|MID9740|MID9742|MID7022|MID7010",
"MIDTablet": "M9701|M9000|M9100|M806|M1052|M806|T703|MID701|MID713|MID710|MID727|MID760|MID830|MID728|MID933|MID125|MID810|MID732|MID120|MID930|MID800|MID731|MID900|MID100|MID820|MID735|MID980|MID130|MID833|MID737|MID960|MID135|MID860|MID736|MID140|MID930|MID835|MID733|MID4X10",
"MSITablet": "MSI \\b(Primo 73K|Primo 73L|Primo 81L|Primo 77|Primo 93|Primo 75|Primo 76|Primo 73|Primo 81|Primo 91|Primo 90|Enjoy 71|Enjoy 7|Enjoy 10)\\b",
"SMiTTablet": "Android.*(\\bMID\\b|MID-560|MTV-T1200|MTV-PND531|MTV-P1101|MTV-PND530)",
"RockChipTablet": "Android.*(RK2818|RK2808A|RK2918|RK3066)|RK2738|RK2808A",
"FlyTablet": "IQ310|Fly Vision",
"bqTablet": "Android.*(bq)?.*(Elcano|Curie|Edison|Maxwell|Kepler|Pascal|Tesla|Hypatia|Platon|Newton|Livingstone|Cervantes|Avant|Aquaris [E|M]10)|Maxwell.*Lite|Maxwell.*Plus",
"HuaweiTablet": "MediaPad|MediaPad 7 Youth|IDEOS S7|S7-201c|S7-202u|S7-101|S7-103|S7-104|S7-105|S7-106|S7-201|S7-Slim",
"NecTablet": "\\bN-06D|\\bN-08D",
"PantechTablet": "Pantech.*P4100",
"BronchoTablet": "Broncho.*(N701|N708|N802|a710)",
"VersusTablet": "TOUCHPAD.*[78910]|\\bTOUCHTAB\\b",
"ZyncTablet": "z1000|Z99 2G|z99|z930|z999|z990|z909|Z919|z900",
"PositivoTablet": "TB07STA|TB10STA|TB07FTA|TB10FTA",
"NabiTablet": "Android.*\\bNabi",
"KoboTablet": "Kobo Touch|\\bK080\\b|\\bVox\\b Build|\\bArc\\b Build",
"DanewTablet": "DSlide.*\\b(700|701R|702|703R|704|802|970|971|972|973|974|1010|1012)\\b",
"TexetTablet": "NaviPad|TB-772A|TM-7045|TM-7055|TM-9750|TM-7016|TM-7024|TM-7026|TM-7041|TM-7043|TM-7047|TM-8041|TM-9741|TM-9747|TM-9748|TM-9751|TM-7022|TM-7021|TM-7020|TM-7011|TM-7010|TM-7023|TM-7025|TM-7037W|TM-7038W|TM-7027W|TM-9720|TM-9725|TM-9737W|TM-1020|TM-9738W|TM-9740|TM-9743W|TB-807A|TB-771A|TB-727A|TB-725A|TB-719A|TB-823A|TB-805A|TB-723A|TB-715A|TB-707A|TB-705A|TB-709A|TB-711A|TB-890HD|TB-880HD|TB-790HD|TB-780HD|TB-770HD|TB-721HD|TB-710HD|TB-434HD|TB-860HD|TB-840HD|TB-760HD|TB-750HD|TB-740HD|TB-730HD|TB-722HD|TB-720HD|TB-700HD|TB-500HD|TB-470HD|TB-431HD|TB-430HD|TB-506|TB-504|TB-446|TB-436|TB-416|TB-146SE|TB-126SE",
"PlaystationTablet": "Playstation.*(Portable|Vita)",
"TrekstorTablet": "ST10416-1|VT10416-1|ST70408-1|ST702xx-1|ST702xx-2|ST80208|ST97216|ST70104-2|VT10416-2|ST10216-2A|SurfTab",
"PyleAudioTablet": "\\b(PTBL10CEU|PTBL10C|PTBL72BC|PTBL72BCEU|PTBL7CEU|PTBL7C|PTBL92BC|PTBL92BCEU|PTBL9CEU|PTBL9CUK|PTBL9C)\\b",
"AdvanTablet": "Android.* \\b(E3A|T3X|T5C|T5B|T3E|T3C|T3B|T1J|T1F|T2A|T1H|T1i|E1C|T1-E|T5-A|T4|E1-B|T2Ci|T1-B|T1-D|O1-A|E1-A|T1-A|T3A|T4i)\\b ",
"DanyTechTablet": "Genius Tab G3|Genius Tab S2|Genius Tab Q3|Genius Tab G4|Genius Tab Q4|Genius Tab G-II|Genius TAB GII|Genius TAB GIII|Genius Tab S1",
"GalapadTablet": "Android.*\\bG1\\b",
"MicromaxTablet": "Funbook|Micromax.*\\b(P250|P560|P360|P362|P600|P300|P350|P500|P275)\\b",
"KarbonnTablet": "Android.*\\b(A39|A37|A34|ST8|ST10|ST7|Smart Tab3|Smart Tab2)\\b",
"AllFineTablet": "Fine7 Genius|Fine7 Shine|Fine7 Air|Fine8 Style|Fine9 More|Fine10 Joy|Fine11 Wide",
"PROSCANTablet": "\\b(PEM63|PLT1023G|PLT1041|PLT1044|PLT1044G|PLT1091|PLT4311|PLT4311PL|PLT4315|PLT7030|PLT7033|PLT7033D|PLT7035|PLT7035D|PLT7044K|PLT7045K|PLT7045KB|PLT7071KG|PLT7072|PLT7223G|PLT7225G|PLT7777G|PLT7810K|PLT7849G|PLT7851G|PLT7852G|PLT8015|PLT8031|PLT8034|PLT8036|PLT8080K|PLT8082|PLT8088|PLT8223G|PLT8234G|PLT8235G|PLT8816K|PLT9011|PLT9045K|PLT9233G|PLT9735|PLT9760G|PLT9770G)\\b",
"YONESTablet": "BQ1078|BC1003|BC1077|RK9702|BC9730|BC9001|IT9001|BC7008|BC7010|BC708|BC728|BC7012|BC7030|BC7027|BC7026",
"ChangJiaTablet": "TPC7102|TPC7103|TPC7105|TPC7106|TPC7107|TPC7201|TPC7203|TPC7205|TPC7210|TPC7708|TPC7709|TPC7712|TPC7110|TPC8101|TPC8103|TPC8105|TPC8106|TPC8203|TPC8205|TPC8503|TPC9106|TPC9701|TPC97101|TPC97103|TPC97105|TPC97106|TPC97111|TPC97113|TPC97203|TPC97603|TPC97809|TPC97205|TPC10101|TPC10103|TPC10106|TPC10111|TPC10203|TPC10205|TPC10503",
"GUTablet": "TX-A1301|TX-M9002|Q702|kf026",
"PointOfViewTablet": "TAB-P506|TAB-navi-7-3G-M|TAB-P517|TAB-P-527|TAB-P701|TAB-P703|TAB-P721|TAB-P731N|TAB-P741|TAB-P825|TAB-P905|TAB-P925|TAB-PR945|TAB-PL1015|TAB-P1025|TAB-PI1045|TAB-P1325|TAB-PROTAB[0-9]+|TAB-PROTAB25|TAB-PROTAB26|TAB-PROTAB27|TAB-PROTAB26XL|TAB-PROTAB2-IPS9|TAB-PROTAB30-IPS9|TAB-PROTAB25XXL|TAB-PROTAB26-IPS10|TAB-PROTAB30-IPS10",
"OvermaxTablet": "OV-(SteelCore|NewBase|Basecore|Baseone|Exellen|Quattor|EduTab|Solution|ACTION|BasicTab|TeddyTab|MagicTab|Stream|TB-08|TB-09)",
"HCLTablet": "HCL.*Tablet|Connect-3G-2.0|Connect-2G-2.0|ME Tablet U1|ME Tablet U2|ME Tablet G1|ME Tablet X1|ME Tablet Y2|ME Tablet Sync",
"DPSTablet": "DPS Dream 9|DPS Dual 7",
"VistureTablet": "V97 HD|i75 3G|Visture V4( HD)?|Visture V5( HD)?|Visture V10",
"CrestaTablet": "CTP(-)?810|CTP(-)?818|CTP(-)?828|CTP(-)?838|CTP(-)?888|CTP(-)?978|CTP(-)?980|CTP(-)?987|CTP(-)?988|CTP(-)?989",
"MediatekTablet": "\\bMT8125|MT8389|MT8135|MT8377\\b",
"ConcordeTablet": "Concorde([ ]+)?Tab|ConCorde ReadMan",
"GoCleverTablet": "GOCLEVER TAB|A7GOCLEVER|M1042|M7841|M742|R1042BK|R1041|TAB A975|TAB A7842|TAB A741|TAB A741L|TAB M723G|TAB M721|TAB A1021|TAB I921|TAB R721|TAB I720|TAB T76|TAB R70|TAB R76.2|TAB R106|TAB R83.2|TAB M813G|TAB I721|GCTA722|TAB I70|TAB I71|TAB S73|TAB R73|TAB R74|TAB R93|TAB R75|TAB R76.1|TAB A73|TAB A93|TAB A93.2|TAB T72|TAB R83|TAB R974|TAB R973|TAB A101|TAB A103|TAB A104|TAB A104.2|R105BK|M713G|A972BK|TAB A971|TAB R974.2|TAB R104|TAB R83.3|TAB A1042",
"ModecomTablet": "FreeTAB 9000|FreeTAB 7.4|FreeTAB 7004|FreeTAB 7800|FreeTAB 2096|FreeTAB 7.5|FreeTAB 1014|FreeTAB 1001 |FreeTAB 8001|FreeTAB 9706|FreeTAB 9702|FreeTAB 7003|FreeTAB 7002|FreeTAB 1002|FreeTAB 7801|FreeTAB 1331|FreeTAB 1004|FreeTAB 8002|FreeTAB 8014|FreeTAB 9704|FreeTAB 1003",
"VoninoTablet": "\\b(Argus[ _]?S|Diamond[ _]?79HD|Emerald[ _]?78E|Luna[ _]?70C|Onyx[ _]?S|Onyx[ _]?Z|Orin[ _]?HD|Orin[ _]?S|Otis[ _]?S|SpeedStar[ _]?S|Magnet[ _]?M9|Primus[ _]?94[ _]?3G|Primus[ _]?94HD|Primus[ _]?QS|Android.*\\bQ8\\b|Sirius[ _]?EVO[ _]?QS|Sirius[ _]?QS|Spirit[ _]?S)\\b",
"ECSTablet": "V07OT2|TM105A|S10OT1|TR10CS1",
"StorexTablet": "eZee[_']?(Tab|Go)[0-9]+|TabLC7|Looney Tunes Tab",
"VodafoneTablet": "SmartTab([ ]+)?[0-9]+|SmartTabII10|SmartTabII7|VF-1497",
"EssentielBTablet": "Smart[ ']?TAB[ ]+?[0-9]+|Family[ ']?TAB2",
"RossMoorTablet": "RM-790|RM-997|RMD-878G|RMD-974R|RMT-705A|RMT-701|RME-601|RMT-501|RMT-711",
"iMobileTablet": "i-mobile i-note",
"TolinoTablet": "tolino tab [0-9.]+|tolino shine",
"AudioSonicTablet": "\\bC-22Q|T7-QC|T-17B|T-17P\\b",
"AMPETablet": "Android.* A78 ",
"SkkTablet": "Android.* (SKYPAD|PHOENIX|CYCLOPS)",
"TecnoTablet": "TECNO P9",
"JXDTablet": "Android.* \\b(F3000|A3300|JXD5000|JXD3000|JXD2000|JXD300B|JXD300|S5800|S7800|S602b|S5110b|S7300|S5300|S602|S603|S5100|S5110|S601|S7100a|P3000F|P3000s|P101|P200s|P1000m|P200m|P9100|P1000s|S6600b|S908|P1000|P300|S18|S6600|S9100)\\b",
"iJoyTablet": "Tablet (Spirit 7|Essentia|Galatea|Fusion|Onix 7|Landa|Titan|Scooby|Deox|Stella|Themis|Argon|Unique 7|Sygnus|Hexen|Finity 7|Cream|Cream X2|Jade|Neon 7|Neron 7|Kandy|Scape|Saphyr 7|Rebel|Biox|Rebel|Rebel 8GB|Myst|Draco 7|Myst|Tab7-004|Myst|Tadeo Jones|Tablet Boing|Arrow|Draco Dual Cam|Aurix|Mint|Amity|Revolution|Finity 9|Neon 9|T9w|Amity 4GB Dual Cam|Stone 4GB|Stone 8GB|Andromeda|Silken|X2|Andromeda II|Halley|Flame|Saphyr 9,7|Touch 8|Planet|Triton|Unique 10|Hexen 10|Memphis 4GB|Memphis 8GB|Onix 10)",
"FX2Tablet": "FX2 PAD7|FX2 PAD10",
"XoroTablet": "KidsPAD 701|PAD[ ]?712|PAD[ ]?714|PAD[ ]?716|PAD[ ]?717|PAD[ ]?718|PAD[ ]?720|PAD[ ]?721|PAD[ ]?722|PAD[ ]?790|PAD[ ]?792|PAD[ ]?900|PAD[ ]?9715D|PAD[ ]?9716DR|PAD[ ]?9718DR|PAD[ ]?9719QR|PAD[ ]?9720QR|TelePAD1030|Telepad1032|TelePAD730|TelePAD731|TelePAD732|TelePAD735Q|TelePAD830|TelePAD9730|TelePAD795|MegaPAD 1331|MegaPAD 1851|MegaPAD 2151",
"ViewsonicTablet": "ViewPad 10pi|ViewPad 10e|ViewPad 10s|ViewPad E72|ViewPad7|ViewPad E100|ViewPad 7e|ViewSonic VB733|VB100a",
"OdysTablet": "LOOX|XENO10|ODYS[ -](Space|EVO|Xpress|NOON)|\\bXELIO\\b|Xelio10Pro|XELIO7PHONETAB|XELIO10EXTREME|XELIOPT2|NEO_QUAD10",
"CaptivaTablet": "CAPTIVA PAD",
"IconbitTablet": "NetTAB|NT-3702|NT-3702S|NT-3702S|NT-3603P|NT-3603P|NT-0704S|NT-0704S|NT-3805C|NT-3805C|NT-0806C|NT-0806C|NT-0909T|NT-0909T|NT-0907S|NT-0907S|NT-0902S|NT-0902S",
"TeclastTablet": "T98 4G|\\bP80\\b|\\bX90HD\\b|X98 Air|X98 Air 3G|\\bX89\\b|P80 3G|\\bX80h\\b|P98 Air|\\bX89HD\\b|P98 3G|\\bP90HD\\b|P89 3G|X98 3G|\\bP70h\\b|P79HD 3G|G18d 3G|\\bP79HD\\b|\\bP89s\\b|\\bA88\\b|\\bP10HD\\b|\\bP19HD\\b|G18 3G|\\bP78HD\\b|\\bA78\\b|\\bP75\\b|G17s 3G|G17h 3G|\\bP85t\\b|\\bP90\\b|\\bP11\\b|\\bP98t\\b|\\bP98HD\\b|\\bG18d\\b|\\bP85s\\b|\\bP11HD\\b|\\bP88s\\b|\\bA80HD\\b|\\bA80se\\b|\\bA10h\\b|\\bP89\\b|\\bP78s\\b|\\bG18\\b|\\bP85\\b|\\bA70h\\b|\\bA70\\b|\\bG17\\b|\\bP18\\b|\\bA80s\\b|\\bA11s\\b|\\bP88HD\\b|\\bA80h\\b|\\bP76s\\b|\\bP76h\\b|\\bP98\\b|\\bA10HD\\b|\\bP78\\b|\\bP88\\b|\\bA11\\b|\\bA10t\\b|\\bP76a\\b|\\bP76t\\b|\\bP76e\\b|\\bP85HD\\b|\\bP85a\\b|\\bP86\\b|\\bP75HD\\b|\\bP76v\\b|\\bA12\\b|\\bP75a\\b|\\bA15\\b|\\bP76Ti\\b|\\bP81HD\\b|\\bA10\\b|\\bT760VE\\b|\\bT720HD\\b|\\bP76\\b|\\bP73\\b|\\bP71\\b|\\bP72\\b|\\bT720SE\\b|\\bC520Ti\\b|\\bT760\\b|\\bT720VE\\b|T720-3GE|T720-WiFi",
"OndaTablet": "\\b(V975i|Vi30|VX530|V701|Vi60|V701s|Vi50|V801s|V719|Vx610w|VX610W|V819i|Vi10|VX580W|Vi10|V711s|V813|V811|V820w|V820|Vi20|V711|VI30W|V712|V891w|V972|V819w|V820w|Vi60|V820w|V711|V813s|V801|V819|V975s|V801|V819|V819|V818|V811|V712|V975m|V101w|V961w|V812|V818|V971|V971s|V919|V989|V116w|V102w|V973|Vi40)\\b[\\s]+",
"JaytechTablet": "TPC-PA762",
"BlaupunktTablet": "Endeavour 800NG|Endeavour 1010",
"DigmaTablet": "\\b(iDx10|iDx9|iDx8|iDx7|iDxD7|iDxD8|iDsQ8|iDsQ7|iDsQ8|iDsD10|iDnD7|3TS804H|iDsQ11|iDj7|iDs10)\\b",
"EvolioTablet": "ARIA_Mini_wifi|Aria[ _]Mini|Evolio X10|Evolio X7|Evolio X8|\\bEvotab\\b|\\bNeura\\b",
"LavaTablet": "QPAD E704|\\bIvoryS\\b|E-TAB IVORY|\\bE-TAB\\b",
"AocTablet": "MW0811|MW0812|MW0922|MTK8382|MW1031|MW0831|MW0821|MW0931|MW0712",
"MpmanTablet": "MP11 OCTA|MP10 OCTA|MPQC1114|MPQC1004|MPQC994|MPQC974|MPQC973|MPQC804|MPQC784|MPQC780|\\bMPG7\\b|MPDCG75|MPDCG71|MPDC1006|MP101DC|MPDC9000|MPDC905|MPDC706HD|MPDC706|MPDC705|MPDC110|MPDC100|MPDC99|MPDC97|MPDC88|MPDC8|MPDC77|MP709|MID701|MID711|MID170|MPDC703|MPQC1010",
"CelkonTablet": "CT695|CT888|CT[\\s]?910|CT7 Tab|CT9 Tab|CT3 Tab|CT2 Tab|CT1 Tab|C820|C720|\\bCT-1\\b",
"WolderTablet": "miTab \\b(DIAMOND|SPACE|BROOKLYN|NEO|FLY|MANHATTAN|FUNK|EVOLUTION|SKY|GOCAR|IRON|GENIUS|POP|MINT|EPSILON|BROADWAY|JUMP|HOP|LEGEND|NEW AGE|LINE|ADVANCE|FEEL|FOLLOW|LIKE|LINK|LIVE|THINK|FREEDOM|CHICAGO|CLEVELAND|BALTIMORE-GH|IOWA|BOSTON|SEATTLE|PHOENIX|DALLAS|IN 101|MasterChef)\\b",
"MiTablet": "\\bMI PAD\\b|\\bHM NOTE 1W\\b",
"NibiruTablet": "Nibiru M1|Nibiru Jupiter One",
"NexoTablet": "NEXO NOVA|NEXO 10|NEXO AVIO|NEXO FREE|NEXO GO|NEXO EVO|NEXO 3G|NEXO SMART|NEXO KIDDO|NEXO MOBI",
"LeaderTablet": "TBLT10Q|TBLT10I|TBL-10WDKB|TBL-10WDKBO2013|TBL-W230V2|TBL-W450|TBL-W500|SV572|TBLT7I|TBA-AC7-8G|TBLT79|TBL-8W16|TBL-10W32|TBL-10WKB|TBL-W100",
"UbislateTablet": "UbiSlate[\\s]?7C",
"PocketBookTablet": "Pocketbook",
"KocasoTablet": "\\b(TB-1207)\\b",
"HisenseTablet": "\\b(F5281|E2371)\\b",
"Hudl": "Hudl HT7S3|Hudl 2",
"TelstraTablet": "T-Hub2",
"GenericTablet": "Android.*\\b97D\\b|Tablet(?!.*PC)|BNTV250A|MID-WCDMA|LogicPD Zoom2|\\bA7EB\\b|CatNova8|A1_07|CT704|CT1002|\\bM721\\b|rk30sdk|\\bEVOTAB\\b|M758A|ET904|ALUMIUM10|Smartfren Tab|Endeavour 1010|Tablet-PC-4|Tagi Tab|\\bM6pro\\b|CT1020W|arc 10HD|\\bTP750\\b"
},
"oss": {
"AndroidOS": "Android",
"BlackBerryOS": "blackberry|\\bBB10\\b|rim tablet os",
"PalmOS": "PalmOS|avantgo|blazer|elaine|hiptop|palm|plucker|xiino",
"SymbianOS": "Symbian|SymbOS|Series60|Series40|SYB-[0-9]+|\\bS60\\b",
"WindowsMobileOS": "Windows CE.*(PPC|Smartphone|Mobile|[0-9]{3}x[0-9]{3})|Window Mobile|Windows Phone [0-9.]+|WCE;",
"WindowsPhoneOS": "Windows Phone 10.0|Windows Phone 8.1|Windows Phone 8.0|Windows Phone OS|XBLWP7|ZuneWP7|Windows NT 6.[23]; ARM;",
"iOS": "\\biPhone.*Mobile|\\biPod|\\biPad",
"MeeGoOS": "MeeGo",
"MaemoOS": "Maemo",
"JavaOS": "J2ME\/|\\bMIDP\\b|\\bCLDC\\b",
"webOS": "webOS|hpwOS",
"badaOS": "\\bBada\\b",
"BREWOS": "BREW"
},
"uas": {
"Chrome": "\\bCrMo\\b|CriOS|Android.*Chrome\/[.0-9]* (Mobile)?",
"Dolfin": "\\bDolfin\\b",
"Opera": "Opera.*Mini|Opera.*Mobi|Android.*Opera|Mobile.*OPR\/[0-9.]+|Coast\/[0-9.]+",
"Skyfire": "Skyfire",
"Edge": "Mobile Safari\/[.0-9]* Edge",
"IE": "IEMobile|MSIEMobile",
"Firefox": "fennec|firefox.*maemo|(Mobile|Tablet).*Firefox|Firefox.*Mobile|FxiOS",
"Bolt": "bolt",
"TeaShark": "teashark",
"Blazer": "Blazer",
"Safari": "Version.*Mobile.*Safari|Safari.*Mobile|MobileSafari",
"UCBrowser": "UC.*Browser|UCWEB",
"baiduboxapp": "baiduboxapp",
"baidubrowser": "baidubrowser",
"DiigoBrowser": "DiigoBrowser",
"Puffin": "Puffin",
"Mercury": "\\bMercury\\b",
"ObigoBrowser": "Obigo",
"NetFront": "NF-Browser",
"GenericBrowser": "NokiaBrowser|OviBrowser|OneBrowser|TwonkyBeamBrowser|SEMC.*Browser|FlyFlow|Minimo|NetFront|Novarra-Vision|MQQBrowser|MicroMessenger",
"PaleMoon": "Android.*PaleMoon|Mobile.*PaleMoon"
},
"props": {
"Mobile": "Mobile\/[VER]",
"Build": "Build\/[VER]",
"Version": "Version\/[VER]",
"VendorID": "VendorID\/[VER]",
"iPad": "iPad.*CPU[a-z ]+[VER]",
"iPhone": "iPhone.*CPU[a-z ]+[VER]",
"iPod": "iPod.*CPU[a-z ]+[VER]",
"Kindle": "Kindle\/[VER]",
"Chrome": [
"Chrome\/[VER]",
"CriOS\/[VER]",
"CrMo\/[VER]"
],
"Coast": [
"Coast\/[VER]"
],
"Dolfin": "Dolfin\/[VER]",
"Firefox": [
"Firefox\/[VER]",
"FxiOS\/[VER]"
],
"Fennec": "Fennec\/[VER]",
"Edge": "Edge\/[VER]",
"IE": [
"IEMobile\/[VER];",
"IEMobile [VER]",
"MSIE [VER];",
"Trident\/[0-9.]+;.*rv:[VER]"
],
"NetFront": "NetFront\/[VER]",
"NokiaBrowser": "NokiaBrowser\/[VER]",
"Opera": [
" OPR\/[VER]",
"Opera Mini\/[VER]",
"Version\/[VER]"
],
"Opera Mini": "Opera Mini\/[VER]",
"Opera Mobi": "Version\/[VER]",
"UC Browser": "UC Browser[VER]",
"MQQBrowser": "MQQBrowser\/[VER]",
"MicroMessenger": "MicroMessenger\/[VER]",
"baiduboxapp": "baiduboxapp\/[VER]",
"baidubrowser": "baidubrowser\/[VER]",
"SamsungBrowser": "SamsungBrowser\/[VER]",
"Iron": "Iron\/[VER]",
"Safari": [
"Version\/[VER]",
"Safari\/[VER]"
],
"Skyfire": "Skyfire\/[VER]",
"Tizen": "Tizen\/[VER]",
"Webkit": "webkit[ \/][VER]",
"PaleMoon": "PaleMoon\/[VER]",
"Gecko": "Gecko\/[VER]",
"Trident": "Trident\/[VER]",
"Presto": "Presto\/[VER]",
"Goanna": "Goanna\/[VER]",
"iOS": " \\bi?OS\\b [VER][ ;]{1}",
"Android": "Android [VER]",
"BlackBerry": [
"BlackBerry[\\w]+\/[VER]",
"BlackBerry.*Version\/[VER]",
"Version\/[VER]"
],
"BREW": "BREW [VER]",
"Java": "Java\/[VER]",
"Windows Phone OS": [
"Windows Phone OS [VER]",
"Windows Phone [VER]"
],
"Windows Phone": "Windows Phone [VER]",
"Windows CE": "Windows CE\/[VER]",
"Windows NT": "Windows NT [VER]",
"Symbian": [
"SymbianOS\/[VER]",
"Symbian\/[VER]"
],
"webOS": [
"webOS\/[VER]",
"hpwOS\/[VER];"
]
},
"utils": {
"Bot": "Googlebot|facebookexternalhit|AdsBot-Google|Google Keyword Suggestion|Facebot|YandexBot|YandexMobileBot|bingbot|ia_archiver|AhrefsBot|Ezooms|GSLFbot|WBSearchBot|Twitterbot|TweetmemeBot|Twikle|PaperLiBot|Wotbox|UnwindFetchor|Exabot|MJ12bot|YandexImages|TurnitinBot|Pingdom",
"MobileBot": "Googlebot-Mobile|AdsBot-Google-Mobile|YahooSeeker\/M1A1-R2D2",
"DesktopMode": "WPDesktop",
"TV": "SonyDTV|HbbTV",
"WebKit": "(webkit)[ \/]([\\w.]+)",
"Console": "\\b(Nintendo|Nintendo WiiU|Nintendo 3DS|PLAYSTATION|Xbox)\\b",
"Watch": "SM-V700"
}
};
// following patterns come from http://detectmobilebrowsers.com/
impl.detectMobileBrowsers = {
fullPattern: /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i,
shortPattern: /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i,
tabletPattern: /android|ipad|playbook|silk/i
};
var hasOwnProp = Object.prototype.hasOwnProperty,
isArray;
impl.FALLBACK_PHONE = 'UnknownPhone';
impl.FALLBACK_TABLET = 'UnknownTablet';
impl.FALLBACK_MOBILE = 'UnknownMobile';
isArray = ('isArray' in Array) ?
Array.isArray : function (value) { return Object.prototype.toString.call(value) === '[object Array]'; };
function equalIC(a, b) {
return a != null && b != null && a.toLowerCase() === b.toLowerCase();
}
function containsIC(array, value) {
var valueLC, i, len = array.length;
if (!len || !value) {
return false;
}
valueLC = value.toLowerCase();
for (i = 0; i < len; ++i) {
if (valueLC === array[i].toLowerCase()) {
return true;
}
}
return false;
}
function convertPropsToRegExp(object) {
for (var key in object) {
if (hasOwnProp.call(object, key)) {
object[key] = new RegExp(object[key], 'i');
}
}
}
(function init() {
var key, values, value, i, len, verPos, mobileDetectRules = impl.mobileDetectRules;
for (key in mobileDetectRules.props) {
if (hasOwnProp.call(mobileDetectRules.props, key)) {
values = mobileDetectRules.props[key];
if (!isArray(values)) {
values = [values];
}
len = values.length;
for (i = 0; i < len; ++i) {
value = values[i];
verPos = value.indexOf('[VER]');
if (verPos >= 0) {
value = value.substring(0, verPos) + '([\\w._\\+]+)' + value.substring(verPos + 5);
}
values[i] = new RegExp(value, 'i');
}
mobileDetectRules.props[key] = values;
}
}
convertPropsToRegExp(mobileDetectRules.oss);
convertPropsToRegExp(mobileDetectRules.phones);
convertPropsToRegExp(mobileDetectRules.tablets);
convertPropsToRegExp(mobileDetectRules.uas);
convertPropsToRegExp(mobileDetectRules.utils);
// copy some patterns to oss0 which are tested first (see issue#15)
mobileDetectRules.oss0 = {
WindowsPhoneOS: mobileDetectRules.oss.WindowsPhoneOS,
WindowsMobileOS: mobileDetectRules.oss.WindowsMobileOS
};
}());
/**
* Test userAgent string against a set of rules and find the first matched key.
* @param {Object} rules (key is String, value is RegExp)
* @param {String} userAgent the navigator.userAgent (or HTTP-Header 'User-Agent').
* @returns {String|null} the matched key if found, otherwise null
* @private
*/
impl.findMatch = function(rules, userAgent) {
for (var key in rules) {
if (hasOwnProp.call(rules, key)) {
if (rules[key].test(userAgent)) {
return key;
}
}
}
return null;
};
/**
* Test userAgent string against a set of rules and return an array of matched keys.
* @param {Object} rules (key is String, value is RegExp)
* @param {String} userAgent the navigator.userAgent (or HTTP-Header 'User-Agent').
* @returns {Array} an array of matched keys, may be empty when there is no match, but not null
* @private
*/
impl.findMatches = function(rules, userAgent) {
var result = [];
for (var key in rules) {
if (hasOwnProp.call(rules, key)) {
if (rules[key].test(userAgent)) {
result.push(key);
}
}
}
return result;
};
/**
* Check the version of the given property in the User-Agent.
*
* @param {String} propertyName
* @param {String} userAgent
* @return {String} version or null if version not found
* @private
*/
impl.getVersionStr = function (propertyName, userAgent) {
var props = impl.mobileDetectRules.props, patterns, i, len, match;
if (hasOwnProp.call(props, propertyName)) {
patterns = props[propertyName];
len = patterns.length;
for (i = 0; i < len; ++i) {
match = patterns[i].exec(userAgent);
if (match !== null) {
return match[1];
}
}
}
return null;
};
/**
* Check the version of the given property in the User-Agent.
* Will return a float number. (eg. 2_0 will return 2.0, 4.3.1 will return 4.31)
*
* @param {String} propertyName
* @param {String} userAgent
* @return {Number} version or NaN if version not found
* @private
*/
impl.getVersion = function (propertyName, userAgent) {
var version = impl.getVersionStr(propertyName, userAgent);
return version ? impl.prepareVersionNo(version) : NaN;
};
/**
* Prepare the version number.
*
* @param {String} version
* @return {Number} the version number as a floating number
* @private
*/
impl.prepareVersionNo = function (version) {
var numbers;
numbers = version.split(/[a-z._ \/\-]/i);
if (numbers.length === 1) {
version = numbers[0];
}
if (numbers.length > 1) {
version = numbers[0] + '.';
numbers.shift();
version += numbers.join('');
}
return Number(version);
};
impl.isMobileFallback = function (userAgent) {
return impl.detectMobileBrowsers.fullPattern.test(userAgent) ||
impl.detectMobileBrowsers.shortPattern.test(userAgent.substr(0,4));
};
impl.isTabletFallback = function (userAgent) {
return impl.detectMobileBrowsers.tabletPattern.test(userAgent);
};
impl.prepareDetectionCache = function (cache, userAgent, maxPhoneWidth) {
if (cache.mobile !== undefined) {
return;
}
var phone, tablet, phoneSized;
// first check for stronger tablet rules, then phone (see issue#5)
tablet = impl.findMatch(impl.mobileDetectRules.tablets, userAgent);
if (tablet) {
cache.mobile = cache.tablet = tablet;
cache.phone = null;
return; // unambiguously identified as tablet
}
phone = impl.findMatch(impl.mobileDetectRules.phones, userAgent);
if (phone) {
cache.mobile = cache.phone = phone;
cache.tablet = null;
return; // unambiguously identified as phone
}
// our rules haven't found a match -> try more general fallback rules
if (impl.isMobileFallback(userAgent)) {
phoneSized = MobileDetect.isPhoneSized(maxPhoneWidth);
if (phoneSized === undefined) {
cache.mobile = impl.FALLBACK_MOBILE;
cache.tablet = cache.phone = null;
} else if (phoneSized) {
cache.mobile = cache.phone = impl.FALLBACK_PHONE;
cache.tablet = null;
} else {
cache.mobile = cache.tablet = impl.FALLBACK_TABLET;
cache.phone = null;
}
} else if (impl.isTabletFallback(userAgent)) {
cache.mobile = cache.tablet = impl.FALLBACK_TABLET;
cache.phone = null;
} else {
// not mobile at all!
cache.mobile = cache.tablet = cache.phone = null;
}
};
// t is a reference to a MobileDetect instance
impl.mobileGrade = function (t) {
// impl note:
// To keep in sync w/ Mobile_Detect.php easily, the following code is tightly aligned to the PHP version.
// When changes are made in Mobile_Detect.php, copy this method and replace:
// $this-> / t.
// self::MOBILE_GRADE_(.) / '$1'
// , self::VERSION_TYPE_FLOAT / (nothing)
// isIOS() / os('iOS')
// [reg] / (nothing) <-- jsdelivr complaining about unescaped unicode character U+00AE
var $isMobile = t.mobile() !== null;
if (
// Apple iOS 3.2-5.1 - Tested on the original iPad (4.3 / 5.0), iPad 2 (4.3), iPad 3 (5.1), original iPhone (3.1), iPhone 3 (3.2), 3GS (4.3), 4 (4.3 / 5.0), and 4S (5.1)
t.os('iOS') && t.version('iPad')>=4.3 ||
t.os('iOS') && t.version('iPhone')>=3.1 ||
t.os('iOS') && t.version('iPod')>=3.1 ||
// Android 2.1-2.3 - Tested on the HTC Incredible (2.2), original Droid (2.2), HTC Aria (2.1), Google Nexus S (2.3). Functional on 1.5 & 1.6 but performance may be sluggish, tested on Google G1 (1.5)
// Android 3.1 (Honeycomb) - Tested on the Samsung Galaxy Tab 10.1 and Motorola XOOM
// Android 4.0 (ICS) - Tested on a Galaxy Nexus. Note: transition performance can be poor on upgraded devices
// Android 4.1 (Jelly Bean) - Tested on a Galaxy Nexus and Galaxy 7
( t.version('Android')>2.1 && t.is('Webkit') ) ||
// Windows Phone 7-7.5 - Tested on the HTC Surround (7.0) HTC Trophy (7.5), LG-E900 (7.5), Nokia Lumia 800
t.version('Windows Phone OS')>=7.0 ||
// Blackberry 7 - Tested on BlackBerry Torch 9810
// Blackberry 6.0 - Tested on the Torch 9800 and Style 9670
t.is('BlackBerry') && t.version('BlackBerry')>=6.0 ||
// Blackberry Playbook (1.0-2.0) - Tested on PlayBook
t.match('Playbook.*Tablet') ||
// Palm WebOS (1.4-2.0) - Tested on the Palm Pixi (1.4), Pre (1.4), Pre 2 (2.0)
( t.version('webOS')>=1.4 && t.match('Palm|Pre|Pixi') ) ||
// Palm WebOS 3.0 - Tested on HP TouchPad
t.match('hp.*TouchPad') ||
// Firefox Mobile (12 Beta) - Tested on Android 2.3 device
( t.is('Firefox') && t.version('Firefox')>=12 ) ||
// Chrome for Android - Tested on Android 4.0, 4.1 device
( t.is('Chrome') && t.is('AndroidOS') && t.version('Android')>=4.0 ) ||
// Skyfire 4.1 - Tested on Android 2.3 device
( t.is('Skyfire') && t.version('Skyfire')>=4.1 && t.is('AndroidOS') && t.version('Android')>=2.3 ) ||
// Opera Mobile 11.5-12: Tested on Android 2.3
( t.is('Opera') && t.version('Opera Mobi')>11 && t.is('AndroidOS') ) ||
// Meego 1.2 - Tested on Nokia 950 and N9
t.is('MeeGoOS') ||
// Tizen (pre-release) - Tested on early hardware
t.is('Tizen') ||
// Samsung Bada 2.0 - Tested on a Samsung Wave 3, Dolphin browser
// @todo: more tests here!
t.is('Dolfin') && t.version('Bada')>=2.0 ||
// UC Browser - Tested on Android 2.3 device
( (t.is('UC Browser') || t.is('Dolfin')) && t.version('Android')>=2.3 ) ||
// Kindle 3 and Fire - Tested on the built-in WebKit browser for each
( t.match('Kindle Fire') ||
t.is('Kindle') && t.version('Kindle')>=3.0 ) ||
// Nook Color 1.4.1 - Tested on original Nook Color, not Nook Tablet
t.is('AndroidOS') && t.is('NookTablet') ||
// Chrome Desktop 11-21 - Tested on OS X 10.7 and Windows 7
t.version('Chrome')>=11 && !$isMobile ||
// Safari Desktop 4-5 - Tested on OS X 10.7 and Windows 7
t.version('Safari')>=5.0 && !$isMobile ||
// Firefox Desktop 4-13 - Tested on OS X 10.7 and Windows 7
t.version('Firefox')>=4.0 && !$isMobile ||
// Internet Explorer 7-9 - Tested on Windows XP, Vista and 7
t.version('MSIE')>=7.0 && !$isMobile ||
// Opera Desktop 10-12 - Tested on OS X 10.7 and Windows 7
// @reference: http://my.opera.com/community/openweb/idopera/
t.version('Opera')>=10 && !$isMobile
){
return 'A';
}
if (
t.os('iOS') && t.version('iPad')<4.3 ||
t.os('iOS') && t.version('iPhone')<3.1 ||
t.os('iOS') && t.version('iPod')<3.1 ||
// Blackberry 5.0: Tested on the Storm 2 9550, Bold 9770
t.is('Blackberry') && t.version('BlackBerry')>=5 && t.version('BlackBerry')<6 ||
//Opera Mini (5.0-6.5) - Tested on iOS 3.2/4.3 and Android 2.3
( t.version('Opera Mini')>=5.0 && t.version('Opera Mini')<=6.5 &&
(t.version('Android')>=2.3 || t.is('iOS')) ) ||
// Nokia Symbian^3 - Tested on Nokia N8 (Symbian^3), C7 (Symbian^3), also works on N97 (Symbian^1)
t.match('NokiaN8|NokiaC7|N97.*Series60|Symbian/3') ||
// @todo: report this (tested on Nokia N71)
t.version('Opera Mobi')>=11 && t.is('SymbianOS')
){
return 'B';
}
if (
// Blackberry 4.x - Tested on the Curve 8330
t.version('BlackBerry')<5.0 ||
// Windows Mobile - Tested on the HTC Leo (WinMo 5.2)
t.match('MSIEMobile|Windows CE.*Mobile') || t.version('Windows Mobile')<=5.2
){
return 'C';
}
//All older smartphone platforms and featurephones - Any device that doesn't support media queries
//will receive the basic, C grade experience.
return 'C';
};
impl.detectOS = function (ua) {
return impl.findMatch(impl.mobileDetectRules.oss0, ua) ||
impl.findMatch(impl.mobileDetectRules.oss, ua);
};
impl.getDeviceSmallerSide = function () {
return window.screen.width < window.screen.height ?
window.screen.width :
window.screen.height;
};
/**
* Constructor for MobileDetect object.
*
* Such an object will keep a reference to the given user-agent string and cache most of the detect queries.
*
*
* @example
* var md = new MobileDetect(window.navigator.userAgent);
* if (md.mobile()) {
* location.href = (md.mobileGrade() === 'A') ? '/mobile/' : '/lynx/';
* }
*
*
* @param {string} userAgent typically taken from window.navigator.userAgent or http_header['User-Agent']
* @param {number} [maxPhoneWidth=600] only for browsers specify a value for the maximum
* width of smallest device side (in logical "CSS" pixels) until a device detected as mobile will be handled
* as phone.
* This is only used in cases where the device cannot be classified as phone or tablet.
* See Declaring Tablet Layouts
* for Android.
* If you provide a value < 0, then this "fuzzy" check is disabled.
* @constructor
* @global
*/
function MobileDetect(userAgent, maxPhoneWidth) {
this.ua = userAgent || '';
this._cache = {};
//600dp is typical 7" tablet minimum width
this.maxPhoneWidth = maxPhoneWidth || 600;
}
MobileDetect.prototype = {
constructor: MobileDetect,
/**
* Returns the detected phone or tablet type or null if it is not a mobile device.
*
* For a list of possible return values see {@link MobileDetect#phone} and {@link MobileDetect#tablet}.
*
* If the device is not detected by the regular expressions from Mobile-Detect, a test is made against
* the patterns of detectmobilebrowsers.com. If this test
* is positive, a value of UnknownPhone
, UnknownTablet
or
* UnknownMobile
is returned.
* When used in browser, the decision whether phone or tablet is made based on screen.width/height
.
*
* When used server-side (node.js), there is no way to tell the difference between UnknownTablet
* and UnknownMobile
, so you will get UnknownMobile
here.
* Be aware that since v1.0.0 in this special case you will get UnknownMobile
only for:
* {@link MobileDetect#mobile}, not for {@link MobileDetect#phone} and {@link MobileDetect#tablet}.
* In versions before v1.0.0 all 3 methods returned UnknownMobile
which was tedious to use.
*
* In most cases you will use the return value just as a boolean.
*
* @returns {String} the key for the phone family or tablet family, e.g. "Nexus".
* @function MobileDetect#mobile
*/
mobile: function () {
impl.prepareDetectionCache(this._cache, this.ua, this.maxPhoneWidth);
return this._cache.mobile;
},
/**
* Returns the detected phone type/family string or null.
*
* The returned tablet (family or producer) is one of following keys:
*
iPhone, BlackBerry, HTC, Nexus, Dell, Motorola, Samsung, LG, Sony, Asus,
* NokiaLumia, Micromax, Palm, Vertu, Pantech, Fly, Wiko, iMobile, SimValley,
* Wolfgang, Alcatel, Nintendo, Amoi, INQ, GenericPhone
*
* If the device is not detected by the regular expressions from Mobile-Detect, a test is made against
* the patterns of detectmobilebrowsers.com. If this test
* is positive, a value of UnknownPhone
or UnknownMobile
is returned.
* When used in browser, the decision whether phone or tablet is made based on screen.width/height
.
*
* When used server-side (node.js), there is no way to tell the difference between UnknownTablet
* and UnknownMobile
, so you will get null
here, while {@link MobileDetect#mobile}
* will return UnknownMobile
.
* Be aware that since v1.0.0 in this special case you will get UnknownMobile
only for:
* {@link MobileDetect#mobile}, not for {@link MobileDetect#phone} and {@link MobileDetect#tablet}.
* In versions before v1.0.0 all 3 methods returned UnknownMobile
which was tedious to use.
*
* In most cases you will use the return value just as a boolean.
*
* @returns {String} the key of the phone family or producer, e.g. "iPhone"
* @function MobileDetect#phone
*/
phone: function () {
impl.prepareDetectionCache(this._cache, this.ua, this.maxPhoneWidth);
return this._cache.phone;
},
/**
* Returns the detected tablet type/family string or null.
*
* The returned tablet (family or producer) is one of following keys:
*
iPad, NexusTablet, SamsungTablet, Kindle, SurfaceTablet, HPTablet, AsusTablet,
* BlackBerryTablet, HTCtablet, MotorolaTablet, NookTablet, AcerTablet,
* ToshibaTablet, LGTablet, FujitsuTablet, PrestigioTablet, LenovoTablet,
* DellTablet, YarvikTablet, MedionTablet, ArnovaTablet, IntensoTablet, IRUTablet,
* MegafonTablet, EbodaTablet, AllViewTablet, ArchosTablet, AinolTablet,
* NokiaLumiaTablet, SonyTablet, PhilipsTablet, CubeTablet, CobyTablet, MIDTablet,
* MSITablet, SMiTTablet, RockChipTablet, FlyTablet, bqTablet, HuaweiTablet,
* NecTablet, PantechTablet, BronchoTablet, VersusTablet, ZyncTablet,
* PositivoTablet, NabiTablet, KoboTablet, DanewTablet, TexetTablet,
* PlaystationTablet, TrekstorTablet, PyleAudioTablet, AdvanTablet,
* DanyTechTablet, GalapadTablet, MicromaxTablet, KarbonnTablet, AllFineTablet,
* PROSCANTablet, YONESTablet, ChangJiaTablet, GUTablet, PointOfViewTablet,
* OvermaxTablet, HCLTablet, DPSTablet, VistureTablet, CrestaTablet,
* MediatekTablet, ConcordeTablet, GoCleverTablet, ModecomTablet, VoninoTablet,
* ECSTablet, StorexTablet, VodafoneTablet, EssentielBTablet, RossMoorTablet,
* iMobileTablet, TolinoTablet, AudioSonicTablet, AMPETablet, SkkTablet,
* TecnoTablet, JXDTablet, iJoyTablet, FX2Tablet, XoroTablet, ViewsonicTablet,
* OdysTablet, CaptivaTablet, IconbitTablet, TeclastTablet, OndaTablet,
* JaytechTablet, BlaupunktTablet, DigmaTablet, EvolioTablet, LavaTablet,
* AocTablet, MpmanTablet, CelkonTablet, WolderTablet, MiTablet, NibiruTablet,
* NexoTablet, LeaderTablet, UbislateTablet, PocketBookTablet, KocasoTablet,
* HisenseTablet, Hudl, TelstraTablet, GenericTablet
*
* If the device is not detected by the regular expressions from Mobile-Detect, a test is made against
* the patterns of detectmobilebrowsers.com. If this test
* is positive, a value of UnknownTablet
or UnknownMobile
is returned.
* When used in browser, the decision whether phone or tablet is made based on screen.width/height
.
*
* When used server-side (node.js), there is no way to tell the difference between UnknownTablet
* and UnknownMobile
, so you will get null
here, while {@link MobileDetect#mobile}
* will return UnknownMobile
.
* Be aware that since v1.0.0 in this special case you will get UnknownMobile
only for:
* {@link MobileDetect#mobile}, not for {@link MobileDetect#phone} and {@link MobileDetect#tablet}.
* In versions before v1.0.0 all 3 methods returned UnknownMobile
which was tedious to use.
*
* In most cases you will use the return value just as a boolean.
*
* @returns {String} the key of the tablet family or producer, e.g. "SamsungTablet"
* @function MobileDetect#tablet
*/
tablet: function () {
impl.prepareDetectionCache(this._cache, this.ua, this.maxPhoneWidth);
return this._cache.tablet;
},
/**
* Returns the (first) detected user-agent string or null.
*
* The returned user-agent is one of following keys:
*
Chrome, Dolfin, Opera, Skyfire, Edge, IE, Firefox, Bolt, TeaShark, Blazer,
* Safari, UCBrowser, baiduboxapp, baidubrowser, DiigoBrowser, Puffin, Mercury,
* ObigoBrowser, NetFront, GenericBrowser, PaleMoon
*
* In most cases calling {@link MobileDetect#userAgent} will be sufficient. But there are rare
* cases where a mobile device pretends to be more than one particular browser. You can get the
* list of all matches with {@link MobileDetect#userAgents} or check for a particular value by
* providing one of the defined keys as first argument to {@link MobileDetect#is}.
*
* @returns {String} the key for the detected user-agent or null
* @function MobileDetect#userAgent
*/
userAgent: function () {
if (this._cache.userAgent === undefined) {
this._cache.userAgent = impl.findMatch(impl.mobileDetectRules.uas, this.ua);
}
return this._cache.userAgent;
},
/**
* Returns all detected user-agent strings.
*
* The array is empty or contains one or more of following keys:
*
Chrome, Dolfin, Opera, Skyfire, Edge, IE, Firefox, Bolt, TeaShark, Blazer,
* Safari, UCBrowser, baiduboxapp, baidubrowser, DiigoBrowser, Puffin, Mercury,
* ObigoBrowser, NetFront, GenericBrowser, PaleMoon
*
* In most cases calling {@link MobileDetect#userAgent} will be sufficient. But there are rare
* cases where a mobile device pretends to be more than one particular browser. You can get the
* list of all matches with {@link MobileDetect#userAgents} or check for a particular value by
* providing one of the defined keys as first argument to {@link MobileDetect#is}.
*
* @returns {Array} the array of detected user-agent keys or []
* @function MobileDetect#userAgents
*/
userAgents: function () {
if (this._cache.userAgents === undefined) {
this._cache.userAgents = impl.findMatches(impl.mobileDetectRules.uas, this.ua);
}
return this._cache.userAgents;
},
/**
* Returns the detected operating system string or null.
*
* The operating system is one of following keys:
*
AndroidOS, BlackBerryOS, PalmOS, SymbianOS, WindowsMobileOS, WindowsPhoneOS,
* iOS, MeeGoOS, MaemoOS, JavaOS, webOS, badaOS, BREWOS
*
* @returns {String} the key for the detected operating system.
* @function MobileDetect#os
*/
os: function () {
if (this._cache.os === undefined) {
this._cache.os = impl.detectOS(this.ua);
}
return this._cache.os;
},
/**
* Get the version (as Number) of the given property in the User-Agent.
*
* Will return a float number. (eg. 2_0 will return 2.0, 4.3.1 will return 4.31)
*
* @param {String} key a key defining a thing which has a version.
* You can use one of following keys:
*
Mobile, Build, Version, VendorID, iPad, iPhone, iPod, Kindle, Chrome, Coast,
* Dolfin, Firefox, Fennec, Edge, IE, NetFront, NokiaBrowser, Opera, Opera Mini,
* Opera Mobi, UC Browser, MQQBrowser, MicroMessenger, baiduboxapp, baidubrowser,
* SamsungBrowser, Iron, Safari, Skyfire, Tizen, Webkit, PaleMoon, Gecko, Trident,
* Presto, Goanna, iOS, Android, BlackBerry, BREW, Java, Windows Phone OS, Windows
* Phone, Windows CE, Windows NT, Symbian, webOS
*
* @returns {Number} the version as float or NaN if User-Agent doesn't contain this version.
* Be careful when comparing this value with '==' operator!
* @function MobileDetect#version
*/
version: function (key) {
return impl.getVersion(key, this.ua);
},
/**
* Get the version (as String) of the given property in the User-Agent.
*
*
* @param {String} key a key defining a thing which has a version.
* You can use one of following keys:
*
Mobile, Build, Version, VendorID, iPad, iPhone, iPod, Kindle, Chrome, Coast,
* Dolfin, Firefox, Fennec, Edge, IE, NetFront, NokiaBrowser, Opera, Opera Mini,
* Opera Mobi, UC Browser, MQQBrowser, MicroMessenger, baiduboxapp, baidubrowser,
* SamsungBrowser, Iron, Safari, Skyfire, Tizen, Webkit, PaleMoon, Gecko, Trident,
* Presto, Goanna, iOS, Android, BlackBerry, BREW, Java, Windows Phone OS, Windows
* Phone, Windows CE, Windows NT, Symbian, webOS
*
* @returns {String} the "raw" version as String or null if User-Agent doesn't contain this version.
*
* @function MobileDetect#versionStr
*/
versionStr: function (key) {
return impl.getVersionStr(key, this.ua);
},
/**
* Global test key against userAgent, os, phone, tablet and some other properties of userAgent string.
*
* @param {String} key the key (case-insensitive) of a userAgent, an operating system, phone or
* tablet family.
* For a complete list of possible values, see {@link MobileDetect#userAgent},
* {@link MobileDetect#os}, {@link MobileDetect#phone}, {@link MobileDetect#tablet}.
* Additionally you have following keys:
*
Bot, MobileBot, DesktopMode, TV, WebKit, Console, Watch
*
* @returns {boolean} true when the given key is one of the defined keys of userAgent, os, phone,
* tablet or one of the listed additional keys, otherwise false
* @function MobileDetect#is
*/
is: function (key) {
return containsIC(this.userAgents(), key) ||
equalIC(key, this.os()) ||
equalIC(key, this.phone()) ||
equalIC(key, this.tablet()) ||
containsIC(impl.findMatches(impl.mobileDetectRules.utils, this.ua), key);
},
/**
* Do a quick test against navigator::userAgent.
*
* @param {String|RegExp} pattern the pattern, either as String or RegExp
* (a string will be converted to a case-insensitive RegExp).
* @returns {boolean} true when the pattern matches, otherwise false
* @function MobileDetect#match
*/
match: function (pattern) {
if (!(pattern instanceof RegExp)) {
pattern = new RegExp(pattern, 'i');
}
return pattern.test(this.ua);
},
/**
* Checks whether the mobile device can be considered as phone regarding screen.width
.
*
* Obviously this method makes sense in browser environments only (not for Node.js)!
* @param {number} [maxPhoneWidth] the maximum logical pixels (aka. CSS-pixels) to be considered as phone.
* The argument is optional and if not present or falsy, the value of the constructor is taken.
* @returns {boolean|undefined} undefined
if screen size wasn't detectable, else true
* when screen.width is less or equal to maxPhoneWidth, otherwise false
.
* Will always return undefined
server-side.
*/
isPhoneSized: function (maxPhoneWidth) {
return MobileDetect.isPhoneSized(maxPhoneWidth || this.maxPhoneWidth);
},
/**
* Returns the mobile grade ('A', 'B', 'C').
*
* @returns {String} one of the mobile grades ('A', 'B', 'C').
* @function MobileDetect#mobileGrade
*/
mobileGrade: function () {
if (this._cache.grade === undefined) {
this._cache.grade = impl.mobileGrade(this);
}
return this._cache.grade;
}
};
// environment-dependent
if (typeof window !== 'undefined' && window.screen) {
MobileDetect.isPhoneSized = function (maxPhoneWidth) {
return maxPhoneWidth < 0 ? undefined : impl.getDeviceSmallerSide() <= maxPhoneWidth;
};
} else {
MobileDetect.isPhoneSized = function () {};
}
// should not be replaced by a completely new object - just overwrite existing methods
MobileDetect._impl = impl;
MobileDetect.version = '1.3.5 2016-11-14';
window.MobileDetect = MobileDetect;
})();
!function(){var t={72505:function(t,e,r){t.exports=r(18015)},35592:function(t,e,r){"use strict";var n=r(9516),o=r(7522),i=r(33948),a=r(79106),s=r(99615),c=r(62012),u=r(64202),l=r(94896),f=r(5845),p=r(28563),d=r(25656),h=r(95721);t.exports=function(t){return new Promise((function(e,r){var v,g=t.data,m=t.headers,y=t.responseType,w=t.withXSRFToken;function b(){t.cancelToken&&t.cancelToken.unsubscribe(v),t.signal&&t.signal.removeEventListener("abort",v)}n.isFormData(g)&&n.isStandardBrowserEnv()&&delete m["Content-Type"];var x=new XMLHttpRequest;if(t.auth){var S=t.auth.username||"",E=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";m.Authorization="Basic "+btoa(S+":"+E)}var O=s(t.baseURL,t.url);function _(){if(x){var n="getAllResponseHeaders"in x?c(x.getAllResponseHeaders()):null,i={data:y&&"text"!==y&&"json"!==y?x.response:x.responseText,status:x.status,statusText:x.statusText,headers:n,config:t,request:x};o((function(t){e(t),b()}),(function(t){r(t),b()}),i),x=null}}if(x.open(t.method.toUpperCase(),a(O,t.params,t.paramsSerializer),!0),x.timeout=t.timeout,"onloadend"in x?x.onloadend=_:x.onreadystatechange=function(){x&&4===x.readyState&&(0!==x.status||x.responseURL&&0===x.responseURL.indexOf("file:"))&&setTimeout(_)},x.onabort=function(){x&&(r(new f("Request aborted",f.ECONNABORTED,t,x)),x=null)},x.onerror=function(){r(new f("Network Error",f.ERR_NETWORK,t,x)),x=null},x.ontimeout=function(){var e=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",n=t.transitional||l;t.timeoutErrorMessage&&(e=t.timeoutErrorMessage),r(new f(e,n.clarifyTimeoutError?f.ETIMEDOUT:f.ECONNABORTED,t,x)),x=null},n.isStandardBrowserEnv()&&(w&&n.isFunction(w)&&(w=w(t)),w||!1!==w&&u(O))){var T=t.xsrfHeaderName&&t.xsrfCookieName&&i.read(t.xsrfCookieName);T&&(m[t.xsrfHeaderName]=T)}"setRequestHeader"in x&&n.forEach(m,(function(t,e){void 0===g&&"content-type"===e.toLowerCase()?delete m[e]:x.setRequestHeader(e,t)})),n.isUndefined(t.withCredentials)||(x.withCredentials=!!t.withCredentials),y&&"json"!==y&&(x.responseType=t.responseType),"function"==typeof t.onDownloadProgress&&x.addEventListener("progress",t.onDownloadProgress),"function"==typeof t.onUploadProgress&&x.upload&&x.upload.addEventListener("progress",t.onUploadProgress),(t.cancelToken||t.signal)&&(v=function(e){x&&(r(!e||e.type?new p(null,t,req):e),x.abort(),x=null)},t.cancelToken&&t.cancelToken.subscribe(v),t.signal&&(t.signal.aborted?v():t.signal.addEventListener("abort",v))),g||!1===g||0===g||""===g||(g=null);var R=d(O);R&&-1===h.protocols.indexOf(R)?r(new f("Unsupported protocol "+R+":",f.ERR_BAD_REQUEST,t)):x.send(g)}))}},18015:function(t,e,r){"use strict";var n=r(9516),o=r(69012),i=r(35155),a=r(85343),s=r(37412),c=r(94298);var u=function t(e){var r=new i(e),s=o(i.prototype.request,r);return n.extend(s,i.prototype,r),n.extend(s,r),s.create=function(r){return t(a(e,r))},s}(s);u.Axios=i,u.CanceledError=r(28563),u.CancelToken=r(3191),u.isCancel=r(93864),u.VERSION=r(49641).version,u.toFormData=r(26440),u.AxiosError=r(5845),u.Cancel=u.CanceledError,u.all=function(t){return Promise.all(t)},u.spread=r(17980),u.isAxiosError=r(45019),u.formToJSON=function(t){return c(n.isHTMLForm(t)?new FormData(t):t)},t.exports=u,t.exports.default=u},3191:function(t,e,r){"use strict";var n=r(28563);function o(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise((function(t){e=t}));var r=this;this.promise.then((function(t){if(r._listeners){for(var e=r._listeners.length;e-- >0;)r._listeners[e](t);r._listeners=null}})),this.promise.then=function(t){var e,n=new Promise((function(t){r.subscribe(t),e=t})).then(t);return n.cancel=function(){r.unsubscribe(e)},n},t((function(t,o,i){r.reason||(r.reason=new n(t,o,i),e(r.reason))}))}o.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},o.prototype.subscribe=function(t){this.reason?t(this.reason):this._listeners?this._listeners.push(t):this._listeners=[t]},o.prototype.unsubscribe=function(t){if(this._listeners){var e=this._listeners.indexOf(t);-1!==e&&this._listeners.splice(e,1)}},o.source=function(){var t;return{token:new o((function(e){t=e})),cancel:t}},t.exports=o},28563:function(t,e,r){"use strict";var n=r(5845);function o(t,e,r){n.call(this,null==t?"canceled":t,n.ERR_CANCELED,e,r),this.name="CanceledError"}r(9516).inherits(o,n,{__CANCEL__:!0}),t.exports=o},93864:function(t){"use strict";t.exports=function(t){return!(!t||!t.__CANCEL__)}},35155:function(t,e,r){"use strict";var n=r(9516),o=r(79106),i=r(83471),a=r(64490),s=r(85343),c=r(99615),u=r(34841),l=u.validators;function f(t){this.defaults=t,this.interceptors={request:new i,response:new i}}f.prototype.request=function(t,e){"string"==typeof t?(e=e||{}).url=t:e=t||{},(e=s(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var r=e.transitional;void 0!==r&&u.assertOptions(r,{silentJSONParsing:l.transitional(l.boolean),forcedJSONParsing:l.transitional(l.boolean),clarifyTimeoutError:l.transitional(l.boolean)},!1);var o=e.paramsSerializer;n.isFunction(o)&&(e.paramsSerializer={serialize:o});var i=[],c=!0;this.interceptors.request.forEach((function(t){"function"==typeof t.runWhen&&!1===t.runWhen(e)||(c=c&&t.synchronous,i.unshift(t.fulfilled,t.rejected))}));var f,p=[];if(this.interceptors.response.forEach((function(t){p.push(t.fulfilled,t.rejected)})),!c){var d=[a,void 0];for(Array.prototype.unshift.apply(d,i),d=d.concat(p),f=Promise.resolve(e);d.length;)f=f.then(d.shift(),d.shift());return f}for(var h=e;i.length;){var v=i.shift(),g=i.shift();try{h=v(h)}catch(m){g(m);break}}try{f=a(h)}catch(m){return Promise.reject(m)}for(;p.length;)f=f.then(p.shift(),p.shift());return f},f.prototype.getUri=function(t){t=s(this.defaults,t);var e=c(t.baseURL,t.url);return o(e,t.params,t.paramsSerializer)},n.forEach(["delete","get","head","options"],(function(t){f.prototype[t]=function(e,r){return this.request(s(r||{},{method:t,url:e,data:(r||{}).data}))}})),n.forEach(["post","put","patch"],(function(t){function e(e){return function(r,n,o){return this.request(s(o||{},{method:t,headers:e?{"Content-Type":"multipart/form-data"}:{},url:r,data:n}))}}f.prototype[t]=e(),f.prototype[t+"Form"]=e(!0)})),t.exports=f},5845:function(t,e,r){"use strict";var n=r(9516);function o(t,e,r,n,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=t,this.name="AxiosError",e&&(this.code=e),r&&(this.config=r),n&&(this.request=n),o&&(this.response=o)}n.inherits(o,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var i=o.prototype,a={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((function(t){a[t]={value:t}})),Object.defineProperties(o,a),Object.defineProperty(i,"isAxiosError",{value:!0}),o.from=function(t,e,r,a,s,c){var u=Object.create(i);return n.toFlatObject(t,u,(function(t){return t!==Error.prototype})),o.call(u,t.message,e,r,a,s),u.cause=t,u.name=t.name,c&&Object.assign(u,c),u},t.exports=o},83471:function(t,e,r){"use strict";var n=r(9516);function o(){this.handlers=[]}o.prototype.use=function(t,e,r){return this.handlers.push({fulfilled:t,rejected:e,synchronous:!!r&&r.synchronous,runWhen:r?r.runWhen:null}),this.handlers.length-1},o.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},o.prototype.clear=function(){this.handlers&&(this.handlers=[])},o.prototype.forEach=function(t){n.forEach(this.handlers,(function(e){null!==e&&t(e)}))},t.exports=o},99615:function(t,e,r){"use strict";var n=r(29137),o=r(84680);t.exports=function(t,e){return t&&!n(e)?o(t,e):e}},64490:function(t,e,r){"use strict";var n=r(9516),o=r(82881),i=r(93864),a=r(37412),s=r(28563),c=r(7018);function u(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new s}t.exports=function(t){return u(t),t.headers=t.headers||{},t.data=o.call(t,t.data,t.headers,null,t.transformRequest),c(t.headers,"Accept"),c(t.headers,"Content-Type"),t.headers=n.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),n.forEach(["delete","get","head","post","put","patch","common"],(function(e){delete t.headers[e]})),(t.adapter||a.adapter)(t).then((function(e){return u(t),e.data=o.call(t,e.data,e.headers,e.status,t.transformResponse),e}),(function(e){return i(e)||(u(t),e&&e.response&&(e.response.data=o.call(t,e.response.data,e.response.headers,e.response.status,t.transformResponse))),Promise.reject(e)}))}},85343:function(t,e,r){"use strict";var n=r(9516);t.exports=function(t,e){e=e||{};var r={};function o(t,e){return n.isPlainObject(t)&&n.isPlainObject(e)?n.merge(t,e):n.isEmptyObject(e)?n.merge({},t):n.isPlainObject(e)?n.merge({},e):n.isArray(e)?e.slice():e}function i(r){return n.isUndefined(e[r])?n.isUndefined(t[r])?void 0:o(void 0,t[r]):o(t[r],e[r])}function a(t){if(!n.isUndefined(e[t]))return o(void 0,e[t])}function s(r){return n.isUndefined(e[r])?n.isUndefined(t[r])?void 0:o(void 0,t[r]):o(void 0,e[r])}function c(r){return r in e?o(t[r],e[r]):r in t?o(void 0,t[r]):void 0}var u={url:a,method:a,data:a,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:c};return n.forEach(Object.keys(t).concat(Object.keys(e)),(function(t){var e=u[t]||i,o=e(t);n.isUndefined(o)&&e!==c||(r[t]=o)})),r}},7522:function(t,e,r){"use strict";var n=r(5845);t.exports=function(t,e,r){var o=r.config.validateStatus;r.status&&o&&!o(r.status)?e(new n("Request failed with status code "+r.status,[n.ERR_BAD_REQUEST,n.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r)):t(r)}},82881:function(t,e,r){"use strict";var n=r(9516),o=r(37412);t.exports=function(t,e,r,i){var a=this||o;return n.forEach(i,(function(n){t=n.call(a,t,e,r)})),t}},37412:function(t,e,r){"use strict";var n=r(9516),o=r(7018),i=r(5845),a=r(94896),s=r(26440),c=r(86069),u=r(95721),l=r(94298),f={"Content-Type":"application/x-www-form-urlencoded"};function p(t,e){!n.isUndefined(t)&&n.isUndefined(t["Content-Type"])&&(t["Content-Type"]=e)}var d,h={transitional:a,adapter:(("undefined"!=typeof XMLHttpRequest||"undefined"!=typeof process&&"[object process]"===Object.prototype.toString.call(process))&&(d=r(35592)),d),transformRequest:[function(t,e){o(e,"Accept"),o(e,"Content-Type");var r,i=e&&e["Content-Type"]||"",a=i.indexOf("application/json")>-1,u=n.isObject(t);if(u&&n.isHTMLForm(t)&&(t=new FormData(t)),n.isFormData(t))return a?JSON.stringify(l(t)):t;if(n.isArrayBuffer(t)||n.isBuffer(t)||n.isStream(t)||n.isFile(t)||n.isBlob(t))return t;if(n.isArrayBufferView(t))return t.buffer;if(n.isURLSearchParams(t))return p(e,"application/x-www-form-urlencoded;charset=utf-8"),t.toString();if(u){if(-1!==i.indexOf("application/x-www-form-urlencoded"))return c(t,this.formSerializer).toString();if((r=n.isFileList(t))||i.indexOf("multipart/form-data")>-1){var f=this.env&&this.env.FormData;return s(r?{"files[]":t}:t,f&&new f,this.formSerializer)}}return u||a?(p(e,"application/json"),function(t,e,r){if(n.isString(t))try{return(e||JSON.parse)(t),n.trim(t)}catch(o){if("SyntaxError"!==o.name)throw o}return(r||JSON.stringify)(t)}(t)):t}],transformResponse:[function(t){var e=this.transitional||h.transitional,r=e&&e.forcedJSONParsing,o="json"===this.responseType;if(t&&n.isString(t)&&(r&&!this.responseType||o)){var a=!(e&&e.silentJSONParsing)&&o;try{return JSON.parse(t)}catch(s){if(a){if("SyntaxError"===s.name)throw i.from(s,i.ERR_BAD_RESPONSE,this,null,this.response);throw s}}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:u.classes.FormData,Blob:u.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};n.forEach(["delete","get","head"],(function(t){h.headers[t]={}})),n.forEach(["post","put","patch"],(function(t){h.headers[t]=n.merge(f)})),t.exports=h},94896:function(t){"use strict";t.exports={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1}},30786:function(t,e,r){t.exports=r(51894)},49641:function(t){t.exports={version:"0.28.0"}},50170:function(t,e,r){"use strict";var n=r(26440);function o(t){var e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'\(\)~]|%20|%00/g,(function(t){return e[t]}))}function i(t,e){this._pairs=[],t&&n(t,this,e)}var a=i.prototype;a.append=function(t,e){this._pairs.push([t,e])},a.toString=function(t){var e=t?function(e){return t.call(this,e,o)}:o;return this._pairs.map((function(t){return e(t[0])+"="+e(t[1])}),"").join("&")},t.exports=i},69012:function(t){"use strict";t.exports=function(t,e){return function(){return t.apply(e,arguments)}}},79106:function(t,e,r){"use strict";var n=r(9516),o=r(50170);function i(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}t.exports=function(t,e,r){if(!e)return t;var a=t.indexOf("#");-1!==a&&(t=t.slice(0,a));var s=r&&r.encode||i,c=n.isURLSearchParams(e)?e.toString():new o(e,r).toString(s);return c&&(t+=(-1===t.indexOf("?")?"?":"&")+c),t}},84680:function(t){"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},33948:function(t,e,r){"use strict";var n=r(9516);t.exports=n.isStandardBrowserEnv()?{write:function(t,e,r,o,i,a){var s=[];s.push(t+"="+encodeURIComponent(e)),n.isNumber(r)&&s.push("expires="+new Date(r).toGMTString()),n.isString(o)&&s.push("path="+o),n.isString(i)&&s.push("domain="+i),!0===a&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},94298:function(t,e,r){"use strict";var n=r(9516);t.exports=function(t){function e(t,r,o,i){var a=t[i++],s=Number.isFinite(+a),c=i>=t.length;return a=!a&&n.isArray(o)?o.length:a,c?(n.hasOwnProperty(o,a)?o[a]=[o[a],r]:o[a]=r,!s):(o[a]&&n.isObject(o[a])||(o[a]=[]),e(t,r,o[a],i)&&n.isArray(o[a])&&(o[a]=function(t){var e,r,n={},o=Object.keys(t),i=o.length;for(e=0;e=0)return;a[e]="set-cookie"===e?(a[e]?a[e]:[]).concat([r]):a[e]?a[e]+", "+r:r}})),a):a}},25656:function(t){"use strict";t.exports=function(t){var e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}},17980:function(t){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},26440:function(t,e,r){"use strict";var n=r(9516),o=r(5845),i=r(30786);function a(t){return n.isPlainObject(t)||n.isArray(t)}function s(t){return n.endsWith(t,"[]")?t.slice(0,-2):t}function c(t,e,r){return t?t.concat(e).map((function(t,e){return t=s(t),!r&&e?"["+t+"]":t})).join(r?".":""):e}var u=n.toFlatObject(n,{},null,(function(t){return/^is[A-Z]/.test(t)}));t.exports=function(t,e,r){if(!n.isObject(t))throw new TypeError("target must be an object");e=e||new(i||FormData);var l,f=(r=n.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(t,e){return!n.isUndefined(e[t])}))).metaTokens,p=r.visitor||m,d=r.dots,h=r.indexes,v=(r.Blob||"undefined"!=typeof Blob&&Blob)&&((l=e)&&n.isFunction(l.append)&&"FormData"===l[Symbol.toStringTag]&&l[Symbol.iterator]);if(!n.isFunction(p))throw new TypeError("visitor must be a function");function g(t){if(null===t)return"";if(n.isDate(t))return t.toISOString();if(!v&&n.isBlob(t))throw new o("Blob is not supported. Use a Buffer instead.");return n.isArrayBuffer(t)||n.isTypedArray(t)?v&&"function"==typeof Blob?new Blob([t]):Buffer.from(t):t}function m(t,r,o){var i=t;if(t&&!o&&"object"==typeof t)if(n.endsWith(r,"{}"))r=f?r:r.slice(0,-2),t=JSON.stringify(t);else if(n.isArray(t)&&function(t){return n.isArray(t)&&!t.some(a)}(t)||n.isFileList(t)||n.endsWith(r,"[]")&&(i=n.toArray(t)))return r=s(r),i.forEach((function(t,o){!n.isUndefined(t)&&e.append(!0===h?c([r],o,d):null===h?r:r+"[]",g(t))})),!1;return!!a(t)||(e.append(c(o,r,d),g(t)),!1)}var y=[],w=Object.assign(u,{defaultVisitor:m,convertValue:g,isVisitable:a});if(!n.isObject(t))throw new TypeError("data must be an object");return function t(r,o){if(!n.isUndefined(r)){if(-1!==y.indexOf(r))throw Error("Circular reference detected in "+o.join("."));y.push(r),n.forEach(r,(function(r,i){!0===(!n.isUndefined(r)&&p.call(e,r,n.isString(i)?i.trim():i,o,w))&&t(r,o?o.concat(i):[i])})),y.pop()}}(t),e}},86069:function(t,e,r){"use strict";var n=r(9516),o=r(26440),i=r(95721);t.exports=function(t,e){return o(t,new i.classes.URLSearchParams,Object.assign({visitor:function(t,e,r,o){return i.isNode&&n.isBuffer(t)?(this.append(e,t.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},e))}},34841:function(t,e,r){"use strict";var n=r(49641).version,o=r(5845),i={};["object","boolean","number","function","string","symbol"].forEach((function(t,e){i[t]=function(r){return typeof r===t||"a"+(e<1?"n ":" ")+t}}));var a={};i.transitional=function(t,e,r){function i(t,e){return"[Axios v"+n+"] Transitional option '"+t+"'"+e+(r?". "+r:"")}return function(r,n,s){if(!1===t)throw new o(i(n," has been removed"+(e?" in "+e:"")),o.ERR_DEPRECATED);return e&&!a[n]&&(a[n]=!0,console.warn(i(n," has been deprecated since v"+e+" and will be removed in the near future"))),!t||t(r,n,s)}},t.exports={assertOptions:function(t,e,r){if("object"!=typeof t)throw new o("options must be an object",o.ERR_BAD_OPTION_VALUE);for(var n=Object.keys(t),i=n.length;i-- >0;){var a=n[i],s=e[a];if(s){var c=t[a],u=void 0===c||s(c,a,t);if(!0!==u)throw new o("option "+a+" must be "+u,o.ERR_BAD_OPTION_VALUE)}else if(!0!==r)throw new o("Unknown option "+a,o.ERR_BAD_OPTION)}},validators:i}},40243:function(t){"use strict";t.exports=FormData},32002:function(t,e,r){"use strict";var n=r(50170);t.exports="undefined"!=typeof URLSearchParams?URLSearchParams:n},29490:function(t,e,r){"use strict";t.exports={isBrowser:!0,classes:{URLSearchParams:r(32002),FormData:r(40243),Blob:Blob},protocols:["http","https","file","blob","url","data"]}},95721:function(t,e,r){"use strict";t.exports=r(29490)},9516:function(t,e,r){"use strict";var n,o=r(69012),i=Object.prototype.toString,a=(n=Object.create(null),function(t){var e=i.call(t);return n[e]||(n[e]=e.slice(8,-1).toLowerCase())});function s(t){return t=t.toLowerCase(),function(e){return a(e)===t}}function c(t){return Array.isArray(t)}function u(t){return void 0===t}var l=s("ArrayBuffer");function f(t){return"number"==typeof t}function p(t){return null!==t&&"object"==typeof t}function d(t){if("object"!==a(t))return!1;var e=Object.getPrototypeOf(t);return null===e||e===Object.prototype}var h=s("Date"),v=s("File"),g=s("Blob"),m=s("FileList");function y(t){return"[object Function]"===i.call(t)}var w=s("URLSearchParams");function b(t,e){if(null!=t)if("object"!=typeof t&&(t=[t]),c(t))for(var r=0,n=t.length;r0;)a=o[i],n&&!n(a,t,e)||s[a]||(e[a]=t[a],s[a]=!0);t=!1!==r&&Object.getPrototypeOf(t)}while(t&&(!r||r(t,e))&&t!==Object.prototype);return e},kindOf:a,kindOfTest:s,endsWith:function(t,e,r){t=String(t),(void 0===r||r>t.length)&&(r=t.length),r-=e.length;var n=t.indexOf(e,r);return-1!==n&&n===r},toArray:function(t){if(!t)return null;if(c(t))return t;var e=t.length;if(!f(e))return null;for(var r=new Array(e);e-- >0;)r[e]=t[e];return r},isTypedArray:S,isFileList:m,forEachEntry:function(t,e){for(var r,n=(t&&t[Symbol.iterator]).call(t);(r=n.next())&&!r.done;){var o=r.value;e.call(t,o[0],o[1])}},matchAll:function(t,e){for(var r,n=[];null!==(r=t.exec(e));)n.push(r);return n},isHTMLForm:O,hasOwnProperty:_}},44475:function(t){t.exports=window.jQuery},51894:function(t){t.exports="object"==typeof self?self.FormData:window.FormData},4633:function(t,e,r){var n=r(73738).default;function o(){"use strict";t.exports=o=function(){return r},t.exports.__esModule=!0,t.exports.default=t.exports;var e,r={},i=Object.prototype,a=i.hasOwnProperty,s=Object.defineProperty||function(t,e,r){t[e]=r.value},c="function"==typeof Symbol?Symbol:{},u=c.iterator||"@@iterator",l=c.asyncIterator||"@@asyncIterator",f=c.toStringTag||"@@toStringTag";function p(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{p({},"")}catch(e){p=function(t,e,r){return t[e]=r}}function d(t,e,r,n){var o=e&&e.prototype instanceof b?e:b,i=Object.create(o.prototype),a=new C(n||[]);return s(i,"_invoke",{value:k(t,r,a)}),i}function h(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}r.wrap=d;var v="suspendedStart",g="suspendedYield",m="executing",y="completed",w={};function b(){}function x(){}function S(){}var E={};p(E,u,(function(){return this}));var O=Object.getPrototypeOf,_=O&&O(O(I([])));_&&_!==i&&a.call(_,u)&&(E=_);var T=S.prototype=b.prototype=Object.create(E);function R(t){["next","throw","return"].forEach((function(e){p(t,e,(function(t){return this._invoke(e,t)}))}))}function P(t,e){function r(o,i,s,c){var u=h(t[o],t,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==n(f)&&a.call(f,"__await")?e.resolve(f.__await).then((function(t){r("next",t,s,c)}),(function(t){r("throw",t,s,c)})):e.resolve(f).then((function(t){l.value=t,s(l)}),(function(t){return r("throw",t,s,c)}))}c(u.arg)}var o;s(this,"_invoke",{value:function(t,n){function i(){return new e((function(e,o){r(t,n,e,o)}))}return o=o?o.then(i,i):i()}})}function k(t,r,n){var o=v;return function(i,a){if(o===m)throw new Error("Generator is already running");if(o===y){if("throw"===i)throw a;return{value:e,done:!0}}for(n.method=i,n.arg=a;;){var s=n.delegate;if(s){var c=A(s,n);if(c){if(c===w)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===v)throw o=y,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=m;var u=h(t,r,n);if("normal"===u.type){if(o=n.done?y:g,u.arg===w)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=y,n.method="throw",n.arg=u.arg)}}}function A(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,A(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),w;var i=h(o,t.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,w;var a=i.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,w):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,w)}function j(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function L(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function C(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(j,this),this.reset(!0)}function I(t){if(t||""===t){var r=t[u];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,i=function r(){for(;++o=0;--o){var i=this.tryEntries[o],s=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=a.call(i,"catchLoc"),u=a.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&a.call(n,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),L(r),w}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;L(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:I(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),w}},r}t.exports=o,t.exports.__esModule=!0,t.exports.default=t.exports},73738:function(t){function e(r){return t.exports=e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t.exports.__esModule=!0,t.exports.default=t.exports,e(r)}t.exports=e,t.exports.__esModule=!0,t.exports.default=t.exports},54756:function(t,e,r){var n=r(4633)();t.exports=n;try{regeneratorRuntime=n}catch(o){"object"==typeof globalThis?globalThis.regeneratorRuntime=n:Function("r","regeneratorRuntime = r")(n)}},79306:function(t,e,r){"use strict";var n=r(94901),o=r(16823),i=TypeError;t.exports=function(t){if(n(t))return t;throw new i(o(t)+" is not a function")}},35548:function(t,e,r){"use strict";var n=r(33517),o=r(16823),i=TypeError;t.exports=function(t){if(n(t))return t;throw new i(o(t)+" is not a constructor")}},73506:function(t,e,r){"use strict";var n=r(13925),o=String,i=TypeError;t.exports=function(t){if(n(t))return t;throw new i("Can't set "+o(t)+" as a prototype")}},6469:function(t,e,r){"use strict";var n=r(78227),o=r(2360),i=r(24913).f,a=n("unscopables"),s=Array.prototype;void 0===s[a]&&i(s,a,{configurable:!0,value:o(null)}),t.exports=function(t){s[a][t]=!0}},57829:function(t,e,r){"use strict";var n=r(68183).charAt;t.exports=function(t,e,r){return e+(r?n(t,e).length:1)}},90679:function(t,e,r){"use strict";var n=r(1625),o=TypeError;t.exports=function(t,e){if(n(e,t))return t;throw new o("Incorrect invocation")}},28551:function(t,e,r){"use strict";var n=r(20034),o=String,i=TypeError;t.exports=function(t){if(n(t))return t;throw new i(o(t)+" is not an object")}},90235:function(t,e,r){"use strict";var n=r(59213).forEach,o=r(34598)("forEach");t.exports=o?[].forEach:function(t){return n(this,t,arguments.length>1?arguments[1]:void 0)}},19617:function(t,e,r){"use strict";var n=r(25397),o=r(35610),i=r(26198),a=function(t){return function(e,r,a){var s=n(e),c=i(s);if(0===c)return!t&&-1;var u,l=o(a,c);if(t&&r!=r){for(;c>l;)if((u=s[l++])!=u)return!0}else for(;c>l;l++)if((t||l in s)&&s[l]===r)return t||l||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},59213:function(t,e,r){"use strict";var n=r(76080),o=r(79504),i=r(47055),a=r(48981),s=r(26198),c=r(1469),u=o([].push),l=function(t){var e=1===t,r=2===t,o=3===t,l=4===t,f=6===t,p=7===t,d=5===t||f;return function(h,v,g,m){for(var y,w,b=a(h),x=i(b),S=s(x),E=n(v,g),O=0,_=m||c,T=e?_(h,S):r||p?_(h,0):void 0;S>O;O++)if((d||O in x)&&(w=E(y=x[O],O,b),t))if(e)T[O]=w;else if(w)switch(t){case 3:return!0;case 5:return y;case 6:return O;case 2:u(T,y)}else switch(t){case 4:return!1;case 7:u(T,y)}return f?-1:o||l?l:T}};t.exports={forEach:l(0),map:l(1),filter:l(2),some:l(3),every:l(4),find:l(5),findIndex:l(6),filterReject:l(7)}},8379:function(t,e,r){"use strict";var n=r(18745),o=r(25397),i=r(91291),a=r(26198),s=r(34598),c=Math.min,u=[].lastIndexOf,l=!!u&&1/[1].lastIndexOf(1,-0)<0,f=s("lastIndexOf"),p=l||!f;t.exports=p?function(t){if(l)return n(u,this,arguments)||0;var e=o(this),r=a(e);if(0===r)return-1;var s=r-1;for(arguments.length>1&&(s=c(s,i(arguments[1]))),s<0&&(s=r+s);s>=0;s--)if(s in e&&e[s]===t)return s||0;return-1}:u},70597:function(t,e,r){"use strict";var n=r(79039),o=r(78227),i=r(77388),a=o("species");t.exports=function(t){return i>=51||!n((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},34598:function(t,e,r){"use strict";var n=r(79039);t.exports=function(t,e){var r=[][t];return!!r&&n((function(){r.call(null,e||function(){return 1},1)}))}},67680:function(t,e,r){"use strict";var n=r(79504);t.exports=n([].slice)},74488:function(t,e,r){"use strict";var n=r(67680),o=Math.floor,i=function(t,e){var r=t.length;if(r<8)for(var a,s,c=1;c0;)t[s]=t[--s];s!==c++&&(t[s]=a)}else for(var u=o(r/2),l=i(n(t,0,u),e),f=i(n(t,u),e),p=l.length,d=f.length,h=0,v=0;h9007199254740991)throw e("Maximum allowed index exceeded");return t}},67400:function(t){"use strict";t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},79296:function(t,e,r){"use strict";var n=r(4055)("span").classList,o=n&&n.constructor&&n.constructor.prototype;t.exports=o===Object.prototype?void 0:o},28834:function(t,e,r){"use strict";var n=r(79392).match(/firefox\/(\d+)/i);t.exports=!!n&&+n[1]},87290:function(t,e,r){"use strict";var n=r(50516),o=r(19088);t.exports=!n&&!o&&"object"==typeof window&&"object"==typeof document},50516:function(t){"use strict";t.exports="object"==typeof Deno&&Deno&&"object"==typeof Deno.version},63202:function(t,e,r){"use strict";var n=r(79392);t.exports=/MSIE|Trident/.test(n)},20028:function(t,e,r){"use strict";var n=r(79392);t.exports=/ipad|iphone|ipod/i.test(n)&&"undefined"!=typeof Pebble},48119:function(t,e,r){"use strict";var n=r(79392);t.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(n)},19088:function(t,e,r){"use strict";var n=r(24475),o=r(44576);t.exports="process"===o(n.process)},36765:function(t,e,r){"use strict";var n=r(79392);t.exports=/web0s(?!.*chrome)/i.test(n)},79392:function(t){"use strict";t.exports="undefined"!=typeof navigator&&String(navigator.userAgent)||""},77388:function(t,e,r){"use strict";var n,o,i=r(24475),a=r(79392),s=i.process,c=i.Deno,u=s&&s.versions||c&&c.version,l=u&&u.v8;l&&(o=(n=l.split("."))[0]>0&&n[0]<4?1:+(n[0]+n[1])),!o&&a&&(!(n=a.match(/Edge\/(\d+)/))||n[1]>=74)&&(n=a.match(/Chrome\/(\d+)/))&&(o=+n[1]),t.exports=o},89160:function(t,e,r){"use strict";var n=r(79392).match(/AppleWebKit\/(\d+)\./);t.exports=!!n&&+n[1]},88727:function(t){"use strict";t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},46518:function(t,e,r){"use strict";var n=r(24475),o=r(77347).f,i=r(66699),a=r(36840),s=r(39433),c=r(77740),u=r(92796);t.exports=function(t,e){var r,l,f,p,d,h=t.target,v=t.global,g=t.stat;if(r=v?n:g?n[h]||s(h,{}):n[h]&&n[h].prototype)for(l in e){if(p=e[l],f=t.dontCallGetSet?(d=o(r,l))&&d.value:r[l],!u(v?l:h+(g?".":"#")+l,t.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(t.sham||f&&f.sham)&&i(p,"sham",!0),a(r,l,p,t)}}},79039:function(t){"use strict";t.exports=function(t){try{return!!t()}catch(e){return!0}}},89228:function(t,e,r){"use strict";r(27495);var n=r(69565),o=r(36840),i=r(57323),a=r(79039),s=r(78227),c=r(66699),u=s("species"),l=RegExp.prototype;t.exports=function(t,e,r,f){var p=s(t),d=!a((function(){var e={};return e[p]=function(){return 7},7!==""[t](e)})),h=d&&!a((function(){var e=!1,r=/a/;return"split"===t&&((r={}).constructor={},r.constructor[u]=function(){return r},r.flags="",r[p]=/./[p]),r.exec=function(){return e=!0,null},r[p](""),!e}));if(!d||!h||r){var v=/./[p],g=e(p,""[t],(function(t,e,r,o,a){var s=e.exec;return s===i||s===l.exec?d&&!a?{done:!0,value:n(v,e,r,o)}:{done:!0,value:n(t,r,e,o)}:{done:!1}}));o(String.prototype,t,g[0]),o(l,p,g[1])}f&&c(l[p],"sham",!0)}},18745:function(t,e,r){"use strict";var n=r(40616),o=Function.prototype,i=o.apply,a=o.call;t.exports="object"==typeof Reflect&&Reflect.apply||(n?a.bind(i):function(){return a.apply(i,arguments)})},76080:function(t,e,r){"use strict";var n=r(27476),o=r(79306),i=r(40616),a=n(n.bind);t.exports=function(t,e){return o(t),void 0===e?t:i?a(t,e):function(){return t.apply(e,arguments)}}},40616:function(t,e,r){"use strict";var n=r(79039);t.exports=!n((function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")}))},69565:function(t,e,r){"use strict";var n=r(40616),o=Function.prototype.call;t.exports=n?o.bind(o):function(){return o.apply(o,arguments)}},10350:function(t,e,r){"use strict";var n=r(43724),o=r(39297),i=Function.prototype,a=n&&Object.getOwnPropertyDescriptor,s=o(i,"name"),c=s&&"something"===function(){}.name,u=s&&(!n||n&&a(i,"name").configurable);t.exports={EXISTS:s,PROPER:c,CONFIGURABLE:u}},46706:function(t,e,r){"use strict";var n=r(79504),o=r(79306);t.exports=function(t,e,r){try{return n(o(Object.getOwnPropertyDescriptor(t,e)[r]))}catch(i){}}},27476:function(t,e,r){"use strict";var n=r(44576),o=r(79504);t.exports=function(t){if("Function"===n(t))return o(t)}},79504:function(t,e,r){"use strict";var n=r(40616),o=Function.prototype,i=o.call,a=n&&o.bind.bind(i,i);t.exports=n?a:function(t){return function(){return i.apply(t,arguments)}}},97751:function(t,e,r){"use strict";var n=r(24475),o=r(94901);t.exports=function(t,e){return arguments.length<2?(r=n[t],o(r)?r:void 0):n[t]&&n[t][e];var r}},50851:function(t,e,r){"use strict";var n=r(36955),o=r(55966),i=r(64117),a=r(26269),s=r(78227)("iterator");t.exports=function(t){if(!i(t))return o(t,s)||o(t,"@@iterator")||a[n(t)]}},70081:function(t,e,r){"use strict";var n=r(69565),o=r(79306),i=r(28551),a=r(16823),s=r(50851),c=TypeError;t.exports=function(t,e){var r=arguments.length<2?s(t):e;if(o(r))return i(n(r,t));throw new c(a(t)+" is not iterable")}},66933:function(t,e,r){"use strict";var n=r(79504),o=r(34376),i=r(94901),a=r(44576),s=r(655),c=n([].push);t.exports=function(t){if(i(t))return t;if(o(t)){for(var e=t.length,r=[],n=0;n]*>)/g,l=/\$([$&'`]|\d{1,2})/g;t.exports=function(t,e,r,n,f,p){var d=r+t.length,h=n.length,v=l;return void 0!==f&&(f=o(f),v=u),s(p,v,(function(o,s){var u;switch(a(s,0)){case"$":return"$";case"&":return t;case"`":return c(e,0,r);case"'":return c(e,d);case"<":u=f[c(s,1,-1)];break;default:var l=+s;if(0===l)return o;if(l>h){var p=i(l/10);return 0===p?o:p<=h?void 0===n[p-1]?a(s,1):n[p-1]+a(s,1):o}u=n[l-1]}return void 0===u?"":u}))}},24475:function(t,e,r){"use strict";var n=function(t){return t&&t.Math===Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof r.g&&r.g)||n("object"==typeof this&&this)||function(){return this}()||Function("return this")()},39297:function(t,e,r){"use strict";var n=r(79504),o=r(48981),i=n({}.hasOwnProperty);t.exports=Object.hasOwn||function(t,e){return i(o(t),e)}},30421:function(t){"use strict";t.exports={}},90757:function(t){"use strict";t.exports=function(t,e){try{1===arguments.length?console.error(t):console.error(t,e)}catch(r){}}},20397:function(t,e,r){"use strict";var n=r(97751);t.exports=n("document","documentElement")},35917:function(t,e,r){"use strict";var n=r(43724),o=r(79039),i=r(4055);t.exports=!n&&!o((function(){return 7!==Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},47055:function(t,e,r){"use strict";var n=r(79504),o=r(79039),i=r(44576),a=Object,s=n("".split);t.exports=o((function(){return!a("z").propertyIsEnumerable(0)}))?function(t){return"String"===i(t)?s(t,""):a(t)}:a},23167:function(t,e,r){"use strict";var n=r(94901),o=r(20034),i=r(52967);t.exports=function(t,e,r){var a,s;return i&&n(a=e.constructor)&&a!==r&&o(s=a.prototype)&&s!==r.prototype&&i(t,s),t}},33706:function(t,e,r){"use strict";var n=r(79504),o=r(94901),i=r(77629),a=n(Function.toString);o(i.inspectSource)||(i.inspectSource=function(t){return a(t)}),t.exports=i.inspectSource},91181:function(t,e,r){"use strict";var n,o,i,a=r(58622),s=r(24475),c=r(20034),u=r(66699),l=r(39297),f=r(77629),p=r(66119),d=r(30421),h="Object already initialized",v=s.TypeError,g=s.WeakMap;if(a||f.state){var m=f.state||(f.state=new g);m.get=m.get,m.has=m.has,m.set=m.set,n=function(t,e){if(m.has(t))throw new v(h);return e.facade=t,m.set(t,e),e},o=function(t){return m.get(t)||{}},i=function(t){return m.has(t)}}else{var y=p("state");d[y]=!0,n=function(t,e){if(l(t,y))throw new v(h);return e.facade=t,u(t,y,e),e},o=function(t){return l(t,y)?t[y]:{}},i=function(t){return l(t,y)}}t.exports={set:n,get:o,has:i,enforce:function(t){return i(t)?o(t):n(t,{})},getterFor:function(t){return function(e){var r;if(!c(e)||(r=o(e)).type!==t)throw new v("Incompatible receiver, "+t+" required");return r}}}},44209:function(t,e,r){"use strict";var n=r(78227),o=r(26269),i=n("iterator"),a=Array.prototype;t.exports=function(t){return void 0!==t&&(o.Array===t||a[i]===t)}},34376:function(t,e,r){"use strict";var n=r(44576);t.exports=Array.isArray||function(t){return"Array"===n(t)}},94901:function(t){"use strict";var e="object"==typeof document&&document.all;t.exports=void 0===e&&void 0!==e?function(t){return"function"==typeof t||t===e}:function(t){return"function"==typeof t}},33517:function(t,e,r){"use strict";var n=r(79504),o=r(79039),i=r(94901),a=r(36955),s=r(97751),c=r(33706),u=function(){},l=s("Reflect","construct"),f=/^\s*(?:class|function)\b/,p=n(f.exec),d=!f.test(u),h=function(t){if(!i(t))return!1;try{return l(u,[],t),!0}catch(e){return!1}},v=function(t){if(!i(t))return!1;switch(a(t)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return d||!!p(f,c(t))}catch(e){return!0}};v.sham=!0,t.exports=!l||o((function(){var t;return h(h.call)||!h(Object)||!h((function(){t=!0}))||t}))?v:h},92796:function(t,e,r){"use strict";var n=r(79039),o=r(94901),i=/#|\.prototype\./,a=function(t,e){var r=c[s(t)];return r===l||r!==u&&(o(e)?n(e):!!e)},s=a.normalize=function(t){return String(t).replace(i,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",l=a.POLYFILL="P";t.exports=a},64117:function(t){"use strict";t.exports=function(t){return null==t}},20034:function(t,e,r){"use strict";var n=r(94901);t.exports=function(t){return"object"==typeof t?null!==t:n(t)}},13925:function(t,e,r){"use strict";var n=r(20034);t.exports=function(t){return n(t)||null===t}},96395:function(t){"use strict";t.exports=!1},60788:function(t,e,r){"use strict";var n=r(20034),o=r(44576),i=r(78227)("match");t.exports=function(t){var e;return n(t)&&(void 0!==(e=t[i])?!!e:"RegExp"===o(t))}},10757:function(t,e,r){"use strict";var n=r(97751),o=r(94901),i=r(1625),a=r(7040),s=Object;t.exports=a?function(t){return"symbol"==typeof t}:function(t){var e=n("Symbol");return o(e)&&i(e.prototype,s(t))}},72652:function(t,e,r){"use strict";var n=r(76080),o=r(69565),i=r(28551),a=r(16823),s=r(44209),c=r(26198),u=r(1625),l=r(70081),f=r(50851),p=r(9539),d=TypeError,h=function(t,e){this.stopped=t,this.result=e},v=h.prototype;t.exports=function(t,e,r){var g,m,y,w,b,x,S,E=r&&r.that,O=!(!r||!r.AS_ENTRIES),_=!(!r||!r.IS_RECORD),T=!(!r||!r.IS_ITERATOR),R=!(!r||!r.INTERRUPTED),P=n(e,E),k=function(t){return g&&p(g,"normal",t),new h(!0,t)},A=function(t){return O?(i(t),R?P(t[0],t[1],k):P(t[0],t[1])):R?P(t,k):P(t)};if(_)g=t.iterator;else if(T)g=t;else{if(!(m=f(t)))throw new d(a(t)+" is not iterable");if(s(m)){for(y=0,w=c(t);w>y;y++)if((b=A(t[y]))&&u(v,b))return b;return new h(!1)}g=l(t,m)}for(x=_?t.next:g.next;!(S=o(x,g)).done;){try{b=A(S.value)}catch(j){p(g,"throw",j)}if("object"==typeof b&&b&&u(v,b))return b}return new h(!1)}},9539:function(t,e,r){"use strict";var n=r(69565),o=r(28551),i=r(55966);t.exports=function(t,e,r){var a,s;o(t);try{if(!(a=i(t,"return"))){if("throw"===e)throw r;return r}a=n(a,t)}catch(c){s=!0,a=c}if("throw"===e)throw r;if(s)throw a;return o(a),r}},33994:function(t,e,r){"use strict";var n=r(57657).IteratorPrototype,o=r(2360),i=r(6980),a=r(10687),s=r(26269),c=function(){return this};t.exports=function(t,e,r,u){var l=e+" Iterator";return t.prototype=o(n,{next:i(+!u,r)}),a(t,l,!1,!0),s[l]=c,t}},51088:function(t,e,r){"use strict";var n=r(46518),o=r(69565),i=r(96395),a=r(10350),s=r(94901),c=r(33994),u=r(42787),l=r(52967),f=r(10687),p=r(66699),d=r(36840),h=r(78227),v=r(26269),g=r(57657),m=a.PROPER,y=a.CONFIGURABLE,w=g.IteratorPrototype,b=g.BUGGY_SAFARI_ITERATORS,x=h("iterator"),S="keys",E="values",O="entries",_=function(){return this};t.exports=function(t,e,r,a,h,g,T){c(r,e,a);var R,P,k,A=function(t){if(t===h&&N)return N;if(!b&&t&&t in C)return C[t];switch(t){case S:case E:case O:return function(){return new r(this,t)}}return function(){return new r(this)}},j=e+" Iterator",L=!1,C=t.prototype,I=C[x]||C["@@iterator"]||h&&C[h],N=!b&&I||A(h),D="Array"===e&&C.entries||I;if(D&&(R=u(D.call(new t)))!==Object.prototype&&R.next&&(i||u(R)===w||(l?l(R,w):s(R[x])||d(R,x,_)),f(R,j,!0,!0),i&&(v[j]=_)),m&&h===E&&I&&I.name!==E&&(!i&&y?p(C,"name",E):(L=!0,N=function(){return o(I,this)})),h)if(P={values:A(E),keys:g?N:A(S),entries:A(O)},T)for(k in P)(b||L||!(k in C))&&d(C,k,P[k]);else n({target:e,proto:!0,forced:b||L},P);return i&&!T||C[x]===N||d(C,x,N,{name:h}),v[e]=N,P}},57657:function(t,e,r){"use strict";var n,o,i,a=r(79039),s=r(94901),c=r(20034),u=r(2360),l=r(42787),f=r(36840),p=r(78227),d=r(96395),h=p("iterator"),v=!1;[].keys&&("next"in(i=[].keys())?(o=l(l(i)))!==Object.prototype&&(n=o):v=!0),!c(n)||a((function(){var t={};return n[h].call(t)!==t}))?n={}:d&&(n=u(n)),s(n[h])||f(n,h,(function(){return this})),t.exports={IteratorPrototype:n,BUGGY_SAFARI_ITERATORS:v}},26269:function(t){"use strict";t.exports={}},26198:function(t,e,r){"use strict";var n=r(18014);t.exports=function(t){return n(t.length)}},50283:function(t,e,r){"use strict";var n=r(79504),o=r(79039),i=r(94901),a=r(39297),s=r(43724),c=r(10350).CONFIGURABLE,u=r(33706),l=r(91181),f=l.enforce,p=l.get,d=String,h=Object.defineProperty,v=n("".slice),g=n("".replace),m=n([].join),y=s&&!o((function(){return 8!==h((function(){}),"length",{value:8}).length})),w=String(String).split("String"),b=t.exports=function(t,e,r){"Symbol("===v(d(e),0,7)&&(e="["+g(d(e),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),r&&r.getter&&(e="get "+e),r&&r.setter&&(e="set "+e),(!a(t,"name")||c&&t.name!==e)&&(s?h(t,"name",{value:e,configurable:!0}):t.name=e),y&&r&&a(r,"arity")&&t.length!==r.arity&&h(t,"length",{value:r.arity});try{r&&a(r,"constructor")&&r.constructor?s&&h(t,"prototype",{writable:!1}):t.prototype&&(t.prototype=void 0)}catch(o){}var n=f(t);return a(n,"source")||(n.source=m(w,"string"==typeof e?e:"")),t};Function.prototype.toString=b((function(){return i(this)&&p(this).source||u(this)}),"toString")},80741:function(t){"use strict";var e=Math.ceil,r=Math.floor;t.exports=Math.trunc||function(t){var n=+t;return(n>0?r:e)(n)}},91955:function(t,e,r){"use strict";var n,o,i,a,s,c=r(24475),u=r(93389),l=r(76080),f=r(59225).set,p=r(18265),d=r(48119),h=r(20028),v=r(36765),g=r(19088),m=c.MutationObserver||c.WebKitMutationObserver,y=c.document,w=c.process,b=c.Promise,x=u("queueMicrotask");if(!x){var S=new p,E=function(){var t,e;for(g&&(t=w.domain)&&t.exit();e=S.get();)try{e()}catch(r){throw S.head&&n(),r}t&&t.enter()};d||g||v||!m||!y?!h&&b&&b.resolve?((a=b.resolve(void 0)).constructor=b,s=l(a.then,a),n=function(){s(E)}):g?n=function(){w.nextTick(E)}:(f=l(f,c),n=function(){f(E)}):(o=!0,i=y.createTextNode(""),new m(E).observe(i,{characterData:!0}),n=function(){i.data=o=!o}),x=function(t){S.head||n(),S.add(t)}}t.exports=x},36043:function(t,e,r){"use strict";var n=r(79306),o=TypeError,i=function(t){var e,r;this.promise=new t((function(t,n){if(void 0!==e||void 0!==r)throw new o("Bad Promise constructor");e=t,r=n})),this.resolve=n(e),this.reject=n(r)};t.exports.f=function(t){return new i(t)}},2360:function(t,e,r){"use strict";var n,o=r(28551),i=r(96801),a=r(88727),s=r(30421),c=r(20397),u=r(4055),l=r(66119),f="prototype",p="script",d=l("IE_PROTO"),h=function(){},v=function(t){return"<"+p+">"+t+""+p+">"},g=function(t){t.write(v("")),t.close();var e=t.parentWindow.Object;return t=null,e},m=function(){try{n=new ActiveXObject("htmlfile")}catch(i){}var t,e,r;m="undefined"!=typeof document?document.domain&&n?g(n):(e=u("iframe"),r="java"+p+":",e.style.display="none",c.appendChild(e),e.src=String(r),(t=e.contentWindow.document).open(),t.write(v("document.F=Object")),t.close(),t.F):g(n);for(var o=a.length;o--;)delete m[f][a[o]];return m()};s[d]=!0,t.exports=Object.create||function(t,e){var r;return null!==t?(h[f]=o(t),r=new h,h[f]=null,r[d]=t):r=m(),void 0===e?r:i.f(r,e)}},96801:function(t,e,r){"use strict";var n=r(43724),o=r(48686),i=r(24913),a=r(28551),s=r(25397),c=r(71072);e.f=n&&!o?Object.defineProperties:function(t,e){a(t);for(var r,n=s(e),o=c(e),u=o.length,l=0;u>l;)i.f(t,r=o[l++],n[r]);return t}},24913:function(t,e,r){"use strict";var n=r(43724),o=r(35917),i=r(48686),a=r(28551),s=r(56969),c=TypeError,u=Object.defineProperty,l=Object.getOwnPropertyDescriptor,f="enumerable",p="configurable",d="writable";e.f=n?i?function(t,e,r){if(a(t),e=s(e),a(r),"function"==typeof t&&"prototype"===e&&"value"in r&&d in r&&!r[d]){var n=l(t,e);n&&n[d]&&(t[e]=r.value,r={configurable:p in r?r[p]:n[p],enumerable:f in r?r[f]:n[f],writable:!1})}return u(t,e,r)}:u:function(t,e,r){if(a(t),e=s(e),a(r),o)try{return u(t,e,r)}catch(n){}if("get"in r||"set"in r)throw new c("Accessors not supported");return"value"in r&&(t[e]=r.value),t}},77347:function(t,e,r){"use strict";var n=r(43724),o=r(69565),i=r(48773),a=r(6980),s=r(25397),c=r(56969),u=r(39297),l=r(35917),f=Object.getOwnPropertyDescriptor;e.f=n?f:function(t,e){if(t=s(t),e=c(e),l)try{return f(t,e)}catch(r){}if(u(t,e))return a(!o(i.f,t,e),t[e])}},10298:function(t,e,r){"use strict";var n=r(44576),o=r(25397),i=r(38480).f,a=r(67680),s="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return s&&"Window"===n(t)?function(t){try{return i(t)}catch(e){return a(s)}}(t):i(o(t))}},38480:function(t,e,r){"use strict";var n=r(61828),o=r(88727).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return n(t,o)}},33717:function(t,e){"use strict";e.f=Object.getOwnPropertySymbols},42787:function(t,e,r){"use strict";var n=r(39297),o=r(94901),i=r(48981),a=r(66119),s=r(12211),c=a("IE_PROTO"),u=Object,l=u.prototype;t.exports=s?u.getPrototypeOf:function(t){var e=i(t);if(n(e,c))return e[c];var r=e.constructor;return o(r)&&e instanceof r?r.prototype:e instanceof u?l:null}},1625:function(t,e,r){"use strict";var n=r(79504);t.exports=n({}.isPrototypeOf)},61828:function(t,e,r){"use strict";var n=r(79504),o=r(39297),i=r(25397),a=r(19617).indexOf,s=r(30421),c=n([].push);t.exports=function(t,e){var r,n=i(t),u=0,l=[];for(r in n)!o(s,r)&&o(n,r)&&c(l,r);for(;e.length>u;)o(n,r=e[u++])&&(~a(l,r)||c(l,r));return l}},71072:function(t,e,r){"use strict";var n=r(61828),o=r(88727);t.exports=Object.keys||function(t){return n(t,o)}},48773:function(t,e){"use strict";var r={}.propertyIsEnumerable,n=Object.getOwnPropertyDescriptor,o=n&&!r.call({1:2},1);e.f=o?function(t){var e=n(this,t);return!!e&&e.enumerable}:r},52967:function(t,e,r){"use strict";var n=r(46706),o=r(28551),i=r(73506);t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,r={};try{(t=n(Object.prototype,"__proto__","set"))(r,[]),e=r instanceof Array}catch(a){}return function(r,n){return o(r),i(n),e?t(r,n):r.__proto__=n,r}}():void 0)},32357:function(t,e,r){"use strict";var n=r(43724),o=r(79039),i=r(79504),a=r(42787),s=r(71072),c=r(25397),u=i(r(48773).f),l=i([].push),f=n&&o((function(){var t=Object.create(null);return t[2]=2,!u(t,2)})),p=function(t){return function(e){for(var r,o=c(e),i=s(o),p=f&&null===a(o),d=i.length,h=0,v=[];d>h;)r=i[h++],n&&!(p?r in o:u(o,r))||l(v,t?[r,o[r]]:o[r]);return v}};t.exports={entries:p(!0),values:p(!1)}},53179:function(t,e,r){"use strict";var n=r(92140),o=r(36955);t.exports=n?{}.toString:function(){return"[object "+o(this)+"]"}},84270:function(t,e,r){"use strict";var n=r(69565),o=r(94901),i=r(20034),a=TypeError;t.exports=function(t,e){var r,s;if("string"===e&&o(r=t.toString)&&!i(s=n(r,t)))return s;if(o(r=t.valueOf)&&!i(s=n(r,t)))return s;if("string"!==e&&o(r=t.toString)&&!i(s=n(r,t)))return s;throw new a("Can't convert object to primitive value")}},35031:function(t,e,r){"use strict";var n=r(97751),o=r(79504),i=r(38480),a=r(33717),s=r(28551),c=o([].concat);t.exports=n("Reflect","ownKeys")||function(t){var e=i.f(s(t)),r=a.f;return r?c(e,r(t)):e}},19167:function(t,e,r){"use strict";var n=r(24475);t.exports=n},1103:function(t){"use strict";t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},10916:function(t,e,r){"use strict";var n=r(24475),o=r(80550),i=r(94901),a=r(92796),s=r(33706),c=r(78227),u=r(87290),l=r(50516),f=r(96395),p=r(77388),d=o&&o.prototype,h=c("species"),v=!1,g=i(n.PromiseRejectionEvent),m=a("Promise",(function(){var t=s(o),e=t!==String(o);if(!e&&66===p)return!0;if(f&&(!d.catch||!d.finally))return!0;if(!p||p<51||!/native code/.test(t)){var r=new o((function(t){t(1)})),n=function(t){t((function(){}),(function(){}))};if((r.constructor={})[h]=n,!(v=r.then((function(){}))instanceof n))return!0}return!e&&(u||l)&&!g}));t.exports={CONSTRUCTOR:m,REJECTION_EVENT:g,SUBCLASSING:v}},80550:function(t,e,r){"use strict";var n=r(24475);t.exports=n.Promise},93438:function(t,e,r){"use strict";var n=r(28551),o=r(20034),i=r(36043);t.exports=function(t,e){if(n(t),o(e)&&e.constructor===t)return e;var r=i.f(t);return(0,r.resolve)(e),r.promise}},90537:function(t,e,r){"use strict";var n=r(80550),o=r(84428),i=r(10916).CONSTRUCTOR;t.exports=i||!o((function(t){n.all(t).then(void 0,(function(){}))}))},11056:function(t,e,r){"use strict";var n=r(24913).f;t.exports=function(t,e,r){r in t||n(t,r,{configurable:!0,get:function(){return e[r]},set:function(t){e[r]=t}})}},18265:function(t){"use strict";var e=function(){this.head=null,this.tail=null};e.prototype={add:function(t){var e={item:t,next:null},r=this.tail;r?r.next=e:this.head=e,this.tail=e},get:function(){var t=this.head;if(t)return null===(this.head=t.next)&&(this.tail=null),t.item}},t.exports=e},56682:function(t,e,r){"use strict";var n=r(69565),o=r(28551),i=r(94901),a=r(44576),s=r(57323),c=TypeError;t.exports=function(t,e){var r=t.exec;if(i(r)){var u=n(r,t,e);return null!==u&&o(u),u}if("RegExp"===a(t))return n(s,t,e);throw new c("RegExp#exec called on incompatible receiver")}},57323:function(t,e,r){"use strict";var n,o,i=r(69565),a=r(79504),s=r(655),c=r(67979),u=r(58429),l=r(25745),f=r(2360),p=r(91181).get,d=r(83635),h=r(18814),v=l("native-string-replace",String.prototype.replace),g=RegExp.prototype.exec,m=g,y=a("".charAt),w=a("".indexOf),b=a("".replace),x=a("".slice),S=(o=/b*/g,i(g,n=/a/,"a"),i(g,o,"a"),0!==n.lastIndex||0!==o.lastIndex),E=u.BROKEN_CARET,O=void 0!==/()??/.exec("")[1];(S||O||E||d||h)&&(m=function(t){var e,r,n,o,a,u,l,d=this,h=p(d),_=s(t),T=h.raw;if(T)return T.lastIndex=d.lastIndex,e=i(m,T,_),d.lastIndex=T.lastIndex,e;var R=h.groups,P=E&&d.sticky,k=i(c,d),A=d.source,j=0,L=_;if(P&&(k=b(k,"y",""),-1===w(k,"g")&&(k+="g"),L=x(_,d.lastIndex),d.lastIndex>0&&(!d.multiline||d.multiline&&"\n"!==y(_,d.lastIndex-1))&&(A="(?: "+A+")",L=" "+L,j++),r=new RegExp("^(?:"+A+")",k)),O&&(r=new RegExp("^"+A+"$(?!\\s)",k)),S&&(n=d.lastIndex),o=i(g,P?r:d,L),P?o?(o.input=x(o.input,j),o[0]=x(o[0],j),o.index=d.lastIndex,d.lastIndex+=o[0].length):d.lastIndex=0:S&&o&&(d.lastIndex=d.global?o.index+o[0].length:n),O&&o&&o.length>1&&i(v,o[0],r,(function(){for(a=1;ab)","g");return"b"!==t.exec("b").groups.a||"bc"!=="b".replace(t,"$c")}))},67750:function(t,e,r){"use strict";var n=r(64117),o=TypeError;t.exports=function(t){if(n(t))throw new o("Can't call method on "+t);return t}},93389:function(t,e,r){"use strict";var n=r(24475),o=r(43724),i=Object.getOwnPropertyDescriptor;t.exports=function(t){if(!o)return n[t];var e=i(n,t);return e&&e.value}},3470:function(t){"use strict";t.exports=Object.is||function(t,e){return t===e?0!==t||1/t==1/e:t!=t&&e!=e}},87633:function(t,e,r){"use strict";var n=r(97751),o=r(62106),i=r(78227),a=r(43724),s=i("species");t.exports=function(t){var e=n(t);a&&e&&!e[s]&&o(e,s,{configurable:!0,get:function(){return this}})}},10687:function(t,e,r){"use strict";var n=r(24913).f,o=r(39297),i=r(78227)("toStringTag");t.exports=function(t,e,r){t&&!r&&(t=t.prototype),t&&!o(t,i)&&n(t,i,{configurable:!0,value:e})}},66119:function(t,e,r){"use strict";var n=r(25745),o=r(33392),i=n("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},77629:function(t,e,r){"use strict";var n=r(96395),o=r(24475),i=r(39433),a="__core-js_shared__",s=t.exports=o[a]||i(a,{});(s.versions||(s.versions=[])).push({version:"3.36.0",mode:n?"pure":"global",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.36.0/LICENSE",source:"https://github.com/zloirock/core-js"})},25745:function(t,e,r){"use strict";var n=r(77629);t.exports=function(t,e){return n[t]||(n[t]=e||{})}},2293:function(t,e,r){"use strict";var n=r(28551),o=r(35548),i=r(64117),a=r(78227)("species");t.exports=function(t,e){var r,s=n(t).constructor;return void 0===s||i(r=n(s)[a])?e:o(r)}},68183:function(t,e,r){"use strict";var n=r(79504),o=r(91291),i=r(655),a=r(67750),s=n("".charAt),c=n("".charCodeAt),u=n("".slice),l=function(t){return function(e,r){var n,l,f=i(a(e)),p=o(r),d=f.length;return p<0||p>=d?t?"":void 0:(n=c(f,p))<55296||n>56319||p+1===d||(l=c(f,p+1))<56320||l>57343?t?s(f,p):n:t?u(f,p,p+2):l-56320+(n-55296<<10)+65536}};t.exports={codeAt:l(!1),charAt:l(!0)}},60706:function(t,e,r){"use strict";var n=r(10350).PROPER,o=r(79039),i=r(47452);t.exports=function(t){return o((function(){return!!i[t]()||"
"!=="
"[t]()||n&&i[t].name!==t}))}},43802:function(t,e,r){"use strict";var n=r(79504),o=r(67750),i=r(655),a=r(47452),s=n("".replace),c=RegExp("^["+a+"]+"),u=RegExp("(^|[^"+a+"])["+a+"]+$"),l=function(t){return function(e){var r=i(o(e));return 1&t&&(r=s(r,c,"")),2&t&&(r=s(r,u,"$1")),r}};t.exports={start:l(1),end:l(2),trim:l(3)}},4495:function(t,e,r){"use strict";var n=r(77388),o=r(79039),i=r(24475).String;t.exports=!!Object.getOwnPropertySymbols&&!o((function(){var t=Symbol("symbol detection");return!i(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&n&&n<41}))},58242:function(t,e,r){"use strict";var n=r(69565),o=r(97751),i=r(78227),a=r(36840);t.exports=function(){var t=o("Symbol"),e=t&&t.prototype,r=e&&e.valueOf,s=i("toPrimitive");e&&!e[s]&&a(e,s,(function(t){return n(r,this)}),{arity:1})}},91296:function(t,e,r){"use strict";var n=r(4495);t.exports=n&&!!Symbol.for&&!!Symbol.keyFor},59225:function(t,e,r){"use strict";var n,o,i,a,s=r(24475),c=r(18745),u=r(76080),l=r(94901),f=r(39297),p=r(79039),d=r(20397),h=r(67680),v=r(4055),g=r(22812),m=r(48119),y=r(19088),w=s.setImmediate,b=s.clearImmediate,x=s.process,S=s.Dispatch,E=s.Function,O=s.MessageChannel,_=s.String,T=0,R={},P="onreadystatechange";p((function(){n=s.location}));var k=function(t){if(f(R,t)){var e=R[t];delete R[t],e()}},A=function(t){return function(){k(t)}},j=function(t){k(t.data)},L=function(t){s.postMessage(_(t),n.protocol+"//"+n.host)};w&&b||(w=function(t){g(arguments.length,1);var e=l(t)?t:E(t),r=h(arguments,1);return R[++T]=function(){c(e,void 0,r)},o(T),T},b=function(t){delete R[t]},y?o=function(t){x.nextTick(A(t))}:S&&S.now?o=function(t){S.now(A(t))}:O&&!m?(a=(i=new O).port2,i.port1.onmessage=j,o=u(a.postMessage,a)):s.addEventListener&&l(s.postMessage)&&!s.importScripts&&n&&"file:"!==n.protocol&&!p(L)?(o=L,s.addEventListener("message",j,!1)):o=P in v("script")?function(t){d.appendChild(v("script"))[P]=function(){d.removeChild(this),k(t)}}:function(t){setTimeout(A(t),0)}),t.exports={set:w,clear:b}},35610:function(t,e,r){"use strict";var n=r(91291),o=Math.max,i=Math.min;t.exports=function(t,e){var r=n(t);return r<0?o(r+e,0):i(r,e)}},25397:function(t,e,r){"use strict";var n=r(47055),o=r(67750);t.exports=function(t){return n(o(t))}},91291:function(t,e,r){"use strict";var n=r(80741);t.exports=function(t){var e=+t;return e!=e||0===e?0:n(e)}},18014:function(t,e,r){"use strict";var n=r(91291),o=Math.min;t.exports=function(t){var e=n(t);return e>0?o(e,9007199254740991):0}},48981:function(t,e,r){"use strict";var n=r(67750),o=Object;t.exports=function(t){return o(n(t))}},72777:function(t,e,r){"use strict";var n=r(69565),o=r(20034),i=r(10757),a=r(55966),s=r(84270),c=r(78227),u=TypeError,l=c("toPrimitive");t.exports=function(t,e){if(!o(t)||i(t))return t;var r,c=a(t,l);if(c){if(void 0===e&&(e="default"),r=n(c,t,e),!o(r)||i(r))return r;throw new u("Can't convert object to primitive value")}return void 0===e&&(e="number"),s(t,e)}},56969:function(t,e,r){"use strict";var n=r(72777),o=r(10757);t.exports=function(t){var e=n(t,"string");return o(e)?e:e+""}},92140:function(t,e,r){"use strict";var n={};n[r(78227)("toStringTag")]="z",t.exports="[object z]"===String(n)},655:function(t,e,r){"use strict";var n=r(36955),o=String;t.exports=function(t){if("Symbol"===n(t))throw new TypeError("Cannot convert a Symbol value to a string");return o(t)}},16823:function(t){"use strict";var e=String;t.exports=function(t){try{return e(t)}catch(r){return"Object"}}},33392:function(t,e,r){"use strict";var n=r(79504),o=0,i=Math.random(),a=n(1..toString);t.exports=function(t){return"Symbol("+(void 0===t?"":t)+")_"+a(++o+i,36)}},67416:function(t,e,r){"use strict";var n=r(79039),o=r(78227),i=r(43724),a=r(96395),s=o("iterator");t.exports=!n((function(){var t=new URL("b?a=1&b=2&c=3","http://a"),e=t.searchParams,r=new URLSearchParams("a=1&a=2&b=3"),n="";return t.pathname="c%20d",e.forEach((function(t,r){e.delete("b"),n+=r+t})),r.delete("a",2),r.delete("b",void 0),a&&(!t.toJSON||!r.has("a",1)||r.has("a",2)||!r.has("a",void 0)||r.has("b"))||!e.size&&(a||!i)||!e.sort||"http://a/c%20d?a=1&c=3"!==t.href||"3"!==e.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!e[s]||"a"!==new URL("https://a@b").username||"b"!==new URLSearchParams(new URLSearchParams("a=b")).get("a")||"xn--e1aybc"!==new URL("http://тест").host||"#%D0%B1"!==new URL("http://a#б").hash||"a1c3"!==n||"x"!==new URL("http://x",void 0).host}))},7040:function(t,e,r){"use strict";var n=r(4495);t.exports=n&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},48686:function(t,e,r){"use strict";var n=r(43724),o=r(79039);t.exports=n&&o((function(){return 42!==Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},22812:function(t){"use strict";var e=TypeError;t.exports=function(t,r){if(t=51||!o((function(){var t=[];return t[v]=!1,t.concat()[0]!==t})),m=function(t){if(!a(t))return!1;var e=t[v];return void 0!==e?!!e:i(t)};n({target:"Array",proto:!0,arity:1,forced:!g||!p("concat")},{concat:function(t){var e,r,n,o,i,a=s(this),p=f(a,0),d=0;for(e=-1,n=arguments.length;e1?arguments[1]:void 0)}})},25276:function(t,e,r){"use strict";var n=r(46518),o=r(27476),i=r(19617).indexOf,a=r(34598),s=o([].indexOf),c=!!s&&1/s([1],1,-0)<0;n({target:"Array",proto:!0,forced:c||!a("indexOf")},{indexOf:function(t){var e=arguments.length>1?arguments[1]:void 0;return c?s(this,t,e)||0:i(this,t,e)}})},23792:function(t,e,r){"use strict";var n=r(25397),o=r(6469),i=r(26269),a=r(91181),s=r(24913).f,c=r(51088),u=r(62529),l=r(96395),f=r(43724),p="Array Iterator",d=a.set,h=a.getterFor(p);t.exports=c(Array,"Array",(function(t,e){d(this,{type:p,target:n(t),index:0,kind:e})}),(function(){var t=h(this),e=t.target,r=t.index++;if(!e||r>=e.length)return t.target=void 0,u(void 0,!0);switch(t.kind){case"keys":return u(r,!1);case"values":return u(e[r],!1)}return u([r,e[r]],!1)}),"values");var v=i.Arguments=i.Array;if(o("keys"),o("values"),o("entries"),!l&&f&&"values"!==v.name)try{s(v,"name",{value:"values"})}catch(g){}},8921:function(t,e,r){"use strict";var n=r(46518),o=r(8379);n({target:"Array",proto:!0,forced:o!==[].lastIndexOf},{lastIndexOf:o})},62062:function(t,e,r){"use strict";var n=r(46518),o=r(59213).map;n({target:"Array",proto:!0,forced:!r(70597)("map")},{map:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},34782:function(t,e,r){"use strict";var n=r(46518),o=r(34376),i=r(33517),a=r(20034),s=r(35610),c=r(26198),u=r(25397),l=r(97040),f=r(78227),p=r(70597),d=r(67680),h=p("slice"),v=f("species"),g=Array,m=Math.max;n({target:"Array",proto:!0,forced:!h},{slice:function(t,e){var r,n,f,p=u(this),h=c(p),y=s(t,h),w=s(void 0===e?h:e,h);if(o(p)&&(r=p.constructor,(i(r)&&(r===g||o(r.prototype))||a(r)&&null===(r=r[v]))&&(r=void 0),r===g||void 0===r))return d(p,y,w);for(n=new(void 0===r?g:r)(m(w-y,0)),f=0;y3)){if(h)return!0;if(g)return g<603;var t,e,r,n,o="";for(t=65;t<76;t++){switch(e=String.fromCharCode(t),t){case 66:case 69:case 70:case 72:r=3;break;case 68:case 71:r=4;break;default:r=2}for(n=0;n<47;n++)m.push({k:e+n,v:r})}for(m.sort((function(t,e){return e.v-t.v})),n=0;nu(r)?1:-1}}(t)),r=s(o),n=0;nf;)void 0!==(r=o(n,e=u[f++]))&&c(l,e,r);return l}})},49773:function(t,e,r){"use strict";var n=r(46518),o=r(4495),i=r(79039),a=r(33717),s=r(48981);n({target:"Object",stat:!0,forced:!o||i((function(){a.f(1)}))},{getOwnPropertySymbols:function(t){var e=a.f;return e?e(s(t)):[]}})},26099:function(t,e,r){"use strict";var n=r(92140),o=r(36840),i=r(53179);n||o(Object.prototype,"toString",i,{unsafe:!0})},16499:function(t,e,r){"use strict";var n=r(46518),o=r(69565),i=r(79306),a=r(36043),s=r(1103),c=r(72652);n({target:"Promise",stat:!0,forced:r(90537)},{all:function(t){var e=this,r=a.f(e),n=r.resolve,u=r.reject,l=s((function(){var r=i(e.resolve),a=[],s=0,l=1;c(t,(function(t){var i=s++,c=!1;l++,o(r,e,t).then((function(t){c||(c=!0,a[i]=t,--l||n(a))}),u)})),--l||n(a)}));return l.error&&u(l.value),r.promise}})},82003:function(t,e,r){"use strict";var n=r(46518),o=r(96395),i=r(10916).CONSTRUCTOR,a=r(80550),s=r(97751),c=r(94901),u=r(36840),l=a&&a.prototype;if(n({target:"Promise",proto:!0,forced:i,real:!0},{catch:function(t){return this.then(void 0,t)}}),!o&&c(a)){var f=s("Promise").prototype.catch;l.catch!==f&&u(l,"catch",f,{unsafe:!0})}},10436:function(t,e,r){"use strict";var n,o,i,a=r(46518),s=r(96395),c=r(19088),u=r(24475),l=r(69565),f=r(36840),p=r(52967),d=r(10687),h=r(87633),v=r(79306),g=r(94901),m=r(20034),y=r(90679),w=r(2293),b=r(59225).set,x=r(91955),S=r(90757),E=r(1103),O=r(18265),_=r(91181),T=r(80550),R=r(10916),P=r(36043),k="Promise",A=R.CONSTRUCTOR,j=R.REJECTION_EVENT,L=R.SUBCLASSING,C=_.getterFor(k),I=_.set,N=T&&T.prototype,D=T,F=N,U=u.TypeError,M=u.document,V=u.process,B=P.f,q=B,G=!!(M&&M.createEvent&&u.dispatchEvent),z="unhandledrejection",H=function(t){var e;return!(!m(t)||!g(e=t.then))&&e},W=function(t,e){var r,n,o,i=e.value,a=1===e.state,s=a?t.ok:t.fail,c=t.resolve,u=t.reject,f=t.domain;try{s?(a||(2===e.rejection&&X(e),e.rejection=1),!0===s?r=i:(f&&f.enter(),r=s(i),f&&(f.exit(),o=!0)),r===t.promise?u(new U("Promise-chain cycle")):(n=H(r))?l(n,r,c,u):c(r)):u(i)}catch(p){f&&!o&&f.exit(),u(p)}},$=function(t,e){t.notified||(t.notified=!0,x((function(){for(var r,n=t.reactions;r=n.get();)W(r,t);t.notified=!1,e&&!t.rejection&&K(t)})))},J=function(t,e,r){var n,o;G?((n=M.createEvent("Event")).promise=e,n.reason=r,n.initEvent(t,!1,!0),u.dispatchEvent(n)):n={promise:e,reason:r},!j&&(o=u["on"+t])?o(n):t===z&&S("Unhandled promise rejection",r)},K=function(t){l(b,u,(function(){var e,r=t.facade,n=t.value;if(Y(t)&&(e=E((function(){c?V.emit("unhandledRejection",n,r):J(z,r,n)})),t.rejection=c||Y(t)?2:1,e.error))throw e.value}))},Y=function(t){return 1!==t.rejection&&!t.parent},X=function(t){l(b,u,(function(){var e=t.facade;c?V.emit("rejectionHandled",e):J("rejectionhandled",e,t.value)}))},Q=function(t,e,r){return function(n){t(e,n,r)}},Z=function(t,e,r){t.done||(t.done=!0,r&&(t=r),t.value=e,t.state=2,$(t,!0))},tt=function(t,e,r){if(!t.done){t.done=!0,r&&(t=r);try{if(t.facade===e)throw new U("Promise can't be resolved itself");var n=H(e);n?x((function(){var r={done:!1};try{l(n,e,Q(tt,r,t),Q(Z,r,t))}catch(o){Z(r,o,t)}})):(t.value=e,t.state=1,$(t,!1))}catch(o){Z({done:!1},o,t)}}};if(A&&(F=(D=function(t){y(this,F),v(t),l(n,this);var e=C(this);try{t(Q(tt,e),Q(Z,e))}catch(r){Z(e,r)}}).prototype,(n=function(t){I(this,{type:k,done:!1,notified:!1,parent:!1,reactions:new O,rejection:!1,state:0,value:void 0})}).prototype=f(F,"then",(function(t,e){var r=C(this),n=B(w(this,D));return r.parent=!0,n.ok=!g(t)||t,n.fail=g(e)&&e,n.domain=c?V.domain:void 0,0===r.state?r.reactions.add(n):x((function(){W(n,r)})),n.promise})),o=function(){var t=new n,e=C(t);this.promise=t,this.resolve=Q(tt,e),this.reject=Q(Z,e)},P.f=B=function(t){return t===D||undefined===t?new o(t):q(t)},!s&&g(T)&&N!==Object.prototype)){i=N.then,L||f(N,"then",(function(t,e){var r=this;return new D((function(t,e){l(i,r,t,e)})).then(t,e)}),{unsafe:!0});try{delete N.constructor}catch(et){}p&&p(N,F)}a({global:!0,constructor:!0,wrap:!0,forced:A},{Promise:D}),d(D,k,!1,!0),h(k)},3362:function(t,e,r){"use strict";r(10436),r(16499),r(82003),r(7743),r(51481),r(40280)},7743:function(t,e,r){"use strict";var n=r(46518),o=r(69565),i=r(79306),a=r(36043),s=r(1103),c=r(72652);n({target:"Promise",stat:!0,forced:r(90537)},{race:function(t){var e=this,r=a.f(e),n=r.reject,u=s((function(){var a=i(e.resolve);c(t,(function(t){o(a,e,t).then(r.resolve,n)}))}));return u.error&&n(u.value),r.promise}})},51481:function(t,e,r){"use strict";var n=r(46518),o=r(36043);n({target:"Promise",stat:!0,forced:r(10916).CONSTRUCTOR},{reject:function(t){var e=o.f(this);return(0,e.reject)(t),e.promise}})},40280:function(t,e,r){"use strict";var n=r(46518),o=r(97751),i=r(96395),a=r(80550),s=r(10916).CONSTRUCTOR,c=r(93438),u=o("Promise"),l=i&&!s;n({target:"Promise",stat:!0,forced:i||s},{resolve:function(t){return c(l&&this===u?a:this,t)}})},84864:function(t,e,r){"use strict";var n=r(43724),o=r(24475),i=r(79504),a=r(92796),s=r(23167),c=r(66699),u=r(2360),l=r(38480).f,f=r(1625),p=r(60788),d=r(655),h=r(61034),v=r(58429),g=r(11056),m=r(36840),y=r(79039),w=r(39297),b=r(91181).enforce,x=r(87633),S=r(78227),E=r(83635),O=r(18814),_=S("match"),T=o.RegExp,R=T.prototype,P=o.SyntaxError,k=i(R.exec),A=i("".charAt),j=i("".replace),L=i("".indexOf),C=i("".slice),I=/^\?<[^\s\d!#%&*+<=>@^][^\s!#%&*+<=>@^]*>/,N=/a/g,D=/a/g,F=new T(N)!==N,U=v.MISSED_STICKY,M=v.UNSUPPORTED_Y,V=n&&(!F||U||E||O||y((function(){return D[_]=!1,T(N)!==N||T(D)===D||"/a/i"!==String(T(N,"i"))})));if(a("RegExp",V)){for(var B=function(t,e){var r,n,o,i,a,l,v=f(R,this),g=p(t),m=void 0===e,y=[],x=t;if(!v&&g&&m&&t.constructor===B)return t;if((g||f(R,t))&&(t=t.source,m&&(e=h(x))),t=void 0===t?"":d(t),e=void 0===e?"":d(e),x=t,E&&"dotAll"in N&&(n=!!e&&L(e,"s")>-1)&&(e=j(e,/s/g,"")),r=e,U&&"sticky"in N&&(o=!!e&&L(e,"y")>-1)&&M&&(e=j(e,/y/g,"")),O&&(i=function(t){for(var e,r=t.length,n=0,o="",i=[],a=u(null),s=!1,c=!1,l=0,f="";n<=r;n++){if("\\"===(e=A(t,n)))e+=A(t,++n);else if("]"===e)s=!1;else if(!s)switch(!0){case"["===e:s=!0;break;case"("===e:k(I,C(t,n+1))&&(n+=2,c=!0),o+=e,l++;continue;case">"===e&&c:if(""===f||w(a,f))throw new P("Invalid capture group name");a[f]=!0,i[i.length]=[f,l],c=!1,f="";continue}c?f+=e:o+=e}return[o,i]}(t),t=i[0],y=i[1]),a=s(T(t,e),v?this:R,B),(n||o||y.length)&&(l=b(a),n&&(l.dotAll=!0,l.raw=B(function(t){for(var e,r=t.length,n=0,o="",i=!1;n<=r;n++)"\\"!==(e=A(t,n))?i||"."!==e?("["===e?i=!0:"]"===e&&(i=!1),o+=e):o+="[\\s\\S]":o+=e+A(t,++n);return o}(t),r)),o&&(l.sticky=!0),y.length&&(l.groups=y)),t!==x)try{c(a,"source",""===x?"(?:)":x)}catch(S){}return a},q=l(T),G=0;q.length>G;)g(B,T,q[G++]);R.constructor=B,B.prototype=R,m(o,"RegExp",B,{constructor:!0})}x("RegExp")},27495:function(t,e,r){"use strict";var n=r(46518),o=r(57323);n({target:"RegExp",proto:!0,forced:/./.exec!==o},{exec:o})},87745:function(t,e,r){"use strict";var n=r(43724),o=r(58429).MISSED_STICKY,i=r(44576),a=r(62106),s=r(91181).get,c=RegExp.prototype,u=TypeError;n&&o&&a(c,"sticky",{configurable:!0,get:function(){if(this!==c){if("RegExp"===i(this))return!!s(this).sticky;throw new u("Incompatible receiver, RegExp required")}}})},90906:function(t,e,r){"use strict";r(27495);var n,o,i=r(46518),a=r(69565),s=r(94901),c=r(28551),u=r(655),l=(n=!1,(o=/[ac]/).exec=function(){return n=!0,/./.exec.apply(this,arguments)},!0===o.test("abc")&&n),f=/./.test;i({target:"RegExp",proto:!0,forced:!l},{test:function(t){var e=c(this),r=u(t),n=e.exec;if(!s(n))return a(f,e,r);var o=a(n,e,r);return null!==o&&(c(o),!0)}})},38781:function(t,e,r){"use strict";var n=r(10350).PROPER,o=r(36840),i=r(28551),a=r(655),s=r(79039),c=r(61034),u="toString",l=RegExp.prototype,f=l[u],p=s((function(){return"/a/b"!==f.call({source:"a",flags:"b"})})),d=n&&f.name!==u;(p||d)&&o(l,u,(function(){var t=i(this);return"/"+a(t.source)+"/"+a(c(t))}),{unsafe:!0})},71761:function(t,e,r){"use strict";var n=r(69565),o=r(89228),i=r(28551),a=r(64117),s=r(18014),c=r(655),u=r(67750),l=r(55966),f=r(57829),p=r(56682);o("match",(function(t,e,r){return[function(e){var r=u(this),o=a(e)?void 0:l(e,t);return o?n(o,e,r):new RegExp(e)[t](c(r))},function(t){var n=i(this),o=c(t),a=r(e,n,o);if(a.done)return a.value;if(!n.global)return p(n,o);var u=n.unicode;n.lastIndex=0;for(var l,d=[],h=0;null!==(l=p(n,o));){var v=c(l[0]);d[h]=v,""===v&&(n.lastIndex=f(o,s(n.lastIndex),u)),h++}return 0===h?null:d}]}))},25440:function(t,e,r){"use strict";var n=r(18745),o=r(69565),i=r(79504),a=r(89228),s=r(79039),c=r(28551),u=r(94901),l=r(64117),f=r(91291),p=r(18014),d=r(655),h=r(67750),v=r(57829),g=r(55966),m=r(2478),y=r(56682),w=r(78227)("replace"),b=Math.max,x=Math.min,S=i([].concat),E=i([].push),O=i("".indexOf),_=i("".slice),T="$0"==="a".replace(/./,"$0"),R=!!/./[w]&&""===/./[w]("a","$0");a("replace",(function(t,e,r){var i=R?"$":"$0";return[function(t,r){var n=h(this),i=l(t)?void 0:g(t,w);return i?o(i,t,n,r):o(e,d(n),t,r)},function(t,o){var a=c(this),s=d(t);if("string"==typeof o&&-1===O(o,i)&&-1===O(o,"$<")){var l=r(e,a,s,o);if(l.done)return l.value}var h=u(o);h||(o=d(o));var g,w=a.global;w&&(g=a.unicode,a.lastIndex=0);for(var T,R=[];null!==(T=y(a,s))&&(E(R,T),w);){""===d(T[0])&&(a.lastIndex=v(s,p(a.lastIndex),g))}for(var P,k="",A=0,j=0;j=A&&(k+=_(s,A,I)+L,A=I+C.length)}return k+_(s,A)}]}),!!s((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")}))||!T||R)},5746:function(t,e,r){"use strict";var n=r(69565),o=r(89228),i=r(28551),a=r(64117),s=r(67750),c=r(3470),u=r(655),l=r(55966),f=r(56682);o("search",(function(t,e,r){return[function(e){var r=s(this),o=a(e)?void 0:l(e,t);return o?n(o,e,r):new RegExp(e)[t](u(r))},function(t){var n=i(this),o=u(t),a=r(e,n,o);if(a.done)return a.value;var s=n.lastIndex;c(s,0)||(n.lastIndex=0);var l=f(n,o);return c(n.lastIndex,s)||(n.lastIndex=s),null===l?-1:l.index}]}))},90744:function(t,e,r){"use strict";var n=r(69565),o=r(79504),i=r(89228),a=r(28551),s=r(64117),c=r(67750),u=r(2293),l=r(57829),f=r(18014),p=r(655),d=r(55966),h=r(56682),v=r(58429),g=r(79039),m=v.UNSUPPORTED_Y,y=Math.min,w=o([].push),b=o("".slice),x=!g((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var r="ab".split(t);return 2!==r.length||"a"!==r[0]||"b"!==r[1]})),S="c"==="abbc".split(/(b)*/)[1]||4!=="test".split(/(?:)/,-1).length||2!=="ab".split(/(?:ab)*/).length||4!==".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length;i("split",(function(t,e,r){var o="0".split(void 0,0).length?function(t,r){return void 0===t&&0===r?[]:n(e,this,t,r)}:e;return[function(e,r){var i=c(this),a=s(e)?void 0:d(e,t);return a?n(a,e,i,r):n(o,p(i),e,r)},function(t,n){var i=a(this),s=p(t);if(!S){var c=r(o,i,s,n,o!==e);if(c.done)return c.value}var d=u(i,RegExp),v=i.unicode,g=(i.ignoreCase?"i":"")+(i.multiline?"m":"")+(i.unicode?"u":"")+(m?"g":"y"),x=new d(m?"^(?:"+i.source+")":i,g),E=void 0===n?4294967295:n>>>0;if(0===E)return[];if(0===s.length)return null===h(x,s)?[s]:[];for(var O=0,_=0,T=[];_=e.length)return t.target=void 0,P(void 0,!0);var n=e[r];switch(t.kind){case"keys":return P(n.key,!1);case"values":return P(n.value,!1)}return P([n.key,n.value],!1)}),!0),ft=function(t){this.entries=[],this.url=null,void 0!==t&&(S(t)?this.parseObject(t):this.parseQuery("string"==typeof t?"?"===$(t,0)?tt(t,1):t:E(t)))};ft.prototype={type:C,bindURL:function(t){this.url=t,this.update()},parseObject:function(t){var e,r,n,o,i,s,c,u=this.entries,l=R(t);if(l)for(r=(e=T(t,l)).next;!(n=a(r,e)).done;){if(i=(o=T(x(n.value))).next,(s=a(i,o)).done||(c=a(i,o)).done||!a(i,o).done)throw new z("Expected sequence with length 2");K(u,{key:E(s.value),value:E(c.value)})}else for(var f in t)y(t,f)&&K(u,{key:f,value:E(t[f])})},parseQuery:function(t){if(t)for(var e,r,n=this.entries,o=Z(t,"&"),i=0;i0?arguments[0]:void 0));c||(this.size=t.entries.length)},dt=pt.prototype;if(p(dt,{append:function(t,e){var r=D(this);k(arguments.length,2),K(r.entries,{key:E(t),value:E(e)}),c||this.length++,r.updateURL()},delete:function(t){for(var e=D(this),r=k(arguments.length,1),n=e.entries,o=E(t),i=r<2?void 0:arguments[1],a=void 0===i?i:E(i),s=0;se.key?1:-1})),t.updateURL()},forEach:function(t){for(var e,r=D(this).entries,n=w(t,arguments.length>1?arguments[1]:void 0),o=0;o1?gt(arguments[1]):{})}}),m(M)){var mt=function(t){return g(this,B),new M(t,arguments.length>1?gt(arguments[1]):{})};B.constructor=mt,mt.prototype=B,n({global:!0,constructor:!0,dontCallGetSet:!0,forced:!0},{Request:mt})}}t.exports={URLSearchParams:pt,getState:D}},48408:function(t,e,r){"use strict";r(98406)}},e={};function r(n){var o=e[n];if(void 0!==o)return o.exports;var i=e[n]={exports:{}};return t[n].call(i.exports,i,i.exports,r),i.exports}r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,{a:e}),e},r.d=function(t,e){for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},function(){"use strict";function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t(e)}function e(e){var r=function(e,r){if("object"!=t(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,r||"default");if("object"!=t(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(e)}(e,"string");return"symbol"==t(r)?r:String(r)}r(28706),r(52675),r(2008),r(25276),r(8921),r(62062),r(34782),r(26910),r(33110),r(81278),r(26099),r(3362),r(27495),r(38781),r(5746),r(90744),r(23500);function n(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function o(t){for(var r=1;r0?f:p,d.result=i,d.options=h,function(t){clearTimeout(t);var e=(new Date).getTime()-g;v("Timeout ended:",e,"ms")}(t),R.abort(),v("Callback result:",i),k.forEach((function(t){t(i)}))}};O((function(){var e={value:"TIMEOUT",code:-2},n={value:"BACKEND_ERROR",code:-1},o=h.allowPersonalisation?{value:"RETURNED",code:1}:{value:"RETURNED_ANONYMOUS",code:"1a"},i=h.allowPersonalisation?{value:"RETURNED_FROM_CACHE",code:2}:{value:"RETURNED_ANONYMOUS_FROM_CACHE",code:"2a"};return t=function(t){if(h.timeout)return v("Timeout started…"),g=(new Date).getTime(),setTimeout(t,h.timeout)}((function(){r({},e)})),function(){if(h.allowPersonalisation){v("Checking session referrer…");var t="".concat(window.location.protocol,"//").concat(window.location.host,"/");document.referrer&&0!==document.referrer.indexOf(t)&&(v("Session referrer updated:",document.referrer),E(b,document.referrer))}}(),function(t,e){var r,n=T();if(!n)return e();v("Reading prediction from cache…");var o=y();return"localStorage"===n?(v("Reading prediction from local storage key:",o),r=S(x)):"memory"===n&&(v("Reading prediction from memory key:",o),r=c[o]),"object"!=typeof r?e():r.ttl+h.cacheTime<_||r.hash!==o?(v("Cached prediction expired…"),e()):(v("Cached prediction:",r.data),t(r.data))}((function(t){r(t,i)}),(function(){return P((function(t){!function(t){var e=T();if(e){v("Saving prediction to cache…");var r=y(),n={data:t,ttl:_,hash:r};"localStorage"===e?E(x,n):"memory"===e&&(c[r]=n)}}(t),r(t,o)}),(function(){r({},n)}))}))}))}(),{promise:function(){return new Promise((function(t){v("Promise called…"),k.push(t)}))}}},utils:{sendDataToGooglePublisherTag:function(t){window.googletag=window.googletag||{cmd:[]};var e=function(){Object.keys(t.keyValues).forEach((function(e){window.googletag.pubads().setTargeting(e,t.keyValues[e])}))};window.googletag.cmd.unshift?window.googletag.cmd.unshift(e):window.googletag.cmd.push(e)}}},v={log(){if(1===parseInt(this.getCookie("debug"),10)){for(var t,e=["color: #fff","font-weight: 800","background-color: #976F2A","font-size: 120%","padding: 2px 0 2px 2px"].join("; "),r=["color: black","font-weight: normal","background-color: white","font-size: 100%","padding: 0"].join("; "),n=arguments.length,o=new Array(n),i=0;i=this.acceptableViewability?this.startTimer(t):this.pauseTimer(t)):v.log("DFP - Browser is not focused, ignoring ".concat(t)):v.log("DFP - Ignoring ".concat(t))},pauseTimer(t){v.log("DFP - pausing timer for ".concat(t)),clearTimeout(this.runningTimers[t]),this.runningTimers[t]=null},startTimer(t){var e=this;t in this.timerPositions||(this.timerPositions[t]=0),t in this.runningTimers||(this.runningTimers[t]=null),t in this.timerCount||(this.timerCount[t]=1),"number"!=typeof this.runningTimers[t]?(v.log("DFP - (re)starting a timer for ".concat(t)),this.runningTimers[t]=window.setTimeout((function(){e.updateTimer(t)}),1e3)):v.log("DFP - Timer for ".concat(t," already running"))},updateTimer(t){var e=this;if(!this.checkFocus())return v.log("DFP - Browser is not focused, pausing timer for ".concat(t)),void this.pauseTimer(t);if(!this.checkRefresh(t))return v.log("DFP - advert has no-refresh dom attribute, pausing timer for ".concat(t)),void this.pauseTimer(t);var r=this.timerPositions[t];if(r+=1,v.log("DFP - updating ".concat(t," to ").concat(r," seconds")),r>this.advertRefreshTime)return this.resetTimer(t),void this.refreshAdvert(t);this.timerPositions[t]=r,this.runningTimers[t]=window.setTimeout((function(){e.updateTimer(t)}),1e3)},refreshAdvert(t){v.log("DFP - Refreshing ".concat(t));var e=this.timerCount[t];v.log("DFP - setting rfs to ".concat(e," for ").concat(t)),window.dfpHolder[t].setTargeting("rfs",e),window.pbjs.rp.requestBids({callback:this.refreshAdvertCallback,gptSlotObjects:[window.dfpHolder[t]]}),this.timerCount[t]+=1},refreshAdvertCallback(t){window.googletag.pubads().refresh(t)},resetTimer(t){this.pauseTimer(t),this.timerPositions[t]=0},checkName(t){switch(t){case"DFP_top_leaderboard":case"DFP_article_fluid_1":case"DFP_teads":case"DFP_out_of_page":case"DFP_on_scroll":case"DFP_standard_mpu_3":case"DFP_standard_mpu_4":case"DFP_standard_mpu_5":case"DFP_standard_mpu_6":case"DFP_standard_mpu_7":case"DFP_gallery_mpu":case"DFP_gallery_interstitial":return!1;default:return!0}},checkFocus(){return this.browserFocus},setFocusListeners(){var t=this;window.addEventListener("focus",(function(){t.setFocused()}),!1),window.addEventListener("blur",(function(){t.setBlurred()}),!1)},setFocused(){v.log("DFP - Browser focused"),this.browserFocus=!0},setBlurred(){v.log("DFP - Browser blurred"),this.browserFocus=!1},checkRefresh(t){v.log("Checking DOM for no-refresh on ".concat(t));var e=document.getElementById(t).classList.contains("no-refresh");return v.log("Does ".concat(t," contain 'no-refresh'? ").concat(e)),!e}};function m(t,e,r,n,o,i,a){try{var s=t[i](a),c=s.value}catch(u){return void r(u)}s.done?e(c):Promise.resolve(c).then(n,o)}function y(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){m(i,n,o,a,s,"next",t)}function s(t){m(i,n,o,a,s,"throw",t)}a(void 0)}))}}r(5506),r(25440);var w=r(54756),b=r.n(w),x=(r(44475),r(44475),r(84864),r(87745),r(42762),{modalSelector:{container:"mar-modal-container",inner:"mar-modal",dialog:"mar-modal__dialog",header:"mar-modal__header",title:"mar-modal__title",body:"mar-modal__body",actions:"mar-modal__actions",animateOut:"mar-modal-container--animate-out",animateOutLayout:"mar-modal-container--animate-out-layout",submitBtn:'[data-uses-js="modal-submit"]',cancelBtn:'[data-uses-js="modal-cancel"]'},hiddenSelector:"visually-hidden",noScrollSelector:"no-scroll",bodyContentSelector:"takeover",openSelector:'[data-uses-js="open-modal"]',closeSelector:'[data-uses-js="close-modal"]',modalVariants:["sm","md","lg"],sourceContent:null,customClass:null,init(){v.log("modal has been inititated"),document.querySelector(this.openSelector)&&this.bind()},bind(){var t=this;document.addEventListener("click",(function(e){e.target.closest(t.openSelector)&&(t.toggleModal(!0),t.renderModalSize({btnElement:e.target.closest(t.openSelector),open:!0}),t.toggleModalName({btnElement:e.target.closest(t.openSelector),add:!0})),e.target.closest(t.closeSelector)&&t.close(),e.target.closest(t.modalSelector.cancelBtn)&&t.close()}))},open(t){var e=this;return y(b().mark((function r(){var n,o,i,a,s,c,u;return b().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:n=t.size,o=t.heading,i=t.source,a=t.content,s=t.btnElement,c=t.btnSecondary,u=t.customClass,e.toggleModal(!0),e.renderModalSize({open:!0,btnElement:s,size:n}),e.renderContent({heading:o,source:i,content:a,btnElement:s,btnSecondary:c,customClass:u}),i&&(document.querySelector(".".concat(e.modalSelector.container)).dataset.source=i);case 5:case"end":return r.stop()}}),r)})))()},close(){this.toggleModal(!1),this.renderModalSize({open:!1}),this.toggleModalName({add:!1}),this.destroyContent(document.querySelector(".".concat(this.modalSelector.container)).dataset.source)},toggleModal(t){var e=this,r=document.querySelector("body"),n=document.querySelector(".".concat(this.modalSelector.container)),o=document.getElementById(this.bodyContentSelector);t?(requestAnimationFrame((function(){n.classList.remove(e.hiddenSelector)})),n.classList.remove(this.modalSelector.animateOut),r.classList.add(this.noScrollSelector)):(n.classList.add(this.modalSelector.animateOut),r.classList.remove(this.noScrollSelector),o.classList.add(this.modalSelector.animateOutLayout),requestAnimationFrame((function(){o.classList.remove(e.modalSelector.animateOutLayout),n.classList.add(e.hiddenSelector)})))},renderModalSize(t){var e=this,r=t.btnElement,n=t.open,o=t.variants,i=void 0===o?this.modalVariants:o,a=t.size,s=document.querySelector(".".concat(this.modalSelector.container)),c=s.querySelector(".".concat(this.modalSelector.inner));if(n){if(!s)return;var u=a||r.dataset.modalSize,l="".concat(this.modalSelector.inner,"--").concat(u);c.classList.contains(l)||c.classList.add(l)}else{if(!i.length)return;i.forEach((function(t){var r="".concat(e.modalSelector.inner,"--").concat(t);c.classList.contains(r)&&c.classList.remove(r)}))}},renderContent(t){var e=t.heading,r=t.source,n=t.content,o=t.btnElement,i=t.btnSecondary,a=t.customClass,s=document.querySelector(".".concat(this.modalSelector.container)),c=s.querySelector(".".concat(this.modalSelector.header)),u=s.querySelector(".".concat(this.modalSelector.title)),l=s.querySelector(".".concat(this.modalSelector.body)),f=s.querySelector(this.modalSelector.submitBtn),p=s.querySelector(this.modalSelector.cancelBtn);if(a&&(s.classList.add(a),this.customClass=a),e?(c.classList.remove("hidden"),u.innerHTML=e,u.style.textAlign="left"):(c.classList.add("hidden"),u.innerHTML=""),n?l.innerHTML=n:r?(this.sourceContent=document.querySelector(r).innerHTML,document.querySelector(r).innerHTML="",l.innerHTML=this.sourceContent):l.innerHTML="",f&&f.classList.remove("hidden"),o&&p.classList.remove("hidden"),o){var d=o.text,h=o.addEventListener,v=o.dataUsesJs;d&&f&&(f.textContent=d),"function"==typeof h&&f&&f.addEventListener("click",h),v&&f.setAttribute("data-uses-js",v)}else f&&f.classList.add("hidden");if(i){var g=i.text;g&&(p.textContent=g)}else p.classList.add("hidden");o||i||document.querySelector(".".concat(this.modalSelector.actions)).classList.add("hidden")},destroyContent(t){if(t){var e=document.querySelector(".".concat(this.modalSelector.container));e.querySelector(".".concat(this.modalSelector.body)).innerHTML="",e.dataset.source=null,e.classList.remove(this.customClass),this.customClass=null,document.querySelector(t).innerHTML=this.sourceContent}},toggleModalName(t){var e=t.btnElement,r=t.add,n=document.querySelector(".".concat(this.modalSelector.container));if(r){var o=e.dataset.modalName;o&&n.setAttribute("data-modal-name",o)}else n.removeAttribute("data-modal-name")}}),S={trackSubscribe(){try{var t=window.s;t.events="event85",t.eVar99="+1",t.linkTrackVars="eVar2,eVar4,eVar5,eVar6,eVar16,eVar19,eVar25,eVar26,eVar27,eVar43,eVar61,eVar63,eVar99,prop62,list3,events",t.suppressPageView=!0,t.linkTrackEvents="event85",t.tl(!0,"o","Newsletter Sign Up"),t.events="",v.log("Track: Newsletter subscription, event85")}catch(e){v.log(e)}},trackUnsubscribe(){try{var t=window.s;t.events="event86",t.linkTrackVars="eVar2,eVar4,eVar5,eVar6,eVar16,eVar19,eVar25,eVar26,eVar27,eVar43,eVar61,eVar63,prop62,list3,events",t.suppressPageView=!0,t.linkTrackEvents="event86",t.tl(!0,"o","Newsletter Sign Up"),t.events="",v.log("Track: Newsletter unubscription, event86")}catch(e){v.log(e)}}},E=r(72505),O=r.n(E),_=r(44475),T={eventSent:!1,registrationSent:!1,loginSent:!1,height:500,width:460,isNewsletterSignup:!1,init(){var t=this;window.screen.width<460&&(this.width=window.screen.width),_(document).on("click",".piano-id__register",(function(e){e.preventDefault(),t.isNewsletterSignup=!0,_.cookie("reg_return_url",window.location.pathname,{expires:1,path:"/;SameSite=Lax",domain:window.data_layer.site.cookie_domain}),t.register()})),_(document).on("click",".piano-id__login",(function(e){e.preventDefault(),t.login()})),_(document).on("click",".piano-id__logout",(function(e){e.preventDefault(),t.logout()})),_("#piano-id-logout").on("click",(function(e){e.preventDefault(),t.logout()})),_(document).on("click",".piano-user-link",(function(){t.isNewsletterSignup=!0,_.cookie("reg_return_url",window.location.pathname,{expires:1,path:"/;SameSite=Lax",domain:window.data_layer.site.cookie_domain})})),window.addEventListener("load",(function(){t.migrateUser()})),-1!==document.cookie.indexOf("newsletterSignUpBulletins")&&(this.isNewsletterSignup=!0),_(document).on("click",".newsletter-option",(function(){t.checkNewsletters()})),-1!==document.cookie.indexOf("reg_newsletters")&&(this.isNewsletterSignup=!0)},migrateUser(){return y(b().mark((function t(){return b().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if("/my/"===window.location.pathname.substring(0,4)||!_.cookie("nql")||_.cookie("__utp")){t.next=4;break}return t.next=4,O().post("/api/user/login-migration/");case 4:case"end":return t.stop()}}),t)})))()},reloadPage(){v.log("AA: Would reload this page"),window.setTimeout((function(){window.location.reload()}),1e3)},login(){var t=this;v.log("TPM: login function called"),window.tp.pianoId.show({screen:"login",displayMode:"modal",loggedIn:function(){v.log("TPM: login callback called"),t.loggedIn()},loggedOut:function(){},registrationSuccess:function(){v.log("TPM: registeredSuccess callback called"),t.registered()},width:this.width,height:this.height})},register(){var t=this;window.tp.pianoId.show({screen:"register",displayMode:"modal",loggedIn:function(){v.log("TPM: logloggedInin callback called"),t.loggedIn(!0)},loggedOut:function(){},registrationSuccess:function(){v.log("TPM: registrationSuccess callback called"),t.registered()},width:this.width,height:this.height})},logout(){try{window.tp.pianoId.logout(),this.reloadPage()}catch(t){v.log("Error piano-id.logout",t)}},loggedIn(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];v.log("AA: login method triggered, have we sent a login event already? ".concat(this.loginSent,"\n Is this from a registration? ").concat(t)),this.loginSent?this.redirectUser(!0):(this.raiseLaunchEvent("user-has-logged-in"),this.loginSent=!0,this.sendToAdobe("event8"),t||(this.loginUser(),this.redirectUser(!0)))},registered(){v.log("AA: registered method triggered, have we sent a registration event already? ".concat(this.registrationSent)),this.registrationSent||(this.sendToAdobe("event3"),this.raiseLaunchEvent("user-has-registered"),this.registerUser(),this.registrationSent=!0,this.redirectUser())},registerUser(){return y(b().mark((function t(){return b().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,O().get("/api/user/create-id/");case 2:case"end":return t.stop()}}),t)})))()},loginUser(){return y(b().mark((function t(){return b().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,O().get("/api/user/login-id/");case 2:case"end":return t.stop()}}),t)})))()},sendToAdobe(t){if(v.log("AA: sending ".concat(t)),!this.eventSent){var e=window.s;e.eVar2=window.location.href,e.pageName="(www) ".concat(window.location.pathname),e.events=t,e.linkTrackEvents=t;try{e.tl()}catch(r){}e.ignoreNext=!0}},redirectToPage(t){v.log("AA: Would redirect to ".concat(t)),window.setTimeout((function(){window.location=t}),1e3)},checkNewsletters(){var t="";document.querySelectorAll(".newsletter-option:checked").forEach((function(e){""!==t&&(t+=","),t+=_(e).val()})),""!==t&&_.cookie("newsletterSignUpBulletins",t,{expires:1,path:"/",domain:window.data_layer.site.cookie_domain})},redirectUser(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if("yes"===window.data_layer.site.disable_newsletters)return document.location.pathname.indexOf("account/login")>0?void this.redirectToPage("/"):void this.reloadPage();!0!==this.isNewsletterSignup&&!0!==this.isTopNavigation||!1!==t?document.location.pathname.indexOf("account/register")>0&&!1===t?this.redirectToPage("/my/account/profile/#emails"):document.location.pathname.indexOf("account/login")>0?this.redirectToPage("/"):this.reloadPage():this.redirectToPage("/my/account/profile/#emails")},raiseLaunchEvent(t){v.log("launch:piano:".concat(t," has been dispatched"));var e=new Event("launch:piano:".concat(t));window.dispatchEvent(e)}},R=r(44475),P={commentsModalSelector:"article-comments__interrupt-modal-content",init(){var t=this;window.addEventListener("message",(function(e){var r=e.data;switch(r.src){case"send-email":t.handleEmail(r);break;case"expand-window":t.expandWindow();break;case"close-bottom-banner":case"close-fixed-banner":t.closeBottomBanner();break;case"login":t.login(r);break;case"register":t.register(r);break;case"open-comments-modal":t.showCommentsModal();break;case"sign-up":t.signUp(r);break;case"login-modal":t.loginModal();break;case"register-modal":t.registerModal();break;case"start-checkout":t.showOffer(r)}}))},closeBottomBanner(){R("#piano-message").hide(),R("#bottom-expandable-wrapper").hide(),R("#piano-floating-bottom-banner").hide()},handleEmail(t){return y(b().mark((function e(){var r,n,o;return b().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r={method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:"email=".concat(t.email)},e.next=3,fetch("/api/user/register-with-email/",r);case 3:return n=e.sent,e.next=6,n.json();case 6:if(void 0===(o=e.sent).success||!0!==o.success){e.next=11;break}return T.sendToAdobe("event3"),window.location="/my/account/profile/#emails",e.abrupt("return");case 11:if(void 0===o.redirect){e.next=14;break}return window.location=o.redirect,e.abrupt("return");case 14:window.location="/my/account/log-in/?newsletter_signup=1";case 15:case"end":return e.stop()}}),e)})))()},expandWindow(){window.$("#bottom-expandable-wrapper").toggleClass("open")},login(t){R.cookie("reg_return_url",window.location.pathname,{expires:1,path:"/;SameSite=Lax"}),window.location="/my/account/log-in/?cmpid=".concat(t.cmpid)},register(t){R.cookie("reg_return_url",window.location.pathname,{expires:1,path:"/;SameSite=Lax"}),R.cookie("reg_newsletters",!0,{expires:1,path:"/"}),window.location="/my/account/register/?cmpid=".concat(t.cmpid,"&newsletter_signup=1")},showCommentsModal(){var t=this;return y(b().mark((function e(){var r,n;return b().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("Subscriber Comments",!(r=document.getElementById(t.commentsModalSelector))){e.next=7;break}return n=r.innerHTML,e.next=6,x.open({size:x.modalVariants[1],heading:"Subscriber Comments",content:n,btnElement:null});case 6:x.bind();case 7:case"end":return e.stop()}}),e)})))()},signUp(t){var e=this;return y(b().mark((function r(){var n,o,i;return b().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if("yes"!==window.data_layer.user.is_logged_in){r.next=3;break}return e.signUpLoggedIn(t.newsletter_id),r.abrupt("return");case 3:if(n=t.email,o=t.newsletter_id,!n){r.next=16;break}return r.prev=6,i={method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:"email=".concat(n,"&newsletter_id=").concat(o)},r.next=10,fetch("/api/user/register-with-newsletter/",i);case 10:S.trackSubscribe(),r.next=16;break;case 13:r.prev=13,r.t0=r.catch(6),v.log(r.t0);case 16:case"end":return r.stop()}}),r,null,[[6,13]])})))()},signUpLoggedIn(t){return y(b().mark((function e(){var r;return b().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,r={method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:"bulletin_id=".concat(t)},e.next=4,fetch("/api/user/bulletin-subscription/",r);case 4:S.trackSubscribe(),e.next=10;break;case 7:e.prev=7,e.t0=e.catch(0),v.log(e.t0);case 10:case"end":return e.stop()}}),e,null,[[0,7]])})))()},loginModal(){T.login()},registerModal(){T.register()},setLts(t){var e=window.s;e.events="event89",e.eVar79=t,e.linkTrackVars="eVar2,eVar4,eVar5,eVar6,eVar7,eVar16,eVar19,eVar25,eVar26,eVar28,eVar59,eVar60,eVar61,eVar62,eVar79,eVar80,prop63,list3,events",e.suppressPageView=!0,e.linkTrackEvents="event89",e.tl(!0,"o","Non Meter LtS Score")},setLtsHighShowingGate(){var t=window.s;t.eVar59="T1 / Inline / Interrupt for Premium Content / 2021 (1)",t.events="event5",t.linkTrackVars="eVar2,eVar3,eVar4,eVar5,eVar6,eVar16,eVar19,eVar25,eVar26,eVar28,eVar43,eVar59,eVar61,eVar62,prop63,eVar80,eVar79,list3, events",t.linkTrackEvents="event5",t.tl(document,"o","Metered Access Notice")},showOffer(t){var e={templateId:t.templateId,termId:t.termId,offerId:t.offerId,displayMode:"modal",checkoutFlowId:t.checkoutFlowId};""!==t.templateVariantId&&(e.templateVariantId=t.templateVariantId),window.tp.offer.startCheckout(e)}},k=(r(90906),r(23792),r(62953),r(48408),{queryString:null,get(t){return null===this.queryString&&this.decode(),t.indexOf("[")>1?this.queryString.getAll(t):this.queryString.get(t)},decode(t){var e=t;return void 0===e&&(e=window.location.search.slice(1)),this.queryString=new URLSearchParams(e),this.queryString},encode(){return this.queryString.toString()},stringify(t){return"?".concat(Object.entries(t).map((function(t){return t.join("=")})).join("&"))},set(t,e){t.indexOf("[")>1?this.queryString.append(t,e):this.queryString.set(t,e)},delete(t){this.queryString.delete(t)}}),A={subscriptions:null,showcaseDomain:"",templateId:"",templateVariantId:"",uniqueId:"",registeredTimestamp:"",load(t,e,r,n){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"",i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;this.subscriptions=t,this.showcaseDomain=e,this.templateId=r,this.templateVariantId=n,this.uniqueId=o,this.registeredTimestamp=i,v.log("Extended Metering: Loaded for ".concat(e,":showcase")),t.init("".concat(e,":showcase")),t.setOnLoginRequest((function(){T.login()})),t.setOnNativeSubscribeRequest((function(){document.location="/subscribe/?ref=extendedmetering"}))},showGoogleRegWall(){var t=this;v.log("Extended Metering: Showing Reg Wall with an iframe of https://www.".concat(this.showcaseDomain,"/showcase.html")),window.GaaMeteringRegwall.show({iframeUrl:"https://www.".concat(this.showcaseDomain,"/showcase.html")}).then((function(e){t.registerShowcaseUser(e)})).catch((function(t){v.log("Extended Metering: Reg wall failed with an error object of ",t)}))},userIsSubscriber(){v.log("Extended Metering: User is Subbed"),this.subscriptions.setShowcaseEntitlement({entitlement:"EVENT_SHOWCASE_UNLOCKED_BY_SUBSCRIPTION",isUserRegister:!0})},userHasGateAccess(){v.log("Extended Metering: Meter not expired"),this.subscriptions.setShowcaseEntitlement({entitlement:"EVENT_SHOWCASE_UNLOCKED_BY_METER",isUserRegister:"yes"===window.data_layer.user.is_logged_in})},articleNotGated(){v.log("Extended Metering: Article is not gated"),this.subscriptions.setShowcaseEntitlement({entitlement:"EVENT_SHOWCASE_UNLOCKED_FREE_PAGE",isUserRegister:"yes"===window.data_layer.user.is_logged_in})},triggerGoogleGate(){var t=this;if(v.log("Extended Metering: Loading Google Gate"),"yes"===window.data_layer.user.is_logged_in){var e=this.getUserStateObj();v.log("Extended Metering: UserState",e),this.subscriptions.getEntitlements(e).then((function(e){v.log("Extended Metering: Entitlements object",e),e.enablesThisWithGoogleMetering()?e.consume((function(){})):t.subscriptions.setShowcaseEntitlement({entitlement:"EVENT_SHOWCASE_NO_ENTITLEMENTS_PAYWALL",isUserRegister:!0})}))}else this.showGoogleRegWall()},registerShowcaseUser(t){var e=this;return y(b().mark((function r(){var n,o,i;return b().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return v.log("Extended Metering: User data:",t),n={headers:{"content-type":"application/x-www-form-urlencoded;charset=utf-8"}},(o=new FormData).set("google_id",t.idToken),i=null,r.prev=5,r.next=8,O().post("/api/user/google/showcase/create/",o,n);case 8:i=r.sent,r.next=15;break;case 11:return r.prev=11,r.t0=r.catch(5),v.log("Creation failed",r.t0),r.abrupt("return");case 15:e.uniqueId=i.unique_id,e.registeredTimestamp=i.date_registered,window.data_layer.user.is_logged_in="yes";case 18:case"end":return r.stop()}}),r,null,[[5,11]])})))()},getUserStateObj(){return{metering:{state:{id:this.uniqueId,standardAttributes:{registered_user:{timestamp:this.registeredTimestamp}}}}}},checkShowcaseReferrer(){if(!k.get("gaa_at"))return!1;if(!k.get("gaa_n"))return v.log("SwG Entitlements: The `gaa_n` URL param is missing."),!1;if(!k.get("gaa_sig"))return v.log("SwG Entitlements: The `gaa_sig` URL param is missing."),!1;if(!k.get("gaa_ts"))return v.log("SwG Entitlements: The `gaa_ts` URL param is missing."),!1;if(parseInt(k.get("gaa_ts"),16)-1||"NationalNewsModule"===r)&&(r="ArticleModule");var i=o.substring(1,o.length-1),a=i.split("/");if(!0===e){if("/"===i)return 0===t?"homepage":"";for(var s=[],c=0;c<4;c++)void 0===a[c]||a[c].match(/[0-9]+\./)||s.push(a[c]);return void 0===s[t]?"":s[t]}a[-1]="";for(var u=0;u<4;u++)void 0===a[u]&&(a[u]=""),""===a[u]||"ArticleModule"===r&&a[u].match(/[0-9]+\./)&&this.isArticleState?a[u]=a[u-1]:u>0&&(a[u]="".concat(a[u-1],"/").concat(a[u]));"/"===o&&(a[0]="homepage",a[1]="homepage",a[2]="homepage",a[3]="homepage");var l=o.match(/(\w+)\.(in|near|compare)\.([,a-zA-Z0-9 _-]+)[/]?$/),f=o.match(/(\w+)\.detail\.(.*)$/);return null!==f&&f.length>1&&(l=f),null!==l&&l.length>1&&(a[0]="li",a[1]="li/".concat(n),a[2]="li/".concat(n,"/").concat(l[1]),a[3]="li/".concat(n,"/").concat(l[1])),a[t].toLowerCase()},getOmniturePath(){return 1===j("#gallery-base-url").length?j("#gallery-base-url").val():window.location.pathname},getTrackingFromCookie(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=this.getCookie(t);return r||e},getConsentString(){var t=[];return this.getCookie("consentUUID")?t.push("yes"):t.push("no"),"true"===this.getCookie("_sp_enable_dfp_personalized_ads")?t.push("yes"):"false"===this.getCookie("_sp_enable_dfp_personalized_ads")?t.push("no"):t.push("none"),t.join(",")},getDayOfWeek(){var t=new Date,e=[];return e[0]="Sunday",e[1]="Monday",e[2]="Tuesday",e[3]="Wednesday",e[4]="Thursday",e[5]="Friday",e[6]="Saturday",e[t.getDay()]},getAutoPlay(t){return"yes"===t&&"/"!==window.location.pathname?"yes":"no"},getArticleAge(){var t=this.articleTimestamp;if(0===t)return"";var e=parseInt(t,10),r=(new Date).getTime()/1e3;return Math.round((r-e)/60)},getSource(t){if(""===t)return"martini";switch(parseInt(t,10)){case"6":return"knowledge";case"8":return"press association";case"17":return"uefa";case"18":return"jpi";default:return"martini"}},getCookie(t){var e=j.cookie(t);return e||""},getDevice(){var t=new MobileDetect(window.navigator.userAgent);return null!==t.phone()?"phone":null!==t.tablet()?"tablet":"desktop"},getMobileDevice(){return null!==new MobileDetect(window.navigator.userAgent).phone()?"yes":"no"},getTabletDevice(){return null!==new MobileDetect(window.navigator.userAgent).tablet()?"yes":"no"},getSourcepointAdbockStatus(){return void 0===j.cookie("nqab")?"unknown":"true"===j.cookie("nqab")?"yes":"no"},getSubscriptionGateway(t,e){return t?"sagepay":e?"piano":""},getSubscriptionLevel(t,e){return t?"subscribed":e?"registered":"annonymous"},getPianoTags(t,e,r,n,o,i,a,s,c,u,l,f,p,d,h,v,g,m,y){var w=this.moduleType,b=[];return b.push("martini"),b.push(w),b.push(t),""!==e&&b.push("master_".concat(e)),r&&b.push("content_is_breaking"),n&&b.push("content_is_editorial_opinion"),o&&b.push("free_subscriber"),i&&b.push("content_has_video"),a&&(b.push("content_is_article"),""!==s&&b.push("content_level_".concat(s)),c&&b.push("content_level_openaccess_override"),u>0&&b.push("content_has_gallery")),l&&"yes"!==j.cookie("nq-show-piano-viewer")&&b.push("user_is_newsquest"),f&&b.push("user_is_logged_in"),p&&b.push("user_has_newsletter"),d&&b.push("content_is_live_article"),""!==h&&b.push(h),g&&b.push("headline_has_covid"),m&&b.push("article_has_covid"),m&&g&&b.push("content_is_covid"),y&&b.push("has-audio"),b.push("user_".concat(this.getDevice())),v.length>0&&v.forEach((function(t){b.push(t)})),b},loadScript(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,n=document.createElement("script"),o=document.getElementsByTagName("body")[0];n.type="text/javascript",n.async=e,n.src=t,"string"==typeof r&&(n.id=r),o.parentNode.insertBefore(n,o)},getCmpDate(){var t=new Date,e=t.getDate().toString();1===e.length&&(e="0".concat(e));var r=(t.getMonth()+1).toString();return 1===r.length&&(r="0".concat(r)),e+r+t.getFullYear().toString()},getRestrictedContent(t,e,r,n){return 0===parseInt(t,10)||229===parseInt(e,10)||229===parseInt(r,10)||n.length>1?"no":"yes"},untrackedPuzzleCheck(){return this.getCookie("puzzle_last_visited")?"yes":"no"}};window.AudienceProjectData=h,window.advertisingTimer=g,window.data_layer_helper=L,window.qs=k,window.extendedMetering=A,window.pianoListener=P}()}();