var Segment=function(){var a={};return{time:function(b){a[b]=Date.now()},timeSince:function(b){return(b=a[b])?Date.now()-b:-1},event:function(b,c,d){$.ajax({type:"POST",url:d||"lmiapi/segment/send-event",contentType:"application/json",data:JSON.stringify({platform:"web",event:b,properties:c})})}}}();globalkey="";var linkedAccount,mdec_cache={},mdec_cache_key=null;
function lpmdec(a,b,c,d,f){if("undefined"==typeof a||null==a||0==a.length)return"";if("undefined"!=typeof c&&c!=g_local_key){"undefined"!=typeof d&&d||(d=AES.bin2hex(c));if(f&&"undefined"!=typeof mdec_cache[f+a])return mdec_cache[f+a];b=mdec(a,b,c,d);f&&(mdec_cache[f+a]=b);return b}"undefined"!=typeof g_local_key&&mdec_cache_key!=g_local_key&&(mdec_cache={},mdec_cache_key=g_local_key);if("undefined"!=typeof mdec_cache[f+a])return mdec_cache[f+a];b=mdec(a,b);f&&(mdec_cache[f+a]=b);return b}
function mdec(a,b,c,d){if("undefined"==typeof a||null==a||0==a.length)return"";if("string"!=typeof g_local_key||0==g_local_key.length){if("undefined"==typeof ischrome||lploggedin)alert("No encryption key found, forcing logout!"),reduxApp.investigateLogoutLogger("No encryption key found, forcing logout!",{source:"parsemobile.js -> mdec"}),window.location.href="../logout.php?nk_dec=1&mobile=1";return""}var f=g_local_key;if("undefined"==typeof g_local_key_hex||null==g_local_key_hex||0==g_local_key_hex.length)g_local_key_hex=
AES.bin2hex(g_local_key);var h=g_local_key_hex;"undefined"!=typeof c&&null!=c&&"undefined"!=typeof d&&null!=d&&(f=c,h=d);try{if(b?"!"==a.charAt(0)&&1==a.length%16&&32<a.length:"!"==a.charAt(0)){if("function"==typeof lpusexpcomencrypt&&lpusexpcomencrypt()&&"function"==typeof lpxpcomobj.decryptcbc)return b&&(a="!"+btoa(a.substring(1,17))+"|"+btoa(a.substring(17))),lpxpcomobj.decryptcbc(h,a);if("undefined"!=typeof document&&document.getElementById("lpplugin")&&"function"==typeof document.getElementById("lpplugin").decrypt)return b&&
(a="!"+btoa(a.substring(1,17))+"|"+btoa(a.substring(17))),document.getElementById("lpplugin").decrypt(h,a);var k=AES.StringToKeyIv(f,256);c=[];for(var e=0;e<k.key.length;++e)c[e]=k.key[e];k=[];if(b){for(e=1;17>e;++e)k[e-1]=a.charCodeAt(e);var g=[];for(e=17;e<a.length;e++)g[e-17]=a.charCodeAt(e)}else{var m=a.indexOf("|");if(-1!=m){var p=atob(a.substring(1,m));for(e=0;16>e;++e)k[e]=p.charCodeAt(e);g=a.substring(m+1)}}return AES.Decrypt({key:c,iv:k,data:g,b64:!b,bits:256,mode:"cbc"})}if("function"==
typeof lpusexpcomencrypt&&lpusexpcomencrypt())return lpxpcomobj.decrypt(h,b?btoa(a):a);if("undefined"!=typeof document&&document.getElementById("lpplugin")&&"function"==typeof document.getElementById("lpplugin").decrypt)return document.getElementById("lpplugin").decrypt(h,b?btoa(a):a);if(b){g=[];for(e=0;e<a.length;e++)g[e]=a.charCodeAt(e);var t=!1}else g=a,t=!0;return AES.Decrypt({pass:f,data:g,b64:t,mode:"ecb",bits:256})}catch(w){return"ERROR: AES mobile bug 2"}}
function lpmenc(a,b,c){return"undefined"==typeof a||null==a||0==a.length?"":menc(a,b,c?c:g_local_key)}
function menc(a,b,c){c=c?c:g_local_key;if("undefined"==typeof a||null==a||0==a.length||"string"!=typeof c||0==c.length)return"";try{if("function"==typeof lpusexpcomencrypt&&lpusexpcomencrypt()&&"function"==typeof lpxpcomobj.encryptcbc){a=lpxpcomobj.encryptcbc(lp_bin2hex(c),a);if(b){var d=a.indexOf("|");-1!=d&&(a="!"+atob(a.substring(1,d))+atob(a.substring(d+1)))}"undefined"!==typeof reduxApp&&"function"===typeof reduxApp.getState&&(reduxApp.isFeatureAvailable("veic_add_edit_delete_logging")||reduxApp.isFeatureAvailable("veic_shared_folder_actions_logging"))&&
reduxApp.setIntegrityCheckStorage(a,c);return a}var f=AES.StringToKeyIv(c,256),h=[];for(d=0;d<f.key.length;++d)h[d]=f.key[d];var k=AES.CreateIV(16);a=AES.Encrypt({key:h,iv:k.arr,data:a,b64:!b,bits:256,mode:"cbc"});f="!";if(b)for(f+=k.str,d=0;d<a.length;d++){var e=a[d];0>e&&(e+=256);f+=String.fromCharCode(e)}else f+=btoa(k.str)+"|"+a;"undefined"!==typeof reduxApp&&"function"===typeof reduxApp.getState&&(reduxApp.isFeatureAvailable("veic_add_edit_delete_logging")||reduxApp.isFeatureAvailable("veic_shared_folder_actions_logging"))&&
reduxApp.setIntegrityCheckStorage(b?crypto_btoa(f):f,c);return f}catch(g){return"ERROR: AES mobile bug"}};function lp_init_tlds(){if("undefined"==typeof lp_all_tlds||null==lp_all_tlds)lp_all_tlds=[],lp_all_tlds.hu="2000 agrar blogspot bolt casino city co com erotica erotika film forum games hotel info ingatlan jogasz konyvelo lakas media news nui org priv reklam sex shop sport suli szex tm tozsde utazas video".split(" "),lp_all_tlds.nl="*.transurl 752 blogspot bv co virtueeldomein".split(" "),lp_all_tlds.ca="ab bc blogspot co gc mb nb nf nl no-ip ns nt nu on pe qc sk yk".split(" "),lp_all_tlds.pa="abo ac com edu gob ing med net nom org sld".split(" "),
lp_all_tlds.se="a ab ac b bd blogspot brand c com d e f fh fhsk fhv g h i k komforb kommunalforbund komvux l lanarb lanbib m mil n naturbruksgymn net o org p parti pp press r s sshn t tm u w x y z".split(" "),lp_all_tlds.ac="ac co com edu gov gv mil net or org".split(" "),lp_all_tlds.ae="ac blogspot co com gov mil name net org pro sch".split(" "),lp_all_tlds.at="*.ex.ortsinfo *.kunden.ortsinfo blogspot.co ac biz co futurehosting futuremailing gv info or priv".split(" "),lp_all_tlds.be="*.transurl ac ap blogspot co com fgov to xa".split(" "),
lp_all_tlds.cn="cn-north-1.compute.amazonaws.com s3.cn-north-1.amazonaws.com cn-north-1.compute.amazonaws compute.amazonaws.com compute.amazonaws ac ah bj com cq edu fj gd gov gs gx gz ha hb he hi hk hl hn jl js jx ln mil mo net nm nx org qh sc sd sh sn sx tj tw xj xn--55qx5d xn--io0a7i xn--od0alg xz yn zj".split(" "),lp_all_tlds.cr="ac co ed fi go or sa".split(" "),lp_all_tlds.cy="blogspot.com * ac biz com ekloges gov info ltd name net org parliament press pro tm".split(" "),lp_all_tlds.fj="* ac biz com gov id info mil name net org pro school".split(" "),
lp_all_tlds.fk="* ac co gov net nom org".split(" "),lp_all_tlds.gg="ac alderney co gov guernsey ind ltd net org sark sch".split(" "),lp_all_tlds.gn="ac com edu gov net org".split(" "),lp_all_tlds.gt="com edu gob ind mil net org".split(" "),lp_all_tlds.id="blogspot.co ac biz co desa go mil my net or sch web".split(" "),lp_all_tlds.il="blogspot.co * ac co gov idf k12 muni net org".split(" "),lp_all_tlds.im="ltd.co plc.co ac co com gov net nic org ro tt tv".split(" "),lp_all_tlds["in"]="ac blogspot cloudns co edu ernet firm gen gov ind mil net nic org res".split(" "),
lp_all_tlds.ir="ac co gov id net org sch xn--mgba3a4f16a xn--mgba3a4fra".split(" "),lp_all_tlds.is="ac blogspot com cupcake edu gov int net org".split(" "),lp_all_tlds.je="ac co gov ind jersey ltd net org sch".split(" "),lp_all_tlds.jp="ac ad aichi akita aomori blogspot chiba co ed ehime fukui fukuoka fukushima gifu go gov gr gunma hiroshima hokkaido hyogo ibaraki ishikawa iwate kagawa kagoshima kanagawa kawasaki kitakyushu kobe kochi kumamoto kyoto lg mie miyagi miyazaki nagano nagasaki nagoya nara ne net niigata oita okayama okinawa or org osaka saga saitama sapporo sendai shiga shimane shizuoka tochigi tokushima tokyo tottori toyama wakayama xn--0trq7p7nn xn--1ctwo xn--1lqs03n xn--1lqs71d xn--2m4a15e xn--32vp30h xn--4it168d xn--4it797k xn--4pvxs xn--5js045d xn--5rtp49c xn--5rtq34k xn--6btw5a xn--6orx2r xn--7t0a264c xn--8ltr62k xn--8pvr4u xn--c3s14m xn--d5qv7z876c xn--djrs72d6uy xn--djty4k xn--efvn9s xn--ehqz56n xn--elqq16h xn--f6qx53a xn--k7yn95e xn--kbrq7o xn--klt787d xn--kltp7d xn--kltx9a xn--klty5x xn--mkru45i xn--nit225k xn--ntso0iqx3a xn--ntsq17g xn--pssu33l xn--qqqt11m xn--rht27z xn--rht3d xn--rht61e xn--rny31h xn--tor131o xn--uist22h xn--uisz3g xn--uuwu58a xn--vgu402c xn--zbx025d yamagata yamaguchi yamanashi yokohama".split(" "),
lp_all_tlds.kr="ac blogspot busan chungbuk chungnam co daegu daejeon es gangwon go gwangju gyeongbuk gyeonggi gyeongnam hs incheon jeju jeonbuk jeonnam kg mil ms ne nm or pe re sc seoul ulsan".split(" "),lp_all_tlds.mw="ac biz co com coop edu gov int museum net org".split(" "),lp_all_tlds.nz="blogspot.co * ac co cri geek gen govt health iwi kiwi maori mil net org parliament school xn--mori-qsa".split(" "),lp_all_tlds.ru="ac adygeya altai amur amursk arkhangelsk astrakhan baikal bashkiria belgorod bir blogspot bryansk buryatia cbg chel chelyabinsk chita chukotka chuvashia cmw com dagestan dudinka e-burg edu fareast gov grozny int irkutsk ivanovo izhevsk jamal jar joshkar-ola k-uralsk kalmykia kaluga kamchatka karelia kazan kchr kemerovo khabarovsk khakassia khv kirov kms koenig komi kostroma krasnoyarsk kuban kurgan kursk kustanai kuzbass lipetsk magadan magnitka mari mari-el marine mil mordovia mosreg msk murmansk mytis nakhodka nalchik net nkz nnov norilsk nov novosibirsk nsk omsk orenburg org oryol oskol palana penza perm pp pskov ptz pyatigorsk rnd rubtsovsk ryazan sakhalin samara saratov simbirsk smolensk snz spb stavropol stv surgut syzran tambov tatarstan test tom tomsk tsaritsyn tsk tula tuva tver tyumen udm udmurtia ulan-ude vdonsk vladikavkaz vladimir vladivostok volgograd vologda voronezh vrn vyatka yakutia yamal yaroslavl yekaterinburg yuzhno-sakhalinsk zgrad".split(" "),
lp_all_tlds.rw="ac co com edu gouv gov int mil net".split(" "),lp_all_tlds.au="act.edu blogspot.com nsw.edu nt.edu qld.edu qld.gov sa.edu sa.gov tas.edu tas.gov vic.edu vic.gov wa.edu wa.gov act asn com conf csiro edu gov id info net nsw nt org oz qld sa tas telememo vic wa".split(" "),lp_all_tlds.th="ac co go in mi net or".split(" "),lp_all_tlds.tj="ac biz co com edu go gov int mil name net nic org test web".split(" "),lp_all_tlds.tz="ac co go hotel info me mil mobi ne or sc tv".split(" "),lp_all_tlds.ug=
"ac blogspot co com go ne or org sc".split(" "),lp_all_tlds.uk="*.sch blogspot.co no-ip.co service.gov wellbeingzone.co !bl !british-library !jet !mod !national-library-scotland !nel !nic !nls !parliament * ac co com gov icnet ltd me mil net nhs org plc police sch".split(" "),lp_all_tlds.vn="ac biz blogspot com edu gov health info int name net org pro".split(" "),lp_all_tlds.yu=["ac","co","edu","org"],lp_all_tlds.za="blogspot.co * ac agric agrica alt city co com edu gov grondar law mil net ngo nis nom org school tm web".split(" "),
lp_all_tlds.zm="* ac biz co com edu gov info mil net org sch".split(" "),lp_all_tlds.zw=["*","ac","co","gov","org"],lp_all_tlds.br="*.nom ac.leg al.leg am.leg ap.leg ba.leg blogspot.com ce.leg df.leg es.leg go.leg ma.leg mg.leg ms.leg mt.leg pa.leg pb.leg pe.leg pi.leg pr.leg rj.leg rn.leg ro.leg rr.leg rs.leg sc.leg se.leg sp.leg to.leg sp.gov adm adv agr am arq art ato b bio blog bmd cim cng cnt com coop dpn ecn eco edu emp eng esp etc eti far flog fm fnd fot fst g12 ggf gov imb ind inf jor jus leg lel mat med mil mp mus net nom not ntr odo org ppg pro psc psi qsl radio rec slg srv taxi teo tmp trd tur tv vet vlog wiki zlg".split(" "),
lp_all_tlds.ht="adult art asso com coop edu firm gouv info med net org perso pol pro rel shop".split(" "),lp_all_tlds.mv="aero biz com coop edu gov info int mil museum name net org pro".split(" "),lp_all_tlds.pl="ap.gov griw.gov ic.gov is.gov kmpsp.gov konsulat.gov kppsp.gov kwp.gov kwpsp.gov mup.gov mw.gov oirm.gov oum.gov pa.gov pinb.gov piw.gov po.gov psp.gov psse.gov pup.gov rzgw.gov sa.gov sdn.gov sko.gov so.gov sr.gov starostwo.gov ug.gov ugim.gov um.gov umig.gov upow.gov uppo.gov us.gov uw.gov uzs.gov wif.gov wiih.gov winb.gov wios.gov witd.gov wiw.gov wsa.gov wskr.gov wuoz.gov wzmiuw.gov zp.gov 6bone agro aid art atm augustow auto babia-gora bedzin beep beskidy bialowieza bialystok bielawa bieszczady biz boleslawiec bydgoszcz bytom cieszyn co com czeladz czest dlugoleka edu elblag elk gda gdansk gdynia gliwice glogow gmina gniezno gorlice gov grajewo gsm ilawa info irc jaworzno jelenia-gora jgora kalisz karpacz kartuzy kaszuby katowice kazimierz-dolny kepno ketrzyn klodzko kobierzyce kolobrzeg konin konskowola krakow kutno lapy lebork legnica lezajsk limanowa lodz lomza lowicz lubin lublin lukow mail malbork malopolska mazowsze mazury mbone med media miasta mielec mielno mil mragowo naklo net ngo nieruchomosci nom nowaruda nysa olawa olecko olkusz olsztyn opoczno opole org ostroda ostroleka ostrowiec ostrowwlkp pc pila pisz podhale podlasie polkowice pomorskie pomorze powiat poznan priv prochowice pruszkow przeworsk pulawy radom rawa-maz realestate rel rybnik rzeszow sanok sejny sex shop siedlce sklep skoczow slask slupsk sopot sos sosnowiec stalowa-wola starachowice stargard suwalki swidnica swiebodzin swinoujscie szczecin szczytno szkola targi tarnobrzeg tgory tm torun tourism travel turek turystyka tychy usenet ustka walbrzych warmia warszawa waw wegrow wielun wlocl wloclawek wodzislaw wolomin wroc wroclaw zachpomor zagan zakopane zarow zgora zgorzelec".split(" "),
lp_all_tlds.us="chtr.k12.ma state.ma paroch.k12.ma pvt.k12.ma cc.ak cc.al cc.ar cc.as cc.az cc.ca cc.co cc.ct cc.dc cc.de cc.fl cc.ga cc.gu cc.hi cc.ia cc.id cc.il cc.in cc.ks cc.ky cc.la cc.ma cc.md cc.me cc.mi cc.mn cc.mo cc.ms cc.mt cc.nc cc.nd cc.ne cc.nh cc.nj cc.nm cc.nv cc.ny cc.oh cc.ok cc.or cc.pa cc.pr cc.ri cc.sc cc.sd cc.tn cc.tx cc.ut cc.va cc.vi cc.vt cc.wa cc.wi cc.wv cc.wy k12.ak k12.al k12.ar k12.as k12.az k12.ca k12.co k12.ct k12.dc k12.de k12.fl k12.ga k12.gu k12.ia k12.id k12.il k12.in k12.ks k12.ky k12.la k12.ma k12.md k12.me k12.mi k12.mn k12.mo k12.ms k12.mt k12.nc k12.ne k12.nh k12.nj k12.nm k12.nv k12.ny k12.oh k12.ok k12.or k12.pa k12.pr k12.ri k12.sc k12.tn k12.tx k12.ut k12.va k12.vi k12.vt k12.wa k12.wi k12.wy lib.ak lib.al lib.ar lib.as lib.az lib.ca lib.co lib.ct lib.dc lib.de lib.fl lib.ga lib.gu lib.hi lib.ia lib.id lib.il lib.in lib.ks lib.ky lib.la lib.ma lib.md lib.me lib.mi lib.mn lib.mo lib.ms lib.mt lib.nc lib.nd lib.ne lib.nh lib.nj lib.nm lib.nv lib.ny lib.oh lib.ok lib.or lib.pa lib.pr lib.ri lib.sc lib.sd lib.tn lib.tx lib.ut lib.va lib.vi lib.vt lib.wa lib.wi lib.wy ak al ar as az ca cloudns co com ct dc de dni drud fed fl ga golffan gu hi ia id il in is-by isa kids ks ky la land-4-sale ma md me mi mn mo ms mt nc nd ne nh nj nm noip nsn nv ny oh ok or pa pointto pr ri sc sd stuff-4-sale tn tx ut va vi vt wa wi wv wy".split(" "),
lp_all_tlds.fi=["aland","blogspot","dy","iki"],lp_all_tlds.mil=["army","navy"],lp_all_tlds["do"]="art com edu gob gov mil net org sld web".split(" "),lp_all_tlds.dz="art asso com edu gov net org pol".split(" "),lp_all_tlds.co="blogspot.com arts com edu firm gov info int mil net nom org rec store uk web".split(" "),lp_all_tlds.ro="arts blogspot com firm info nom nt org rec shop store tm www".split(" "),lp_all_tlds.ve="arts bib co com e12 edu firm gob gov info int mil net nom org rec store tec web".split(" "),
lp_all_tlds.lv="asn com conf edu eu gov id mil net org".split(" "),lp_all_tlds.lk="ac assn com edu gov grp hotel int ltd net ngo org sch soc web".split(" "),lp_all_tlds.fr="aeroport assedic asso avocat avoues blogspot cci chambagri chirurgiens-dentistes chirurgiens-dentistes-en-france com experts-comptables fbx-os fbxos freebox-os freeboxos geometre-expert gouv greta huissier-justice medecin nom notaires pharmacien port prd presse tm veterinaire".split(" "),lp_all_tlds.gp="asso com edu mobi net org".split(" "),
lp_all_tlds.mc=["asso","tm"],lp_all_tlds.tr="blogspot.com gov.nc !nic * av bbs bel biz com dr edu gen gov info k12 kep mil name nc net org pol tel tv web".split(" "),lp_all_tlds.az="biz com edu gov info int mil name net org pp pro".split(" "),lp_all_tlds.et="* biz com edu gov info name net org".split(" "),lp_all_tlds.nr="biz co com edu gov info net org".split(" "),lp_all_tlds.om="!mediaphone !nawras !nawrastelecom !omanmobile !omanpost !omantel !rakpetroleum !siemens !songfest !statecouncil * biz co com edu gov med mil museum net org pro sch".split(" "),
lp_all_tlds.pk="biz com edu fam gob gok gon gop gos gov info net org web".split(" "),lp_all_tlds.pr="ac biz com edu est gov info isla name net org pro prof".split(" "),lp_all_tlds.tt="aero biz co com coop edu gov info int jobs mobi museum name net org pro travel us".split(" "),lp_all_tlds.ua="biz cherkassy cherkasy chernigov chernihiv chernivtsi chernovtsy ck cn co com cr crimea cv dn dnepropetrovsk dnipropetrovsk dominic donetsk dp edu gov if in ivano-frankivsk kh kharkiv kharkov kherson khmelnitskiy khmelnytskyi kiev kirovograd km kr krym ks kv kyiv lg lt lugansk lutsk lv lviv mk mykolaiv net nikolaev od odesa odessa org pl poltava pp rivne rovno rv sb sebastopol sevastopol sm sumy te ternopil uz uzhgorod vinnica vinnytsia vn volyn yalta zaporizhzhe zaporizhzhia zhitomir zhytomyr zp zt".split(" "),
lp_all_tlds.tw="blogspot club com ebiz edu game gov gove idv mil net org xn--czrw28b xn--uc0atv xn--zf0ao64a".split(" "),lp_all_tlds.ag=["co","com","net","nom","org"],lp_all_tlds.ao="co ed gv it og pb".split(" "),lp_all_tlds.bw=["co","org"],lp_all_tlds.ck=["!www","*","co"],lp_all_tlds.ls=["co","org"],lp_all_tlds.ma="ac co gov net org press".split(" "),lp_all_tlds.af=["com","edu","gov","net","org"],lp_all_tlds.ai=["com","net","off","org"],lp_all_tlds.al="blogspot com edu gov inima mil net org soros tirana uniti upt".split(" "),
lp_all_tlds.an=["com","edu","net","org"],lp_all_tlds.ar="blogspot.com !congresodelalengua3 !educ !gobiernoelectronico !mecon !nacion !nic !promocion !retina !uba * com edu gob gov int mil net org tur".split(" "),lp_all_tlds.aw=["com"],lp_all_tlds.bb="biz co com edu gov info net org store tv".split(" "),lp_all_tlds.bd="* com edu gov mil net org".split(" "),lp_all_tlds.bm=["com","edu","gov","net","org"],lp_all_tlds.bn=["*","com","edu","net","org"],lp_all_tlds.bo="com edu gob gov int mil net org tv".split(" "),
lp_all_tlds.bs=["com","edu","gov","net","org"],lp_all_tlds.bt=["com","edu","gov","net","org"],lp_all_tlds.cd=["com","gov","net","org"],lp_all_tlds.ch="blogspot com gotdns gov net org".split(" "),lp_all_tlds.cu="com edu gov inf net org".split(" "),lp_all_tlds.dm=["com","edu","gov","net","org"],lp_all_tlds.ec="com edu fin gob gov info k12 med mil net org pro".split(" "),lp_all_tlds.ee="blogspot.com aip com edu fie gov lib med org pri riik".split(" "),lp_all_tlds.eg="blogspot.com com edu eun gov mil name net org sci".split(" "),
lp_all_tlds.es="blogspot.com com edu gob nom org".split(" "),lp_all_tlds.eu="*.transurl cloudns com mycd spdns wellbeingzone".split(" "),lp_all_tlds.gb=["com","net"],lp_all_tlds.ge="com edu gov mil net org pvt".split(" "),lp_all_tlds.gh=["com","edu","gov","mil","org"],lp_all_tlds.gi="com edu gov ltd mod org".split(" "),lp_all_tlds.gr="blogspot com edu gov net org".split(" "),lp_all_tlds.gu="* com edu gov mil net org".split(" "),lp_all_tlds.hk="blogspot com edu gov idv inc ltd net org xn--55qx5d xn--ciqpn xn--gmq050i xn--gmqw5a xn--io0a7i xn--lcvr32d xn--mk0axi xn--mxtq1m xn--od0alg xn--od0aq3b xn--tn0ag xn--uc0atv xn--uc0ay4a xn--wcvs22d xn--zf0avx".split(" "),
lp_all_tlds.hn="com edu gob mil net org".split(" "),lp_all_tlds.hr=["blogspot","com","from","iz","name"],lp_all_tlds.jm="* com edu gov net org".split(" "),lp_all_tlds.jo="com edu gov mil name net org sch".split(" "),lp_all_tlds.kh="* com edu gov mil net org per".split(" "),lp_all_tlds.kw="* com edu gov mil net org".split(" "),lp_all_tlds.ky=["com","edu","gov","net","org"],lp_all_tlds.kz="com edu gov mil net org".split(" "),lp_all_tlds.la="bnr c com edu gov info int net org per".split(" "),lp_all_tlds.lb=
"com edu gov mil net org".split(" "),lp_all_tlds.lc="co com edu gov net org oy".split(" "),lp_all_tlds.li=["blogspot","com","gov","net","org"],lp_all_tlds.lr=["com","edu","gov","net","org"],lp_all_tlds.ly="com edu gov id med net org plc sch".split(" "),lp_all_tlds.mg="co com edu gov mil nom org prd tm".split(" "),lp_all_tlds.mk="blogspot com edu gov inf name net org".split(" "),lp_all_tlds.mm="* com edu gov net org".split(" "),lp_all_tlds.mo=["com","edu","gov","net","org"],lp_all_tlds.mt="blogspot.com * com edu gov net org".split(" "),
lp_all_tlds.mu="ac co com gov net or org".split(" "),lp_all_tlds.mx="blogspot com edu gob gov net org".split(" "),lp_all_tlds.my="blogspot com edu gov mil name net org".split(" "),lp_all_tlds.na="ca cc co com dr in info mobi mx name net or org pro school tv us ws".split(" "),lp_all_tlds.nc=["asso","com","net","org"],lp_all_tlds.ng="blogspot.com ac com edu gov i mil mobi name net org sch".split(" "),lp_all_tlds.ni="* ac biz co com edu gob in info int mil net nom org web".split(" "),lp_all_tlds.no=
"bo.nordland bo.telemark gs.aa gs.ah gs.bu gs.fm gs.hl gs.hm gs.jan-mayen gs.mr gs.nl gs.nt gs.of gs.ol gs.oslo gs.rl gs.sf gs.st gs.svalbard gs.tm gs.tr gs.va gs.vf heroy.more-og-romsdal heroy.nordland nes.akershus nes.buskerud os.hedmark os.hordaland sande.more-og-romsdal sande.vestfold sande.xn--mre-og-romsdal-qqb valer.hedmark valer.ostfold xn--b-5ga.nordland xn--b-5ga.telemark xn--hery-ira.nordland xn--hery-ira.xn--mre-og-romsdal-qqb xn--vler-qoa.hedmark xn--vler-qoa.xn--stfold-9xa aa aarborte aejrie afjord agdenes ah aknoluokta akrehamn al alaheadju alesund algard alstahaug alta alvdal amli amot andasuolo andebu andoy ardal aremark arendal arna aseral asker askim askoy askvoll asnes audnedaln aukra aure aurland aurskog-holand austevoll austrheim averoy badaddja bahcavuotna bahccavuotna baidar bajddar balat balestrand ballangen balsfjord bamble bardu barum batsfjord bearalvahki beardu beiarn berg bergen berlevag bievat bindal birkenes bjarkoy bjerkreim bjugn blogspot bodo bokn bomlo bremanger bronnoy bronnoysund brumunddal bryne bu budejju bygland bykle cahcesuolo co com davvenjarga davvesiida deatnu dep dielddanuorri divtasvuodna divttasvuotna donna dovre drammen drangedal drobak dyroy egersund eid eidfjord eidsberg eidskog eidsvoll eigersund elverum enebakk engerdal etne etnedal evenassi evenes evje-og-hornnes farsund fauske fedje fet fetsund fhs finnoy fitjar fjaler fjell fla flakstad flatanger flekkefjord flesberg flora floro fm folkebibl folldal forde forsand fosnes frana fredrikstad frei frogn froland frosta froya fuoisku fuossko fusa fylkesbibl fyresdal gaivuotna galsa gamvik gangaviika gaular gausdal giehtavuoatna gildeskal giske gjemnes gjerdrum gjerstad gjesdal gjovik gloppen gol gran grane granvin gratangen grimstad grong grue gulen guovdageaidnu ha habmer hadsel hagebostad halden halsa hamar hamaroy hammarfeasta hammerfest hapmir haram hareid harstad hasvik hattfjelldal haugesund hemne hemnes hemsedal herad hitra hjartdal hjelmeland hl hm hobol hof hokksund hol hole holmestrand holtalen honefoss hornindal horten hoyanger hoylandet hurdal hurum hvaler hyllestad ibestad idrett inderoy iveland ivgu jan-mayen jessheim jevnaker jolster jondal jorpeland kafjord karasjohka karasjok karlsoy karmoy kautokeino kirkenes klabu klepp kommune kongsberg kongsvinger kopervik kraanghke kragero kristiansand kristiansund krodsherad krokstadelva kvafjord kvalsund kvam kvanangen kvinesdal kvinnherad kviteseid kvitsoy laakesvuemie lahppi langevag lardal larvik lavagis lavangen leangaviika lebesby leikanger leirfjord leirvik leka leksvik lenvik lerdal lesja levanger lier lierne lillehammer lillesand lindas lindesnes loabat lodingen lom loppa lorenskog loten lund lunner luroy luster lyngdal lyngen malatvuopmi malselv malvik mandal marker marnardal masfjorden masoy matta-varjjat meland meldal melhus meloy meraker midsund midtre-gauldal mil mjondalen mo-i-rana moareke modalen modum molde mosjoen moskenes moss mosvik mr muosat museum naamesjevuemie namdalseid namsos namsskogan nannestad naroy narviika narvik naustdal navuotna nedre-eiker nesna nesodden nesoddtangen nesseby nesset nissedal nittedal nl nord-aurdal nord-fron nord-odal norddal nordkapp nordre-land nordreisa nore-og-uvdal notodden notteroy nt odda of oksnes ol omasvuotna oppdal oppegard orkanger orkdal orland orskog orsta osen oslo osoyro osteroy ostre-toten overhalla ovre-eiker oyer oygarden oystre-slidre porsanger porsangu porsgrunn priv rade radoy rahkkeravju raholt raisa rakkestad ralingen rana randaberg rauma rendalen rennebu rennesoy rindal ringebu ringerike ringsaker risor rissa rl roan rodoy rollag romsa romskog roros rost royken royrvik ruovat rygge salangen salat saltdal samnanger sandefjord sandnes sandnessjoen sandoy sarpsborg sauda sauherad sel selbu selje seljord sf siellak sigdal siljan sirdal skanit skanland skaun skedsmo skedsmokorset ski skien skierva skiptvet skjak skjervoy skodje slattum smola snaase snasa snillfjord snoasa sogndal sogne sokndal sola solund somna sondre-land songdalen sor-aurdal sor-fron sor-odal sor-varanger sorfold sorreisa sortland sorum spjelkavik spydeberg st stange stat stathelle stavanger stavern steigen steinkjer stjordal stjordalshalsen stokke stor-elvdal stord stordal storfjord strand stranda stryn sula suldal sund sunndal surnadal svalbard sveio svelvik sykkylven tana tananger time tingvoll tinn tjeldsund tjome tm tokke tolga tonsberg torsken tr trana tranby tranoy troandin trogstad tromsa tromso trondheim trysil tvedestrand tydal tynset tysfjord tysnes tysvar ullensaker ullensvang ulvik unjarga utsira va vaapste vadso vaga vagan vagsoy vaksdal valle vang vanylven vardo varggat varoy vefsn vega vegarshei vennesla verdal verran vestby vestnes vestre-slidre vestre-toten vestvagoy vevelstad vf vgs vik vikna vindafjord voagat volda voss vossevangen xn--andy-ira xn--asky-ira xn--aurskog-hland-jnb xn--avery-yua xn--bdddj-mrabd xn--bearalvhki-y4a xn--berlevg-jxa xn--bhcavuotna-s4a xn--bhccavuotna-k7a xn--bidr-5nac xn--bievt-0qa xn--bjarky-fya xn--bjddar-pta xn--blt-elab xn--bmlo-gra xn--bod-2na xn--brnny-wuac xn--brnnysund-m8ac xn--brum-voa xn--btsfjord-9za xn--davvenjrga-y4a xn--dnna-gra xn--drbak-wua xn--dyry-ira xn--eveni-0qa01ga xn--finny-yua xn--fjord-lra xn--fl-zia xn--flor-jra xn--frde-gra xn--frna-woa xn--frya-hra xn--ggaviika-8ya47h xn--gildeskl-g0a xn--givuotna-8ya xn--gjvik-wua xn--gls-elac xn--h-2fa xn--hbmer-xqa xn--hcesuolo-7ya35b xn--hgebostad-g3a xn--hmmrfeasta-s4ac xn--hnefoss-q1a xn--hobl-ira xn--holtlen-hxa xn--hpmir-xqa xn--hyanger-q1a xn--hylandet-54a xn--indery-fya xn--jlster-bya xn--jrpeland-54a xn--karmy-yua xn--kfjord-iua xn--klbu-woa xn--koluokta-7ya57h xn--krager-gya xn--kranghke-b0a xn--krdsherad-m8a xn--krehamn-dxa xn--krjohka-hwab49j xn--ksnes-uua xn--kvfjord-nxa xn--kvitsy-fya xn--kvnangen-k0a xn--l-1fa xn--laheadju-7ya xn--langevg-jxa xn--ldingen-q1a xn--leagaviika-52b xn--lesund-hua xn--lgrd-poac xn--lhppi-xqa xn--linds-pra xn--loabt-0qa xn--lrdal-sra xn--lrenskog-54a xn--lt-liac xn--lten-gra xn--lury-ira xn--mely-ira xn--merker-kua xn--mjndalen-64a xn--mlatvuopmi-s4a xn--mli-tla xn--mlselv-iua xn--moreke-jua xn--mosjen-eya xn--mot-tla xn--msy-ula0h xn--mtta-vrjjat-k7af xn--muost-0qa xn--nmesjevuemie-tcba xn--nry-yla5g xn--nttery-byae xn--nvuotna-hwa xn--oppegrd-ixa xn--ostery-fya xn--osyro-wua xn--porsgu-sta26f xn--rady-ira xn--rdal-poa xn--rde-ula xn--rdy-0nab xn--rennesy-v1a xn--rhkkervju-01af xn--rholt-mra xn--risa-5na xn--risr-ira xn--rland-uua xn--rlingen-mxa xn--rmskog-bya xn--rros-gra xn--rskog-uua xn--rst-0na xn--rsta-fra xn--ryken-vua xn--ryrvik-bya xn--s-1fa xn--sandnessjen-ogb xn--sandy-yua xn--seral-lra xn--sgne-gra xn--skierv-uta xn--skjervy-v1a xn--skjk-soa xn--sknit-yqa xn--sknland-fxa xn--slat-5na xn--slt-elab xn--smla-hra xn--smna-gra xn--snase-nra xn--sndre-land-0cb xn--snes-poa xn--snsa-roa xn--sr-aurdal-l8a xn--sr-fron-q1a xn--sr-odal-q1a xn--sr-varanger-ggb xn--srfold-bya xn--srreisa-q1a xn--srum-gra xn--stjrdal-s1a xn--stjrdalshalsen-sqb xn--stre-toten-zcb xn--tjme-hra xn--tnsberg-q1a xn--trany-yua xn--trgstad-r1a xn--trna-woa xn--troms-zua xn--tysvr-vra xn--unjrga-rta xn--vads-jra xn--vard-jra xn--vegrshei-c0a xn--vestvgy-ixa6o xn--vg-yiab xn--vgan-qoa xn--vgsy-qoa0j xn--vre-eiker-k8a xn--vrggt-xqad xn--vry-yla5g xn--yer-zna xn--ygarden-p1a xn--ystre-slidre-ujb".split(" "),
lp_all_tlds.np="* com edu gov mil net org ort".split(" "),lp_all_tlds.pe="blogspot com edu gob mil net nom org".split(" "),lp_all_tlds.pf=["com","edu","org"],lp_all_tlds.pg=["*","com","net"],lp_all_tlds.ph="com edu gov i mil net ngo org".split(" "),lp_all_tlds.ps="com edu gov net org plo sec".split(" "),lp_all_tlds.pt="blogspot com edu gov int net nome org publ".split(" "),lp_all_tlds.py="com coop edu gov mil net org".split(" "),lp_all_tlds.qc=["com"],lp_all_tlds.sa="com edu gov med net org pub sch".split(" "),
lp_all_tlds.sb=["com","edu","gov","net","org"],lp_all_tlds.sc=["com","edu","gov","net","org"],lp_all_tlds.sd="com edu gov info med net org tv".split(" "),lp_all_tlds.sg="blogspot com edu gov idn net org per".split(" "),lp_all_tlds.sh="*.platform com edu gov hashbang mil net now org".split(" "),lp_all_tlds.sv="* co com edu gob org red".split(" "),lp_all_tlds.sy="com edu gov mil net org".split(" "),lp_all_tlds.tn="agrinet com defense edunet ens fin gov ind info intl mincom nat net org perso rnrt rns rnu tourism turen".split(" "),
lp_all_tlds.uy="blogspot.com com edu gub mil net org".split(" "),lp_all_tlds.vi="co com edu gov k12 net org".split(" "),lp_all_tlds.ye=["*","com","net"],lp_all_tlds.pro="aaa aca acct avocat bar cloudns cpa eng jur law med recht".split(" "),lp_all_tlds.arpa="e164 in-addr ip6 iris uri urn".split(" "),lp_all_tlds["int"]=["eu"],lp_all_tlds.bf=["gov"],lp_all_tlds.by=["blogspot.com","com","gov","mil","of"],lp_all_tlds.cx=["ath","gov"],lp_all_tlds.ie=["blogspot","gov"],lp_all_tlds.it="abr;abruzzo;ag;agrigento;al;alessandria;alto-adige;altoadige;an;ancona;andria-barletta-trani;andria-trani-barletta;andriabarlettatrani;andriatranibarletta;ao;aosta;aosta-valley;aostavalley;aoste;ap;aq;aquila;ar;arezzo;ascoli-piceno;ascolipiceno;asti;at;av;avellino;ba;balsan;bari;barletta-trani-andria;barlettatraniandria;bas;basilicata;belluno;benevento;bergamo;bergamo ;bg;bi;biella;bl;blogspot;bn;bo;bologna;bolzano;bozen;br;brescia;brindisi;bs;bt;bz;ca;cagliari;cal;calabria;caltanissetta;cam;campania;campidano-medio;campidanomedio;campobasso;carbonia-iglesias;carboniaiglesias;carrara-massa;carraramassa;caserta;catania;catanzaro;cb;ce;cesena-forli;cesenaforli;ch;chieti;ci;cl;cn;co;como;cosenza;cr;cremona;crotone;cs;ct;cuneo;cz;dell-ogliastra;dellogliastra;edu;emilia-romagna;emiliaromagna;emr;en;enna;fc;fe;fermo;ferrara;fg;fi;firenze;florence;fm;foggia;forli-cesena;forlicesena;fr;friuli-v-giulia;friuli-ve-giulia;friuli-vegiulia;friuli-venezia-giulia;friuli-veneziagiulia;friuli-vgiulia;friuliv-giulia;friulive-giulia;friulivegiulia;friulivenezia-giulia;friuliveneziagiulia;friulivgiulia;frosinone;fvg;ge;genoa;genova;go;gorizia;gov;gr;grosseto;iglesias-carbonia;iglesiascarbonia;im;imperia;is;isernia;kr;la-spezia;laquila;laspezia;latina;laz;lazio;lc;le;lecce;lecco;li;lig;liguria;livorno;lo;lodi;lom;lombardia;lombardy;lt;lu;lucania;lucca;macerata;mantova;mar;marche;massa-carrara;massacarrara;matera;mb;mc;me;medio-campidano;mediocampidano;messina;mi;milan;milano;mn;mo;modena;mol;molise;monza;monza-brianza;monza-e-della-brianza;monzabrianza;monzaebrianza;monzaedellabrianza;ms;mt;na;naples;napoli;no;novara;nu;nuoro;og;ogliastra;olbia-tempio;olbiatempio;or;oristano;ot;pa;padova;padua;palermo;parma;pavia;pc;pd;pe;perugia;pesaro-urbino;pesarourbino;pescara;pg;pi;piacenza;piedmont;piemonte;pisa;pistoia;pmn;pn;po;pordenone;potenza;potenza ;pr;prato;pt;pu;pug;puglia;pv;pz;ra;ragusa;ravenna;rc;re;reggio-calabria;reggio-emilia;reggiocalabria;reggioemilia;rg;ri;rieti;rimini;rm;rn;ro;roma;rome;rovigo;sa;salerno;sar;sardegna;sardinia;sassari;savona;si;sic;sicilia;sicily;siena;siracusa;so;sondrio;sp;sr;ss;suedtirol;sv;ta;taa;taranto;te;tempio-olbia;tempioolbia;teramo;terni;tn;to;torino;tos;toscana;tp;tr;trani-andria-barletta;trani-barletta-andria;traniandriabarletta;tranibarlettaandria;trapani;trentino;trentino-a-adige;trentino-aadige;trentino-alto-adige;trentino-altoadige;trentino-s-tirol;trentino-stirol;trentino-sud-tirol;trentino-sudtirol;trentino-sued-tirol;trentino-suedtirol;trentinoa-adige;trentinoaadige;trentinoalto-adige;trentinoaltoadige;trentinos-tirol;trentinostirol;trentinosud-tirol;trentinosudtirol;trentinosued-tirol;trentinosuedtirol;trento;treviso;trieste;ts;turin;tuscany;tv;ud;udine;umb;umbria;urbino-pesaro;urbinopesaro;va;val-d-aosta;val-daosta;vald-aosta;valdaosta;valle-aosta;valle-d-aosta;valle-daosta;valleaosta;valled-aosta;valledaosta;vallee-aoste;valleeaoste;vao;varese;vb;vc;vda;ve;ven;veneto;venezia;venice;verbania;vercelli;verona;vi;vibo-valentia;vibovalentia;vicenza;viterbo;vr;vs;vt;vv".split(";"),
lp_all_tlds.lt=["blogspot","gov","mil"],lp_all_tlds.lu=["blogspot","gov","mil","net","org"],lp_all_tlds.to="com edu gov mil net org".split(" "),lp_all_tlds.tp=["gov"],lp_all_tlds.tv=["better-than","dyndns","gov","on-the-web","worse-than"],lp_all_tlds.mobi=["dscloud","music","weather"],lp_all_tlds.mh=["net"],lp_all_tlds.ad=["nom"],lp_all_tlds.sr=["rs"],lp_all_tlds.va=["vatican"],lp_all_tlds.aero="accident-investigation accident-prevention aerobatic aeroclub aerodrome agents air-surveillance air-traffic-control aircraft airline airport airtraffic ambulance amusement association author ballooning broker caa cargo catering certification championship charter civilaviation club conference consultant consulting control council crew design dgca educator emergency engine engineer entertainment equipment exchange express federation flight freight fuel gliding government groundhandling group hanggliding homebuilt insurance journal journalist leasing logistics magazine maintenance marketplace media microlight modelling navigation parachuting paragliding passenger-association pilot press production recreation repbody res research rotorcraft safety scientist services show skydiving software student taxi trader trading trainer union workinggroup works".split(" "),
lp_all_tlds.as=["gov"],lp_all_tlds.ba="blogspot co com edu gov mil net org rs unbi unsa".split(" "),lp_all_tlds.bg="0 1 2 3 4 5 6 7 8 9 a b blogspot c d e f g h i j k l m n o p q r s t u v w x y z".split(" "),lp_all_tlds.bh=["com","edu","gov","net","org"],lp_all_tlds.bi=["co","com","edu","or","org"],lp_all_tlds.bj=["asso","barreau","blogspot","gouv"],lp_all_tlds.bz="com edu gov net org za".split(" "),lp_all_tlds.ci="ac asso co com ed edu go gouv int md net or org presse xn--aroport-bya".split(" "),
lp_all_tlds.cl=["blogspot","co","gob","gov","mil"],lp_all_tlds.cm=["co","com","gov","net"],lp_all_tlds.cw=["com","edu","net","org"],lp_all_tlds.er=["*"],lp_all_tlds.gy="co com edu gov net org".split(" "),lp_all_tlds.io="*.stolos apps.lair customer.enonic backplaneapp boxfuse browsersafetymark com dedyn drud enonic github gitlab hasura-app hzc ngrok nid pantheon pantheonsite protonet sandcats shiftedit spacekit".split(" "),lp_all_tlds.iq="com edu gov mil net org".split(" "),lp_all_tlds.ke="blogspot.co co or ne go ac sc me mobi info".split(" "),
lp_all_tlds.kg="com edu gov mil net org".split(" "),lp_all_tlds.ki="biz com edu gov info net org".split(" "),lp_all_tlds.km="ass asso com coop edu gouv gov medecin mil nom notaires org pharmaciens prd presse tm veterinaire".split(" "),lp_all_tlds.kn=["edu","gov","net","org"],lp_all_tlds.kp="com edu gov org rep tra".split(" "),lp_all_tlds.me="ac brasilia co daplie ddns diskstation dnsfor dscloud edu gov hopto i234 its loginto myds net noip org priv synology webhop yombo".split(" "),lp_all_tlds.ml=
"com edu gouv gov net org presse".split(" "),lp_all_tlds.mn=["edu","gov","nyc","org"],lp_all_tlds.mr=["blogspot","gov"],lp_all_tlds.museum="academy agriculture air airguard alabama alaska amber ambulance american americana americanantiques americanart amsterdam and annefrank anthro anthropology antiques aquarium arboretum archaeological archaeology architecture art artanddesign artcenter artdeco arteducation artgallery arts artsandcrafts asmatart assassination assisi association astronomy atlanta austin australia automotive aviation axis badajoz baghdad bahn bale baltimore barcelona baseball basel baths bauern beauxarts beeldengeluid bellevue bergbau berkeley berlin bern bible bilbao bill birdart birthplace bonn boston botanical botanicalgarden botanicgarden botany brandywinevalley brasil bristol british britishcolumbia broadcast brunel brussel brussels bruxelles building burghof bus bushey cadaques california cambridge can canada capebreton carrier cartoonart casadelamoneda castle castres celtic center chattanooga cheltenham chesapeakebay chicago children childrens childrensgarden chiropractic chocolate christiansburg cincinnati cinema circus civilisation civilization civilwar clinton clock coal coastaldefence cody coldwar collection colonialwilliamsburg coloradoplateau columbia columbus communication communications community computer computerhistory contemporary contemporaryart convent copenhagen corporation corvette costume countryestate county crafts cranbrook creation cultural culturalcenter culture cyber cymru dali dallas database ddr decorativearts delaware delmenhorst denmark depot design detroit dinosaur discovery dolls donostia durham eastafrica eastcoast education educational egyptian eisenbahn elburg elvendrell embroidery encyclopedic england entomology environment environmentalconservation epilepsy essex estate ethnology exeter exhibition family farm farmequipment farmers farmstead field figueres filatelia film fineart finearts finland flanders florida force fortmissoula fortworth foundation francaise frankfurt franziskaner freemasonry freiburg fribourg frog fundacio furniture gallery garden gateway geelvinck gemological geology georgia giessen glas glass gorge grandrapids graz guernsey halloffame hamburg handson harvestcelebration hawaii health heimatunduhren hellas helsinki hembygdsforbund heritage histoire historical historicalsociety historichouses historisch historisches history historyofscience horology house humanities illustration imageandsound indian indiana indianapolis indianmarket intelligence interactive iraq iron isleofman jamison jefferson jerusalem jewelry jewish jewishart jfk journalism judaica judygarland juedisches juif karate karikatur kids koebenhavn koeln kunst kunstsammlung kunstunddesign labor labour lajolla lancashire landes lans larsson lewismiller lincoln linz living livinghistory localhistory london losangeles louvre loyalist lucerne luxembourg luzern mad madrid mallorca manchester mansion mansions manx marburg maritime maritimo maryland marylhurst media medical medizinhistorisches meeres memorial mesaverde michigan midatlantic military mill miners mining minnesota missile missoula modern moma money monmouth monticello montreal moscow motorcycle muenchen muenster mulhouse muncie museet museumcenter museumvereniging music national nationalfirearms nationalheritage nativeamerican naturalhistory naturalhistorymuseum naturalsciences nature naturhistorisches natuurwetenschappen naumburg naval nebraska neues newhampshire newjersey newmexico newport newspaper newyork niepce norfolk north nrw nuernberg nuremberg nyc nyny oceanographic oceanographique omaha online ontario openair oregon oregontrail otago oxford pacific paderborn palace paleo palmsprings panama paris pasadena pharmacy philadelphia philadelphiaarea philately phoenix photography pilots pittsburgh planetarium plantation plants plaza portal portland portlligat posts-and-telecommunications preservation presidio press project public pubol quebec railroad railway research resistance riodejaneiro rochester rockart roma russia saintlouis salem salvadordali salzburg sandiego sanfrancisco santabarbara santacruz santafe saskatchewan satx savannahga schlesisches schoenbrunn schokoladen school schweiz science science-fiction scienceandhistory scienceandindustry sciencecenter sciencecenters sciencehistory sciences sciencesnaturelles scotland seaport settlement settlers shell sherbrooke sibenik silk ski skole society sologne soundandvision southcarolina southwest space spy square stadt stalbans starnberg state stateofdelaware station steam steiermark stjohn stockholm stpetersburg stuttgart suisse surgeonshall surrey svizzera sweden sydney tank tcm technology telekommunikation television texas textile theater time timekeeping topology torino touch town transport tree trolley trust trustee uhren ulm undersea university usa usantiques usarts uscountryestate usculture usdecorativearts usgarden ushistory ushuaia uslivinghistory utah uvic valley vantaa versailles viking village virginia virtual virtuel vlaanderen volkenkunde wales wallonie war washingtondc watch-and-clock watchandclock western westfalen whaling wildlife williamsburg windmill workshop xn--9dbhblg6di xn--comunicaes-v6a2o xn--correios-e-telecomunicaes-ghc29a xn--h1aegh xn--lns-qla york yorkshire yosemite youth zoological zoology".split(" "),
lp_all_tlds.mz="!teledata * ac adv co edu gov mil net org".split(" "),lp_all_tlds.nf="arts com firm info net other per rec store web".split(" "),lp_all_tlds.pn=["co","edu","gov","net","org"],lp_all_tlds.pw="belau cloudns co ed go ne or".split(" "),lp_all_tlds.qa="blogspot com edu gov mil name net org sch".split(" "),lp_all_tlds.re=["asso","blogspot","com","nom"],lp_all_tlds.rs="ac blogspot co edu gov in org".split(" "),lp_all_tlds.sl=["com","edu","gov","net","org"],lp_all_tlds.sn="art blogspot com edu gouv org perso univ".split(" "),
lp_all_tlds.so=["com","net","org"],lp_all_tlds.st="co com consulado edu embaixada gov mil net org principe saotome store".split(" "),lp_all_tlds.sx=["gov"],lp_all_tlds.sz=["ac","co","org"],lp_all_tlds.tl=["gov"],lp_all_tlds.tm="co com edu gov mil net nom org".split(" "),lp_all_tlds.uz=["co","com","net","org"],lp_all_tlds.vc="com edu gov mil net org".split(" "),lp_all_tlds.ws="com dyndns edu gov mypets net org".split(" "),lp_all_tlds.net="a.prod.fastly a.ssl.fastly b.ssl.fastly global.prod.fastly global.ssl.fastly *.alwaysdata *.cryptonomic r.cdn77 at-band-camp azure-mobile azurewebsites blogdns bounceme broke-it buyshouses cdn77-ssl cloudapp cloudfront cloudfunctions ddns dnsalias dnsdojo does-it dontexist dsmynas dynalias dynathome dynv6 eating-organic endofinternet familyds feste-ip firewall-gateway from-az from-co from-la from-ny gb gets-it ham-radio-op homeftp homeip homelinux homeunix hu in in-the-band is-a-chef is-a-geek isa-geek jp kicks-ass knx-server mydissent myeffect myfritz mymediapc mypsx mysecuritycamera nhlfan no-ip office-on-the pgafan podzone privatizehealthinsurance rackmaze redirectme scrapper-site se selfip sells-it servebbs serveblog serveftp serveminecraft static-access sytes taleo thruhere uk webhop za".split(" "),
lp_all_tlds.com="auth0 *.api.githubcloud *.cns.joyent *.ext.githubcloud ap-northeast-1.compute.amazonaws ap-northeast-2.compute.amazonaws ap-southeast-1.compute.amazonaws ap-southeast-2.compute.amazonaws eu-central-1.compute.amazonaws eu-west-1.compute.amazonaws s3.ap-northeast-2.amazonaws s3.eu-central-1.amazonaws sa-east-1.compute.amazonaws us-gov-west-1.compute.amazonaws us-west-1.compute.amazonaws us-west-2.compute.amazonaws z-1.compute-1.amazonaws z-2.compute-1.amazonaws *.0emm *.githubcloudusercontent alpha.bounty-full apps.fbsbx beta.bounty-full compute-1.amazonaws compute.amazonaws elb.amazonaws eu-1.evennode eu-2.evennode eu.meteorapp gist.githubcloud s3-ap-northeast-1.amazonaws s3-ap-northeast-2.amazonaws s3-ap-southeast-1.amazonaws s3-ap-southeast-2.amazonaws s3-eu-central-1.amazonaws s3-eu-west-1.amazonaws s3-external-1.amazonaws s3-external-2.amazonaws s3-fips-us-gov-west-1.amazonaws s3-sa-east-1.amazonaws s3-us-gov-west-1.amazonaws s3-us-west-1.amazonaws s3-us-west-2.amazonaws s3-website-ap-northeast-1.amazonaws s3-website-ap-southeast-1.amazonaws s3-website-ap-southeast-2.amazonaws s3-website-eu-west-1.amazonaws s3-website-sa-east-1.amazonaws s3-website-us-east-1.amazonaws s3-website-us-gov-west-1.amazonaws s3-website-us-west-1.amazonaws s3-website-us-west-2.amazonaws s3.amazonaws us-1.evennode us-2.evennode us-east-1.amazonaws xen.prgmr 1kapp 3utilities 4u africa alpha-myqnapcloud appchizi applinzi appspot ar betainabox blogdns blogspot blogsyte bloxcms bounty-full br cechire ciscofreak cloudcontrolapp cloudcontrolled cn co codespot damnserver ddnsking de dev-myqnapcloud ditchyourip dnsalias dnsdojo dnsiskinky doesntexist dontexist doomdns dreamhosters dsmynas dyn-o-saur dynalias dyndns-at-home dyndns-at-work dyndns-blog dyndns-free dyndns-home dyndns-ip dyndns-mail dyndns-office dyndns-pics dyndns-remote dyndns-server dyndns-web dyndns-wiki dyndns-work dynns elasticbeanstalk est-a-la-maison est-a-la-masion est-le-patron est-mon-blogueur eu familyds firebaseapp firewall-gateway flynnhub freebox-os freeboxos from-ak from-al from-ar from-ca from-ct from-dc from-de from-fl from-ga from-hi from-ia from-id from-il from-in from-ks from-ky from-ma from-md from-mi from-mn from-mo from-ms from-mt from-nc from-nd from-ne from-nh from-nj from-nm from-nv from-oh from-ok from-or from-pa from-pr from-ri from-sc from-sd from-tn from-tx from-ut from-va from-vt from-wa from-wi from-wv from-wy gb geekgalaxy getmyip githubcloud githubusercontent googleapis googlecode gotdns gotpantheon gr gtsonsl health-carereform herokuapp herokussl hk hobby-site homelinux homesecuritymac homesecuritypc homeunix hu iamallama ibm is-a-anarchist is-a-blogger is-a-bookkeeper is-a-bulls-fan is-a-caterer is-a-chef is-a-conservative is-a-cpa is-a-cubicle-slave is-a-democrat is-a-designer is-a-doctor is-a-financialadvisor is-a-geek is-a-green is-a-guru is-a-hard-worker is-a-hunter is-a-landscaper is-a-lawyer is-a-liberal is-a-libertarian is-a-llama is-a-musician is-a-nascarfan is-a-nurse is-a-painter is-a-personaltrainer is-a-photographer is-a-player is-a-republican is-a-rockstar is-a-socialist is-a-student is-a-teacher is-a-techie is-a-therapist is-an-accountant is-an-actor is-an-actress is-an-anarchist is-an-artist is-an-engineer is-an-entertainer is-certified is-gone is-into-anime is-into-cars is-into-cartoons is-into-games is-leet is-not-certified is-slick is-uberleet is-with-theband isa-geek isa-hockeynut issmarterthanyou jpn kr likes-pie likescandy logoip meteorapp mex myactivedirectory myasustor mydrobo myqnapcloud mysecuritycamera myshopblocks myvnc neat-url net-freaks nfshost no on-aptible onthewifi operaunite outsystemscloud ownprovider pagefrontapp pagespeedmobilizer pgfog point2this publishproxy qa2 qc quicksytes rackmaze rhcloud ro ru sa saves-the-whales se securitytactics selfip sells-for-less sells-for-u servebbs servebeer servecounterstrike serveexchange serveftp servegame servehalflife servehttp servehumour serveirc servemp3 servep2p servepics servequake servesarcasm simple-url sinaapp space-to-rent stufftoread teaches-yoga townnews-staging uk unusualperson us uy vipsinaapp withgoogle withyoutube workisboring writesthisblog xenapponazure yolasite za centralus.cloudapp.azure eastasia.cloudapp.azure eastus.cloudapp.azure eastus2.cloudapp.azure westeurope.cloudapp.azure westus.cloudapp.azure westus2.cloudapp.azure".split(" "),
lp_all_tlds.org="ssl.origin.cdn77-secure al.eu asso.eu at.eu au.eu be.eu bg.eu c.cdn77 ca.eu cd.eu ch.eu cn.eu cy.eu cz.eu de.eu dk.eu edu.eu ee.eu es.eu fi.eu fr.eu go.dyndns gr.eu home.dyndns hr.eu hu.eu ie.eu il.eu in.eu int.eu is.eu it.eu jp.eu kr.eu lt.eu lu.eu lv.eu mc.eu me.eu mk.eu mt.eu my.eu net.eu ng.eu nl.eu no.eu nz.eu paris.eu pl.eu pt.eu q-a.eu ro.eu rsc.cdn77 ru.eu se.eu si.eu sk.eu tr.eu uk.eu us.eu ae blogdns blogsite bmoattachments boldlygoingnowhere cable-modem certmgr cloudns collegefan couchpotatofries ddnss dnsalias dnsdojo doesntexist dontexist doomdns dsmynas duckdns dvrdns dynalias dyndns endofinternet endoftheinternet eu familyds from-me game-host gotdns hepforge hk hobby-site homedns homeftp homelinux homeunix hopto is-a-bruinsfan is-a-candidate is-a-celticsfan is-a-chef is-a-geek is-a-knight is-a-linux-user is-a-patsfan is-a-soxfan is-found is-lost is-saved is-very-bad is-very-evil is-very-good is-very-nice is-very-sweet isa-geek js kicks-ass misconfused mlbfan my-firewall myfirewall myftp mysecuritycamera nflfan no-ip pimienta podzone poivron potager read-books readmyblog selfip sellsyourhome servebbs serveftp servegame spdns stuff-4-sale sweetpepper tunk tuxfamily ufcfan us webhop wmflabs za zapto".split(" "),
lp_all_tlds.de="dyn.cosidns dyn.ddnss dyn.home-webserver dyndns.ddnss blogspot com ddnss dnshome dnsupdater dyn-ip24 dynamisches-dns dyndns1 firewall-gateway fuettertdasnetz goip home-webserver internet-dns isteingeek istmein keymachine l-o-g-i-n lebtimnetz leitungsen logoip my-gateway my-router myhome-server spdns taifun-dns traeumtgerade".split(" "),lp_all_tlds.biz="cloudns dscloud dyndns for-better for-more for-some for-the mmafan myftp no-ip selfip webhop".split(" "),lp_all_tlds.info="barrel-of-knowledge barrell-of-knowledge cloudns dvrcam dynamic-dns dyndns for-our groks-the groks-this here-for-more ilovecollege knowsitall no-ip nsupdate selfip webhop".split(" "),
lp_all_tlds.cc="cloudns fantasyleague ftpaccess game-server myphotos scrapping".split(" "),lp_all_tlds.nu=["merseine","mine","shacknet"],lp_all_tlds.cf=["blogspot"],lp_all_tlds.cv=["blogspot"],lp_all_tlds.cz=["blogspot","co","e4","realm"],lp_all_tlds.dk="biz blogspot co firm reg store".split(" "),lp_all_tlds.sk=["blogspot"],lp_all_tlds.td=["blogspot"],lp_all_tlds.ms=["com","edu","gov","net","org"],lp_all_tlds.vu=["com","edu","net","org"],lp_all_tlds["xn--90a3ac"]="xn--80au xn--90azh xn--c1avg xn--d1at xn--o1ac xn--o1ach".split(" "),
lp_all_tlds.su="adygeya arkhangelsk balashov bashkiria bryansk dagestan grozny ivanovo kalmykia kaluga karelia khakassia krasnodar kurgan lenug mordovia msk murmansk nalchik nov obninsk penza pokrovsk sochi spb togliatti troitsk tula tuva vladikavkaz vladimir vologda".split(" "),lp_all_tlds.name=["forgot.her","forgot.his"],lp_all_tlds.gl=["co","com","edu","net","org"],lp_all_tlds.am=["blogspot"],lp_all_tlds.md=["blogspot"],lp_all_tlds.si=["blogspot"],lp_all_tlds.link=["cyon","mypep"],lp_all_tlds.site=
["cyon"],lp_all_tlds.estate=["*.compute"],lp_all_tlds.network=["*.alces"],lp_all_tlds.management=["router"],lp_all_tlds.ovh=["nerdpol"],lp_all_tlds.cloud=["*.magentosite","*.statics","myfusion"],lp_all_tlds.xyz=["fhapp"],lp_all_tlds.land=["dev.static","sites.static","static"],lp_all_tlds.space=["stackspace"],lp_all_tlds.zone=["*.triton"],lp_all_tlds.krd=["co","edu"],lp_all_tlds.systems=["knightpoint"],lp_all_tlds.hosting=["opencraft"],lp_all_tlds.fit=["ptplus"],lp_all_tlds.asia=["cloudns"],lp_all_tlds.club=
["cloudns"],lp_all_tlds.faith=["ybo"],lp_all_tlds.one=["homelink"],lp_all_tlds.party=["ybo"],lp_all_tlds.review=["ybo"],lp_all_tlds.science=["ybo"],lp_all_tlds.trade=["ybo"],lp_all_tlds.edu=["*"],lp_all_tlds.gov=["*"]};var lpParseUriCache=[],lpParseUriNumber=0;
function lpParseUri(a){if("string"!=typeof a)return"";if(null!=lpParseUriCache[a])return lpParseUriCache[a];var b=a,c=a.substring(0,8).toLowerCase();0!==c.indexOf("http://")&&0!==c.indexOf("https://")&&0!==c.indexOf("ftp://")&&(a="https://"+a);try{if("function"==typeof URL){var d=new URL(a);if("object"==typeof d&&"string"==typeof d.href&&"undefined"!=typeof d.hostname)var f=d.hostname}}catch(h){}a=lpParseUri_old(a);if("undefined"!=typeof f&&"undefined"!=typeof a.host&&f.toLowerCase()!=a.host.toLowerCase())return"";
"undefined"!=typeof a.host&&(a.host=fix_url_host(a.host));if(500<lpParseUriNumber){for(d in lpParseUriCache){delete lpParseUriCache[d];break}lpParseUriNumber=0}lpParseUriCache[b]=a;lpParseUriNumber++;return a}
function lpParseUri_old(a){var b=null,c=null;-1!=a.indexOf("#")&&(c=a.substring(a.indexOf("#")+1),a=a.substring(0,a.indexOf("#")));-1!=a.indexOf("?")&&(b=a.substring(a.indexOf("?")+1),a=a.substring(0,a.indexOf("?")));for(;;){var d=a.match(/^(.*:\/\/[^\/]+\/.*)@/);if(d)a=a.substring(0,d[1].length)+a.substring(d[1].length).replace(/@/g,"%40");else break}if(2047<a.length)return"";var f=lpParseUri.options;d=null;try{d=f.parser[f.strictMode?"strict":"loose"].exec(a)}catch(k){try{d=500<a.length?f.parser[f.strictMode?
"strict":"loose"].exec(a.substr(0,500)):f.parser[f.strictMode?"strict":"loose"].exec(a.substr(0,floor(a.length/2)))}catch(e){logger.error("parseuri : failing {parseuri}",{parseuri:a,error}),d=f.parser[f.strictMode?"strict":"loose"].exec("http://")}}a=d;var h={};for(d=14;d--;)h[f.key[d]]=a[d]||"";h[f.q.name]={};h[f.key[12]].replace(f.q.parser,function(k,e,g){e&&(h[f.q.name][e]=g)});null!=b&&(h.query=b,null!=c&&(h.anchor=c));return h}
lpParseUri.options={strictMode:!1,key:"source protocol authority userInfo user password host port relative path directory file query anchor".split(" "),q:{name:"queryKey",parser:/(?:^|&)([^&=]*)=?([^&]*)/g},parser:{strict:/^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,loose:/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/}};
var lpCanUrlCache=[],lpCanUrlExNumber=0;
function lpcanonizeUrl(a,b){if("about:blank"==a)return"";if(null!=lpCanUrlCache[a])return lpCanUrlCache[a];null==b&&(b=lpParseUri(a));var c="";""!=b.port&&b.port!=get_default_port(b.protocol)&&(c=":"+b.port);if(b.host)b=b.host.toLowerCase()+c+b.path;else{if(!a)return"";b=a}-1!=b.indexOf(";")&&(b=b.substring(0,b.indexOf(";")));if(500<lpCanUrlExNumber){for(var d in lpCanUrlCache){delete lpCanUrlCache[d];break}lpCanUrlExNumber=0}lpCanUrlCache[a]=b;lpCanUrlExNumber++;return b}
function lp_gettld(a,b){"undefined"!=typeof lp_all_tlds&&null!=lp_all_tlds||lp_init_tlds();if("string"!=typeof a)return"";if(""==a&&"string"==typeof b&&0==b.indexOf("file://"))return"file:";a=a.toLowerCase();b="";"."==a.substr(-1)&&(b=".");a=a.replace(/\.$/,"");var c=a.split(".");if(a.match(/^\d+\.\d+\.\d+\.\d+$/))a=4;else if(a=2,3<=c.length){var d=c[c.length-1];if("undefined"!=typeof lp_all_tlds[d]){var f=c[c.length-2];4<=c.length&&lp_in_array(c[c.length-4]+"."+c[c.length-3]+"."+f,lp_all_tlds[d])&&
(a=5);3<=c.length&&lp_in_array(c[c.length-3]+"."+f,lp_all_tlds[d])?a=4:lp_in_array(f,lp_all_tlds[d])&&(a=3)}}for(;c.length>a;)c.shift();return c.join(".")+b}function lp_gettld_url(a){var b=lpParseUri(a);return lp_gettld(b.host,a)}function getname_url(a){a=lpParseUri(punycode.URLToUnicode(a));return("string"==typeof a.host?a.host:"").replace(/^www\./,"")}function lptrim(a){return"string"!=typeof a?a:a.replace(/^\s+|\s+$/g,"")}
function lp_regexp_quote(a){return(a+"").replace(/([\\\.\+\*\?\[\^\]\$\(\)\{\}=!<>\|:])/g,"\\$1")}function getactiontld(a){return"undefined"==typeof a||null==a||"undefined"==typeof a.action||0==a.action.indexOf("javascript:")?"":lp_gettld_url(punycode.URLToASCII(a.action))}function getname(a,b){if(b&&"undefined"!=typeof a.id&&""!=a.id)return a.id;if("undefined"!=typeof a&&null!=a){if("undefined"!=typeof a.name&&""!=a.name)return a.name;if("undefined"!=typeof a.id)return a.id}return""}
var accRecoveryHasFailed=!1;function sendAccountRecoveryErrorEvent(a){accRecoveryHasFailed||(lpImprove("acc_rec_failed",a,!0),accRecoveryHasFailed=!0)}
function lpIsVisible(a,b){if(a&&"INPUT"==a.tagName&&"hidden"==a.type)return!1;for(;a&&"BODY"!=a.tagName;a=a.parentNode){if("undefined"!=typeof a.style&&("hidden"==a.style.visibility||"none"==a.style.display))return!1;try{var c=a.ownerDocument.defaultView.getComputedStyle(a,"");if("hidden"==c.visibility||"none"==c.display)return!1}catch(d){}if(b)break}return!0}
function lp_in_array(a,b){if("undefined"==typeof b||null===b)return!1;for(var c=b.length,d=0;d<=c;d++)if("undefined"!=typeof b[d]&&b[d]==a)return lpArrayOffset=d,!0;return!1}function strip(a){if(!a.length)return a;a=a.replace(/\s+/g," ");a=a.replace(/^\s+|\s+$/g,"");a=a.replace(/[\|]+$/g,"");var b=a.match(/\|([^\|]+)$/);b&&(a=b[1],a=a.replace(/^\s+|\s+$/g,""));return a}
function lpxmlescape(a){if("undefined"==typeof a||null===a)return"";"number"==typeof a&&(a=""+a);a=a.replace(/&/g,"&amp;");a=a.replace(/</g,"&lt;");a=a.replace(/>/g,"&gt;");return a=a.replace(/"/g,"&quot;")}function lpxmlunescape(a){if("undefined"==typeof a||null===a)return"";"number"==typeof a&&(a=""+a);a=a.replace(/&lt;/g,"<");a=a.replace(/&gt;/g,">");a=a.replace(/&quot;/g,'"');return a=a.replace(/&amp;/g,"&")}var lpRegExCache=[],lpRegExNumber=0;
function regexp_match_c(a,b){var c=a.toString()+"_"+b;80<c.length&&("function"==typeof fasthash?c=fasthash(c):"function"==typeof SHA256&&(c=SHA256(c)));if(null!=lpRegExCache[c])return"1"==lpRegExCache[c];a=a.exec(b);if(2500<lpRegExNumber){for(var d in lpRegExCache){delete lpRegExCache[d];break}lpRegExNumber=0}lpRegExCache[c]=a?"1":"0";lpRegExNumber++;return a}
function fire_onchange(a,b,c){try{if(a){if(a.ownerDocument&&"function"==typeof a.ownerDocument.createEvent){var d=a.ownerDocument.createEvent("Events");d.initEvent("change",!0,!0);a.dispatchEvent(d);d=a.ownerDocument.createEvent("Events");d.initEvent("input",!0,!0);a.dispatchEvent(d);"undefined"!=typeof ischrome&&ischrome&&"function"==typeof a.onkeyup&&(c&&(d.keyCode=8),a.onkeyup(d))}else"undefined"!=typeof a.fireEvent&&(a.fireEvent("onchange"),a.fireEvent("oninput"));("undefined"==typeof b||null==
b||b)&&"function"==typeof sendKey&&sendKey("SHIFT",a);if("function"==typeof lpGetBrowserForDocument){var f=lpGetBrowserForDocument(a.ownerDocument);f&&(f.lpfieldchanged=!0)}}}catch(h){}}function get_default_port(a){switch(a){case "http":return 80;case "https":return 443;case "ftp":return 21;default:return 0}}function get_port(a){var b=0;"undefined"!=typeof a.port&&a.port?b=a.port:"undefined"!=typeof a.protocol&&a.protocol&&(b=get_default_port(a.protocol));return b}
function compare_ports(a,b){a=""!=a.port?a.port:get_default_port(a.protocol);b=""!=b.port?b.port:get_default_port(b.protocol);return a==b}function array_size(a){var b=a.length?--a.length:-1,c;for(c in a)b++;return b}function lpgetlocalts(){return(new Date).getTime()}function lp_get_gmt_timestamp(){var a=(new Date).getTime();return parseInt(a/1E3)}function lp_get_local_timestamp(){return lp_get_gmt_timestamp()}
function lpcreaterandomhexstring(a){for(var b="",c=0;c<a;c++){var d=get_random(0,15);b+="0123456789ABCDEF".substring(d,d+1)}return b}
function iso2to3(a){var b={AD:"AND",AE:"ARE",AF:"AFG",AG:"ATG",AL:"ALB",AM:"ARM",AO:"AGO",AQ:"ATA",AR:"ARG",AT:"AUT",AU:"AUS",AW:"ABW",AZ:"AZE",BA:"BIH",BB:"BRB",BD:"BGD",BE:"BEL",BF:"BFA",BG:"BGR",BH:"BHR",BI:"BDI",BJ:"BEN",BM:"BMU",BN:"BRN",BO:"BOL",BR:"BRA",BS:"BHS",BT:"BTN",BW:"BWA",BY:"BLR",BZ:"BLZ",CA:"CAN",CD:"COD",CF:"CAF",CG:"COG",CH:"CHE",CI:"CIV",CL:"CHL",CM:"CMR",CN:"CHN",CO:"COL",CR:"CRI",CU:"CUB",CV:"CPV",CY:"CYP",CZ:"CZE",DE:"DEU",DJ:"DJI",DK:"DNK",DM:"DMA",DO:"DOM",DZ:"DZA",EC:"ECU",
EE:"EST",EG:"EGY",EH:"ESH",ER:"ERI",ES:"ESP",ET:"ETH",FI:"FIN",FJ:"FJI",FM:"FSM",FO:"FRO",FR:"FRA",GA:"GAB",GB:"GBR",GD:"GRD",GE:"GEO",GF:"GUF",GH:"GHA",GM:"GMB",GN:"GIN",GP:"GLP",GQ:"GNQ",GR:"GRC",GT:"GTM",GW:"GNB",GY:"GUY",HN:"HND",HR:"HRV",HT:"HTI",HU:"HUN",IC:"ESC",ID:"IDN",IE:"IRL",IL:"ISR",IN:"IND",IO:"IOT",IQ:"IRQ",IR:"IRN",IS:"ISL",IT:"ITA",JE:"JEY",JM:"JAM",JO:"JOR",JP:"JPN",KE:"KEN",KG:"KGZ",KH:"KHM",KI:"KIR",KM:"COM",KN:"KNA",KP:"PRK",KR:"KOR",KW:"KWT",KZ:"KAZ",LA:"LAO",LB:"LBN",LC:"LCA",
LI:"LIE",LK:"LKA",LR:"LBR",LS:"LSO",LT:"LTU",LU:"LUX",LV:"LVA",LY:"LBY",MA:"MAR",MC:"MCO",MD:"MDA",ME:"MNE",MG:"MDG",MK:"MKD",ML:"MLI",MM:"MMR",MN:"MNG",MO:"MAC",MQ:"MTQ",MR:"MRT",MS:"MSR",MU:"MUS",MV:"MDV",MW:"MWI",MX:"MEX",MY:"MYS",MZ:"MOZ",NA:"NAM",NE:"NER",NG:"NGA",NI:"NIC",NL:"NLD",NO:"NOR",NP:"NPL",NZ:"NZL",OM:"OMN",PA:"PAN",PE:"PER",PG:"PNG",PH:"PHL",PK:"PAK",PL:"POL",PS:"PSE",PT:"PRT",PW:"PLW",PY:"PRY",QA:"QAT",RE:"REU",RO:"ROU",RS:"SRB",RU:"RUS",RW:"RWA",SA:"SAU",SB:"SLB",SC:"SYC",SD:"SDN",
SE:"SWE",SH:"SHN",SI:"SVN",SK:"SVK",SL:"SLE",SM:"SMR",SN:"SEN",SO:"SOM",SR:"SUR",ST:"STP",SV:"SLV",SY:"SYR",SZ:"SWZ",TD:"TCD",TF:"ATF",TG:"TGO",TH:"THA",TJ:"TJK",TL:"TLS",TM:"TKM",TN:"TUN",TR:"TUR",TT:"TTO",TW:"TWN",TZ:"TZA",UA:"UKR",UG:"UGA",US:"USA",UY:"URY",UZ:"UZB",VC:"VCT",VE:"VEN",VN:"VNM",VU:"VUT",YE:"YEM",ZA:"ZAF",ZM:"ZMB",ZW:"ZWE"};return"undefined"!=typeof b[a]?b[a]:a}
function crypto_atob(a){if(a&&17<=a.length&&"!"==a.charAt(0)){var b=a.indexOf("|");if(-1!=b)return"!"+atob(a.substring(1,b))+atob(a.substring(b+1))}return atob(a)}function crypto_btoa(a){return a&&33<=a.length&&1==a.length%16&&"!"==a.charAt(0)?"!"+btoa(a.substring(1,17))+"|"+btoa(a.substring(17)):btoa(a)}
function CompareLastPassVersions(a,b,c){var d=0,f=0,h=0,k=0,e=0,g=0,m=a.split(".");for(a=0;a<m.length;a++)0==a?d=parseInt(m[a]):1==a?f=parseInt(m[a]):2==a&&(h=parseInt(m[a]));b=b.split(".");for(a=0;a<b.length;a++)0==a?k=parseInt(b[a]):1==a?e=parseInt(b[a]):2==a&&(g=parseInt(b[a]));return d!=k?d>k?1:-1:f!=e?f>e?1:-1:c?0:h!=g?h>g?1:-1:0}function lpalert(a,b){"undefined"!=typeof LP&&"function"==typeof LP.lpgs?LP.alert(LP.lpgs(a),b):"function"==typeof alertfrombg?alertfrombg(gs(a)):alert(gs(a))}
var issharedfolderCacheResults={},sharesCachedInstance=void 0;function issharedfolder(a,b){var c=a.getData();sharesCachedInstance!==c&&(issharedfolderCacheResults={},sharesCachedInstance=c);"undefined"===typeof issharedfolderCacheResults[b]&&(issharedfolderCacheResults[b]=issharedfolderCheck(a,b));return issharedfolderCacheResults[b]}
function issharedfolderCheck(a,b){if(!a||0==a.length||"undefined"==typeof b||null==b||""==b)return!1;var c,d;for(d in a){var f=a[d];"object"==typeof f&&"undefined"!=typeof f.decsharename&&""!==f.decsharename&&0===b.indexOf(f.decsharename)&&(!c||c.decsharename.length<f.decsharename.length)&&(c=f)}return c?{id:c.id,sharekey:c.key,decsharename:c.decsharename,readonly:c.readonly,give:c.give,associative:c.associative,linkedshare:c.linkedshare}:!1}
function getsharekey(a,b){for(var c=0;"undefined"!=typeof a&&null!=a&&c<a.length;c++){var d=a[c];if(d.id==b)return d.key}return null}function lpmenc_acct(a,b,c,d){return"undefined"==typeof c.sharefolderid?lpmenc(a,b):(c=issharedfolder(d,c.group))?lpmenc(a,b,c.sharekey):lpmenc(a,b)}function lpmdec_acct(a,b,c,d){return"undefined"==typeof c.sharefolderid?lpmdec(a,b):(c=issharedfolder(d,c.group))?lpmdec(a,b,c.sharekey):lpmdec(a,b)}
function lpdec_acct(a,b,c){return"undefined"==typeof b.sharefolderid?lpdec(a):(b=issharedfolder(c,b.group))?lpdec(a,b.sharekey):lpdec(a)}function lpenc_acct(a,b,c){return"undefined"==typeof b.sharefolderid?lpenc(a):(b=issharedfolder(c,b.group))?lpenc(a,b.sharekey):lpenc(a)}function checkmove(a,b,c){return b&&!checkreadonly(b,!1,c)?!1:!0}function checkreadonly(a,b,c){return a&&"1"==a.readonly?(b||lpalert("Sorry, this shared folder is read-only.",c),!1):!0}
function checkUsernameHash(){if(null==lpusername_hash||""==lpusername_hash){var a=null;"string"==typeof g_username&&""!=g_username?a=g_username:"string"==typeof lpusername&&""!=lpusername&&(a=lpusername);null!=a&&("function"==typeof SHA256?lpusername_hash=SHA256(a):"function"==typeof lp_sha256&&(lpusername_hash=lp_sha256(a)))}}
function applyattacharraychanges(a){if("undefined"!=typeof a.add)for(var b in a.add)if(a.add.hasOwnProperty(b)){var c={};c.id=a.add[b].id;c.parent=a.add[b].parent;c.mimetype=a.add[b].mimetype;c.filename=a.add[b].filename;c.size=a.add[b].size;c.storagekey=a.add[b].storagekey;lp_attaches.push(c)}if("undefined"!=typeof a.remove)for(b in a.remove)for(c=0;c<lp_attaches.length;c++)a.remove[b]==lp_attaches[c].id&&lp_attaches.splice(c,1)}
function is_encrypted_field(a){return"text"==a||"password"==a||"textarea"==a||"email"==a||"tel"==a||"url"==a}
function clear_filled_fields(a,b,c){"undefined"==typeof c&&(c=1);if(10<c)return null;if(a&&"object"==typeof a.lp_filled_fields){for(var d=0;d<a.lp_filled_fields.length;d++){var f=a.lp_filled_fields[d].value;a.lp_filled_fields[d].value="";""!=f&&fire_onchange(a.lp_filled_fields[d])}a.lp_filled_fields=[]}if(a&&"object"==typeof a.formfillfields){d=a.formfillfields;for(var h in d){var k=d[h].field;f=k.value;k.value="";""!=f&&fire_onchange(k)}a.formfillfields=[]}if(b&&b.frames)for(a=b.frames.length,10<
a&&(a=10),d=0;d<a;d++)b.frames[d].document&&clear_filled_fields(b.frames[d].document,b.frames[d].window,c+1)}function get_sitepwlen(a){var b=reduxApp.getSetting("minimumPasswordLengthByDomain");return"undefined"!==typeof b[a]?b[a]:"undefined"!=typeof g_sitepwlen&&"undefined"!=typeof g_sitepwlen[a]?g_sitepwlen[a]:"undefined"!=typeof calllptoolband?parseInt(calllptoolband(["getsitepwlens",a])):1}
function fix_url_host(a){if("string"==typeof a){if(27<a.length&&-1!=a.indexOf("logmein.com",a.length-11)){var b=a.match(/^(.*)-[a-z]{10}(\.app).*(\.logmein\.com)$/);if(b)return b[1]+b[2]+b[3]}if(24<a.length&&-1!=a.indexOf("logme.in",a.length-8)&&(b=a.match(/^(.*)-[a-z]{10}(\.app).*(\.logme\.in)$/)))return b[1]+b[2]+b[3]}return a}function is_watermark(a){return!1}function is_watermark_password(a){return!1}
function updateAndEncryptData(a,b,c,d,f,h){f="";var k="undefined"==typeof g_shares?lpshares:g_shares;a="undefined"!=typeof a?a.split("\n"):[];for(var e=0;e<a.length;e++){var g=a[e].split("\t");if(4==g.length||5==g.length){var m=decodeURIComponent(g[1]),p=decodeURIComponent(g[2]);g=g[3];var t=!1,w=p,r=!1;var y=null;"select-one"!=g||"temp_id"!=m&&"userId-select"!=m||""==p||p!=h.username||"fidelity.com"!=d.tld||"undefined"==typeof h.fromiframe||""==h.new_username||(g="text");if("email"==g||"tel"==g||
"text"==g||"password"==g||"hidden"==g||"textarea"==g||"url"==g)c&&c.push(p),h?"email"!=g&&"tel"!=g&&"text"!=g&&"url"!=g||p!=h.username||""===p&&("undefined"==typeof h.fromiframe||""==h.new_username)?"password"==g&&p==h.password&&(""!==p||"undefined"!=typeof h.fromiframe&&""!=h.new_password)&&(y=lpenc_acct(h.new_password,d,k)):y=lpenc_acct(h.new_username,d,k):y="undefined"!=typeof d.username&&""!=d.username&&p==lpmdec_acct(d.username,!0,d,k)?crypto_btoa(d.username):"undefined"!=typeof d.password&&
""!=d.password&&p==lpmdec_acct(d.password,!0,d,k)?crypto_btoa(d.password):lpenc_acct(p,d,k),null==y?"function"==typeof verbose_log&&verbose_log("updateAndEncryptData ERROR: field="+m):f+="0\t"+LP.en(m)+"\t"+LP.en(y)+"\t"+LP.en(g)+"\n","hidden"!=g&&null!=y&&(t=!0,w=crypto_atob(y));else if("action"==g)f+="0\taction\t"+LP.en(p)+"\taction\n";else if("method"==g)f+="0\tmethod\t"+LP.en(p)+"\tmethod\n";else{if(h&&0===h.save_all)continue;f+="0\t"+LP.en(m)+"\t"+LP.en(p)+"\t"+LP.en(g)+"\n";if("radio"==g||"checkbox"==
g){if(r="-1"==p.substring(p.length-2),"radio"!=g||r)t=!0,w=p.substring(0,p.length-2)}else"select-one"==g&&(t=!0)}t&&(p={otherfield:!1},p.name=m,p.type=g,p.value=w,p.checked=r,p.formname="",p.urid="0",p.otherlogin="0",p.url="",b[b.length]=p)}}return f}function lp_ofa(a){return ofa.apply(this,arguments)}function lp_of(a){return of.apply(this,arguments)}function lp_ofja(a){return ofja.apply(this,arguments)}function lp_es(a){return es.apply(this,arguments)}
function fill_field_via_keys(a,b){a.value="";a.focus();for(var c=0;c<b.length;c++)send_simulated_key(a,b.charCodeAt(c),0,!1)}function LP_decimate_children(a){if(!a)return!1;try{for(;a.firstChild;)a.removeChild(a.firstChild)}catch(b){return!1}return!0}function csv_encode(a){if("string"!=typeof a)return"";a.match(/^[=+-]/)&&!a.match(/^[=+-][0-9.]+$/)&&(a=" "+a);a.match(/,|\r|\n|"/)&&(a='"'+a.replace(/"/g,'""')+'"');return a}
function parse_emailaddress(a){var b={username:"",hostname:""};if(!a||"string"!=typeof a)return b;a=a.trim();if(0===a.indexOf("@"))b.hostname=a.substring(1);else if(0<a.indexOf("@")){var c=a.substring(0,a.lastIndexOf("@"));a=a.substring(a.lastIndexOf("@")+1);b.username=c;b.hostname=a}else b.username=a;return b}
function is_equivalent_email(a,b,c,d){if(!(a&&b&&c&&d))return!1;var f=function(){return!1};"undefined"!=typeof compare_tlds&&(f=compare_tlds);"undefined"!=typeof compare_equiv_domains&&(f=compare_equiv_domains);"undefined"!=typeof LP_compare_tlds&&(f=LP_compare_tlds);c=lp_gettld_url(c);d=lp_gettld_url(d);if(!f(c,d))return!1;a=parse_emailaddress(a);b=parse_emailaddress(b);return""===a.hostname&&""===b.hostname?a.username===b.username:a.username===b.username&&!b.hostname&&(f(c,"gmail.com")&&f(a.hostname,
"gmail.com")&&f(d,"gmail.com")||f(c,"yahoo.com")&&f(a.hostname,"yahoo.com")&&f(d,"yahoo.com"))||a.username===b.username&&a.hostname&&b.hostname&&f(c,d)&&f(a.hostname,d)&&f(b.hostname,d)?!0:!1}
function verify_accts_integrity(a,b,c,d,f,h,k,e){var g={total:0,corrupted:0,corruptionRatio:0,corruptedAids:{},corruptedIids:[],corruptedShareIds:[]};if("undefined"!==typeof a&&a&&lpmdec(a)!==b)a="Vault integrity check failed. Username could not be decrypted using current local key. Uid: "+e,logger.error("Vault integrity check failed. Username could not be decrypted using current local key.",{userId:e}),console.error(a);else{a=Object.keys(c).map(function(w){return c[w]});b=Object.keys(d).map(function(w){return d[w]});
var m=Object.keys(f).map(function(w){return f[w]});a=[].concat(a,b,m);g.total+=a.length;g.total+=Object.keys(h).length;var p=["encname","encgroup","username","password","extra"];a.forEach(function(w){var r=!1,y=[];p.forEach(function(F){w[F]&&w[F].length?lpmdec_acct(w[[F]],!0,w,k)?y.push([F,"SECRET"]):(r=!0,y.push([F,"CORRUPTED"])):y.push([F,"EMPTY"])});w.sharefolderid?y.push(["sharedfolderid",w.sharefolderid]):w.individualshare&&y.push(["individualshare","true"]);r&&(g.corrupted++,g.corruptedAids[w.aid||
w.appid]=y)});Object.keys(h).map(function(w){return h[w]}).forEach(function(w){!w.iname||"string"===typeof w.deciname&&w.deciname.length||lpmdec(w.iname)||(g.corrupted++,g.corruptedIids.push(w.iid))});Object.keys(k).map(function(w){return k[w]}).forEach(function(w){w.sharename&&!lpmdec(w.sharename,!1,w.key)&&(g.corrupted++,g.corruptedShareIds.push(w.shareid))});if(0<g.total&&0<g.corrupted){g.corruptionRatio=Math.round(g.corrupted/g.total*100)/100;b=JSON.stringify(g.corruptedAids);m=JSON.stringify(g.corruptedIids);
var t=JSON.stringify(g.corruptedShareIds);a="Vault integrity check failed. "+g.corrupted+" items were corrupted out of "+g.total+". Ratio: "+g.corruptionRatio+". Corrupted aids: "+b+", corrupted iids: "+m+", corrupted shareids: "+t+" uid: "+e;logger.error("Vault integrity check failed.",{shareIds:t,uid:e,corrupted:g.corrupted,corruptionRatio:g.corruptionRatio,total:g.total,iids:m,aids:b});console.error(a)}return g}}
function getusernamefromacct(a){if("undefined"===typeof a||!a)return"";var b=getBG();if(is_application(a)){for(var c in a.fields){var d=a.fields[c];if(""==d.type&&""!=d.value)return b.lpmdec_acct(d.value,!0,a,b.g_shares)}return""}if(a.save_all)for(d in a.fields){if(("text"==a.fields[d].type||"email"==a.fields[d].type||"tel"==a.fields[d].type)&&""!=a.fields[d].value)return b.lpmdec_acct(a.fields[d].value,!0,a,b.g_shares)}else{if("undefined"!=typeof a.url&&"http://sn"==a.url){c=b.lpmdec_acct(a.extra,
!0,a,b.g_shares);var f=getNoteValue("NoteType",c);if("undefined"!=typeof sntemplates[f]&&"undefined"!=typeof sntemplates[f].Username)return getNoteValue("Username",c)}c="undefined"!=typeof a.unencryptedUsername?a.unencryptedUsername:"";if(""!=c)return c;if("object"==typeof a.fields)try{for(d=0;d<a.fields.length;d++)if("text"==a.fields[d].type||"email"==a.fields[d].type)return c=a.fields[d].value,b.lpmdec_acct(c,!0,a,b.g_shares)}catch(h){}}return""}
function getpasswordfromacct(a){if("undefined"===typeof a||!a)return"";var b=getBG();if(is_application(a)){for(var c in a.fields){var d=a.fields[c];if("password"==d.type&&""!=d.value)return b.lpmdec_acct(d.value,!0,a,b.g_shares)}return""}if(a.save_all){for(d in a.fields)if("password"==a.fields[d].type&&""!=a.fields[d].value)return b.lpmdec_acct(a.fields[d].value,!0,a,b.g_shares);return""}if("undefined"!=typeof a.url&&"http://sn"==a.url){c=b.lpmdec_acct(a.extra,!0,a,b.g_shares);var f=getNoteValue("NoteType",
c);if("undefined"!=typeof sntemplates[f]&&"undefined"!=typeof sntemplates[f].Password)return getNoteValue("Password",c)}c="undefined"!=typeof a.password?a.password:"";if(""==c&&"object"==typeof a.fields)try{for(d=0;d<a.fields.length;d++)if("password"==a.fields[d].type){c=a.fields[d].value;break}}catch(h){}return b.lpmdec_acct(c,!0,a,b.g_shares)};var g_punycodecache=[],g_punycodecache2=[],punycode=new function(){function a(b,c,d){b=d?Math.floor(b/700):b>>1;b+=Math.floor(b/c);for(c=0;455<b;c+=36)b=Math.floor(b/35);return Math.floor(c+36*b/(b+38))}this.utf16={decode:function(b){for(var c=[],d=0,f=b.length,h,k;d<f;){h=b.charCodeAt(d++);if(55296===(h&63488)){k=b.charCodeAt(d++);if(55296!==(h&64512)||56320!==(k&64512))throw new RangeError("UTF-16(decode): Illegal UTF-16 sequence");h=((h&1023)<<10)+(k&1023)+65536}c.push(h)}return c},encode:function(b){for(var c=
[],d=0,f=b.length,h;d<f;){h=b[d++];if(55296===(h&63488))throw new RangeError("UTF-16(encode): Illegal UTF-16 value");65535<h&&(h-=65536,c.push(String.fromCharCode(h>>>10&1023|55296)),h=56320|h&1023);c.push(String.fromCharCode(h))}return c.join("")}};this.decode=function(b,c){var d=[],f=[],h=b.length,k,e;var g=128;var m=0;var p=72;var t=b.lastIndexOf("-");0>t&&(t=0);for(k=0;k<t;++k){c&&(f[d.length]=26>b.charCodeAt(k)-65);if(128<=b.charCodeAt(k))throw new RangeError("Illegal input >= 0x80");d.push(b.charCodeAt(k))}for(t=
0<t?t+1:0;t<h;){k=m;var w=1;for(e=36;;e+=36){if(t>=h)throw RangeError("punycode_bad_input(1)");var r=b.charCodeAt(t++);r=10>r-48?r-22:26>r-65?r-65:26>r-97?r-97:36;if(36<=r)throw RangeError("punycode_bad_input(2)");if(r>Math.floor((2147483647-m)/w))throw RangeError("punycode_overflow(1)");m+=r*w;var y=e<=p?1:e>=p+26?26:e-p;if(r<y)break;if(w>Math.floor(2147483647/(36-y)))throw RangeError("punycode_overflow(2)");w*=36-y}w=d.length+1;p=a(m-k,w,0===k);if(Math.floor(m/w)>2147483647-g)throw RangeError("punycode_overflow(3)");
g+=Math.floor(m/w);m%=w;c&&f.splice(m,0,26>b.charCodeAt(t-1)-65);d.splice(m,0,g);m++}if(c)for(m=0,b=d.length;m<b;m++)f[m]&&(d[m]=String.fromCharCode(d[m]).toUpperCase().charCodeAt(0));return this.utf16.encode(d)};this.encode=function(b,c){var d,f;c&&(f=this.utf16.decode(b));b=this.utf16.decode(b.toLowerCase());var h=b.length;if(c)for(d=0;d<h;d++)f[d]=b[d]!=f[d];var k=[];var e=128;var g=0;var m=72;for(d=0;d<h;++d)if(128>b[d]){var p=k;var t=p.push;var w=String;var r=w.fromCharCode;if(f){var y=b[d];
y-=(26>y-97)<<5;y+=(!f[d]&&26>y-65)<<5}else y=b[d];t.call(p,r.call(w,y))}p=t=k.length;for(0<t&&k.push("-");p<h;){w=2147483647;for(d=0;d<h;++d)r=b[d],r>=e&&r<w&&(w=r);if(w-e>Math.floor((2147483647-g)/(p+1)))throw RangeError("punycode_overflow (1)");g+=(w-e)*(p+1);e=w;for(d=0;d<h;++d){r=b[d];if(r<e&&2147483647<++g)return Error("punycode_overflow(2)");if(r==e){w=g;for(r=36;;r+=36){y=r<=m?1:r>=m+26?26:r-m;if(w<y)break;var F=k,D=String,G=y+(w-y)%(36-y);F.push.call(F,D.fromCharCode.call(D,G+22+75*(26>G)-
0));w=Math.floor((w-y)/(36-y))}k.push(String.fromCharCode(w+22+75*(26>w)-((0!=(c&&f[d]?1:0))<<5)));m=a(g,p+1,p==t);g=0;++p}}++g;++e}return k.join("")};this.get_host=function(b){try{return(new URL(b)).hostname}catch(c){return b}};this.URLToASCII=function(b){if("string"!=typeof b)return b;"undefined"==typeof g_punycodecache&&(g_punycodecache=[]);if("undefined"!=typeof g_punycodecache[b])return g_punycodecache[b];var c=!1,d=this.get_host(b);d.match(/\[.*\]/)&&(c=!0);c=this.ToASCII(d,c);if(c==d)return g_punycodecache[b]=
b;d=b.replace(d,c);return g_punycodecache[b]=d};this.ToASCII=function(b,c){var d=b.split(".");c&&(d=[b]);b=[];var f=/[^A-Za-z0-9-]/;c&&(f=/[^\[\]A-Za-z0-9:.-]/);for(c=0;c<d.length;++c){var h=d[c];b.push(h.match(f)?"xn--"+punycode.encode(h):h)}return b.join(".")};this.URLToUnicode=function(b){if("string"!=typeof b)return b;"undefined"==typeof g_punycodecache2&&(g_punycodecache2=[]);if("undefined"!=typeof g_punycodecache2[b])return g_punycodecache2[b];var c=this.get_host(b),d=this.ToUnicode(c);if(d==
c)return g_punycodecache2[b]=b;c=b.replace(c,d);return g_punycodecache2[b]=c};this.ToUnicode=function(b){b=b.split(".");for(var c=[],d=0;d<b.length;++d){var f=b[d];c.push(f.match(/^xn--/)?punycode.decode(f.slice(4)):f)}return c.join(".")}};function lpCreatePass(a,b,c,d,f,h,k,e){"undefined"==typeof a&&(a=8+get_random(0,1));256<a&&(a=256,document.getElementById("length").value=256);256<h&&(h=256);"undefined"==typeof b&&(b=!0);"undefined"==typeof c&&(c=!0);"undefined"==typeof d&&(d=!0);"undefined"==typeof f&&(f=!1);"undefined"==typeof h&&(h=0);"undefined"==typeof k&&(k=!1);"undefined"==typeof e&&(e=!0);var g=0,m=0,p=0;e&&(g=m=p=1);e=[];if(c&&0<g)for(var t=0;t<g;t++)e[e.length]="L";if(b&&0<m)for(t=0;t<m;t++)e[e.length]="U";if(d&&0<h)for(t=
0;t<h;t++)e[e.length]="D";if(f&&0<p)for(t=0;t<p;t++)e[e.length]="S";for(;e.length<a;)e[e.length]="A";e.sort(function(){return 2*get_random(0,1)-1});h="";g="abcdefghjkmnpqrstuvwxyz";k||(g+="ilo");c&&(h+=g);c="ABCDEFGHJKMNPQRSTUVWXYZ";k||(c+="ILO");b&&(h+=c);b="23456789";k||(b+="10");d&&(h+=b);f&&(h+="!@#$%^&*");d="";for(f=0;f<a;f++){switch(e[f]){case "L":var w=g;break;case "U":w=c;break;case "D":w=b;break;case "S":w="!@#$%^&*";break;case "A":w=h}t=get_random(0,w.length-1);d+=w.charAt(t)}return d}
function dogenerate(){var a=document.getElementById("length").value,b=document.getElementById("upper").checked,c=document.getElementById("lower").checked,d=document.getElementById("digits").checked,f=document.getElementById("special").checked,h=document.getElementById("mindigits").value,k=document.getElementById("ambig").checked,e=document.getElementById("reqevery").checked;document.getElementById("password").style.fontFamily="courier";document.getElementById("password").value=lpCreatePass(a,b,c,
d,f,h,k,e);"function"==typeof UpdatePasswordMeter&&UpdatePasswordMeter("","password","meterfront3")};(function(a){function b(){var r=arguments[0],y=b.cache;y[r]&&y.hasOwnProperty(r)||(y[r]=b.parse(r));return b.format.call(null,y[r],arguments)}function c(r){return Object.prototype.toString.call(r).slice(8,-1).toLowerCase()}var d=/[^s]/,f=/[dief]/,h=/^[^\x25]+/,k=/^\x25{2}/,e=/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fiosuxX])/,g=/^([a-z_][a-z_\d]*)/i,m=/^\.([a-z_][a-z_\d]*)/i,p=/^\[(\d+)\]/,t=/^[\+\-]/;b.format=function(r,y){var F=1,D=r.length,G=[],E,Q,J=!0;for(E=
0;E<D;E++){var A=c(r[E]);if("string"===A)G[G.length]=r[E];else if("array"===A){var C=r[E];if(C[2])for(A=y[F],Q=0;Q<C[2].length;Q++){if(!A.hasOwnProperty(C[2][Q]))throw Error(b("[sprintf] property '%s' does not exist",C[2][Q]));A=A[C[2][Q]]}else A=C[1]?y[C[1]]:y[F++];"function"==c(A)&&(A=A());if(d.test(C[8])&&"number"!=c(A)&&isNaN(A))throw new TypeError(b("[sprintf] expecting number but found %s",c(A)));f.test(C[8])&&(J=0<=A);switch(C[8]){case "b":A=A.toString(2);break;case "c":A=String.fromCharCode(A);
break;case "d":case "i":A=parseInt(A,10);break;case "e":A=C[7]?A.toExponential(C[7]):A.toExponential();break;case "f":A=C[7]?parseFloat(A).toFixed(C[7]):parseFloat(A);break;case "o":A=A.toString(8);break;case "s":A=(A=String(A))&&C[7]?A.substring(0,C[7]):A;break;case "u":A>>>=0;break;case "x":A=A.toString(16);break;case "X":A=A.toString(16).toUpperCase()}if(!f.test(C[8])||J&&!C[3])var P="";else P=J?"+":"-",A=A.toString().replace(t,"");Q=C[4]?"0"===C[4]?"0":C[4].charAt(1):" ";var M=C[6]-(P+A).length;
M=C[6]?0<M?Array(M+1).join(Q):"":"";G[G.length]=C[5]?P+A+M:"0"===Q?P+M+A:M+P+A}}return G.join("")};b.cache={};b.parse=function(r){for(var y,F=[],D=0;r;){if(null!==(y=h.exec(r)))F[F.length]=y[0];else if(null!==(y=k.exec(r)))F[F.length]="%";else if(null!==(y=e.exec(r))){if(y[2]){D|=1;var G=[],E=y[2],Q;if(null!==(Q=g.exec(E)))for(G[G.length]=Q[1];""!==(E=E.substring(Q[0].length));)if(null!==(Q=m.exec(E)))G[G.length]=Q[1];else if(null!==(Q=p.exec(E)))G[G.length]=Q[1];else throw new SyntaxError("[sprintf] failed to parse named argument key");
else throw new SyntaxError("[sprintf] failed to parse named argument key");y[2]=G}else D|=2;if(3===D)throw Error("[sprintf] mixing positional and named placeholders is not (yet) supported");F[F.length]=y}else throw new SyntaxError("[sprintf] unexpected placeholder");r=r.substring(y[0].length)}return F};var w=function(r,y,F){F=(y||[]).slice(0);F.splice(0,0,r);return b.apply(null,F)};"undefined"!==typeof exports?(exports.sprintf=b,exports.vsprintf=w):(a.sprintf=b,a.vsprintf=w,"function"===typeof define&&
define.amd&&define(function(){return{sprintf:b,vsprintf:w}}))})("undefined"===typeof window?this:window);Interfaces=function(){var a=function(f,h){this.type=f;if(this.options=h)this.options.include&&(this.options.include=[].concat(this.options.include)),this.options.exclude&&(this.options.exclude=[].concat(this.options.exclude))},b=function(f,h){h=[].concat(h);for(i=0;i<h.length;++i)for(j=0;j<f.length;++j)if(f[j]===h[i])return!0;return!1};a.prototype.requiredBy=function(f){if(f&&this.options){if(this.options.include)return b(this.options.include,f);if(this.options.exclude)return!b(this.options.include,
f)}return!0};a.prototype.isSyncronized=function(){return this.options&&!0===this.options.sync};a.prototype.isSyncronousFunction=function(){return this.type===Interfaces.TYPE_SYNC_FUNCTION};a.prototype.isFunction=function(){return this.type===Interfaces.TYPE_FUNCTION||this.type===Interfaces.TYPE_SYNC_FUNCTION};a.prototype.isConstructor=function(){return this.type===Interfaces.TYPE_CONSTRUCTOR};a.prototype.isPrimitive=function(){return!this.isFunction()&&!this.isConstructor()};a.prototype.shouldSendIndirect=
function(){return this.isPrimitive()?this.options&&"undefined"!==typeof this.options.sendIndirect?this.options.sendIndirect:!0:this.options&&!0===this.options.sendIndirect};a.prototype.allowWrite=function(){return this.options&&!0===this.options.write};a.prototype.addIncludes=function(f){this.options=this.options||{};this.options.include=this.options.include.concat(f)};var c=function(){var f=function(p,t,w){return function(r){var y=t[r];if(y&&y.options&&y.options.sourceFunction&&!1!==w.direct)return y.options.sourceFunction();
if(t.hasOwnProperty(r))return p[r];throw r+" is not defined in the interface.";}},h=function(p,t,w,r){var y=function(F,D,G){if(!F.allowWrite())throw w.concat(D)+" is not writeable.";if(F&&typeof G===F.type)p[D]=G;else throw D+" is not defined in the interface.";};return r.direct?function(F,D){y(t[F],F,D)}:function(F,D){var G=t[F];y(G,F,D);G.shouldSendIndirect()&&r.requestFunction({cmd:"LPData.setValue",args:[w.concat(F),D]})}},k=function(p,t,w,r){return function(){var y=arguments;if(r.cloneObjects&&
!p.isSyncronousFunction()){var F=function(G){return"function"===typeof G?function(){var E=D(Array.from(arguments));G.apply(null,E)}:G},D=function(G){if(!G)return null;if(Array.isArray(G)){var E=[];G.forEach(function(Q){"object"===typeof Q?E.push(D(Q)):E.push(F(Q))})}else E={},Object.keys(G).forEach(function(Q){E[Q]=G[Q]&&"object"===typeof G[Q]?D(G[Q]):F(G[Q])});return F(E)};y=Array.prototype.map.call(y,function(G){return"object"===typeof G?D(G):F(G)})}return w.apply(t,y)}},e=function(p,t,w){if("function"===
typeof w.requestFunction)return function(){for(var r=[],y=0,F=arguments.length;y<F;++y)r.push(arguments[y]);return w.requestFunction({cmd:0<p.length?p.concat(t):t,args:r})};throw"requestFunction must be specified for this interface since it is not direct access.";},g=function(p,t,w){return function(){"function"===typeof t&&t.apply(p,arguments);"function"===typeof w&&w.apply(p,arguments)}},m=function(p,t,w,r,y,F){var D=!1,G=[],E;for(E in r){var Q=r[E];Q instanceof a?Q.isFunction()?!Q.requiredBy(F.context)||
Q.isSyncronousFunction()&&F.asyncOnly||(F.direct||Q.isSyncronousFunction()?t&&"function"===typeof t[E]?(p[E]=k(Q,t,t[E],F),!F.direct&&Q.shouldSendIndirect()&&(p[E]=g(p,p[E],e(y,E,F)))):G.push(Q.type+": "+y.concat(E).join(".")):p[E]=e(y,E,F)):Q.isConstructor()?Q.requiredBy(F.context)&&!F.asyncOnly&&(t&&"function"===typeof t[E]?p[E]=t[E]:G.push(Q.type+": "+y.concat(E).join("."))):D=!0:(p.hasOwnProperty(E)||(p[E]={}),m(p[E],t?t[E]:t,w?w[E]:w,r[E],y.concat(E),F))}D&&(p.get=f(w,r,F),p.set=h(w,r,y,F));
if(0<G.length&&F.checkMissing)throw"Background instance does not support the following:\n"+G.join("\n");return p};return function(p,t){return m(t.instance||{},t.source||t.sourceFunctions,t.source||t.sourceData,p,[],t)}}(),d=function(){var f={},h={},k=function(e,g,m,p){var t=[],w;for(w in e){var r=p?p.concat(w):[w],y=e[w];y instanceof a?y.isPrimitive()&&y.requiredBy(g)&&(!m||y.isSyncronized())&&t.push({sourceFunction:y.options&&y.options.sourceFunction,path:r}):t=t.concat(k(y,g,m,r))}return t};return function(e,
g){var m=[];e=[].concat(e);for(var p=0;p<e.length;++p){var t=e[p];if(g.syncronizedOnly){var w=h[t];"undefined"===typeof w&&(w=h[t]=k(g.interface,t,!0))}else w=f[t],"undefined"===typeof w&&(w=f[t]=k(g.interface,t,!1));m=m.concat(w)}return m}}();return{TYPE_CONSTRUCTOR:"contsructor",TYPE_SYNC_FUNCTION:"synchronous function",TYPE_FUNCTION:"function",TYPE_STRING:"string",TYPE_BOOLEAN:"boolean",TYPE_NUMBER:"number",TYPE_OBJECT:"object",Definition:a,extend:function(f,h){for(var k in h){var e=h[k];switch(typeof e){case "object":f.hasOwnProperty(k)?
Interfaces.extend(f[k],e):f[k]=e;break;default:f[k]=e}}},createInstance:c,getPrimitives:function(f){var h={};if(f.context)for(var k=d(f.context,f),e=0,g=k.length;e<g;++e){var m=k[e];var p=m.sourceFunction?"function"===typeof m.sourceFunction?m.sourceFunction():LPReflection.callFunction(null,m.sourceFunction,[],{context:f.source}):LPReflection.getValue(f.interface,m.path,{context:f.source});LPReflection.setValue(null,m.path,p,{context:h})}return h},clearPrimitives:function(f){if(f.context)for(var h=
d(f.context,f),k=0;k<h.length;++k)LPReflection.setValue(null,h[k].path,null,{context:f.source})},getName:function(f){for(var h in this)if(f===this[h])return h;throw Error("Could not find interface name.");}}}();Interfaces.BackgroundInterface=function(a){var b=a.TYPE_FUNCTION,c=a.TYPE_SYNC_FUNCTION,d=a.TYPE_STRING,f=a.TYPE_BOOLEAN,h=a.TYPE_OBJECT,k=a.TYPE_NUMBER,e=a.Definition;return{base_url:new e(d),FILENAME_FRAGMENT_VALID:new e(k,{include:["vault","note"]}),g_bigicons:new e(h,{include:["vault","extensionDropdown","vaultItemSelect"],sendIndirect:!1,write:!0}),g_icons:new e(h,{include:["vault","extensionDropdown","vaultItemSelect"]}),g_applications:new e(h,{include:["vault","extensionDropdown","application"],
sourceFunction:function(){return"undefined"!==typeof g_applications?g_applications:reduxApp.getNativeAppPasswords()}}),g_emer_sharees:new e(h,{include:"vault"}),g_emer_sharers:new e(h,{include:"vault"}),g_formfills:new e(h,{include:["vault","extensionDropdown","formFill","chooseProfile","preferences"]}),g_genpws:new e(h,{include:["vault","extensionDropdown"],write:!0}),g_pwdeckey_orig:new e(d,{include:"vault"}),g_identities:new e(h,{include:["vault","extensionDropdown"]}),g_identity:new e(d,{include:["vault",
"extensionDropdown"],sync:!0}),g_is_company_subscription_expired:new e(f,{sync:!0}),g_show_billing_address_notification:new e(f,{sync:!0,sourceFunction:function(){return"undefined"!==typeof reduxApp?reduxApp.getState().user.showBillingAddressNotification:"undefined"!==typeof g_show_billing_address_notification&&g_show_billing_address_notification}}),g_token:new e(d),g_is_premium_as_a_perk:new e(f,{sync:!0}),g_is_restricted:new e(f),g_primary_device_switches_left:new e(k),g_is_company_owner:new e(f),
g_display_premium_retrial_offer:new e(f),g_infield_multidevice_paywall_tracking:new e(f,{sourceFunction:function(){return"undefined"!==typeof LPContentScriptFeatures?LPContentScriptFeatures.g_infield_multidevice_paywall_tracking:reduxApp.getState().settings.features.infield_multidevice_paywall_tracking}}),g_local_key:new e(d),g_pendings:new e(h,{include:"vault"}),gRecovery:new e(d),g_is_premium_trial:new e(h),g_product_price:new e(k),g_local_currency:new e(d),g_premium_trial_exp_days:new e(k),g_hasplugin:new e(f),
g_2fa_inprocess:new e(f,{include:"vault"}),g_is_families_trial_started:new e(k,{sync:!0}),g_predates_families:new e(k,{sync:!0}),g_seen_vault_post_families:new e(k,{sync:!0}),g_prompts:new e(h),g_securenotes:new e(h,{include:["vault","extensionDropdown","note","vaultItemSelect"]}),g_shares:new e(h),g_sites:new e(h,{include:"vault extensionDropdown site note formFill contentScriptSite".split(" ")}),g_pending_shares:new e(h,{include:["vault"]}),g_language:new e(d),g_uid:new e(k),g_username:new e(d),
g_username_hash:new e(d,{include:"vault"}),g_new_settings_enabled:new e(f,{include:"vault",sourceFunction:function(){return"undefined"!==typeof LPContentScriptFeatures?LPContentScriptFeatures.g_new_settings_enabled:reduxApp.getState().user.newSettingsEnabled}}),g_nofolder_feature_enabled:new e(f,{include:"vault preferences extensionDropdown contentScript siteDialog site note formFill contentScriptSite".split(" "),sourceFunction:function(){return"undefined"!==typeof reduxApp?reduxApp.getState().settings.features.no_auto_folder:
"undefined"!==typeof g_nofolder_feature_enabled&&g_nofolder_feature_enabled}}),g_basicauth_feature_enabled:new e(f,{include:"vault preferences extensionDropdown contentScript siteDialog site note formFill contentScriptSite".split(" "),sourceFunction:function(){return"undefined"!==typeof reduxApp?reduxApp.getState().settings.features.basic_auth:"undefined"!==typeof g_basicauth_feature_enabled&&g_basicauth_feature_enabled}}),g_family_shared_folders_enabled:new e(f,{include:"vault"}),lp_attaches:new e(h,
{include:["vault","note"],sourceFunction:function(){return"undefined"!==typeof lp_attaches?lp_attaches:reduxApp.getState().encryptedVaultDataSource.attachments}}),lploggedin:new e(f,{sync:!0}),loginFinished:new e(f,{sync:!0}),onlineLoginFinished:new e(f,{sync:!0}),lpversion:new e(d,{include:"vault"}),siteCats:new e(h,{include:["vault","site"]}),performanceData:new e(h,{include:"vault"}),LPContentScriptFeatures:new e(h,{sourceFunction:function(){if("undefined"!==typeof LPContentScriptFeatures)return LPContentScriptFeatures;
var g=reduxApp.getFeatureFlags();"function"===typeof isDogfood&&(g.isDogfood=isDogfood());return g}}),g_bigsquareicons:new e(h,{include:["vault"]}),g_isie:new e(f),g_isedge:new e(f,{include:["note","extensionDropdown","contentScript"]}),RecordTypeConfig:new e(h,{include:["vault","note","site","addItem","extensionDropdown"]}),addeditformfill:new e(b),addEmptyGroup:new e(b),addEmptyGroups:new e(b),LPServer:{ajax:new e(b),xmlRequest:new e(b),textRequest:new e(b),jsonRequest:new e(b)},LPRavenTransport:new e(b),
BackgroundServer:{emergencyAccess:{acceptOffer:new e(b),addRecipient:new e(b),declineOffer:new e(b),denyAccess:new e(b),getRecipientInfo:new e(b),getSharerInfo:new e(b),removeRecipient:new e(b),requestAccess:new e(b),unlinkAccount:new e(b),updateRecipient:new e(b),resendInvitation:new e(b),updateShareeKey:new e(b)},identities:{add:new e(b),remove:new e(b),update:new e(b)},vault:{history:{revertPasswordChange:new e(b),getPasswordHistory:new e(b),getUsernameHistory:new e(b),getNoteHistory:new e(b)}},
sharing:{individual:{shareItems:new e(b),unshareItem:new e(b),acceptShare:new e(b),rejectShare:new e(b),inviteFriends:new e(b),getSentShareData:new e(b),getReceivedShareData:new e(b)},folder:{getFolders:new e(b),getPublicKeys:new e(b),create:new e(b),rename:new e(b),remove:new e(b),accept:new e(b),reject:new e(b),addMembers:new e(b),getMembers:new e(b),removeMember:new e(b),reinviteMember:new e(b),updateMemberPermissions:new e(b),getRestrictions:new e(b),updateRestrictions:new e(b),startDownloading:new e(b),
stopDownloading:new e(b),restoreDeleted:new e(b),purgeDeleted:new e(b),convertToEnterprise:new e(b),convertToLegacy:new e(b)}},sitesAndNotes:{saveCustomNoteTemplate:new e(b),deleteCustomNoteTemplate:new e(b)},transact:{sendReminder:new e(b),sendMobileDownload:new e(b)},families:{getMembers:new e(b),existingUserTrial:new e(b),getInvitations:new e(b)},licensing:{getCompanyLicensing:new e(b),isCompanyExpired:new e(b),setCompanyExpired:new e(b)},invitation:{acceptInvitation:new e(b),dismissInvitation:new e(b),
getMembers:new e(b)},aurora:{getOneClickSignupUrls:new e(b)}},proxyLegacyGlobals:new e(b),changePassword:new e(b),deleteAid:new e(b),deleteformfill:new e(b),deleteGroup:new e(b),editAid:new e(b),fastEncryptAttachments:new e(b),generate_key:new e(b),get_securityChallengeScore:new e(b),gotourl:new e(b),launch:new e(b),launchApp:new e(b),loggedOut:new e(b),loglogin:new e(b),make_lp_hash_iterations:new e(b),make_lp_key_hash:new e(b),make_lp_key_iterations:new e(b),moveIntoSharedFolder:new e(b),moveSelectedToGroup:new e(b),
openAllSites:new e(b),openexport:new e(b),openentconsole:new e(b),openOnNewTab:new e(b),openFamilyConsole:new e(b),openPremiumPaymentPage:new e(b),openEnterprisePaymentPage:new e(b),openTeamsPaymentPage:new e(b),openFamiliesPaymentPage:new e(b),openPricingPage:new e(b),openfavorites:new e(b),openimport:new e(b),openseccheck:new e(b),openURL:new e(b),uploadSharingKeysWeb:new e(b),processCS:new e(b),storeAccountLinkToken:new e(b),setPasswordlessData:new e(b),removePasswordlessData:new e(b),startPasswordlessEnrollmentSetup:new e(b),
removeAccountLinkToken:new e(b),refreshGroupNames:new e(b),refreshsites:new e(b),renameGroup:new e(b),saveFields:new e(b),saveSite:new e(b),singlefactor_reprompt:new e(b),switch_identity:new e(b),unlock_plug2web:new e(b),request_native_messaging:new e(b),singlefactorWinbioSet:new e(b),AES:{bin2hex:new e(c),Decrypt:new e(c),Encrypt:new e(c),hex2bin:new e(c),hex2url:new e(c),url2hex:new e(c)},ab2bin:new e(c),bin2ab:new e(c),reorderOnURL:new e(c),can_copy_to_clipboard:new e(c),canLaunchApplication:new e(c),
check_filename_badchars:new e(c),crypto_btoa:new e(c),db_prepend:new e(c),dec:new e(c),enc:new e(c),enccbc:new e(c),encode_private_key:new e(c),encode_public_key:new e(c),fix_username:new e(c),get_last_reprompt_time:new e(c),get_mimetype_from_filename:new e(c),get_personal_linked:new e(c),get_personal_linked_needs_verification:new e(c),get_show_expired_subscription_messaging:new e(c),isAllowedFileExtension:new e(c),getAllowedFileExtensions:new e(c),getInvalidFileExtensionMessageStrings:new e(c),removeLinkedAccount:new e(c),
get_random_password:new e(c),getbigicon:new e(c),geticonurlfromrecord:new e(c),gs:new e(c),isOffline:new e(c),localStorage_getItem:new e(c),localStorage_setItem:new e(c),lp_gettld_url:new e(c),lpCreatePass:new e(c),lpdec:new e(c),lpenc:new e(c),lpevent:new e(c),lpmdec:new e(c),lpmenc:new e(c),parse_public_key:new e(c),parse_private_key:new e(c),parsemobile:new e(c),punycode:{URLToASCII:new e(c),URLToUnicode:new e(c)},RSAKey:new e(a.TYPE_CONSTRUCTOR),set_last_reprompt_time:new e(c),SHA256:new e(c),
hostof:new e(c),StringUtils:{translate:new e(c)},Preferences:{get:new e(c),set:new e(c,{sendIndirect:!0})},rsa_encrypt_privatekey:new e(b),sendLpImprove:new e(b),sendLpImproveCallback:new e(b),Provisioning:{provisioning:{checkUserState:new e(b,{include:"provisioning"}),sendApiCalls:new e(b,{include:"provisioning"}),getLocalKey:new e(b,{include:"provisioning"})}},ExtensionPreferences:{getConst:new e(b),getDefault:new e(b),read:new e(b),write:new e(b),getUnavailablePreferences:new e(b)},LPPlatform:{getUILanguage:new e(c),
fill:new e(b),downloadAttachment:new e(b),copyToClipboard:new e(c),setProductPriceUpdatesObserver:new e(b),isSafariAppStore:new e(b)},get_method_async:new e(b),MigrationBackground:{getShouldStartMigration:new e(b),setShouldStartMigration:new e(b),getBlobVersion:new e(b),getIdentities:new e(b),getLinkedUsername:new e(b),getLinkedBlobVersion:new e(b),subscribeToState:new e(b),subscribeToStateOnce:new e(b),wasMigration:new e(b),publishState:new e(b),saveBlobVersion:new e(b),saveLinkedBlobVersion:new e(b),
sendSegmentEvent:new e(b),shouldShowMigrationNotification:new e(c),hasFormFills:new e(b),postponeMigration:new e(b),setMigrationState:new e(b)},FormfillMigrationBackground:{isEnabled:new e(b),getFormfills:new e(b),getLinkedFormfills:new e(b),createCustomNoteType:new e(b),saveNote:new e(b)},Feature:{isEnabled:new e(b)},Policies:{logNameEnabled:new e(b,{include:"vault preferences extensionDropdown contentScript siteDialog site note formFill contentScriptSite".split(" "),appendAdditionalArguments:!0}),
logUserNameEnabled:new e(b,{include:"vault preferences extensionDropdown contentScript siteDialog site note formFill contentScriptSite".split(" "),appendAdditionalArguments:!0}),logUrlEnabled:new e(b,{include:"vault preferences extensionDropdown contentScript siteDialog site note formFill contentScriptSite".split(" "),appendAdditionalArguments:!0}),getSaveSiteToPersonal:new e(b,{include:"vault preferences extensionDropdown contentScript siteDialog site note formFill contentScriptSite".split(" "),
appendAdditionalArguments:!0}),getAccountSelectionBasedOnEmail:new e(b,{include:"vault preferences extensionDropdown contentScript siteDialog site note formFill contentScriptSite".split(" "),appendAdditionalArguments:!0}),showSecureNotes:new e(b,{include:"vault preferences extensionDropdown contentScript siteDialog site note formFill contentScriptSite".split(" "),appendAdditionalArguments:!0})},FederatedLogin:{isFederated:new e(b,{include:"login acctsiframe update_phone misc_challenge enterprise_options delete_account otp misc_login enterprise_users export".split(" ")}),
getPassword:new e(b,{include:"acctsiframe update_phone misc_challenge enterprise_options delete_account otp misc_login enterprise_users export".split(" ")})},getVersion:new e(b),LPPartner:{getPartnerInfo:new e(b)},onSettingsIframeClose:new e(b,{include:["vault"],appendAdditionalArguments:!0}),closeSettingsIframe:new e(b,{include:["acctsiframe","contentScript","vault"],appendAdditionalArguments:!0}),GenPassHistory:{add:new e(b),clear:new e(b),getWithDate:new e(b),getWithReadableDate:new e(b),getWithoutDate:new e(b)},
FieldOverrides:{getAll:new e(b),getSite:new e(b)},switchLanguage:new e(b),saveUserLanguage:new e(b),setRestriction:new e(b),setLanguageNotificationDismissal:new e(b),setPrimaryDevice:new e(b),setDisplayRetrialOffer:new e(b),getRetrialOfferDeepLinkEnabled:new e(b),hideBillingAddressNotification:new e(b),Recovery:{getOtpHash:new e(b)},g_pendo_jwt_token:new e(d),g_pendo_signing_key_name:new e(d),calculatePasswordStrength:new e(b)}}(Interfaces);LPPlatform="undefined"===typeof LPPlatform?{}:LPPlatform;(function(){LPPlatform.isMac=function(){return"undefined"!=typeof navigator&&-1!=navigator.appVersion.indexOf("Mac")};LPPlatform.getUILanguage=function(){var a={},b=document.location.href.split("?");if(2===b.length){b=b[1].split("&");for(var c=0;c<b.length;++c){var d=b[c].split("=");2===d.length&&(a[d[0]]=d[1])}}return(a.lplanguage||"en-US").replace(/_/g,"-")}})();(function(a){function b(f,h,k){var e=bin2ab(atob(f.substring(f.indexOf("|")+1)));if(e.byteLength)if(!g_isie&&!g_isedge&&"undefined"!==typeof crypto&&crypto.subtle&&crypto.subtle.importKey&&crypto.subtle.decrypt){var g=bin2ab(atob(f.substring(f.indexOf("!")+1,f.indexOf("|"))));crypto.subtle.importKey("raw",bin2ab(h),"AES-CBC",!1,["decrypt"]).then(function(m){return crypto.subtle.decrypt({name:"AES-CBC",iv:g},m,e)}).then(function(m){k(ab2bin(m))}).catch(function(m){a.logException(m);k(null)})}else dec(f,
h,!1,function(m){e.byteLength&&""===m?k(null):k(m)});else k("")}function c(f){var h=document.createElement("textarea");null!==f&&(h.value=f);h.style.display="block";h.style.position="absolute";h.style.left="-100px";h.style.right="-100px";h.style.height="1px";h.style.width="1px";document.body.appendChild(h);h.focus();h.select();f=document.execCommand("copy");document.body.removeChild(h);if(!1===f)throw Error("Failed copying to clipboard, document.execCommand() returned with false.");}function d(){c(" ")}
a.logException=function(f){var h=f.message;f.stack&&(h+="\n"+f.stack);a.logError(h)};a.logError=function(f){f="Page: "+window.location.href+" Error: "+f;try{console.error(f),logger.info("VAULT_4_0: "+f,{vault:"VAULT_4_0",location:window.location.href,message:f})}catch(h){}};a.getBackgroundInterface=function(){var f=null;return function(h){null===f&&(h=h||{},h.source=window,h.direct=!0,f=Interfaces.createInstance(Interfaces.BackgroundInterface,h));return f}}();a.getUILanguage=function(){return"en-US"};
a.fill=function(f){lpevent("m_mf");LegacyFillTracking.track("Password","Icon Dropdown");fillaid(f,!0,"Icon Dropdown")};a.downloadAttachment=function(f,h,k,e){k=getacct(k);var g=issharedfolder(g_shares,k.group);k={getattach:f};g.id&&(k.sharedfolderid=g.id);LPServer.ajax({url:base_url+"getattach.php",type:"POST",data:k,success:function(m){if(m){var p="undefined"!==typeof reduxApp&&"function"===typeof reduxApp.getState?reduxApp.getState().user.uid:"undefined"!==typeof bg&&bg.get("g_uid")?bg.get("g_uid"):
"undefined"!==g_uid?g_uid:0;p={attachment_action:!0,action_type:"attachment_downloading",attachment_id:f,user_id:g_uid,attachment_hash:getBG().SHA256(m.slice(0,50)+p)};LPServer.ajax({global:!1,type:"POST",cache:!1,dataType:"json",data:p,url:base_url+"debug.php"});b(m,h,function(t){null===t?(a.logError("Failed to decrypt attachment. uid="+g_uid+" storagekey="+f+" sharedfolderid="+(g.id||0)+" "),e(null)):e(t)})}else a.logError("Server did not return attachment data. uid="+g_uid+" storagekey="+f+" sharedfolderid="+
(g.id||0)),e(null)},error:function(){a.logError("Network error happened while downloading an attachment. uid="+g_uid+" storagekey="+f);e(null)}})};a.copyToClipboard=function(f){a.copyToClipboardWithoutPermissionCheck(f)};a.copyToClipboardWithoutPermissionCheck=function(f){try{var h="undefined"!==typeof Preferences?parseInt(Preferences.get("clearClipboardSecsVal",60),10):60;c(f);a.lpIsExtension()&&0<h&&setTimeout(d,1E3*h)}catch(k){a.logException(k)}};a.lpIsExtension=function(){return!0};a.isElectron=
function(){return-1<navigator.userAgent.indexOf("Electron")&&"Electron"in(top||window)};a.isMacOS=function(){return-1<navigator.userAgent.indexOf("Macintosh")};a.isSafariAppStore=function(f){f(!1)};a.setProductPriceUpdatesObserver=function(){}})(LPPlatform);(function(a){a.ajax=function(b){return LPServer.ajax(b)};a.translate=function(b){return"undefined"!==typeof translations&&translations[b]?translations[b]:b};a.getUILanguage=function(){return g_language||"en-US"};a.lpIsExtension=function(){return!1};(function(){var b=function(h){try{var k=localStorage.getItem(h);return k?JSON.parse(k):{}}catch(e){return!1}},c=b("userprefs"),d=b("gblprefs");a.adjustPreferenceDefaults=function(h){};var f=function(h){switch(typeof h){case "object":return JSON.stringify(h);
case "boolean":return h?1:0;default:return h.toString()}};a.getPreference=function(h){return c.hasOwnProperty(h)?c[h]:d[h]};a.setUserPreference=function(h,k){c[h]=f(k)};a.setGlobalPreference=function(h,k){d[h]=f(k)};a.writePreferences=function(){try{localStorage.setItem("userprefs",JSON.stringify(c)),localStorage.setItem("gblprefs",JSON.stringify(d))}catch(h){}}})()})(LPPlatform);StringUtils={};(function(a){a.translate=function(b){if(b){var c=b.trim();if(0<c.length){c=LPPlatform.translate(c);try{return 1<arguments.length?sprintf.apply(null,[c].concat([].splice.call(arguments,1))):c}catch(d){return console.error("StringUtils.translate: sprintf failed: "+d),c}}}return b}})(StringUtils);Preferences=function(){var a={},b=function(k,e){var g=LPPlatform.getPreference(k);e=void 0===e?d[k]:e;return void 0===g?e:g},c={logoffWhenCloseBrowser:!0,logoffWhenCloseBrowserVal:!0,showvault:!0,hideContextMenus:!0,notificationsBottom:!0,usepopupfill:!0,openloginstart:!0,storeLostOTP:!0,enablenamedpipes:!0,enablenewlogin:!0,htmlindialog:!0,Icon:!0,generateHkKeyCode:!0,generateHkMods:!0,recheckHkKeyCode:!0,recheckHkMods:!0,searchHkKeyCode:!0,searchHkMods:!0,nextHkKeyCode:!0,nextHkMods:!0,prevHkKeyCode:!0,
prevHkMods:!0,homeHkKeyCode:!0,homeHkMods:!0,openpopoverHkKeyCode:!0,openpopoverHkMods:!0,rememberpassword:!0,dialogSizePrefs:!0},d={logoffWhenCloseBrowser:!1,logoffWhenCloseBrowserVal:0,idleLogoffEnabled:!1,idleLogoffVal:"",openpref:"tabs",htmlindialog:!1,automaticallyFill:!0,showvault:!1,showAcctsInGroups:!0,hideContextMenus:!1,defaultffid:"0",donotoverwritefilledfields:!1,showNotifications:!0,showGenerateNotifications:!1,showFormFillNotifications:!1,showSaveSiteNotifications:!1,notificationsBottom:!1,
showNotificationsAfterClick:!1,showSaveNotificationBar:!0,showChangeNotificationBar:!0,usepopupfill:!0,showmatchingbadge:!0,autoautoVal:25,warninsecureforms:!1,infieldPopupEnabled:!1,dontfillautocompleteoff:!1,pollServerVal:15,clearClipboardSecsVal:60,recentUsedCount:10,searchNotes:!0,openloginstart:!1,storeLostOTP:!0,enablenamedpipes:!0,enablenewlogin:!1,clearfilledfieldsonlogoff:!1,toplevelmatchingsites:!1,language:"en_US",Icon:1,generate_length:12,generate_upper:!0,generate_lower:!0,generate_digits:!0,
generate_special:!1,generate_mindigits:1,generate_ambig:!1,generate_reqevery:!0,generate_pronounceable:!1,generate_allcombos:!0,generate_advanced:!1,gridView:!0,compactView:!1,"seenVault4.0":!1,leftMenuMaximize:!0,disablepasswordmanagerasked:!0,rememberemail:!0,rememberpassword:!1,dialogSizePrefs:{},tempID:0,lastreprompttime:0,identity:"",alwayschooseprofilecc:!1,showIntroTutorial:!0};LPPlatform.adjustPreferenceDefaults(d);LPPlatform.isMac()?(d.generateHkKeyCode=0,d.generateHkMods="",d.recheckHkKeyCode=
0,d.recheckHkMods="",d.searchHkKeyCode=76,d.searchHkMods="shift meta",d.nextHkKeyCode=33,d.nextHkMods="meta",d.prevHkKeyCode=34,d.prevHkMods="meta",d.homeHkKeyCode=0,d.homeHkMods="",d.openpopoverHkKeyCode=220,d.openpopoverHkMods="meta"):(d.generateHkKeyCode=71,d.generateHkMods="alt",d.recheckHkKeyCode=73,d.recheckHkMods="alt",d.searchHkKeyCode=87,d.searchHkMods="alt",d.nextHkKeyCode=33,d.nextHkMods="alt",d.prevHkKeyCode=34,d.prevHkMods="alt",d.homeHkKeyCode=72,d.homeHkMods="control alt",d.openpopoverHkKeyCode=
220,d.openpopoverHkMods="alt");var f=function(k,e){(a[k]||[]).forEach(function(g){g(e)})},h=function(k,e){LPPlatform.setUserPreference(k,e);c[k]&&LPPlatform.setGlobalPreference(k,e);f(k,e)};return{getDefault:function(k){switch(typeof k){case "object":var e={},g;for(g in k)e[g]=d[g];return e;case "string":return d[k];default:return null}},get:function(k,e){switch(typeof k){case "object":var g={},m;for(m in k)g[m]=b(m,e?e[m]:void 0);return g;case "string":return b(k,e);default:return null}},set:function(k,
e){switch(typeof k){case "object":for(var g in k)h(g,k[g]);break;default:h(k,e)}LPPlatform.writePreferences()},addListener:function(k,e){var g=a[k]||[];g.push(e);a[k]=g},removeListener:function(k,e){a[k]=(a[k]||[]).filter(function(g){return g!==e})},triggerChange:f}}();var Provisioning;
(function(a){var b=function(){function c(d,f){this.platform=d;this.global=f}c.prototype.checkUserState=function(d){!this.global.lploggedin&&this.global.shouldOpenLogin()?(d({error:"User is not logged in."}),this.platform.openLoginPopover()):d({result:"OK."})};c.prototype.sendApiCalls=function(d,f,h){var k=this;this.platform.openTab({url:this.urlToCall(d),inactive:!0,loadHandler:function(e){var g={global:!1,type:f.action_type||"GET",cache:!1,url:f.url,data:f.params,success:function(t){k.handleResponseFromThridParty(e,h,
t)},error:function(t,w,r){k.handleResponseFromThridParty(e,h,{error:w})}};if(f.header){g.headers={};for(var m=0;m<f.header.length;m++)g.headers[f.header[m].key]=f.header[m].value}if("json"!==f.dataType){m=[];for(var p in f.data)m.push(p+"="+encodeURIComponent(f.data[p]));g.data=m.join("&")}else g.data=JSON.stringify(f.data);e.getTop().jQuery.ajax(g);k.cstimeout=setTimeout(function(){k.handleResponseFromThridParty(e,h,{error:"timeout"})},1E4)}})};c.prototype.handleResponseFromThridParty=function(d,
f,h){clearTimeout(this.cstimeout);f(h);d.close()};c.prototype.getLocalKey=function(d){d({key:g_local_key,hash:g_local_key_hash,hex:g_local_key_hex})};c.prototype.urlToCall=function(d){d=lpParseUri(d);return d.protocol?d.protocol+"://"+d.host:d.host};return c}();a.ProvisioningService=b;a.provisioning=new b(LPPlatform,window)})(Provisioning||={});LPServer=function(){var a=null,b=null,c=function(u,z){u&&u.error&&u.error(z)},d=function(){var u=function(z,L){var T={};for(Y in z){var S=z[Y];if(null===S||void 0===S)S="";if("object"===typeof S)for(var N in S)S.hasOwnProperty(N)&&(T[Y+"["+N+"]"]=S[N]);else T[Y]=S}z=T;L=L||"";var Y=[];for(var aa in z)N=z[aa],"object"===typeof N?Y=Y.concat(u(N,aa)):(L&&(aa=L+"["+aa+"]"),Y.push(aa+"="+encodeURIComponent(N)));return Y};return function(z){return u(z).join("&")}}(),f=function(u){var z=new XMLHttpRequest,
L=u.contentType||"application/x-www-form-urlencoded";u.success&&(z.onload=function(){if(4===z.readyState)if(200===z.status)switch("object"===typeof reduxApp&&reduxApp.responseIntercepted(z),u.dataType){case "xml":u.success(z.responseXML,z.responseText);break;case "json":var Y=null;try{Y=JSON.parse(z.responseText)}catch(aa){}u.success(Y,z.responseText);break;default:u.success(z.responseText)}else u.error&&u.error(z,z.statusText)});u.error&&(z.onerror=function(){u.error(z,z.statusText)});var T=function(Y){if("application/json"===
L){if("GET"===Y)return"";try{return JSON.parse(u.data),u.data}catch(aa){return JSON.stringify(u.data)}}else return d(u.data)},S=u.url;"GET"===u.type&&(S=T(u.type),S=u.url+(0<S.length?"?"+S:""));z.open(u.type||"GET",S,!0);if(u.headers)for(var N in u.headers)u.headers.hasOwnProperty(N)&&z.setRequestHeader(N,u.headers[N]);"undefined"!==typeof lp_phpsessid&&lp_phpsessid&&z.setRequestHeader("X-SESSION-ID",lp_phpsessid);"POST"===u.type?(z.setRequestHeader("Content-Type",L),u.beforeSend&&u.beforeSend(z,
u),z.send(T())):(u.beforeSend&&u.beforeSend(z,u),z.send())},h=function(u,z){R.ajax({type:"POST",url:R.getBaseURL()+"getCSRFToken.php",success:function(L){a=L||null;u(a)},error:k(z)})},k=function(u){return function(z,L,T){"function"===typeof u?u():console.error(T)}},e=function(u,z,L,T){g(u,z,L,T)||c(z,L)},g=function(){var u=function(z,L,T,S){return z&&(z=z[T],"function"===typeof z)?(z(S,L),!0):!1};return function(z,L,T,S){z=u(z,L,T,S);return z=u(L.callbacks,L,T,S)||z}}(),m=function(u,z){try{R.logException(u)}catch(L){}u instanceof
U?c(z,u.message):c(z);if(LPServer.throwExceptions)throw u;},p=function(u,z){return function(L,T){try{if(!g(u,z,T)){if(null===L&&T&&"undefined"!==typeof DOMParser)try{L=(new DOMParser).parseFromString(T,"application/xml")}catch(S){}null===L?c(z,"invalidxml"):r(L,u,z)}}catch(S){m(S,z)}}},t=function(u,z){u=u.getElementsByTagName(z);return 0<u.length?u[0]:null},w=function(u,z){return(u=t(u,z))?u.textContent:""},r=function(u,z,L){var T=t(u,"result"),S=t(u,"ok"),N=t(u,"error"),Y=t(u,"failed");if(T){S=T.getAttribute("rc");
N=T.getAttribute("msg");Y=T.getAttribute("success");var aa=T.getAttribute("ok");if(S){e(z,L,S,T);return}if(N){e(z,L,N,T);return}if(Y){e(z,L,Y,T);return}if(aa){e(z,L,"ok");return}T=T.textContent.trim();if("ok"===T){g(z,L,"ok")||e(z,L,w(u,"status"));return}if("bad"===T){c(L,w(u,"message"));return}}else{if(S){e(z,L,"ok",S);return}if(N){g(z,L,N.getAttribute("cause"),N)||e(z,L,N.getAttribute("message"),N);return}if(Y){e(z,L,Y.getAttribute("reason"),Y);return}}c(L)},y=function(u,z){return function(L,T){try{if(null===
L&&T)c(z,"invalidjson");else if(L.error){g(u,z,L.error,L)||c(z,L.errortxt||L.error);var S=L.username0||L.uid0?!0:!1;if(!S)return}else if(L.hasOwnProperty("success")){if(L.success&&g(u,z,"success",L))return;if(!L.success){c(z);return}}else if(L.res)if("success"===L.res){if(g(u,z,L.res,L))return}else{g(u,z,L.res,L)||c(z,L.errortxt);return}else if(g(u,z,L.reason,L)||g(u,z,L.status,L)||g(u,z,L.cmd,L))return;if(u&&"function"===typeof u["default"])u["default"](L,z);else"function"===typeof z.success&&z.success(L)}catch(N){m(N,
z)}}},F=function(u,z){return function(L,T){try{var S=JSON.parse(L.responseText)}catch(N){c(z,"invalidjson");return}g(u,z,S.code,S)||c(z,S.message)}},D=function(u){u.userSupplied=u.userSupplied||{};u.type=void 0===u.type?"POST":u.type;u.url=R.getBaseURL()+u.url;u.data=A(u.data,u.userSupplied.requestArgs);u.data&&void 0===u.data.lpversion&&"undefined"!==typeof lpversion&&(u.data.lpversion=lpversion);"undefined"===typeof u.error&&u.userSupplied.error&&(u.error=k(u.userSupplied.error));u.data&&void 0===
u.data.token&&(void 0===u.CSRFToken||u.CSRFToken)&&null===a?h(function(){R.ajax(u)},u.userSupplied.error):R.ajax(u)},G=function(u,z){var L={},T=z.userSupplied;"object"!==typeof T&&(T=z.userSupplied={});switch(typeof z.success){case "string":return L[z.success]=T.success,u(L,T);case "function":return L["default"]=z.success,u(L,T);default:if(z.callbacks||T.success||T.callbacks)return u(z.callbacks,T)}return null},E=function(u,z){z.data&&void 0===z.data.token&&(void 0===z.CSRFToken||z.CSRFToken)&&(z.data.token=
a)},Q=function(u,z,L){L=L||[];for(var T in z){var S=u[T],N=z[T];if("object"===typeof N)Q(S,N,L.concat(T));else if(typeof S!==N)throw L.push(T),"Extension is missing the following property: "+L.join(".")+" ("+N+")";}},J=function(u,z,L){u=u.getAttribute(z);return void 0===u?L:u},A=function(u){u=u||{};for(var z=1,L=arguments.length;z<L;++z){var T=arguments[z],S;for(S in T)u[S]=T[S]}return u},C=function(u,z){return u?function(){var L=z.apply(window,arguments);u.apply(window,L||arguments)}:z},P={StringUtils:{translate:"function"},
AES:{Encrypt:"function",Decrypt:"function",hex2bin:"function",bin2hex:"function"},enc:"function",dec:"function",RSAKey:"function",createRandomHexString:"function",parse_public_key:"function",parse_private_key:"function",enccbc:"function",make_lp_key_iterations:"function",make_lp_hash_iterations:"function",get_random_password:"function"},M={RSAKey:!0},R={ajax:f,translate:function(){return b.StringUtils.translate.apply(b.StringUtils,arguments)},logException:function(){},hex2bin:function(){return b.AES.hex2bin.apply(b.AES,
arguments)},bin2hex:function(){return b.AES.bin2hex.apply(b.AES,arguments)},encryptAES:function(u,z){return b.enc(u,z)},decryptAES:function(u,z){return b.dec(u,z)},encrypt:function(u,z){return b.enc(u,z)},decrypt:function(u,z){try{return b.dec(u,z)}catch(L){return""}},createRandomHexString:function(){return b.createRandomHexString.apply(b,arguments)},parsePublicKey:function(){return b.parse_public_key.apply(b,arguments)},parsePrivateKey:function(u,z){z=z||b.rsaprivatekeyhex;if(!z)throw"rsaprivatekeyhex required for this action.";
return b.parse_private_key(u,z)},extractPrivateKey:function(u,z){return b.rsa_extract_privatekey(u,z)},encryptCBC:function(){return b.enccbc.apply(b,arguments)},makeKey:function(){return b.make_lp_key_iterations.apply(b,arguments)},makeHash:function(){return b.make_lp_hash_iterations.apply(b,arguments)},makeRandomPassword:function(){return b.get_random_password.apply(b,arguments)},getBaseURL:function(){return b.base_url||""},getLocalKey:function(){return b.g_local_key},setLocalKey:function(u){b.g_local_key=
u}},U=function(u){this.message=u;this.stack=Error().stack};U.prototype=Object.create(Error.prototype);U.prototype.name="ClientException";U.prototype.constructor=U;var X=function(){var u=function(z){z.setRequestHeader("X-CSRF-TOKEN",a)};return{jsonRequest:function(z){z.dataType="json";z.contentType="application/json";z.beforeSend=C(z.beforeSend,u);z.error=F(z.callbacks,z.userSupplied||{});D(z)}}}();return{ajax:f,getRecordsFromResponse:function(u,z,L){for(var T=[],S=0;S<L;++S)T.push(J(u,z+S));return T},
jsonRequest:function(u){u.dataType="json";u.beforeSend=C(u.beforeSend,E);u.success=G(y,u);D(u)},xmlRequest:function(u){u.dataType="xml";u.beforeSend=C(u.beforeSend,E);u.success=G(p,u);D(u)},textRequest:function(u){u.dataType="text";u.beforeSend=C(u.beforeSend,E);D(u)},initialize:function(u,z){Q(u,P);for(var L in z)R[L]=z[L];for(var T in M)R[T]=u[T];b=u},ext:R,getNodes:function(u,z){return u.getElementsByTagName(z)},getNode:t,getNodeText:w,getAttr:J,getAttrInt:function(u,z,L){u=parseInt(J(u,z,L));
return isNaN(u)?L:u},extend:A,extendCallback:C,ClientException:U,clearCSRFToken:function(){a=null},getCSRFToken:h,callback:function(u,z){u.callbacks&&"function"===typeof u.callbacks[z]&&u.callbacks[z].apply(window,Array.prototype.slice.call(arguments,2))},lmiapi:X}}();LPServer.sharing=LPServer.sharing||{};
LPServer.sharing.individual=function(){var a=function(){var k={noemailspecified:function(r,y){y.error(LPServer.ext.translate("Please enter at least one email and try again."))},usernameisnotvalidemail:function(r,y){r=LPServer.getRecordsFromResponse(r,"email",LPServer.getAttrInt(r,"numinvalid",0));y.error(LPServer.ext.translate("The following emails are invalid: %s",r.join(", ")))},toomanyemails:function(r,y){r=LPServer.getAttrInt(r,"numexcess");"1"===r?y.error(LPServer.ext.translate("You are trying to share with too many people. Please remove at least 1 email and try again.",r)):
y.error(LPServer.ext.translate("You are trying to share with too many people. Please remove at least %d emails and try again.",r))},upgradeneeded:function(r,y){y.error(LPServer.ext.translate("Free users are limited to sharing one item with one person only. Upgrade to LastPass Premium to allow one-to-many sharing."))},cantsharewithself:function(r,y){y.error(LPServer.ext.translate("You can not share with yourself."))}},e=function(r,y,F){this.email=r;this.pubkey=y;this.encpass=F},g=function(r,y){this.aid=
r.getAttribute("aid");this.username=LPServer.ext.decrypt(r.getAttribute("username"),y);this.password=LPServer.ext.decrypt(r.getAttribute("password"),y);var F=r.getAttribute("url"),D=F&&"!"===F[0];D&&(this.url=LPServer.ext.decrypt(F,y),this.isUrlEncrypted=!0);F="undefined"!==typeof g_sites&&g_sites[this.aid]&&g_sites[this.aid].url&&"!"!==g_sites[this.aid].url[0];var G="undefined"!==typeof bg&&bg.get("g_sites")[this.aid]&&bg.get("g_sites")[this.aid].url&&"!"!==bg.get("g_sites")[this.aid].url[0];D||
!F&&!G||(this.url=g_sites[this.aid].url);this.totp=LPServer.ext.decrypt(r.getAttribute("totp"),y);this.name=LPServer.ext.decrypt(r.getAttribute("name"),y);this.grouping=LPServer.ext.decrypt(r.getAttribute("grouping"),y);this.extra=LPServer.ext.decrypt(r.getAttribute("extra"),y);this.attachkey=LPServer.ext.decrypt(r.getAttribute("attachkey"),y);this.afids=this.parseFields(r.getAttribute("afids"),y);this.otherafids=this.parseFields(r.getAttribute("otherafids"),y);this.accts_notes=this.parseFields(r.getAttribute("accts_notes"),
y);this.accts_usernames=this.parseFields(r.getAttribute("accts_usernames"),y);this.accts_passwords=this.parseFields(r.getAttribute("accts_passwords"),y);this.template=r.getAttribute("template")};g.prototype.parseFields=function(r,y){var F=[];if(r){r=r.split("^");for(var D=0,G=r.length;D<G;++D){var E=r[D];""!==E&&(E=r[D].split("&"),F.push({name:E[0],value:LPServer.ext.decrypt(E[1],y)}))}}return F};g.prototype.encrypt=function(){var r=function(F,D){return F?LPServer.ext.encryptCBC(F,D):""},y=function(F,
D){F=JSON.parse(JSON.stringify(F));for(var G=0,E=F.length;G<E;++G)F[G].value=r(F[G].value,D);return F};return function(F){var D={username:r(this.username,F),password:r(this.password,F),totp:r(this.totp,F),name:r(this.name,F),grouping:r(this.grouping,F),extra:r(this.extra,F),attachkey:r(this.attachkey,F),afids:y(this.afids,F),otherafids:y(this.otherafids,F),accts_notes:y(this.accts_notes,F),accts_usernames:y(this.accts_usernames,F),accts_passwords:y(this.accts_passwords,F)},G="http://sn"!==this.url&&
"http://group"!==this.url,E="undefined"!==typeof reduxApp&&reduxApp.getState().settings.features.url_encryption,Q="undefined"!==typeof g_sites&&g_sites[this.aid]&&g_sites[this.aid].encryptedUrl;G&&(E||Q||this.isUrlEncrypted)&&(D.url=r(this.url,F));return D}}();var m=function(r,y,F,D){for(var G=0,E=F.length;G<E;++G)r[y+D+G+"name"]=F[G].name,r[y+D+G+"value"]=F[G].value;r[y+"num"+D]=F.length},p=function(r,y){var F=LPServer.getAttrInt(r,"numemails",0);1===F?y.success(LPServer.ext.translate("Share sent to %s.",
LPServer.getAttr(r,"email0",""))):y.success(LPServer.ext.translate("Share sent to %d recipients.",F))},t=function(r,y){for(var F=[],D=0,G=r.length;D<G;++D){var E=r[D];E&&F.push({email:E,reason:y})}return F},w=function(r,y){var F=LPServer.getAttrInt(r,"numsharesok",0);if(0<F){for(var D=[],G=0;G<F;++G){var E=LPServer.getAttr(r,"emailok"+G,""),Q=LPServer.getAttr(r,"emailokpubkeyhex"+G,""),J=LPServer.getAttr(r,"emailencp"+G,"");D.push(new e(E,Q,J))}E=y.params.key;G=[];Q=LPServer.getNodes(r,"encdata");
J=0;for(var A=Q.length;J<A;++J)G.push(new g(Q[J],E));E={cmd:"share",sharemessage:"",giveshare:y.params.giveshare?1:0,numemails:D.length,numaids:G.length,fromrole:0,sharesyncpush:0,shareautopull:0,reportname:[]};Q=0;for(J=D.length;Q<J;++Q){var C=D[Q];A=LPServer.ext.createRandomHexString(64);A=LPServer.ext.hex2bin(A);var P=new LPServer.ext.RSAKey;LPServer.ext.parsePublicKey(P,C.pubkey);var M=P.encrypt(A);P="email"+Q;E[P]=C.email;E["sharekeyenchex"+Q]=M;E["sharekeyenchexsig"+Q]="";C.encpass&&(E["encpass"+
Q]=C.encpass);for(C=0;C<G.length;++C){M=G[C];var R=M.encrypt(A);1==y.params.logname&&E.reportname.push({aid:M.aid,name:M.name});var U=P+"aid"+C;E[U]=M.aid;E[U+"username"]=R.username;E[U+"password"]=R.password;R.url&&(E[U+"url"]=R.url);E[U+"name"]=R.name;E[U+"grouping"]=R.grouping;E[U+"extra"]=R.extra;E[U+"attachkey"]=R.attachkey;E[U+"template"]=M.template;E[U+"totp"]=R.totp;E[U+"url"]=R.url;E[U+"simpleNote"]=!M.url&&!M.extra.startsWith("NoteType");m(E,U,R.afids,"afid");m(E,U,R.otherafids,"otherafid");
m(E,U,R.accts_notes,"accts_notes");m(E,U,R.accts_usernames,"accts_usernames");m(E,U,R.accts_passwords,"accts_passwords")}}LPServer.xmlRequest({url:"showshare.php",data:E,callbacks:{shareok:p},userSupplied:y})}D=LPServer.getAttrInt(r,"numsharesdne",0);0<D&&y.callbacks&&y.callbacks.invite&&y.callbacks.invite({emails:LPServer.getRecordsFromResponse(r,"emaildne",D)});A=LPServer.getAttr(r,"sharingwithself","");D=LPServer.getAttrInt(r,"numsharesinv",0);G=LPServer.getAttrInt(r,"numsharesuns",0);E=LPServer.getAttrInt(r,
"numsharesspa",0);Q=LPServer.getAttrInt(r,"numsharesres",0);(J=LPServer.getAttr(r,"emailsWithDisabledRegistration",""))&&(J=J.split(","));(A||0<D||0<G||0<E||0<Q||J&&0<J.length)&&y.callbacks&&y.callbacks.problems&&(A=t([A],LPServer.ext.translate("You can not share with yourself.")),A=A.concat(t(LPServer.getRecordsFromResponse(r,"emailinv",D),LPServer.ext.translate("Invalid email address."))),A=A.concat(t(LPServer.getRecordsFromResponse(r,"emailuns",G),LPServer.ext.translate("The user must login to LastPass at least once to permit sharing."))),
A=A.concat(t(LPServer.getRecordsFromResponse(r,"emailspa",E),LPServer.ext.translate("The user does not want to receive emails from LastPass."))),A=A.concat(t(LPServer.getRecordsFromResponse(r,"emailres",Q),LPServer.ext.translate("Sharing is restricted by a LastPass Enterprise policy."))),A=A.concat(t(J,LPServer.ext.translate("This person doesn't have a LastPass account. Ask the team who manages LastPass at your organization to create a LastPass account for them."))),y.callbacks.problems(A));0<G&&
(r="function"==typeof getBG?getBG():null)&&r.sendLpImprove("sharing_failed");0===F&&y.error()};return function(r){r.callbacks=LPServer.extend(r.callbacks,k);for(var y={cmd:"getclientdata",shareeusername:r.params.emails,numaids:r.params.aids.length},F=0,D=r.params.aids.length;F<D;++F)y["aid"+F]=r.params.aids[F];LPServer.xmlRequest({url:"showshare.php",data:y,callbacks:{getclientdataack:w},userSupplied:r})}}(),b=function(){var k=function(e,g){g.success(LPServer.ext.translate("Share revoked from %s",
g.params.email))};return function(e){LPServer.xmlRequest({url:"showshare.php",data:{cmd:"unshare",aid:e.params.id,username:e.params.email},callbacks:{unshareok:k},userSupplied:e})}}(),c=function(){var k=function(p,t){t.success(LPServer.ext.translate("Share accepted."))},e=function(p,t,w){return(p=LPServer.ext.decrypt(p,t))?LPServer.ext.encryptCBC(p,w):""},g=function(p){return["http://sn","https://sn","http://group","https://group","http://passkey"].includes(p)},m=function(p){var t=p.params.key,w=
p.params.pendingShareKey,r=p.params.pendingShare,y={cmd:"acceptshare",msgtosharer:"",aid:r.id,newgroup:LPServer.ext.encryptCBC(p.params.group,t),name:e(r.sharename,w,t),grouping:e(r.sharegroup,w,t),username:e(r.username,w,t),password:e(r.password,w,t),extra:e(r.extra,w,t),attachkey:e(r.attachkey,w,t),totp:e(r.totp,w,t),key_integrity_fingerprint:p.params.fingerprint};r.url&&"!"===r.url[0]&&(y.url=e(r.url,w,t));if("undefined"!==typeof reduxApp&&reduxApp.getState&&reduxApp.getState().settings.features.url_encryption&&
!y.url&&r.url&&!g(r.url)||!y.url&&r.url&&!g(r.url))y.url=LPServer.ext.encryptCBC(r.url,t);y.newname=p.params.name?LPServer.ext.encryptCBC(p.params.name,t):y.name;var F=r.save_all?"otherafid":"afid",D;for(D in r.shareafids){var G=r.shareafids[D];G&&=e(G,w,t);y[F+D]=G}LPServer.xmlRequest({url:"showacceptshare.php",data:y,callbacks:{acceptshareok:k},userSupplied:p})};return function(p){p.params.pendingShare?m(p):p.params.id&&h(LPServer.extend({},p,{params:{id:p.params.id},success:function(t){p.params.pendingShare=
t.pendingShare;var w=new LPServer.ext.RSAKey;LPServer.ext.parsePrivateKey(w,LPServer.ext.extractPrivateKey(t.privateKey,p.params.key));p.params.pendingShareKey=w.decrypt(p.params.pendingShare.sharekeyenchex);m(p)}}))}}(),d=function(){var k=function(e,g){g.success(LPServer.ext.translate("Share rejected."))};return function(e){LPServer.xmlRequest({url:"showacceptshare.php",data:{cmd:"rejectshare",aid:e.params.id},callbacks:{rejectshareok:k},userSupplied:e})}}(),f=function(){var k=function(e,g){var m=
"",p=LPServer.getAttrInt(e,"numalready",0);if(g.callbacks&&g.callbacks.problems){var t=[];0<p&&(m=LPServer.getRecordsFromResponse(e,"emailalready",p).join(", "),m=LPServer.ext.translate("You have already invited the following friends: %s. Please send them a reminder using your personal email as the email invitation sent by LastPass might not have reached them.",m),t.push(m));var w=LPServer.getAttrInt(e,"numspam",0);0<w&&(w=LPServer.getRecordsFromResponse(e,"emailspam",w).join(", "),t.push(LPServer.ext.translate("The following friends have marked your invitations as spam: %s.",
w)));0<t.length&&g.callbacks.problems(t)}t=LPServer.getAttrInt(e,"numsent",0);1===t?g.success(LPServer.ext.translate("%s was invited. You'll get an email from LastPass when they take action and are ready for sharing.",LPServer.getAttr(e,"emailsent0",""))):1<t?g.success(LPServer.ext.translate("%d friends were invited. We will send you a notification email when any of them join LastPass so you can retry sharing your data with them.",t)):0<p?g.error(m):g.error(LPServer.ext.translate("We couldn\u2019t send invitations."))};
return function(e){for(var g={cmd:"invite",numemails:e.params.emails.length},m=0,p=e.params.emails.length;m<p;++m)g["email"+m]=e.params.emails[m];LPServer.xmlRequest({url:"showshare.php",data:g,callbacks:{inviteack:k},userSupplied:e})}}(),h=function(k){var e=k.params&&k.params.id?{aid:k.params.id}:{};if(k.params.url&&k.params.url.match(/acceptshare=/gi)){e.from="acceptshare";var g=(g=k.params.url.match(/confirm_token=[^&]*/gi))?g[0].split("=")[1]:"";e.confirm_token=g}LPServer.jsonRequest({url:"getReceivedShareInfo.php",
data:e,userSupplied:k})};return{shareItems:a,unshareItem:b,acceptShare:c,rejectShare:d,inviteFriends:f,getSentShareData:function(k){LPServer.jsonRequest({url:"getSentShareInfo.php",data:k.params&&k.params.id?{aid:k.params.id}:null,userSupplied:k})},getReceivedShareData:h}}();LPServer.sharing=LPServer.sharing||{};
LPServer.sharing.folder=function(){var a=function(J,A){A.success(J,{sharedFolder:A.params.sharedFolder,shareInfo:A.params.shareInfo})},b=function(J,A,C){if(0<A.length){J.adminuidcnt=A.length;for(var P=0,M=A.length;P<M;++P){var R=A[P],U=new LPServer.ext.RSAKey;LPServer.ext.parsePublicKey(U,R.key);J["adminsharekey"+P]=U.encrypt(LPServer.ext.bin2hex(C));J["adminuid"+P]=R.uid}}},c=function(J){return top.LPPlatform&&top.LPPlatform.isSPA&&top.LPPlatform.isSPA()?J:null},d=function(){var J=function(C,P){if(C.success){for(var M=
[],R=0;void 0!==C["pubkey"+R];)M.push({username:C["username"+R],uid:C["uid"+R],cgid:C["cgid"+R],pubkey:C["pubkey"+R]}),++R;R=[];if(C.groupname){C=C.groupname.split(",");for(var U=0,X=C.length;U<X;++U)R.push(C[U])}0<R.length&&LPServer.callback(P,"emptyGroups",R);P.success(M)}else P.error(c(C))},A={nouser:function(C,P){P.error&&P.error(c("noDefaultMessage"));LPServer.callback(P,"invite",{emails:C.unknownusers.split(",")})},"default":J,emptygroup:J,noshareerr:function(C,P){P.error(LPServer.ext.translate("Sorry, company policy prohibits use of this feature."))},
"vault-readonly-migration":function(C,P){P.error(c("vault-readonly-migration"))}};return function(C){LPServer.jsonRequest({url:"share.php",data:{getpubkey:1,uid:"string"===typeof C.params.userInfo?C.params.userInfo:JSON.stringify(C.params.userInfo),jsonr:1,sharedFolderId:C.params.sharedFolderId},callbacks:A,userSupplied:C})}}(),f=function(){var J=function(P,M){var R=new LPServer.ext.RSAKey;LPServer.ext.parsePublicKey(R,M);return R.encrypt(LPServer.ext.bin2hex(P))},A=function(P,M){for(var R in M){var U=
M[R];if("group"===U.type&&P.cgid===U.uid)return R}return null},C=function(P,M){for(var R={id:M.params.shareInfo.id,update:1,add:1,sharename:M.params.shareInfo.sharename,name:M.params.shareInfo.name,readonly:M.params.readonly?1:0,give:M.params.hidePasswords?0:1,notify:M.params.notify?1:0,canadminister:M.params.can_administer?1:0,xmlr:1},U=M.params.newMembers?M.params.newMembers:{},X=0,u=0,z=[],L={},T=0;T<P.length;T++){var S=P[T],N=S.username;U[N]&&"undefined"!==typeof U[N]||(U[N]={});S.readOnly="object"===
typeof U&&U[N].readOnly?1:R.readonly;S.canAdminister="object"===typeof U&&U[N].canAdminister?1:R.canadminister;S.give="object"!==typeof U||U[N].hidePasswords||"undefined"===typeof U[N].hidePasswords?R.give:1;S.pubkey?(R["sharekey"+X]=J(M.params.shareInfo.key,S.pubkey),R["username"+X]=N,R["cgid"+X]=S.cgid,R["readonly"+X]=S.readOnly,R["canadminister"+X]=S.canAdminister,R["give"+X]=S.give,++X):(R["msfusername"+u]=N,R["msfcgid"+u]=S.cgid,R["msfreadonly"+u]=S.readOnly,R["msfcanadminister"+u]=S.canAdminister,
R["msfgive"+u]=S.give,z.push(N),++u);L[N||A(S,U)]=!0}var Y=X+u;0<Y?LPServer.xmlRequest({url:"share.php",data:R,callbacks:{useradded:function(aa,ha){6>=Y&&0<z.length&&LPServer.callback(ha,"noSharingKeyUsers",z);ha.success(LPServer.ext.translate("%d users/groups were invited.",Object.keys(L).length),L)}},userSupplied:M}):M.error()};return function(P){d(LPServer.extend({},P,{params:{userInfo:P.params.newMembers,sharedFolderId:P.params.shareInfo.id},success:function(M){C(M,P)}}))}}(),h=function(){var J=
{ok:function(P,M){var R=LPServer.getAttr(P,"id");M.params.sharedFolder.aid=R;M.params.shareInfo.id=R;M.params.shareInfo.shareid=R;M.params.shareInfo.download=LPServer.getAttr(P,"download");M.params.shareInfo.uid=LPServer.getAttr(P,"uid");M.params.shareInfo.username=encodeURIComponent(M.params.username+"-"+M.params.sharedFolder.group);a(LPServer.ext.translate("Shared Folder %s created.",M.params.sharedFolder.group),M)},exceededlimit:function(P,M){M.error(LPServer.ext.translate("Sorry, as a premium user, you are limited to one Shared Folder. Please consider using LastPass Enterprise if you would like more."))},
premiumrequired:function(P,M){M.error(LPServer.ext.translate("Sorry, LastPass Premium is required to create a Shared Family Folder"))},alreadyexists:function(P,M){M.error(LPServer.ext.translate("That folder already exists."))}},A=function(P,M){for(var R,U=0;U<P.length;U++)P[U].username===M.params.username&&(R=P[U].pubkey);if(R){P=M.params.sharedFolder;U=M.params.shareInfo=M.params.shareInfo||{};var X={id:0,update:1,newusername:M.params.username+"-"+P.group,name:0===P.group.indexOf("Shared-")?P.group.substring(7):
P.group,xmlr:1},u=LPServer.ext.makeRandomPassword(),z=U.key=LPServer.ext.makeKey(X.newusername,u,5E3);X.newhash=LPServer.ext.makeHash(z,u,5E3);u=new LPServer.ext.RSAKey;LPServer.ext.parsePublicKey(u,R);X.sharekey=U.sharekey=u.encrypt(LPServer.ext.bin2hex(z));X.sharename=U.sharename=LPServer.ext.encryptCBC(P.group,z);b(X,M.params.superusers,z);if(reduxApp.isFeatureAvailable("veic_shared_folder_actions_logging")){var L=reduxApp.getCryptoTool();L.mac.importKey(btoa(z)).then(function(T){L.mac.calculateMac(X.newusername,
T).then(function(S){X.key_integrity_fingerprint=S;LPServer.xmlRequest({url:"share.php",data:X,callbacks:J,userSupplied:M})})})}else LPServer.xmlRequest({url:"share.php",data:X,callbacks:J,userSupplied:M})}else LPServer.callback(M,"sharingkeyrequired"),M.error&&M.error("")},C=function(P,M){var R={};R[M.params.username]={uid:M.params.uid,type:"companyuser"};M.params.superusers=P;d(LPServer.extend({},M,{params:{userInfo:R},success:function(U){A(U,M)}}))};return function(P){LPServer.jsonRequest({url:"getSuperUserInfo.php",
success:C,userSupplied:P})}}(),k=function(){var J={ok:function(A,C){C.params.shareInfo.name=C.params.sharedFolder.group.substring(7);C.params.shareInfo.sharename=LPServer.ext.encryptCBC(C.params.sharedFolder.group,C.params.shareInfo.key);a(LPServer.ext.translate("Shared Folder %s was renamed.",C.params.shareInfo.name),C)},alreadyexists:function(A,C){C.error(LPServer.ext.translate("That folder already exists."))}};return function(A){var C=A.params.sharedFolder.group.substring(7),P=LPServer.ext.encryptCBC(A.params.sharedFolder.group,
A.params.shareInfo.key);LPServer.xmlRequest({url:"share.php",data:{update:1,rename:1,id:A.params.shareInfo.id,name:C,sharename:P,xmlr:1},callbacks:J,userSupplied:A})}}(),e=function(){var J=function(A,C){C.params.shareInfo.deleted="1";a(LPServer.ext.translate("Shared Folder deleted."),C);top.LPVault.refreshVault()};return function(A){LPServer.xmlRequest({url:"share.php",data:{id:A.params.shareInfo.id,"delete":1,xmlr:1},callbacks:{deleted:J},userSupplied:A})}}(),g=function(){var J=function(A,C){C.success(LPServer.ext.translate("Member removed."))};
return function(A){var C={id:A.params.shareid,xmlr:1};A.params.msfuser?(C.msfdelete=1,C.msfuser=A.params.uid):(C.update=1,C.delete=1,C.uid=A.params.uid);LPServer.xmlRequest({url:"share.php",data:C,callbacks:{ok:J},userSupplied:A})}}(),m=function(){var J=function(A,C){C.success(LPServer.ext.translate("Permissions saved."))};return function(A){LPServer.xmlRequest({url:"editSharedFolderUsers.php",data:{cmd:"edit",xml:1,shareid:A.params.shareInfo.id,request:JSON.stringify(A.params.updatedPermissions)},
callbacks:{ok:J},userSupplied:A})}}(),p=function(J,A,C){var P={id:A.params.shareInfo.id,xmlr:1};P[J]=1;LPServer.xmlRequest({url:"share.php",data:P,callbacks:C,userSupplied:A})},t=function(){var J=function(A,C){C.params.shareInfo.download="1";a(LPServer.ext.translate("Shared Folder will now be downloaded."),C)};return function(A){p("startdownloading",A,{ok:J})}}(),w=function(){var J=function(A,C){C.params.shareInfo.download="0";a(LPServer.ext.translate("Shared Folder will no longer be downloaded."),
C)};return function(A){p("stopdownloading",A,{ok:J})}}(),r=function(){var J={undeleted:function(A,C){C.params.shareInfo.deleted="0";a(LPServer.ext.translate("Shared Folder restored."),C)}};return function(A){LPServer.xmlRequest({url:"share.php",data:{id:A.params.shareInfo.id,undelete:1,xmlr:1},callbacks:J,userSupplied:A})}}(),y=function(){var J={purged:function(A,C){C.success(LPServer.ext.translate("Shared Folder purged."))}};return function(A){LPServer.xmlRequest({url:"share.php",data:{id:A.params.shareInfo.id,
purge:1,xmlr:1},callbacks:J,userSupplied:A})}}(),F=function(){var J=function(A,C){C.success(A.folders)};return function(A){LPServer.jsonRequest({url:"getSharedFolderInfo.php",success:J,userSupplied:A})}}(),D=function(){var J={success:function(A,C){C.params.shareInfo.accepted="1";a(LPServer.ext.translate("Shared Folder accepted."),C)}};return function(A){top.reduxApp.acceptPendingFolderShare(A.params.shareInfo.id,function(){LPServer.jsonRequest({url:"share.php",data:{folder:A.params.shareInfo.id,acceptfolder:1,
jsonr:1},callbacks:J,userSupplied:A})},function(){A.error("noDefaultMessage")},A.params.shareInfo.sharer,A.params.sharedFolder.group)}}(),G=function(){var J={success:function(A,C){C.success(LPServer.ext.translate("Shared Folder rejected."))}};return function(A){LPServer.jsonRequest({url:"share.php",data:{id:A.params.shareInfo.id,rejectfolder:1,jsonr:1},callbacks:J,userSupplied:A})}}(),E=function(){var J={success:function(A,C){C.success(LPServer.ext.translate("Shared Folder member reinvited."))}};
return function(A){var C={reinvite:1,invitee:A.params.uid,folder:A.params.shareid,jsonr:1};"1"===A.params.ent&&(C.ent="on");LPServer.jsonRequest({url:"share.php",data:C,callbacks:J,userSupplied:A})}}(),Q=function(){var J={success:function(C,P){P.params.shareInfo.cid=LPServer.getAttr(C,"cid");P.params.shareInfo.outside_enterprise=LPServer.getAttr(C,"outside_enterprise");a(LPServer.ext.translate("Personal Shared Folder moved into Enterprise. You can now adminster the folder."),P)}},A=function(C,P){var M=
{id:P.params.shareInfo.id,moveintoenterprise:1,xmlr:1};b(M,C,P.params.shareInfo.key);LPServer.xmlRequest({url:"share.php",data:M,callbacks:J,userSupplied:P})};return function(C){LPServer.jsonRequest({url:"getSuperUserInfo.php",success:A,userSupplied:C})}}();return{SHARED_FOLDER_NAME_PREFIX:"Shared-",getFolders:F,getPublicKeys:d,create:h,rename:k,remove:e,accept:D,reject:G,addMembers:f,getMembers:function(J){LPServer.jsonRequest({url:"getSharedFolderMembers.php",data:{shareid:J.params.shareid},userSupplied:J})},
removeMember:g,reinviteMember:E,updateMemberPermissions:m,getRestrictions:function(J){LPServer.jsonRequest({url:"getSharedFolderRestrictions.php",data:J.params,userSupplied:J})},updateRestrictions:function(J){LPServer.textRequest({url:"share.php",data:{id:J.params.shareid,edit:1,limit:1,aids:J.params.aids,numaids:0<J.params.aids.length?J.params.aids.split(",").length:0,additionaluids:J.params.additionaluids,additionalgroupids:J.params.additionalgroupids,hidebydefault:J.params.hidebydefault?1:0,uid:J.params.uid,
xmlr:1},success:function(){J.success(LPServer.ext.translate("Access restrictions updated."))},userSupplied:J})},startDownloading:t,stopDownloading:w,restoreDeleted:r,purgeDeleted:y,convertToEnterprise:Q}}();LPServer.identities=function(){var a=function(b,c){var d={iid:b.params.identity.iid,iname:b.params.identity.iname,edit:"1",aids:b.params.identity.aids,ffids:b.params.identity.ffids,appaids:b.params.identity.appaids};b.params.identity.pw_prompt&&(d.pwprotect="on");LPServer.xmlRequest({url:"identity.php",data:d,success:c,userSupplied:b})};return{add:function(b){a(b,"identadded")},remove:function(b){LPServer.xmlRequest({url:"identity.php",data:{src:"website",deleteext:1,iid:b.params.id},success:"identdeleted",
userSupplied:b})},update:function(b){a(b,"identupdated")}}}();LPServer.emergencyAccess=function(){var a=function(h){var k=new LPServer.ext.RSAKey;LPServer.ext.parsePublicKey(k,h.params.recipient.publickey);k=k.encrypt(LPServer.ext.bin2hex(LPServer.ext.getLocalKey()));LPServer.jsonRequest({url:"legacy_helper.php",data:{action:"update_sharee",semail:h.params.recipient.username,enc_key:k,prio:1,hours:h.params.recipient.hours_to_override},userSupplied:h})},b=function(){var h=function(k,e){var g=k.noemail;k.errors instanceof Array&&0<k.errors.length?e.callbacks&&
e.callbacks.nosharingkeys?e.callbacks.nosharingkeys(k,e):e.error("nosharingkeys"):g instanceof Array&&0<g.length?(e.callbacks&&e.callbacks.invite&&e.callbacks.invite({emails:g}),e.error("")):k[e.params.recipient.username]?(e.params.recipient.publickey=k[e.params.recipient.username],a(e)):e.error()};return function(k){LPServer.jsonRequest({url:"legacy_helper.php",data:{action:"get_pubkey",emails:k.params.recipient.username},success:h,userSupplied:k})}}(),c=function(){var h=function(g,m){m.callbacks&&
m.callbacks.successGranted&&m.callbacks.successGranted(g,m)},k=function(g,m){m.callbacks&&m.callbacks.successLinked&&m.callbacks.successLinked(g,m)},e=function(g,m){var p=new LPServer.ext.RSAKey;LPServer.ext.parsePrivateKey(p);p=p.decrypt(g.enc_key);LPServer.xmlRequest({url:"legacy_helper.php",data:{action:"link",name:m.params.sharer.username,legacy:1,sharekey:g.enc_key,sharename:LPServer.ext.encrypt(m.params.sharer.username,LPServer.ext.hex2bin(p))},callbacks:{ok:k},userSupplied:m})};return function(g){LPServer.jsonRequest({url:"legacy_helper.php",
data:{action:"confirm",lemail:g.params.sharer.username},callbacks:{success:h,allowed:e},userSupplied:g})}}(),d=function(h){if(!h||!h.length||!g_uid)return!1;LPServer.lmiapi.jsonRequest({url:"lmiapi/emergency-access/sharees",method:"POST",data:h})},f=function(h,k){LPServer.lmiapi.jsonRequest({url:"lmiapi/emergency-access/sharees",type:"GET",contentType:"application/json",dataType:"json",success:function(e){h&&h(e)},error:function(e){k&&k()}})};return{updateRecipient:a,resendInvitation:function(h){LPServer.jsonRequest({url:"legacy_helper.php",
data:{action:"resend_invitation",email:h.params.recipient.username},userSupplied:h})},addRecipient:b,removeRecipient:function(h){LPServer.jsonRequest({url:"legacy_helper.php",data:{action:"revoke_offer",email:h.params.email},userSupplied:h})},getRecipientInfo:function(h){LPServer.jsonRequest({url:"legacy_helper.php",data:{action:"get_sharees",lemail:h.params.email},userSupplied:h})},getSharerInfo:function(h){LPServer.jsonRequest({url:"legacy_helper.php",data:{action:"get_sharers"},userSupplied:h})},
acceptOffer:function(h){LPServer.jsonRequest({url:"legacy_helper.php",data:{action:"accept_offer",email:h.params.sharer.username},userSupplied:h})},declineOffer:function(h){LPServer.jsonRequest({url:"legacy_helper.php",data:{action:"decline_offer",email:h.params.email},userSupplied:h})},requestAccess:c,denyAccess:function(h){LPServer.jsonRequest({url:"legacy_helper.php",data:{action:"deny_access",email:h.params.email},userSupplied:h})},unlinkAccount:function(h){LPServer.jsonRequest({url:"legacy_helper.php",
data:{action:"unlink",lemail:h.params.email},userSupplied:h})},updateShareeKey:d,getEmergencyAccessShareeData:f,checkEmergencyAccessHealth:function(){f(function(h){if(h){var k=[];h.forEach(function(e){var g=e.publicSharingKey;if(g&&e.updateRequired){var m=new RSAKey;parse_public_key(m,g)&&(g=m.encrypt(LPServer.ext.bin2hex(LPServer.ext.getLocalKey())),k.push({userId:e.userId,encryptedVaultKey:g}))}});k.length&&d(k)}})}}}();LPServer.sitesAndNotes=function(){return{saveCustomNoteTemplate:function(a){LPServer.lmiapi.jsonRequest({url:"lmiapi/note-templates",data:a.params,success:function(b){a.success(LPServer.ext.translate("Custom Note Template: %s created.",b.title),b)},userSupplied:a})},deleteCustomNoteTemplate:function(a){var b=reduxApp.getNoteTemplates().filter(function(c){return c.id===a.params.id});b&&0<b.length&&LPServer.lmiapi.jsonRequest({url:"lmiapi/note-templates/"+a.params.id+"/delete",success:function(c){a.success(LPServer.ext.translate("Custom Note Template: %s deleted.",
b[0].title),c)},userSupplied:a})}}}();LPServer.transact=function(){return{sendReminder:function(a){LPServer.lmiapi.jsonRequest({url:"lmiapi/transact/cross-device-reminder",data:a.params,userSupplied:a})}}}();BackgroundServer=function(a){LPServer.initialize(a,{ajax:function(g){g.data&&(g.data.method=get_method());LPPlatform.ajax(g)}});var b=function(g,m){return function(){g.apply(this,arguments)}},c=function(g,m,p){Array.isArray(m)?m.push(g):m[g[p]]=g},d=b(c),f=function(g,m,p){if(Array.isArray(m))for(var t=0,w=m.length;t<w;++t){if(g[p]===m[t][p]){m[t]=g;break}}else m[g[p]]=g},h=b(f),k=function(g,m,p){if(Array.isArray(g))for(var t=0,w=g.length;t<w;++t){if(p===g[t][m]){g.splice(t,1);break}}else delete g[m]},
e=b(k);return{emergencyAccess:{updateRecipient:function(g){var m=g.success;g.success=function(p){h(g.params.recipient,g_emer_sharees,"username");m(g.params.recipient)};LPServer.emergencyAccess.updateRecipient(g)},addRecipient:function(g){var m=g.success;g.success=function(p){d(g.params.recipient,g_emer_sharees,"username");m(g.params.recipient)};LPServer.emergencyAccess.addRecipient(g)},resendInvitation:function(g){LPServer.emergencyAccess.resendInvitation(g)},removeRecipient:function(g){g.success=
LPServer.extendCallback(g.success,function(){e(g_emer_sharees,"username",g.params.id)});LPServer.emergencyAccess.removeRecipient(g)},getRecipientInfo:function(g){LPServer.emergencyAccess.getRecipientInfo(g)},getSharerInfo:function(g){LPServer.emergencyAccess.getSharerInfo(g)},acceptOffer:function(g){var m=g.success;g.success=function(){var p=g.params.sharer;p.accepted="1";h(p,g_emer_sharers,"username");m(p)};LPServer.emergencyAccess.acceptOffer(g)},declineOffer:function(g){g.success=LPServer.extendCallback(g.success,
function(){e(g_emer_sharers,"username",g.params.email)});LPServer.emergencyAccess.declineOffer(g)},requestAccess:function(g){g.callbacks=g.callbacks||{};var m=g.callbacks.successLinked;g.callbacks.successLinked=function(t,w){t=w.params.sharer;t.confirmed="1";t.allowed_access="1";t.linked="1";t.override_date=new Date;refreshsites();m&&m(t,w)};var p=g.callbacks.successGranted;g.callbacks.successGranted=function(t,w){t=w.params.sharer;t.confirmed="1";t.override_date=new Date;t.override_date.setTime(t.override_date.getTime()+
36E5*t.hours_to_override);p&&p(t,w)};LPServer.emergencyAccess.requestAccess(g)},denyAccess:function(g){g.success=LPServer.extendCallback(g.success,function(){a:{var m=g_emer_sharees;var p=g.params.email;if(Array.isArray(m)){for(var t=0,w=m.length;t<w;++t)if(p===m[t].username){m=m[t];break a}m=void 0}else m=m.username}m.confirmed="0";m.allowed_access="0"});LPServer.emergencyAccess.denyAccess(g)},unlinkAccount:function(g){g.success=LPServer.extendCallback(g.success,b(function(){if(g.params.folderID)delete g_sites[g.params.folderID];
else for(var m in g_sites){var p=g_sites[m];if("http://group"===p.url&&p.group===g.params.email){delete g_sites[m];break}}}));LPServer.emergencyAccess.unlinkAccount(g)},updateShareeKey:function(g,m){if(!g)throw Error("No sharee ID was provided!");LPServer.emergencyAccess.updateShareeKey([{userId:g,encryptedVaultKey:m,keyUpdated:""}])}},identities:{add:function(g){var m=g.success;g.success=function(p){var t=g.params.identity;t.iid=LPServer.getAttr(p,"iid","");d(t,g_identities,"iid");m(t)};LPServer.identities.add(g)},
remove:function(g){g.success=LPServer.extendCallback(g.success,function(){e(g_identities,"iid",g.params.id)});LPServer.identities.remove(g)},update:function(g){var m=g.success;g.success=function(){var p=g.params.identity;h(p,g_identities,"iid");m(p)};LPServer.identities.update(g)}},vault:{history:{revertPasswordChange:function(){LPServer.vault.history.revertPasswordChange.apply(this,arguments)},getPasswordHistory:function(){LPServer.vault.history.getPasswordHistory.apply(this,arguments)},getUsernameHistory:function(){LPServer.vault.history.getUsernameHistory.apply(this,
arguments)},getNoteHistory:function(){LPServer.vault.history.getNoteHistory.apply(this,arguments)}}},sharing:{individual:{shareItems:function(g){LPServer.sharing.individual.shareItems(g)},unshareItem:function(g){LPServer.sharing.individual.unshareItem(g)},acceptShare:function(g){g.success=LPServer.extendCallback(g.success,function(){refreshsites()});LPServer.sharing.individual.acceptShare(g)},rejectShare:function(g){g.success=LPServer.extendCallback(g.success,function(){e(g_pendings,"id",g.params.id)});
LPServer.sharing.individual.rejectShare(g)},inviteFriends:function(g){LPServer.sharing.individual.inviteFriends(g)},getSentShareData:function(g){LPServer.sharing.individual.getSentShareData(g)},getReceivedShareData:function(g){LPServer.sharing.individual.getReceivedShareData(g)}},folder:{getFolders:function(g){LPServer.sharing.folder.getFolders(g)},getPublicKeys:function(g){LPServer.sharing.folder.getPublicKeys(g)},create:function(g){g.success=LPServer.extendCallback(g.success,b(function(m,p){p.shareInfo.sharekeyaes=
lpmenc(AES.bin2hex(p.shareInfo.key),!0,g_local_key);p.sharedFolder.sharefolderid=p.sharedFolder.aid;"1"===p.shareInfo.download&&(c(p.shareInfo,g_shares,"id"),c(p.sharedFolder,g_sites,"aid"))}));g.params.username=g_username;LPServer.sharing.folder.create(g)},rename:function(g){g.success=LPServer.extendCallback(g.success,b(function(m,p){f(p.shareInfo,g_shares,"id");f(p.sharedFolder,g_sites,"aid")}));LPServer.sharing.folder.rename(g)},remove:function(g){g.success=LPServer.extendCallback(g.success,b(function(m,
p){f(p.shareInfo,g_shares,"id");for(var t in g_sites)g_sites[t].sharefolderid===p.shareInfo.id&&delete g_sites[t]}));LPServer.sharing.folder.remove(g)},accept:function(g){g.success=LPServer.extendCallback(g.success,function(){k(g_pending_shares,"id",g.params.shareInfo.id);refreshsites()});LPServer.sharing.folder.accept(g)},reject:function(g){g.success=LPServer.extendCallback(g.success,b(function(){k(g_pending_shares,"id",g.params.shareInfo.id)}));LPServer.sharing.folder.reject(g)},addMembers:function(g){LPServer.sharing.folder.addMembers(g)},
getMembers:function(g){LPServer.sharing.folder.getMembers(g)},removeMember:function(g){LPServer.sharing.folder.removeMember(g)},reinviteMember:function(g){LPServer.sharing.folder.reinviteMember(g)},updateMemberPermissions:function(g){LPServer.sharing.folder.updateMemberPermissions(g)},getRestrictions:function(g){LPServer.sharing.folder.getRestrictions(g)},updateRestrictions:function(g){LPServer.sharing.folder.updateRestrictions(g)},startDownloading:function(g){g.success=LPServer.extendCallback(g.success,
function(m,p){refreshsites()});LPServer.sharing.folder.startDownloading(g)},stopDownloading:function(g){g.success=LPServer.extendCallback(g.success,b(function(m,p){refreshsites();f(p.shareInfo,g_shares,"id");for(var t in g_sites)g_sites[t].sharefolderid===p.shareInfo.id&&delete g_sites[t]}));LPServer.sharing.folder.stopDownloading(g)},restoreDeleted:function(g){g.success=LPServer.extendCallback(g.success,b(function(m,p){f(p.shareInfo,g_shares,"id");refreshsites()},!0));LPServer.sharing.folder.restoreDeleted(g)},
purgeDeleted:function(g){g.success=LPServer.extendCallback(g.success,b(function(){k(g_shares,"id",g.params.shareid);k(g_sites,"aid",g.params.shareid)}));LPServer.sharing.folder.purgeDeleted(g)},convertToEnterprise:function(g){g.success=LPServer.extendCallback(g.success,b(function(m,p){f(p.shareInfo,g_shares,"id");f(p.sharedFolder,g_sites,"aid")}));LPServer.sharing.folder.convertToEnterprise(g)}}},sitesAndNotes:{saveCustomNoteTemplate:function(g){g.success=LPServer.extendCallback(g.success,b(function(m,
p){reduxApp.addNoteTemplate(p)}));LPServer.sitesAndNotes.saveCustomNoteTemplate(g)},deleteCustomNoteTemplate:function(g){g.success=LPServer.extendCallback(g.success,b(function(m,p){reduxApp.removeNoteTemplate(g.params.id)}));LPServer.sitesAndNotes.deleteCustomNoteTemplate(g)}},transact:{sendReminder:function(g){LPServer.transact.sendReminder(g)},sendMobileDownload:function(g){LPServer.jsonRequest({url:"lmiapi/transact/mobile-download",method:"POST",data:g.params,success:g.success,error:g.error})}},
families:{getMembers:function(g){LPServer.jsonRequest({url:"typeahead_remote.php",method:"GET",success:g.success,error:g.error})},existingUserTrial:function(g){LPServer.lmiapi.jsonRequest({url:"lmiapi/families/trial/existing-user",method:"POST",data:g.params,userSupplied:{error:g.error},success:function(){refreshsites()}})},getInvitations:function(g){LPServer.lmiapi.jsonRequest({url:"lmiapi/families/invitations",type:"GET",success:g.success,userSupplied:g})}},licensing:{getCompanyLicensing:function(g){LPServer.lmiapi.jsonRequest({type:"GET",
url:"teams-api/my-company/showlicensing",success:g,callbacks:{TrialExpired:g,Expired:g}})},isCompanyExpired:function(g){LPServer.lmiapi.jsonRequest({type:"GET",url:"lmiapi/my-company/is-expired",success:g})},setCompanyExpired:function(g){g_is_company_subscription_expired=g}},invitation:{acceptInvitation:function(g){LPServer.lmiapi.jsonRequest({url:"lmiapi/invitations/"+g.params.invitationId+"/accept",type:"POST",success:function(){refreshsites()},userSupplied:g})},dismissInvitation:function(g){LPServer.lmiapi.jsonRequest({url:"lmiapi/invitations/"+
g.params.invitationId+"/dismiss",type:"POST",success:g.success,userSupplied:g})}},aurora:{oneClickSignupUrls:null,getOneClickSignupUrls:function(g){var m=this.oneClickSignupUrls;m?setTimeout(function(){g.success(m)},0):LPServer.lmiapi.jsonRequest({url:"lmiapi/environment-config",type:"GET",success:function(p){p=p&&p.oneClickSignupUrls;BackgroundServer.aurora.oneClickSignupUrls=p;g.success(p)}})}}}}(this);var rsa_extract_privatekey=function(){var a=function(b,c){Promise.resolve().then(function(){return cryptography.SmartCrypto.symmetric.importKey(btoa(c))}).then(function(){logger.error(b,{could_import_local_key:!0})}).catch(function(){logger.error(b,{could_import_local_key:!1})})};return function(b,c){if(!b)return"";b="!"==b.charAt(0)?lpdec(b,c):AES.Decrypt({pass:c+c.substring(0,16),data:btoa(AES.hex2bin(b)),b64:!0,bits:256,mode:"cbc"});return!b||42>=b.length||0!==b.indexOf("LastPassPrivateKey<")||
b.indexOf(">LastPassPrivateKey")!==b.length-19?(a("rsa_key_extract_error : private_key_is_invalid",c),""):b.substring(19,b.length-19)}}();function rsa_encrypt_privatekey_v1(a,b){a="LastPassPrivateKey<"+a+">LastPassPrivateKey";b=AES.bin2hex(atob(AES.Encrypt({pass:b+b.substring(0,16),data:a,b64:!0,bits:256,mode:"cbc"}))).toUpperCase();return Promise.resolve(b)}
function rsa_encrypt_privatekey_v2(a,b){var c=cryptography.SmartCrypto,d=cryptography.CryptoArray,f="LastPassPrivateKey<"+a+">LastPassPrivateKey";a=d.toBase64(d.fromBinary(b));return c.symmetric.importKey(a).then(function(h){return c.symmetric.encrypt(f,h,"base64")})}function rsa_encrypt_privatekey(a,b){return("undefined"!==typeof reduxApp?reduxApp.getState().settings.features.private_sharing_key_random_iv_encryption:1)?rsa_encrypt_privatekey_v2(a,b):rsa_encrypt_privatekey_v1(a,b)};Topics=function(){var a={};return{publish:function(b,c){Topics.get(b).publish(c)},get:function(b){var c=b&&a[b];if(!c){var d=[],f=function(k){for(var e=0,g=d.length;e<g;++e)if(k===d[e])return e;return-1},h=function(k){k=f(k);-1<k&&d.splice(k,1)};c={publish:function(){for(var k=!0,e=d.slice(),g=0,m=e.length;g<m&&!1!==k;++g)try{"function"===typeof e[g]&&(k=e[g].apply(window,arguments))}catch(p){"function"===typeof LPPlatform.logException&&LPPlatform.logException(p)}},subscribe:function(k){-1===f(k)&&
d.push(k)},subscribeFirst:function(k){h(k);d.unshift(k)},unsubscribe:function(k){h(k)}};b&&(a[b]=c)}return c}}}();Topics.ITEMS_DESELECTED=1;Topics.ITEMS_SELECTED=2;Topics.CONTEXT_MENU=3;Topics.CONFIRM=4;Topics.ITEM_SHARE=5;Topics.ERROR=6;Topics.SUCCESS=7;Topics.IDENTITY_ENABLE=8;Topics.SITE_ADDED=9;Topics.NOTE_ADDED=10;Topics.FORM_FILL_ADDED=11;Topics.EDIT_NOTE=12;Topics.EDIT_SITE=13;Topics.EDIT_FORM_FILL=14;Topics.ACCEPT_SHARE=15;Topics.REJECT_SHARE=16;Topics.GROUP_ADDED=17;
Topics.RENAME_FOLDER=18;Topics.CONTEXT_CLOSE=19;Topics.EDIT_SETTINGS=20;Topics.REQUEST_START=21;Topics.REQUEST_SUCCESS=22;Topics.REQUEST_ERROR=23;Topics.COLLAPSE_ALL=24;Topics.EXPAND_ALL=25;Topics.DISPLAY_GRID=26;Topics.DISPLAY_LIST=27;Topics.CLEAR_DATA=28;Topics.EDIT_IDENTITY=29;Topics.CREATE_SUB_FOLDER=30;Topics.DIALOG_OPEN=31;Topics.DIALOG_CLOSE=32;Topics.ESCAPE=33;Topics.IDENTITY_ADDED=34;Topics.PUSH_STATE=35;Topics.EDIT_SHARED_FOLDER=36;Topics.LEFT_ARROW=37;Topics.RIGHT_ARROW=38;
Topics.PASSWORD_CHANGE=39;Topics.UP_ARROW=40;Topics.DOWN_ARROW=41;Topics.ENTER=42;Topics.EDIT_SHARED_FOLDER_ACCESS=43;Topics.REMOVED_SHARED_FOLDER_USER=44;Topics.LOGIN=45;Topics.REFRESH_DATA=46;Topics.ACCOUNT_LINKED=48;Topics.ACCOUNT_UNLINKED=49;Topics.CREATE_SHARED_FOLDER=50;Topics.DIALOG_LOADING=51;Topics.DIALOG_LOADED=52;Topics.REPROMPT=53;Topics.EDIT_APPLICATION=54;Topics.ATTACHMENT_REMOVED=55;Topics.CLEAR_STATE=56;Topics.SELECT_COUNT_CHANGE=57;Topics.REAPPLY_SEARCH=58;
Topics.EMERGENCY_RECIPIENT_ADDED=59;Topics.EDIT_EMERGENCY_RECIPIENT=60;Topics.UPDATE_NOTIFICATION_COUNT=61;Topics.UPDATE_VAULT_STATE=62;Topics.ITEM_SHARED=64;Topics.REFRESH_PREFERENCES=65;Topics.DISPLAY_COMPACT=66;Topics.DISPLAY_LARGE=67;Topics.ALL_COLLAPSED=68;Topics.ALL_EXPANDED=69;Topics.APPLICATION_ADDED=70;Topics.REQUEST_STATUS=71;Topics.DIALOG_RESIZE=72;Topics.SECURENOTE_TEMPLATE_ADDED=73;Topics.INITIALIZED=74;Topics.REQUEST_FRAMEWORK_INITIALIZED=75;Topics.SITE_NOTIFICATION_STATE=76;
Topics.SITE_NOTIFICATION=77;Topics.DROPDOWN_SHOWN=78;Topics.DROPDOWN_HIDE=79;Topics.FILLED_GENERATED_PW=80;Topics.VAULT_LEFT_MENU_TOGGLE=81;Topics.EMPTY_VAULT_STATE_CHANGE=82;Topics.LOGIN_FINISHED=83;Topics.ACCTS_VERSION_UPDATED=84;Topics.ITEM_REMOVED=85;Topics.INFIELD_NOTIFICATION_OPENED=86;Topics.INFIELD_NOTIFICATION_CLOSED=87;Topics.INFIELD_NOTIFICATION_FILLED=88;Topics.INFIELD_FRAME_POSITION_CHANGED=89;Topics.MIGRATION_RUNNING=90;Topics.BLOB_UPDATED=91;Topics.CONVERT_FOLDER_TO_LEGACY=92;
Topics.FORM_SUBMITTED=93;Topics.INTRO_TOURS_LOADED=94;Topics.PREFERENCES_READ=95;Topics.PREFERENCES_WRITE=96;Topics.MANUAL_LOGIN_FINISHED=97;Topics.PROCESSED_FORM_SUBMIT=98;Topics.BADGE_NOTIFICATION=99;Topics.BADGE_CLEAR=100;Topics.POPOVER_RESIZE=101;Topics.MATCHING_ITEMS_CHANGED=102;Topics.PASSWORD_FORM_SUBMITTED=103;Topics.REMOVED_SHARE=104;Topics.ACCOUNT_LINKED_NEEDS_VERIFICATION=105;Topics.CONTENT_SCRIPT_ADD_SITE_DIALOG_OPENED=106;Topics.SPA_IFRAME_WEB_CLIENT_INITIALIZED=107;
Topics.EDIT_DESKTOP_APP_SETTINGS=108;Topics.ELECTRON_EXPORT_DIALOG_OPEN=109;Topics.NOTIFICATION_CLOSE=110;lploggedin=!0;g_identities=[];g_formfills=[];g_pendings=[];base_url="";g_sites={};g_securenotes={};g_enterprisemodel=g_enterpriseuser=0;g_enterpriseoffering=g_enterpriseuserrole=null;g_premium_trial=g_premium_exp=g_iscompanyadmin=0;g_is_company_subscription_expired=null;g_applications={};g_shares=[];g_username_hash=lp_username=g_username=null;g_prompts={};g_maxid=[];g_groups={};lp_attaches=[];g_attachversion=[];lpversion="4.0";g_uid=null;g_icons=[];g_bigicons=[];
g_identity="undefined"!==typeof iid&&iid?iid:Preferences.get("identity");g_isedge=(g_ischrome="undefined"!=typeof chrome&&("undefined"!==typeof chrome.runtime||"undefined"!==typeof chrome.extension))&&-1!=navigator.userAgent.indexOf(" Edge/");(function(){var a={};lpevent=function(b){b="w"+b;a[b]=a.hasOwnProperty(b)?a[b]+1:1};setInterval(function(){if(g_prompts.improve){var b=!1,c;for(c in a){b=!0;break}b&&LPServer.xmlRequest({url:"poll_server.php",data:a});a={}}},1E4)})();get_method=function(){return"web"};
request_native_messaging=function(){send_website_event("request_native_messaging")};
uploadSharingKeysWeb=function(a,b,c,d){var f={};f.privatekeyenc=b;f.publickey=a;f.userkeyhexhash=SHA256(AES.bin2hex(g_local_key));f.privatekeyenchexhash=SHA256(b);f.token=decodeURIComponent(g_token);f.from="webvault";f.method="web";f.lpversion=lpversion;LPServer.ajax({type:"POST",url:base_url+"uploadrsakeys_website.php",data:f,success:function(h,k){lp_rsaprivatekeyenchex=b;lp_rsaprivatekeyhex=rsa_extract_privatekey(lp_rsaprivatekeyenchex,g_local_key);c()},error:d})};
singlefactor_reprompt=function(a,b,c){FederatedLogin.isFederated(g_username,function(d){d?FederatedLogin.getPassword(g_username,function(f){g_local_key===make_lp_key_iterations(g_username,f,get_key_iterations(g_username))?b():c()},c):a()},c)};sendLpImproveCallback=function(a,b,c){"object"===typeof LastpassApiHelper&&"function"===typeof LastpassApiHelper.sendLpImproveCallback&&LastpassApiHelper.sendLpImproveCallback(a,b,g_lpImprove,c)};var RecordTypeConfig={TYPE:{Password:"Account",SecureNote:"Generic",Address:"Address",CreditCard:"Credit Card",BankAccount:"Bank Account",DriversLicense:"Driver's License",Passport:"Passport",SocialSecurity:"Social Security",Insurance:"Insurance",HealthInsurance:"Health Insurance",Membership:"Membership",Wifi:"Wi-Fi Password",EmailAccount:"Email Account",InstantMessenger:"Instant Messenger",Database:"Database",Server:"Server",SSHKey:"SSH Key",SoftwareLicense:"Software License",Custom:"Custom",CloudApps:"Cloud Apps",
CloudAppsFilter:"Cloud Apps",Application:"Application",Passkey:"Passkey"},types:[{id:"Password",name:"Password",recordType:"",isPrimaryItem:!0},{id:"SecureNote",name:"Secure note",recordType:"",isPrimaryItem:!0,enterprisePolicyId:"1"},{id:"Address",name:"Address",recordType:"",isPrimaryItem:!0,enterprisePolicyId:"2"},{id:"CreditCard",name:"Payment card",recordType:"",isPrimaryItem:!0,enterprisePolicyId:"3"},{id:"BankAccount",name:"Bank account",recordType:"",isPrimaryItem:!0,enterprisePolicyId:"4"},
{id:"DriversLicense",name:"Driver's license",recordType:"",isPrimaryItem:!1,enterprisePolicyId:"5"},{id:"Passport",name:"Passport",recordType:"",isPrimaryItem:!1,enterprisePolicyId:"6"},{id:"SocialSecurity",name:"Social security number",recordType:"",isPrimaryItem:!1,enterprisePolicyId:"7"},{id:"Insurance",name:"Insurance policy",recordType:"",isPrimaryItem:!1,enterprisePolicyId:"8"},{id:"HealthInsurance",name:"Health insurance",recordType:"",isPrimaryItem:!1,enterprisePolicyId:"9"},{id:"Membership",
name:"Membership",recordType:"",isPrimaryItem:!1,enterprisePolicyId:"10"},{id:"Wifi",name:"Wi-fi password",recordType:"",isPrimaryItem:!1,enterprisePolicyId:"11"},{id:"EmailAccount",name:"Email account",recordType:"",isPrimaryItem:!1,enterprisePolicyId:"12"},{id:"InstantMessenger",name:"Instant messenger",recordType:"",isPrimaryItem:!1,enterprisePolicyId:"13"},{id:"Database",name:"Database",recordType:"",isPrimaryItem:!1,enterprisePolicyId:"14"},{id:"Server",name:"Server",recordType:"",isPrimaryItem:!1,
enterprisePolicyId:"15"},{id:"SSHKey",name:"SSH key",recordType:"",isPrimaryItem:!1,enterprisePolicyId:"16"},{id:"SoftwareLicense",name:"Software license",recordType:"",isPrimaryItem:!1,enterprisePolicyId:"17"},{id:"Custom",name:"Custom item",recordType:"",composite:!0,enterprisePolicyId:"18"},{id:"CloudApps",name:"Cloud Apps",recordType:"",isPrimaryItem:!0,noAddItemCard:!0,enterprisePolicyId:"19"},{id:"CloudAppsFilter",name:"Cloud Apps",recordType:"",isPrimaryItem:!0,noAddItemCard:!0,enterprisePolicyId:"19"},
{id:"Passkey",name:"Passkeys",recordType:"",isPrimaryItem:!1,noAddItemCard:!0},{id:"Application",name:"Applications",recordType:"",isPrimaryItem:!1,noAddItemCard:!0}],views:[{id:"all",name:"All Items","default":!0,types:null},{id:"cloud-apps-filter",name:"Cloud Apps","default":!0,noShowEmptyGroups:!0,types:["CloudAppsFilter"],noAddItemMenu:!0,user:"Enterprise Admin|Enterprise User|Enterprise Role User"},{id:"passwords",name:"Passwords","default":!0,types:["Password"]},{id:"passkeys",name:"Passkeys",
"default":!0,types:["Passkey"],featureSwitch:"enable_passkey"},{id:"notes",name:"Notes","default":!0,types:["SecureNote"]},{id:"addresses",name:"Addresses","default":!0,types:["Address"]},{id:"payment-cards",name:"Payment Cards","default":!0,types:["CreditCard"]},{id:"bank-accounts",name:"Bank Accounts","default":!0,types:["BankAccount"]},{id:"drivers-license",name:"Driver's Licenses","default":!1,types:["DriversLicense"]},{id:"passports",name:"Passports","default":!1,types:["Passport"]},{id:"ssn",
name:"Social Security Numbers","default":!1,types:["SocialSecurity"]},{id:"insurance",name:"Insurance Policies","default":!1,types:["Insurance"]},{id:"health-insurance",name:"Health Insurance Policies","default":!1,types:["HealthInsurance"]},{id:"memberships",name:"Memberships","default":!1,types:["Membership"]},{id:"wifi",name:"Wi-Fi Passwords","default":!1,types:["Wifi"]},{id:"emails",name:"Email Accounts","default":!1,types:["EmailAccount"]},{id:"ims",name:"Instant Messenger Accounts","default":!1,
types:["InstantMessenger"]},{id:"databases",name:"Databases","default":!1,types:["Database"]},{id:"servers",name:"Servers","default":!1,types:["Server"]},{id:"ssh",name:"SSH Keys","default":!1,types:["SSHKey"]},{id:"software-keys",name:"Software Licenses","default":!1,types:["SoftwareLicense"]},{id:"custom-items",name:"Custom Items","default":!1,types:["Custom"]},{id:"applications",name:"Applications","default":!0,types:["Application"],platformSpecific:["electron"]}],viewConfig:[["all","cloud-apps-filter"],
["passwords","passkeys","applications","notes","addresses"],["payment-cards","bank-accounts"],["drivers-license","passports","ssn"],["insurance","health-insurance","memberships","wifi"],["emails","ims"],["databases","servers","ssh","software-keys","custom-items"]],icons:{all:"all-items-svg",CloudApps:"cloud-apps-svg",CloudAppsFilter:"cloud-apps-svg",CreditCard:"credit-card-svg",Password:"password-svg",SecureNote:"secure-note-svg",Passkey:"passkey-svg",Address:"address-svg",BankAccount:"bank-account-svg",
Database:"database-svg",DriversLicense:"drivers-license-svg",Folder:"fa fa-folder",Insurance:"insurance-policy-svg",HealthInsurance:"health-insurance-svg",Membership:"membership-svg",Passport:"passport-svg",Server:"server-svg",SocialSecurity:"social-security-svg",SoftwareLicense:"software-license-svg",SSHKey:"ssh-key-svg",Wifi:"wifi-svg",InstantMessenger:"instant-messenger-svg",EmailAccount:"email-svg",Custom:"custom-svg",Application:"application-svg"}},i;
for(i in RecordTypeConfig.types)if(RecordTypeConfig.types.hasOwnProperty(i)){var recordType=RecordTypeConfig.types[i];recordType.recordType=RecordTypeConfig.TYPE[recordType.id]}void 0!==this&&"undefined"!==typeof module&&(module.exports=RecordTypeConfig);var ExtensionPreferences={getConst:function(a,b){b(window[a])},getDefault:function(a,b){b(Preferences.getDefault(a))},read:function(a,b){b(Preferences.get(a))},write:function(a,b,c){Preferences.set(a,b)},getUnavailablePreferences:function(a){a(LPPlatform.getUnavailablePreferences())}};LPServer.vault=LPServer.vault||{};
LPServer.vault.history=function(){const a=(f,h)=>{const k=[];for(let e=0;e<f.length;e++){const g=f[e];k[e]={value:g[0],date:g[1],whom:2<g.length?g[2]:""}}h.success(k)};var b=f=>h=>{if(!h?.params?.aid)throw Error("Missing parameter values.");const {aid:k,shareId:e}=h.params,g={aid:k};e&&(g.sharedfolderid=e);LPServer.jsonRequest({url:f,data:g,success:a,userSupplied:h})};const c=b("getPasswordHist.php"),d=b("getUsernameHist.php");b=b("getNoteHist.php");return{revertPasswordChange:f=>{if(!f?.params?.key||
!f.params.aid)throw Error("Missing parameter values.");const {aid:h,shareId:k}=f.params;c({params:{aid:h,shareId:k},success:e=>{0<e.length&&(e=dec(e[e.length-1].value,f.params.key),changePassword(e,[f.params.aid],!1,f.success,f.error))},error:f.error})},getPasswordHistory:c,getUsernameHistory:d,getNoteHistory:b}}();var __extends=this&&this.__extends||function(){var a=function(b,c){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,f){d.__proto__=f}||function(d,f){for(var h in f)f.hasOwnProperty(h)&&(d[h]=f[h])};return a(b,c)};return function(b,c){function d(){this.constructor=b}a(b,c);b.prototype=null===c?Object.create(c):(d.prototype=c.prototype,new d)}}(),Migration=function(){return function(){}}(),Migrator=function(){function a(b){this.migrations=[];this.progress=0;this.hasLinkedAccount=
!!a.migrationBackground.getLinkedUsername();this.migrations=b.sort(function(c,d){if(c.version<d.version)return-1;if(c.version>d.version)return 1;throw Error("Duplicate migrations!");})}a.executeMigrations=function(b,c){var d=this;void 0===c&&(c=!1);var f=[];if(!a.migrationsRunning)if("loading"==document.readyState)document.addEventListener("DOMContentLoaded",function(){a.executeMigrations()});else{(c||a.formfillMigrationBackground.isEnabled())&&f.push(new FormfillAndNotesMigration);var h=new a(f);
this.migrationBackground.getLinkedBlobVersion(function(k){var e=c?0:d.migrationBackground.getBlobVersion();if(c||null!==e&&(h.hasPendingMigrations(e)||null!==k&&h.hasPendingMigrations(k)))a.setMigrationInProgress(),b&&h.setProgressCallback(b),!c&&null!==k&&h.hasPendingMigrations(k)?h.migrateLinked(k,function(){h.hasPendingMigrations(e)?h.migrate(e,function(){a.setMigrationFinished()}):a.setMigrationFinished()}):h.migrate(e,function(){a.setMigrationFinished()})})}};Object.defineProperty(a,"migrationBackground",
{get:function(){return a.getBg().MigrationBackground},enumerable:!0,configurable:!0});a.getBg=function(){return"undefined"!==typeof bg?bg:getBG()};a.setMigrationInProgress=function(){a.migrationsRunning=!0;this.migrationBackground.publishState(!0)};a.setMigrationFinished=function(){a.migrationsRunning=!1;this.migrationBackground.publishState(!1);location.reload()};Object.defineProperty(a,"formfillMigrationBackground",{get:function(){return a.getBg().FormfillMigrationBackground},enumerable:!0,configurable:!0});
a.prototype.setProgressCallback=function(b){this.progressCallback=b};a.prototype.hasPendingMigrations=function(b){for(var c=0,d=this.migrations;c<d.length;c++)if(b<d[c].version)return!0;return!1};a.prototype.migrateLinked=function(b,c){var d=this;if(this.hasLinkedAccount){this.updateProgress();for(var f=function(g){if(b<g.version)return g.migrateLinked(function(){d.progress+=100;d.migrateLinked(g.version,c)},function(m,p){d.updateProgress(Math.floor(m/Math.max(p,1)*100))}),{value:void 0}},h=0,k=this.migrations;h<
k.length;h++){var e=f(k[h]);if("object"===typeof e)return e.value}a.migrationBackground.saveLinkedBlobVersion(b,function(){c&&c(b)})}else c(b)};a.prototype.migrate=function(b,c){var d=this;this.updateProgress();for(var f=function(g){if(b<g.version)return g.migrate(function(){d.progress+=100;d.migrate(g.version,c)},function(m,p){d.updateProgress(Math.floor(m/Math.max(p,1)*100))}),{value:void 0}},h=0,k=this.migrations;h<k.length;h++){var e=f(k[h]);if("object"===typeof e)return e.value}a.migrationBackground.saveBlobVersion(b,
function(){c&&c(b)})};a.prototype.updateProgress=function(b){void 0===b&&(b=0);this.progressCallback&&this.progressCallback(this.progress+Math.min(b,100),100*this.migrations.length*(this.hasLinkedAccount?2:1))};a.migrationsRunning=!1;return a}(),ObservableState=function(){function a(){this.stateSubscribers=[];this.temporarySubscribers=[];this._wasMigration=this.isRunning=!1}a.prototype.subscribeToState=function(b){b&&-1===this.stateSubscribers.indexOf(b)&&(this.stateSubscribers.push(b),this.isRunning&&
b(this.isRunning))};a.prototype.subscribeToStateOnce=function(b){b&&-1===this.stateSubscribers.indexOf(b)&&this.temporarySubscribers.push(b)};a.prototype.wasMigration=function(b){b(this._wasMigration)};a.prototype.publishState=function(b){this.isRunning&&!b&&(this._wasMigration=!0);this.isRunning=b;for(var c=0,d=this.stateSubscribers;c<d.length;c++)(0,d[c])(b);c=this.temporarySubscribers;this.temporarySubscribers=[];for(d=0;d<c.length;d++)(0,c[d])(b)};a.prototype.setStateWasMigration=function(b){this._wasMigration=
b};return a}(),MigrationBackgroundBase=function(a){function b(){var c=null!==a&&a.apply(this,arguments)||this;c.targetBlobVersion=20170404140712;c._shouldStartMigration=!1;return c}__extends(b,a);Object.defineProperty(b.prototype,"_reduxApp",{get:function(){return"undefined"!==typeof reduxApp?reduxApp:top.reduxApp},enumerable:!0,configurable:!0});Object.defineProperty(b.prototype,"apiUrl",{get:function(){var c="/lmiapi";"string"===typeof base_url&&(c=base_url.replace(/\/$/,"")+c);return c},enumerable:!0,
configurable:!0});b.prototype.setOmarFlagsTrue=function(){this._reduxApp&&(this._reduxApp.setFeatures({omar_ia:!0,ziggy:!0,omar_password_generator:!0}),this._reduxApp.setBlobVersion(!0))};b.prototype.getShouldStartMigration=function(c){c&&c(this._shouldStartMigration)};b.prototype.setShouldStartMigration=function(c){this._shouldStartMigration=c};b.prototype.getBlobVersion=function(){return"undefined"!==typeof this._reduxApp&&this._reduxApp.getState().user.blobVesionSet?this.targetBlobVersion:0};b.prototype.hasFormFills=
function(){return"undefined"!==typeof g_formfills&&0<g_formfills.length};b.prototype.hasBeenMigrated=function(){return this.getBlobVersion()>=this.targetBlobVersion};b.prototype.getLinkedUsername=function(){for(var c=0,d=g_shares;c<d.length;c++){var f=d[c];if("undefined"!=typeof f.associative&&1==f.associative)return f.decsharename}return null};b.prototype.saveBlobVersion=function(c,d){this.setOmarFlagsTrue();this.saveVersionRequest(this.apiUrl+"/users/me/blobversion",c,d)};b.prototype.saveLinkedBlobVersion=
function(c,d){this.setOmarFlagsTrue();this.saveVersionRequest(this.apiUrl+"/users/me/blobversion/linked",c,d)};b.prototype.saveProperBlobVersion=function(c,d){this.getLinkedUsername()&&this.saveLinkedBlobVersion(c,d);this.saveBlobVersion(c,d)};b.prototype.shouldShowMigrationNotification=function(){return this.hasFormFills()&&!this.hasBeenMigrated()&&"undefined"!==typeof this._reduxApp&&this._reduxApp.getState().settings.features.omar_migration_opt_in};b.prototype.alertForMigration=function(){this.hasBeenMigrated()||
"undefined"!==typeof this._reduxApp&&!this._reduxApp.getState().settings.features.omar_migration_opt_in||(this.hasFormFills()?this.showMigrationAlert():(this.setMigrationState(!0),this.saveProperBlobVersion(this.targetBlobVersion,function(){openvault(!0,!1,!1,function(){})})))};b.prototype.postponeMigration=function(c){var d=this;setTimeout(function(){d.alertForMigration()},c)};b.prototype.sendSegmentEvent=function(c,d){sendLpImprove(c,d)};b.prototype.setMigrationState=function(c){this.setStateWasMigration(c)};
return b}(ObservableState),MigrationBackgroundWeb=function(a){function b(){var c=a.call(this)||this;c.init();return c}__extends(b,a);b.prototype.init=function(){var c=this;"undefined"!==typeof Topics&&Topics.get(Topics.BLOB_UPDATED).subscribeFirst(function(){"undefined"===typeof c._reduxApp||c._reduxApp.getState().user.blobVesionSet||c.alertForMigration()})};b.prototype.getLinkedBlobVersion=function(c){this.getLinkedUsername()?$.get(this.apiUrl+"/users/me/blobversion/linked").done(function(d){c(d.version)}).fail(function(){c(null)}):
c(null)};b.prototype.saveVersionRequest=function(c,d,f){this.getToken(function(h){$.ajax({url:c,method:"POST",dataType:"json",contentType:"application/json",data:JSON.stringify({version:d}),headers:{"x-csrf-token":h},success:function(){f&&f()}})})};b.prototype.getToken=function(c){$.post(this.apiUrl+"/csrf",function(d){c(d)})};b.prototype.showMigrationAlert=function(){};return b}(MigrationBackgroundBase),MigrationBackgroundExtension=function(a){function b(){var c=a.call(this)||this;c.init();return c}
__extends(b,a);b.prototype.init=function(){var c=this;"undefined"!==typeof Topics&&Topics.get(Topics.LOGIN_FINISHED).subscribeFirst(function(){"undefined"===typeof c._reduxApp||c._reduxApp.getState().user.blobVesionSet||c.alertForMigration()})};b.prototype.getLinkedBlobVersion=function(c){this.getLinkedUsername()?LP.lpMakeRequestReallyReal(this.apiUrl+"/users/me/blobversion/linked","",function(d){4===d.readyState&&200===d.status?(d=JSON.parse(d.responseText),c(d.version)):4===d.readyState&&lpmakerequesterror("invalidresponse",
{url:d.responseURL},!1)},void 0,{method:"GET"}):c(null)};b.prototype.getServerBlobVersion=function(c){var d=this;this._serverReqCallback=c;LP.lpMakeRequestReallyReal(this.apiUrl+"/users/me/blobversion","",function(f){4===f.readyState&&200===f.status?(f=JSON.parse(f.responseText),c(f.version)):4===f.readyState&&setTimeout(d._serverReqCallback,1E3)},void 0,{method:"GET"})};b.prototype.saveVersionRequest=function(c,d,f){this.getToken(function(h){LP.lpMakeRequestReallyReal(c,JSON.stringify({version:d}),
function(k){4===k.readyState&&200===k.status?f&&f():4===k.readyState&&lpmakerequesterror("invalidresponse",{url:k.responseURL},!1)},void 0,{"x-csrf-token":h,"Content-Type":"application/json"})})};b.prototype.getToken=function(c){LP.lpMakeRequestReallyReal(this.apiUrl+"/csrf","",function(d){4===d.readyState&&200===d.status?c(JSON.parse(d.responseText)):4===d.readyState&&lpmakerequesterror("invalidresponse",{url:d.responseURL},!1)})};b.prototype.showMigrationAlert=function(){g_badgedata={cmd:"migration"};
"undefined"!==typeof drawIconAtRotation&&drawIconAtRotation()};return b}(MigrationBackgroundBase),FormfillStore=function(){function a(){}a.prototype.getLinkedFormfills=function(){this.useShareKey=!0;return this.decrypt(this.linkedEncryptedFormfills)};a.prototype.getFormfills=function(){this.useShareKey=!1;return this.decrypt(this.encryptedFormfills)};a.prototype.decrypt=function(b){for(var c=[],d=0;d<b.length;d++){var f=b[d],h=new FormFillType,k;for(k in f)if(f.hasOwnProperty(k)){var e=void 0;h[k]=
f[k];if("custom_fields"===k){h[k]=[];for(var g in f[k]){h[k][g]=this.objectAssign({},f[k][g]);var m=h[k][g],p;for(p in m)m[p]&&(e=this.decryptString(m[p],!0))&&(m[p]=e)}}else h[k]&&(e=this.decryptString(h[k],!0))&&(h[k]=e)}h.decprofilename||(h.decprofilename=h.profilename);c.push(h)}return c};a.prototype.objectAssign=function(b,c){for(var d=1;d<arguments.length;d++){var f=arguments[d];if(null!=f)for(var h in f)Object.prototype.hasOwnProperty.call(f,h)&&(b[h]=f[h])}return b};return a}(),FormFillType=
function(){function a(){this.monthNames=" January February March April May June July August September October November December".split(" ")}a.prototype.hasSocialSecurityNumber=function(){return!!this.ssn};a.prototype.hasAddressData=function(){return!!(this.title||this.firstname||this.middlename||this.lastname||this.username||this.gender||this.birthday||this.company||this.address1||this.address2||this.address3||this.city||this.county||this.timezone||this.email||this.phone||this.mobilephone||this.evephone||
this.fax||this.faxphone||this.eve3lcc||this.mobile3lcc||!this.hasSocialSecurityNumber()&&!this.hasPaymentCardData()&&!this.hasBankNoteData()&&this.notes)};a.prototype.hasPaymentCardData=function(){return!!(this.ccname||this.ccnum||this.ccstart||this.ccexp||this.cccsc||this.ccissuenum)};a.prototype.hasBankNoteData=function(){return!!(this.bankname||this.bankroutingnum||this.bankacctnum)};a.prototype.hasCustomFields=function(){return!!this.custom_fields.length};a.prototype.getSerializedPhone=function(){return this.phone?
JSON.stringify({num:this.phone,ext:this.phoneext,cc3l:this.phone3lcc}):""};a.prototype.getSerializedEveningPhone=function(){return this.evephone?JSON.stringify({num:this.evephone,ext:this.eveext,cc3l:this.evephone3lcc||this.eve3lcc}):""};a.prototype.getSerializedMobilePhone=function(){return this.mobilephone?JSON.stringify({num:this.mobilephone,ext:this.mobileext,cc3l:this.mobilephone3lcc||this.mobile3lcc}):""};a.prototype.getSerializedFax=function(){return this.fax||this.faxphone?JSON.stringify({num:this.fax||
this.faxphone,ext:this.faxext,cc3l:this.fax3lcc}):""};a.prototype.getBirthdayLastpassFormat=function(){var b=/([^-]*)-([^-]*)-([^-]*)/g.exec(this.birthday);return b&&3<=b.length?this.monthNames[Number(b[2])]+","+b[3]+","+b[1]:",,"};a.prototype.getCreditCardStartLastpassFormat=function(){var b=/([^-]*)-([^-]*)/g.exec(this.ccstart);return b&&2<=b.length?this.monthNames[Number(b[2])]+","+b[1]:","};a.prototype.getCreditCardExpireLastpassFormat=function(){var b=/([^-]*)-([^-]*)/g.exec(this.ccexp);return b&&
2<=b.length?this.monthNames[Number(b[2])]+","+b[1]:","};return a}(),NoteType=function(){return function(){}}(),FormfillAndNotesMigration=function(a){function b(){var c=null!==a&&a.apply(this,arguments)||this;c.fieldMaxLength=50;c.migrationQueue=[];c.successCallback=function(){};c.progress=-1;c.startSegmentEventSent=!1;c.noteAdditionHandler=function(){c.executeNextMigration()};return c}__extends(b,a);Object.defineProperty(b.prototype,"version",{get:function(){return 20170404140712},enumerable:!0,configurable:!0});
b.prototype.migrateLinked=function(c,d){this.successCallback=c;this.progressCallback=d;this.sendStartSegmentEventOnce();c=this.formfillMigrationBackground.getLinkedFormfills();this.migrateFormfills(c);this.attachMigrationQueueExecutor()};b.prototype.migrate=function(c,d){this.successCallback=c;this.progressCallback=d;this.sendStartSegmentEventOnce();c=this.formfillMigrationBackground.getFormfills();this.migrateFormfills(c);this.attachMigrationQueueExecutor()};b.prototype.sendStartSegmentEventOnce=
function(){this.startSegmentEventSent||(this.migrationBackground.sendSegmentEvent("migration::formfill::started"),this.startSegmentEventSent=!0)};b.prototype.migrateFormfills=function(c){for(var d=this,f=function(e){e.hasSocialSecurityNumber()&&h.migrationQueue.push(function(){d.saveSocialSecurityNumberNote(e)});e.hasAddressData()&&h.migrationQueue.push(function(){d.saveAddressNote(e)});e.hasPaymentCardData()&&h.migrationQueue.push(function(){d.savePaymentCardNote(e)});e.hasBankNoteData()&&h.migrationQueue.push(function(){d.saveBankAccountNote(e)});
e.hasCustomFields()&&h.migrationQueue.push(function(){d.saveCustomFields(e)})},h=this,k=0;k<c.length;k++)f(c[k])};b.prototype.saveSocialSecurityNumberNote=function(c){var d={group:c.group,name:c.decprofilename,notetype:this.getNoteTypes().SSN,pwprotect:c.pwprotect,fav:"0",language:c.profilelanguage,extra:{Name:c.firstname+" "+c.middlename+" "+c.lastname,Number:c.ssn,Notes:c.notes?""+c.notes:""}};this.saveNote(d,c.ffid)};b.prototype.saveAddressNote=function(c){var d={group:c.group,name:c.decprofilename,
notetype:this.getNoteTypes().ADDRESS,pwprotect:c.pwprotect,fav:"0",language:c.profilelanguage,extra:{Title:c.title,"First Name":c.firstname,"Middle Name":c.middlename,"Last Name":c.lastname,Username:c.username,Gender:c.gender,Birthday:c.getBirthdayLastpassFormat(),Company:c.company,"Address 1":c.address1,"Address 2":c.address2,"Address 3":c.address3,"City / Town":c.city,County:c.county,State:c.state,"Zip / Postal Code":c.zip,Country:c.country,Timezone:c.timezone,"Email Address":c.email,Phone:c.getSerializedPhone(),
"Evening Phone":c.getSerializedEveningPhone(),"Mobile Phone":c.getSerializedMobilePhone(),Fax:c.getSerializedFax(),Notes:c.notes?c.notes:""}};this.saveNote(d,c.ffid)};b.prototype.savePaymentCardNote=function(c){var d={group:c.group,name:c.decprofilename,notetype:this.getNoteTypes().CREDIT,pwprotect:c.pwprotect,fav:"0",language:c.profilelanguage,extra:{"Name on Card":c.ccname,Type:"",Number:c.ccnum,"Security Code":c.cccsc,"Start Date":c.getCreditCardStartLastpassFormat(),"Expiration Date":c.getCreditCardExpireLastpassFormat(),
Notes:(c.notes?c.notes+"\n":"")+(c.ccissuenum?"Issue number: "+c.ccissuenum:"")}};this.saveNote(d,c.ffid)};b.prototype.saveBankAccountNote=function(c){var d={group:c.group,name:c.decprofilename,notetype:this.getNoteTypes().BANK,pwprotect:c.pwprotect,fav:"0",language:c.profilelanguage,extra:{"Bank Name":c.bankname,"Account Type":"","Routing Number":c.bankroutingnum,"Account Number":c.bankacctnum,"SWIFT Code":"","IBAN Number":"",Pin:"","Branch Address":"","Branch Phone":"",Notes:c.notes}};this.saveNote(d,
c.ffid)};b.prototype.saveCustomFields=function(c){for(var d=this,f=this.escape("Formfill "+c.decprofilename),h=[],k=[],e="",g={},m=0,p=c.custom_fields;m<p.length;m++){var t=p[m],w=this.escape(t.text);w.length>this.fieldMaxLength&&(w=w.substring(0,this.fieldMaxLength));w||="empty";-1!==t.text.indexOf("\n")||-1!==t.value.indexOf("\n")?e+=t.text+":"+t.value+"\n":-1===k.indexOf(w)&&(h.push({text:w,type:"text",options:null}),g[w]=t.value,k.push(w))}""!==e&&(h.push({text:"Notes",type:"textarea",options:null}),
g.Notes=e);this.formfillMigrationBackground.createCustomNoteType(f,h,function(r){r={group:c.group,name:c.decprofilename,notetype:"Custom_"+r,pwprotect:c.pwprotect,fav:"0",language:c.profilelanguage,extra:g,template:JSON.stringify({id:r,title:f,fields:h})};d.saveNote(r,c.ffid)})};b.prototype.escape=function(c){return c.replace(/&/g,"").replace(/</g,"").replace(/>/g,"").replace(/\(/g,"").replace(/\)/g,"").replace(/;/g,"").replace(/:/g,"").replace(/~/g,"").replace(/`/g,"").replace(/"/g,"").replace(/'/g,
"")};b.prototype.saveNote=function(c,d){"undefined"!==typeof Note?this.saveInForeground(c,d):this.saveInBackground(c,d)};b.prototype.saveInForeground=function(c,d){var f=c.group;f||(f=Strings.Consts.NONE_GROUP);var h=LPProxy.getGroupByName(f);!h&&f&&(h=LPProxy.getExistingGroupParent(f),h=new DummyGroup(f,h?h.getSharedGroup():null));f=new Note;f.add=this.getNotePatchedAddFunction(d);f.addFromDialog(c,h,{source:"vault"})};b.prototype.saveInBackground=function(c,d){var f=this;void 0===d&&(d="0");this.formfillMigrationBackground.saveNote(c,
function(h){h&&"0"!==d&&f.saveIdentityInfo(h.aid,d);f.noteAdditionHandler()},d)};b.prototype.saveIdentityInfo=function(c,d){for(var f=0,h=LPProxy.getIdentities();f<h.length;f++){var k=h[f];k&&k.ffids&&k.ffids.split(",").includes(d)&&(k.aids=k.aids?k.aids+","+c:c,LPRequest.makeUpdateRequest(LPProxy.saveIdentity,{params:{identity:k},success:function(){}}))}};b.prototype.getNotePatchedAddFunction=function(c){return function(d,f){(function(h,k){LPRequest.makeUpdateRequest(LPProxy.addNote,{parameters:[h,
d,f],success:function(e){h.update(e,d,k);LPProxy.addItem(h);Topics.get(Topics.NOTE_ADDED).publish(h,d);var g=bg.get("g_identities");if(g)for(var m=0;m<g.length;m++){var p=g[m];p&&p.ffids&&p.ffids.split(",").includes(c)&&(p.aids=p.aids?p.aids+","+e.aid:e.aid,LPRequest.makeUpdateRequest(LPProxy.saveIdentity,{params:{identity:p},success:function(){}}))}}})})(this,this._data.attacharraychanges)}};b.prototype.getNoteTypes=function(){return{ADDRESS:"Address",BANK:"Bank Account",CREDIT:"Credit Card",GENERIC:"Generic",
SSN:"Social Security"}};b.prototype.attachMigrationQueueExecutor=function(){Topics.get(Topics.NOTE_ADDED).subscribe(this.noteAdditionHandler);this.progressMax=this.migrationQueue.length;this.executeNextMigration()};b.prototype.executeNextMigration=function(){this.progress+=1;this.progressCallback&&this.progressCallback(this.progress,this.progressMax);this.migrationQueue.length?this.migrationQueue.pop()():(Topics.get(Topics.NOTE_ADDED).unsubscribe(this.noteAdditionHandler),this.migrationBackground.sendSegmentEvent("migration::formfill::completed"),
this.successCallback())};b.prototype.getBg=function(){return"undefined"!==typeof bg?bg:getBG()};Object.defineProperty(b.prototype,"formfillMigrationBackground",{get:function(){return this.getBg().FormfillMigrationBackground},enumerable:!0,configurable:!0});Object.defineProperty(b.prototype,"migrationBackground",{get:function(){return this.getBg().MigrationBackground},enumerable:!0,configurable:!0});return b}(Migration),FormfillMigrationBackgroundWeb=function(a){function b(){var c=a.call(this)||this;
c.apiUrl="/lmiapi";"string"===typeof base_url&&(c.apiUrl=base_url.replace(/\/$/,"")+c.apiUrl);return c}__extends(b,a);b.prototype.isEnabled=function(){return reduxApp.getState().settings.features.migration_opt_in||reduxApp.getState().settings.features.omar_migration_opt_in};b.prototype.createCustomNoteType=function(c,d,f){var h=this;this.getToken(function(k){$.ajax({url:h.apiUrl+"/note-templates",type:"POST",dataType:"json",contentType:"application/json",headers:{"X-CSRF-TOKEN":k},data:JSON.stringify({title:c,
method:"web",fields:d}),success:function(e){f(e.id)}})})};b.prototype.saveNote=function(c,d,f){throw Error("Migrate in the foreground!");};Object.defineProperty(b.prototype,"linkedEncryptedFormfills",{get:function(){return g_formfills.filter(function(c){return!!c.sharefolderid})},enumerable:!0,configurable:!0});Object.defineProperty(b.prototype,"encryptedFormfills",{get:function(){return g_formfills.filter(function(c){return!c.sharefolderid})},enumerable:!0,configurable:!0});b.prototype.decryptString=
function(c,d){var f=void 0;this.useShareKey&&(f=this.getShareKey());return lpmdec(c,d,f)};b.prototype.getToken=function(c){$.post(this.apiUrl+"/csrf",function(d){c(d)})};b.prototype.getShareKey=function(){for(var c=0,d=g_shares;c<d.length;c++){var f=d[c];if("undefined"!==typeof f.associative&&1==f.associative)return f.key}};return b}(FormfillStore),FormfillMigrationBackgroundExtension=function(a){function b(){return null!==a&&a.apply(this,arguments)||this}__extends(b,a);Object.defineProperty(b.prototype,
"apiUrl",{get:function(){var c="/lmiapi";"string"===typeof base_url&&(c=base_url.replace(/\/$/,"")+c);return c},enumerable:!0,configurable:!0});b.prototype.isEnabled=function(){return reduxApp.getState().settings.features.migration_opt_in||reduxApp.getState().settings.features.omar_migration_opt_in};b.prototype.createCustomNoteType=function(c,d,f){var h=this;this.getToken(function(k){LP.lpMakeRequestReallyReal(h.apiUrl+"/note-templates",JSON.stringify({title:c,method:"web",fields:d}),function(e){4===
e.readyState&&200===e.status?f(JSON.parse(e.responseText).id):4===e.readyState&&lpmakerequesterror("invalidresponse",{url:e.responseURL},!1)},void 0,{"x-csrf-token":k,"Content-Type":"application/json"})})};b.prototype.saveNote=function(c,d,f){f={action:"",aid:"0",basic_auth:"0",captcha_id:"",custom_js:"",extra:"",fields:[],group:"",fiid:"",genpw:!1,individualshare:!1,last_touch:"0",method:"",newvalues:[],realm_data:"",sharedfromuid:"",submit_id:"",urid:"0",fav:"0",username:"",password:"",sn:1,url:"http://sn"};
var h=this.localKey;c.encname=lpmenc(c.name,!0,h);var k="NoteType:"+c.notetype+"\nLanguage:"+(c.language?c.language:"en-US"),e;for(e in c.extra)k+="\n"+e+":"+c.extra[e];c.extra=lpmenc(k,!0,h);for(var g in f)"undefined"===typeof c[g]&&(c[g]=f[g]);c.group&&(c.sharedfolderid=this.getShareId());this.saveSite(c,d)};Object.defineProperty(b.prototype,"linkedEncryptedFormfills",{get:function(){return g_formfills.filter(function(c){return!!c.sharefolderid})},enumerable:!0,configurable:!0});Object.defineProperty(b.prototype,
"encryptedFormfills",{get:function(){return g_formfills.filter(function(c){return!c.sharefolderid})},enumerable:!0,configurable:!0});b.prototype.decryptString=function(c,d){var f=void 0;this.useShareKey&&(f=this.getShareKey());return lpmdec(c,d,f)};b.prototype.saveSite=function(c,d){var f=this,h=this.createPostData(c);saveSite(this.serializePostData(h),c,d,function(){setTimeout(function(){f.saveSite(c,d)},3E4)})};b.prototype.createPostData=function(c){var d={extjs:1,localupdate:1,ajax:1,source:"vault"};
d.aid=c.aid;d.name=lpenc(c.name,this.localKey);d.extra=crypto_btoa(c.extra);c.pwprotect&&(d.pwprotect="on");"1"===c.fav&&(d.fav="on");c.sharedfolderid&&(d.sharedfolderid=c.sharedfolderid,d.grouping="");d.url=AES.url2hex(c.url);d.username="";d.password="";c.template&&(d.template=c.template);d.hexName=AES.url2hex("VID: "+c.aid);d.notetype=c.notetype;return d};b.prototype.serializePostData=function(c){var d=[],f;for(f in c)d.push(encodeURIComponent(f)+"="+encodeURIComponent(c[f]));return d.join("&").replace(/%20/g,
"+")};Object.defineProperty(b.prototype,"localKey",{get:function(){return this.useShareKey?this.getShareKey():g_local_key},enumerable:!0,configurable:!0});b.prototype.getToken=function(c){LP.lpMakeRequestReallyReal(this.apiUrl+"/csrf","",function(d){4===d.readyState&&200===d.status?c(JSON.parse(d.responseText)):4===d.readyState&&lpmakerequesterror("invalidresponse",{url:d.responseURL},!1)})};b.prototype.getShareKey=function(){for(var c=0,d=g_shares;c<d.length;c++){var f=d[c];if("undefined"!==typeof f.associative&&
1==f.associative)return f.key}return""};b.prototype.getShareId=function(){for(var c=0,d=g_shares;c<d.length;c++){var f=d[c];if("undefined"!==typeof f.associative&&1==f.associative)return f.id}return""};return b}(FormfillStore);MigrationBackground=new MigrationBackgroundWeb;FormfillMigrationBackground=new FormfillMigrationBackgroundWeb;Feature=function(){return{isEnabled:function(a,b,c,d){LPServer.lmiapi.jsonRequest({url:"lmiapi/feature-switch/is-enabled/"+a+"/"+b,type:"GET",data:{},success:function(f){c(f.enabled)},error:function(f){"function"===typeof d&&d(f)}})}}}();(function(a){var b={};a.onSettingsIframeClose=function(c,d){d?b[d.tabID]=c:b=c};a.closeSettingsIframe=function(c,d){if(d&&"function"===typeof b[d.tabID])b[d.tabID]();else"function"===typeof b&&b()}})(this);var generateSharingKeysFromVault=function(){function a(c){var d=new RSAKey;generate_key(d,function(f){b(f,c)})}function b(c,d){c||d("RSA generation failed.");g_local_key&&g_local_key&&base_url&&LPServer||d("Global dependencies missing.");var f=null!=document.getElementById("newvault"),h=encode_public_key(c);c=encode_private_key(c);rsa_encrypt_privatekey(c,g_local_key).then(function(k){var e={};e.privatekeyenc=k;e.publickey=h;e.userkeyhexhash=SHA256(AES.bin2hex(g_local_key));e.privatekeyenchexhash=
SHA256(k);e.token=f?decodeURIComponent(g_token):g_token;e.from=f?"webvault":"vault";e.method=get_method();"undefined"!==typeof lpversion&&(e.lpversion=lpversion);LPServer.ajax({type:"POST",url:f?base_url+"uploadrsakeys_website.php":base_url+"uploadrsakeys.php",data:e,success:function(g,m){lp_rsaprivatekeyenchex=k;lp_rsaprivatekeyhex=rsa_extract_privatekey(lp_rsaprivatekeyenchex,g_local_key);d(!1)},error:d})}).catch(d)}return function(c){a(c)}}();var Policies=function(){return{logNameEnabled:function(){return g_loglogins&&4===(g_loglogins&4)},logUserNameEnabled:function(){return g_loglogins&&8===(g_loglogins&8)},logUrlEnabled:function(){return g_loglogins&&2===(g_loglogins&2)},getSaveSiteToPersonal:function(){return reduxApp.getSetting("setDefaultAccountForNewSites")},getAccountSelectionBasedOnEmail:function(a){var b=reduxApp.getSetting("savePersonalSitesToPersonalVault");"function"===typeof a&&a(b);return b},showSecureNotes:function(){return!1!==
reduxApp.getSetting("allowNotes")}}}();var LPTools=LPTools||{};(function(a){a.createUrlPattern=function(c){var d=b.exec(c);if(!d)return null;c=d[1];if(!c)return null;d=d[2];var f="^";c&&("*"===c?f+=".+?":(c.match(/^\*\./)&&(f+="(.+?\\.)?",c=c.substring(2)),f+=c.replace(/\./g,"\\.")));d&&(f+=d.replace(/\*/g,".*?"),f+="/?");return new RegExp(f+"$")};a.allUrls=function(){return/(http|https|file|ftp):\/\/.+/};var b=RegExp("^(\\*|(?:\\*\\.)?(?:[^/*]+))?(/.*)$")})(LPTools);/*
 localForage -- Offline Storage, Improved
    Version 1.7.3
    https://localforage.github.io/localForage
    (c) 2013-2017 Mozilla, Apache License 2.0
*/
(function(a){"object"===typeof exports&&"undefined"!==typeof module?module.exports=a():"function"===typeof define&&define.amd?define([],a):("undefined"!==typeof window?window:"undefined"!==typeof global?global:"undefined"!==typeof self?self:this).localforage=a()})(function(){return function f(b,c,d){function h(g,m){if(!c[g]){if(!b[g]){var p="function"==typeof require&&require;if(!m&&p)return p(g,!0);if(k)return k(g,!0);m=Error("Cannot find module '"+g+"'");throw m.code="MODULE_NOT_FOUND",m;}m=c[g]=
{exports:{}};b[g][0].call(m.exports,function(t){var w=b[g][1][t];return h(w?w:t)},m,m.exports,f,b,c,d)}return c[g].exports}for(var k="function"==typeof require&&require,e=0;e<d.length;e++)h(d[e]);return h}({1:[function(b,c,d){(function(f){function h(){t=!0;for(var r,y,F=w.length;F;){y=w;w=[];for(r=-1;++r<F;)y[r]();F=w.length}t=!1}var k=f.MutationObserver||f.WebKitMutationObserver;if(k){var e=0;k=new k(h);var g=f.document.createTextNode("");k.observe(g,{characterData:!0});var m=function(){g.data=e=
++e%2}}else if(f.setImmediate||"undefined"===typeof f.MessageChannel)m="document"in f&&"onreadystatechange"in f.document.createElement("script")?function(){var r=f.document.createElement("script");r.onreadystatechange=function(){h();r.onreadystatechange=null;r.parentNode.removeChild(r);r=null};f.document.documentElement.appendChild(r)}:function(){setTimeout(h,0)};else{var p=new f.MessageChannel;p.port1.onmessage=h;m=function(){p.port2.postMessage(0)}}var t,w=[];c.exports=function(r){1!==w.push(r)||
t||m()}}).call(this,"undefined"!==typeof global?global:"undefined"!==typeof self?self:"undefined"!==typeof window?window:{})},{}],2:[function(b,c,d){function f(){}function h(D){if("function"!==typeof D)throw new TypeError("resolver must be a function");this.state=F;this.queue=[];this.outcome=void 0;D!==f&&m(this,D)}function k(D,G,E){this.promise=D;"function"===typeof G&&(this.onFulfilled=G,this.callFulfilled=this.otherCallFulfilled);"function"===typeof E&&(this.onRejected=E,this.callRejected=this.otherCallRejected)}
function e(D,G,E){t(function(){try{var Q=G(E)}catch(J){return w.reject(D,J)}Q===D?w.reject(D,new TypeError("Cannot resolve promise with itself")):w.resolve(D,Q)})}function g(D){var G=D&&D.then;if(D&&("object"===typeof D||"function"===typeof D)&&"function"===typeof G)return function(){G.apply(D,arguments)}}function m(D,G){function E(C){J||(J=!0,w.reject(D,C))}function Q(C){J||(J=!0,w.resolve(D,C))}var J=!1,A=p(function(){G(Q,E)});"error"===A.status&&E(A.value)}function p(D,G){var E={};try{E.value=
D(G),E.status="success"}catch(Q){E.status="error",E.value=Q}return E}var t=b(1),w={},r=["REJECTED"],y=["FULFILLED"],F=["PENDING"];c.exports=h;h.prototype["catch"]=function(D){return this.then(null,D)};h.prototype.then=function(D,G){if("function"!==typeof D&&this.state===y||"function"!==typeof G&&this.state===r)return this;var E=new this.constructor(f);this.state!==F?e(E,this.state===y?D:G,this.outcome):this.queue.push(new k(E,D,G));return E};k.prototype.callFulfilled=function(D){w.resolve(this.promise,
D)};k.prototype.otherCallFulfilled=function(D){e(this.promise,this.onFulfilled,D)};k.prototype.callRejected=function(D){w.reject(this.promise,D)};k.prototype.otherCallRejected=function(D){e(this.promise,this.onRejected,D)};w.resolve=function(D,G){var E=p(g,G);if("error"===E.status)return w.reject(D,E.value);if(E=E.value)m(D,E);else{D.state=y;D.outcome=G;E=-1;for(var Q=D.queue.length;++E<Q;)D.queue[E].callFulfilled(G)}return D};w.reject=function(D,G){D.state=r;D.outcome=G;for(var E=-1,Q=D.queue.length;++E<
Q;)D.queue[E].callRejected(G);return D};h.resolve=function(D){return D instanceof this?D:w.resolve(new this(f),D)};h.reject=function(D){var G=new this(f);return w.reject(G,D)};h.all=function(D){function G(R,U){E.resolve(R).then(function(X){A[U]=X;++C!==Q||J||(J=!0,w.resolve(M,A))},function(X){J||(J=!0,w.reject(M,X))})}var E=this;if("[object Array]"!==Object.prototype.toString.call(D))return this.reject(new TypeError("must be an array"));var Q=D.length,J=!1;if(!Q)return this.resolve([]);for(var A=
Array(Q),C=0,P=-1,M=new this(f);++P<Q;)G(D[P],P);return M};h.race=function(D){function G(P){E.resolve(P).then(function(M){J||(J=!0,w.resolve(C,M))},function(M){J||(J=!0,w.reject(C,M))})}var E=this;if("[object Array]"!==Object.prototype.toString.call(D))return this.reject(new TypeError("must be an array"));var Q=D.length,J=!1;if(!Q)return this.resolve([]);for(var A=-1,C=new this(f);++A<Q;)G(D[A]);return C}},{1:1}],3:[function(b,c,d){c="undefined"!==typeof global?global:"undefined"!==typeof self?self:
"undefined"!==typeof window?window:{};"function"!==typeof c.Promise&&(c.Promise=b(2))},{2:2}],4:[function(b,c,d){function f(l,n){l=l||[];n=n||{};try{return new Blob(l,n)}catch(B){if("TypeError"!==B.name)throw B;for(var q=new ("undefined"!==typeof BlobBuilder?BlobBuilder:"undefined"!==typeof MSBlobBuilder?MSBlobBuilder:"undefined"!==typeof MozBlobBuilder?MozBlobBuilder:WebKitBlobBuilder),v=0;v<l.length;v+=1)q.append(l[v]);return q.getBlob(n.type)}}function h(l,n){n&&l.then(function(q){n(null,q)},function(q){n(q)})}
function k(l,n,q){"function"===typeof n&&l.then(n);if("function"===typeof q)l["catch"](q)}function e(l){"string"!==typeof l&&(console.warn(l+" used as a key, but it is not a string."),l=String(l));return l}function g(){if(arguments.length&&"function"===typeof arguments[arguments.length-1])return arguments[arguments.length-1]}function m(l){return(new N(function(n){var q=l.transaction("local-forage-detect-blob-support","readwrite"),v=f([""]);q.objectStore("local-forage-detect-blob-support").put(v,"key");
q.onabort=function(B){B.preventDefault();B.stopPropagation();n(!1)};q.oncomplete=function(){var B=navigator.userAgent.match(/Chrome\/(\d+)/),x=navigator.userAgent.match(/Edge\//);n(x||!B||43<=parseInt(B[1],10))}}))["catch"](function(){return!1})}function p(l){return"boolean"===typeof Y?N.resolve(Y):m(l).then(function(n){return Y=n})}function t(l){l=aa[l.name];var n={};n.promise=new N(function(q,v){n.resolve=q;n.reject=v});l.deferredOperations.push(n);l.dbReady=l.dbReady?l.dbReady.then(function(){return n.promise}):
n.promise}function w(l){if(l=aa[l.name].deferredOperations.pop())return l.resolve(),l.promise}function r(l,n){if(l=aa[l.name].deferredOperations.pop())return l.reject(n),l.promise}function y(l,n){return new N(function(q,v){aa[l.name]=aa[l.name]||A();if(l.db)if(n)t(l),l.db.close();else return q(l.db);var B=[l.name];n&&B.push(l.version);var x=S.open.apply(S,B);n&&(x.onupgradeneeded=function(H){var K=x.result;try{K.createObjectStore(l.storeName),1>=H.oldVersion&&K.createObjectStore("local-forage-detect-blob-support")}catch(I){if("ConstraintError"===
I.name)console.warn('The database "'+l.name+'" has been upgraded from version '+H.oldVersion+" to version "+H.newVersion+', but the storage "'+l.storeName+'" already exists.');else throw I;}});x.onerror=function(H){H.preventDefault();v(x.error)};x.onsuccess=function(){q(x.result);w(l)}})}function F(l,n){if(!l.db)return!0;var q=!l.db.objectStoreNames.contains(l.storeName),v=l.version>l.db.version;l.version<l.db.version&&(l.version!==n&&console.warn('The database "'+l.name+"\" can't be downgraded from version "+
l.db.version+" to version "+l.version+"."),l.version=l.db.version);return v||q?(q&&(n=l.db.version+1,n>l.version&&(l.version=n)),!0):!1}function D(l){return new N(function(n,q){var v=new FileReader;v.onerror=q;v.onloadend=function(B){B=btoa(B.target.result||"");n({__local_forage_encoded_blob:!0,data:B,type:l.type})};v.readAsBinaryString(l)})}function G(l){for(var n=atob(l.data),q=n.length,v=new ArrayBuffer(q),B=new Uint8Array(v),x=0;x<q;x++)B[x]=n.charCodeAt(x);return f([v],{type:l.type})}function E(l){var n=
this,q=n._initReady().then(function(){var v=aa[n._dbInfo.name];if(v&&v.dbReady)return v.dbReady});k(q,l,l);return q}function Q(l){t(l);for(var n=aa[l.name],q=n.forages,v=0;v<q.length;v++){var B=q[v];B._dbInfo.db&&(B._dbInfo.db.close(),B._dbInfo.db=null)}l.db=null;return y(l,!1).then(function(x){l.db=x;return F(l)?y(l,!0):x}).then(function(x){l.db=n.db=x;for(var H=0;H<q.length;H++)q[H]._dbInfo.db=x})["catch"](function(x){r(l,x);throw x;})}function J(l,n,q,v){void 0===v&&(v=1);try{var B=l.db.transaction(l.storeName,
n);q(null,B)}catch(x){if(0<v&&(!l.db||"InvalidStateError"===x.name||"NotFoundError"===x.name))return N.resolve().then(function(){if(!l.db||"NotFoundError"===x.name&&!l.db.objectStoreNames.contains(l.storeName)&&l.version<=l.db.version)return l.db&&(l.version=l.db.version+1),y(l,!0)}).then(function(){return Q(l).then(function(){J(l,n,q,v-1)})})["catch"](q);q(x)}}function A(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function C(l){var n=.75*l.length,q=l.length,v=0;"="===l[l.length-
1]&&(n--,"="===l[l.length-2]&&n--);var B=new ArrayBuffer(n),x=new Uint8Array(B);for(n=0;n<q;n+=4){var H="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(l[n]);var K="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(l[n+1]);var I="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(l[n+2]);var O="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(l[n+3]);x[v++]=H<<2|K>>4;x[v++]=(K&15)<<4|I>>2;x[v++]=(I&
3)<<6|O&63}return B}function P(l){l=new Uint8Array(l);var n="",q;for(q=0;q<l.length;q+=3)n+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[l[q]>>2],n+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(l[q]&3)<<4|l[q+1]>>4],n+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(l[q+1]&15)<<2|l[q+2]>>6],n+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[l[q+2]&63];2===l.length%3?n=n.substring(0,n.length-1)+"=":1===l.length%3&&
(n=n.substring(0,n.length-2)+"==");return n}function M(l,n,q,v){l.executeSql("CREATE TABLE IF NOT EXISTS "+n.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],q,v)}function R(l,n,q,v,B,x){l.executeSql(q,v,B,function(H,K){K.code===K.SYNTAX_ERR?H.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[n.storeName],function(I,O){O.rows.length?x(I,K):M(I,n,function(){I.executeSql(q,v,B,x)},x)},x):x(H,K)},x)}function U(l,n,q,v){var B=this;l=e(l);var x=new N(function(H,K){B.ready().then(function(){void 0===
n&&(n=null);var I=n,O=B._dbInfo;O.serializer.serialize(n,function(V,W){W?K(W):O.db.transaction(function(Z){R(Z,O,"INSERT OR REPLACE INTO "+O.storeName+" (key, value) VALUES (?, ?)",[l,V],function(){H(I)},function(ba,ca){K(ca)})},function(Z){Z.code===Z.QUOTA_ERR&&(0<v?H(U.apply(B,[l,I,q,v-1])):K(Z))})})})["catch"](K)});h(x,q);return x}function X(l){return new N(function(n,q){l.transaction(function(v){v.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",
[],function(B,x){B=[];for(var H=0;H<x.rows.length;H++)B.push(x.rows.item(H).name);n({db:l,storeNames:B})},function(B,x){q(x)})},function(v){q(v)})})}function u(l,n){var q=l.name+"/";l.storeName!==n.storeName&&(q+=l.storeName+"/");return q}function z(l,n){l[n]=function(){var q=arguments;return l.ready().then(function(){return l[n].apply(l,q)})}}function L(){for(var l=1;l<arguments.length;l++){var n=arguments[l];if(n)for(var q in n)n.hasOwnProperty(q)&&(oa(n[q])?arguments[0][q]=n[q].slice():arguments[0][q]=
n[q])}return arguments[0]}var T="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(l){return typeof l}:function(l){return l&&"function"===typeof Symbol&&l.constructor===Symbol&&l!==Symbol.prototype?"symbol":typeof l},S=function(){if("undefined"!==typeof indexedDB)return indexedDB;if("undefined"!==typeof webkitIndexedDB)return webkitIndexedDB;if("undefined"!==typeof mozIndexedDB)return mozIndexedDB;if("undefined"!==typeof OIndexedDB)return OIndexedDB;if("undefined"!==typeof msIndexedDB)return msIndexedDB}();
"undefined"===typeof Promise&&b(3);var N=Promise,Y=void 0,aa={},ha=Object.prototype.toString;b={_driver:"asyncStorage",_initStorage:function(l){function n(){return N.resolve()}var q=this,v={db:null};if(l)for(var B in l)v[B]=l[B];var x=aa[v.name];x||(x=A(),aa[v.name]=x);x.forages.push(q);q._initReady||(q._initReady=q.ready,q.ready=E);l=[];for(B=0;B<x.forages.length;B++){var H=x.forages[B];H!==q&&l.push(H._initReady()["catch"](n))}var K=x.forages.slice(0);return N.all(l).then(function(){v.db=x.db;return y(v,
!1)}).then(function(I){v.db=I;return F(v,q._defaultConfig.version)?y(v,!0):I}).then(function(I){v.db=x.db=I;q._dbInfo=v;for(I=0;I<K.length;I++){var O=K[I];O!==q&&(O._dbInfo.db=v.db,O._dbInfo.version=v.version)}})},_support:function(){try{if(!S)return!1;var l="undefined"!==typeof openDatabase&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),n="function"===typeof fetch&&-1!==fetch.toString().indexOf("[native code");return(!l||
n)&&"undefined"!==typeof indexedDB&&"undefined"!==typeof IDBKeyRange}catch(q){return!1}}(),iterate:function(l,n){var q=this,v=new N(function(B,x){q.ready().then(function(){J(q._dbInfo,"readonly",function(H,K){if(H)return x(H);try{var I=K.objectStore(q._dbInfo.storeName).openCursor(),O=1;I.onsuccess=function(){var V=I.result;if(V){var W=V.value;W&&W.__local_forage_encoded_blob&&(W=G(W));W=l(W,V.key,O++);if(void 0!==W)B(W);else V["continue"]()}else B()};I.onerror=function(){x(I.error)}}catch(V){x(V)}})})["catch"](x)});
h(v,n);return v},getItem:function(l,n){var q=this;l=e(l);var v=new N(function(B,x){q.ready().then(function(){J(q._dbInfo,"readonly",function(H,K){if(H)return x(H);try{var I=K.objectStore(q._dbInfo.storeName).get(l);I.onsuccess=function(){var O=I.result;void 0===O&&(O=null);O&&O.__local_forage_encoded_blob&&(O=G(O));B(O)};I.onerror=function(){x(I.error)}}catch(O){x(O)}})})["catch"](x)});h(v,n);return v},setItem:function(l,n,q){var v=this;l=e(l);var B=new N(function(x,H){var K;v.ready().then(function(){K=
v._dbInfo;return"[object Blob]"===ha.call(n)?p(K.db).then(function(I){return I?n:D(n)}):n}).then(function(I){J(v._dbInfo,"readwrite",function(O,V){if(O)return H(O);try{var W=V.objectStore(v._dbInfo.storeName);null===I&&(I=void 0);var Z=W.put(I,l);V.oncomplete=function(){void 0===I&&(I=null);x(I)};V.onabort=V.onerror=function(){H(Z.error?Z.error:Z.transaction.error)}}catch(ba){H(ba)}})})["catch"](H)});h(B,q);return B},removeItem:function(l,n){var q=this;l=e(l);var v=new N(function(B,x){q.ready().then(function(){J(q._dbInfo,
"readwrite",function(H,K){if(H)return x(H);try{var I=K.objectStore(q._dbInfo.storeName)["delete"](l);K.oncomplete=function(){B()};K.onerror=function(){x(I.error)};K.onabort=function(){x(I.error?I.error:I.transaction.error)}}catch(O){x(O)}})})["catch"](x)});h(v,n);return v},clear:function(l){var n=this,q=new N(function(v,B){n.ready().then(function(){J(n._dbInfo,"readwrite",function(x,H){if(x)return B(x);try{var K=H.objectStore(n._dbInfo.storeName).clear();H.oncomplete=function(){v()};H.onabort=H.onerror=
function(){B(K.error?K.error:K.transaction.error)}}catch(I){B(I)}})})["catch"](B)});h(q,l);return q},length:function(l){var n=this,q=new N(function(v,B){n.ready().then(function(){J(n._dbInfo,"readonly",function(x,H){if(x)return B(x);try{var K=H.objectStore(n._dbInfo.storeName).count();K.onsuccess=function(){v(K.result)};K.onerror=function(){B(K.error)}}catch(I){B(I)}})})["catch"](B)});h(q,l);return q},key:function(l,n){var q=this,v=new N(function(B,x){if(0>l)B(null);else q.ready().then(function(){J(q._dbInfo,
"readonly",function(H,K){if(H)return x(H);try{var I=!1,O=K.objectStore(q._dbInfo.storeName).openCursor();O.onsuccess=function(){var V=O.result;V?0===l?B(V.key):I?B(V.key):(I=!0,V.advance(l)):B(null)};O.onerror=function(){x(O.error)}}catch(V){x(V)}})})["catch"](x)});h(v,n);return v},keys:function(l){var n=this,q=new N(function(v,B){n.ready().then(function(){J(n._dbInfo,"readonly",function(x,H){if(x)return B(x);try{var K=H.objectStore(n._dbInfo.storeName).openCursor(),I=[];K.onsuccess=function(){var O=
K.result;O?(I.push(O.key),O["continue"]()):v(I)};K.onerror=function(){B(K.error)}}catch(O){B(O)}})})["catch"](B)});h(q,l);return q},dropInstance:function(l,n){n=g.apply(this,arguments);var q=this.config();l="function"!==typeof l&&l||{};l.name||(l.name=l.name||q.name,l.storeName=l.storeName||q.storeName);l.name?(q=l.name===q.name&&this._dbInfo.db?N.resolve(this._dbInfo.db):y(l,!1).then(function(v){var B=aa[l.name],x=B.forages;B.db=v;for(B=0;B<x.length;B++)x[B]._dbInfo.db=v;return v}),q=l.storeName?
q.then(function(v){if(v.objectStoreNames.contains(l.storeName)){var B=v.version+1;t(l);var x=aa[l.name],H=x.forages;v.close();for(v=0;v<H.length;v++){var K=H[v];K._dbInfo.db=null;K._dbInfo.version=B}return(new N(function(I,O){var V=S.open(l.name,B);V.onerror=function(W){V.result.close();O(W)};V.onupgradeneeded=function(){V.result.deleteObjectStore(l.storeName)};V.onsuccess=function(){var W=V.result;W.close();I(W)}})).then(function(I){x.db=I;for(var O=0;O<H.length;O++){var V=H[O];V._dbInfo.db=I;w(V._dbInfo)}})["catch"](function(I){(r(l,
I)||N.resolve())["catch"](function(){});throw I;})}}):q.then(function(v){t(l);var B=aa[l.name],x=B.forages;v.close();for(v=0;v<x.length;v++)x[v]._dbInfo.db=null;return(new N(function(H,K){var I=S.deleteDatabase(l.name);I.onerror=I.onblocked=function(O){var V=I.result;V&&V.close();K(O)};I.onsuccess=function(){var O=I.result;O&&O.close();H(O)}})).then(function(H){B.db=H;for(H=0;H<x.length;H++)w(x[H]._dbInfo)})["catch"](function(H){(r(l,H)||N.resolve())["catch"](function(){});throw H;})})):q=N.reject("Invalid arguments");
h(q,n);return q}};var pa=/^~~local_forage_type~([^~]+)~/,qa=Object.prototype.toString,ka={serialize:function(l,n){var q="";l&&(q=qa.call(l));if(l&&("[object ArrayBuffer]"===q||l.buffer&&"[object ArrayBuffer]"===qa.call(l.buffer))){var v="__lfsc__:";if(l instanceof ArrayBuffer){var B=l;v+="arbf"}else B=l.buffer,"[object Int8Array]"===q?v+="si08":"[object Uint8Array]"===q?v+="ui08":"[object Uint8ClampedArray]"===q?v+="uic8":"[object Int16Array]"===q?v+="si16":"[object Uint16Array]"===q?v+="ur16":"[object Int32Array]"===
q?v+="si32":"[object Uint32Array]"===q?v+="ui32":"[object Float32Array]"===q?v+="fl32":"[object Float64Array]"===q?v+="fl64":n(Error("Failed to get type for BinaryArray"));n(v+P(B))}else if("[object Blob]"===q)q=new FileReader,q.onload=function(){var x="~~local_forage_type~"+l.type+"~"+P(this.result);n("__lfsc__:blob"+x)},q.readAsArrayBuffer(l);else try{n(JSON.stringify(l))}catch(x){console.error("Couldn't convert value into a JSON string: ",l),n(null,x)}},deserialize:function(l){if("__lfsc__:"!==
l.substring(0,9))return JSON.parse(l);var n=l.substring(13);l=l.substring(9,13);if("blob"===l&&pa.test(n)){var q=n.match(pa);var v=q[1];n=n.substring(q[0].length)}n=C(n);switch(l){case "arbf":return n;case "blob":return f([n],{type:v});case "si08":return new Int8Array(n);case "ui08":return new Uint8Array(n);case "uic8":return new Uint8ClampedArray(n);case "si16":return new Int16Array(n);case "ur16":return new Uint16Array(n);case "si32":return new Int32Array(n);case "ui32":return new Uint32Array(n);
case "fl32":return new Float32Array(n);case "fl64":return new Float64Array(n);default:throw Error("Unkown type: "+l);}},stringToBuffer:C,bufferToString:P};d={_driver:"webSQLStorage",_initStorage:function(l){var n=this,q={db:null};if(l)for(var v in l)q[v]="string"!==typeof l[v]?l[v].toString():l[v];l=new N(function(B,x){try{q.db=openDatabase(q.name,String(q.version),q.description,q.size)}catch(H){return x(H)}q.db.transaction(function(H){M(H,q,function(){n._dbInfo=q;B()},function(K,I){x(I)})},x)});
q.serializer=ka;return l},_support:"function"===typeof openDatabase,iterate:function(l,n){var q=this,v=new N(function(B,x){q.ready().then(function(){var H=q._dbInfo;H.db.transaction(function(K){R(K,H,"SELECT * FROM "+H.storeName,[],function(I,O){I=O.rows;O=I.length;for(var V=0;V<O;V++){var W=I.item(V),Z=W.value;Z&&=H.serializer.deserialize(Z);Z=l(Z,W.key,V+1);if(void 0!==Z){B(Z);return}}B()},function(I,O){x(O)})})})["catch"](x)});h(v,n);return v},getItem:function(l,n){var q=this;l=e(l);var v=new N(function(B,
x){q.ready().then(function(){var H=q._dbInfo;H.db.transaction(function(K){R(K,H,"SELECT * FROM "+H.storeName+" WHERE key = ? LIMIT 1",[l],function(I,O){(I=O.rows.length?O.rows.item(0).value:null)&&(I=H.serializer.deserialize(I));B(I)},function(I,O){x(O)})})})["catch"](x)});h(v,n);return v},setItem:function(l,n,q){return U.apply(this,[l,n,q,1])},removeItem:function(l,n){var q=this;l=e(l);var v=new N(function(B,x){q.ready().then(function(){var H=q._dbInfo;H.db.transaction(function(K){R(K,H,"DELETE FROM "+
H.storeName+" WHERE key = ?",[l],function(){B()},function(I,O){x(O)})})})["catch"](x)});h(v,n);return v},clear:function(l){var n=this,q=new N(function(v,B){n.ready().then(function(){var x=n._dbInfo;x.db.transaction(function(H){R(H,x,"DELETE FROM "+x.storeName,[],function(){v()},function(K,I){B(I)})})})["catch"](B)});h(q,l);return q},length:function(l){var n=this,q=new N(function(v,B){n.ready().then(function(){var x=n._dbInfo;x.db.transaction(function(H){R(H,x,"SELECT COUNT(key) as c FROM "+x.storeName,
[],function(K,I){K=I.rows.item(0).c;v(K)},function(K,I){B(I)})})})["catch"](B)});h(q,l);return q},key:function(l,n){var q=this,v=new N(function(B,x){q.ready().then(function(){var H=q._dbInfo;H.db.transaction(function(K){R(K,H,"SELECT key FROM "+H.storeName+" WHERE id = ? LIMIT 1",[l+1],function(I,O){I=O.rows.length?O.rows.item(0).key:null;B(I)},function(I,O){x(O)})})})["catch"](x)});h(v,n);return v},keys:function(l){var n=this,q=new N(function(v,B){n.ready().then(function(){var x=n._dbInfo;x.db.transaction(function(H){R(H,
x,"SELECT key FROM "+x.storeName,[],function(K,I){K=[];for(var O=0;O<I.rows.length;O++)K.push(I.rows.item(O).key);v(K)},function(K,I){B(I)})})})["catch"](B)});h(q,l);return q},dropInstance:function(l,n){n=g.apply(this,arguments);var q=this.config();l="function"!==typeof l&&l||{};l.name||(l.name=l.name||q.name,l.storeName=l.storeName||q.storeName);var v=this;var B=l.name?(new N(function(x){var H=l.name===q.name?v._dbInfo.db:openDatabase(l.name,"","",0);l.storeName?x({db:H,storeNames:[l.storeName]}):
x(X(H))})).then(function(x){return new N(function(H,K){x.db.transaction(function(I){function O(ba){return new N(function(ca,la){I.executeSql("DROP TABLE IF EXISTS "+ba,[],function(){ca()},function(ia,ma){la(ma)})})}for(var V=[],W=0,Z=x.storeNames.length;W<Z;W++)V.push(O(x.storeNames[W]));N.all(V).then(function(){H()})["catch"](function(ba){K(ba)})},function(I){K(I)})})}):N.reject("Invalid arguments");h(B,n);return B}};try{var da="undefined"!==typeof localStorage&&"setItem"in localStorage&&!!localStorage.setItem}catch(l){da=
!1}var ta=function(l,n){for(var q=l.length,v=0;v<q;){var B=l[v],x=n;if(B===x||"number"===typeof B&&"number"===typeof x&&isNaN(B)&&isNaN(x))return!0;v++}return!1},oa=Array.isArray||function(l){return"[object Array]"===Object.prototype.toString.call(l)},fa={},ra={},ea={INDEXEDDB:b,WEBSQL:d,LOCALSTORAGE:{_driver:"localStorageWrapper",_initStorage:function(l){var n={};if(l)for(var q in l)n[q]=l[q];n.keyPrefix=u(l,this._defaultConfig);try{localStorage.setItem("_localforage_support_test",!0);localStorage.removeItem("_localforage_support_test");
var v=!1}catch(B){v=!0}if(v&&!(0<localStorage.length))return N.reject();this._dbInfo=n;n.serializer=ka;return N.resolve()},_support:da,iterate:function(l,n){var q=this,v=q.ready().then(function(){for(var B=q._dbInfo,x=B.keyPrefix,H=x.length,K=localStorage.length,I=1,O=0;O<K;O++){var V=localStorage.key(O);if(0===V.indexOf(x)){var W=localStorage.getItem(V);W&&=B.serializer.deserialize(W);W=l(W,V.substring(H),I++);if(void 0!==W)return W}}});h(v,n);return v},getItem:function(l,n){var q=this;l=e(l);var v=
q.ready().then(function(){var B=q._dbInfo,x=localStorage.getItem(B.keyPrefix+l);x&&=B.serializer.deserialize(x);return x});h(v,n);return v},setItem:function(l,n,q){var v=this;l=e(l);var B=v.ready().then(function(){void 0===n&&(n=null);var x=n;return new N(function(H,K){var I=v._dbInfo;I.serializer.serialize(n,function(O,V){if(V)K(V);else try{localStorage.setItem(I.keyPrefix+l,O),H(x)}catch(W){"QuotaExceededError"!==W.name&&"NS_ERROR_DOM_QUOTA_REACHED"!==W.name||K(W),K(W)}})})});h(B,q);return B},removeItem:function(l,
n){var q=this;l=e(l);var v=q.ready().then(function(){localStorage.removeItem(q._dbInfo.keyPrefix+l)});h(v,n);return v},clear:function(l){var n=this,q=n.ready().then(function(){for(var v=n._dbInfo.keyPrefix,B=localStorage.length-1;0<=B;B--){var x=localStorage.key(B);0===x.indexOf(v)&&localStorage.removeItem(x)}});h(q,l);return q},length:function(l){var n=this.keys().then(function(q){return q.length});h(n,l);return n},key:function(l,n){var q=this,v=q.ready().then(function(){var B=q._dbInfo;try{var x=
localStorage.key(l)}catch(H){x=null}x&&=x.substring(B.keyPrefix.length);return x});h(v,n);return v},keys:function(l){var n=this,q=n.ready().then(function(){for(var v=n._dbInfo,B=localStorage.length,x=[],H=0;H<B;H++){var K=localStorage.key(H);0===K.indexOf(v.keyPrefix)&&x.push(K.substring(v.keyPrefix.length))}return x});h(q,l);return q},dropInstance:function(l,n){n=g.apply(this,arguments);l="function"!==typeof l&&l||{};if(!l.name){var q=this.config();l.name=l.name||q.name;l.storeName=l.storeName||
q.storeName}var v=this;q=l.name?(new N(function(B){l.storeName?B(u(l,v._defaultConfig)):B(l.name+"/")})).then(function(B){for(var x=localStorage.length-1;0<=x;x--){var H=localStorage.key(x);0===H.indexOf(B)&&localStorage.removeItem(H)}}):N.reject("Invalid arguments");h(q,n);return q}}};da=[ea.INDEXEDDB._driver,ea.WEBSQL._driver,ea.LOCALSTORAGE._driver];var ja=["dropInstance"],na="clear getItem iterate key keys length removeItem setItem".split(" ").concat(ja),ua={description:"",driver:da.slice(),name:"localforage",
size:4980736,storeName:"keyvaluepairs",version:1};da=new (function(){function l(n){if(!(this instanceof l))throw new TypeError("Cannot call a class as a function");for(var q in ea)if(ea.hasOwnProperty(q)){var v=ea[q],B=v._driver;this[q]=B;fa[B]||this.defineDriver(v)}this._defaultConfig=L({},ua);this._config=L({},this._defaultConfig,n);this._initDriver=this._driverSet=null;this._ready=!1;this._dbInfo=null;this._wrapLibraryMethodsWithReady();this.setDriver(this._config.driver)["catch"](function(){})}
l.prototype.config=function(n){if("object"===("undefined"===typeof n?"undefined":T(n))){if(this._ready)return Error("Can't call config() after localforage has been used.");for(var q in n){"storeName"===q&&(n[q]=n[q].replace(/\W/g,"_"));if("version"===q&&"number"!==typeof n[q])return Error("Database version must be a number.");this._config[q]=n[q]}return"driver"in n&&n.driver?this.setDriver(this._config.driver):!0}return"string"===typeof n?this._config[n]:this._config};l.prototype.defineDriver=function(n,
q,v){var B=new N(function(x,H){try{var K=n._driver,I=Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(n._driver){for(var O=na.concat("_initStorage"),V=0,W=O.length;V<W;V++){var Z=O[V];if((!ta(ja,Z)||n[Z])&&"function"!==typeof n[Z]){H(I);return}}(function(){for(var ba=function(ma){return function(){var sa=N.reject(Error("Method "+ma+" is not implemented by the current driver"));h(sa,arguments[arguments.length-1]);return sa}},ca=0,la=ja.length;ca<la;ca++){var ia=
ja[ca];n[ia]||(n[ia]=ba(ia))}})();I=function(ba){fa[K]&&console.info("Redefining LocalForage driver: "+K);fa[K]=n;ra[K]=ba;x()};"_support"in n?n._support&&"function"===typeof n._support?n._support().then(I,H):I(!!n._support):I(!0)}else H(I)}catch(ba){H(ba)}});k(B,q,v);return B};l.prototype.driver=function(){return this._driver||null};l.prototype.getDriver=function(n,q,v){n=fa[n]?N.resolve(fa[n]):N.reject(Error("Driver not found."));k(n,q,v);return n};l.prototype.getSerializer=function(n){var q=N.resolve(ka);
k(q,n);return q};l.prototype.ready=function(n){var q=this,v=q._driverSet.then(function(){null===q._ready&&(q._ready=q._initDriver());return q._ready});k(v,n,n);return v};l.prototype.setDriver=function(n,q,v){function B(){K._config.driver=K.driver()}function x(O){K._extend(O);B();K._ready=K._initStorage(K._config);return K._ready}function H(O){return function(){function V(){for(;W<O.length;){var Z=O[W];W++;K._dbInfo=null;K._ready=null;return K.getDriver(Z).then(x)["catch"](V)}B();K._driverSet=N.reject(Error("No available storage method found."));
return K._driverSet}var W=0;return V()}}var K=this;oa(n)||(n=[n]);var I=this._getSupportedDrivers(n);this._driverSet=(null!==this._driverSet?this._driverSet["catch"](function(){return N.resolve()}):N.resolve()).then(function(){var O=I[0];K._dbInfo=null;K._ready=null;return K.getDriver(O).then(function(V){K._driver=V._driver;B();K._wrapLibraryMethodsWithReady();K._initDriver=H(I)})})["catch"](function(){B();K._driverSet=N.reject(Error("No available storage method found."));return K._driverSet});k(this._driverSet,
q,v);return this._driverSet};l.prototype.supports=function(n){return!!ra[n]};l.prototype._extend=function(n){L(this,n)};l.prototype._getSupportedDrivers=function(n){for(var q=[],v=0,B=n.length;v<B;v++){var x=n[v];this.supports(x)&&q.push(x)}return q};l.prototype._wrapLibraryMethodsWithReady=function(){for(var n=0,q=na.length;n<q;n++)z(this,na[n])};l.prototype.createInstance=function(n){return new l(n)};return l}());c.exports=da},{3:3}]},{},[4])(4)});var LPPartner=function(){function a(){}a.getPartnerInfo=function(b){var c=null;g_partner_type&&(c=this.partnerInfoAll[g_partner_type.toLowerCase()]);b&&b(c)};a.partnerInfoAll={verizon:{logoUrl:"images/vault_4.0/partner/partner_verizon.svg",logoWhiteUrl:"images/vault_4.0/partner/partner_verizon_white.svg",class:"logo-verizon",classWhite:"logo-verizon-white"},verizoncloud:{logoUrl:"images/vault_4.0/partner/partner_verizon.svg",logoWhiteUrl:"images/vault_4.0/partner/partner_verizon_white.svg",class:"logo-verizon",
classWhite:"logo-verizon-white"},webroot:{logoUrl:"images/vault_4.0/partner/partner_webroot.svg",logoWhiteUrl:"images/vault_4.0/partner/partner_webroot_white.svg",class:"logo-webroot",classWhite:"logo-webroot-white"}};return a}();var GenPassHistory=function(){var a=[];return{add:function(b){a.unshift({password:b,date:new Date(Date.now())});20<a.length&&a.splice(20,a.length-20)},clear:function(){a=[]},getWithDate:function(b){b&&b(a)},getWithReadableDate:function(b){b&&b(a.map(function(c){var d=c.password;c=c.date;"number"===typeof c&&(c=new Date(c));c=c.toLocaleString((g_language||"en-US").replace("_","-"),{year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"2-digit",second:"2-digit"});return{password:d,date:c}}))},
getWithoutDate:function(b){b&&b(a.map(function(c){return c.password}))}}}();var zxcvbnWorker,isContextIsContentScript=-1<location.pathname.indexOf("betterContentScriptPopup.html")||-1<location.pathname.indexOf("backgroundFrame.html");function isFeatureOn(a){return!("undefined"===typeof reduxApp||"function"!==typeof reduxApp.getState||!reduxApp.getState().settings.features||!reduxApp.getState().settings.features[a])}var passwordStrengthWorkerHandlerFunctions=[],passwordStrengthCallbackMap=new Map;
function appendPasswordStrengthWorkerOnMessageHandler(a){passwordStrengthWorkerHandlerFunctions.push(a)}function passwordStrengthWorkerOnMessageHandler(a){for(var b=0;b<passwordStrengthWorkerHandlerFunctions.length;b++)if("function"===typeof passwordStrengthWorkerHandlerFunctions[b])passwordStrengthWorkerHandlerFunctions[b](a)}
if(window.Worker&&!isContextIsContentScript){var EXTENSION_PATH="/background.html",SPA_PATH="/vault/background-spa",isExtension=-1!==location.pathname.indexOf(EXTENSION_PATH),isSPA=-1!==location.pathname.indexOf(SPA_PATH);if(isExtension){var baseUrl=location.pathname.slice(0,location.pathname.indexOf(EXTENSION_PATH));zxcvbnWorker=new Worker(baseUrl+"/newvault/zxcvbn-worker.js")}else if(isSPA)zxcvbnWorker=new Worker("/vault/newvault/zxcvbn-worker.js");else{var version="undefined"!==typeof filemtimes?
encodeURIComponent(filemtimes["zxcvbn-worker.js"]):"";zxcvbnWorker=new Worker("/m.php/newvault_zxcvbn-worker_js?"+version)}zxcvbnWorker.onerror=function(a){console.error("Error received from zxcvbn-worker: ",a)};var zxcvbnWorkerMessageHandler=function(a){a.data.cmd&&"report"===a.data.cmd?(g_totalscore=a.data.g_totalscore,g_numsites=a.data.g_numsites,g_numblanksites=a.data.g_numblanksites,g_avgpasswordlength=a.data.g_avgpasswordlength,g_avgstrength=a.data.g_avgstrength,g_aPasswords=a.data.g_aPasswords,
g_MAXNUMCOMPUTESCORE=a.data.g_MAXNUMCOMPUTESCORE,g_numduppasswords=a.data.g_numduppasswords,g_numdupsites=a.data.g_numdupsites,g_usernames=a.data.g_usernames,g_strengthscore=a.data.g_strengthscore,g_countscore=a.data.g_countscore,g_numweak=a.data.g_numweak,sharedavgstrength=a.data.sharedavgstrength,SharedAccounts=a.data.SharedAccounts,g_runtimems=a.data.g_runtimems,sfcounts=a.data.sfcounts,sharedstrengthscore=a.data.sharedstrengthscore,sharedblanksites=a.data.sharedblanksites,sharedweak=a.data.sharedweak,
sharedavgpasswordlength=a.data.sharedavgpasswordlength,SharedPasswords=a.data.SharedPasswords,sharedcountscore=a.data.sharedcountscore,NonSharedAccounts=a.data.NonSharedAccounts,g_SFNames=a.data.g_SFNames,AllSFNames=a.data.AllSFNames,sharedtotalscore=a.data.sharedtotalscore,g_numvulnerablesites=a.data.g_numvulnerablesites,g_allPasswords=a.data.g_allPasswords,g_reuse=a.data.g_reuse,g_blanksites=a.data.g_blanksites,g_allnumduppasswords=a.data.g_allnumduppasswords,"undefined"===typeof reduxApp||"function"!==
typeof reduxApp.saveChallengeResults||"undefined"===typeof zxcvbnts&&"undefined"===typeof zxcvbn||reduxApp.saveChallengeResults(a.data.g_totalscore,a.data.g_aSites),"function"==typeof computescorecallback_extensions&&computescorecallback_extensions(a.data)):a.data.cmd&&"compute_password_strength_result"===a.data.cmd&&"undefined"!==typeof reduxApp&&"function"===typeof reduxApp.savePasswordStrengthResults&&reduxApp.savePasswordStrengthResults({password:a.data.password,result:a.data.result})};appendPasswordStrengthWorkerOnMessageHandler(zxcvbnWorkerMessageHandler);
appendPasswordStrengthWorkerOnMessageHandler(function(a){a.data.cmd&&"compute_password_strength_result"===a.data.cmd&&passwordStrengthCallbackMap.has(a.data.password)&&"function"===typeof passwordStrengthCallbackMap.get(a.data.password)&&(passwordStrengthCallbackMap.get(a.data.password)(a.data.result),passwordStrengthCallbackMap.delete(a.data.password))});zxcvbnWorker.onmessage=passwordStrengthWorkerOnMessageHandler}
var WEAKPASSWORDSCORE=50,sfcounts=[],AIDtoSFNames=[],challengeRunning=!1,sharedstrengthscore=[],sharedblanksites=[],g_allnumdupsites=0,g_allnumduppasswords=0,g_numdictionarypart=0,g_challengeregexcache=[];function calculateStrength(a,b,c,d){var f=lp_sha2lib.sha256(a);passwordStrengthCallbackMap.set(f,d);zxcvbnWorker.postMessage({cmd:"compute_password_strength",password:a,username:b,useLevenshteinDistance:c})}function challengegetstrength(a,b,c){calculateStrength(b,a,!0,c)}
var g_usernames=[],g_mpw_duplicates,g_MAXNUMCOMPUTESCORE=0;
function challengecomputescore(a){var b=[],c=[],d=!1;isFeatureOn("exclude_password")&&(d=!0,b=reduxApp.getState().user.passwordListForPasswordExclude,c=reduxApp.getState().user.domainsForAutomaticPasswordExclude);a={source:"zxcvbn",cmd:"challengecomputescore_async",curr:a,g_totalscore,g_sites:JSON.stringify("undefined"!==typeof g_sites?JSON.stringify(g_sites):{}),g_aSites:"undefined"!==typeof g_aSites?g_aSites:[],g_numsites:"undefined"!==typeof g_numsites?g_numsites:0,g_numblanksites:"undefined"!==
typeof g_numblanksites?g_numblanksites:0,g_avgpasswordlength:"undefined"!==typeof g_avgpasswordlength?g_avgpasswordlength:0,g_aPasswords:"undefined"!==typeof g_aPasswords?g_aPasswords:{},g_MAXNUMCOMPUTESCORE:"undefined"!==typeof g_MAXNUMCOMPUTESCORE?g_MAXNUMCOMPUTESCORE:0,g_numduppasswords:"undefined"!==typeof g_numduppasswords?g_numduppasswords:0,g_numdupsites:"undefined"!==typeof g_numdupsites?g_numdupsites:0,g_usernames:"undefined"!==typeof g_usernames?g_usernames:[],WEAKPASSWORDSCORE:"undefined"!==
typeof WEAKPASSWORDSCORE?WEAKPASSWORDSCORE:50,g_strengthscore:"undefined"!==typeof g_strengthscore?g_strengthscore:0,g_countscore:"undefined"!==typeof g_countscore?g_countscore:0,g_numweak:"undefined"!==typeof g_numweak?g_numweak:0,sharedavgstrength:"undefined"!==typeof sharedavgstrength?sharedavgstrength:[],SharedAccounts:"undefined"!==typeof SharedAccounts?SharedAccounts:[],g_runtimems:"undefined"!==typeof g_runtimems?g_runtimems:0,sfcounts:"undefined"!==typeof sfcounts?sfcounts:[],sharedstrengthscore:"undefined"!==
typeof sharedstrengthscore?sharedstrengthscore:[],sharedblanksites:"undefined"!==typeof sharedblanksites?sharedblanksites:[],sharedweak:"undefined"!==typeof sharedweak?sharedweak:[],sharedavgpasswordlength:"undefined"!==typeof sharedavgpasswordlength?sharedavgpasswordlength:[],SharedPasswords:"undefined"!==typeof SharedPasswords?SharedPasswords:[],sharedcountscore:"undefined"!==typeof sharedcountscore?sharedcountscore:[],NonSharedAccounts:"undefined"!==typeof NonSharedAccounts?NonSharedAccounts:[],
g_SFNames:"undefined"!==typeof g_SFNames?g_SFNames:[],AllSFNames:"undefined"!==typeof AllSFNames?AllSFNames:[],sharedtotalscore:"undefined"!==typeof sharedtotalscore?sharedtotalscore:[],g_numvulnerablesites:"undefined"!==typeof g_numvulnerablesites?g_numvulnerablesites:0,g_allPasswords:"undefined"!==typeof g_allPasswords?g_allPasswords:{},g_reuse:"undefined"!==typeof g_reuse?g_reuse:void 0,g_blanksites:"undefined"!==typeof g_blanksites?g_blanksites:void 0,g_allnumduppasswords:"undefined"!==typeof g_allnumduppasswords?
g_allnumduppasswords:0,equivalentDomainCheckList:{},isExcludeSwitchedOn:d,excludedPasswords:b,domainsForAutomaticPasswordExclude:c,dwmAlerts:[],SFNameToID:SFNameToID?SFNameToID:[],AIDtoSFNames:AIDtoSFNames?AIDtoSFNames:[],AllSFIDs:AllSFIDs?AllSFIDs:[],g_myaccounts:g_myaccounts?g_myaccounts:[],g_avgstrength:g_avgstrength?g_avgstrength:0};!isContextIsContentScript&&zxcvbnWorker.postMessage(a)}
(function(){var a={},b=function(d,f){d=d+"-"+f;f=a[d];"undefined"===typeof f&&(f=a[d]=[]);return f};writeCachedScore=function(d,f,h,k,e){"undefined"==typeof k&&(k="");"undefined"==typeof e&&(e="");for(var g=b(d,f),m=0,p=g.length;m<p;++m)g[m](h);a={};WriteFileGeneric(d+".sch",f+"\n"+h+"\n"+k+"\n"+e)};var c=function(d,f){var h=null;d&&(d=d.split("\n"),f==d[0]&&(h="NaN"!=d[1]?d[1]:null));return h};getCachedScore=function(d,f,h,k){if(h)ReadFileGeneric(d+".sch",null,function(e){e=c(e,f);null===e&&k?b(d,
f).push(h):h(e)});else return c(ReadFileGeneric(d+".sch"),f)}})();function getWeakAndDuplicateIds(a,b,c){var d=function(f){if(f&&(f=f.split("\n"),4==f.length&&lpdec(f[2])==b)){f=lpdec(f[3]).split("\n");if(c){c(f);return}return f}if(c)c(["",""]);else return["",""]};if(c)ReadFileGeneric(a+".sch",null,d);else return d(ReadFileGeneric(a+".sch"))}function isWeakPasswordZXCVBN(a,b,c){calculateStrength(a,b,!1,function(d){d<WEAKPASSWORDSCORE&&c()})}
function isDuplicateSite(a,b){return"undefined"!==typeof reduxApp&&reduxApp.getState().securityDashboard.passwordSecurityResults&&reduxApp.getState().securityDashboard.passwordSecurityResults[b]&&reduxApp.getState().securityDashboard.passwordSecurityResults[b].risk&&-1!==reduxApp.getState().securityDashboard.passwordSecurityResults[b].risk.indexOf(5)}function calculateMasterStrength(a,b){challengegetstrength(a,b,function(c){lpmpstrength=c})}
function lpdbgchallenge(a){"undefined"!=typeof ischrome&&ischrome?console.log("challenge:"+a):"undefined"!=typeof LP&&"undefined"!=typeof LP.lpMakeRequest&&lpdbg("challenge",a)}
function runChallenge(a){var b="string"==typeof g_username_hash?g_username_hash:"undefined"!=typeof lpusername_hash?lpusername_hash:null,c=reduxApp.getState().vault.vaultVersions?.userVault?.version??-1;null==b?lpdbgchallenge("returning cuz username_hash==null"):getCachedScore(b,c,function(d){null!==d&&"undefined"!==typeof reduxApp&&"function"===typeof reduxApp.getChallengeResults&&reduxApp.getChallengeResults();runChallenge2(a,d)})}
function runChallenge2(a,b){null==b||a?1==challengeRunning?lpdbgchallenge("returning cuz already running"):(lpdbgchallenge("setting challengeRunning=1"),challengeRunning=!0,runChallenge3(a,b)):lpdbgchallenge("returning cuz cached")}
function runChallenge3(a,b){lpdbgchallenge("runChallenge3 : alwaysrun="+a);lpdbgchallenge("runChallenge3 : setup");g_SFNames=[];SharedAccounts=[];AIDtoSFNames=[];NonSharedAccounts=[];g_aSites=[];g_myaccounts=[];g_runtimems=(new Date).getTime();g_shared_accounts=0;sfcounts=[];folderscores=[];sharedblanksites=[];sharedavgpasswordlength=[];SharedPasswords=[];sharedweak=[];sharedstrengthscore=[];sharedavgstrength=[];sharedcountscore=[];sharedtotalscore=[];SFNameToID=[];AllSFIDs=[];AllSFNames=[];a="undefined"!=
typeof g_sites?g_sites:lpaccts;b="undefined"!=typeof g_shares?g_shares:lpshares;var c=reduxApp.legacyGlobals.equivalentDomains(),d;for(d in a)if(a.hasOwnProperty(d))if("http://group"==a[d].url)a[d].aid==a[d].sharefolderid&&(AllSFIDs[AllSFIDs.length]=d,AllSFNames[AllSFNames.length]=a[d].group,SFNameToID[a[d].group]=d);else if("http://sn"!=a[d].url){var f="",h=issharedfolder(b,a[d].group),k=null!=a[d].sharedfromaid&&""!=a[d].sharedfromaid&&"0"!=a[d].sharedfromaid,e="0";if(h||!k)h&&"0"==h.give||(h&&
(getsharedata=issharedfolder(b,a[d].group),f=getsharedata.decsharename,e=getsharedata.associative,"undefined"==typeof SharedAccounts[f]&&(g_SFNames[g_SFNames.length]=f,SharedAccounts[f]=[],SFNameToID[f]=a[d].sharefolderid),SharedAccounts[f][SharedAccounts[f].length]=d,AIDtoSFNames[d]=f,g_shared_accounts++),h||(NonSharedAccounts[NonSharedAccounts.length]=d),k={},k.id=d,k.usernamedec=getusernamefromacct(a[d]),k.passworddec=getpasswordfromacct(a[d]),k.passworddecfix=fix_username(k.passworddec),k.domain2lvl=
k.realdomain2lvl=lp_gettld_url(a[d].url),k.genpw="undefined"!=typeof a[d].genpw&&1==a[d].genpw?1:0,k.link=e,"undefined"!=typeof a[d].vulnerable&&""!=a[d].vulnerable&&(lpdbgchallenge("challengecleanupgenpw: site i="+d+" is vulnerable"),k.vulnerable=JSON.parse(a[d].vulnerable)),h&&(k.sfname=f),"undefined"!=typeof c[k.domain2lvl]&&(f=c[k.domain2lvl],"undefined"!=typeof c[f]&&(k.domain2lvl=c[f][0])),g_aSites[g_aSites.length]=k,"undefined"==typeof k.sfname&&(g_myaccounts[g_myaccounts.length]=k.id))}g_numsites=
g_aSites.length;g_numSharedFolders=g_SFNames.length;g_ind_accounts=NonSharedAccounts.length;g_avgpasswordlength=g_numblanksites=g_numvulnerablesites=g_numduppasswords=g_allnumduppasswords=g_numdupsites=g_allnumdupsites=g_numweak=g_strengthscore=g_avgstrength=g_countscore=g_totalscore=g_runtimems=g_numdictionarypart=0;g_aPasswords={};g_allPasswords={};sharedpasswords=[];g_unshared_usernames=[];lpdbgchallenge("runChallenge3 : g_numsites="+g_numsites+" g_numSharedFolders="+g_numSharedFolders);challengecleanupgenpw()}
var ComputeChallengeErrorHandler=function(){return function(){var a=0,b=function(c){try{return{g_totalscore:"undefined"!==typeof c.g_totalscore?"available":void 0,g_sites:"undefined"!==typeof c.g_sites?"available":void 0,g_aSites:"undefined"!==typeof c.g_aSites?"available":void 0,g_numsites:"undefined"!==typeof c.g_numsites?"available":void 0,g_numblanksites:"undefined"!==typeof c.g_numblanksites?"available":void 0,g_avgpasswordlength:"undefined"!==typeof c.g_avgpasswordlength?"available":void 0,
g_aPasswords:"undefined"!==typeof c.g_aPasswords?"available":void 0,g_MAXNUMCOMPUTESCORE:"undefined"!==typeof c.g_MAXNUMCOMPUTESCORE?"available":void 0,g_numduppasswords:"undefined"!==typeof c.g_numduppasswords?"available":void 0,g_numdupsites:"undefined"!==typeof c.g_numdupsites?"available":void 0,g_usernames:"undefined"!==typeof c.g_usernames?"available":void 0,WEAKPASSWORDSCORE:"undefined"!==typeof c.WEAKPASSWORDSCORE?"available":void 0,g_strengthscore:"undefined"!==typeof c.g_strengthscore?"available":
void 0,g_countscore:"undefined"!==typeof c.g_countscore?"available":void 0,g_numweak:"undefined"!==typeof c.g_numweak?"available":void 0,sharedavgstrength:"undefined"!==typeof c.sharedavgstrength?"available":void 0,SharedAccounts:"undefined"!==typeof c.SharedAccounts?"available":void 0,g_runtimems:"undefined"!==typeof c.g_runtimems?"available":void 0,sfcounts:"undefined"!==typeof c.sfcounts?sfcounts:void 0,sharedstrengthscore:"undefined"!==typeof c.sharedstrengthscore?"available":void 0,sharedblanksites:"undefined"!==
typeof c.sharedblanksites?"available":void 0,sharedweak:"undefined"!==typeof c.sharedweak?sharedweak:void 0,sharedavgpasswordlength:"undefined"!==typeof c.sharedavgpasswordlength?"available":void 0,SharedPasswords:"undefined"!==typeof c.SharedPasswords?"available":void 0,sharedcountscore:"undefined"!==typeof c.sharedcountscore?"available":void 0,NonSharedAccounts:"undefined"!==typeof c.NonSharedAccounts?"available":void 0,g_SFNames:"undefined"!==typeof c.g_SFNames?"available":void 0,AllSFNames:"undefined"!==
typeof c.AllSFNames?"available":void 0,sharedtotalscore:"undefined"!==typeof c.sharedtotalscore?"available":void 0,g_numvulnerablesites:"undefined"!==typeof c.g_numvulnerablesites?"available":void 0,g_allPasswords:"undefined"!==typeof c.g_allPasswords?"available":void 0,g_reuse:"undefined"!==typeof c.g_reuse?"available":void 0,g_blanksites:"undefined"!==typeof c.g_blanksites?"available":void 0,g_allnumduppasswords:"undefined"!==typeof c.g_allnumduppasswords?"available":void 0,reduxApp:"undefined"!==
typeof c.reduxApp?"available":void 0}}catch(d){return"Error! Can not get global variables in context! Stack: "+d}};return{getStackTrace:function(){try{var c;window.opr&&opr.addons||window.opera||0<=navigator.userAgent.indexOf(" OPR/")?c="opera":"undefined"!==typeof InstallTrigger?c="firefox":/constructor/i.test(window.HTMLElement)||"[object SafariRemoteNotification]"===(!window.safari||"undefined"!==typeof safari&&window.safari.pushNotification).toString()?c="safari":document.documentMode?c="ie":
!document.documentMode&&window.StyleMedia?c="edge":window.chrome&&(window.chrome.webstore||window.chrome.runtime)&&-1!=navigator.userAgent.indexOf("Edg")?c="chromium edge":window.chrome&&(window.chrome.webstore||window.chrome.runtime)&&(c="chrome");var d={browserType:c,browserVersion:window.navigator.userAgent},f={url:window.location.href,necessaryVariables:b(window)};try{var h={url:window.top.location.href,necessaryVariables:b(window.top)}}catch(e){h="Error! Can not reach top context! Stack: "+e}var k=
{common:d,context:f,topContext:h}}catch(e){}return k},reportError:function(c){a++;logger.error("error: website('4.0') errors({errorcount}): Compute challenge exception! Details: {exception}",{error:"website('4.0')",errorCount:a,exception:JSON.stringify(c)})}}}()}();
function computescorecallback_extensions(a){function b(e){var g=JSON.stringify(e);LPServer.lmiapi.jsonRequest({url:"lmiapi/users/me/security/score",data:{security_score:g},success:function(m){"undefined"!==typeof reduxApp&&"function"===typeof reduxApp.saveChallengeResults&&(reduxApp.saveChallengeResults((e.totalscore||0)+m.backendCalculatedScore,a.g_aSites),"undefined"!==typeof g_badgedata&&null!==g_badgedata&&g_badgedata.alerttype&&"securityScore"===g_badgedata.alerttype&&"undefined"!==typeof LP&&
LP.LPPlatform.getBackgroundInterface()&&LP.LPPlatform.getBackgroundInterface().setSecurityScoreAlertBadge())},error:function(m){logReportSecurityScoreError(m);k(e)}})}if("undefined"===typeof a.g_totalscore||"undefined"===typeof reduxApp)ComputeChallengeErrorHandler.reportError(ComputeChallengeErrorHandler.getStackTrace());else{var c="string"==typeof g_username?g_username:"undefined"!=typeof lpusername?lpusername:null,d="string"==typeof g_username_hash?g_username_hash:"undefined"!=typeof lpusername_hash?
lpusername_hash:null,f=reduxApp.getState().vault.vaultVersions?.userVault?.version??-1;lpdbgchallenge("Found numvulnerablesites="+g_numvulnerablesites);var h=JSON.parse(JSON.stringify(a.report));h.version=f;var k=function(e){"undefined"!==typeof reduxApp&&"function"===typeof reduxApp.getState&&reduxApp.getState().securityDashboard.multifactorScore&&(reduxApp.saveChallengeResults(e.totalscore+reduxApp.getState().securityDashboard.multifactorScore,a.g_aSites),"undefined"!==typeof g_badgedata&&null!==
g_badgedata&&g_badgedata.alerttype&&"securityScore"===g_badgedata.alerttype&&"undefined"!==typeof LP&&LP.LPPlatform.getBackgroundInterface()&&LP.LPPlatform.getBackgroundInterface().setSecurityScoreAlertBadge())};writeCachedScore(d,f,a.g_totalscore,lpenc(c),lpenc(",\n,"+a.weak));c=!1;switch("undefined"!==reduxApp&&"function"===typeof reduxApp.getState?reduxApp.getState().user.type:null){case "Enterprise":case "Enterprise_Trial":case "Teams":case "Teams_Trial":c="undefined"!==typeof sendchallengescore&&
sendchallengescore||reduxApp.getState().securityDashboard.sendChallengeScore;break;case "Premium_Trial":case "Premium":case "Family_Trial":case "Family":c=reduxApp.getState().settings.features.send_security_score}h=JSON.parse(JSON.stringify(h));if(c)try{b(h)}catch(e){logReportSecurityScoreError(e)}else k(h);g_aSites=[];g_aPasswords={};g_allPasswords={};g_avgpasswordlength=g_numblanksites=g_numvulnerablesites=g_numduppasswords=g_allnumduppasswords=g_numdupsites=g_allnumdupsites=g_numweak=g_strengthscore=
g_avgstrength=g_countscore=g_totalscore=g_runtimems=g_numdictionarypart=0;challengeRunning=!1}}
function challengecleanupgenpw(){try{lpdbgchallenge("challengecleanupgenpw: called g_numsites="+g_numsites);var a=0,b=0,c={},d={},f={};for(i=0;i<g_numsites;++i){var h=g_aSites[i],k="undefined"!=typeof h.sfname?!0:!1;f[h.id]=h.domain2lvl;var e=h.passworddec;if("undefined"!=typeof h.genpw&&1==h.genpw&&!k)++a,c[h.id]=e;else if("undefined"==typeof h.genpw||0==h.genpw)++b,"undefined"==typeof d[e]&&(d[e]=[]),d[e].push(h.id);e="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}lpdbgchallenge("challengecleanupgenpw : g_numsites="+
g_numsites+" numgenpw="+a+" numnongenpw="+b);a="";for(var g in c){e=c[g];if("undefined"!=typeof d[e]){h=!1;k="";for(var m in d[e]){var p=d[e][m];f[g].toLowerCase()==f[p].toLowerCase()&&(h=!0,k+=(""==k?"":",")+p)}h&&(lpdbgchallenge("challengecleanupgenpw : Deleting genpw id="+g+" domain="+f[g].toLowerCase()+" password=REDACTED since the following non-generated-password-sites have identical passwords and 2nd level domains: "+k),a+=(""==a?"":",")+g)}e="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}try{m=
null;for(m in c)c[m]="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";for(m in d)delete d[m];m="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
d={};for(m=0;m<b+10;++m)d["xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"+m]="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}catch(t){lpdbgchallenge("challengecleanupgenpw : Exception occurred while cleaning memory")}if(""==
a){lpdbgchallenge("challengecleanupgenpw : Not calling server to delete genpws since none to delete");deletegenpwsdone();return}deletegenpws(a);return}catch(t){lpdbgchallenge("challengecleanupgenpw : EXCEPTION")}deletegenpwsdone()}
function deletegenpws(a){lpdbgchallenge("deletegenpws called");if("undefined"!=typeof ischrome&&ischrome||"undefined"!=typeof LP&&"undefined"!=typeof LP.lpMakeRequest){var b=LP.lp_base+"misc_challenge.php?lpnorefresh=1";lpdbgchallenge("deletegenpws using URL="+b);lpdbgchallenge("deletegenpws passing delids="+a);a="cmd=deletegenpws&format=xml&ids="+LP.en(a);LP.lpMakeRequest(b,a,function(c,d){if(4==c.readyState){if(200==c.status&&null!=c.responseXML&&null!=c.responseXML.documentElement&&(d=c.responseXML.documentElement.getElementsByTagName("ok"),
0<d.length&&(d=d[0].getAttribute("deletedids"),null!=d&&""!=d))){lpdbgchallenge("server returned success deletedids="+d);c={};d=d.split(":");for(i=0;i<d.length;++i)c[d[i]]=1;deletegenpwsack(c);return}lpdbgchallenge("server returned error. responsetxt="+c.responseText);deletegenpwsdone()}})}else"undefined"!=typeof $&&"undefined"!=typeof $.ajax&&"undefined"!=typeof g_token?(a={cmd:"deletegenpws",ids:a,token:g_token},$.ajax({global:!1,type:"POST",cache:!1,dataType:"json",url:"misc_challenge.php?lpnorefresh=1",
data:a,success:function(c){1!=c.success?challengeerror(c):deletegenpwsack(c.deletedids)},error:challengeerror})):(lpdbgchallenge("deletegenpws failed"),deletegenpwsdone())}function deletegenpwsack(a){lpdbgchallenge("deletegenpwsack called");var b=[];for(i=0;i<g_numsites;++i){var c=g_aSites[i].id;"undefined"==typeof a[c]?b[b.length]=g_aSites[i]:lpdbgchallenge("deleted site="+c)}g_aSites=b;g_numsites=g_aSites.length;deletegenpwsdone()}
function deletegenpwsdone(){lpdbgchallenge("deletegenpwsdone called");challengecomputescore()}function get_securityChallengeScore(a){var b="string"==typeof g_username_hash?g_username_hash:"undefined"!=typeof lpusername_hash?lpusername_hash:null,c=reduxApp.getState().vault.vaultVersions?.userVault?.version??-1;if(a)getCachedScore(b,c,a,!0);else return getCachedScore(b,c)}
function logReportSecurityScoreError(a){console.error("There was an error at security score calculation result report attempt: ",a)};function TrieNode(){this.value=null;this.children={}}function Trie(a){this.root=new TrieNode;this.__search=function(b){var c=this.root,d=null,f;for(f=0;f<b.length;f++){c.value&&(d=c.value);var h=b.charAt(f);if(!(h in c.children))return[c,b.substring(0,f),d];c=c.children[h]}c.value&&(d=c.value);return[c,b,d]}}Trie.prototype.search=function(a){return this.__search(a)[2]};
Trie.prototype.insert=function(a){var b=this.__search(a);var c=b[0];if(c.value!==a){for(b=b[1].length;b<a.length;b++){var d=new TrieNode;c=c.children[a.charAt(b)]=d}c.value=a}};Trie.prototype.insertlist=function(a){var b;for(b=0;b<a.length;b++)this.insert(a[b])};var proxyLegacyGlobals=function(){return function(){if("undefined"!==typeof Proxy&&reduxApp){var a=reduxApp.createLegacyProxies();g_sites=a.sites();g_securenotes=a.secureNotes();g_applications=a.applications();g_identities=a.identities();g_shares=a.shares();g_pending_shares=a.pendingShares();g_prompts=a.prompts();g_emer_sharers=a.emergencyAccessSharers();g_emer_sharees=a.emergencyAccessSharees();g_pendings=a.pendingReceivedShares()}}}();var lp_sha2lib=SHA256lib();function SHA256(a,b){return lp_sha2lib.sha256(a,b)}function SHA256_crypt(a){var b=rand_str(16);return lp_sha2lib.crypt_sha256(a,b,5E3,null)}function ab2bin(a){for(var b=new Uint8Array(a),c="",d=0;d<Math.ceil(a.byteLength/1024);d++)c+=String.fromCharCode.apply(null,b.slice(1024*d,1024*(d+1)));return c}function bin2ab(a){for(var b=new ArrayBuffer(a.length),c=new Uint8Array(b),d=0;d<a.length;++d)c[d]=a.charCodeAt(d);return b}
function lp_pbkdf2_sync(a,b,c,d,f){if("undefined"!=typeof document&&document.getElementById("lpplugin")&&"function"==typeof document.getElementById("lpplugin").pbkdf2){var h=document.getElementById("lpplugin").pbkdf2(btoa(a),btoa(b),c,d);"function"==typeof f&&f(AES.hex2bin(h),a,c);return h}if("undefined"!=typeof g_oldpbkdf2&&1==g_oldpbkdf2||"function"!=typeof lpusexpcomencrypt||!lpusexpcomencrypt()||"function"!=typeof lpxpcomobj.pbkdf2){if("undefined"!=typeof g_oldpbkdf2&&1==g_oldpbkdf2||"function"!=
typeof lpuseopensslpbkdf2||!lpuseopensslpbkdf2()||"function"!=typeof lpopensslpbkdf2){if("undefined"!=typeof g_oldpbkdf2&&1==g_oldpbkdf2||"function"!=typeof have_pplastpass||!have_pplastpass()||"function"!=typeof f){if("undefined"!=typeof lptoolband&&"undefined"!=typeof lptoolbandcall){h=lptoolbandcall(["lppbkdf2",btoa(a),btoa(b),parseInt(c),d]);if("string"!=typeof h||0==h.length)return lp_sha2lib.pbkdf2(a,b,c,d,f);"function"==typeof f&&f(AES.hex2bin(h),a,c);return h}return lp_sha2lib.pbkdf2(a,b,
c,d,f)}return pplastpass_send_message({cmd:"pbkdf2",password:btoa(a),salt:btoa(b),num_iterations:parseInt(c),num_bytes:d},function(k){f(AES.hex2bin(k),a,c)})}h=lpopensslpbkdf2(a,b,c,d);"function"==typeof f&&f(AES.hex2bin(h),a,c);return h}h=lpxpcomobj.pbkdf2(btoa(a),btoa(b),c,d);"function"==typeof f&&f(AES.hex2bin(h),a,c);return h}
function lp_pbkdf2(a,b,c,d,f){if(f&&"undefined"!==typeof crypto&&crypto.subtle&&crypto.subtle.importKey&&crypto.subtle.deriveKey&&crypto.subtle.exportKey)crypto.subtle.importKey("raw",bin2ab(a),{name:"PBKDF2"},!1,["deriveBits","deriveKey"]).then(function(h){return crypto.subtle.deriveKey({name:"PBKDF2",salt:bin2ab(b),iterations:parseInt(c,10),hash:"SHA-256"},h,{name:"AES-CBC",length:256},!0,["encrypt","decrypt"])}).then(function(h){return crypto.subtle.exportKey("raw",h)}).then(function(h){f(ab2bin(h),
a,c)}).catch(function(){lp_pbkdf2_sync(a,b,c,d,f)});else return lp_pbkdf2_sync(a,b,c,d,f)}
function SHA256lib(){function a(c){null==c&&(c="");c=c.replace(/\r\n/g,"\n");for(var d="",f=0;f<c.length;f++){var h=c.charCodeAt(f);128>h?d+=String.fromCharCode(h):(127<h&&2048>h?d+=String.fromCharCode(h>>6|192):(d+=String.fromCharCode(h>>12|224),d+=String.fromCharCode(h>>6&63|128)),d+=String.fromCharCode(h&63|128))}return d}function b(c,d,f,h){c=c<<16|d<<8|f;out="";for(d=0;d<h;d++)out+="./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".charAt(c&63),c>>>=6;return out}return{sha256:function(c,
d){c=a(c);for(var f=[],h=0;h<c.length;h++)f[h]=c.charCodeAt(h);c=sjcl.codec.bytes.toBits(f);h=sjcl.hash.sha256.hash(c,8*c.length);if("undefined"!=typeof d&&1==d){d=sjcl.codec.bytes.fromBits(h);c=[];for(h=0;h<d.length/4;h++)c[h]=d[4*h]<<24|d[4*h+1]<<16|d[4*h+2]<<8|d[4*h+3];return c}return sjcl.codec.hex.fromBits(h)},sha512:function(c){for(var d=[],f=0;f<c.length;f++)d[f]=c.charCodeAt(f);c=sjcl.codec.bytes.toBits(d);c=sjcl.hash.sha512.hash(c,8*c.length);return sjcl.codec.hex.fromBits(c)},crypt_sha256:function(c,
d,f,h){var k=[],e=[];16<d.length&&(d=d.substr(0,16));1E3>f&&(f=1E3);for(var g=0;g<c.length;g++)k[g]=c.charCodeAt(g);for(g=0;g<d.length;g++)e[g]=d.charCodeAt(g);password_bits=sjcl.codec.bytes.toBits(k);salt_bits=sjcl.codec.bytes.toBits(e);e=new sjcl.hash.sha256;e.update(password_bits);e.update(salt_bits);k=new sjcl.hash.sha256;k.update(password_bits);k.update(salt_bits);k.update(password_bits);g=k.finalize();for(k=c.length;32<k;k-=32)e.update(g);e.update(sjcl.bitArray.bitSlice(g,0,8*k));for(k=c.length;0<
k;k>>=1)0!==(k&1)?e.update(g):e.update(password_bits);e=e.finalize();g=new sjcl.hash.sha256;for(k=0;k<c.length;k++)g.update(password_bits);var m=g.finalize();g=[];for(k=c.length;32<=k;k-=32)g=sjcl.bitArray.concat(g,m);g=sjcl.bitArray.concat(g,sjcl.bitArray.bitSlice(m,0,8*k));c=new sjcl.hash.sha256;for(k=0;k<16+sjcl.bitArray.extract(e,0,8);k++)c.update(salt_bits);m=c.finalize();c=[];for(k=d.length;32<=k;k-=32)c=sjcl.bitArray.concat(c,m);c=sjcl.bitArray.concat(c,sjcl.bitArray.bitSlice(m,0,8*k));for(k=
0;k<f;k++)m=new sjcl.hash.sha256,1===(k&1)?m.update(g):m.update(e),0!==k%3&&m.update(c),0!==k%7&&m.update(g),1===(k&1)?m.update(e):m.update(g),e=m.finalize();c="$5$";5E3!=f&&(c+="rounds="+f+"$");c+=d+"$";d=sjcl.codec.bytes.fromBits(e);c+=b(d[0],d[10],d[20],4);c+=b(d[21],d[1],d[11],4);c+=b(d[12],d[22],d[2],4);c+=b(d[3],d[13],d[23],4);c+=b(d[24],d[4],d[14],4);c+=b(d[15],d[25],d[5],4);c+=b(d[6],d[16],d[26],4);c+=b(d[27],d[7],d[17],4);c+=b(d[18],d[28],d[8],4);c+=b(d[9],d[19],d[29],4);c+=b(0,d[31],d[30],
3);if("function"===typeof h)h(c);else return c},pbkdf2:function(c,d,f,h,k){for(var e=[],g=[],m=0;m<c.length;m++)e[m]=c.charCodeAt(m);for(m=0;m<d.length;m++)g[m]=d.charCodeAt(m);c=sjcl.codec.bytes.toBits(e);d=sjcl.codec.bytes.toBits(g);c=sjcl.misc.pbkdf2(c,d,f,8*h,null,k,null);if("function"!==typeof k)return sjcl.codec.hex.fromBits(c)},utf8encode:function(c){return a(c)}}};var LastpassApiHelper;
(function(a){function b(h,k){var e=window.location.search.split("&");0===e[0].indexOf("?")&&(e[0]=e[0].substring(1));for(var g={},m=0;m<e.length;++m){var p=e[m].split("=");2===p.length&&(g[p[0]]=p[1])}e={cmd:"lpimprove"};e.event=h;e.method=g.method||"web";e.lpversion=g.version||"";c(e,k);return e}function c(h,k){if(k){Object.keys(k).forEach(function(g){var m=k[g];if(m)if("domain"!==g&&"url"!==g||"string"!==typeof m)h[g]=m;else{var p;if((p=/^(?:(https?|ftp):\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})(?:[\/\w \.-]*)/i.exec(m))&&p.length){var t=
p.pop();p=p.pop()+"."+t}else p="";p!==m&&(h[g]=AES.url2hex(p))}});var e=window&&window.navigator?window.navigator.language:void 0;e&&(h["browser-language"]=e);"undefined"!==typeof LPPlatform&&((e="function"===typeof LPPlatform.getUILanguage?LPPlatform.getUILanguage():void 0)&&(h["ui-language"]=e),"function"===typeof LPPlatform.extendSendImproveParams&&LPPlatform.extendSendImproveParams(h,function(){}))}}function d(h,k){if("421c1788b658440afab93abac0e138a70f99da9dfe7250d92356bc13dbd2beba"===SHA256(h.substring(0,
13)))return!0;switch(SHA256(h)){case "c0acc74991dc8b8988041f95980aac6f5130bd1b1b2dd0c1f6f15113a4d40df1":case "0208b68cb11b6e25b28ac67bdaa3c5fc496ccd123839d8de209a04b3b5f6a8e9":case "6c1ae082c3db49ff27e5bbae0dbbc6ff8a2884ae7d5ac750f52945a579197abb":case "e98d9302b43d3336f5bd4dc35dec406b87af0f1787c5ce93b8640bcb583f4fb5":case "71565bd34ef87e73fa8107e12f3ff921ddde09375ecb3e864561420da4e83c03":case "74f5c23513ebcd6236449d2b44a0bc5fe943a33fe9134a8d7cfa633493d27923":case "e9a0e7fcddda42963a6369f3fe6c66cfb09a15a6b436d2cae380e9278835eb87":case "b949e02851695dfd8ab7f64f9d80d3ba2c5e164e6a475eb16743f0ab11fc3c40":case "430473329df5ca205e93d09d202c021d973044142fe20fc4abf555135c405c44":case "5a119eeea1a9b824a63752c52678013b0e502bc07bfa92aa4eb16493a008ca16":case "e1dbeea6616117b1ea337a8ebc09322c38b554c8c571f3b25e1274d7e354aba7":return!0;
case "71205e4480342d973ab4611d557e812dc8f38731d6f407a7d43eda7a5af5b562":if("number"===typeof k&&-1<k&&"f4a55664441c565d396c3a06d1eb2812f75ce4626f8281adad5f79f0ecec7c94"===SHA256(navigator.userAgent.substring(k,k+9)))return!0;console.log("native client is not accepted on origin "+h);return!1;default:if(h===window.location.origin)return!0;console.log("Prohibited url: "+h);return!1}}a.sendLpImprove=function(h,k,e){!0===k&&(h=b(h,e),$.ajax({type:"POST",url:"lastpass/api.php",dataType:"json",data:h}))};
a.sendLpImproveCallback=function(h,k,e,g){!0===e&&(h=b(h,g),$.ajax({type:"POST",url:"lastpass/api.php",dataType:"json",data:h,complete:function(){void 0!==k&&k()},timeout:2E3}))};var f=null;a.addSafeMessageHandler=function(h,k){h.addEventListener("message",function(e){d(e.origin,e.data.app)&&(f||(f=e.origin),k(e))})};a.postSafeMessage=function(h,k){f&&"file:"!==f?h.postMessage(k,f):h.postMessage(k,"*")}})(LastpassApiHelper||={});var timingActions=["start","pause","resume","stop"],eventStore={};
function storeAndResolveTimingEvents(a,b){var c=null;if(0>timingActions.indexOf(b.action))console.log("Unknown timing event");else if(b.timestamp||(b.timestamp=Date.now()),b.allowReporting||(b.allowReporting=!1),null==eventStore[a]&&(eventStore[a]=[]),"stop"===b.action?(eventStore[a].push(b),c=resolveTimingStoreToParams(eventStore[a]),eventStore[a]=[]):("start"==b.action&&(eventStore[a]=[]),eventStore[a].push(b)),c)for(var d in c)c.hasOwnProperty(d)}
function resolveTimingStoreToParams(a){for(var b={},c=0,d=0,f=0,h=0,k,e=a.length,g=0;g<e;g++){var m=a[g].action,p=a[g].timestamp;void 0!==a[g].numberOfItems&&(k=a[g].numberOfItems);switch(m){case "start":c=p;break;case "pause":f=p;break;case "resume":0<f&&(h+=p-f);f=0;break;case "stop":d=p}}if(0!=c&&0!=d)return b.timeToComplete=d-c-h,void 0!==k&&(b.numberOfItems=k),b};
//# sourceMappingURL=newvault.js.map